/* =====================================================================
   Wheelhouse — website3 · "Calm Command"
   Dark-led operator's instrument panel. Instrument Sans throughout.
   Brand palette per 2026-05-30 Wheelhouse Brand Guide.
   ===================================================================== */

:root{
  /* brand palette (locked) */
  --rainforest:#00755E;
  --gold:#FBB13C;
  --ink:#16241F;
  --paper:#FDF6E6;
  --page:#FFFFFF;
  --stone:#6F7A72;
  --cream:#FDF0D5;
  --teal:#218380;
  --deepwater:#19535F;
  --jade:#04A777;
  --sky:#73D2DE;
  --persimmon:#F75C03;

  /* derived grounds */
  --ink-deep:#0F1A16;       /* near-black ink for footer / deepest panels */
  --ink-2:#1B2E27;          /* lifted ink for cards on ink */
  --rain-2:#0A6450;         /* darker rainforest for gradient stops */
  --paper-2:#F6ECD6;        /* paper, one step deeper, for lit panel depth */

  /* text */
  --on-dark:#FBF4E4;        /* primary text on dark grounds */
  --on-dark-soft:#C7D7CE;   /* secondary text on dark grounds */
  --on-dark-faint:#8FA89D;  /* tertiary / labels on dark */
  --on-light:#16241F;       /* primary on light */
  --on-light-soft:#42544C;  /* secondary on light */
  --on-light-faint:#6F7A72; /* labels on light */

  /* lines */
  --hair-dark:rgba(251,244,228,.16);
  --hair-light:rgba(22,36,31,.14);

  /* type */
  --sans:'Instrument Sans',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;

  /* motion */
  --ease:cubic-bezier(.2,.7,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);

  /* layout */
  --wrap:1200px;
  --gut:clamp(20px,5vw,72px);

  /* the angled "tag" clip — one corner cut, echoes the iGency folder tab */
  --tag-tr:polygon(0 0, calc(100% - 26px) 0, 100% 26px, 100% 100%, 0 100%);
  --tag-bl:polygon(0 0, 100% 0, 100% 100%, 26px 100%, 0 calc(100% - 26px));
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} }

body{
  font-family:var(--sans);
  background:var(--ink);
  color:var(--on-dark);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
::selection{background:var(--gold);color:var(--ink)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}

/* ---- page grain + faint vignette over everything ---- */
.grain{
  position:fixed;inset:0;z-index:9999;pointer-events:none;
  opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---- shared layout ---- */
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut)}
.section{position:relative;padding:clamp(72px,10vw,128px) 0;overflow:hidden}
section[id],#main,#top{scroll-margin-top:88px}
.section--tight{padding:clamp(56px,7vw,92px) 0}

