/* FlexiFundLoan "Bend and Spring" (2026-10-06). Strength that gives a little and comes back: a warm oat canvas, white cards
   with one tighter "hinge" corner (the flex corner: bottom-left much tighter than the other three), a moss action colour, one
   denim hairline running along a reed ribbon (the stretch band), crease lines (a hairline with a lighter line beside it)
   instead of dashes, and single-ink olive engravings on reed and mist pods. Dark tones only on the one band and the footer.
   Type: Commissioner (display, FLAR 100 = gently flared terminals, VOLM pinned 0 at fetch) + Asap (body, tabular figures on
   amounts). Every text pair is WCAG AA 4.5:1 or better (see DIRECTION.md section 2). */
:root{
  --canvas:#F5F3EA;--surface:#FFFFFF;--reed:#E5EAD2;--mist:#E1E9F0;--pleat:#FAFAF5;
  --ink:#1F2A12;        /* 13.5 canvas, 15.0 white */
  --body:#3A4430;       /* 9.2 canvas, 8.3 reed */
  --muted:#5A6450;      /* 5.6 canvas, 6.2 white, 5.05 reed: the floor for small text */
  --moss:#4B6120;       /* 6.2 canvas, 5.6 reed: amounts, "Flexi", text links */
  --spring:#557620;     /* CTA fill only (white text 5.25); never text on a tint */
  --spring-deep:#46621A;--cta-text:#FFFFFF;
  --denim:#35618F;      /* the one accent: hairline, focus ring, i-dot, numeral ring */
  --denim-deep:#2B5079;
  --band:#263318;--footer:#1C2511;--on-band:#F2F3E8;--on-band-2:#C5CDB0;--denim-lt:#A8C3DD;
  --line:rgba(31,42,18,.12);--line-2:rgba(31,42,18,.07);--line-3:rgba(31,42,18,.035);
  --disp:'Commissioner',ui-sans-serif,system-ui,'Segoe UI',sans-serif;
  --sans:'Asap',ui-sans-serif,system-ui,'Segoe UI',sans-serif;
  --flar:"FLAR" 100;
  --fc:26px 26px 26px 8px;    /* cards */
  --fp:30px 30px 30px 10px;   /* panels */
  --fb:44px 44px 44px 12px;   /* the band */
  --fbtn:16px 16px 16px 5px;  /* buttons */
  --fin:12px 12px 12px 4px;   /* inputs */
  --fpod:22px 22px 22px 7px;  /* art pods */
  --w:1180px;--w-narrow:800px;
  --shadow:0 1px 2px rgba(31,42,18,.05),0 16px 34px -24px rgba(31,42,18,.34);
  --shadow-lg:0 1px 2px rgba(31,42,18,.06),0 30px 60px -34px rgba(31,42,18,.45);
  --sec:clamp(72px,9vw,120px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--canvas);color:var(--body);font:400 17px/1.62 var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1}
