/* MTWI theme. Colour chapters. Tokens first, everything else references them. */
@font-face{font-family:"Red Hat Display";font-weight:900;font-style:normal;font-display:swap;src:url(../fonts/red-hat-display-latin-900-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Red Hat Display";font-weight:900;font-style:normal;font-display:swap;src:url(../fonts/red-hat-display-latin-ext-900-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Red Hat Text";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/red-hat-text-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Red Hat Text";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/red-hat-text-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Red Hat Text";font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/red-hat-text-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Red Hat Text";font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/red-hat-text-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Red Hat Text";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/red-hat-text-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Red Hat Text";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/red-hat-text-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --paper:#FFFFFF; --surface:#F3F3F1; --ink:#0D0D0D; --ink-soft:#4A4A47;
  --gold:#F2B12C; --char:#1C1C1B;
  --mint:#F3F3F1; --mint-2:#FFFFFF; --sky:#FFFFFF; --sky-2:#F3F3F1;
  --green:#0D0D0D; --green-2:#1C1C1B; --on-dark:#FFFFFF; --on-dark-soft:#B9B9B4;
  --f-display:"Red Hat Display",ui-sans-serif,system-ui,sans-serif;
  --f-text:"Red Hat Text",ui-sans-serif,system-ui,sans-serif;
  --step-small:1rem;
  --step-body:clamp(1.0625rem,1rem + 0.25vw,1.1875rem);
  --step-lead:clamp(1.375rem,1.05rem + 1.4vw,2.25rem);
  --step-head:clamp(2.5rem,1.2rem + 5vw,5.5rem);
  --step-display:clamp(3.25rem,1rem + 8.6vw,8.75rem);
  --m:clamp(16px,2.2vw,32px);
  --gap:clamp(12px,1.6vw,24px);
  --sec:clamp(80px,9vw,160px);
  --bar-h:68px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

/* Reset, kept at zero specificity so component rules always win */
:where(*,*::before,*::after){box-sizing:border-box}
:where(html){-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--bar-h) + 12px)}
:where(body){margin:0}
:where(h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol){margin:0;padding:0}
:where(ul,ol){list-style:none}
:where(img,svg,video){display:block;max-width:100%;height:auto}
:where(button,input,select,textarea){font:inherit;color:inherit}
:where(a){color:inherit}