/* ground variants */
/* steady grounds: calm vertical settle, no diagonal drama */
.s-ink{background:var(--ink);color:var(--on-dark)}
.s-rain{background:linear-gradient(180deg,#0a6e57 0%,var(--rainforest) 100%);color:var(--on-dark)}
.s-deep{background:linear-gradient(180deg,var(--deepwater) 0%,#143f48 100%);color:var(--on-dark)}
.s-paper{background:var(--paper);color:var(--on-light)}
.s-paper2{background:linear-gradient(180deg,var(--paper) 0%,var(--paper-2) 100%);color:var(--on-light)}

/* ---- eyebrow / section head ---- */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
}
.eyebrow::before{content:"";width:22px;height:1px;background:currentColor;opacity:.5}
.s-paper .eyebrow,.s-paper2 .eyebrow{color:var(--deepwater)}
.s-ink .eyebrow,.s-rain .eyebrow,.s-deep .eyebrow{color:var(--gold)}

.s-head{max-width:760px;margin-bottom:clamp(40px,5vw,64px)}
.s-title{
  font-weight:700;letter-spacing:-.028em;line-height:1.04;
  font-size:clamp(32px,5vw,58px);
}
.s-lede{
  margin-top:20px;font-size:clamp(16px,1.6vw,19px);max-width:60ch;
  line-height:1.6;
}
.s-paper .s-lede,.s-paper2 .s-lede{color:var(--on-light-soft)}
.s-ink .s-lede,.s-rain .s-lede,.s-deep .s-lede{color:var(--on-dark-soft)}

/* ---- buttons ---- */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  font-weight:600;font-size:15px;letter-spacing:.01em;
  padding:15px 24px;border:1px solid transparent;cursor:pointer;
  transition:transform .35s var(--ease-out), background .25s var(--ease), box-shadow .35s var(--ease);
  will-change:transform;
}
.btn .arrow{width:18px;height:10px;position:relative;transition:transform .3s var(--ease)}
.btn .arrow::after{
  content:"";position:absolute;inset:0;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 10'%3E%3Cpath d='M0 5h15M11 1l5 4-5 4' fill='none' stroke='black' stroke-width='1.6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 10'%3E%3Cpath d='M0 5h15M11 1l5 4-5 4' fill='none' stroke='black' stroke-width='1.6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.btn:hover .arrow{transform:translateX(4px)}
.btn--gold{background:var(--gold);color:var(--ink);clip-path:polygon(0 0, calc(100% - 15px) 0, 100% 15px, 100% 100%, 0 100%)}
.btn--gold:hover{background:#ffbe54}
.btn--ghost{background:transparent;color:inherit;border-color:currentColor;border-radius:2px}
.s-ink .btn--ghost,.s-rain .btn--ghost,.s-deep .btn--ghost{border-color:var(--hair-dark)}
.btn--ghost:hover{background:rgba(251,244,228,.08)}
.s-paper .btn--ghost:hover,.s-paper2 .btn--ghost:hover{background:rgba(22,36,31,.05)}

/* mark watermark helper */
.wm{position:absolute;pointer-events:none;opacity:.05;z-index:0}
.wm img{width:100%;height:auto}

/* reveal utility — gentle opacity only, used sparingly */
.reveal{opacity:0;transition:opacity .9s var(--ease-out)}
.reveal.in{opacity:1}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transition:none}
  .oc::before{transform:scaleX(1);transition:none}
}

/* =====================================================================
   SECTION STYLES appended below
   ===================================================================== */
/* ---- MASTHEAD ---------------------------------------------------- */
.masthead{
  position:fixed;top:0;left:0;right:0;z-index:100;
  transition:transform .45s var(--ease-out), background .3s var(--ease), border-color .3s var(--ease);
  border-bottom:1px solid transparent;
}
.masthead.is-scrolled{
  background:var(--ink);
  border-bottom-color:var(--hair-dark);
}
.masthead.is-hidden{transform:translateY(-100%)}
.masthead__inner{
  max-width:var(--wrap);margin:0 auto;padding:16px var(--gut);
  display:flex;align-items:center;gap:24px;
}
.masthead__brand{display:flex;align-items:center;gap:11px;font-weight:700;letter-spacing:-.02em;font-size:18px;color:var(--on-dark)}
.masthead__brand img{width:26px;height:26px}
.masthead__nav{display:flex;gap:30px;margin-left:auto}
.masthead__nav a{
  font-size:14.5px;font-weight:500;color:var(--on-dark-soft);
  position:relative;padding:4px 0;transition:color .2s var(--ease);
}
.masthead__nav a::after{
  content:"";position:absolute;left:0;right:100%;bottom:-2px;height:1.5px;
  background:var(--gold);transition:right .3s var(--ease);
}
.masthead__nav a:hover{color:var(--on-dark)}
.masthead__nav a:hover::after{right:0}
.masthead__cta{padding:11px 18px;font-size:14px}
@media (max-width:860px){
  .masthead__nav{display:none}
  .masthead__cta{margin-left:auto}
}
@media (max-width:460px){
  .masthead__cta span.arrow{display:none}
  .masthead__cta{padding:11px 15px}
}

/* ---- HERO (calm, still) ------------------------------------------ */
.hero{
  position:relative;min-height:84svh;display:flex;align-items:center;
  padding:clamp(120px,18vh,200px) 0 clamp(84px,12vh,132px);
}
.wm--hero{
  top:50%;right:-4%;width:min(44vw,540px);transform:translateY(calc(-50% + var(--py,0px)));
  opacity:.08;color:var(--cream);will-change:transform;
}
.hero__inner{position:relative;z-index:2;width:100%}
.hero__h1{
  font-weight:700;letter-spacing:-.03em;line-height:1.04;
  font-size:clamp(40px,5.6vw,78px);color:var(--on-dark);
  max-width:18ch;text-wrap:balance;
}
/* emphasis is rationed: only the hero headline carries it */
.mark-em{color:inherit}
.hero__h1 .mark-em{
  color:var(--gold);
  background:linear-gradient(var(--gold),var(--gold)) no-repeat left bottom/100% .07em;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
  padding-bottom:.12em;
}
.hero__sub{
  margin-top:28px;max-width:52ch;font-size:clamp(16px,1.5vw,19px);
  color:var(--on-dark-soft);line-height:1.65;
}
.hero__actions{margin-top:40px;display:flex;flex-wrap:wrap;align-items:center;gap:26px}
@media (max-width:760px){
  .wm--hero{opacity:.05;right:-22%;width:min(82vw,440px)}
}


/* ---- CATEGORY (split statement / body) --------------------------- */
.wm--what{top:50%;left:34%;transform:translateY(calc(-50% + var(--py,0px)));width:min(42vw,500px);opacity:.045;color:var(--rainforest);will-change:transform}
.category__inner{
  position:relative;z-index:1;
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  gap:clamp(36px,5vw,84px);align-items:start;
}
.category__statement{
  font-weight:700;letter-spacing:-.03em;line-height:1.04;
  font-size:clamp(30px,3.9vw,54px);color:var(--on-light);
}
.category__body{max-width:60ch;padding-top:6px}
.category__body p{font-size:clamp(15.5px,1.5vw,18px);color:var(--on-light-soft);line-height:1.72;margin-bottom:18px}
.category__body p:first-child{font-size:clamp(17px,1.7vw,20.5px);color:var(--on-light);line-height:1.6;font-weight:500}
.category__body p:last-child{margin-bottom:0}
@media (max-width:820px){
  .category__inner{grid-template-columns:1fr;gap:26px}
  .wm--what{display:none}
}

/* ---- OUTCOMES ---------------------------------------------------- */
.outcomes .wrap{position:relative;z-index:1}
.oc-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:clamp(14px,1.4vw,20px);
}
.oc{
  --accent:var(--gold);
  position:relative;overflow:hidden;background:var(--ink-2);
  border:1px solid var(--hair-dark);
  padding:clamp(28px,2.5vw,38px);
}
/* the colored edge draws in on scroll, not on hover */
.oc::before{
  content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:var(--accent);
  transform:scaleX(0);transform-origin:left;transition:transform .85s var(--ease-out);
}
.oc.in::before{transform:scaleX(1)}
.oc:nth-child(2).in::before{transition-delay:.1s}
.oc:nth-child(3).in::before{transition-delay:.2s}
.oc:nth-child(4).in::before{transition-delay:.3s}
.oc h3{font-size:clamp(18px,1.7vw,21px);font-weight:600;letter-spacing:-.01em;line-height:1.28;color:var(--on-dark);margin-bottom:12px}
.oc p{font-size:14.5px;color:var(--on-dark-soft);line-height:1.62}
/* deliberate progression: the row warms from deep water toward the gold payoff */
.oc-grid--four .oc:nth-child(1){--accent:var(--deepwater)}
.oc-grid--four .oc:nth-child(2){--accent:var(--teal)}
.oc-grid--four .oc:nth-child(3){--accent:var(--jade)}
.oc-grid--four .oc:nth-child(4){--accent:var(--gold)}
@media (max-width:900px){.oc-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.oc-grid{grid-template-columns:1fr}}

/* ---- METHOD (dark ground) ---------------------------------------- */
.method .wrap{position:relative;z-index:1}
.method__track{position:relative;padding-left:clamp(56px,7vw,96px)}
.method__rail{
  position:absolute;left:clamp(21px,2.6vw,35px);top:14px;bottom:14px;width:2px;
  background:var(--hair-dark);overflow:hidden;
}
.method__fill{
  position:absolute;inset:0;background:linear-gradient(180deg,var(--gold),var(--jade));
  transform:scaleY(0);transform-origin:top;transition:transform .12s linear;
}
.method__stages{list-style:none;display:flex;flex-direction:column;gap:clamp(34px,4.5vw,60px)}
.stage{position:relative}
/* small still marker on the rail — no number, no circle */
.stage__mark{
  position:absolute;top:14px;
  left:calc(clamp(21px,2.6vw,35px) - clamp(56px,7vw,96px) - 6px);
  width:13px;height:13px;background:var(--gold);z-index:2;
  box-shadow:0 0 0 6px var(--deepwater);
}
.stage__title{
  font-size:clamp(24px,3vw,38px);font-weight:700;letter-spacing:-.025em;
  color:var(--on-dark);line-height:1.08;margin-bottom:12px;
}
.stage__copy{font-size:clamp(15px,1.4vw,16.5px);color:var(--on-dark-soft);line-height:1.62;max-width:54ch}

/* ---- OFFER (light ground, services menu) ------------------------- */
.offer__wrap{position:relative;z-index:1}
/* services menu: name-forward rows, hairline-separated */
.svc-list{border-top:1px solid var(--hair-light)}
.svc{
  display:grid;grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr);
  gap:clamp(18px,4vw,64px);align-items:baseline;
  padding:clamp(26px,3.2vw,44px) 0;
  border-bottom:1px solid var(--hair-light);
}
.svc__tag{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--deepwater);margin-bottom:12px}
.svc__name{
  font-size:clamp(23px,2.9vw,36px);font-weight:700;letter-spacing:-.025em;
  line-height:1.05;color:var(--on-light);
}
.svc__desc{font-size:clamp(15px,1.5vw,17px);color:var(--on-light-soft);line-height:1.66}
/* services settle in on scroll, staggered */
.svc.reveal{transition:opacity .7s var(--ease-out)}
.svc-list .svc:nth-child(2).reveal{transition-delay:.06s}
.svc-list .svc:nth-child(3).reveal{transition-delay:.12s}
.svc-list .svc:nth-child(4).reveal{transition-delay:.18s}
.svc-list .svc:nth-child(5).reveal{transition-delay:.24s}
.offer__note{
  margin-top:28px;font-size:15px;color:var(--on-light-soft);line-height:1.62;max-width:74ch;
}
@media (max-width:720px){
  .svc{grid-template-columns:1fr;gap:14px}
}

