/* =========================================================
   SELDUAHOLIDAY — Coastline / Golden-Hour design system
   Palette: warm sand + deep ocean teal ink + sunset coral + gold
   Type: Fraunces (display) / Manrope (body) / Space Mono (schedule data)
   ========================================================= */

:root{
  --sand:      #F8F2E4;
  --sand-2:    #F1E8D4;
  --card:      #FFFDF8;
  --ink:       #16332F;
  --ink-soft:  #4C645F;
  --ink-dim:   #8B978F;
  --line:      #E6DAC0;

  --teal:      #0E6B5C;
  --teal-deep: #0A4A40;
  --coral:     #FF6A46;
  --coral-deep:#E0512F;
  --gold:      #E3A73C;
  --green-wa:  #25D366;

  --radius-s: 10px;
  --radius-m: 18px;
  --radius-l: 28px;

  --font-display: 'Fraunces', 'Georgia', serif;
  --font-body: 'Manrope', 'Segoe UI', sans-serif;
  --font-mono: 'Space Mono', ui-monospace, monospace;

  --maxw: 1180px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important}
}

body{
  margin:0;background:var(--sand);color:var(--ink);
  font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none;margin:0;padding:0}
h1,h2,h3,h4{font-family:var(--font-display);margin:0;color:var(--ink);font-weight:600;letter-spacing:-0.01em}
p{margin:0}
button{font-family:inherit;cursor:pointer}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}

.eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);
  font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--teal);
}
.eyebrow::before{content:"";width:16px;height:1px;background:var(--coral)}
.eyebrow--light{color:var(--gold)}
.eyebrow--light::before{background:var(--sand)}
.accent{color:var(--coral);font-style:italic}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 26px;border-radius:999px;font-weight:700;font-size:0.94rem;border:1px solid transparent;transition:transform .15s ease, box-shadow .15s ease, background .15s ease;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-wa{background:var(--green-wa);color:#06341C;box-shadow:0 10px 26px -10px rgba(37,211,102,0.65)}
.btn-wa:hover{box-shadow:0 12px 32px -8px rgba(37,211,102,0.8)}
.btn-line{background:transparent;border:1.5px solid var(--ink);color:var(--ink)}
.btn-line:hover{border-color:var(--teal);color:var(--teal)}
.btn-line--light{border-color:rgba(248,242,228,0.5);color:var(--sand)}
.btn-line--light:hover{border-color:var(--sand)}
.btn-solid{background:var(--teal);color:var(--sand)}
.btn-solid:hover{background:var(--teal-deep)}
.btn-lg{padding:16px 32px;font-size:1rem}
.btn-full{width:100%}

/* ---------- utility bar ---------- */
.utility-bar{background:var(--ink);color:var(--sand-2);font-family:var(--font-mono);font-size:0.7rem}
.utility-bar .container{display:flex;justify-content:space-between;align-items:center;height:34px;letter-spacing:0.03em}
.utility-bar .u-right{display:flex;gap:18px}
.utility-bar span{white-space:nowrap;opacity:0.85}
@media (max-width:720px){.utility-bar .u-hide-mobile{display:none}}

/* ---------- navbar ---------- */
.navbar{position:sticky;top:0;z-index:50;background:rgba(248,242,228,0.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.navbar .container{display:flex;align-items:center;justify-content:space-between;height:74px}
.nav-logo{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:1.15rem}
.logo-mark{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--coral));flex:none;position:relative}
.logo-mark::after{content:"";position:absolute;left:6px;right:6px;bottom:11px;height:2px;background:var(--sand);border-radius:2px;box-shadow:0 5px 0 rgba(248,242,228,0.7)}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a:not(.nav-cta){font-size:0.9rem;color:var(--ink-soft);transition:color .15s}
.nav-links a:not(.nav-cta):hover{color:var(--teal)}
.nav-cta{background:var(--coral);color:#fff;padding:11px 20px;border-radius:999px;font-weight:700;font-size:0.86rem}
.nav-cta:hover{background:var(--coral-deep)}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:6px}
.hamburger span{width:22px;height:2px;background:var(--ink)}
@media (max-width:900px){
  .hamburger{display:flex}
  .nav-links{position:fixed;top:74px;left:0;right:0;background:var(--sand);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:0;padding:8px 24px 20px;transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}
  .nav-links.open{opacity:1;transform:translateY(0);pointer-events:auto}
  .nav-links li{width:100%;border-bottom:1px solid var(--line)}
  .nav-links a{display:block;padding:14px 0}
  .nav-links .nav-cta{margin:14px 0 4px;text-align:center;display:block}
}

/* ---------- hero ---------- */
.hero{position:relative;padding:60px 0 0;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center;padding-bottom:56px}
.hero-copy h1{font-size:clamp(2.3rem,4.4vw,3.6rem);line-height:1.06;margin:18px 0 20px}
.hero-copy p{color:var(--ink-soft);font-size:1.05rem;max-width:50ch;margin-bottom:28px}
.hero-btns{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:30px}
.hero-stats{display:flex;gap:28px;flex-wrap:wrap}
.hero-stat .v{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--teal)}
.hero-stat .k{font-size:0.76rem;color:var(--ink-dim)}