html,body.mtwi{overflow-x:clip}
body.mtwi{background:var(--paper);color:var(--ink);font:400 var(--step-body)/1.55 var(--f-text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.mtwi ::selection{background:var(--gold);color:var(--ink)}
.mtwi :focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.mtwi .f-gold :focus-visible,.mtwi .btn:focus-visible{outline-color:var(--ink)}
.skip{position:absolute;left:-9999px;top:8px;z-index:200;background:var(--gold);color:var(--ink);padding:12px 18px;font-weight:700}
.skip:focus{left:8px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Fields: white, light grey, black. Gold is only for actions and the closing band. */
.f-paper,.f-sky{--f:var(--paper);--fi:var(--ink);--fs:var(--ink-soft);--tone:var(--surface)}
.f-surface,.f-mint{--f:var(--surface);--fi:var(--ink);--fs:var(--ink-soft);--tone:var(--paper)}
.f-green,.f-ink{--f:var(--ink);--fi:var(--on-dark);--fs:var(--on-dark-soft);--tone:var(--char)}
.f-gold{--f:var(--gold);--fi:var(--ink);--fs:var(--ink);--tone:#E29F17}
[class*="f-"]{background:var(--f);color:var(--fi)}

/* Layout */
.wrap{padding-inline:var(--m)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.ch{position:relative;padding-block:var(--sec)}
.ch--tall{min-height:90svh}
.stack>*+*{margin-top:var(--s,24px)}

/* Type */
.d-xl,.d-l,.d-m{font-family:var(--f-display);font-weight:900;text-transform:uppercase;letter-spacing:-0.03em;line-height:.92;text-wrap:balance}
.d-xl{font-size:var(--step-display)}
.d-l{font-size:var(--step-head)}
.d-m{font-size:var(--step-lead);line-height:1;letter-spacing:-0.02em}
.lead{font-size:var(--step-lead);line-height:1.22;font-weight:500;letter-spacing:-0.01em;text-wrap:pretty}
.statement{font-size:var(--step-lead);line-height:1.2;font-weight:500;letter-spacing:-0.01em;max-width:52ch;text-wrap:pretty}
.body{font-size:var(--step-body);max-width:62ch;text-wrap:pretty}
.soft{color:var(--fs)}
.small{font-size:var(--step-small);line-height:1.5}
.num{font-variant-numeric:tabular-nums}
.t-title{font-family:var(--f-display);font-weight:900;font-size:var(--step-lead);line-height:1.05;letter-spacing:-0.01em}

/* Buttons and links */
.btn{display:inline-flex;align-items:center;gap:14px;min-height:56px;padding:16px 26px;background:var(--gold);color:var(--ink);font:700 var(--step-body)/1.1 var(--f-text);text-decoration:none;border:0;border-radius:0;cursor:pointer;transition:background-color .18s var(--ease),color .18s var(--ease),transform .18s var(--ease)}
.btn svg{width:18px;height:18px;flex:none;transition:transform .2s var(--ease)}
.btn:hover{background:var(--ink);color:var(--gold)}
.f-ink .btn:hover,.f-green .btn:hover{background:var(--on-dark);color:var(--ink)}
.btn:hover svg{transform:translate(3px,-3px)}
.btn:active{transform:scale(.97)}
.btn--plain{background:transparent;color:var(--fi);padding-inline:0;min-height:44px}
.btn--plain:hover{background:transparent;color:var(--fi)}
.btn--plain span{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.go{display:inline-flex;align-items:center;gap:10px;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;transition:gap .2s var(--ease)}
.go::after{content:"";width:14px;height:14px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 13 13 3M5 3h8v8' stroke='%23000' stroke-width='2.2' fill='none'/%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 16 16'%3E%3Cpath d='M3 13 13 3M5 3h8v8' stroke='%23000' stroke-width='2.2' fill='none'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .2s var(--ease)}
.go:hover::after{transform:translate(3px,-3px)}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}

/* Header bar: takes the colour of the chapter under it */
.bar{position:fixed;inset:0 0 auto 0;z-index:90;height:var(--bar-h);display:flex;align-items:center;gap:24px;padding-inline:var(--m);background:var(--bf,var(--paper));color:var(--bi,var(--ink));transition:background-color .3s var(--ease),color .3s var(--ease),transform .35s var(--ease)}
.bar.f-mint,.bar.f-paper,.bar.f-sky,.bar.f-surface,.bar.f-green,.bar.f-ink,.bar.f-gold{--bf:var(--f);--bi:var(--fi)}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font:900 var(--step-body)/1 var(--f-display);letter-spacing:-0.02em}
.brand img{width:34px;height:34px;object-fit:contain}
.bar nav{margin-left:auto}
.bar nav ul{display:flex;gap:clamp(14px,1.8vw,30px)}
.bar nav a{font-weight:500;font-size:var(--step-small);text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:7px;padding-block:8px;transition:text-decoration-color .2s var(--ease)}
.bar nav a:hover,.bar nav a[aria-current="page"]{text-decoration-color:currentColor}
.bar .btn{min-height:44px;padding:10px 18px;font-size:var(--step-small)}
.bar.f-gold .btn{background:var(--ink);color:var(--gold)}
.menu-btn{display:none;margin-left:auto;background:none;border:0;font:700 16px/1 var(--f-text);padding:12px 4px;cursor:pointer;color:inherit}
.panel{position:fixed;inset:0;z-index:120;overflow-y:auto;background:var(--ink);color:var(--on-dark);padding:20px var(--m) 32px;display:flex;flex-direction:column;transform:translateY(-100%);visibility:hidden;transition:transform .4s var(--ease),visibility 0s .4s;box-shadow:0 30px 60px rgba(21,20,15,.3)}
.panel.is-open{transform:none;visibility:visible;transition:transform .4s var(--ease)}
.panel__top{display:flex;justify-content:space-between;align-items:center;height:48px}
.panel nav{margin-top:auto}
.panel nav a{display:block;font:900 var(--step-head)/1.02 var(--f-display);text-transform:uppercase;letter-spacing:-0.03em;text-decoration:none;padding-block:4px}
.panel .sub{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:24px}
.panel nav .sub a{display:inline-flex;font:700 var(--step-body)/1.3 var(--f-text);text-transform:none;letter-spacing:0;padding:0}
.panel .btn{margin-top:28px;align-self:flex-start}
@media (max-width:1080px){.bar nav,.bar .bar__cta{display:none}.menu-btn{display:block}}

/* HOME HERO: photo panel and swatch column */
.hero{height:100svh;min-height:620px;max-height:1100px;padding:10px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;background:var(--paper)}
.hero__panel{grid-column:1/11;position:relative;overflow:hidden;color:var(--on-dark);background:var(--ink)}
.hero__panel img.hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;transform-origin:50% 60%}
.hero__panel::after{content:"";position:absolute;inset:0;background:rgba(14,13,10,.46)}
.hero__panel>*:not(img){position:relative;z-index:2}
.hero__brand{position:absolute!important;top:26px;left:28px;color:var(--on-dark)}
.hero h1{position:absolute!important;left:28px;right:28px;top:20%;text-align:center;font-size:clamp(3.25rem,1rem + 8.2vw,8.25rem)}
.hero__foot{position:absolute!important;left:28px;right:28px;bottom:32px;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:10px;align-items:end}
.hero__foot p{grid-column:1/5;font-size:var(--step-body);line-height:1.45;font-weight:500}
.hero__foot .btn{grid-column:5/7;justify-self:center;white-space:nowrap}
.hero__swatches{grid-column:11/13;display:grid;grid-template-rows:repeat(5,1fr)}
.hero__swatches a{display:flex;align-items:flex-start;justify-content:space-between;padding:20px;font:500 var(--step-body)/1.3 var(--f-text);text-decoration:none;background:var(--f);color:var(--fi);transition:padding .25s var(--ease)}
.hero__swatches a::after{content:"\2193";font-weight:700;transition:transform .25s var(--ease)}
.hero__swatches a[href^="/"]::after,.hero__swatches a[href^="http"]::after{content:"\2197"}
.hero__swatches a:hover{padding-left:28px}
.hero__swatches a:hover::after{transform:translateY(4px)}
@media (max-width:900px){
  .hero__brand{display:none!important}
  .hero{display:block;height:auto;max-height:none;min-height:0;padding:calc(var(--bar-h) + 0px) 8px 8px}
  .hero__panel{height:68svh;min-height:480px}
  .hero h1{top:18%;left:16px;right:16px;font-size:clamp(2.75rem,12vw,5rem)}
  .hero__brand{top:18px;left:18px}
  .hero__foot{display:block;left:16px;right:16px;bottom:22px;text-align:center}
  .hero__foot p{display:none}
  .hero__swatches{display:block;margin-top:8px}
  .hero__swatches a{min-height:52px;align-items:center;padding:0 18px;font-size:var(--step-small)}
}

/* Mobile-only supporting sentence */
.hero-mobile-lead{display:none}
@media (max-width:900px){.hero-mobile-lead{display:block;margin-bottom:40px}}

/* INTRO + PATHFINDER */
.intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:start}
.intro .statement{grid-column:1/10}
.intro__chip{grid-column:10/13;justify-self:end;width:min(15vw,220px);aspect-ratio:4/5;object-fit:cover;rotate:4deg;margin-top:8px}
.pf{margin-top:clamp(72px,9vw,140px)}
.pf__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:end}
.pf__head h2{grid-column:1/9}
.pf__head p{grid-column:9/13;max-width:34ch}
.pf__opts{margin-top:48px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pf__opt{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:96px;padding:22px 26px;background:var(--tone);color:var(--fi);text-align:left;border:0;cursor:pointer;text-decoration:none;font:500 var(--step-body)/1.3 var(--f-text);transition:background-color .2s var(--ease),color .2s var(--ease),transform .15s var(--ease)}
.pf__opt::after{content:"";width:22px;height:22px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 8h11M8 3l5 5-5 5' stroke='%23000' stroke-width='2' fill='none'/%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 16 16'%3E%3Cpath d='M2 8h11M8 3l5 5-5 5' stroke='%23000' stroke-width='2' fill='none'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .2s var(--ease)}
.pf__opt:hover{background:var(--ink);color:var(--on-dark)}
.pf__opt:hover::after{transform:translateX(5px)}
.pf__opt:active{transform:scale(.985)}
.pf__opt[aria-pressed="true"]{background:var(--ink);color:var(--gold)}
.pf__result{margin-top:10px;background:var(--ink);color:var(--on-dark);--fi:var(--on-dark);--fs:var(--on-dark-soft);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);padding:clamp(28px,4vw,64px)}
.pf__result[hidden]{display:none}
.pf__result.is-in{animation:pfIn .45s var(--ease) both}
@keyframes pfIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.pf__main{grid-column:1/8}
.pf__main .kicker{font-size:var(--step-body);color:var(--gold);font-weight:700}
.pf__main h3{margin-top:10px}
.pf__main .body{margin-top:20px}
.pf__main ul{margin-top:24px;display:grid;gap:10px}
.pf__main li{padding-left:30px;position:relative}
.pf__main li::before{content:"";position:absolute;left:0;top:.5em;width:14px;height:14px;border-radius:50%;background:var(--gold)}
.pf__main .actions{margin-top:36px}
.pf__side{grid-column:9/13;display:flex;flex-direction:column;gap:22px}
.pf__side img{width:100%;aspect-ratio:4/3;object-fit:cover}
.pf__free{background:var(--char);padding:22px}
.pf__free strong{display:block;font-size:var(--step-body);color:var(--gold)}
.pf__free a{display:block;margin-top:6px;font-weight:700;font-size:var(--step-body)}
.pf__free p{margin-top:6px;color:var(--on-dark-soft);font-size:var(--step-small)}
.pf__again{margin-top:28px;background:none;border:0;color:var(--on-dark);font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:5px;padding:8px 0}
@media (max-width:900px){
  .intro .statement{grid-column:1/-1}
  .intro__chip{grid-column:1/-1;justify-self:start;width:40vw;margin-top:28px}
  .pf__head h2,.pf__head p{grid-column:1/-1}.pf__head p{margin-top:16px}
  .pf__opts{grid-template-columns:1fr}
  .pf__opt{min-height:76px;padding:18px 20px}
  .pf__main,.pf__side{grid-column:1/-1}.pf__side{margin-top:32px}
}

/* SUMMIT */
.summit{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:start}
.summit__date{grid-column:1/7}
.summit__date .d-xl{font-size:clamp(4rem,1rem + 13vw,14rem);line-height:.84;color:var(--gold)}
.summit__date .lead{margin-top:28px;max-width:26ch}
.summit__img{grid-column:7/13;grid-row:1/3;width:100%;aspect-ratio:1;object-fit:cover;object-position:50% 80%}
.summit__meta{grid-column:1/7;margin-top:40px}
.summit__tracks{margin-top:40px;display:flex;flex-wrap:wrap;gap:8px}
.summit__tracks li{background:var(--tone);padding:14px 20px;font-weight:500}
@media (max-width:900px){.summit__date,.summit__img,.summit__meta{grid-column:1/-1;grid-row:auto}.summit__img{margin-top:32px;aspect-ratio:4/3}}

/* SERVICES: pinned heading, passing rows */
.pin{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:start}
.pin__head{grid-column:1/6;position:sticky;top:calc(var(--bar-h) + 32px)}
.pin__head p{margin-top:28px;max-width:34ch}
.pin__head .actions{margin-top:32px}
.pin__rows{grid-column:7/13;display:grid;gap:120px}
.svc h3{margin-bottom:24px}
.svc__row{display:grid;grid-template-columns:200px 1fr;gap:32px;align-items:start}
.svc__row img{width:200px;aspect-ratio:3/4;object-fit:cover}
.svc:nth-child(even) .svc__row{grid-template-columns:1fr 200px}
.svc:nth-child(even) .svc__row img{order:2}
.svc ul{display:grid;gap:14px;font-size:var(--step-body)}
.svc ul li{padding-left:22px;position:relative}
.svc ul li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;background:currentColor}
.svc .go{margin-top:22px}
@media (max-width:900px){
  .pin__head{grid-column:1/-1;position:sticky;top:var(--bar-h);z-index:3;background:var(--f);padding-block:12px;margin-inline:calc(var(--m)*-1);padding-inline:var(--m)}
  .pin__head h2{font-size:9vw}
  .pin__head p,.pin__head .actions{display:none}
  .pin__rows{grid-column:1/-1;gap:72px;margin-top:28px}
  .svc__row,.svc:nth-child(even) .svc__row{grid-template-columns:1fr}
  .svc__row img,.svc:nth-child(even) .svc__row img{order:0;width:100%;aspect-ratio:4/3}
}
.pin__mobile-intro{display:none}
@media (max-width:900px){.pin__mobile-intro{display:block;grid-column:1/-1;margin-top:20px}}

