/* ==========================================================================
   Settle Aviation. One green does all the work. Lilita One is the only font.
   70% white, 15% off-white, 10% green, one deep-green block, one gold accent.
   Flat color, one shadow level, nothing scales. Whitespace is the brand.
   No em dashes, no capitals, no left-stripe cards, no emoji.
   ========================================================================== */

@font-face{font-family:"Lilita One";src:url("fonts/LilitaOne-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}

:root{
  --green:#3d644a; --deep:#11332b; --wash:#f1f6f2;
  --ink:#1c2b26; --muted:#6b7d76; --border:#e7ebea; --paper:#fff; --off:#f7fbf9; --gold:#e79800;
  --font:"Lilita One",system-ui,sans-serif;
  --container:1120px; --measure:60ch;
  --r-sm:8px; --r-ctrl:12px; --r-card:20px;
  --shadow:0 8px 30px rgba(17,51,43,.08);
  --shadow-lift:0 18px 50px rgba(17,51,43,.14);
  --ease:cubic-bezier(.2,.6,.3,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-weight:400;
  font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block;border:0}

h1,h2,h3,h4{font-family:var(--font);font-weight:700;line-height:1.02;color:var(--deep);margin:0}
h1{font-size:clamp(2.8rem,7vw,5.5rem)}
h2{font-size:clamp(2.1rem,4.5vw,3.4rem)}
h3{font-size:1.4rem;font-weight:700}
p{margin:0 0 1rem;max-width:var(--measure)}
a{color:var(--deep);text-decoration:none;transition:color .15s var(--ease)}
a:hover{color:var(--green)}
:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:var(--r-sm)}

.container{max-width:var(--container);margin:0 auto;padding:0 24px}
.narrow{max-width:820px;margin-left:auto;margin-right:auto}
.section{padding:72px 0}
.section--tight{padding:72px 0}
.wash{background:var(--wash)}
.off{background:var(--off)}

/* labels + captions are italic; the one non-body voice lever */
.label{font-style:italic;color:var(--muted);font-size:1rem;letter-spacing:.01em;display:inline-block;margin:0 0 1.1rem}
.lede{font-weight:400;color:var(--muted);font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.5;max-width:46ch}
.muted{color:var(--muted)}
.center{text-align:center}
.center .lede,.center p{margin-left:auto;margin-right:auto}

/* Buttons: green, solid, calm. Hover darkens. Nothing scales. */
.btn{font-family:var(--font);font-weight:700;font-size:1.1rem;display:inline-flex;align-items:center;gap:.55rem;
  border:0;cursor:pointer;padding:.9rem 2rem;border-radius:999px;background:var(--green);color:#fff;
  text-decoration:none;transition:background-color .15s var(--ease)}
.btn:hover{background:var(--deep);color:#fff}
.btn--ghost{background:transparent;color:var(--green);box-shadow:inset 0 0 0 2px var(--green)}
.btn--ghost:hover{background:var(--green);color:#fff}
.btn--reversed{background:#fff;color:var(--deep)}
.btn--reversed:hover{background:var(--wash);color:var(--deep)}
.arrow{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--deep)}
.arrow::after{content:"\2192";transition:transform .15s var(--ease)}
.arrow:hover::after{transform:translateX(3px)}

/* Nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.nav-inner{display:flex;align-items:center;gap:28px;height:72px}
.nav-logo{margin-left:7%}
.nav-logo img{height:46px;width:auto}
.nav-links{display:flex;gap:26px;margin:0 auto;align-items:center}
.nav-links a{font-weight:400;font-size:1.02rem;color:var(--ink)}
.nav-links a:hover{color:var(--green)}
.nav-phone{font-weight:700;color:var(--deep);white-space:nowrap;margin-right:7%}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px;margin-left:auto}
.nav-toggle span{display:block;width:26px;height:3px;background:var(--green);border-radius:2px;margin:5px 0}

/* Hero: video, deep wash overlay, faint globe watermark */
.hero{position:relative;min-height:min(88vh,760px);display:flex;align-items:flex-end;overflow:hidden;background:var(--deep);
  margin:16px;border-radius:32px}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-overlay{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(17,51,43,.35),rgba(17,51,43,.55) 55%,rgba(17,51,43,.9))}
.hero-inner{position:relative;max-width:var(--container);margin:0 auto;width:100%;padding:0 24px 6rem}
.hero .label{color:#cfe0d5;font-style:italic}
.hero h1{color:#fff;max-width:15ch}
.hero p{color:#eaf3ec;max-width:34ch;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.4;margin:1.4rem 0 2.2rem}
.hero-actions{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}
.hero-actions .arrow{color:#fff}
.hero-actions .arrow:hover{color:#cfe0d5}

/* faint globe watermark, single flat green line, low opacity */
.globe-mark{position:absolute;pointer-events:none;opacity:.05;z-index:0}
.globe-mark img{width:100%;height:100%}

/* Feeling / statement block */
.statement{position:relative;overflow:hidden}
.statement .globe-mark{width:560px;height:560px;right:-140px;top:50%;transform:translateY(-50%);opacity:.05}
.statement-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:center;position:relative;z-index:1}
.statement h2{max-width:15ch}
.statement .lede{font-size:clamp(1.2rem,1.8vw,1.5rem)}
.signature{font-style:italic;color:var(--muted);margin:1.8rem 0 0;font-size:1.1rem}
/* grounded, enriched mascot: soft wash coin + dashed three-city path */
.statement-media{position:relative;display:flex;align-items:center;justify-content:center;min-height:400px}
.statement-media::before{content:"";position:absolute;width:min(88%,380px);aspect-ratio:1;border-radius:50%;
  background:var(--wash);z-index:0}
.flightpath{position:absolute;inset:-6% -4%;width:108%;height:112%;overflow:visible;z-index:1;pointer-events:none}
.mascot-point{position:relative;z-index:2;width:100%;max-width:360px;margin:0 auto;display:block}

/* The promise: crafted centerpiece, mascot medallion + stamp numbers */
.promise{position:relative;overflow:hidden;text-align:center}
.promise .globe-mark{width:760px;height:760px;left:50%;top:8%;transform:translateX(-50%);opacity:.05}
.promise-inner{position:relative;z-index:1;max-width:960px;margin:0 auto}
.medallion{width:124px;height:124px;margin:0 auto 1.6rem;position:relative}
.medallion-face{position:absolute;inset:0;border-radius:50%;background:var(--paper);border:2px solid var(--deep);
  overflow:hidden;display:block}
.medallion-face img{width:100%;height:100%;object-fit:cover;object-position:center 46%}
/* the one gold accent on the whole page: a single small spark by the mascot */
.spark{position:absolute;top:-2px;right:-4px;width:20px;height:20px;color:var(--gold);z-index:3}
.promise h2{margin-bottom:.8rem}
.promise .lede{margin:0 auto 3.5rem}
.promises{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;text-align:center}
.promise-item .n{font-style:italic;font-weight:400;font-size:1.5rem;color:var(--green);opacity:.55;margin-bottom:.6rem}
.promise-item h3{margin-bottom:.5rem}
.promise-item p{color:var(--muted);margin:0 auto;max-width:32ch}

/* Plainspoken list (what it looks like) */
.plain-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.plain-list{margin:0;padding:0;list-style:none}
.plain-list li{padding:1.4rem 0;border-top:1px solid var(--border);font-size:1.3rem;color:var(--ink);font-weight:400}
.plain-list li:last-child{border-bottom:1px solid var(--border)}
.plain-list .sub{display:block;font-style:italic;font-size:1rem;color:var(--muted);margin-top:.35rem}

/* Ways to fly: editorial index, hairline rules, not shadow cards */
.ways{margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}
.ways li{border-bottom:1px solid var(--border)}
.ways a{display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:baseline;padding:1.9rem 0;color:var(--ink)}
.ways a:hover{color:var(--green)}
.ways a:hover .way-name{color:var(--deep)}
.way-name{font-weight:700;font-size:clamp(1.6rem,3vw,2.4rem);color:var(--green)}
.way-desc{font-style:italic;color:var(--muted);font-size:1.05rem;max-width:40ch}
.ways a .arrow::after{color:var(--green)}

/* One deep-green anchor block: closing CTA + contact + footer, all in it */
.anchor{background:var(--deep);color:#cfe0d5;position:relative;overflow:hidden}
.anchor .globe-mark{width:680px;height:680px;right:-160px;bottom:-200px;opacity:.06}
.anchor .globe-mark img{filter:brightness(0) invert(1)}
.anchor-inner{position:relative;z-index:1;padding:96px 0 0}
.anchor h2{color:#fff;max-width:14ch}
.anchor .lede{color:#cfe0d5}
.cta-row{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.contact-direct a{color:#fff;font-weight:700;font-size:1.35rem}
.contact-direct .k{display:block;font-style:italic;color:#cfe0d5;font-size:.95rem;margin:1.4rem 0 .3rem}

.form{background:#fff;border-radius:var(--r-card);padding:2rem;box-shadow:var(--shadow)}
.form label{display:block;font-style:italic;color:var(--muted);font-size:.95rem;margin:0 0 .4rem}
.form input,.form select,.form textarea{width:100%;padding:.8rem .9rem;border:1px solid var(--border);border-radius:var(--r-ctrl);
  background:var(--off);font-family:var(--font);font-weight:400;font-size:1rem;color:var(--ink);margin-bottom:1rem}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--green);outline:none;background:#fff}
.form textarea{min-height:96px;resize:vertical}
.form .btn{width:100%;justify-content:center}
.form-ok{display:none;background:var(--wash);color:var(--deep);border-radius:var(--r-ctrl);padding:1rem;text-align:center;margin-top:.4rem}
.form-err{display:none;background:#fbeee7;color:#9a3b18;border-radius:var(--r-ctrl);padding:.8rem;margin-top:.4rem}

.anchor-footer{position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.12);margin-top:96px;padding:2.4rem 0;
  display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center}
.anchor-footer .foot-logo{height:30px}
.anchor-footer nav a{color:#cfe0d5;margin-left:24px;font-size:.98rem}
.anchor-footer nav a:hover{color:#fff}
.anchor-footer .fine{color:#8fae9c;font-style:italic;font-size:.9rem;width:100%}

/* Page hero for inner pages */
.page-hero{background:var(--deep);color:#fff;padding:88px 0 64px;position:relative;overflow:hidden}
.page-hero .globe-mark{width:520px;height:520px;right:-120px;top:-80px;opacity:.06}
.page-hero .globe-mark img{filter:brightness(0) invert(1)}
.page-hero .crumb{font-style:italic;color:#cfe0d5;margin-bottom:1rem;position:relative;z-index:1}
.page-hero .crumb a{color:#cfe0d5}
.page-hero h1,.page-hero p{position:relative;z-index:1}
.page-hero h1{color:#fff;max-width:16ch}
.page-hero p{color:#cfe0d5;max-width:56ch;font-size:1.25rem;margin-top:1rem}
/* Sparky's head peeking into the inner-page hero, right side */
.page-hero .hero-face{position:absolute;right:5%;top:50%;transform:translateY(-50%);width:min(32%,320px);z-index:1;pointer-events:none}
.page-hero .hero-face img{width:100%;height:auto;display:block}
@media(max-width:760px){.page-hero .hero-face{display:none}}

/* Sparky overflowing the hero into the white section below, dark ink on white */
.page-hero{overflow:visible}
.intro{position:relative}
.hero--sub{min-height:min(46vh,380px);align-items:center}
.hero--sub .hero-inner{padding-bottom:0}
.hero--sub h1{font-size:clamp(2.4rem,5vw,3.6rem)}
.hero--sub .hero-video{filter:saturate(.85) brightness(.4)}
.hero--sub .hero-overlay{background:linear-gradient(180deg,rgba(17,51,43,.68),rgba(17,51,43,.82))}
.hero .sparky-wrap{position:absolute;right:12%;bottom:0;width:min(42%,400px);z-index:3;pointer-events:none}
.sparky-wrap{position:absolute;right:2%;bottom:0;width:min(40%,360px);z-index:3;pointer-events:none}
.sparky-fg{position:relative;z-index:2;width:100%;display:block}
/* white silhouette behind, centered and slightly expanded = stroke/outline */
.sparky-bg{position:absolute;top:0;left:0;width:100%;display:block;filter:brightness(0) invert(1);transform:scale(1.04);transform-origin:center;z-index:1}
.sparky-spark{position:absolute;width:11%;left:38%;top:70%;z-index:4}
.intro .globe-mark{width:520px;height:520px;left:-170px;bottom:-150px;opacity:.05}
@media(max-width:900px){.sparky-wrap{display:none}}

/* Rounded panels to break up text blocks */
.panel{border-radius:var(--r-card);padding:clamp(1.6rem,4vw,2.6rem)}
.panel--wash{background:var(--wash)}
.panel--white{background:#fff;box-shadow:var(--shadow)}
.panel .lede{max-width:none}
.panel .lede:last-child,.panel p:last-child{margin-bottom:0}

/* Facts row */
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;text-align:center;
  border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:2.6rem 0}
.fact .fn{font-weight:700;font-size:clamp(2rem,4vw,3rem);color:var(--deep);line-height:1}
.fact .fl{font-style:italic;color:var(--muted);margin-top:.35rem;font-size:.98rem}
@media(max-width:640px){.facts{grid-template-columns:1fr 1fr;gap:1.8rem}}

/* Numbered path */
.path{margin:0;padding:0;border-top:1px solid var(--border);counter-reset:p}
.path-step{display:grid;grid-template-columns:auto 1fr;gap:1.6rem;padding:1.7rem 0;border-bottom:1px solid var(--border);align-items:baseline;list-style:none}
.path-step .pn{counter-increment:p;font-weight:700;font-style:italic;font-size:1.5rem;color:var(--deep);opacity:.4;min-width:2.2ch}
.path-step .pn::before{content:"0" counter(p)}
.path-step h3{margin:0 0 .3rem}
.path-step p{margin:0;color:var(--muted);max-width:62ch}

/* Continuous ground-study rail running alongside the milestones */
.path-frame{display:grid;grid-template-columns:2.4rem 1fr;gap:1.4rem;align-items:stretch}
.path-rail{position:relative;display:flex;align-items:center;justify-content:center}
.path-rail::before{content:"";position:absolute;top:.5rem;bottom:.5rem;left:50%;transform:translateX(-50%);
  border-left:2px dashed var(--green);opacity:.45}
.path-rail span{position:relative;writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;
  font-style:italic;color:var(--green);font-size:.95rem;background:#fff;padding:.7rem 0;z-index:1}
@media(max-width:640px){
  .path-frame{grid-template-columns:1fr;gap:.4rem}
  .path-rail{justify-content:flex-start}
  .path-rail::before{display:none}
  .path-rail span{writing-mode:horizontal-tb;transform:none;padding:0 0 .5rem}
}

/* Requirements two columns */
.reqs{columns:2;column-gap:3rem;margin:0;padding:0}
.reqs li{margin:0 0 .9rem;color:var(--ink);break-inside:avoid;list-style:none;padding-left:1.5rem;position:relative}
.reqs li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--green)}
@media(max-width:640px){.reqs{columns:1}}
@media(max-width:760px){.page-hero-grid{grid-template-columns:1fr}.hero-char{display:none}}

/* FAQ accordion */
.faq{max-width:820px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--border)}
.faq-item:first-child{border-top:1px solid var(--border)}
.faq-q{font-family:var(--font);font-weight:700;font-size:1.25rem;color:var(--deep);cursor:pointer;
  padding:1.4rem 3rem 1.4rem 0;position:relative;list-style:none;line-height:1.2}
.faq-q::-webkit-details-marker{display:none}
.faq-q::marker{content:""}
.faq-q::after{content:"+";position:absolute;right:.2rem;top:1.05rem;font-size:2rem;color:var(--green);
  line-height:1;transition:transform .18s var(--ease)}
details[open] .faq-q::after{transform:rotate(45deg)}
.faq-a{color:var(--muted);margin:0;padding:0 3rem 1.6rem 0;line-height:1.65;max-width:70ch}

.prose{max-width:var(--measure)}
.prose h2{margin:2.6rem 0 1rem}
.prose h3{margin:2rem 0 .5rem;color:var(--deep)}
.prose p,.prose li{color:var(--ink)}
.prose li{margin:.4rem 0}

/* Services: green section, horizontally scrollable cards */
.services{background:var(--green);color:var(--wash)}
.services h2{color:#fff}
.services .label{color:#a9c4b3}
.services-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:2.6rem}
.scroll-hint{color:#a9c4b3;font-style:italic;font-size:.98rem;white-space:nowrap}
.scroller-wrap{position:relative}
.scroller{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(290px,330px);gap:22px;overflow-x:auto;
  scroll-snap-type:x mandatory;padding:4px 24px 1.4rem;margin:0 -24px;scrollbar-width:none}
.scroller::-webkit-scrollbar{display:none}
.scroll-btn{position:absolute;top:calc(50% - .7rem);transform:translateY(-50%);z-index:5;width:54px;height:54px;
  border-radius:999px;border:0;cursor:pointer;background:#fff;color:var(--green);font-family:var(--font);font-size:1.9rem;
  line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);transition:background .15s var(--ease)}
.scroll-btn:hover{background:var(--wash)}
.scroll-btn--left{left:-12px}
.scroll-btn--right{right:-12px}
.svc-card{scroll-snap-align:start;background:var(--paper);border-radius:var(--r-card);overflow:hidden;color:var(--ink);
  text-decoration:none;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.svc-card .ph{aspect-ratio:4/3;background:var(--wash);position:relative;overflow:hidden;display:block}
.svc-card .ph img{width:100%;height:100%;object-fit:cover}
.svc-card .ph .ph-note{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#b6cabd;font-style:italic;font-size:.95rem}
.svc-card .cbody{padding:1.4rem 1.5rem 1.6rem;display:flex;flex-direction:column;flex:1}
.svc-card h3{margin:0 0 .5rem}
.svc-card p{color:var(--muted);margin:0;font-size:1rem}
.svc-card .go{margin-top:auto;padding-top:1.1rem;color:var(--deep);font-weight:700;display:inline-flex;gap:.4rem}
.svc-card .go::after{content:"\2192"}

/* Image with an overlapping card (the Reif composition) */
.overlap{position:relative}
.overlap-media{border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow)}
.overlap-media img{width:100%;height:clamp(380px,52vw,580px);object-fit:cover;object-position:62% 32%;display:block}
.overlap-card{background:#fff;border-radius:var(--r-card);box-shadow:var(--shadow-lift);padding:2.2rem 2.3rem;
  max-width:430px;position:absolute;right:clamp(16px,4vw,52px);top:50%;transform:translateY(-50%)}
.overlap-card h3{margin:0 0 .8rem}
.overlap-card p{color:var(--muted);margin:0}
.overlap-card--left{right:auto;left:clamp(16px,4vw,52px)}
.overlap-card label{display:block;font-style:italic;color:var(--muted);font-size:.9rem;margin:0 0 .3rem}
.overlap-card input{width:100%;padding:.7rem .8rem;border:1px solid var(--border);border-radius:var(--r-ctrl);
  background:var(--off);font-family:var(--font);font-size:1rem;color:var(--ink);margin-bottom:.8rem}
.overlap-card input:focus{border-color:var(--green);outline:none;background:#fff}
.overlap-card .btn{width:100%;justify-content:center;margin-top:.3rem}
.overlap-card .form-ok{display:none;background:var(--wash);color:var(--deep);border-radius:var(--r-ctrl);padding:.8rem;text-align:center;margin-top:.5rem}
.overlap-card .form-err{display:none;background:#fbeee7;color:#9a3b18;border-radius:var(--r-ctrl);padding:.7rem;margin-top:.5rem}
/* 3-step process card (Reif-style) */
.overlap-card .pstep{margin-bottom:1.3rem}
.pstep-badge{display:inline-block;background:var(--wash);color:var(--deep);border-radius:999px;
  padding:.28rem .9rem;font-size:.8rem;font-style:italic;margin-bottom:.45rem}
.overlap-card .pstep h3{margin:0 0 .25rem}
.overlap-card .pstep p{color:var(--muted);margin:0;font-size:1rem}
.overlap-card a.btn{width:100%;justify-content:center;margin-top:.6rem}

/* Business owner pitch: mascot on a wash coin */
.owners{position:relative;overflow:hidden}
.owners .globe-mark{width:560px;height:560px;left:-160px;top:50%;transform:translateY(-50%);opacity:.05}
.owners-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:center;position:relative;z-index:1}
.owners-media{position:relative;display:flex;align-items:center;justify-content:center;min-height:460px;
  width:min(100%,470px);margin-left:auto}
.owners-media::before{content:"";position:absolute;width:min(74%,340px);aspect-ratio:1;border-radius:50%;background:var(--wash)}
.owners-media .mascot{position:relative;z-index:1;width:100%;max-width:440px;display:block;margin:0 auto}
.owners h2{max-width:15ch}

/* Pricing */
.pricing-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center}
.pricing-panel{background:var(--wash);border-radius:var(--r-card);padding:clamp(1.8rem,4vw,2.8rem)}
.price-row{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;padding:1.4rem 0;border-bottom:1px solid var(--border)}
.price-row:first-child{padding-top:0}
.price-row:last-child{border-bottom:0;padding-bottom:0}
.price-row .what{font-size:1.25rem;max-width:26ch}
.price-row .what .sub{display:block;font-style:italic;color:var(--muted);font-size:.98rem;margin-top:.25rem}
.price-row .amt{font-weight:700;font-size:clamp(1.7rem,3.5vw,2.5rem);color:var(--deep);white-space:nowrap}
.price-note{font-style:italic;color:var(--muted);margin-top:1.6rem}

/* Why: natural benefits */
.benefits{display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}
.benefit h3{margin:0 0 .4rem}
.benefit p{color:var(--muted);margin:0}

/* Hand-drawn accents (same ink as the character) */
.u{position:relative;white-space:nowrap}
.u::after{content:"";position:absolute;left:-3%;right:-3%;bottom:-.02em;height:.4em;
  background:url("underline-gold.svg") no-repeat center/100% 100%}
.handrule{display:block;width:200px;max-width:56%;height:12px;margin:-.15rem 0 0;
  background:url("rule-hand.svg") no-repeat left top/contain}
/* inline green hand underline, tight under the phrase like the hero */
.uh{position:relative;white-space:nowrap}
.uh::after{content:"";position:absolute;left:-3%;right:-3%;bottom:-.02em;height:.34em;
  background:url("underline-green.svg") no-repeat center/100% 100%}
.arrow-doodle{position:absolute;width:200px;height:auto;pointer-events:none;z-index:3}
.mascot-spark{position:absolute;width:35px;height:35px;z-index:2;left:42%;top:74%;transform:rotate(-10deg);pointer-events:none}

/* What it takes: honest requirements list */
.takes-list{margin:2.5rem 0 0;padding:0;list-style:none;border-top:1px solid var(--border)}
.takes-list li{display:grid;grid-template-columns:auto 1fr;gap:1.8rem;padding:1.8rem 0;border-bottom:1px solid var(--border)}
.takes-list .idx{font-weight:700;font-style:italic;font-size:1.4rem;color:var(--deep);opacity:.35;min-width:2ch}
.takes-list h3{margin:0 0 .4rem}
.takes-list p{margin:0;color:var(--muted);max-width:62ch}

/* Responsive */
@media(max-width:900px){
  .section{padding:72px 0}
  .hero{margin:8px;border-radius:22px;min-height:82vh}
  .owners-grid,.pricing-grid{grid-template-columns:1fr;gap:2.5rem}
  .owners-media{min-height:280px;order:-1}
  .overlap-card{position:static;transform:none;max-width:none;margin:-48px 16px 0;width:auto}
  .benefits{grid-template-columns:1fr;gap:1.6rem}
  .arrow-doodle{width:120px}
  .statement-grid,.plain-grid,.cta-row{grid-template-columns:1fr;gap:2.5rem}
  .promises{grid-template-columns:1fr;gap:2.5rem}
  .nav-links,.nav-phone{display:none}
  .nav-toggle{display:block}
  .nav.open .nav-links{display:flex;position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;background:#fff;border-bottom:1px solid var(--border);padding:6px 0}
  .nav.open .nav-links a{padding:14px 24px}
  .nav-logo{margin-left:0}
  .scroll-btn{display:none}
  .mascot-point{max-width:240px}
  .ways a{grid-template-columns:1fr;gap:.4rem}
  .ways a .arrow{display:none}
}