/* hero scene: SVG sunset/ocean */
.hero-scene{position:relative;aspect-ratio:4/5;border-radius:var(--radius-l);overflow:hidden;box-shadow:0 30px 60px -24px rgba(20,50,45,0.35)}
.hero-scene svg{width:100%;height:100%;display:block}
.hero-badge{
  position:absolute;left:20px;bottom:20px;background:var(--card);border-radius:var(--radius-m);
  padding:14px 18px;box-shadow:0 14px 30px -14px rgba(20,50,45,0.4);display:flex;gap:12px;align-items:center;
}
.hero-badge .hb-ico{width:38px;height:38px;border-radius:50%;background:var(--sand-2);display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.hero-badge .hb-t{font-weight:700;font-size:0.88rem}
.hero-badge .hb-s{font-size:0.74rem;color:var(--ink-dim)}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr;gap:40px}.hero-scene{max-width:420px;margin:0 auto;aspect-ratio:4/3}}

.wave-divider{display:block;width:100%;line-height:0}
.wave-divider svg{width:100%;height:auto;display:block}

/* ---------- marquee ---------- */
.marquee{background:var(--ink);overflow:hidden}
.marquee-track{display:flex;gap:52px;padding:15px 0;width:max-content;animation:scrollx 26s linear infinite;font-family:var(--font-mono);font-size:0.8rem;color:var(--sand-2)}
.marquee-track span{white-space:nowrap}
.marquee-track b{color:var(--gold)}
@keyframes scrollx{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- sections ---------- */
.section{padding:92px 0}
.section--soft{background:var(--sand-2)}
.section--ink{background:var(--ink);color:var(--sand)}
.section--ink h2,.section--ink h3,.section--ink h4{color:var(--sand)}
.tc{max-width:640px;margin:0 auto 48px;text-align:center}
.tc h2{font-size:clamp(1.8rem,3.2vw,2.5rem);margin:14px 0 12px}
.tc .sub{color:var(--ink-soft);font-size:0.98rem}
.tc.tc--left{margin:0 0 40px;text-align:left}

/* ---------- feature grid ---------- */
.feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.feat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:28px 22px}
.feat-ico{width:46px;height:46px;border-radius:50%;background:var(--sand-2);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:16px}
.feat-card h3{font-size:1.06rem;margin-bottom:8px}
.feat-card p{color:var(--ink-soft);font-size:0.9rem}
@media (max-width:980px){.feat-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.feat-grid{grid-template-columns:1fr}}