/* HOW IT WORKS: tiles that grow */
.grow__wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:10px;align-items:end}
.grow__head{grid-column:1/6;align-self:start}
.grow__head p{margin-top:20px;max-width:36ch}
.grow__tile{position:relative;background:var(--f);overflow:hidden}
.grow__tile img{position:absolute;inset:14px;width:calc(100% - 28px);height:calc(100% - 28px);object-fit:cover}
.grow__tile:nth-of-type(1){grid-column:1/3;height:30vh}
.grow__tile:nth-of-type(2){grid-column:3/6;height:40vh}
.grow__tile:nth-of-type(3){grid-column:6/9;height:50vh}
.grow__tile:nth-of-type(4){grid-column:9/13;height:62vh;grid-row:1/2}
.grow__tiles{display:contents}
.grow__names{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:10px;margin-top:22px}
.grow__names div:nth-child(1){grid-column:1/3}.grow__names div:nth-child(2){grid-column:3/6}.grow__names div:nth-child(3){grid-column:6/9}.grow__names div:nth-child(4){grid-column:9/13}
.grow__names h3{font:700 var(--step-body)/1.3 var(--f-text)}
.grow__names p{font-size:var(--step-small);margin-top:6px;color:var(--fs);max-width:32ch}
.grow__layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:10px;align-items:end}
.grow__layout .grow__head{grid-column:1/9;grid-row:1;padding-bottom:40px}
.grow__layout .grow__tile{grid-row:2}
.grow__layout .grow__tile:nth-of-type(4){grid-row:1/3;align-self:end}
@media (max-width:900px){
  .grow__layout{display:block}
  .grow__layout .grow__head{margin-bottom:36px}
  .grow__step{margin-top:28px}
  .grow__layout .grow__tile{width:100%}
  .grow__layout .grow__tile:nth-of-type(1){height:34vw}.grow__layout .grow__tile:nth-of-type(2){height:46vw}.grow__layout .grow__tile:nth-of-type(3){height:62vw}.grow__layout .grow__tile:nth-of-type(4){height:78vw}
  .grow__names{display:none}
}
.grow__mname{display:none}
@media (max-width:900px){.grow__mname{display:block;margin-top:14px}.grow__mname h3{font:700 var(--step-body)/1.25 var(--f-text)}.grow__mname p{font-size:var(--step-small);margin-top:4px;color:var(--fs)}}

