:root { --ink:#232823; --paper:#faf9f6; --fog:#f2f0ea; --olive:#5f665f; --green:#1d4f36; --dark:#0f1a13; --cream:#f7f4ec; --line:rgba(35,40,35,.12); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:#e8e6e1; }
body { margin:0; background:#e8e6e1; color:var(--ink); font-family:Archivo,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--green); }
a:focus-visible { outline:2px solid var(--green); outline-offset:4px; }
.skip-link { position:fixed; left:14px; top:14px; z-index:9; transform:translateY(-160%); background:var(--paper); padding:10px 14px; font-size:13px; }
.skip-link:focus { transform:translateY(0); }
.wrap { width:100%; margin-inline:auto; padding-inline:clamp(28px,4.75vw,96px); }
.panel { width:100%; margin-inline:auto; position:relative; overflow:hidden; }
.panel-light { background:var(--paper); }
.hero { height:840px; border-bottom:1px solid var(--line); }
.hero-image,.feature-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.hero-image { transition:opacity .7s ease; }
.hero-image.is-switching { opacity:0; }
.slideshow-controls { position:absolute; z-index:3; right:clamp(28px,4.75vw,96px); bottom:30px; display:flex; gap:10px; }
.slideshow-controls button { display:grid; width:48px; height:48px; place-items:center; border: none; border-radius:50%; background:rgba(250,249,246,.25); color:var(--ink); cursor:pointer; font:400 24px/1 Archivo,sans-serif; transition:background .2s ease,transform .2s ease; }
.slideshow-controls button:hover { background:var(--paper); transform:scale(1.06); }
.hero-wash { position:absolute; inset:0 auto 0 0; width:59%; background:linear-gradient(90deg,rgba(250,249,246,.94) 7%,rgba(250,249,246,.82) 37%,rgba(250,249,246,0) 100%); z-index:1; }
.site-header { position:relative; z-index:2; height:88px; display:flex; align-items:center; justify-content:space-between; }
.wordmark { display:flex; gap:7px; align-items:center; font-size:17px; font-weight:600; letter-spacing:.005em; }
.wordmark span { font-size:12px; }
.site-header nav { position:absolute; left:50%; display:flex; align-items:center; justify-content:center; gap:30px; padding:10px 17px; border:1px solid rgba(250,249,246,.55); border-radius:999px; background:rgba(250,249,246,.62); box-shadow:0 8px 24px rgba(15,26,19,.09); backdrop-filter:blur(12px) saturate(1.1); -webkit-backdrop-filter:blur(12px) saturate(1.1); transform:translateX(-50%); }
.header-button { display:inline-flex; align-items:center; justify-content:center; padding:0; color:#1a281e; font-size:13px; font-weight:600; letter-spacing:.16em; text-shadow:0 1px 12px rgba(250,249,246,.65); text-transform:uppercase; transition:color .2s ease; }
.header-button:hover { color:var(--green); }
.social-links { display:flex; align-items:center; gap:16px; padding:9px 12px; border:1px solid rgba(250,249,246,.55); border-radius:999px; background:rgba(250,249,246,.62); box-shadow:0 8px 24px rgba(15,26,19,.09); backdrop-filter:blur(12px) saturate(1.1); -webkit-backdrop-filter:blur(12px) saturate(1.1); }
.social-links a { display:grid; width:24px; height:24px; place-items:center; color:#1a281e; transition:color .2s ease,transform .2s ease; }
.social-links a:hover { color:var(--green); transform:translateY(-1px); }
.social-links svg { display:block; width:19px; height:19px; fill:currentColor; }
.social-links svg rect,.social-links svg circle { fill:none; stroke:currentColor; stroke-width:1.7; }
.social-links svg .svg-dot { fill:currentColor; stroke:none; }
.hero-copy { position:relative; z-index:2; padding-top:100px; }
h1,h2,p { margin-top:0; }
h1 { max-width:600px; margin-bottom:0; font-size:68px; font-weight:600; letter-spacing:-.055em; line-height:1.02; }
.hero-lede { max-width:430px; margin:22px 0 20px; color:#2f2f2f; font-size:17px; line-height:1.58; }
.hero-store { width:min(100%,430px); margin-top:32px; text-align:center; }
.store-cta { display:inline-block; line-height:0; transition:transform .2s ease,filter .2s ease; }
.store-cta img { display:block; width:180px; height:auto; }
.store-cta:hover { color:inherit; filter:drop-shadow(0 9px 14px rgba(15,26,19,.2)); transform:translateY(-2px); }
.waitlist { width:min(100%,460px); margin-top:32px; }
.waitlist label { display:block; margin-bottom:10px; color:var(--olive); font-size:11px; font-weight:500; letter-spacing:.12em; text-align:center; text-transform:uppercase; }
.waitlist-controls { display:flex; gap:4px; padding:4px; border:1px solid rgba(250,249,246,.72); border-radius:999px; background:rgba(250,249,246,.50); box-shadow:0 12px 28px rgba(15,26,19,.12); backdrop-filter:blur(14px) saturate(1.12); -webkit-backdrop-filter:blur(14px) saturate(1.12); transition:border-color .2s ease,box-shadow .2s ease; }
.waitlist-controls:focus-within { border-color:rgba(29,79,54,.52); box-shadow:0 0 0 3px rgba(29,79,54,.13),0 12px 28px rgba(15,26,19,.12); }
.waitlist input[type="email"] { min-width:0; flex:1; height:48px; padding:0 17px; border:0; border-radius:999px; background:transparent; color:var(--ink); font:400 15px/1 Archivo,sans-serif; outline:none; }
.waitlist input[type="email"]::placeholder { color:rgba(35,40,35,.55); }
.waitlist button { height:48px; padding:0 22px; border:1px solid rgba(250,249,246,.24); border-radius:999px; background:rgba(29,79,54,.88); box-shadow:inset 0 1px 0 rgba(255,255,255,.18); color:var(--cream); cursor:pointer; font:600 11px/1 Archivo,sans-serif; letter-spacing:.14em; text-transform:uppercase; transition:background .2s ease,transform .2s ease; }
.waitlist button:not(:disabled):hover { background:var(--green); transform:translateY(-1px); }
.waitlist button:disabled { cursor:wait; opacity:.7; }
.honeypot { position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
.form-status { min-height:18px; margin:8px 0 0; color:var(--green); font-size:12px; line-height:1.45; }
.form-status[data-state="error"] { color:#9f2424; }
.launch-date { margin:24px 0 0; color:var(--green); font-size:20px; font-weight:600; letter-spacing:.14em; line-height:1.45; text-transform:uppercase; }
.hero .launch-date { max-width:430px; margin:0 0 40px; text-align:center; /* Hero launch-date styling: adjust these values without changing the closing CTA. */ font-size:30px; letter-spacing:.14em; line-height:1.45; }
.how { width:100%; padding:120px 0 88px; background:var(--dark); color:var(--cream); }
.how > .wrap { display:grid; grid-template-columns:1fr 1fr; column-gap:clamp(40px,10vw,180px); }
.how-intro h2 { margin:0; font-size:clamp(48px,5.3vw,80px); font-weight:600; letter-spacing:-.06em; line-height:.98; }
.how-body { display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; padding-bottom:14px; }
.how-body p { max-width:555px; margin:0; color:rgba(247,244,236,.72); font-size:24px; line-height:1.65; }
.how-research { margin-top:24px; color:var(--cream); font-size:12px; font-weight:600; letter-spacing:.14em; text-decoration:underline; text-underline-offset:4px; text-transform:uppercase; }
.how-research:hover { color:var(--cream); opacity:.72; }
.how-body p + p { margin-top: 1em; }
.loop-detail { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:min(100%,1100px); gap:0; margin:105px auto 0; padding:0; list-style:none; }
.loop-detail li { position:relative; min-height:180px; padding:0 clamp(28px,3vw,52px); border:0; text-align:center; }
.loop-detail li + li { padding-left:clamp(28px,3vw,52px); }
.loop-detail li:not(:last-child)::after { content:"→"; position:absolute; top:-2px; right:0; color:rgba(247,244,236,.65); font-size:58px; font-weight:300; line-height:1; transform:translateX(50%); }
.loop-icon { display:block; width:30px; height:30px; margin:0 auto 16px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.55; }
.loop-detail h3 { margin:0 0 18px; font-size:38px; font-weight:500; letter-spacing:-.045em; }
.loop-detail p { max-width:250px; margin:0 auto; color:rgba(247,244,236,.68); font-size:16px; line-height:1.65; }
.features { width:100%; margin-inline:auto; }
.features-intro { border-bottom:1px solid var(--line); background:var(--paper); }
.features-intro-inner { min-height:230px; display:flex; align-items:center; }
.features-intro .features-label { margin:0; color:var(--olive); font-size:clamp(48px,5.3vw,80px); font-weight:600; letter-spacing:-.06em; line-height:.98; }
.feature { position:relative; height:660px; overflow:hidden; border-bottom:1px solid var(--line); }
.feature-light { background:#e9e5dc; }
.feature-dark { background:var(--dark); color:var(--cream); }
.feature-image { filter:saturate(.82) contrast(.96); transform:scale(1.02); transition:transform .7s ease,filter .5s ease; }
.feature:hover .feature-image { filter:saturate(1) contrast(1); transform:scale(1.05); }
.feature-wash { position:absolute; inset:0; z-index:1; }
.feature-light .feature-wash { background:linear-gradient(90deg,rgba(250,249,246,.96) 0 22%,rgba(250,249,246,.78) 38%,rgba(250,249,246,.06) 68%); }
.feature-dark .feature-wash { background:linear-gradient(270deg,rgba(15,26,19,.96) 0 22%,rgba(15,26,19,.78) 38%,rgba(15,26,19,.08) 68%); }
.feature-copy { position:relative; z-index:2; height:100%; display:flex; align-items:center; }
.feature-copy > div { width:min(100%,460px); }
.feature h2 { margin:10px 0 0; color:var(--ink); font-size:clamp(42px,4.2vw,66px); font-weight:600; letter-spacing:-.06em; line-height:.96; }
.feature .feature-subtext { margin:24px 0 0; max-width:390px; color:#3f493f; font-size:18px; line-height:1.58; }
.feature-dark .feature-copy { justify-content:flex-end; }
.feature-dark h2 { color:var(--cream); }
.feature-dark .feature-subtext { color:rgba(247,244,236,.78); }
.phone { position:absolute; z-index:3; bottom:32px; width:220px; height:auto; aspect-ratio:600/1160; display:flex; justify-content:center; align-items:center; isolation:isolate; overflow:hidden; background:url('/assets/phone-frame.png') center/100% 100% no-repeat; }
.phone-dark { color:rgba(247,244,236,.62); }
.phone-light { color:#1d4f36; }
.feature-light .phone { right:auto; left:clamp(520px,38vw,650px); }
.feature-dark .phone { right:clamp(580px,37vw,620px); left:auto; }
.phone-video-button { display:grid; width:80px; height:80px; place-items:center; padding:0; border:0; border-radius:50%; background:rgba(250,249,246,.55); color:var(--ink); cursor:not-allowed; }
.phone-video-button:disabled { opacity:.72; }
.phone-video-button span { padding:0; border:0; color:inherit; font-size:25px; line-height:1; letter-spacing:0; transform:none; }
.phone-video { position:absolute; z-index:1; top:7%; left:10.8%; display:block; width:78.4%; height:88.9%; border-radius:25px; object-fit:cover; background:#050807; }
.phone-play-button { position:absolute; z-index:2; display:grid; width:68px; height:68px; place-items:center; padding:0 0 0 4px; border:1px solid rgba(247,244,236,.7); border-radius:50%; background:rgba(247,244,236,.72); box-shadow:0 8px 24px rgba(0,0,0,.2); color:var(--ink); cursor:pointer; font:400 23px/1 Archivo,sans-serif; transition:transform .2s ease,background .2s ease,opacity .2s ease; }
.phone-play-button:hover { transform:scale(1.08); background:var(--cream); }
.phone-play-button:focus-visible { outline:2px solid var(--cream); outline-offset:3px; }
.phone.is-playing .phone-play-button { opacity:0; pointer-events:none; }
.faq { width:100%; margin-inline:auto; background:var(--paper); padding:112px 0 120px; border-bottom:1px solid var(--line); }
.faq-inner { display:grid; grid-template-columns:minmax(260px,.82fr) minmax(420px,1.18fr); gap:clamp(48px,9vw,180px); align-items:start; }
.faq h2 { margin:0; font-size:clamp(42px,4.5vw,68px); font-weight:600; letter-spacing:-.06em; line-height:1.01; }
.faq-list { border-top:1px solid var(--ink); }
.faq-item { border-bottom:1px solid var(--ink); }
.faq-item summary { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px 0; cursor:pointer; list-style:none; font-size:18px; font-weight:500; letter-spacing:-.025em; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary span { flex:0 0 auto; color:var(--green); font-size:28px; font-weight:400; line-height:1; transition:transform .2s ease; }
.faq-item[open] summary span { transform:rotate(45deg); }
.faq-answer { max-width:580px; padding:0 42px 25px 0; }
.faq-answer p { margin:0; color:var(--olive); font-size:15px; line-height:1.7; }
.faq-answer a { color:var(--green); text-decoration:underline; text-underline-offset:3px; }
.closing { width:100%; height:600px; margin-inline:auto; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0; text-align:center; background:linear-gradient(0deg,rgba(250,249,246,.95),rgba(250,249,246,.15)),repeating-linear-gradient(135deg,#e9e5dc 0 14px,#e2ded4 14px 28px); }
.closing h2 { margin:0; font-size:64px; font-weight:600; letter-spacing:-.055em; line-height:1.02; }
.closing-waitlist { margin:28px auto 0; text-align:left; }
.site-footer { width:100%; background:var(--fog); color:#8b918b; font-size:11.5px; }
.site-footer .footer-inner { min-height:76px; display:flex; align-items:center; justify-content:space-between; }
.site-footer p { margin:0; }
.site-footer div { display:flex; gap:18px; }
@media (max-width:700px) { .wrap { padding-inline:24px; } .hero { height:auto; min-height:920px; } .hero-image { object-position:var(--mobile-hero-position,80% center); } .hero-wash { width:100%; background:linear-gradient(90deg,rgba(250,249,246,.96),rgba(250,249,246,.67) 64%,rgba(250,249,246,.12)); } .hero-copy { padding-top:64px; } h1 { font-size:50px; } .hero-lede { max-width:360px; font-size:16px; } .hero-store { width:100%; margin-top:28px; } .store-cta img { width:170px; } .launch-date { font-size:18px; } .slideshow-controls { right:24px; bottom:20px; } .slideshow-controls button { width:42px; height:42px; font-size:21px; } .how { padding-top:80px; } .how > .wrap { display:block; } .how-intro h2 { font-size:50px; } .how-body { padding-top:32px; } .how-body p { font-size:16px; } .loop-detail { grid-template-columns:1fr; margin-top:64px; } .loop-detail li,.loop-detail li + li { min-height:0; padding:24px 0 30px; border-right:0; border-bottom:1px solid rgba(247,244,236,.28); } .loop-detail h3 { margin-top:30px; } .features-intro-inner { min-height:0; padding-top:64px; padding-bottom:64px; } .features-intro .features-label { font-size:50px; } .feature { height:660px; } .feature-light .feature-wash { background:linear-gradient(180deg,rgba(250,249,246,.95) 0 38%,rgba(250,249,246,.27) 82%); } .feature-dark .feature-wash { background:linear-gradient(0deg,rgba(15,26,19,.95) 0 38%,rgba(15,26,19,.27) 82%); } .feature-copy { justify-content:center!important; align-items:flex-start; padding-top:72px; } .feature-copy > div { text-align:center; } .feature h2 { font-size:43px; } .feature .feature-subtext { margin:19px auto 0; font-size:16px; } .feature .phone { left:50%; right:auto; transform:translateX(-50%); width:220px; height:420px; bottom:-40px; } .faq { padding:80px 0; } .faq-inner { display:block; } .faq-intro { margin-bottom:48px; } .faq-item summary { font-size:17px; } .closing { height:auto; min-height:500px; padding:72px 24px; } .closing h2 { font-size:48px; } .closing-store-cta { margin-top:24px; } .site-footer .footer-inner { min-height:130px; padding-block:26px; align-items:flex-start; flex-direction:column; gap:16px; } .site-footer div { flex-wrap:wrap; gap:10px 16px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media (max-width:700px) { .hero .launch-date { font-size:18px; } }
@media (max-width:700px) { .feature .phone { width:190px; height:auto; aspect-ratio:600/1160; bottom:28px; } }
@media (max-width:700px) {
  .site-header { display:grid; grid-template-columns:minmax(0,1fr) auto; min-height:0; padding-top:12px; padding-bottom:12px; row-gap:10px; }
  .site-header .wordmark { grid-column:1; grid-row:1; }
  .site-header .social-links { grid-column:2; grid-row:1; }
  .site-header nav { position:static; grid-column:1 / -1; grid-row:2; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; gap:0; padding:8px 6px; transform:none; }
  .header-button { min-width:0; font-size:9px; letter-spacing:.12em; }
  .social-links { gap:11px; padding:8px 10px; }
  .social-links a { width:22px; height:22px; }
}
@media (max-width:700px) { .loop-detail { grid-template-columns:1fr; gap:42px; margin-top:64px; } .loop-detail li,.loop-detail li + li { min-height:0; padding:0; border:0; } .loop-detail li:not(:last-child)::after { display:none; } .loop-detail h3 { margin:0 0 12px; font-size:29px; } }

/* The legal and support pages deliberately keep their simpler document layout. */
body:has(.page-head) { min-height:100vh; display:flex; flex-direction:column; background:var(--paper); }
body:has(.page-head) main { flex:1; }
body:has(.page-head) .site-header { display:block; height:auto; border-bottom:1px solid var(--line); background:var(--paper); }
body:has(.page-head) .shell { width:min(92%,960px); margin-inline:auto; }
body:has(.page-head) .legal-header > div { min-height:76px; display:flex; align-items:center; justify-content:space-between; }
body:has(.page-head) .legal-social { display:flex; gap:18px; color:var(--olive); font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
body:has(.page-head) .page-head { padding-top:76px; padding-bottom:36px; text-align:center; }
body:has(.page-head) .eyebrow { color:var(--olive); font-size:11px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
body:has(.page-head) .page-head h1 { margin-inline:auto; font-size:54px; }
body:has(.page-head) .page-updated { color:var(--olive); }
body:has(.page-head) .prose { max-width:760px; margin-inline:auto; padding-bottom:80px; font-size:16px; line-height:1.65; }
body:has(.page-head) .prose-centered { text-align:center; margin-inline:auto; }
body:has(.page-head) .prose .lead { font-size:21px; line-height:1.5; }
body:has(.page-head) .prose h2 { margin-top:38px; font-size:28px; }
body:has(.page-head) .prose h3 { margin-top:30px; font-size:19px; }
body:has(.page-head) .prose a { color:var(--green); text-decoration:underline; }
body:has(.page-head) .contact-note { color:var(--olive); }
body:has(.page-head) .research-resources { margin:72px auto 0; padding-top:38px; border-top:1px solid var(--line); text-align:left; }
body:has(.page-head) .research-resources h2 { margin:10px 0 16px; }
body:has(.page-head) .research-resources p { color:var(--olive); }
body:has(.page-head) .research-resources ul { margin:20px 0 0; padding-left:20px; }
body:has(.page-head) .research-resources li + li { margin-top:11px; }
body:has(.page-head) .site-footer { margin-top:auto; }
@media (max-width:700px) { body:has(.page-head) .legal-social { font-size:10px; gap:12px; } body:has(.page-head) .page-head h1 { font-size:42px; } body:has(.page-head) .footer-inner { align-items:flex-start; flex-direction:column; justify-content:center; gap:14px; } }

/* Mission Intel borrows the app's CRT briefing treatment, while staying legible as a webpage. */
.terminal-how { position:relative; isolation:isolate; overflow:hidden; background:#0c1a12; }
.terminal-how::before { position:absolute; z-index:-2; inset:0; content:""; opacity:.36; background-image:linear-gradient(rgba(143,227,192,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(143,227,192,.11) 1px,transparent 1px); background-position:center; background-size:42px 42px; mask-image:linear-gradient(90deg,transparent 0%,#000 17%,#000 83%,transparent 100%); }
.terminal-how::after { position:absolute; z-index:-1; inset:0; content:""; pointer-events:none; opacity:.2; background:repeating-linear-gradient(0deg,rgba(143,227,192,.075) 0 1px,transparent 1px 5px); }
.terminal-how > .wrap { position:relative; z-index:1; }
.how-wireframe { position:absolute; z-index:0; top:52px; right:clamp(-75px,3vw,60px); width:clamp(270px,29vw,460px); height:auto; color:#8fe3c0; opacity:.22; filter:drop-shadow(0 0 16px rgba(143,227,192,.32)); pointer-events:none; transform:rotate(-8deg); }
.terminal-label { margin:0 0 20px; color:#8fe3c0; font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace; font-size:12px; font-weight:600; letter-spacing:.14em; line-height:1.3; text-shadow:0 0 10px rgba(143,227,192,.58); text-transform:uppercase; }
.terminal-how .how-intro h2 { color:#f7f4ec; font-weight:500; text-shadow:0 0 20px rgba(247,244,236,.12); }
.terminal-how .how-body p { color:rgba(211,242,226,.73); }
.terminal-how .how-research { color:#8fe3c0; font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace; text-decoration:none; text-shadow:0 0 9px rgba(143,227,192,.45); }
.terminal-how .how-research::before { content:"> "; }
.terminal-how .how-research::after { display:block; width:100%; height:1px; margin-top:6px; content:""; background:currentColor; box-shadow:0 0 8px rgba(143,227,192,.45); }
.terminal-how .how-research:hover { color:#f7f4ec; opacity:1; }
.terminal-how .loop-detail { position:relative; margin-top:96px; padding-bottom:16px; }
.terminal-how .loop-detail li:not(:last-child)::after { color:#8fe3c0; font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace; font-size:50px; font-weight:400; opacity:.82; text-shadow:0 0 10px rgba(143,227,192,.44); }
.terminal-how .loop-icon { width:34px; height:34px; margin-bottom:14px; color:#8fe3c0; stroke-width:1.2; filter:drop-shadow(0 0 6px rgba(143,227,192,.45)); }
.terminal-how .loop-detail h3 { color:#f7f4ec; font-weight:500; text-shadow:0 0 15px rgba(247,244,236,.12); }
.terminal-how .loop-detail p { color:rgba(211,242,226,.69); }
@media (max-width:700px) { .terminal-how::before { background-size:28px 28px; mask-image:none; opacity:.2; } .how-wireframe { top:20px; right:-100px; width:310px; opacity:.15; } .terminal-label { margin-bottom:16px; font-size:10px; } .terminal-how .loop-detail { margin-top:58px; padding-bottom:0; } .terminal-how .loop-icon { margin-bottom:12px; } }
@media (prefers-reduced-motion:reduce) { .how-wireframe { transform:none; } }

/* A recipient-first briefing page linked from the Wingman invitation. */
.wingman-page { background:var(--paper); }
.wingman-hero { position:relative; min-height:620px; overflow:hidden; background:var(--dark); color:var(--cream); }
.wingman-hero > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:grayscale(.35); }
.wingman-wash { position:absolute; inset:0; background:linear-gradient(90deg,rgba(15,26,19,.96) 0%,rgba(15,26,19,.78) 42%,rgba(15,26,19,.13) 100%); }
.wingman-content { position:relative; z-index:1; width:min(100%,1180px); margin:auto; padding:36px clamp(28px,7vw,112px) 92px; }
.wingman-wordmark { display:inline-block; color:var(--cream); font-size:15px; font-weight:600; letter-spacing:.04em; }
.wingman-eyebrow { margin:112px 0 16px; color:#8fe3c0; font-size:11px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
.wingman-content h1 { max-width:650px; margin:0; font-size:clamp(58px,8vw,112px); color:var(--cream); }
.wingman-lede { max-width:470px; margin:24px 0 0; color:rgba(247,244,236,.78); font-size:20px; line-height:1.5; }
.wingman-brief { background:var(--paper); padding:112px clamp(28px,14vw,240px); }
.wingman-brief-copy { max-width:690px; }
.wingman-brief .wingman-eyebrow { margin:0 0 16px; color:var(--green); }
.wingman-brief h2 { margin:0; font-size:clamp(42px,5vw,72px); letter-spacing:-.06em; line-height:1; }
.wingman-brief p,.wingman-brief li { color:var(--olive); font-size:20px; line-height:1.6; }
.wingman-brief ol { margin:34px 0; padding-left:26px; }
.wingman-brief li + li { margin-top:9px; }
.wingman-note { padding-top:28px; border-top:1px solid var(--line); font-weight:600; }
.wingman-cta { display:inline-flex; gap:16px; align-items:center; margin-top:24px; padding:17px 22px; border-radius:999px; background:var(--green); color:var(--cream); font-size:13px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.wingman-cta:hover { color:var(--cream); background:#123d29; }
.wingman-cta span { font-size:20px; line-height:0; }
.wingman-availability { margin-top:18px!important; font-size:13px!important; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.wingman-footer { padding:28px; background:var(--fog); color:var(--olive); font-size:12px; text-align:center; }
.wingman-footer a { text-decoration:underline; text-underline-offset:3px; }
@media (max-width:700px) { .wingman-hero { min-height:570px; } .wingman-hero > img { object-position:70% center; } .wingman-wash { background:linear-gradient(90deg,rgba(15,26,19,.94),rgba(15,26,19,.51)); } .wingman-content { padding:27px 28px 72px; } .wingman-eyebrow { margin-top:90px; } .wingman-lede,.wingman-brief p,.wingman-brief li { font-size:17px; } .wingman-brief { padding:76px 28px; } }