/* ---------- ticket-style package cards ---------- */
.ticket-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ticket{background:var(--card);border-radius:var(--radius-l);position:relative;box-shadow:0 20px 40px -26px rgba(20,50,45,0.35);overflow:hidden;display:flex;flex-direction:column}
.ticket.is-popular{outline:2px solid var(--coral)}
.ticket-badge{position:absolute;top:18px;right:-34px;background:var(--coral);color:#fff;font-size:0.68rem;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;padding:6px 40px;transform:rotate(38deg);box-shadow:0 4px 10px rgba(0,0,0,0.15)}
.ticket-top{padding:26px 26px 20px}
.ticket-dest{font-family:var(--font-mono);font-size:0.72rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--teal);margin-bottom:6px}
.ticket-top h3{font-size:1.3rem;margin-bottom:6px}
.ticket-days{font-size:0.85rem;color:var(--ink-dim)}
.ticket-perf{border-top:2px dashed var(--line);position:relative}
.ticket-perf::before,.ticket-perf::after{content:"";position:absolute;top:-11px;width:22px;height:22px;border-radius:50%;background:var(--sand)}
.ticket-perf::before{left:-11px}
.ticket-perf::after{right:-11px}
.ticket-body{padding:20px 26px 26px;display:flex;flex-direction:column;gap:16px;flex:1}
.ticket-includes{display:flex;flex-direction:column;gap:9px}
.ticket-includes div{display:flex;gap:9px;align-items:flex-start;font-size:0.86rem;color:var(--ink-soft)}
.ticket-includes .ic{color:var(--teal);flex:none;font-weight:700}
.ticket-price{margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.ticket-price .p{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--ink)}
.ticket-price .p span{font-size:0.78rem;font-weight:400;font-family:var(--font-body);color:var(--ink-dim)}
@media (max-width:980px){.ticket-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.ticket-grid{grid-template-columns:1fr}}

/* ---------- itinerary coastline timeline ---------- */
.coast-wrap{position:relative}
.coast-path{position:absolute;left:29px;top:14px;bottom:14px;width:2px;background:repeating-linear-gradient(to bottom, var(--teal) 0 6px, transparent 6px 12px)}
.coast-day{display:grid;grid-template-columns:60px 1fr;gap:22px;margin-bottom:36px;position:relative}
.coast-day:last-child{margin-bottom:0}
.coast-node{width:60px;height:60px;border-radius:50%;background:var(--teal);color:var(--sand);display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-mono);position:relative;z-index:1;flex:none}
.coast-node .d{font-size:0.62rem;letter-spacing:0.04em;opacity:0.85}
.coast-node .n{font-size:1.15rem;font-weight:700;line-height:1}
.coast-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:22px 24px}
.coast-card h4{font-size:1.08rem;margin-bottom:8px}
.coast-card p{color:var(--ink-soft);font-size:0.92rem}
.coast-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.coast-tag{font-family:var(--font-mono);font-size:0.72rem;background:var(--sand-2);border:1px solid var(--line);border-radius:999px;padding:5px 11px;color:var(--ink-soft)}
@media (max-width:600px){.coast-day{grid-template-columns:48px 1fr;gap:14px}.coast-node{width:48px;height:48px}.coast-path{left:23px}}

/* ---------- destination grid ---------- */
.dest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.dest-card{position:relative;border-radius:var(--radius-m);overflow:hidden;aspect-ratio:4/3;display:flex;align-items:flex-end;padding:20px;background:linear-gradient(160deg,var(--teal),var(--teal-deep))}
.dest-card::before{content:"";position:absolute;inset:0;opacity:0.35;background-image:radial-gradient(circle at 20% 20%, rgba(255,255,255,0.4), transparent 40%),radial-gradient(circle at 80% 80%, rgba(227,167,60,0.5), transparent 45%)}
.dest-card h4{position:relative;color:var(--sand);font-size:1.1rem}
.dest-card span{position:relative;color:rgba(248,242,228,0.75);font-size:0.78rem;font-family:var(--font-mono)}
@media (max-width:980px){.dest-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.dest-grid{grid-template-columns:1fr}}