/* STATS mosaic */
.stats__head{margin-bottom:40px;max-width:24ch}
.mosaic{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;height:min(62vw,860px)}
.mosaic img{grid-row:1/3;width:100%;height:100%;object-fit:cover}
.mosaic__tile{padding:28px;background:var(--f);color:var(--fi)}
.mosaic__tile b{display:block;font:900 var(--step-head)/.9 var(--f-display);letter-spacing:-0.03em}
.mosaic__tile span{display:block;margin-top:14px;font-size:var(--step-body);max-width:24ch}
.stats__foot{margin-top:40px;max-width:62ch}
@media (max-width:900px){
  .mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto;height:auto;margin-inline:calc(var(--m)*-1)}
  .mosaic img{grid-column:1/3;grid-row:auto;aspect-ratio:4/3;height:auto}
  .mosaic__tile{aspect-ratio:1;padding:18px}
  .mosaic__tile b{font-size:13vw}.mosaic__tile span{font-size:var(--step-small)}
}

/* TESTIMONIAL split */
.split{display:grid;grid-template-columns:5fr 7fr;min-height:58svh}
.split__who{background:var(--ink);color:var(--on-dark);padding:32px;display:flex;flex-direction:column;justify-content:flex-end}
.split__who b{font-weight:500;font-size:var(--step-body)}
.split__who span{color:var(--on-dark-soft);font-size:var(--step-small);margin-top:4px}
.split__who .go{margin-top:28px;color:var(--gold);font-size:var(--step-body)}
.split__quote{background:var(--f);color:var(--fi);padding:clamp(32px,4vw,64px) clamp(32px,4vw,64px) 120px}
.split__quote .go{margin-top:32px}
.split__quote blockquote p{font-size:var(--step-lead);line-height:1.18;font-weight:500;max-width:30ch;text-indent:-.42em;letter-spacing:-0.01em}
.split__cite{display:none}
@media (max-width:900px){.split__who{display:none!important}.split__cite{display:block;margin-top:20px;font-size:var(--step-body)}.split{grid-template-columns:1fr;min-height:0}.split__quote{padding:28px 24px 96px}.split__who{padding:24px;min-height:96px}}

/* PROOF band */
.band{overflow:hidden;height:34vh;min-height:220px;display:flex;align-items:center}
.band__track{display:flex;width:max-content;animation:run 40s linear infinite}
.band__track span{display:flex;align-items:center;white-space:nowrap;font:900 8vw/1 var(--f-display);text-transform:uppercase;letter-spacing:-0.03em;padding-right:.5em}
.band__track span::after{content:"";display:block;width:.24em;height:.24em;border-radius:50%;background:currentColor;margin-left:.5em}
@keyframes run{to{transform:translateX(-50%)}}
@media (max-width:900px){.band{height:22vh;min-height:150px}.band__track span{font-size:15vw}}

/* News list */
.news{display:grid;gap:6px;margin-top:48px}
.news a{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:var(--gap);align-items:baseline;background:var(--tone);padding:24px;text-decoration:none;transition:background-color .2s var(--ease),color .2s var(--ease),padding .25s var(--ease)}
.news a:hover{background:var(--ink);color:var(--on-dark);padding-left:34px}
.news small{font-size:var(--step-small);font-weight:700}
.news strong{display:block;font:900 var(--step-lead)/1.08 var(--f-display);letter-spacing:-0.01em}
.news span{display:block;margin-top:8px;font-size:var(--step-small)}
@media (max-width:900px){.news a{grid-template-columns:1fr;gap:8px}}

/* LIST menu with photo bullets */
.menu-cat{margin-top:96px}
.menu-cat:first-of-type{margin-top:64px}
.menu-cat__head{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:40px}
.menu-cat__head h3{font:900 var(--step-lead)/.95 var(--f-display);text-transform:uppercase;letter-spacing:-0.03em}
.menu-cat__head span{font-size:var(--step-small)}
.menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;row-gap:36px}
.menu li{display:grid;grid-template-columns:64px 1fr;gap:20px;align-items:start}
.menu img{width:64px;height:64px;object-fit:cover}
.menu__line{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.menu__line a{font-weight:700;font-size:var(--step-body);text-decoration:none}
.menu__line a:hover{text-decoration:underline;text-underline-offset:4px}
.menu__line span{font-weight:700;font-size:var(--step-small);white-space:nowrap}
.menu p{margin-top:4px;font-size:var(--step-small);color:var(--fs);max-width:44ch}
.menu .note{margin-top:6px;font-size:var(--step-small);font-weight:700;color:var(--ink)}
@media (max-width:900px){.menu{grid-template-columns:1fr}.menu li{grid-template-columns:52px 1fr}.menu img{width:52px;height:52px}.menu-cat__head h3{font-size:8.5vw}}

/* ABOUT inset panel */
.inset{margin:20px;background:var(--green);color:var(--on-dark);--fs:var(--on-dark-soft);position:relative;overflow:hidden;min-height:110svh;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.inset__left{grid-column:1/8;padding:56px}
.inset__left .d-l{max-width:none}
.inset__coin{position:absolute;left:56px;bottom:0;width:38vw;max-width:620px;aspect-ratio:1;border-radius:50%;object-fit:cover;object-position:50% 18%;transform:translateY(20%);background:var(--gold)}
.inset__right{grid-column:8/13;padding:56px 56px 56px 0;display:flex;flex-direction:column;gap:64px;padding-top:calc(56px + 2vw)}
.inset__right h3{font:700 var(--step-body)/1.3 var(--f-text);color:var(--gold)}
.inset__right p{margin-top:12px;font-size:var(--step-body);max-width:40ch}
@media (max-width:900px){
  .inset{margin:10px;display:block;min-height:0;padding-bottom:70vw}
  .inset__left{padding:28px 22px}
  .inset__left .d-l{font-size:8.5vw}
  .inset__right{padding:0 22px 40px;gap:36px}
  .inset__coin{left:7vw;width:86vw;transform:translateY(25%)}
}

/* CTA: one word is the button */
.cta{display:block;position:relative;min-height:60svh;text-decoration:none;background:var(--gold);color:var(--ink);overflow:hidden;transition:background-color .15s,color .15s}
.cta:hover,.cta:focus-visible{background:var(--ink);color:var(--gold)}
.cta__note{position:absolute;top:20px;left:var(--m);max-width:34ch;font-size:var(--step-body);font-weight:500;line-height:1.35}
.cta__arrow{position:absolute;top:20px;right:var(--m);width:48px;height:48px;transition:transform .3s var(--ease)}
.cta:hover .cta__arrow{transform:translate(6px,-6px)}
.cta__word{position:absolute;left:var(--m);right:var(--m);bottom:24px;font:900 clamp(6rem,27vw,26rem)/.78 var(--f-display);letter-spacing:-0.05em;text-transform:uppercase;white-space:nowrap}
@media (max-width:900px){.cta{min-height:46svh}.cta__note{font-size:var(--step-body);max-width:24ch}.cta__arrow{width:32px;height:32px}.cta__word{font-size:30vw}}

/* FOOTER */
.foot{padding-block:64px 28px}
.foot__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px var(--gap)}
.foot__brand p{margin-top:16px;color:var(--fs);max-width:34ch}
.foot__col{display:flex;flex-direction:column;gap:10px}
.foot a{text-decoration:none}
.foot__col a:hover,.foot__meta a:hover{color:var(--gold)}
.foot__meta{margin-top:56px;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;font-size:var(--step-small);color:var(--fs)}
.foot__social{display:flex;gap:20px}
@media (max-width:760px){.foot__grid{grid-template-columns:1fr}}

/* INNER PAGE HERO */
.phero{padding-top:calc(var(--bar-h) + clamp(48px,6vw,96px));padding-bottom:0;min-height:86svh;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);grid-template-rows:auto 1fr;overflow:hidden}
.phero__text{grid-column:1/8;padding-bottom:clamp(48px,6vw,96px);display:flex;flex-direction:column}
.phero__text .lead{margin-top:32px;max-width:34ch}
.phero__text .actions{margin-top:40px}
.phero__img{grid-column:8/13;grid-row:1/3;align-self:end;margin-right:calc(var(--m)*-1);width:calc(100% + var(--m));height:min(72svh,760px);object-fit:cover}
.phero--noimg .phero__text{grid-column:1/13}
@media (max-width:900px){.phero{display:block;min-height:0}.phero__text{padding-bottom:40px}.phero__img{width:calc(100% + var(--m)*2);margin-inline:calc(var(--m)*-1);height:56vw;min-height:260px}}