/* ---- COMPARISON (them vs us, type-driven contrast) --------------- */
.comparison .wrap{position:relative;z-index:1}
.vs{position:relative;z-index:1}
.vs__head{
  display:grid;grid-template-columns:0.78fr 1.22fr;gap:clamp(24px,5vw,72px);
  padding-bottom:16px;border-bottom:1px solid var(--hair-dark);
}
.vs__hlabel{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.vs__hlabel--them{color:var(--on-dark-faint)}
.vs__hlabel--us{color:var(--gold)}
.vs__row{
  display:grid;grid-template-columns:0.78fr 1.22fr;gap:clamp(24px,5vw,72px);align-items:baseline;
  padding:clamp(20px,2.5vw,32px) 0;border-bottom:1px solid var(--hair-dark);
}
.vs__them{font-size:clamp(14.5px,1.45vw,16px);color:var(--on-dark-soft);line-height:1.55}
.vs__us{
  font-size:clamp(18px,1.95vw,23px);font-weight:600;letter-spacing:-.01em;line-height:1.34;
  color:var(--on-dark);border-left:3px solid var(--gold);padding-left:clamp(16px,1.4vw,22px);
}
.vs__them::before,.vs__us::before{display:none}
@media (max-width:680px){
  .vs__head{display:none}
  .vs__row{grid-template-columns:1fr;gap:10px;padding:24px 0}
  .vs__them{order:1}
  .vs__us{order:2}
  .vs__them::before{content:"The usual AI vendor";display:block;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-faint);margin-bottom:5px}
  .vs__us::before{content:"Wheelhouse";display:block;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:5px}
}
.comparison__cta,.outcomes__cta{
  margin-top:clamp(34px,4vw,52px);display:flex;align-items:center;gap:24px;flex-wrap:wrap;
}
.comparison__cta p,.outcomes__cta p{
  font-size:clamp(17px,1.8vw,21px);font-weight:500;color:var(--on-dark);letter-spacing:-.01em;max-width:30ch;
}