/* ---------- testimonials ---------- */
.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.voice-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:26px}
.voice-stars{color:var(--gold);letter-spacing:2px;margin-bottom:12px;font-size:0.9rem}
.voice-text{font-size:0.93rem;color:var(--ink-soft);margin-bottom:18px;font-style:italic}
.voice-who{display:flex;align-items:center;gap:12px}
.voice-av{width:38px;height:38px;border-radius:50%;background:var(--sand-2);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;color:var(--teal)}
.voice-name{font-weight:700;font-size:0.9rem}
.voice-role{font-size:0.78rem;color:var(--ink-dim)}
@media (max-width:900px){.voice-grid{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.faqx-wrap{max-width:760px;margin:0 auto}
.faqx-item{border-bottom:1px solid var(--line)}
.faqx-btn{width:100%;background:none;border:0;padding:20px 4px;display:flex;justify-content:space-between;align-items:center;text-align:left;font-family:var(--font-display);font-size:1.02rem;color:var(--ink)}
.faqx-ico{color:var(--coral);font-size:1.2rem;flex:none;margin-left:16px}
.faqx-body{max-height:0;overflow:hidden;transition:max-height .25s ease}
.faqx-body-inner{padding:0 4px 20px;color:var(--ink-soft);font-size:0.92rem;max-width:64ch}

/* ---------- CTA band ---------- */
.cta-band{background:linear-gradient(135deg,var(--teal-deep),var(--ink));padding:74px 0;text-align:center;color:var(--sand)}
.cta-band h2{color:var(--sand);font-size:clamp(1.7rem,3vw,2.3rem);margin:14px 0 12px}
.cta-band p{color:rgba(248,242,228,0.78);max-width:48ch;margin:0 auto 28px}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ---------- footer ---------- */
.site-footer{background:var(--ink);color:var(--sand-2);padding:56px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:36px;margin-bottom:40px}
.footer-brand .nav-logo span{color:var(--sand)}
.footer-brand p{color:rgba(248,242,228,0.6);font-size:0.87rem;margin-top:14px;max-width:34ch}
.f-col h4{font-size:0.8rem;letter-spacing:0.05em;text-transform:uppercase;color:rgba(248,242,228,0.5);margin-bottom:14px;font-family:var(--font-mono);font-weight:500}
.f-col ul li{margin-bottom:10px}
.f-col a{font-size:0.88rem;color:rgba(248,242,228,0.78)}
.f-col a:hover{color:var(--gold)}
.f-contact .f-row{display:flex;gap:10px;margin-bottom:12px;font-size:0.88rem;color:rgba(248,242,228,0.85)}
.footer-bottom{border-top:1px solid rgba(248,242,228,0.14);padding-top:22px;font-size:0.8rem;color:rgba(248,242,228,0.5);display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}
.footer-bottom a{color:rgba(248,242,228,0.5)}
.footer-bottom a:hover{color:var(--gold)}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:30px}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr}}

/* ---------- floating WA ---------- */
.wa-float{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;align-items:center;gap:10px}
.wa-label{background:var(--card);border:1px solid var(--line);color:var(--ink);font-size:0.78rem;padding:8px 12px;border-radius:999px;box-shadow:0 8px 20px -6px rgba(20,50,45,0.3)}
.wa-btn{width:56px;height:56px;border-radius:50%;background:var(--green-wa);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px -6px rgba(37,211,102,0.55)}
@media (max-width:640px){.wa-label{display:none}}

/* ---------- page hero (subpages) ---------- */
.page-hero{padding:56px 0 40px;border-bottom:1px solid var(--line);background:var(--sand-2)}
.page-hero h1{font-size:clamp(1.9rem,3.4vw,2.6rem);margin:14px 0 10px}
.page-hero p{color:var(--ink-soft);max-width:56ch}
.breadcrumb{display:flex;gap:8px;margin-top:20px;font-size:0.82rem;color:var(--ink-dim);font-family:var(--font-mono)}
.breadcrumb a{color:var(--ink-dim)}
.breadcrumb a:hover{color:var(--teal)}
.breadcrumb [aria-current]{color:var(--ink-soft)}