/* COMPARE table (services) */
.compare{width:100%;border-collapse:collapse;margin-top:48px;font-size:var(--step-body)}
.compare th,.compare td{text-align:left;vertical-align:top;padding:22px 20px 22px 0;border-top:2px solid rgba(21,20,15,.85)}
.compare thead th{border-top:0;font-size:var(--step-small);font-weight:700;padding-bottom:14px}
.compare tbody th{font:900 var(--step-body)/1.05 var(--f-display);letter-spacing:-0.01em;text-transform:uppercase;width:22%}
.compare td:last-child{white-space:nowrap}
@media (max-width:900px){
  .compare thead{display:none}
  .compare,.compare tbody,.compare tr,.compare th,.compare td{display:block;width:100%}
  .compare tr{border-top:2px solid var(--ink);padding:20px 0}
  .compare th,.compare td{border:0;padding:6px 0}
  .compare td::before{content:attr(data-l);display:block;font-weight:700;font-size:var(--step-small)}
}

/* SERVICE DETAIL chapter */
.sd{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:start}
.sd__text{grid-column:1/7}
.sd__text .lead{margin-top:28px;max-width:30ch}
.sd__facts{margin-top:44px;display:grid;grid-template-columns:1fr 1fr;gap:28px 36px}
.sd__facts h3{font-size:var(--step-body);font-weight:700}
.sd__facts p,.sd__facts li{font-size:var(--step-body);margin-top:6px}
.sd__facts ul{display:grid;gap:6px;margin-top:6px}
.sd__facts li{padding-left:20px;position:relative;margin:0}
.sd__facts li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;background:currentColor}
.sd__text .actions{margin-top:44px}
.sd__img{grid-column:8/13;width:100%;aspect-ratio:4/5;object-fit:cover}
.sd--flip .sd__text{grid-column:7/13;grid-row:1}.sd--flip .sd__img{grid-column:1/6;grid-row:1}
.sd--wide .sd__img{grid-column:7/13;margin-right:calc(var(--m)*-1);width:calc(100% + var(--m));aspect-ratio:auto;height:100%;min-height:560px}
@media (max-width:900px){.sd__text,.sd--flip .sd__text,.sd__img,.sd--flip .sd__img,.sd--wide .sd__img{grid-column:1/-1;grid-row:auto}.sd__img{margin-top:36px;aspect-ratio:4/3}.sd--wide .sd__img{min-height:0;height:auto;aspect-ratio:4/3}.sd__facts{grid-template-columns:1fr}}

/* FAQ */
.faq{max-width:900px;margin-top:40px}
.faq details{background:var(--tone);margin-top:10px}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:22px 24px;font:700 19px/1.3 var(--f-text)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:900 26px/1 var(--f-display);transition:transform .2s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details>div{padding:0 24px 24px;max-width:66ch}
.faq details>div p+p{margin-top:12px}