/* ---- FOUNDER ----------------------------------------------------- */
.founder__inner{
  position:relative;z-index:1;
  display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:clamp(32px,5vw,72px);align-items:center;
}
.founder__portrait{
  position:relative;aspect-ratio:4/5;
  background:linear-gradient(160deg,#0c3d33,#0a2e2a);
  border:1px solid var(--hair-dark);
  display:grid;place-items:center;overflow:hidden;
  clip-path:var(--tag-bl);
}
/* the portrait, treated to sit in the section's green rather than read stark */
.founder__photo{
  position:absolute;inset:0;z-index:1;width:100%;height:100%;
  object-fit:cover;object-position:center 24%;display:block;
  filter:grayscale(.14) saturate(.97) contrast(.97) brightness(1);
  opacity:.98;
  transform-origin:center;will-change:transform;
}
.founder__photo.is-missing{display:none}
/* just a hint of the brand green; the bottom lightly grounds into the frame */
.founder__portrait::after{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    linear-gradient(to top, rgba(10,46,42,.5) 0%, rgba(10,46,42,0) 34%),
    linear-gradient(160deg, rgba(0,117,94,.06), rgba(25,83,95,.05));
  mix-blend-mode:multiply;
}
.founder__corner{position:absolute;z-index:3;width:26px;height:26px;border:2px solid var(--gold);opacity:.85}
.founder__corner.tl{top:16px;left:16px;border-right:none;border-bottom:none}
.founder__corner.br{bottom:16px;right:16px;border-left:none;border-top:none}
.founder__wm{position:absolute;z-index:0;inset:0;display:grid;place-items:center;opacity:.07}
.founder__wm img{width:74%;color:var(--cream)}
.founder__placeholder{position:relative;z-index:0;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--on-dark-soft);text-align:center;padding:20px}
.founder__placeholder svg{width:48px;height:48px;opacity:.6}
.founder__placeholder .pt{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--on-dark-faint)}
.founder__placeholder .pst{font-size:13px;color:var(--on-dark-soft)}