/* ---------- legal / doc pages ---------- */
.doc-wrap{max-width:780px;margin:0 auto}
.doc-updated{font-family:var(--font-mono);font-size:0.78rem;color:var(--ink-dim);margin-bottom:34px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.doc-toc{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:22px 26px;margin-bottom:40px}
.doc-toc h4{font-family:var(--font-mono);font-size:0.78rem;letter-spacing:0.05em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:14px}
.doc-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;counter-reset:doc;padding-left:0}
.doc-toc li{font-size:0.88rem}
.doc-toc a{color:var(--ink-soft)}
.doc-toc a:hover{color:var(--teal)}
@media (max-width:600px){.doc-toc ol{grid-template-columns:1fr}}
.doc-wrap h2{font-size:1.26rem;margin:36px 0 14px;scroll-margin-top:90px}
.doc-wrap h2:first-of-type{margin-top:0}
.doc-wrap p{color:var(--ink-soft);margin-bottom:14px;font-size:0.95rem}
.doc-wrap ul{margin-bottom:14px}
.doc-wrap li{color:var(--ink-soft);font-size:0.95rem;padding-left:20px;position:relative;margin-bottom:8px}
.doc-wrap li::before{content:"—";position:absolute;left:0;color:var(--ink-dim)}
.doc-wrap strong{color:var(--ink)}
.doc-callout{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--coral);border-radius:var(--radius-s);padding:18px 20px;font-size:0.92rem;color:var(--ink-soft);margin:20px 0}
.doc-callout a{color:var(--ink);font-weight:700}

/* ---------- about page ---------- */
.about-layout{display:grid;grid-template-columns:0.9fr 1.1fr;gap:60px;align-items:center;margin-bottom:90px}
.about-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-l);padding:34px}
.about-num{font-family:var(--font-display);font-size:2.7rem;font-weight:700;color:var(--teal)}
.about-num-lbl{color:var(--ink-dim);font-size:0.82rem;margin-bottom:22px}
.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mini-box{border:1px solid var(--line);border-radius:var(--radius-s);padding:14px;background:var(--sand-2)}
.mini-box .n{font-family:var(--font-display);font-weight:700;font-size:1.2rem;color:var(--ink)}
.mini-box .l{font-size:0.74rem;color:var(--ink-dim);margin-top:2px}
.about-text p{color:var(--ink-soft);margin-bottom:16px;font-size:0.96rem}
@media (max-width:900px){.about-layout{grid-template-columns:1fr;gap:36px}}

.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:980px){.values-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.values-grid{grid-template-columns:1fr}}

.crew-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.crew-card{text-align:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:26px 16px}
.crew-av{width:56px;height:56px;border-radius:50%;background:var(--sand-2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin:0 auto 14px}
.crew-name{font-weight:700;font-size:0.94rem}
.crew-role{font-size:0.78rem;color:var(--ink-dim);margin-top:2px}
@media (max-width:900px){.crew-grid{grid-template-columns:1fr 1fr}}

/* ---------- contact page ---------- */
.reach-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.reach-row{display:flex;gap:16px;margin-bottom:22px}
.reach-ico{width:42px;height:42px;border-radius:10px;background:var(--card);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex:none}
.reach-row h4{font-size:0.96rem;margin-bottom:4px}
.reach-row a{color:var(--ink-soft)}
.reach-row a:hover{color:var(--teal)}
.reach-row p{color:var(--ink-dim);font-size:0.82rem;margin-top:3px}
.reach-panel{background:linear-gradient(135deg,var(--teal),var(--teal-deep));border-radius:var(--radius-l);padding:30px;text-align:center;margin-top:30px;color:var(--sand)}
.reach-panel h3{margin-bottom:8px;font-size:1.1rem;color:var(--sand)}
.reach-panel p{color:rgba(248,242,228,0.82);font-size:0.88rem;margin-bottom:20px}

.form-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-l);padding:30px}
.form-card h3{margin-bottom:6px}
.form-card > p{color:var(--ink-soft);font-size:0.88rem;margin-bottom:22px}
.fg{margin-bottom:16px}
.fg label{display:block;font-size:0.84rem;margin-bottom:7px;color:var(--ink-soft)}
.fg input,.fg select,.fg textarea{width:100%;background:var(--sand);border:1px solid var(--line);border-radius:var(--radius-s);padding:11px 13px;color:var(--ink);font-family:var(--font-body);font-size:0.92rem}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--teal);outline:none}
.fg textarea{min-height:96px;resize:vertical}
.form-note{font-size:0.76rem;color:var(--ink-dim);margin-top:14px;line-height:1.6}
@media (max-width:900px){.reach-layout{grid-template-columns:1fr}}