/* RESOURCES filter */
.filter{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}
.filter button{border:0;background:var(--tone);padding:14px 22px;font-weight:700;font-size:var(--step-body);cursor:pointer;transition:background-color .2s var(--ease),color .2s var(--ease),transform .15s}
.filter button:hover{background:var(--ink);color:var(--on-dark)}
.filter button:active{transform:scale(.97)}
.filter button[aria-pressed="true"]{background:var(--ink);color:var(--gold)}
.rlist{margin-top:40px;display:grid;gap:10px}
.ritem{display:grid;grid-template-columns:200px minmax(0,1fr) minmax(0,.8fr);gap:var(--gap);align-items:start;background:var(--tone);padding:20px}
.ritem[hidden]{display:none}
.ritem img{width:200px;aspect-ratio:4/3;object-fit:cover}
.ritem h3{font:900 var(--step-lead)/1.02 var(--f-display);text-transform:uppercase;letter-spacing:-0.02em}
.ritem .meta{margin-top:8px;font-size:var(--step-small);font-weight:700}
.ritem p{margin-top:10px;font-size:var(--step-body);max-width:52ch}
.ritem__next{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.ritem__next .small{color:var(--fs)}
.ritem__next .small a{font-weight:700;color:var(--fi)}
.ritem .btn{min-height:48px;padding:12px 20px}
@media (max-width:900px){.ritem{grid-template-columns:1fr}.ritem img{width:100%}}
.rcount{margin-top:18px;font-size:var(--step-small)}

/* POSTS */
.posts{display:grid;gap:10px;margin-top:56px}
.post{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:center;text-decoration:none;background:var(--tone);transition:background-color .25s var(--ease)}
.post:hover{background:var(--ink);color:var(--on-dark);--fs:var(--on-dark-soft)}
.post__img{grid-column:1/6;overflow:hidden;align-self:stretch}
.post img{width:100%;height:100%;min-height:260px;aspect-ratio:16/10;object-fit:cover;transition:transform .5s var(--ease)}
.post:hover img{transform:scale(1.03)}
.post__text{grid-column:6/13;padding:28px 32px 28px 0}
.post h3{font:900 var(--step-lead)/1.05 var(--f-display);letter-spacing:-0.02em;max-width:26ch;text-wrap:balance}
.post .sub{margin-top:10px;font-weight:700;font-size:var(--step-body)}
.post p{margin-top:10px;color:var(--fs);max-width:60ch;font-size:var(--step-small)}
.post time{display:block;margin-top:14px;font-size:var(--step-small);font-weight:700}
@media (max-width:900px){.post__img,.post__text{grid-column:1/-1}.post img{min-height:0}.post__text{padding:20px}}

/* ARTICLE */
.article{max-width:760px;margin-inline:auto}
.article{max-width:1100px;margin-top:56px}
.article__banner{width:100%;height:56vh;min-height:280px;object-fit:cover;display:block}
.article h1{font:900 clamp(1.5rem,0.6rem + 3.6vw,3.5rem)/1.02 var(--f-display);letter-spacing:-0.025em;max-width:24ch;text-wrap:balance}
.article .prose,.article__img{max-width:760px}
.article__meta a{font-weight:700;text-decoration:underline;text-underline-offset:4px}
.article__meta{margin-top:20px;font-size:var(--step-small);font-weight:500}
.article__img{margin-top:40px;width:100%;aspect-ratio:16/9;object-fit:cover}
.prose{font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);line-height:1.65}
.prose>*+*{margin-top:1.1em}
.prose h2,.prose h3,.prose h4{font-family:var(--f-display);font-weight:900;line-height:1.05;letter-spacing:-0.02em;margin-top:1.8em;text-transform:none}
.prose h2{font-size:1.75em}.prose h3{font-size:1.35em}.prose h4{font-size:1.1em}
.prose ul,.prose ol{padding-left:1.3em}
.prose ul{list-style:disc}.prose ol{list-style:decimal}
.prose li+li{margin-top:.4em}
.prose a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.prose blockquote{padding:20px 24px;background:var(--surface);font-weight:500}
.prose img{height:auto}
.prose table{border-collapse:collapse;width:100%;font-size:.92em}
.prose td,.prose th{border:1px solid rgba(13,13,13,.15);padding:10px}

/* TEAM */
.team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px var(--gap);margin-top:56px}
.team li:nth-child(4n+2),.team li:nth-child(4n+4){margin-top:64px}
.team img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;filter:grayscale(1);transition:filter .4s var(--ease)}
.team li:hover img{filter:none}
.team b{display:block;margin-top:14px;font-size:var(--step-body)}
.team span{display:block;font-size:var(--step-small);color:var(--fs)}
@media (max-width:900px){.team{grid-template-columns:1fr 1fr}.team li:nth-child(n){margin-top:0}}

/* PRINCIPLES (about) */
.princ{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:64px;margin-top:64px}
.princ div{grid-column:span 4}
.princ div:nth-child(2){margin-top:80px}.princ div:nth-child(3){margin-top:160px}
.princ h3{font:900 var(--step-lead)/1 var(--f-display);text-transform:uppercase;letter-spacing:-0.02em}
.princ p{margin-top:16px;font-size:var(--step-body);max-width:38ch}
@media (max-width:900px){.princ div{grid-column:1/-1}.princ div:nth-child(n){margin-top:0}}

/* QUOTES (testimonials) */
.quotes{columns:2 360px;column-gap:clamp(32px,6vw,120px);margin-top:56px}
.quotes figure{break-inside:avoid;margin-bottom:64px}
.quotes blockquote p{font-size:var(--step-body);line-height:1.55}

.quotes figcaption{display:flex;align-items:center;gap:14px;margin-top:22px}
.quotes figcaption img{width:52px;height:52px;border-radius:50%;object-fit:cover}
.quotes figcaption b{display:block;font-size:var(--step-body)}
.quotes figcaption span{display:block;font-size:var(--step-small);color:var(--fs)}

/* CONTACT rows */
.rows{margin-top:56px}
.rows{display:grid;gap:6px}
.rows a,.rows div{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:var(--gap);align-items:baseline;padding:26px 24px;text-decoration:none;background:var(--tone);transition:background-color .2s var(--ease),color .2s var(--ease)}
.rows a:hover{background:var(--ink);color:var(--on-dark)}
.rows span{font:900 var(--step-body)/1.2 var(--f-display);text-transform:uppercase;letter-spacing:-0.01em}
.rows strong{font:900 var(--step-lead)/1 var(--f-display);letter-spacing:-0.02em;overflow-wrap:anywhere}
.rows a:hover strong{color:var(--gold)}
@media (max-width:900px){.rows a,.rows div{grid-template-columns:1fr;gap:6px}}
.formbox{background:var(--tone);padding:clamp(24px,3vw,48px)}
.formbox .forminator-ui.forminator-custom-form[data-design]{font-family:var(--f-text)!important}