img,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,h4{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:640;color:var(--ink);margin:0;letter-spacing:-.012em;line-height:1.1;text-wrap:balance}
h1{font-size:clamp(36px,5.2vw,64px);line-height:1.06;font-weight:660}
h2{font-size:clamp(29px,3.7vw,46px);line-height:1.1}
h3{font-size:clamp(21px,1.7vw,23px);font-weight:620;line-height:1.25;letter-spacing:-.006em}
p{margin:0}
b,strong{font-weight:600}
.lede{font-size:clamp(17px,1.4vw,19px);line-height:1.62;color:var(--body);max-width:62ch;text-wrap:pretty}
.lbl{display:inline-block;font:600 12.5px/1.25 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lbl--kick{color:var(--moss);margin-bottom:14px}
.lbl--light{color:var(--denim-lt)}
.disp-num{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:650;color:var(--moss);letter-spacing:-.01em;line-height:1;font-size:34px}
.wrap{width:min(var(--w),calc(100% - 48px));margin-inline:auto}
.sec{padding:var(--sec) 0;position:relative}
.sec--tight{padding:calc(var(--sec) * .55) 0 calc(var(--sec) * .35)}
.sec--reed{background:var(--reed)}
.sec--mist{background:var(--mist)}
.sec--crease{box-shadow:inset 0 1px 0 var(--line),inset 0 2px 0 #fff}
.skip{position:absolute;left:-9999px;top:0}
.skip:focus{left:16px;top:12px;z-index:100;background:#fff;color:var(--moss);padding:12px 18px;border-radius:var(--fbtn);box-shadow:var(--shadow)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2.5px solid var(--denim);outline-offset:3px;border-radius:10px 10px 10px 4px}
.art-missing{display:block;width:44%;aspect-ratio:1;margin:auto;border-radius:44% 44% 44% 18%;background:rgba(75,97,32,.14)}

/* ---- section heads ---- */
.sh{display:grid;gap:16px;justify-items:start;margin:0 0 clamp(40px,5vw,58px);max-width:780px}
.sh--c{margin-inline:auto;text-align:center;justify-items:center}
.sh--c .lede{margin-inline:auto}
.sh h2{max-width:24ch}

/* ---- buttons + links (flex corner, never a pill) ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 26px;border-radius:var(--fbtn);border:1.5px solid transparent;
  font:600 16px/1 var(--sans);letter-spacing:.005em;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s}
.btn--cta{background:var(--spring);color:var(--cta-text);box-shadow:0 10px 22px -14px rgba(38,51,24,.8)}
.btn--cta:hover{background:var(--spring-deep)}
.btn--ghost{background:transparent;color:var(--moss);border-color:var(--moss)}
.btn--ghost:hover{background:rgba(75,97,32,.08)}
.btn--cream{background:var(--on-band);color:var(--band)}
.btn--cream:hover{background:#fff}
.btn--sm{min-height:44px;padding:0 18px;font-size:15px}
.btn--block{width:100%}
.btn .arr,.btn .lock{width:18px;height:18px;flex:none}
.tlink{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;font-size:16px;color:var(--moss);text-decoration:underline;text-decoration-color:rgba(75,97,32,.35);text-decoration-thickness:1.5px;text-underline-offset:5px}
.tlink .arr{width:18px;height:18px;flex:none;transition:transform .2s}
.tlink:hover{color:var(--denim-deep);text-decoration-color:currentColor}
.tlink:hover .arr{transform:translateX(3px)}
.acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* ---- header ---- */
.hdr{position:sticky;top:0;z-index:50;background:rgba(245,243,234,.94);-webkit-backdrop-filter:saturate(1.1) blur(10px);backdrop-filter:saturate(1.1) blur(10px);transition:box-shadow .2s}
.hdr.is-scrolled{box-shadow:0 1px 0 var(--line),0 2px 0 rgba(255,255,255,.75)}
.hdr-in{width:min(var(--w),calc(100% - 48px));margin-inline:auto;height:76px;display:flex;align-items:center;gap:24px}
.brand{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;flex:none}
/* wordmark: one inline run. The dotless i carries a denim disc where the tittle sits (Commissioner metrics: tittle centre
   0.65em above the baseline; baseline 0.906em below the top of a line-height:1 box). */
.wm{display:inline-block;font-family:var(--disp);font-variation-settings:var(--flar);font-weight:700;font-size:24px;line-height:1;letter-spacing:-.015em;color:var(--moss);white-space:nowrap}
.wm b{font-weight:700;color:var(--ink)}
.wm-i{position:relative;display:inline-block}
.wm-i::after{content:"";position:absolute;left:50%;top:.158em;width:.2em;height:.2em;margin-left:-.1em;border-radius:50%;background:var(--denim)}
.nav{margin-left:auto;display:flex;align-items:center}
.nav-main{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.nav-link,.nav-mega-trigger{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 14px;border-radius:12px 12px 12px 4px;font:500 15.5px/1 var(--sans);color:var(--ink);text-decoration:none;transition:background-color .15s}
.nav-link:hover,.nav-mega-trigger:hover,.nav-mega-trigger[aria-expanded="true"]{background:var(--reed)}
.nav-link[aria-current="page"],.has-mega.is-current>.nav-mega-trigger{color:var(--moss);background:var(--reed)}
.chev{width:11px;height:8px;transition:transform .2s}
.nav-mega-trigger[aria-expanded="true"] .chev{transform:rotate(180deg)}
.has-mega{position:relative}
.nav-mega-panel{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);width:380px;background:#fff;border-radius:var(--fc);padding:10px;box-shadow:var(--shadow-lg);border:1px solid var(--line-2)}
.nav-mega-grid{display:grid;gap:2px}
.nav-mega-grid a{display:flex;align-items:center;gap:14px;padding:9px 12px 9px 9px;border-radius:18px 18px 18px 6px;text-decoration:none;transition:background-color .15s}
.nav-mega-grid a:hover{background:var(--canvas)}
.mm-art{width:56px;height:56px;flex:none;border-radius:16px 16px 16px 5px;background:var(--reed);display:grid;place-items:center}
.mm-art img{width:46px;height:46px;object-fit:contain}
.tile-dot{display:block;width:18px;height:18px;border-radius:7px 7px 7px 3px;background:rgba(75,97,32,.25)}
.nav-mega-grid b{display:block;font:620 17px/1.2 var(--disp);font-variation-settings:var(--flar);color:var(--ink)}
.nav-mega-grid small{display:block;margin-top:3px;font-size:14px;line-height:1.35;color:var(--muted)}
.nav-cta{margin-left:8px}
.nav-mobile-cta,.nav-toggle{display:none}
.nav-toggle{width:46px;height:46px;border-radius:14px 14px 14px 5px;background:var(--reed);margin-left:auto;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.nav-toggle span{display:block;width:18px;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s,opacity .2s}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.hdr.lh .btn{margin-left:auto}
@media(max-width:1023px){
  .hdr-in{height:66px;width:calc(100% - 32px)}
  .nav-toggle{display:flex}
  .nav-cta{display:none}
  .nav{position:fixed;left:0;right:0;top:66px;margin:0;display:none;flex-direction:column;align-items:stretch;gap:14px;max-height:calc(100dvh - 66px);overflow:auto;background:var(--canvas);padding:14px 16px 24px;box-shadow:0 1px 0 var(--line),0 24px 40px -24px rgba(31,42,18,.35)}
  .nav.is-open{display:flex}
  .nav-main{flex-direction:column;align-items:stretch;gap:2px}
  .nav-link,.nav-mega-trigger{width:100%;justify-content:space-between;min-height:52px;padding:0 14px;font-size:17px}
  .nav-mega-panel{position:static;transform:none;width:auto;box-shadow:none;border:0;background:transparent;padding:0 0 6px}
  .nav-mega-grid a{padding:8px 10px}
  .nav-mobile-cta{display:inline-flex;width:100%}
}
@media(max-width:400px){.wm{font-size:22px}.hdr.lh .btn{padding:0 14px}}

/* ---- the stretch band: a reed ribbon with a denim hairline (behind the form card, and above the footer) ---- */
.stretch{position:relative;pointer-events:none}
.stretch svg{position:absolute;inset:0;width:100%;height:100%;max-width:none}
.stretch-rib path{fill:var(--reed)}
.stretch-line path{fill:none;stroke:var(--denim);stroke-width:2;stroke-opacity:.5}
.stretch--hero{position:absolute;z-index:0;top:50%;left:50%;width:100vw;height:clamp(170px,19vw,270px);transform:translate(-50%,-46%)}
.js .stretch--hero .stretch-line{clip-path:inset(0 100% 0 0);animation:lz-draw .9s .15s cubic-bezier(.3,.6,.2,1) forwards}
@keyframes lz-draw{to{clip-path:inset(0 0 0 0)}}
.stretch--ft{height:58px;margin-top:clamp(20px,3vw,36px);margin-bottom:-4px}
@media(max-width:759px){.stretch--ft{height:40px}}

/* ---- hero: ONE centred white card at the top (form-first), the copy underneath ---- */
.hero{position:relative;padding:clamp(22px,3.4vw,46px) 0 clamp(30px,4vw,52px);overflow:hidden}
.hero-in{position:relative;display:flex;flex-direction:column;align-items:center}
.hero-stage{position:relative;width:100%;display:flex;justify-content:center}
.fcard{position:relative;z-index:1;width:min(560px,100%);min-height:360px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--fc);
  box-shadow:0 1px 2px rgba(31,42,18,.06),0 34px 64px -38px rgba(31,42,18,.5);padding:18px 26px 20px;scroll-margin-top:92px}
.fcard-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:13px;margin-bottom:18px;border-bottom:1px solid var(--line)}
.fcard-range{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:650;font-size:21px;line-height:1;color:var(--moss);white-space:nowrap;letter-spacing:-.01em}
.welcome{font:600 12.5px/1.35 var(--sans);letter-spacing:.11em;text-transform:uppercase;color:var(--moss);margin:0 0 12px}
.tnote{display:flex;align-items:flex-start;gap:10px;margin:18px 0 0;font-size:14px;line-height:1.5;color:var(--muted)}
.tnote svg{width:18px;height:18px;flex:none;color:var(--moss);margin-top:1px}

/* ---- ZeroParallel embed (mount stays empty; the classic renderer writes #omForm-root at the script). Styled only through
   the #omForm-root / .om-navigation__next hooks. The vendor ships transparent: the white card behind is the solid colour.
   It declares Roboto and never loads it, so every text node is put back on the brand faces. ---- */
.form-host{min-height:200px}
#zeroparallel_form:empty{display:none}
#omForm-root{width:100%!important;max-width:100%!important;margin:0 auto!important}
#omForm-root,#omForm-root *{font-family:var(--sans)!important}
#omForm-root>div{min-height:0!important}
#omForm-root form,#omForm,.omForm-wrapper{background:transparent!important;box-shadow:none!important;border:0!important;height:auto!important;min-height:0!important;padding:0!important;width:100%!important;box-sizing:border-box}
#omForm-root .om-main-wrapper,#omForm-root .om-navigation{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}
#omForm-root .om-step-label{font-family:var(--disp)!important;font-variation-settings:"FLAR" 100!important;font-weight:620!important;font-size:24px!important;line-height:1.2!important;letter-spacing:-.01em!important;color:var(--ink)!important;text-align:left!important;margin:0 0 16px!important}
#omForm-root label,#omForm-root .om-label{color:var(--ink)!important}
#omForm-root select,#omForm-root .om-select{width:100%!important;min-height:56px!important;font-size:16px!important;font-weight:500!important;color:var(--ink)!important;background-color:#fff!important;border:1.5px solid rgba(75,97,32,.35)!important;border-radius:12px 12px 12px 4px!important;padding-left:16px!important}
#omForm-root select.om-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' fill='none'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%234B6120' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 18px center!important}
#omForm-root select:focus,#omForm-root .om-input:focus,#omForm-root input:focus{border-color:var(--moss)!important;box-shadow:0 0 0 4px rgba(53,97,143,.22)!important;outline:0!important}
#omForm-root .om-input,#omForm-root input[type=text],#omForm-root input[type=email],#omForm-root input[type=tel]{border-radius:12px 12px 12px 4px!important;color:var(--ink)!important;border-color:rgba(75,97,32,.35)!important}
#omForm-root .om-progress-bar__complete-line{background-color:var(--moss)!important}
.om-navigation__next,#omForm-root button[type=submit]{width:100%!important;min-height:56px!important;background:var(--spring)!important;color:var(--cta-text)!important;border:0!important;border-radius:16px 16px 16px 5px!important;font-family:var(--sans)!important;font-size:16px!important;font-weight:600!important;letter-spacing:.05em!important;box-shadow:0 10px 22px -14px rgba(38,51,24,.8)!important;transition:background-color .18s!important}
.om-navigation__next:hover,#omForm-root button[type=submit]:hover{background:var(--spring-deep)!important}

/* ---- hero copy under the card ---- */
.hero-copy{position:relative;z-index:1;display:grid;justify-items:center;gap:20px;max-width:940px;margin:clamp(38px,4.6vw,58px) auto 0;text-align:center}
.hook{font:600 12.5px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--moss);background:#fff;border:1px solid var(--line);border-radius:var(--fbtn);padding:9px 15px}
.hero-copy .lede{margin-inline:auto}
.h1b{color:var(--moss)}
@media(min-width:760px){.hero-copy .h1a,.hero-copy .h1b{display:block}}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(640px,100%);margin:8px 0 0;background:#fff;border:1px solid var(--line);border-radius:var(--fc);box-shadow:var(--shadow)}
.facts>div{display:grid;gap:5px;align-content:center;padding:16px 16px 17px;text-align:center}
.facts>div+div{box-shadow:inset 1px 0 0 var(--line),inset 2px 0 0 var(--line-3)}
.facts dt{font:600 12px/1.25 var(--sans);letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.facts dd{margin:0;font-family:var(--disp);font-variation-settings:var(--flar);font-weight:650;font-size:21px;line-height:1.15;color:var(--moss)}

/* ---- how it works: a folding screen of three hinged panels ---- */
.screen{list-style:none;margin:0;padding:0;display:grid;background:#fff;border:1px solid var(--line);border-radius:var(--fp);box-shadow:var(--shadow-lg);perspective:1200px}
.panel{position:relative;display:flex;flex-direction:column;padding:14px}
.panel+.panel{box-shadow:inset 0 1px 0 var(--line),inset 0 2px 0 var(--line-3)}
.panel+.panel::before,.panel+.panel::after{content:"";position:absolute;z-index:2;top:-4px;width:22px;height:8px;border-radius:4px;background:var(--reed);box-shadow:0 0 0 2px #fff}
.panel+.panel::before{left:24%}
.panel+.panel::after{right:24%}
.panel-art{position:relative;aspect-ratio:4/3;background:var(--reed);border-radius:var(--fpod)}
.panel:nth-child(2) .panel-art{background:var(--mist)}
.panel-art img{position:absolute;left:14%;top:8%;width:72%;height:84%;object-fit:contain}
.panel-body{display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex:1;padding:22px 12px 6px}
.panel-id{display:flex;align-items:center;gap:12px}
.panel-body h3{font-size:clamp(22px,1.9vw,25px)}
.panel-body>p{color:var(--body)}
.panel-pts{list-style:none;margin:6px 0 4px;padding:0;align-self:stretch}
.panel-pts li{display:grid;gap:3px;padding:12px 0;box-shadow:inset 0 1px 0 var(--line);font-size:15px;line-height:1.5}
.panel-pts b{color:var(--ink)}
.panel-pts span{color:var(--muted)}
.panel .tlink{margin-top:auto}
@media(min-width:960px){
  .screen{grid-template-columns:repeat(3,minmax(0,1fr))}
  .panel+.panel{box-shadow:inset 1px 0 0 var(--line),inset 2px 0 0 var(--line-3)}
  .panel+.panel::before,.panel+.panel::after{top:auto;left:-4px;right:auto;width:8px;height:22px}
  .panel+.panel::before{top:22%}
  .panel+.panel::after{bottom:22%}
}
/* the band numeral: a short stretched capsule with a denim ring, like a length of elastic */
.bn{display:inline-grid;place-items:center;flex:none;width:48px;height:30px;border-radius:15px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--denim);
  font-family:var(--disp);font-variation-settings:var(--flar);font-weight:650;font-size:16px;line-height:1;color:var(--ink)}
.bn--sm{width:42px;height:26px;border-radius:13px;font-size:14.5px}

/* ---- the one dark band ---- */
.sec--band{padding:clamp(16px,2.6vw,32px) 0}
.band{position:relative;display:grid;gap:26px;align-items:center;background:var(--band);color:var(--on-band);border-radius:var(--fb);padding:clamp(44px,5.6vw,76px) clamp(26px,5.4vw,80px)}
.band-copy{position:relative}
.band h2{color:var(--on-band);margin:14px 0 16px;font-size:clamp(30px,3.6vw,48px);max-width:18ch}
.band p{color:var(--on-band-2);font-size:clamp(17px,1.4vw,19px);max-width:50ch;margin-bottom:30px}
.band-art{position:relative;width:100%;max-width:360px;aspect-ratio:1;justify-self:center}
.band-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.band .art-missing{background:rgba(242,243,232,.12)}
@media(min-width:900px){.band{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:56px}}
@media(max-width:899px){.band-art{max-width:220px;order:-1}}

/* ---- categories: hinge tiles (the tight corner relaxes and the tile lifts on hover) ---- */
.hts{display:grid;gap:14px}
@media(min-width:760px){.hts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:960px){.hts{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
.ht{display:flex;align-items:center;gap:16px;min-height:108px;padding:12px 16px 12px 12px;background:#fff;border:1px solid var(--line);border-radius:var(--fc);text-decoration:none;transition:border-radius .2s,transform .2s,box-shadow .2s}
.ht:hover,.ht:focus-visible{border-radius:26px;transform:translateY(-2px);box-shadow:var(--shadow)}
.ht-pod{flex:none;width:120px;height:84px;display:grid;place-items:center;background:var(--reed);border-radius:18px 18px 18px 6px}
.ht:nth-child(3n) .ht-pod{background:var(--mist)}
.ht-pod img{width:104px;height:72px;object-fit:contain}
.ht-txt{display:grid;gap:4px;min-width:0}
.ht-txt b{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:620;font-size:19px;line-height:1.2;color:var(--ink)}
.ht-txt small{font-size:15px;line-height:1.4;color:var(--muted)}
.ht-go{flex:none;margin-left:auto;color:var(--moss);display:grid;place-items:center;width:28px;height:28px;transition:transform .2s}
.ht:hover .ht-go{transform:translateX(3px)}
.ht-go .arr{width:18px;height:18px}

/* ---- amounts: the elastic track ---- */
.track{position:relative;display:grid;gap:18px;max-width:560px;margin:0 auto}
.track-row{position:relative;list-style:none;margin:0;padding:0;display:flex;justify-content:space-between;gap:8px}
.track-row::before{content:"";position:absolute;left:-8px;right:-8px;top:50%;height:8px;margin-top:-4px;border-radius:8px;background:var(--reed);box-shadow:inset 0 1px 0 rgba(31,42,18,.07);transform-origin:center}
.track-row li{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;background:#fff;border:1.5px solid rgba(75,97,32,.35);border-radius:999px;
  font:600 15px/1 var(--sans);font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
.js .track.rv .track-row::before,.js .track.rv::before{transform:scaleX(.94);transition:transform .7s cubic-bezier(.2,.7,.2,1) .1s}
.js .track.rv.is-in .track-row::before,.js .track.rv.is-in::before{transform:none}
@media(min-width:1240px){
  .track{display:flex;justify-content:space-between;gap:10px;max-width:none;padding:14px 0}
  .track::before{content:"";position:absolute;left:0;right:0;top:50%;height:8px;margin-top:-4px;border-radius:8px;background:var(--reed);box-shadow:inset 0 1px 0 rgba(31,42,18,.07);transform-origin:center}
  .track-row{display:contents}
  .track-row::before{display:none}
}
.track-note{margin:40px auto 0;text-align:center;font-size:15px;color:var(--muted);max-width:60ch}
@media(max-width:759px){.track{gap:16px}.track-row{gap:6px}.track-row li{padding:0 8px;font-size:14px;min-height:38px}}

/* ---- cost: the cost fold (three folded panels and a total strip), then the features ---- */
.fold{max-width:980px;background:#fff;border:1px solid var(--line);border-radius:var(--fp);box-shadow:var(--shadow-lg);overflow:hidden}
.fold-ps{display:grid}
.fold-p{display:grid;gap:12px;align-content:start;padding:26px 26px 26px}
.fold-p:nth-child(2){background:linear-gradient(90deg,#F1F3E6,#FBFCF6)}
.fold-p:nth-child(3){background:linear-gradient(90deg,#FFFFFF,#F2F4E8)}
.fold-p+.fold-p{box-shadow:inset 0 1px 0 var(--line)}
@media(min-width:760px){.fold-ps{grid-template-columns:repeat(3,minmax(0,1fr))}.fold-p{padding:30px 28px}.fold-p+.fold-p{box-shadow:inset 1px 0 0 var(--line)}}
.fold-total{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;padding:20px 28px 22px;background:var(--reed);box-shadow:inset 0 1px 0 var(--line)}
.fold-total span{font:600 13px/1.2 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--ink)}
.fold-total .disp-num{font-size:30px}
.fold-total p{flex-basis:100%;font-size:14.5px;color:var(--muted)}
@media(min-width:760px){.fold-total p{flex-basis:auto;margin-left:auto}}
.feats{list-style:none;margin:48px 0 0;padding:0;display:grid;gap:26px}
@media(min-width:960px){.feats{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}}
.feat{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start}
.feat-pod{position:relative;width:96px;height:96px;background:var(--reed);border-radius:var(--fpod)}
.feat-pod img{position:absolute;left:10%;top:10%;width:80%;height:80%;object-fit:contain}
.feat h3{font-size:clamp(21px,1.8vw,23px);margin:4px 0 8px}
.feat p{color:var(--body)}
.note{max-width:820px;margin:38px 0 0;padding:18px 22px;border-radius:var(--fc);background:var(--mist);font-size:15px;line-height:1.55;color:var(--body)}
@media(max-width:759px){.feat-pod{width:78px;height:78px}.feat{gap:16px}.disp-num{font-size:30px}}

/* ---- accordions: the pleated panel (plain terms) and separate cards (FAQ) ---- */
.plain{max-width:900px;margin:0 auto}
.acc{display:grid;gap:12px}
.acc summary{list-style:none;display:flex;align-items:center;gap:16px;min-height:68px;padding:16px 20px;cursor:pointer}
.acc summary::-webkit-details-marker{display:none}
.acc .q{flex:1;min-width:0;font:600 18px/1.35 var(--sans);color:var(--ink)}
.acc .plus{flex:none;position:relative;width:30px;height:30px;border-radius:10px 10px 10px 3px;background:var(--reed)}
.acc .plus::before,.acc .plus::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;border-radius:2px;background:var(--moss);transform:translate(-50%,-50%)}
.acc .plus::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .22s}
.acc details[open] .plus::after{transform:translate(-50%,-50%) rotate(180deg)}
.acc .body{padding:0 24px 22px 78px}
.acc .body p{color:var(--body);max-width:64ch}
.acc--pleat{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--fp);box-shadow:var(--shadow);overflow:hidden}
.acc--pleat details+details{box-shadow:inset 0 1px 0 var(--line)}
.acc--pleat details:nth-child(even):not([open]){background:var(--pleat)}
.acc--pleat summary{padding:18px 24px;min-height:74px}
.acc--pleat .body{padding-left:82px}
.acc--card details{background:#fff;border:1px solid var(--line);border-radius:var(--fc);transition:box-shadow .2s}
.acc--card details[open]{box-shadow:inset 3px 0 0 var(--denim),var(--shadow)}
@media(max-width:759px){.acc .q{font-size:17px}.acc summary,.acc--pleat summary{padding:14px 16px;gap:12px}.acc .body,.acc--pleat .body{padding:0 18px 20px 18px}}
.split{display:grid;gap:34px}
.split-head{display:grid;gap:16px;align-content:start;justify-items:start}
@media(min-width:1000px){.split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start}.split-head{position:sticky;top:112px}}

/* ---- trust ---- */
.tcards{display:grid;gap:18px}
@media(min-width:860px){.tcards{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}}
.tcard{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:12px;background:#fff;border-radius:var(--fc);padding:26px 26px 16px;box-shadow:var(--shadow)}
.tcard .bend{width:28px;height:28px;color:var(--denim);margin-bottom:2px}
.tcard h3{font-size:clamp(21px,1.9vw,24px)}
.tcard p{flex:1;color:var(--body)}
.tacts{display:grid;align-self:stretch;margin-top:6px;padding-top:8px;box-shadow:inset 0 1px 0 var(--line)}

/* ---- footer (the stretch-band divider sits just above it on the canvas) ---- */
.ft{position:relative;background:var(--footer);color:var(--on-band-2);border-radius:48px 48px 0 0/28px 28px 0 0}
.ft-in{width:min(var(--w),calc(100% - 48px));margin-inline:auto;padding:76px 0 36px}
.ft-top{display:grid;gap:38px}
@media(min-width:960px){.ft-top{grid-template-columns:1.5fr 1fr 1fr 1.25fr;gap:44px}}
.ft .wm{font-size:28px;color:var(--on-band)}
.ft .wm b{color:var(--on-band)}
.ft .wm-i::after{background:var(--denim-lt)}
.ft-tag{margin:16px 0 12px;max-width:36ch;font-size:16px;color:var(--on-band-2)}
.ft-mail{display:inline-flex;align-items:center;min-height:44px;color:var(--denim-lt);text-decoration:underline;text-decoration-color:rgba(168,195,221,.45);text-underline-offset:4px}
.ft-spec{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.ft-spec span{font:600 11.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--on-band-2);border:1px solid rgba(197,205,176,.45);border-radius:999px;padding:9px 13px}
.ft-col{display:grid;align-content:start}
.ft-col h4{font:600 12.5px/1.2 var(--sans);font-variation-settings:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--denim-lt);margin:0 0 8px}
.ft-col a{display:flex;align-items:center;min-height:40px;color:var(--on-band);text-decoration:none;font-size:15.5px;line-height:1.3}
.ft-col a:hover{text-decoration:underline;text-underline-offset:4px}
.disc{margin-top:52px;padding-top:30px;box-shadow:inset 0 1px 0 rgba(197,205,176,.18);display:grid;gap:12px;font-size:13.5px;line-height:1.62;color:var(--on-band-2)}
.disc b{color:var(--on-band);font-weight:600}
.disc a{color:var(--on-band)}
.ft-bottom{margin-top:30px;padding-top:22px;box-shadow:inset 0 1px 0 rgba(197,205,176,.18);display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:14px;color:var(--on-band-2)}
@media(max-width:959px){.ft-in{width:calc(100% - 32px);padding-top:60px}.ft-top{grid-template-columns:1fr 1fr;gap:34px 20px}.ft-brand{grid-column:1/-1}.ft-col a{min-height:44px}}
@media(max-width:759px){.ft{border-radius:30px 30px 0 0/18px 18px 0 0}}

/* ---- mobile sticky CTA ---- */
.sticky-cta{position:fixed;left:12px;right:12px;bottom:12px;z-index:40;visibility:hidden;opacity:0;transform:translateY(14px);transition:opacity .2s,transform .2s,visibility .2s}
.sticky-cta.is-on{visibility:visible;opacity:1;transform:none}
.sticky-cta .btn{min-height:56px;box-shadow:0 16px 32px -12px rgba(38,51,24,.7)}
@media(min-width:760px){.sticky-cta{display:none}}

/* ---- crumbs ---- */
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 18px;font-size:14.5px;color:var(--muted)}
.crumb a{color:var(--moss);text-decoration:underline;text-decoration-color:rgba(75,97,32,.35);text-underline-offset:3px;display:inline-flex;align-items:center;min-height:32px}
.crumb span{color:var(--muted)}

/* ---- vertical pages: the bend panel ---- */
.v-hero{padding:24px 0 clamp(56px,7vw,92px)}
.bp{display:grid;background:#fff;border:1px solid var(--line);border-radius:var(--fp);box-shadow:var(--shadow-lg);overflow:hidden}
.bp-copy{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:clamp(30px,4.4vw,58px)}
.bp-copy h1{font-size:clamp(34px,4.2vw,54px);line-height:1.07}
.bp-copy .acts{margin-top:8px}
.v-keys{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px 20px}
.v-keys li{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:500;color:var(--ink)}
.v-keys svg{width:18px;height:18px;flex:none;color:var(--moss)}
.bp-art{position:relative;background:var(--reed);border-radius:24px 24px 24px 8px;margin:14px;min-height:420px}
.bp-art img{position:absolute;left:8%;top:10%;width:84%;height:80%;object-fit:contain}
@media(min-width:860px){.bp{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}
@media(max-width:859px){.bp-art{width:72%;justify-self:center;aspect-ratio:4/3;min-height:0;margin:0 auto 26px}.bp-copy{padding:28px 22px 26px}}

/* ---- partner cards (rendered by site.js only for records with a live link) ---- */
.offers{display:grid;gap:18px}
.offers-loading{color:var(--muted)}
.offers-empty{display:grid;gap:8px;background:#fff;border:1px solid var(--line);border-radius:var(--fc);padding:28px 30px 26px;color:var(--body);max-width:820px;box-shadow:var(--shadow)}
.offers-empty b{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:620;font-size:22px;line-height:1.25;color:var(--ink)}
.offer{position:relative;display:grid;gap:14px;background:#fff;border:1px solid var(--line);border-radius:var(--fc);padding:22px 26px 24px;box-shadow:var(--shadow)}
.offer-ribbon{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;color:var(--muted)}
.offer-ribbon-badge{font:600 11.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--moss);background:var(--reed);border-radius:10px 10px 10px 3px;padding:8px 12px}
.offer-head{display:flex;align-items:center;gap:18px;padding-bottom:14px;box-shadow:0 1px 0 var(--line)}
.offer-logo{width:auto;max-width:170px;height:52px;object-fit:contain}
.offer-mono{display:grid;place-items:center;width:52px;height:52px;flex:none;border-radius:16px 16px 16px 5px;color:#fff;font:650 22px/1 var(--disp);font-variation-settings:var(--flar)}
.offer-id h3{font-size:22px}
.offer-tagline{font-size:15px;color:var(--muted);margin-top:4px}
.offer-best{font-weight:600;color:var(--ink)}
.offer-feats{display:grid;gap:10px;margin:0;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.offer-feat{background:var(--canvas);border-radius:14px 14px 14px 4px;padding:12px 14px}
.offer-feat dt{font:600 11.5px/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.offer-feat dd{margin:6px 0 0;font-weight:600;color:var(--ink)}
.offer-points{margin:0;padding-left:20px;display:grid;gap:6px}
.offer-why{color:var(--body)}
.offer-act{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.offer-pill{font-size:14px;color:var(--muted)}
.btn--accent{background:var(--spring);color:var(--cta-text)}
.btn--accent:hover{background:var(--spring-deep)}
.offer-secure,.offer-fine{font-size:13.5px;color:var(--muted)}
.offer-review{color:var(--moss);font-weight:600}

/* ---- vertical steps ---- */
.vsteps{list-style:none;margin:0;padding:0;display:grid;gap:18px}
@media(min-width:860px){.vsteps{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}
.vstep{display:grid;gap:12px;align-content:start;justify-items:start;background:#fff;border:1px solid var(--line);border-radius:var(--fc);padding:26px 26px 28px;box-shadow:var(--shadow)}
.vstep .bn{margin-bottom:6px}
.vstep p{color:var(--body)}

/* ---- offer pages ---- */
.op-main{padding:24px 0 20px}
.op{max-width:760px;margin:0 auto}
.op--wide{max-width:var(--w)}
.op-top{background:#fff;border:1px solid var(--line);border-radius:var(--fp);padding:clamp(26px,4vw,48px);box-shadow:var(--shadow-lg)}
.op-brand{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:0 0 24px}
.op-logo{display:inline-flex;align-items:center;gap:12px;min-height:66px;padding:10px 16px;background:#fff;border:1px solid var(--line);border-radius:18px 18px 18px 6px}
.op-logo img{height:var(--lh,34px);width:auto;max-width:min(300px,64vw);object-fit:contain}
.op-logo--mono b{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:640;font-size:20px;line-height:1.2;color:var(--ink)}
.op-ad{font:600 11.5px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:8px 12px}
.op h1{font-size:clamp(33px,4.4vw,54px);line-height:1.07;margin:0 0 16px}
.sub{font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:var(--ink);margin:0 0 22px}
.op-hi{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:11px}
.op-hi li{display:flex;align-items:flex-start;gap:12px;color:var(--body)}
.op-hi svg{width:20px;height:20px;flex:none;margin-top:3px;color:var(--moss)}
.op-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.op-secure{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--muted)}
.op-secure .lock{width:16px;height:16px;flex:none}
.op-note{font-size:14px;line-height:1.6;color:var(--muted);margin:20px 0 0}
.op .lead{font-size:clamp(18px,1.5vw,20px);line-height:1.65;color:var(--ink);margin:50px 0 30px}
.glance{margin:34px 0 40px;background:#fff;border:1px solid var(--line);border-radius:var(--fc);box-shadow:var(--shadow);overflow:hidden}
.glance-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 14px;padding:18px 24px 16px;box-shadow:inset 0 -1px 0 var(--line)}
.glance-name{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:650;font-size:20px;line-height:1.2;color:var(--ink)}
.spec{position:relative;margin:0 0 -1px;display:grid}
.spec>div{display:grid;gap:5px;align-content:start;padding:15px 24px;box-shadow:inset 0 -1px 0 var(--line)}
.spec dt{font:600 12px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.spec dd{margin:0;font-weight:600;font-size:16px;line-height:1.45;color:var(--ink);font-variant-numeric:tabular-nums}
@media(min-width:640px){.spec{grid-template-columns:1fr 1fr}.spec::before{content:"";position:absolute;z-index:1;top:0;bottom:0;left:50%;width:1px;background:var(--line);box-shadow:1px 0 0 var(--line-3)}}
.op-sec{margin:52px 0 0}
.op-sec h2{font-size:clamp(27px,3vw,37px);margin:0 0 18px}
.op-sec p{margin:0 0 14px;color:var(--body)}
.op-sec .op-note{margin:14px 0 0;color:var(--muted)}
.op-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.op-steps li{display:flex;align-items:flex-start;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--fc);padding:18px 22px;color:var(--body)}
.op-steps .bn{margin-top:1px}
.op-steps strong{color:var(--ink)}
.op-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:var(--fc);overflow:hidden}
.op-table th,.op-table td{padding:15px 20px;text-align:left;vertical-align:top;box-shadow:inset 0 -1px 0 var(--line);font-size:16px;line-height:1.5}
.op-table th{width:38%;font:600 12.5px/1.45 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);padding-top:18px}
.op-table td{color:var(--body)}
.op-table tr:last-child th,.op-table tr:last-child td{box-shadow:none}
.fit{display:grid;gap:16px}
@media(min-width:700px){.fit{grid-template-columns:1fr 1fr}}
.fit article{border-radius:var(--fc);padding:24px 24px 22px}
.fit-y{background:var(--reed)}
.fit-n{background:var(--mist)}
.fit h3{font-size:21px;margin:0 0 12px}
.fit ul{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--body)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips span{background:#fff;border:1.5px solid rgba(75,97,32,.3);border-radius:999px;padding:10px 16px;font-size:15px;color:var(--ink)}
.proof{display:grid;gap:14px}
@media(min-width:700px){.proof{grid-template-columns:repeat(3,minmax(0,1fr))}}
.proof article{display:grid;gap:10px;align-content:start;background:#fff;border:1px solid var(--line);border-radius:var(--fc);padding:22px}
.proof b{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:650;font-size:23px;line-height:1.2;color:var(--ink)}
.proof .cnt{font-size:14px;color:var(--muted)}
.pbar{display:block;height:7px;border-radius:7px;background:var(--reed);overflow:hidden}
.pbar i{display:block;height:100%;border-radius:7px;background:var(--moss)}
.op-box{display:grid;gap:8px;background:var(--mist);border-radius:var(--fc);padding:20px 22px}
.op-box p{margin:0;color:var(--body)}
.op-mid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 22px;margin:52px 0 0;background:var(--reed);border-radius:var(--fp);padding:26px 28px}
.op-mid p{font-size:14.5px;color:var(--muted);max-width:40ch;margin:0}
.ad-slot{margin:34px 0 0;padding:12px 16px;border:1.5px solid var(--reed);border-radius:var(--fc);text-align:center;font:600 12px/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.op-faq .acc{margin-top:4px}
.op-fine{max-width:760px;margin:40px auto 0;font-size:13.5px;line-height:1.62;color:var(--muted)}
.op-close{max-width:760px;margin:56px auto 0;display:grid;justify-items:center;gap:14px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--fp);padding:44px 28px 30px;box-shadow:var(--shadow-lg)}
.op-close .lede{margin:0 auto 10px}
.op-close .back{display:inline-flex;align-items:center;min-height:44px;margin-top:4px;color:var(--moss);font-weight:600;text-decoration:underline;text-decoration-color:rgba(75,97,32,.35);text-underline-offset:4px}
.adv-hero{display:grid;gap:22px}
@media(min-width:960px){.adv-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px;align-items:stretch}}
.adv-art{position:relative;margin:0;align-self:stretch;width:100%;min-height:360px;background:var(--reed);border-radius:var(--fp)}
.adv-art img{position:absolute;left:8%;top:10%;width:84%;height:80%;object-fit:contain}
@media(max-width:959px){.adv-art{min-height:0;aspect-ratio:16/10}}
@media(max-width:759px){.op-top{padding:24px 20px 26px}.op-steps li{padding:16px}.op-table th,.op-table td{padding:13px 14px;font-size:15px}.op-table th{width:42%;font-size:11.5px}.op-mid{padding:22px 20px}.op-close{padding:36px 20px 24px}}

/* ---- legal pages + the in-page modal (typography only; the carried <main> is never edited) ---- */
.legal-wrap{width:min(var(--w-narrow),calc(100% - 32px));margin:28px auto 0}
.legal-crumb{margin-bottom:16px}
main.legal{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--fp);padding:clamp(26px,4.4vw,52px);box-shadow:var(--shadow-lg)}
main.legal .wrap{width:auto;max-width:none;margin:0}
main.legal h1,.cmp-modal-body h1{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:620;color:var(--ink);font-size:clamp(31px,3.9vw,44px);line-height:1.1;margin:0 0 12px;padding-bottom:18px;box-shadow:0 1px 0 var(--line),0 2px 0 var(--line-3)}
main.legal h2,.cmp-modal-body h2{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:620;color:var(--ink);font-size:clamp(22px,2.2vw,26px);margin:32px 0 10px}
main.legal h3,.cmp-modal-body h3{font-size:20px;margin:22px 0 8px}
main.legal p,main.legal li,.cmp-modal-body p,.cmp-modal-body li{font-family:var(--sans);font-size:17px;color:var(--body);line-height:1.7}
main.legal p,.cmp-modal-body p{margin:0 0 12px}
main.legal ul,main.legal ol,.cmp-modal-body ul,.cmp-modal-body ol{padding-left:22px;margin:0 0 16px}
main.legal a,.cmp-modal-body a{color:var(--moss);text-decoration:underline;text-decoration-color:rgba(75,97,32,.4);text-underline-offset:3px}
main.legal a:hover,.cmp-modal-body a:hover{color:var(--denim-deep)}
main.legal strong,.cmp-modal-body strong{color:var(--ink)}
main.legal .eff,main.legal .legal-effective,.cmp-modal-body .eff,.cmp-modal-body .legal-effective{font-size:15px;color:var(--muted);margin:14px 0 20px}
main.legal .legal-summary,.cmp-modal-body .legal-summary{background:var(--reed);border-radius:var(--fc);padding:20px 22px 8px;margin:18px 0 24px}
main.legal .lead,.cmp-modal-body .lead{font-size:18px;color:var(--ink)}
main.legal .legal-summary>:first-child,.cmp-modal-body .legal-summary>:first-child{margin-top:0}
main.legal table,.cmp-modal-body table{width:100%;max-width:100%;border-collapse:collapse;font-size:15px;margin:0 0 18px}
main.legal td,main.legal th,.cmp-modal-body td,.cmp-modal-body th{box-shadow:inset 0 -1px 0 var(--line);padding:10px 8px;text-align:left;vertical-align:top}
main.legal th,.cmp-modal-body th{color:var(--ink);font-weight:600}
@media(max-width:700px){main.legal table,.cmp-modal-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}
/* the carried Unsubscribe card: restyled with the site tokens (higher specificity than its own inline <style>) */
main.legal .unsub-card,.cmp-modal-body .unsub-card{background:var(--canvas);border:1px solid var(--line);border-radius:var(--fc);padding:26px 24px;box-shadow:none}
main.legal .unsub-card__title,.cmp-modal-body .unsub-card__title{font-family:var(--disp);font-variation-settings:var(--flar);font-weight:620;font-size:23px;color:var(--ink);margin:0 0 8px}
main.legal .unsub-card__sub,.cmp-modal-body .unsub-card__sub{font-size:15.5px;color:var(--body)}
main.legal .unsub-field label,.cmp-modal-body .unsub-field label{font-family:var(--sans);font-weight:600;font-size:15px;color:var(--ink)}
main.legal .unsub-field label .opt,.cmp-modal-body .unsub-field label .opt,main.legal .unsub-field__hint,.cmp-modal-body .unsub-field__hint,main.legal .unsub-form__legal,.cmp-modal-body .unsub-form__legal{color:var(--muted)}
main.legal .unsub-field label .req,.cmp-modal-body .unsub-field label .req{color:#9A2B12}
main.legal .unsub-form__legal,main.legal .unsub-field__hint,.cmp-modal-body .unsub-form__legal,.cmp-modal-body .unsub-field__hint{font-size:13.5px;line-height:1.5;margin-top:8px}
main.legal .unsub-field input,main.legal .unsub-field select,.cmp-modal-body .unsub-field input,.cmp-modal-body .unsub-field select{min-height:52px;padding:12px 15px;font:500 16px/1.3 var(--sans);color:var(--ink);background:#fff;border:1.5px solid rgba(75,97,32,.35);border-radius:var(--fin)}
main.legal .unsub-field input:focus,main.legal .unsub-field select:focus,.cmp-modal-body .unsub-field input:focus,.cmp-modal-body .unsub-field select:focus{outline:0;border-color:var(--moss);box-shadow:0 0 0 4px rgba(53,97,143,.22)}
main.legal .unsub-form__submit,.cmp-modal-body .unsub-form__submit{min-height:54px;padding:0 26px;border-radius:var(--fbtn);background:var(--spring);color:var(--cta-text);font:600 16px/1.2 var(--sans);box-shadow:0 10px 22px -14px rgba(38,51,24,.8)}
main.legal .unsub-form__submit:hover:not(:disabled),.cmp-modal-body .unsub-form__submit:hover:not(:disabled){background:var(--spring-deep)}
main.legal .unsub-msg--error,.cmp-modal-body .unsub-msg--error{background:#FBEDE8;color:#8A2C14;border-color:#E9B7A6;border-radius:var(--fin)}
main.legal .unsub-msg--success,.cmp-modal-body .unsub-msg--success{background:var(--reed);color:var(--ink);border-color:rgba(75,97,32,.3);border-radius:var(--fin)}
.cmp-modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(28,37,17,.55)}
.cmp-modal.is-open{display:flex}
.cmp-modal-card{width:min(860px,100%);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:var(--fp);box-shadow:var(--shadow-lg)}
.cmp-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px 10px 26px;box-shadow:0 1px 0 var(--line)}
.cmp-modal-close{display:grid;place-items:center;width:44px;height:44px;border-radius:14px 14px 14px 5px;background:var(--canvas);color:var(--muted)}
.cmp-modal-close svg{width:18px;height:18px}
.cmp-modal-close:hover{color:var(--ink);background:var(--reed)}
.cmp-modal-body{overflow:auto;padding:26px 30px 38px}
.cmp-modal-body .wrap{width:auto;margin:0}
.cmp-modal-loading{color:var(--muted)}
body.cmp-modal-open{overflow:hidden}
@media(max-width:759px){.cmp-modal-body{padding:22px 20px 30px}}

/* ---- 404 ---- */
.nf{padding:clamp(44px,6vw,96px) 0}
.nf-grid{display:grid;gap:34px;align-items:center}
@media(min-width:900px){.nf-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px}}
.nf-fig{position:relative;margin:0;justify-self:center;width:100%;max-width:440px;aspect-ratio:1;border-radius:var(--fp);background:var(--reed)}
.nf-fig img{position:absolute;left:12%;top:12%;width:76%;height:76%;object-fit:contain}
.nf-copy{display:grid;justify-items:start;gap:18px}
.nf-copy h1{font-size:clamp(38px,5vw,62px)}
.nf-copy .acts{margin-top:10px}
@media(max-width:899px){.nf-fig{order:2;width:70%;max-width:320px}.nf-copy{justify-items:center;text-align:center}.nf-copy .acts{justify-content:center}}

/* ---- phone ---- */
@media(max-width:759px){
  body{font-size:16px}
  .wrap{width:calc(100% - 32px)}
  .hero .wrap{width:calc(100% - 24px)}
  .fcard{min-height:330px;padding:16px 18px 18px}
  .fcard-range{font-size:19px}
  #omForm-root .om-step-label{font-size:21px!important}
  .hero-copy{gap:16px;margin-top:34px;padding-inline:4px}
  .hero-copy h1{font-size:clamp(34px,10vw,44px)}
  .acts .btn{flex:1 1 100%}
  .band{padding:42px 22px 44px}
  .band .btn{width:100%}
  .ht{min-height:96px;gap:14px}
  .ht-pod{width:100px;height:72px}
  .ht-pod img{width:88px;height:61px}
}
@media(max-width:519px){
  .facts{grid-template-columns:1fr}
  .facts>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 18px;text-align:left}
  .facts>div+div{box-shadow:inset 0 1px 0 var(--line),inset 0 2px 0 var(--line-3)}
  .facts dd{font-size:19px}
}

/* ---- motion (only when JS runs; everything is visible without it) ---- */
.js .rv{opacity:0;transform:translateY(12px);transition:opacity .42s cubic-bezier(.2,.7,.2,1),transform .42s cubic-bezier(.2,.7,.2,1)}
.js .rv.is-in{opacity:1;transform:none}
.js .panel.rv{transform:rotateY(6deg);transform-origin:left center;transition:opacity .48s ease calc(var(--i,0) * 80ms),transform .48s cubic-bezier(.2,.7,.2,1) calc(var(--i,0) * 80ms)}
.js .panel.rv.is-in{transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .rv,.rv,.js .panel.rv{opacity:1!important;transform:none!important;transition:none!important}
  .js .stretch--hero .stretch-line{animation:none!important;clip-path:none!important}
  .js .track.rv .track-row::before,.js .track.rv::before{transform:none!important;transition:none!important}
  .ht,.btn,.tlink .arr,.chev,.ht-go,.acc .plus::after,.acc--card details,.hdr{transition:none!important}
}

/*unsub-dle*/ /* behaviour rules for the carried DLE Unsubscribe card; restyle colours with the site tokens, keep the show/hide logic */
.unsub-msg{display:none}.unsub-msg.is-visible{display:block}.unsub-msg--success{display:none}
.unsub-card.is-success .unsub-form,.unsub-card.is-success .unsub-card__sub,.unsub-card.is-success .unsub-msg--error{display:none}
.unsub-card.is-success .unsub-msg--success{display:block}

/* ---- offer rollout 2026-10-09: hook + offer first on phone and desktop, advertiser lockups, wall cards within reach ---- */
.op-main{padding-top:18px}
.op .crumb{margin-bottom:12px}
.op-hero{display:flex;flex-direction:column;padding:clamp(22px,3vw,36px)}
.op-hero .welcome{margin:0 0 4px}
.op-hook{margin:0 0 12px;font-family:var(--disp);font-variation-settings:var(--flar);font-weight:640;font-size:17px;line-height:1.35;color:var(--ink)}
.op-hook[hidden],.welcome[hidden],.op-state[hidden],.wall-hook[hidden]{display:none}
.op-hero .op-brand{margin:0 0 14px}
.op-logo--xl{min-height:0;padding:10px 14px;max-width:100%;min-width:0}
.op-logo--xl img.adv-logo{height:auto;max-width:100%;min-width:0}
.op-logo--card{padding:0;border:0;background:transparent;border-radius:0}
.op-logo--card img.adv-logo{border-radius:14px;box-shadow:var(--shadow)}
.op-hero .lbl--kick{margin-bottom:10px;align-self:flex-start}
.op-hero h1{font-size:clamp(28px,3.2vw,42px);line-height:1.08;margin:0 0 12px}
.op-hero .sub{font-size:clamp(16.5px,1.4vw,19px);margin:0 0 16px}
.op-state{align-self:flex-start;display:inline-flex;align-items:center;font:600 12px/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--moss);background:var(--reed);border-radius:10px 10px 10px 3px;padding:8px 12px;margin:0 0 16px}
.op-hero .op-hi{margin:0 0 20px;gap:8px}
.btn .cta-lock{width:18px;height:18px;flex:none}
.offer-cta{white-space:normal;text-align:center;line-height:1.2;padding-top:10px;padding-bottom:10px;max-width:100%}
@media(min-width:1000px){.op-hero .op-hi{grid-template-columns:1fr 1fr;column-gap:22px}}
@media(min-width:760px){.op-main{padding-top:12px}.op .crumb{margin-bottom:8px}.op .crumb a{min-height:0}.op-hero{padding:24px 30px 26px}.op-hero .op-brand{margin-bottom:10px}
 .op-hero .lbl--kick{margin-bottom:8px}.op-hero h1{font-size:clamp(28px,2.9vw,38px);margin-bottom:10px}.op-hero .sub{font-size:17.5px;margin-bottom:12px}
 .op-hero .op-hi{margin-bottom:16px}.op-hero .op-hi li{font-size:16px;line-height:1.45}.op-state{margin-bottom:12px}}
@media(max-width:759px){.op .crumb{display:none}.op-hero{padding:20px 18px 22px}.op-hero .op-ctas{order:1;margin:0 0 18px}.op-hero .op-hi{order:2;margin:0}.op-hero .op-ctas .btn{width:100%}}
/* walls: slim band (greeting, hook, h1, one-line lede), then the cards; the category explainer moves below */
.v-hero--wall{padding:16px 0 0}
.wall-top{margin:0 0 22px;max-width:880px}
.wall-top .welcome{margin:0 0 4px}
.wall-hook{margin:0 0 10px;font-family:var(--disp);font-variation-settings:var(--flar);font-weight:640;font-size:17px;line-height:1.35;color:var(--ink)}
.wall-top h1{font-size:clamp(30px,3.6vw,46px);line-height:1.08}
.wall-top .lede{margin-top:10px}
.wall-fine{font-size:13.5px;line-height:1.62;color:var(--muted);margin:24px 0 0;max-width:120ch}
.bp-copy h2{font-size:clamp(28px,3.4vw,42px);line-height:1.1}
@media(min-width:760px){.v-hero--wall{padding-top:12px}.v-hero--wall .crumb{margin-bottom:10px}.v-hero--wall .crumb a{min-height:0}}
.offer-head{flex-wrap:wrap}
.offer-id{flex:1 1 160px;min-width:0}
.offer-ribbon-badge{white-space:nowrap}
.offer-logo--card{height:auto;max-height:96px;max-width:150px;border-radius:9px;box-shadow:0 10px 22px -14px rgba(31,42,18,.6)}
@media(max-width:759px){
 .v-hero--wall .crumb{display:none}
 .offer{display:flex;flex-direction:column;gap:12px;padding:18px 18px 20px}.offer>*{order:5}
 .offer-ribbon{order:0}.offer-head{order:1}.offer-best{order:2}.offer-act{order:3}.offer-feats,.offer-points{order:4}.offer-why{order:5}.offer-review{order:6}
 .offer-act .btn{width:100%}
 .offer-logo{height:44px}.offer-logo--card{height:auto;max-width:110px;max-height:70px}.offer-id h3{font-size:19px}
}