.founder__name{
  font-size:clamp(30px,4vw,52px);font-weight:700;letter-spacing:-.03em;line-height:1.02;
  color:var(--on-dark);margin-top:16px;
}
.founder__bio{margin-top:24px;max-width:62ch}
.founder__bio p{font-size:clamp(16px,1.55vw,18.5px);line-height:1.68;color:var(--on-dark-soft);margin-bottom:16px}
.founder__bio p:last-child{margin-bottom:0}
@media (max-width:820px){
  .founder__inner{grid-template-columns:1fr;gap:34px}
  .founder__portrait{max-width:360px}
}

/* ---- AUDIENCE ---------------------------------------------------- */
.aud-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2vw,26px)}
.aud{padding:clamp(28px,3vw,42px);border:1px solid var(--hair-light)}
.aud--in{
  background:var(--page);clip-path:var(--tag-tr);
  box-shadow:0 26px 50px -34px rgba(0,117,94,.4);
}
.aud--out{background:transparent}
.aud__title{display:flex;align-items:center;gap:12px;font-size:clamp(18px,1.9vw,22px);font-weight:700;letter-spacing:-.01em}
.aud--in .aud__title{color:var(--rainforest)}
.aud--out .aud__title{color:var(--on-light-faint)}
.aud__chip{width:14px;height:14px;border-radius:50%;flex:none}
.aud__chip--in{background:var(--gold);box-shadow:0 0 0 4px rgba(251,177,60,.2)}
.aud__chip--out{background:transparent;border:2px solid var(--on-light-faint);opacity:.6}
.aud__lead{margin:16px 0 22px;font-size:clamp(15px,1.5vw,17px);font-weight:500;line-height:1.5}
.aud--in .aud__lead{color:var(--on-light)}
.aud--out .aud__lead{color:var(--on-light-faint)}
.aud__list{list-style:none;display:flex;flex-direction:column;gap:14px}
.aud__list li{position:relative;padding-left:30px;font-size:14.5px;line-height:1.5}
.aud__list--in li{color:var(--on-light-soft)}
.aud__list--out li{color:var(--on-light-faint)}
.aud__list--in li::before{
  content:"";position:absolute;left:0;top:3px;width:17px;height:17px;
  background:var(--rainforest);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 17'%3E%3Cpath d='M3 9l3.5 3.5L14 5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 17'%3E%3Cpath d='M3 9l3.5 3.5L14 5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.aud__list--out li::before{
  content:"";position:absolute;left:2px;top:11px;width:12px;height:2px;background:var(--on-light-faint);opacity:.55;
}
@media (max-width:740px){.aud-grid{grid-template-columns:1fr}}

/* ---- FAQ --------------------------------------------------------- */
.faq__wrap{max-width:920px}
.faq__list{border-top:1px solid var(--hair-light)}
.faq__item{border-bottom:1px solid var(--hair-light)}
.faq__q{
  width:100%;display:flex;align-items:flex-start;gap:14px;
  background:none;border:none;cursor:pointer;text-align:left;
  padding:clamp(20px,2.2vw,28px) 0;color:var(--on-light);font-family:inherit;
}
.faq__qmark{font-weight:700;color:var(--gold);font-size:clamp(16px,1.7vw,19px);line-height:1.4;flex:none}
.faq__qtext{flex:1;font-size:clamp(16px,1.7vw,20px);font-weight:600;letter-spacing:-.01em;line-height:1.4;color:var(--on-light);transition:color .2s var(--ease)}
.faq__q:hover .faq__qtext{color:var(--rainforest)}
.faq__caret{
  flex:none;width:22px;height:22px;margin-top:3px;position:relative;
  transition:transform .35s var(--ease-out);
}
.faq__caret::before,.faq__caret::after{
  content:"";position:absolute;top:50%;left:50%;background:var(--rainforest);border-radius:2px;
}
.faq__caret::before{width:14px;height:2px;transform:translate(-50%,-50%)}
.faq__caret::after{width:2px;height:14px;transform:translate(-50%,-50%);transition:transform .35s var(--ease-out)}
.faq__item.is-open .faq__caret{transform:rotate(180deg)}
.faq__item.is-open .faq__caret::after{transform:translate(-50%,-50%) scaleY(0)}
.faq__a{overflow:hidden;transition:max-height .4s var(--ease-out)}
.faq__a p{
  padding:0 0 clamp(22px,2.4vw,30px) 38px;
  font-size:clamp(15px,1.5vw,16.5px);color:var(--on-light-soft);line-height:1.66;max-width:72ch;
}
@media (max-width:520px){
  .faq__a p{padding-left:0}
}

/* ---- CLOSE ------------------------------------------------------- */
.close{padding:clamp(96px,13vw,160px) 0}
.wm--close{top:50%;right:-8%;width:min(44vw,520px);transform:translateY(calc(-50% + var(--py,0px)));opacity:.07;color:var(--cream);will-change:transform}
.close__inner{position:relative;z-index:2;text-align:center;max-width:820px;margin:0 auto}
.close__h{
  font-size:clamp(30px,4.6vw,60px);font-weight:700;letter-spacing:-.03em;line-height:1.08;
  color:var(--on-dark);text-wrap:balance;
}
.close__sub{margin:24px auto 0;max-width:56ch;font-size:clamp(15px,1.5vw,17px);color:var(--on-dark-soft);line-height:1.62}
.close__actions{margin-top:clamp(30px,3.6vw,44px);display:flex;justify-content:center}
.close__cta{padding:18px 32px;font-size:16px}

/* ---- COLOPHON / FOOTER ------------------------------------------- */
.colophon{background:var(--ink-deep);color:var(--on-dark);padding:clamp(56px,7vw,84px) 0 36px}
.colophon__inner{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:clamp(28px,3vw,48px);
  padding-bottom:40px;border-bottom:1px solid var(--hair-dark);
}
.colophon__lock{display:flex;align-items:center;gap:11px;font-weight:700;font-size:19px;letter-spacing:-.02em;color:var(--on-dark)}
.colophon__lock img{width:26px;height:26px}
.colophon__brand p{margin-top:14px;font-size:14px;color:var(--on-dark-faint);line-height:1.55;max-width:36ch}
.colophon__group h4{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.colophon__group ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.colophon__group a{font-size:14.5px;color:var(--on-dark-soft);transition:color .2s var(--ease)}
.colophon__group a:hover{color:var(--on-dark)}
.colophon__bottom{
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-top:28px;font-size:12.5px;color:var(--on-dark-faint);
}
@media (max-width:760px){
  .colophon__inner{grid-template-columns:1fr 1fr}
  .colophon__brand{grid-column:1/-1}
}
@media (max-width:440px){
  .colophon__inner{grid-template-columns:1fr}
}

/* ---- skip link --------------------------------------------------- */
.skip{
  position:fixed;top:10px;left:10px;z-index:200;transform:translateY(-150%);
  background:var(--gold);color:var(--ink);font-weight:600;font-size:14px;
  padding:10px 16px;border-radius:2px;transition:transform .25s var(--ease);
}
.skip:focus{transform:translateY(0)}

/* ---- OUTCOMES four-up + cta -------------------------------------- */
.oc-grid--four{grid-template-columns:repeat(4,1fr)}
@media (max-width:1040px){.oc-grid--four{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.oc-grid--four{grid-template-columns:1fr}}

/* ---- footer where ---- */
.colophon__where{font-size:14px;color:var(--on-dark-soft);line-height:1.55;max-width:30ch}

/* CSS:END */