/* CALCULATOR */
.calc{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:start}
.calc__in{grid-column:1/6;background:var(--ink);color:var(--on-dark);padding:clamp(22px,2.6vw,40px);position:sticky;top:calc(var(--bar-h) + 20px)}
.calc__out{grid-column:6/13}
.calc__modes{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:28px}
.calc__modes button{border:0;background:var(--char);color:var(--on-dark);padding:14px;font-weight:700;font-size:var(--step-small);cursor:pointer;transition:background-color .2s,color .2s}
.calc__modes button[aria-pressed="true"]{background:var(--gold);color:var(--ink)}
.fld{display:block;margin-top:22px}
.fld[hidden]{display:none}
.fld:first-of-type{margin-top:0}
.fld>span{display:flex;justify-content:space-between;gap:12px;font-size:var(--step-small);font-weight:500}
.fld>span output{font-weight:700;color:var(--gold)}
.fld input[type="text"],.fld input[type="number"],.fld select{margin-top:8px;width:100%;height:54px;background:var(--char);color:var(--on-dark);border:2px solid var(--char);padding:0 16px;font-size:var(--step-body);font-weight:700;border-radius:0;appearance:none;-webkit-appearance:none}
.fld select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 6l5 5 5-5' stroke='%23FFFFFF' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px}
.fld input:focus,.fld select:focus{border-color:var(--gold);outline:0}
.fld__money{position:relative}
.fld__money b{position:absolute;left:16px;bottom:15px;font-size:var(--step-body);color:var(--on-dark-soft)}
.fld__money input{padding-left:40px!important}
.fld input[type="range"]{margin-top:12px;width:100%;accent-color:var(--gold);height:28px}
.fld small{display:block;margin-top:6px;font-size:var(--step-small);color:var(--on-dark-soft)}
.calc__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calc__more{margin-top:26px}
.calc__more summary{cursor:pointer;font-weight:700;font-size:var(--step-small);list-style:none;display:flex;justify-content:space-between}
.calc__more summary::-webkit-details-marker{display:none}
.calc__more summary::after{content:"+";font-weight:900}
.calc__more[open] summary::after{content:"\2212"}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chips button{border:0;background:var(--char);color:var(--on-dark);padding:9px 12px;font-size:var(--step-small);font-weight:700;cursor:pointer}
.chips button:hover{background:var(--gold);color:var(--ink)}
details:not([open])>:not(summary){display:none}
.big{margin-top:10px;font:900 var(--step-head)/.9 var(--f-display);letter-spacing:-0.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.calc__label{font-size:var(--step-lead);line-height:1.15;font-weight:500;max-width:28ch}
.calc__figs{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.calc__figs div{background:var(--tone);padding:18px}
.calc__figs b{display:block;font:900 var(--step-lead)/1 var(--f-display);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.calc__figs span{display:block;margin-top:8px;font-size:var(--step-small)}
.chart{margin-top:28px;background:var(--tone);padding:20px 16px 12px}
.chart svg{width:100%;height:auto;overflow:visible}
.chart__key{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:var(--step-small);margin-top:10px}
.chart__key i{display:inline-block;width:14px;height:14px;vertical-align:-2px;margin-right:8px}
.calc__insight{margin-top:28px;font-size:var(--step-body);line-height:1.45;font-weight:700;max-width:52ch}
.calc__share{margin-top:20px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
.calc__share button{background:none;border:0;padding:8px 0;cursor:pointer;font-weight:700;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
.yt{margin-top:28px}
.yt summary{cursor:pointer;font-weight:700;list-style:none}
.yt summary::-webkit-details-marker{display:none}
.yt table{width:100%;border-collapse:collapse;margin-top:16px;font-size:var(--step-small);font-variant-numeric:tabular-nums}
.yt th,.yt td{text-align:right;padding:10px 8px;border-bottom:1px solid rgba(21,20,15,.18)}
.yt th:first-child,.yt td:first-child{text-align:left}
.calc__next{margin-top:10px;background:var(--green);color:var(--on-dark);--fi:var(--on-dark);padding:clamp(24px,3vw,44px)}
.calc__next h3{color:var(--gold)}
.calc__next p{margin-top:14px;max-width:52ch}
.calc__next .actions{margin-top:24px}
.calc__next .go{color:var(--on-dark)}
.disclaim{margin-top:20px;font-size:var(--step-small);color:var(--fs);max-width:62ch}
@media (max-width:1000px){.calc__in,.calc__out{grid-column:1/-1}.calc__in{position:static}.calc__out{margin-top:40px}.calc__figs{grid-template-columns:1fr}}

/* Helpers for sections */
.cols-2{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:32px}
.cols-2>:first-child{grid-column:1/7}.cols-2>:last-child{grid-column:8/13}
@media (max-width:900px){.cols-2>:first-child,.cols-2>:last-child{grid-column:1/-1}}
.mt-s{margin-top:16px}.mt-m{margin-top:32px}.mt-l{margin-top:64px}
.page-default{padding-top:var(--bar-h)}
.elementor-host{min-height:40vh}

/* Entrances: hidden only once JS is confirmed, visible otherwise */
.js [data-rv]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:var(--d,0ms)}
.js [data-rv].is-in{opacity:1;transform:none}
.js .hero__img{animation:heroZoom 14s var(--ease) both}
@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){
  .js [data-rv]{opacity:1;transform:none;transition:none}
  .js .hero__img{animation:none}
  .band__track{animation:none}
  .bar,.panel{transition:none}
  :where(html){scroll-behavior:auto}
  .pf__result.is-in{animation:none}
}
@media print{.bar,.panel,.cta,.hero__swatches{display:none}.js [data-rv]{opacity:1;transform:none}}

/* Forminator inside our pages: match the system */
.formbox .forminator-ui *{text-shadow:none!important;box-shadow:none!important}
.formbox .forminator-ui.forminator-custom-form .forminator-label{font:700 var(--step-small)/1.3 var(--f-text)!important;color:var(--ink)!important}
.formbox .forminator-ui.forminator-custom-form .forminator-input,.formbox .forminator-ui.forminator-custom-form .forminator-textarea{font:500 var(--step-body)/1.4 var(--f-text)!important;background:var(--paper)!important;border:2px solid var(--paper)!important;border-radius:0!important;color:var(--ink)!important;padding:14px 16px!important}
.formbox .forminator-ui.forminator-custom-form .forminator-input:focus,.formbox .forminator-ui.forminator-custom-form .forminator-textarea:focus{border-color:var(--ink)!important}
.formbox .forminator-ui.forminator-custom-form .forminator-button-submit{background:var(--ink)!important;color:var(--gold)!important;border-radius:0!important;font:700 var(--step-body)/1 var(--f-text)!important;padding:18px 28px!important;min-height:56px}
.formbox .forminator-ui.forminator-custom-form .forminator-button-submit:hover{background:var(--green)!important;color:var(--on-dark)!important}
.advisers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin-top:48px}
.advisers img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
.advisers b{display:block;margin-top:14px;font-size:var(--step-body)}
.advisers span{display:block;color:var(--fs);font-size:var(--step-small)}
@media (max-width:700px){.advisers{grid-template-columns:1fr 1fr}}
.formbox .forminator-ui .forminator-description,.formbox .forminator-ui .forminator-error-message,.formbox .forminator-ui .forminator-checkbox__label,.formbox .forminator-ui .forminator-checkbox-label,.formbox .forminator-ui span,.formbox .forminator-ui small,.formbox .forminator-ui .select2-selection__rendered{font-size:max(14px,1em)!important;font-family:var(--f-text)!important}
.formbox .forminator-ui .select2-selection{border-radius:0!important;border:2px solid var(--paper)!important;background:var(--paper)!important;min-height:52px}
.pics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:48px}
.pics img{width:100%;aspect-ratio:4/5;object-fit:cover}
.pics img:first-child{aspect-ratio:auto;height:100%}

/* HOME HERO */
.hero2{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--ink);color:var(--on-dark)}
.hero2__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero2::after{content:"";position:absolute;inset:0;background:rgba(10,10,10,.55)}
.hero2__in{position:relative;z-index:2;width:100%;padding-top:calc(var(--bar-h) + 48px);padding-bottom:clamp(32px,5vw,72px)}
.hero2__title{font:900 clamp(2rem,0.4rem + 5.6vw,6rem)/.94 var(--f-display);text-transform:uppercase;letter-spacing:-0.03em;text-wrap:balance}
.hero2__foot{margin-top:clamp(28px,4vw,56px);display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 48px}
.hero2__foot .lead{max-width:34ch}
.hero2 .go{color:var(--on-dark)}
@media (max-width:700px){.hero2__title{text-transform:none;letter-spacing:-0.02em;font-size:clamp(2rem,8.6vw,2.6rem);line-height:1.02}.hero2{min-height:88svh}}

/* HOME services list */
.svclist{display:grid;gap:6px}
.svclist a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 24px;align-items:center;padding:22px 24px;background:var(--tone);text-decoration:none;transition:background-color .2s var(--ease),color .2s var(--ease),padding .25s var(--ease)}
.svclist a::after{content:"\2197";grid-row:1/3;grid-column:2;font-weight:700;font-size:20px}
.svclist b{font:900 var(--step-lead)/1.05 var(--f-display);letter-spacing:-0.02em}
.svclist span{color:var(--fs);font-size:var(--step-small)}
.svclist a:hover{background:var(--ink);color:var(--on-dark);--fs:var(--on-dark-soft);padding-left:32px}
.menu--one{grid-template-columns:1fr;row-gap:28px}

/* Points list (landing pages) */
.points{display:grid;gap:28px}
.points li{padding-left:32px;position:relative}
.points li::before{content:"";position:absolute;left:0;top:.5em;width:12px;height:12px;background:var(--gold)}
.points b{display:block;font:900 var(--step-lead)/1.1 var(--f-display);letter-spacing:-0.02em}
.points li::before{top:.7em}
.points span{display:block;margin-top:4px;color:var(--fs);font-size:var(--step-small)}
.points__img{margin-top:40px;width:100%;aspect-ratio:4/3;object-fit:cover}
.formbox{background:var(--tone);padding:clamp(20px,3vw,44px);min-height:200px}
.speakers{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:40px var(--gap);margin-top:48px}
.speakers img{width:100%;aspect-ratio:1;object-fit:cover;object-position:50% 25%;filter:grayscale(1)}
.speakers b{display:block;margin-top:14px;font-size:var(--step-body)}
.speakers span{display:block;color:var(--fs);font-size:var(--step-small)}
.logos{display:flex;flex-wrap:wrap;gap:24px 48px;align-items:center;margin-top:40px}
.logos img{height:72px;width:auto;filter:grayscale(1);opacity:.85}

.phero:not(.phero--noimg) .d-xl{font-size:clamp(3rem,0.6rem + 7.2vw,7.25rem)}
.formbox .forminator-ui,.formbox .forminator-ui .forminator-row,.formbox .forminator-ui .forminator-col,.formbox .forminator-ui .forminator-field{background:transparent!important}
.formbox .forminator-ui .forminator-label,.formbox .forminator-ui .forminator-description{color:var(--fi)!important}
.prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:40px}
.price{display:block;background:var(--tone);padding:28px;text-decoration:none;transition:background-color .2s var(--ease),color .2s var(--ease)}
.price span{display:block;font-weight:700;font-size:var(--step-small)}
.price b{display:block;margin-top:14px;font:900 var(--step-head)/1 var(--f-display);letter-spacing:-0.03em;color:var(--gold)}
.price p{margin-top:12px;color:var(--fs);font-size:var(--step-small)}
a.price:hover{background:var(--gold);color:var(--ink);--fs:var(--ink)}
a.price:hover b{color:var(--ink)}
.mosaic--short{height:min(44vw,600px)}
.mosaic__tile--dark{background:var(--char);color:var(--on-dark)}
.mosaic__tile--dark b{color:var(--gold)}
.pull{margin-top:clamp(40px,5vw,72px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.pull blockquote{grid-column:1/9}
.pull blockquote p{font-size:var(--step-lead);line-height:1.2;font-weight:500;max-width:36ch}
.pull figcaption{grid-column:9/13;align-self:end;color:var(--fs);font-size:var(--step-small)}
.pull .go{display:inline-flex;margin-top:10px;color:var(--fi)}
@media (max-width:900px){.pull blockquote,.pull figcaption{grid-column:1/-1}.pull figcaption{margin-top:16px}.mosaic--short{height:auto}}
.cta{min-height:44svh}
.price span{margin-top:10px}
.formbox .forminator-ui .forminator-checkbox__label,.formbox .forminator-ui .forminator-checkbox-label,.formbox .forminator-ui .forminator-radio-label,.formbox .forminator-ui .forminator-checkbox span,.formbox .forminator-ui .forminator-radio span,.formbox .forminator-ui .forminator-description,.formbox .forminator-ui .select2-selection__placeholder,.formbox .forminator-ui .select2-selection__rendered,.formbox .forminator-ui .forminator-pagination-steps *,.formbox .forminator-ui .forminator-break,.formbox .forminator-ui label{color:var(--ink)!important;font-size:max(16px,1em)!important;opacity:1!important}
.formbox .forminator-ui .forminator-checkbox .forminator-checkbox-box,.formbox .forminator-ui .forminator-checkbox__box{border:2px solid var(--ink)!important;background:var(--paper)!important}
.formbox .forminator-ui .forminator-input::placeholder,.formbox .forminator-ui .forminator-textarea::placeholder{color:var(--ink-soft)!important}
.formbox .forminator-ui .forminator-pagination-steps .forminator-current *,.formbox .forminator-ui .forminator-pagination-progress{color:var(--ink)!important}
.formbox .forminator-ui .forminator-button-next,.formbox .forminator-ui .forminator-button-back{background:var(--ink)!important;color:var(--gold)!important;border-radius:0!important}
.formbox .forminator-ui .forminator-consent__label,.formbox .forminator-ui .forminator-consent__label p,.formbox .forminator-ui .forminator-checkbox__label p,.formbox .forminator-ui p{color:var(--ink)!important;font-size:max(16px,1em)!important}
.formbox .forminator-ui .forminator-consent__label a{color:var(--ink)!important;text-decoration:underline}
html body #main .formbox .forminator-ui.forminator-custom-form .forminator-consent__label,html body #main .formbox .forminator-ui.forminator-custom-form .forminator-consent__label p,html body #main .formbox .forminator-ui.forminator-custom-form .forminator-checkbox__label,html body #main .formbox .forminator-ui.forminator-custom-form .forminator-checkbox__label p,html body #main .formbox .forminator-ui.forminator-custom-form .forminator-label,html body #main .formbox .forminator-ui.forminator-custom-form .forminator-description,html body #main .formbox .forminator-ui.forminator-custom-form p{color:#0D0D0D!important;font-size:16px!important}
