@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url("fonts/inter-latin.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}
/* ===== Redrand — FPC home, XM-style layout, v10 sage-black palette ===== */
:root{
  --black:#0B0D10; --ink:#0E141F; --ink-2:#161E2C; --card-a:#15181F; --card-b:#1B1F27;
  --green:#17B26B; --green-b:#3FC97A; --sage:#00A94F; --sage-deep:#00863E; --green-soft:#E4F6EC;
  --paper:#EEF0F3; --paper-2:#F6F7F9; --line-l:#E4E7EC; --line-l2:#D5D9E0; --muted:#7C8593; --graphite:#525C6B;
  --t-dark:#AEB8C4; --t-dark-2:#93A0B2; --line-d:rgba(255,255,255,.1); --line-d2:rgba(255,255,255,.14);
  --r-xl:40px; --r-lg:24px; --r-md:16px; --r-sm:10px; --header-h:80px;
  --ease:cubic-bezier(.2,.6,.28,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px);-webkit-text-size-adjust:100%}
html,body{overflow-x:clip;max-width:100%}
body{font-family:'Inter',system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-weight:400;font-size:16px;line-height:1.6;color:var(--t-dark);background:#0B0D10;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:normal}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
p{margin-bottom:1rem}
h1,h2,h3,h4{font-family:'Inter',sans-serif;font-weight:700;letter-spacing:normal;line-height:1.15;color:#fff}
strong{color:#fff;font-weight:600}
.container{max-width:1240px;margin:0 auto;padding:0 clamp(18px,4vw,32px)}
main{display:block}
.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--sage);color:#fff;padding:12px 18px;font-weight:600;font-size:14px}
.skip-link:focus{left:0}
a:focus-visible,button:focus-visible{outline:3px solid var(--green-b);outline-offset:3px;border-radius:6px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* ---- Buttons (premium: layered fill, inner highlight, hairline, soft glow) ---- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:'Inter',sans-serif;font-weight:600;font-size:15px;line-height:1;min-height:46px;padding:0 24px;border-radius:12px;border:1px solid transparent;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,border-color .25s,color .25s}
.btn:active{transform:translateY(1px) scale(.99)!important}
.btn-lg{min-height:52px;padding:0 30px;font-size:15.5px;border-radius:13px}
.btn-primary,.btn-light{color:#fff;background:linear-gradient(180deg,#1CBB66 0%,#00A94F 55%,#009646 100%);border-color:rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(0,0,0,.18),0 1px 2px rgba(0,0,0,.4),0 12px 30px -10px rgba(0,169,79,.65)}
.btn-primary:hover,.btn-light:hover{background:linear-gradient(180deg,#27C971 0%,#0AB558 55%,#00A04B 100%);transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.32),inset 0 -1px 0 rgba(0,0,0,.18),0 2px 4px rgba(0,0,0,.4),0 18px 36px -10px rgba(0,169,79,.75)}
.btn-ghost,.btn-outline-light,.btn-secondary{color:#fff;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.04));border-color:rgba(255,255,255,.16);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 1px 2px rgba(0,0,0,.35)}
.btn-ghost:hover,.btn-outline-light:hover,.btn-secondary:hover{background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.07));border-color:rgba(255,255,255,.28);transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 10px 24px -12px rgba(0,0,0,.6)}
.btn-ink{color:#fff;background:linear-gradient(180deg,#1A2230,#0E141F);border-color:rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 10px 24px -12px rgba(0,0,0,.7)}
.btn-ink:hover{background:linear-gradient(180deg,#22304A,#0E141F);transform:translateY(-1px)}
.btn-white{color:var(--ink);background:linear-gradient(180deg,#FFFFFF 0%,#EEF0F3 100%);border-color:rgba(255,255,255,.9);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,.35),0 12px 30px -12px rgba(0,0,0,.6)}
.btn-white:hover{background:linear-gradient(180deg,#FFFFFF 0%,#E4E7EC 100%);transform:translateY(-1px);box-shadow:inset 0 1px 0 #fff,0 2px 4px rgba(0,0,0,.35),0 18px 36px -12px rgba(0,0,0,.7)}
.btn-outline-ink{color:var(--ink);background:transparent;border-color:var(--line-l2)}
.btn-outline-ink:hover{border-color:var(--ink)}
.link{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:var(--green-b)}
.link svg{width:14px;height:14px;transition:transform .2s var(--ease)}
.link:hover svg{transform:translate(2px,-2px)}

/* ---- Header ---- */
.hdr{position:fixed;top:0;left:0;right:0;z-index:50;background:transparent;border-bottom:1px solid transparent;transition:background .3s ease,border-color .3s ease}
.hdr.is-scrolled,.hdr.menu-open{background:rgba(11,13,16,.82);backdrop-filter:saturate(160%) blur(12px);-webkit-backdrop-filter:saturate(160%) blur(12px);border-bottom-color:var(--line-d)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--header-h);max-width:1320px;margin:0 auto;padding:0 max(24px,env(safe-area-inset-left)) 0 max(24px,env(safe-area-inset-right))}
.logo img{height:46px;width:auto}
.hdr-brand{display:flex;align-items:center;gap:18px;flex-shrink:0}
.hdr-badge{display:block;height:36px;width:auto;padding-left:18px;border-left:1px solid var(--line-d2);box-sizing:content-box}
.nav{display:flex;align-items:center;gap:30px}
.nav>a,.nav .dd-toggle{font-weight:500;font-size:15px;color:#D5DBE3;transition:color .2s;display:inline-flex;align-items:center;gap:6px}
.nav>a:hover,.nav>a.active,.nav .dd-toggle:hover{color:#fff}
.nav .dd-toggle.active{color:#fff}
.nav>a.active{position:relative}
.nav>a.active::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:2px;background:var(--green-b)}
.has-dropdown{position:relative;display:flex;align-items:center}
.has-dropdown .caret{font-size:10px;display:inline-block;transition:transform .2s;color:var(--muted)}
.dropdown-menu{position:absolute;top:calc(100% + 16px);left:-12px;min-width:256px;background:var(--ink);border:1px solid var(--line-d2);border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.5);padding:8px;display:none;flex-direction:column;z-index:60}
.has-dropdown::after{content:"";position:absolute;top:100%;left:0;right:0;height:18px}
.has-dropdown:hover .dropdown-menu{display:flex}
.has-dropdown:hover .caret{transform:rotate(180deg)}
.dropdown-menu a{padding:10px 14px;border-radius:8px;font-weight:500;font-size:14.5px;color:#D5DBE3;white-space:nowrap}
.dropdown-menu a:hover{background:rgba(255,255,255,.06);color:#fff}
.hdr-cta{display:flex;align-items:center;gap:14px}
.hdr-cta .btn{min-height:44px;padding:0 22px;font-size:14.5px}
.menu-toggle{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px;padding:8px}
.menu-toggle span{width:24px;height:2px;background:#fff;border-radius:2px;transition:transform .25s ease,opacity .2s ease}
.menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.is-open span:nth-child(2){opacity:0}
.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav>a.nav-cta-mobile{display:none}
@media(max-width:1080px) and (min-width:761px){.hdr-in{gap:16px}.hdr-brand{gap:12px}.hdr-badge{height:26px;padding-left:12px}.logo img{height:40px}.nav{gap:18px}.nav>a,.nav .dd-toggle{font-size:14px}.hdr-cta .btn{padding:0 16px;font-size:13.5px}}
@media(max-width:880px) and (min-width:761px){.hdr-in{gap:12px;padding-left:20px;padding-right:20px}.hdr-badge{height:24px;padding-left:10px}.hdr-brand{gap:10px}.logo img{height:36px}.nav{gap:14px}.nav>a,.nav .dd-toggle{font-size:13.5px}.hdr-cta .btn{padding:0 14px;font-size:13px}}

/* ---- Slabs (XM: sections stack as big rounded trays) ---- */
main>section,.slab{position:relative}
.slab{padding:clamp(52px,6vw,80px) 0 clamp(48px,5.5vw,72px)}
.slab.dark{border-radius:var(--r-xl)}
.slab.light{border-radius:0}
#start.slab{padding-top:clamp(64px,7vw,96px)}
main>section:nth-of-type(2){z-index:2}main>section:nth-of-type(3){z-index:3}main>section:nth-of-type(4){z-index:4}
main>section:nth-of-type(5){z-index:5}main>section:nth-of-type(6){z-index:6}main>section:nth-of-type(7){z-index:7}
.light{background:#12151C;color:var(--t-dark)}
.light h2,.light h3,.light h4{color:#fff}
.light strong{color:#fff}
.dark{background:var(--black);color:var(--t-dark)}

/* ---- Section heads ---- */
.sec-head{max-width:820px;margin:0 auto clamp(26px,3.5vw,44px);text-align:center}
.sec-head.left{margin-left:0;text-align:left}
.eyebrow{display:inline-block;font-weight:600;font-size:14px;color:var(--green-b);margin-bottom:16px}
.light .eyebrow{color:var(--green-b)}
h2.title{font-size:clamp(27px,3vw,40px);line-height:1.15;margin-bottom:14px}
.lead{font-size:clamp(15.5px,1.2vw,17px);line-height:1.55;color:var(--t-dark-2)}
.light .lead{color:var(--t-dark-2)}

/* ---- Hero ---- */
.hero{background:radial-gradient(115% 125% at 82% -4%,rgba(0,169,79,.24),transparent 56%),linear-gradient(122deg,#101216 0%,#16191F 44%,#0B0D10 82%,#050607 100%);color:#fff;text-align:center;padding:calc(var(--header-h) + 40px) 0 56px;overflow:hidden;display:flex;align-items:center;min-height:min(calc(100vh - 64px),1000px);min-height:min(calc(100dvh - 64px),1000px);border-radius:0 0 56px 56px}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:82% 30%;opacity:1;mix-blend-mode:screen;pointer-events:none;-webkit-mask-image:radial-gradient(75% 95% at 80% 45%,#000 35%,transparent 100%);mask-image:radial-gradient(75% 95% at 80% 45%,#000 35%,transparent 100%)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(to bottom,rgba(11,13,16,0) 0%,rgba(11,13,16,.85) 55%,#0B0D10 100%);z-index:1;pointer-events:none}
.hero-dots{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.55) 1px,transparent 1.2px);background-size:26px 26px;opacity:.045}
.hero-in{position:relative;z-index:2;width:100%}
.hero-in::before{content:"";position:absolute;left:50%;top:50%;width:min(1100px,110%);height:130%;transform:translate(-50%,-50%);background:radial-gradient(55% 60% at 50% 50%,rgba(11,13,16,.78),rgba(11,13,16,.35) 55%,transparent 100%);z-index:-1;pointer-events:none}
.kicker{font-weight:400;font-size:15px;color:#fff;margin-bottom:16px}
.kicker b{font-weight:700;color:#fff}
.hero h1{font-size:clamp(28px,3.1vw,44px);font-weight:700;letter-spacing:-.025em;line-height:1.1;max-width:100%;text-wrap:balance;margin:0 auto 18px;color:#fff}
.hero h1 .hl{color:#fff}
.hero-sub{font-size:clamp(15px,1.15vw,16.5px);line-height:1.55;color:var(--t-dark);max-width:860px;margin:0 auto 26px}
.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.tiles-label{font-weight:700;font-size:16px;color:#fff;margin-bottom:14px}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1240px;margin:0 auto}
.tile{display:flex;align-items:center;gap:14px;text-align:left;padding:14px 18px;border-radius:var(--r-md);background:linear-gradient(180deg,rgba(22,25,31,.92),rgba(16,18,22,.92));border:1px solid var(--line-d);transition:border-color .2s,transform .2s var(--ease)}
.tile:hover{border-color:rgba(63,201,122,.45);transform:translateY(-2px)}
.tile-ic{flex:0 0 40px;height:40px;border-radius:11px;background:rgba(0,169,79,.14);border:1px solid rgba(0,169,79,.3);display:flex;align-items:center;justify-content:center;color:var(--green-b)}
.tile-ic svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tile b{display:block;font-weight:700;font-size:15px;color:#fff;line-height:1.2}
.tile small{display:block;font-size:14px;color:var(--t-dark-2);margin-top:3px}


/* ---- Hero ending: credentials strip + rounded close (XM award strip) ---- */
.hero-strip{margin-top:clamp(36px,4.5vw,56px);text-align:center}
.strip-cap{display:flex;flex-direction:column;align-items:center;gap:10px;font-weight:500;font-size:15.5px;color:#fff;margin:0 0 22px}
.strip-cap .t{display:block;white-space:nowrap}
.strip-cap .t span{color:var(--t-dark-2)}
@media(max-width:520px){.strip-cap .t{white-space:normal}}
.strip-cap svg{width:36px;height:36px;stroke:#fff;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.strip-row{display:grid;grid-template-columns:repeat(5,1fr);opacity:.6}
.strip-item{padding:6px 18px;border-left:1px solid rgba(255,255,255,.16)}
.strip-item:first-child{border-left:0}
.strip-item b{display:block;font-weight:700;font-size:14px;color:#fff;line-height:1.3;margin-bottom:4px}
.strip-item small{display:block;font-size:12px;line-height:1.45;color:var(--t-dark-2);max-width:210px;margin:0 auto}
@media(max-width:980px){.strip-row{grid-template-columns:repeat(3,1fr);row-gap:22px}.strip-item:nth-child(4){border-left:0}}
@media(max-width:760px){.strip-row{grid-template-columns:1fr 1fr;row-gap:18px}.strip-item{border-left:0;padding:6px 8px}.strip-item:nth-child(5){grid-column:1/-1}}

/* ---- Media + solve ---- */
.media{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(36px,5vw,72px);align-items:center;margin-bottom:clamp(56px,7vw,84px)}
.media .sec-head{margin-bottom:0}
.figure{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line-d2);box-shadow:0 40px 80px -36px rgba(0,0,0,.85);background:var(--ink)}
.figure img{width:100%;aspect-ratio:4/3;object-fit:cover}
.solve-h{font-size:19px;font-weight:700;margin-bottom:16px;color:#fff}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.card{background:linear-gradient(180deg,var(--card-b),var(--card-a));border:1px solid var(--line-d);border-radius:18px;padding:24px 24px 22px;transition:transform .2s var(--ease),border-color .2s;color:var(--t-dark)}
.card:hover{transform:translateY(-3px);border-color:rgba(63,201,122,.45)}
.chip{width:44px;height:44px;border-radius:50%;background:rgba(0,169,79,.14);border:1px solid rgba(0,169,79,.35);display:flex;align-items:center;justify-content:center;color:var(--green-b);margin-bottom:18px}
.chip svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chip.solid{background:var(--sage);border-color:var(--sage);color:#fff}
.card h3{font-size:18px;margin-bottom:8px}
.card p{margin:0;font-size:15px;line-height:1.55}

/* ---- Platforms (dark bento panels) ---- */
.panels{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.panel{position:relative;overflow:hidden;border-radius:var(--r-lg);background:linear-gradient(180deg,var(--card-b),var(--card-a));border:1px solid var(--line-d);padding:clamp(22px,2.6vw,32px);min-height:0;display:flex;flex-direction:column;isolation:isolate}
.panel.accent{background:radial-gradient(90% 90% at 100% 100%,rgba(63,201,122,.28),transparent 60%),linear-gradient(140deg,#0A3B24 0%,#00863E 100%);border-color:rgba(63,201,122,.3)}
.panel-art{mix-blend-mode:screen;position:absolute;right:-6%;bottom:-8%;width:44%;max-width:320px;z-index:0;pointer-events:none;opacity:.95;-webkit-mask-image:radial-gradient(70% 70% at 55% 55%,#000 55%,transparent 100%);mask-image:radial-gradient(70% 70% at 55% 55%,#000 55%,transparent 100%)}
.panel-body{position:relative;z-index:1;max-width:66%;display:flex;flex-direction:column;flex:1}
.tag{align-self:flex-start;display:inline-block;font-weight:600;font-size:12.5px;letter-spacing:.02em;text-transform:uppercase;color:var(--green-b);background:rgba(0,169,79,.14);border:1px solid rgba(0,169,79,.4);padding:5px 11px;border-radius:999px;margin-bottom:16px}
.panel.accent .tag{color:#fff;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3)}
.panel h3{font-size:clamp(22px,2vw,26px);margin-bottom:8px}
.panel .best-for{font-weight:600;color:#fff;font-size:14.5px;margin-bottom:8px;line-height:1.45}
.panel .best-for strong{color:var(--green-b)}
.panel.accent .best-for strong{color:#CFF5E0}
.panel p{font-size:15px;line-height:1.55;color:var(--t-dark)}
.panel.accent p{color:#DDE9E2}
.panel .features{margin-bottom:16px}
.panel .features strong{color:#fff}
.panel-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:12px;padding-top:10px}
.panel-actions .btn{min-height:44px;padding:0 20px;font-size:14px;border-radius:10px}
.panel.accent .btn-primary{color:var(--sage-deep);background:linear-gradient(180deg,#FFFFFF,#EEF0F3);border-color:rgba(255,255,255,.9);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,.3),0 10px 24px -12px rgba(0,0,0,.5)}
.panel.accent .btn-primary:hover{background:linear-gradient(180deg,#FFFFFF,#E4F6EC);color:var(--sage-deep)}

/* ---- Process (big numerals) ---- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d)}
.step{padding:28px 24px 28px 0;border-right:1px solid var(--line-d)}
.step:last-child{border-right:0}
.step + .step{padding-left:24px}
.step .num{width:44px;height:44px;border-radius:50%;background:rgba(0,169,79,.14);border:1px solid rgba(0,169,79,.35);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:1;color:var(--green-b);margin-bottom:18px}
.step h3{font-size:19px;margin-bottom:6px}
.step p{margin:0;font-size:15.5px;color:var(--t-dark)}
.process-cta{margin-top:36px;text-align:center}

/* ---- Process block on the Intacct green ---- */
.slab.green{background:radial-gradient(90% 90% at 100% 100%,rgba(63,201,122,.28),transparent 60%),linear-gradient(140deg,#0A3B24 0%,#00863E 100%);border-radius:var(--r-xl);color:#DDE9E2}
.slab.green .eyebrow{color:#9FF0C4}
.slab.green .step p{color:#DDE9E2}
.slab.green .steps,.slab.green .step{border-color:rgba(255,255,255,.2)}
.slab.green .step .num{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);color:#fff}

/* ---- Continuous black page; each section's content sits in a grey block ---- */
.slab,.slab.dark,.slab.light{background:transparent;border-radius:0;padding:clamp(12px,1.6vw,20px) clamp(12px,2vw,24px)}
#start.slab{padding-top:clamp(16px,2vw,24px)}
.slab>.container{max-width:1320px;background:#13161C;border:1px solid rgba(255,255,255,.06);border-radius:var(--r-xl);padding:clamp(40px,5vw,64px) clamp(22px,3.5vw,48px)}
.slab.tray>.container{background:transparent;border:0;padding:0;max-width:1320px}
.slab.plain>.container{background:transparent;border:0;padding:clamp(32px,4vw,48px) 0;max-width:1320px}
.slab.dark.final{background:#0B0D10;border:0;border-radius:0;margin:0;padding:clamp(64px,8vw,110px) 0}
.slab.dark.final>.container{background:transparent;border:0;padding:0 clamp(18px,4vw,32px);max-width:1240px}
.ftr{margin-top:0}
@media(max-width:760px){.slab,.slab.dark,.slab.light{padding:10px 12px}.slab>.container{border-radius:24px;padding:32px 18px}.slab.dark.final{margin:0;border-radius:0;padding:48px 0}}

/* ---- Process as a black slab (hero-style), trust tray overlapping its bottom edge ---- */
.slab.black>.container{background:radial-gradient(70% 90% at 100% 0%,rgba(0,169,79,.18),transparent 60%),linear-gradient(122deg,#101216 0%,#0E1014 44%,#0B0D10 100%);border:1px solid rgba(255,255,255,.08)}
.slab.tray{position:relative;z-index:3;background:#0B0D10!important;padding-bottom:clamp(12px,1.6vw,20px)}
.grey-tail{background:#0B0D10;padding:0}
.grey-tail .slab.dark.final{margin-bottom:0}
.slab.tray>.container{max-width:900px}
.trust{padding:6px}
.trust-in{padding:clamp(12px,1.4vw,16px) clamp(14px,1.8vw,22px);gap:14px;grid-template-columns:1fr minmax(110px,18%)}
.trust .eyebrow{margin-bottom:8px;font-size:12px}
.stat .big{font-size:clamp(14.5px,1vw,16px);margin-bottom:2px}
.stat p{font-size:12px;line-height:1.4}
.trust-art{width:16%;max-width:140px;right:-1%}


/* ---- Trust panel (XM "safe and secure" tray) ---- */
.trust{position:relative;overflow:hidden;border-radius:28px;border:1px solid var(--line-d2);background:radial-gradient(70% 120% at 90% 20%,rgba(0,169,79,.34),transparent 60%),linear-gradient(112deg,#101216 0%,#16191F 44%,#0B0D10 78%,#040506 100%);padding:clamp(18px,2vw,24px)}
.trust-in{position:relative;border:1px solid var(--line-d2);border-radius:20px;padding:clamp(28px,3.5vw,44px) clamp(24px,3.5vw,44px);display:grid;grid-template-columns:1fr minmax(220px,34%);gap:40px;align-items:center}
.trust .eyebrow{color:var(--green-b);margin-bottom:26px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.stat .big{font-weight:700;font-size:clamp(20px,1.8vw,24px);color:#fff;line-height:1.2;margin-bottom:8px}
.stat p{margin:0;font-size:15px;color:var(--t-dark)}
.trust-art{mix-blend-mode:screen;position:absolute;right:-4%;top:50%;transform:translateY(-50%);width:36%;max-width:420px;z-index:0;pointer-events:none;-webkit-mask-image:radial-gradient(65% 65% at 50% 50%,#000 55%,transparent 100%);mask-image:radial-gradient(65% 65% at 50% 50%,#000 55%,transparent 100%)}
.trust-text{position:relative;z-index:1}

/* ---- Final CTA ---- */
.final{overflow:hidden;display:flex;align-items:center;text-align:center;background:radial-gradient(58% 120% at 86% 26%,rgba(0,169,79,.40),transparent 60%),linear-gradient(112deg,#101216 0%,#16191F 44%,#0B0D10 78%,#040506 100%)}
.final-art{mix-blend-mode:screen;position:absolute;right:-8%;bottom:-6%;width:58%;max-width:900px;z-index:0;pointer-events:none;opacity:.9;-webkit-mask-image:radial-gradient(75% 75% at 60% 60%,#000 45%,transparent 100%);mask-image:radial-gradient(75% 75% at 60% 60%,#000 45%,transparent 100%)}
.final .container{position:relative;z-index:1}
.final h2{font-size:clamp(30px,4vw,48px);max-width:15ch;margin:0 auto 16px;background:linear-gradient(180deg,#fff 0%,#C9D1DC 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.final p{font-size:clamp(15.5px,1.2vw,17.5px);max-width:640px;margin:0 auto 26px;color:var(--t-dark)}
.final .hero-actions{margin-bottom:0}

/* ---- Footer ---- */
.ftr{background:var(--black);border-top:1px solid var(--line-d);padding:56px 0 26px;color:var(--t-dark-2)}
.ftr-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.35fr;gap:40px}
.ftr h3{font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:18px}
.ftr a{display:block;color:#D5DBE3;font-size:15px;line-height:2.15;transition:color .2s}
.ftr a:hover{color:var(--green-b)}
.ftr-logo img{height:40px;width:auto;margin-bottom:20px}
.ftr-about p{font-size:15px;max-width:340px;line-height:1.65}
.social{display:flex;gap:10px;margin-top:22px}
.social a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--line-d2);background:transparent;transition:border-color .2s,transform .2s}
.social a:hover{border-color:var(--green-b);transform:translateY(-2px)}
.social svg{width:18px;height:18px;fill:#fff}
.ftr-contact{font-style:normal}
.ftr-contact a,.ftr-contact span{display:block;font-size:15px;line-height:1.55;margin-bottom:12px}
.ftr-contact span:not(.lbl){color:#D5DBE3;margin-bottom:2px}
.ftr-contact .lbl{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:4px}
.ftr-bottom{border-top:1px solid var(--line-d);margin-top:52px;padding-top:26px;font-size:13.5px;color:var(--muted);text-align:center}
.ftr-bottom a{display:inline;font-size:inherit;color:var(--t-dark)}

/* WhatsApp float (unchanged from live site) */
.wa-float{position:fixed;z-index:45;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(37,211,102,.45);transition:transform .2s ease}
.wa-float svg{width:32px;height:32px;position:relative;z-index:1}
.wa-float:hover{transform:scale(1.06)}
.wa-pulse{position:absolute;inset:0;border-radius:50%;background:#25D366;z-index:0;animation:waPulse 2s ease-out infinite}
@keyframes waPulse{0%{transform:scale(1);opacity:.65}70%{transform:scale(1.8);opacity:0}100%{transform:scale(1.8);opacity:0}}

/* ---- Responsive ---- */
@media(max-width:1100px){.panel-body{max-width:72%}.panel-art{width:48%}}
@media(max-width:980px){
  .tiles{grid-template-columns:repeat(2,1fr)}
  .media{grid-template-columns:1fr;gap:32px}
  .panels{grid-template-columns:1fr}
  .panel{min-height:0;padding-bottom:40px}
  .panel-body{max-width:100%}
  .panel-art{width:40%;max-width:260px;right:-8%;top:auto;bottom:-8%;opacity:.6}
  .steps{grid-template-columns:repeat(2,1fr)}
  .step{padding:32px 24px 32px 0}
  .step:nth-child(2){border-right:0}
  .step:nth-child(3){padding-left:0;border-bottom:0}
  .step:nth-child(-n+2){border-bottom:1px solid var(--line-d)}
  .step:nth-child(4){padding-left:24px}
  .trust-in{grid-template-columns:1fr}
  .trust-art{width:52%;right:-12%;top:auto;bottom:-20%;transform:none;opacity:.35}
  .stats{grid-template-columns:1fr;gap:22px}
  .ftr-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  :root{--r-xl:28px;--header-h:72px}
  .hdr-brand{gap:12px}
  .hdr-badge{height:28px;padding-left:12px}
  .nav,.hdr-cta .btn{display:none}
  .menu-toggle{display:flex}
  .nav.open{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--ink);flex-direction:column;align-items:stretch;gap:0;padding:8px 0 16px;border-bottom:1px solid var(--line-d2);box-shadow:0 24px 40px rgba(0,0,0,.5);max-height:calc(100dvh - var(--header-h));overflow-y:auto}
  .nav.open>a:not(.nav-cta-mobile){padding:14px 24px;border-bottom:1px solid var(--line-d)}
  .nav.open>a.active::after{display:none}
  .nav.open>a.active{color:var(--green-b)}
  .nav.open .has-dropdown{display:block;border-bottom:1px solid var(--line-d)}
  .nav.open .has-dropdown .dd-toggle{display:flex;justify-content:space-between;padding:14px 24px}
  .nav.open .dropdown-menu{position:static;display:none;box-shadow:none;border:0;border-radius:0;padding:0 0 8px;background:rgba(255,255,255,.03)}
  .nav.open .has-dropdown.open .dropdown-menu{display:flex}
  .nav.open .dropdown-menu a{padding:11px 36px}
  .nav.open .nav-cta-mobile{display:inline-flex;margin:16px 24px 4px}
  .hero{padding:calc(var(--header-h) + 32px) 0 48px;text-align:left;border-radius:0 0 32px 32px}
  .hero-bg{opacity:.6;object-position:60% 70%}
  .hero h1{margin-left:0;font-size:clamp(29px,8vw,38px)}
  .hero-sub{margin-left:0}
  .hero-actions{justify-content:flex-start;flex-direction:column;align-items:stretch}
  .tiles{grid-template-columns:1fr;gap:12px}
  .tile{padding:16px 18px}
  .slab{padding:60px 0 56px}
  .cards{grid-template-columns:1fr}
  .card{padding:24px 22px}
  .steps{grid-template-columns:1fr;border-bottom:0}
  .step,.step + .step{padding:28px 0;border-right:0;border-bottom:1px solid var(--line-d)!important}
  .trust{border-radius:18px;padding:5px}
  .trust-in{padding:32px 22px}
  .final{min-height:0;text-align:left}
  .final h2,.final p{margin-left:0}
  .final-art{width:90%;opacity:.5}
  .ftr-grid{grid-template-columns:1fr;gap:30px}
}
@media(max-width:520px){
  .logo img,.ftr-logo img{height:40px}
  .btn-lg{padding:16px 22px;font-size:15px}
  .panel{padding:26px 22px 32px}
  .panel-actions{flex-direction:column}
  .panel-actions .btn{width:100%}
}


/* =====================================================================
   INNER PAGES — the live site's components restyled in the Redrand theme
   ===================================================================== */
/* ---- Page hero (5 variants) ---- */
.phero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(115% 125% at 82% -4%,rgba(0,169,79,.22),transparent 56%),linear-gradient(122deg,#101216 0%,#16191F 44%,#0B0D10 82%,#050607 100%);padding:calc(var(--header-h) + clamp(48px,6vw,84px)) 0 clamp(48px,6vw,80px);border-radius:0 0 56px 56px}
.phero::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.55) 1px,transparent 1.2px);background-size:26px 26px;opacity:.045}
.phero>.container{position:relative}
.phero h1{font-size:clamp(32px,4.2vw,56px);letter-spacing:-.025em;line-height:1.08;margin:0 0 20px;max-width:22ch}
.phero .subhead{font-weight:600;font-size:clamp(17px,1.5vw,21px);color:var(--green-b);margin:0 0 18px;max-width:60ch;line-height:1.4}
.phero p:not(.subhead){font-size:clamp(15.5px,1.2vw,17.5px);line-height:1.6;color:var(--t-dark);max-width:62ch;margin:0 0 30px}
.phero .hero-actions{justify-content:flex-start;margin:0}
.phero-kicker{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:12.5px;letter-spacing:.02em;text-transform:uppercase;color:var(--green-b);background:rgba(0,169,79,.14);border:1px solid rgba(0,169,79,.4);padding:5px 11px;border-radius:999px;margin-bottom:18px}
.phero-art{mix-blend-mode:screen;pointer-events:none;-webkit-mask-image:radial-gradient(62% 62% at 50% 50%,#000 38%,transparent 92%);mask-image:radial-gradient(62% 62% at 50% 50%,#000 38%,transparent 92%)}
/* v-split: product pages — text left, render right */
.phero.v-split>.container{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,56px);align-items:center}
.phero.v-split .phero-fig{position:relative;aspect-ratio:1;max-width:520px;width:100%;justify-self:end}
.phero.v-split .phero-fig .phero-art{position:absolute;inset:-8%;width:116%;height:116%;object-fit:contain}
.phero.v-split .phero-fig::after{content:"";position:absolute;left:12%;right:12%;bottom:6%;height:14%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,169,79,.35),transparent 70%);filter:blur(12px)}
/* v-band: service pages — text left, large faded render bleeding off the right */
.phero.v-band .phero-art{position:absolute;right:-6%;top:50%;transform:translateY(-50%);width:min(44%,560px);opacity:.85;z-index:1}
.phero.v-band h1{max-width:18ch}
@media(min-width:981px){.phero.v-band>.container{padding-right:min(42%,560px)}}
/* v-stage: capability pages — centred text over a stage panel that holds the render */
.phero.v-stage{text-align:center}
.phero.v-stage h1,.phero.v-stage .subhead,.phero.v-stage p:not(.subhead){margin-left:auto;margin-right:auto}
.phero.v-stage h1{max-width:22ch}
.phero.v-stage .hero-actions{justify-content:center}
.phero-stage{position:relative;margin:clamp(32px,4vw,48px) auto 0;max-width:1100px;height:clamp(180px,24vw,300px);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#14171D,#0E1116);border:1px solid var(--line-d)}
.phero-stage::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 100% at 50% 100%,rgba(0,169,79,.28),transparent 70%)}
.phero-stage .phero-art{position:absolute;left:50%;bottom:-18%;width:min(46%,420px);transform:translateX(-50%)}
/* v-editorial: company pages — big statement left, supporting text right */
.phero.v-editorial>.container{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,5vw,72px);align-items:end}
.phero.v-editorial h1{font-size:clamp(34px,4.4vw,58px);max-width:14ch;margin:0}
.phero.v-editorial .phero-side{padding-bottom:6px}
.phero.v-editorial .phero-side .subhead{font-size:clamp(17px,1.5vw,21px);color:#fff}
.phero.v-editorial .phero-art{position:absolute;right:-3%;bottom:-22%;width:min(34%,420px);opacity:.6;z-index:1}
/* v-plain: contact / insights / privacy / 404 */
.phero.v-plain{text-align:center;padding-bottom:clamp(40px,5vw,64px)}
.phero.v-plain h1,.phero.v-plain .subhead,.phero.v-plain p:not(.subhead){margin-left:auto;margin-right:auto}
.phero.v-plain .hero-actions{justify-content:center}
.phero.v-404{min-height:70vh;display:flex;align-items:center}
.phero.v-404 h1{font-size:clamp(40px,6vw,72px)}


/* ---- Photography with the house filter (dark + green tint) ---- */
.phero.v-photo{min-height:min(calc(100vh - 64px),960px);display:flex;align-items:center;padding-top:calc(var(--header-h) + clamp(56px,7vw,96px));padding-bottom:clamp(64px,8vw,110px)}
.phero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(1) contrast(1.12) brightness(.62);z-index:0}
.phero-tint{display:none}
.phero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(11,13,16,.97) 0%,rgba(11,13,16,.86) 42%,rgba(11,13,16,.38) 100%),linear-gradient(180deg,rgba(11,13,16,.55) 0%,rgba(11,13,16,0) 35%,rgba(11,13,16,.92) 100%)}
.phero.v-photo::before{z-index:1}
.phero.v-photo>.container{position:relative;z-index:2}
.media-figure.photo img{width:100%;height:100%;max-width:none;object-fit:cover;mix-blend-mode:normal;-webkit-mask-image:none;mask-image:none;filter:grayscale(1) contrast(1.08) brightness(.82)}
.media-figure.photo::before{display:none}
.media-figure.photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,16,0) 45%,rgba(11,13,16,.78) 100%);pointer-events:none}
.trust-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05) brightness(.55);opacity:.7;z-index:0}
.trust::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 120% at 90% 20%,rgba(0,169,79,.30),transparent 60%),linear-gradient(112deg,rgba(16,18,22,.94) 0%,rgba(22,25,31,.84) 44%,rgba(11,13,16,.88) 78%,rgba(4,5,6,.96) 100%);z-index:0;pointer-events:none}
.trust-in,.trust-art{position:relative;z-index:1}
.trust-art{position:absolute}
@media(max-width:760px){.phero.v-photo{min-height:0;padding-top:calc(var(--header-h) + 40px);padding-bottom:56px}.phero-shade{background:linear-gradient(180deg,rgba(11,13,16,.9) 0%,rgba(11,13,16,.8) 60%,rgba(11,13,16,.95) 100%)}}

/* ---- Section rhythm on inner pages ---- */
.slab.black>.container{background:radial-gradient(70% 90% at 100% 0%,rgba(0,169,79,.18),transparent 60%),linear-gradient(122deg,#101216 0%,#0E1014 44%,#0B0D10 100%);border:1px solid rgba(255,255,255,.08)}
.slab .section-head{max-width:820px;margin:0 0 clamp(22px,3vw,34px)}
.slab .section-head.center{margin-left:auto;margin-right:auto;text-align:center}
.slab .section-head[style*="margin-top"]{margin-top:clamp(36px,5vw,56px)!important}
.section-title{font-size:clamp(25px,2.7vw,36px);line-height:1.15;margin:0 0 12px;color:#fff}
.section-head .subhead-line,.subhead-line{font-weight:600;color:var(--green-b);font-size:17px;margin-bottom:12px}
.slab .subhead{font-weight:600;color:var(--green-b);font-size:17px;margin:0 0 12px}
.prose p{font-size:16px;line-height:1.65;color:var(--t-dark);max-width:780px;margin:0 0 14px}
.prose p:last-child{margin-bottom:0}
.slab .lead{max-width:860px}
.slab .hero-actions{justify-content:flex-start;margin:0}
.slab h3{color:#fff}
.slab .container>h3{font-size:19px;margin:0 0 16px}
.slab p{color:var(--t-dark)}

/* ---- Media (text + render) ---- */
.media{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.media.reverse .media-text{order:2}.media.reverse .media-figure{order:1}
.media-text .section-head{margin-bottom:16px}
.media-text .prose{margin-bottom:22px}
.media-text .prose p{max-width:none}
.media-figure{position:relative;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#14171D,#0E1116);border:1px solid var(--line-d);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.media-figure::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 70% at 50% 60%,rgba(0,169,79,.22),transparent 70%)}
.media-figure img{position:relative;width:80%;max-width:460px;height:auto;mix-blend-mode:screen;-webkit-mask-image:radial-gradient(68% 68% at 50% 50%,#000 50%,transparent 100%);mask-image:radial-gradient(68% 68% at 50% 50%,#000 50%,transparent 100%)}

/* ---- Lists ---- */
.check-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px;max-width:960px}
.check-list.one{grid-template-columns:1fr;max-width:600px}
.check-list li{position:relative;padding-left:36px;font-weight:600;color:#fff;font-size:15.5px;line-height:1.5}
.check-list li::before{content:"";position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:rgba(0,169,79,.14);border:1px solid rgba(0,169,79,.35)}
.check-list li::after{content:"";position:absolute;left:8px;top:7px;width:8px;height:5px;border-left:2px solid var(--green-b);border-bottom:2px solid var(--green-b);transform:rotate(-45deg)}
.address-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px;max-width:900px}
.address-list li{position:relative;padding-left:22px;font-size:15.5px;line-height:1.5;color:var(--t-dark)}
.address-list li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;background:var(--green-b)}

/* ---- Cards ---- */
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.why-item{display:flex;gap:16px;align-items:flex-start;background:linear-gradient(180deg,var(--card-b),var(--card-a));border:1px solid var(--line-d);border-radius:18px;padding:22px}
.why-item .ic{flex:0 0 40px;height:40px;border-radius:50%;background:rgba(0,169,79,.14);border:1px solid rgba(0,169,79,.35);color:var(--green-b);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
.why-item h3{font-size:17px;margin:2px 0 6px}
.why-item p{margin:0;font-size:15px;line-height:1.55}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.feature-grid.two{grid-template-columns:repeat(2,1fr)}
.feature-card,.value-card,.cat-card,.number-card,.team-card{background:linear-gradient(180deg,var(--card-b),var(--card-a));border:1px solid var(--line-d);border-radius:18px;padding:24px;transition:transform .2s var(--ease),border-color .2s}
.feature-card:hover,.value-card:hover,.cat-card:hover,.team-card:hover{transform:translateY(-3px);border-color:rgba(63,201,122,.45)}
.feature-card{box-shadow:inset 0 2px 0 var(--sage)}
.feature-card h3,.cat-card h3{font-size:17.5px;margin:0 0 8px}
.feature-card p,.cat-card p,.value-card p{margin:0;font-size:15px;line-height:1.55}
.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.value-grid.three{grid-template-columns:repeat(3,1fr)}
.value-card{padding:20px}
.value-card h3{font-size:16px;color:var(--green-b);margin:0 0 8px}
.numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.number-card{text-align:center;padding:30px 24px}
.number-card .big{font-weight:700;font-size:clamp(34px,3.2vw,44px);letter-spacing:-.02em;color:#fff;line-height:1;margin-bottom:12px}
.number-card p{margin:0;font-size:15px}
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cat-card{box-shadow:inset 0 2px 0 var(--green-b)}
.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.team-card{display:flex;gap:18px;align-items:center}
.team-card .avatar{flex:0 0 64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#00863E,#3FC97A);color:#fff;font-weight:700;font-size:20px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.3)}
.team-card h3{font-size:19px;margin:0 0 4px}
.team-card .role{font-size:13px;font-weight:600;color:var(--green-b)}
/* platform cards (solutions / x3 pages) reuse the home panel look */
.platforms{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.platforms.three{grid-template-columns:repeat(3,1fr)}
.platforms.one{grid-template-columns:1fr;max-width:760px;margin:0 auto}
.platform-card{position:relative;overflow:hidden;border-radius:var(--r-lg);background:linear-gradient(180deg,var(--card-b),var(--card-a));border:1px solid var(--line-d);padding:clamp(22px,2.6vw,30px);display:flex;flex-direction:column;isolation:isolate}
.platform-card h3{font-size:clamp(21px,1.9vw,25px);margin:0 0 8px}
.platform-card .best-for{font-weight:600;color:#fff;font-size:14.5px;margin:0 0 8px;line-height:1.45}
.platform-card .best-for strong{color:var(--green-b)}
.platform-card p{font-size:15px;line-height:1.55;margin:0 0 10px}
.platform-card .features{margin-bottom:14px}
.platform-card .features strong,.platform-card p strong{color:#fff}
.platform-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:10px;padding-top:12px}
.platform-actions .btn{min-height:44px;padding:0 18px;font-size:14px;border-radius:10px}

/* ---- Contact ---- */
.contact-wrap{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(28px,4vw,48px);align-items:start}
.contact-info .section-head{margin-bottom:14px}
.contact-info h3{font-size:18px;margin:0 0 12px}
.contact-points{margin:8px 0 22px}
.contact-point{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}
.contact-point .ic{flex:0 0 42px;height:42px;border-radius:12px;background:rgba(0,169,79,.14);border:1px solid rgba(0,169,79,.35);display:flex;align-items:center;justify-content:center}
.contact-point .ic svg{width:18px;height:18px;fill:var(--green-b)}
.contact-point>span:not(.ic){display:flex;flex-direction:column}
.contact-point .lbl{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;margin-bottom:3px}
.contact-point a,.contact-point .val{color:#fff;font-size:15px;line-height:1.5}
.contact-point a:hover{color:var(--green-b)}
.contact-social{display:flex;gap:10px;margin:4px 0 26px}
.contact-social a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--line-d2);transition:border-color .2s,transform .2s}
.contact-social a:hover{border-color:var(--green-b);transform:translateY(-2px)}
.contact-social svg{width:18px;height:18px;fill:#fff}
.contact-form{background:linear-gradient(180deg,#14171D,#0E1116);border:1px solid var(--line-d2);border-radius:24px;padding:clamp(24px,3vw,34px);color-scheme:dark}
.contact-form h3{font-size:22px;margin:0 0 18px}
.form-row{margin-bottom:14px}
.form-row label{display:block;font-weight:600;font-size:13.5px;color:#D5DBE3;margin-bottom:6px}
.form-row input,.form-row select,.form-row textarea{width:100%;padding:13px 14px;border:1px solid var(--line-d2);border-radius:10px;background:rgba(255,255,255,.04);color:#fff;font:inherit;font-size:15px;transition:border-color .2s,background .2s}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:var(--green-b);background:rgba(255,255,255,.06)}
/* The native dropdown list is painted by the browser, not by us. Options inherit the select's
   white text but have no background of their own, so on Firefox and on Windows Chrome with a light
   system theme the list came out white-on-white and read as empty. Give them an opaque dark plate. */
.form-row select option,.form-row select optgroup{background-color:#15181F;color:#fff}
.form-row textarea{min-height:120px;resize:vertical}
.contact-form .btn{width:100%}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.form-row .opt{font-weight:400;color:var(--muted);text-transform:none;letter-spacing:0}
.form-row input::placeholder,.form-row textarea::placeholder{color:#6B7480}
@media(max-width:560px){.form-grid{grid-template-columns:1fr}}

/* ---- Privacy / long-form ---- */
.longform h2{font-size:22px;margin:32px 0 10px}
.longform h3{font-size:18px;margin:22px 0 8px}
.longform p,.longform li{font-size:15.5px;line-height:1.65;color:var(--t-dark)}
.longform ul{padding-left:20px;margin:0 0 14px}
.longform .container{max-width:860px}

/* ---- Responsive ---- */
@media(max-width:1100px){.value-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){
  .phero.v-split>.container,.phero.v-editorial>.container{grid-template-columns:1fr}
  .phero.v-split .phero-fig{max-width:360px;justify-self:center;margin-top:12px}
  .phero.v-band .phero-art{width:50%;right:-14%;opacity:.45}
  .phero.v-editorial .phero-art{display:none}
  .media{grid-template-columns:1fr;gap:28px}
  .media.reverse .media-text,.media.reverse .media-figure{order:0}
  .why-grid,.feature-grid,.feature-grid.two,.platforms,.platforms.three,.team-grid,.contact-wrap{grid-template-columns:1fr}
  .numbers,.cat-grid,.value-grid.three{grid-template-columns:1fr}
}
@media(max-width:760px){
  .phero{padding:calc(var(--header-h) + 36px) 0 44px;border-radius:0 0 32px 32px}
  .phero h1{font-size:clamp(28px,7.6vw,36px)}
  .phero.v-editorial h1{font-size:clamp(30px,8vw,40px)}
  .phero-stage{height:200px}
  .phero.v-band .phero-art{display:none}
  .check-list,.address-list,.value-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .platform-actions{flex-direction:column}.platform-actions .btn{width:100%}
  .contact-form{padding:22px 18px}
}

/* ---- Closing CTA on a black-and-white photo ---- */
.final-art{display:none}
.final-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(1) contrast(1.1) brightness(.5);opacity:.8;z-index:0}
.slab.dark.final::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(11,13,16,.55) 0%,rgba(11,13,16,.75) 50%,rgba(11,13,16,.96) 100%)}
.slab.dark.final>.container{position:relative;z-index:1}

/* ---- Trust bar: one thin strip ---- */
.slab.tray>.container{max-width:1240px}
.trust--thin{padding:4px;border-radius:18px}
.trust--thin .trust-in{display:block;padding:16px clamp(72px,7vw,96px) 16px clamp(18px,2vw,26px);border-radius:14px;grid-template-columns:none;gap:0}
.trust--thin .trust-text{display:flex;align-items:center;gap:clamp(20px,2.6vw,38px)}
.trust--thin .eyebrow{flex:0 0 auto;max-width:200px;margin:0;font-size:12.5px;line-height:1.35}
.trust--thin .stats{flex:1;min-width:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px);align-items:start}
.trust--thin .stat{min-width:0}
.trust--thin .stat .big{font-size:14.5px;line-height:1.35;margin:0 0 2px}
.trust--thin .stat p{font-size:12px;line-height:1.4;color:var(--t-dark-2);margin:0}
.trust--thin .trust-art{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:52px;max-width:52px;z-index:1;-webkit-mask-image:none;mask-image:none}
@media(max-width:860px){
  .trust--thin .trust-in{padding:16px 18px}
  .trust--thin .trust-text{flex-direction:column;align-items:flex-start;gap:12px}
  .trust--thin .stats{grid-template-columns:1fr;gap:10px;width:100%}
  .trust--thin .trust-art{display:none}
}

/* ---- Grouped dropdown: non-clickable green section titles ---- */
.dropdown-menu .dd-title{display:block;padding:12px 14px 4px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--green-b);pointer-events:none;user-select:none;cursor:default}
.dropdown-menu a + .dd-title{margin-top:6px;border-top:1px solid var(--line-d);padding-top:12px}

/* ---- Trust band: live-site concept section, Redrand treatment ---- */
.trust-band{position:relative;overflow:hidden;padding:clamp(72px,9vw,118px) 0}
.trust-band-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.42) contrast(1.05)}
.trust-band::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(112deg,rgba(4,5,6,.94) 0%,rgba(11,13,16,.72) 46%,rgba(0,64,32,.5) 100%)}
.trust-band .container{position:relative;z-index:2}
.trust-band .eyebrow{display:block;color:var(--green-b);margin-bottom:30px}
.tb-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(26px,4.5vw,60px)}
.tb-stat .big{font-weight:700;color:#fff;font-size:clamp(21px,2.3vw,29px);line-height:1.15;margin-bottom:8px}
.tb-stat p{color:var(--t-dark);margin:0;font-size:15px;line-height:1.55;max-width:36ch}
@media(max-width:820px){.tb-stats{grid-template-columns:1fr;gap:24px}.trust-band{padding:64px 0}}

/* ---- Trust: case-study layout ported from Concept 1 (Sage Black), set in Inter ---- */
.trust-cs{position:relative;background:#0B0D10;color:#fff;overflow:hidden;padding:clamp(64px,8vw,96px) 0}
.trust-cs .cs-head{margin-bottom:34px}
.cs-eyebrow{display:inline-flex;align-items:center;gap:11px;font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#3FC97A;margin:0}
.cs-eyebrow .hx{width:11px;height:12px;flex:none}
.cs-grid{position:relative;display:grid;grid-template-columns:1.7fr .92fr;align-items:start}
.cs-photo{border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.08);align-self:stretch}
.cs-photo img{width:100%;height:100%;object-fit:cover;display:block;min-height:460px}
.cs-stats{position:relative;z-index:2;align-self:stretch;margin:58px 0 0 -30px;background:linear-gradient(158deg,#22B863 0%,#00A94F 52%,#04642F 100%);border-radius:30px;padding:8px 34px;color:#fff;display:flex;flex-direction:column;justify-content:center;box-shadow:0 36px 78px -34px rgba(0,169,79,.55)}
.cs-stat{padding:24px 0}
.cs-stat + .cs-stat{border-top:1px solid rgba(255,255,255,.22)}
.cs-top{display:flex;align-items:center;gap:14px}
.cs-ic{width:30px;height:30px;flex:none;display:grid;place-items:center}
.cs-ic svg{width:27px;height:27px;stroke:#fff;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.95}
.cs-v{font-family:'Inter',sans-serif;font-weight:700;font-size:40px;letter-spacing:-.03em;line-height:1;color:#fff}
.cs-v i{font-style:normal;font-size:22px;font-weight:700;margin-left:2px}
.cs-v-sm{font-size:clamp(23px,2.3vw,30px);line-height:1.1}
.cs-stat p{margin:13px 0 0;font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.92)}
@media(max-width:1000px){.cs-grid{grid-template-columns:1fr}.cs-stats{margin:18px 0 0 0}.cs-photo img{min-height:300px}}
@media(max-width:560px){.cs-stats{padding:4px 22px;border-radius:24px}.cs-v{font-size:34px}.cs-v i{font-size:19px}}

/* dropdown: thin line after an Overview link that isn't followed by a group title */
.dropdown-menu .dd-sep{display:block;height:1px;background:var(--line-d);margin:6px 0}

/* ---- Platform panels: black-and-white stock photo under the panel's own colour ---- */
.panel .panel-art{top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:cover;object-position:center;z-index:0;opacity:1;mix-blend-mode:normal;filter:grayscale(1) contrast(1.08) brightness(.95);-webkit-mask-image:none;mask-image:none;transform:scale(1.02);transition:transform .8s var(--ease)}
.panel:hover .panel-art{transform:scale(1.06)}
.panel::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(19,22,28,.96) 0%,rgba(19,22,28,.9) 48%,rgba(19,22,28,.74) 78%,rgba(19,22,28,.64) 100%)}
.panel.accent::after{background:linear-gradient(90deg,rgba(9,56,33,.95) 0%,rgba(7,78,41,.88) 48%,rgba(0,128,60,.74) 78%,rgba(0,146,68,.66) 100%)}
.panel .panel-body{z-index:1;max-width:74%}
.panel p{color:#C9D2DB}
.panel.accent p{color:#E6F1EB}
@media(max-width:980px){
  .panel .panel-body{max-width:100%}
  .panel::after{background:linear-gradient(180deg,rgba(19,22,28,.86) 0%,rgba(19,22,28,.93) 100%)}
  .panel.accent::after{background:linear-gradient(180deg,rgba(8,62,36,.84) 0%,rgba(8,58,34,.93) 100%)}
}
@media(prefers-reduced-motion:reduce){.panel .panel-art{transition:none}.panel:hover .panel-art{transform:scale(1.02)}}

/* trust section: a real section title instead of the small uppercase label */
.trust-cs .cs-title{font-size:clamp(28px,3.2vw,44px);line-height:1.12;letter-spacing:-.02em;margin:0;color:#fff}
#productRow[hidden]{display:none}

/* inner-page heroes: thinner band (home page hero unchanged) */
.phero.v-photo{min-height:min(52vh,520px);padding-top:calc(var(--header-h) + clamp(32px,4vw,52px));padding-bottom:clamp(36px,4.5vw,56px)}
.phero.v-photo h1{font-size:clamp(30px,3.6vw,48px);margin-bottom:14px}
.phero.v-photo .subhead{margin-bottom:12px}
.phero.v-photo p:not(.subhead){margin-bottom:22px}
.phero.v-photo .phero-kicker{margin-bottom:16px}
@media(max-width:760px){.phero.v-photo{min-height:0;padding-top:calc(var(--header-h) + 28px);padding-bottom:40px}}


/* =====================================================================
   De-AI pass (2026-09-14): flat surfaces, no glows or glass, calmer labels.
   Keeps Kyle's explicit choices: network hero, green photo panels, icon chips,
   step chips, B&W hero photos, Concept 1 credentials card, XM rounded blocks.
   ===================================================================== */
.hero{background:linear-gradient(180deg,#101216 0%,#0B0D10 100%)}
.hero-dots,.phero::before{display:none}
.phero{background:#0B0D10}
.slab.black>.container{background:#101216}
.media-figure{background:#101216}
.media-figure::before{display:none}
.final h2{background:none;-webkit-text-fill-color:currentColor;color:#fff}
.feature-card,.cat-card{box-shadow:none}
.card:hover,.feature-card:hover,.value-card:hover,.cat-card:hover,.team-card:hover,.tile:hover,.btn:hover,.btn-primary:hover,.btn-ghost:hover,.btn-white:hover,.btn-ink:hover{transform:none}
.btn-primary,.btn-light{background:#00A94F;border-color:#00A94F;box-shadow:none}
.btn-primary:hover,.btn-light:hover{background:#00953F;border-color:#00953F;box-shadow:none}
.btn-ghost,.btn-outline-light,.btn-secondary{background:transparent;border-color:rgba(255,255,255,.3);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.btn-ghost:hover,.btn-outline-light:hover,.btn-secondary:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.5);box-shadow:none}
.btn-white{background:#fff;box-shadow:none}
.btn-white:hover{background:#E9ECEF;box-shadow:none}
.panel.accent .btn-primary{background:#fff;border-color:#fff;box-shadow:none}
.eyebrow,.slab .eyebrow,.light .eyebrow{color:#8E98A6;font-weight:500}
.phero .subhead{color:#C9D2DB;font-weight:500}
.hero-sub{max-width:720px}
.sec-head .lead,.slab .lead{max-width:680px}
.sec-head.left .lead,.media-text .lead{margin-left:0}
.prose p{max-width:68ch}

/* ---- Mobile ---- */
@media (hover:none) and (pointer:coarse){
  .form-row input,.form-row select,.form-row textarea{font-size:16px}
}
@media (max-width:760px){
  .media-figure:not(.photo):not(.media-video){display:none}
  .media{gap:0}
  .feature-card a,.cat-card a,.card a,.link{display:inline-flex;align-items:center;min-height:44px}
  .tag,.lbl,.eyebrow,.cs-eyebrow,.ftr h3,.ftr-contact .lbl,.contact-point .lbl,.form-row .opt,.stat p{font-size:13px}
  .wa-float{width:52px;height:52px}
  .wa-float svg{width:28px;height:28px}
}

/* de-AI 2: platform tags as plain labels, not pills */
.tag,.panel .tag,.platform-card .tag{background:none;border:0;padding:0;border-radius:0;letter-spacing:.08em;color:#8E98A6}
.panel.accent .tag{background:none;border:0;color:#CFF5E0}
/* phone: standalone contact links get a full-size tap area (inline prose links are exempt) */
@media (max-width:760px){
  .contact-point a{display:inline-flex;align-items:center;min-height:44px}
  .v-404 a:not(.btn){display:inline-flex;align-items:center;min-height:44px}
}

/* credentials card: same green as the accent panels (Kyle, 14 Sep) */
.trust-cs .cs-stats{background:radial-gradient(90% 90% at 100% 100%,rgba(63,201,122,.28),transparent 60%),linear-gradient(140deg,#0A3B24 0%,#00863E 100%);border:1px solid rgba(63,201,122,.3);box-shadow:none}

/* ---- phone hero: network mesh as a strip down the right edge (the mesh lives in the image's right half) ---- */
@media (max-width:760px){
  .hero-bg{top:0;bottom:0;left:auto;right:0;width:78%;height:100%;object-fit:cover;object-position:100% 60%;opacity:.8;
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 55%);mask-image:linear-gradient(90deg,transparent 0%,#000 55%)}
  .hero-in::before{background:radial-gradient(85% 55% at 25% 45%,rgba(11,13,16,.72),rgba(11,13,16,0) 78%)}
}

/* ---- phone/tablet platform cards: photo band across the top fading into the card colour; text on solid colour ---- */
@media (max-width:980px){
  .panel .panel-art{top:0;left:0;right:0;bottom:auto;width:100%;height:220px;object-fit:cover;object-position:center;transform:none;
    -webkit-mask-image:linear-gradient(to bottom,#000 45%,transparent 100%);mask-image:linear-gradient(to bottom,#000 45%,transparent 100%)}
  .panel:hover .panel-art{transform:none}
  .panel::after{display:none}
  .panel .panel-body{margin-top:170px}
}

/* ---- Recognised Sage Partner card: the Sage Payroll Advance look (B&W documents photo under the accent green overlay) ---- */
.trust-cs .cs-stats{background:#0A3B24;border:1px solid rgba(63,201,122,.3);box-shadow:none;overflow:hidden;isolation:isolate}
.trust-cs .cs-stats::before{content:"";position:absolute;inset:0;z-index:-2;background:url("images/opt/photos-documents-960.webp") center/cover no-repeat;filter:grayscale(1) contrast(1.08) brightness(.95)}
.trust-cs .cs-stats::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,56,33,.95) 0%,rgba(7,78,41,.88) 48%,rgba(0,128,60,.74) 78%,rgba(0,146,68,.66) 100%)}

/* ---- readability tune for the new photo/mesh backgrounds ---- */
@media (max-width:760px){
  .hero-bg{opacity:.7;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 45%,#000 92%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 45%,#000 92%)}
  .hero .hero-sub{color:#D5DBE3}
  .hero h1,.hero .hero-sub,.hero .kicker{text-shadow:0 1px 3px rgba(0,0,0,.65)}
}
@media (max-width:980px){
  .panel .panel-art{-webkit-mask-image:linear-gradient(to bottom,#000 30%,transparent 85%);mask-image:linear-gradient(to bottom,#000 30%,transparent 85%)}
  .panel .panel-body{margin-top:190px}
}
.trust-cs .cs-stats::after{background:linear-gradient(90deg,rgba(9,56,33,.95) 0%,rgba(7,78,41,.9) 48%,rgba(0,110,52,.85) 78%,rgba(0,118,56,.82) 100%)}
.trust-cs .cs-stat p{color:#fff}

/* phone/tablet: keep the accent green but calm the bright corner so the lower paragraphs stay readable */
@media (max-width:980px){
  .panel.accent{background:radial-gradient(90% 90% at 100% 100%,rgba(63,201,122,.12),transparent 60%),linear-gradient(140deg,#0A3B24 0%,#00793A 100%)}
  .panel.accent p,.panel.accent .features{color:#fff}
}

/* ---- launch fixes (2026-09-14) ---- */
/* main button green darkened: white text now 4.8:1 (was 3.1:1 on #00A94F) */
.btn-primary,.btn-light{background:#00843E;border-color:#00843E}
.btn-primary:hover,.btn-light:hover{background:#006F34;border-color:#006F34}
/* footer Privacy Policy link: underlined, not colour-only */
.ftr-bottom a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
/* 3D render figures removed: overview text runs full width */
.media.text-only{display:block}
.media.text-only .media-text{max-width:780px}

/* platform card buttons stay on one row on desktop (Sage Payroll Advance was wrapping) */
@media (min-width:981px){
  .panel-actions{flex-wrap:nowrap}
  .panel-actions .btn{flex:0 0 auto;white-space:nowrap;padding:0 18px}
}

/* seven-card services grid: 3 over 4 on desktop, like the live site (no orphan card) */
@media (min-width:981px){
  .feature-grid.balanced:has(> .feature-card:nth-child(7):last-child){grid-template-columns:repeat(12,1fr)}
  .feature-grid.balanced:has(> .feature-card:nth-child(7):last-child) > .feature-card{grid-column:span 3}
  .feature-grid.balanced:has(> .feature-card:nth-child(7):last-child) > .feature-card:nth-child(-n+3){grid-column:span 4}
}

/* Sage Business Partner badge */
.ftr-badge{display:block;width:200px;height:auto;margin-top:22px}
.cs-badge{display:block;width:220px;height:auto;margin:0 0 22px}
.sage-badge{display:block;width:240px;height:auto;margin:0 0 24px}
.trust-badge{display:block;width:220px;height:auto;margin:0 auto 22px}

/* Sage badge over the trust photo (bottom left) and in the home hero */
.cs-photo{position:relative}
.cs-photo .cs-photo-badge{position:absolute;left:22px;bottom:22px;z-index:2;width:220px;height:auto;min-height:0;object-fit:contain;border-radius:0}
.hero .hero-badge{display:block;width:200px;height:auto;margin:0 auto 18px}
@media (max-width:760px){
  .cs-photo .cs-photo-badge{left:14px;bottom:14px;width:170px}
  .hero .hero-badge{width:170px;margin:0 0 16px}
}

/* hero badge: bottom-left corner of the hero, clear of the headline */
.hero .hero-badge.hero-badge-corner{position:absolute;left:clamp(20px,4vw,56px);bottom:clamp(88px,9vw,120px);z-index:3;width:190px;margin:0}
@media (max-width:760px){.hero .hero-badge.hero-badge-corner{left:18px;bottom:24px;width:150px}}

/* ---- Product videos ---- */
.product-video{padding:clamp(52px,6vw,80px) 0}
.video-embed{position:relative;width:100%;max-width:1000px;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#000;border:1px solid var(--line-d)}
.video-play{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;cursor:pointer;background:none;display:block}
.video-play img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}
.video-play:hover img{transform:scale(1.03)}
.video-play-icon{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;background:#00843E;transition:transform .2s var(--ease)}
.video-play-icon::after{content:"";position:absolute;left:34px;top:26px;border-style:solid;border-width:16px 0 16px 26px;border-color:transparent transparent transparent #fff}
.video-play:hover .video-play-icon{transform:scale(1.08)}
.video-play:focus-visible{outline:3px solid var(--green-b);outline-offset:3px}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-credit{margin:14px 0 0;font-size:14px;color:var(--t-dark-2)}
@media (max-width:760px){.video-play-icon{width:64px;height:64px;margin:-32px 0 0 -32px}.video-play-icon::after{left:26px;top:20px;border-width:12px 0 12px 20px}}

/* ---- Product video in the Overview right column ---- */
/* sits on the same green block as the credentials card, so a dark video doesn't vanish into the dark page (Kyle, 15 Sep) */
.media-figure.media-video{aspect-ratio:auto;display:block;overflow:hidden;border-radius:24px;padding:clamp(14px,2.2vw,28px);background:radial-gradient(90% 90% at 100% 100%,rgba(63,201,122,.28),transparent 60%),linear-gradient(140deg,#0A3B24 0%,#00863E 100%);border:1px solid rgba(63,201,122,.3)}
.media-figure.media-video::before,.media-figure.media-video::after{display:none}
.media-figure.media-video .video-embed{max-width:none;border-radius:14px;border-color:rgba(255,255,255,.14);box-shadow:0 18px 44px rgba(0,0,0,.45)}
.media-figure.media-video .video-play img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;mix-blend-mode:normal;-webkit-mask-image:none;mask-image:none;filter:none}
@media (max-width:760px){.media.media-has-video{gap:28px}}
/* ---- Sage badge above the home hero headline ---- */
.hero .hero-badge{position:static;display:block;width:190px;height:auto;margin:0 auto 26px}
@media (max-width:760px){.hero .hero-badge{width:160px;margin:0 0 20px}}
/* ---- "Learn more" links on cards in green (Kyle, 15 Sep) ---- */
.feature-card p a{color:var(--green-b);font-weight:600;transition:color .2s}
.feature-card p a:hover{color:#fff}

/* =====================================================================
   Audit fixes (2026-09-17)
   ===================================================================== */
/* dropdowns: open on keyboard focus (JS sets .open), Escape dismisses, visible focus ring */
@media(min-width:761px){
  .has-dropdown.open .dropdown-menu{display:flex}
  .has-dropdown.open .caret{transform:rotate(225deg) translate(-2px,-2px)}
  .has-dropdown.dd-dismissed .dropdown-menu{display:none!important}
}
.nav a:focus-visible,.dropdown-menu a:focus-visible,.menu-toggle:focus-visible,.logo:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:6px}
/* dropdown arrows: a drawn chevron instead of the tiny ▾ glyph */
.has-dropdown .caret{font-size:0;width:8px;height:8px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);margin-left:3px;color:#AEB8C4;transition:transform .2s}
.has-dropdown:hover .caret{transform:rotate(225deg) translate(-2px,-2px)}
@media(max-width:760px){
  .nav.open .has-dropdown .caret{width:11px;height:11px;border-width:0 2px 2px 0;margin-right:4px}
  .nav.open .has-dropdown .dd-toggle{min-height:52px}
  .nav.open .has-dropdown.open .caret{transform:rotate(225deg) translate(-3px,-3px)}
  .has-dropdown:hover .caret{transform:rotate(45deg) translate(-2px,-2px)}
  .nav.open .has-dropdown.open:hover .caret{transform:rotate(225deg) translate(-3px,-3px)}
  .nav.open{overscroll-behavior:contain}
}
/* phone menu open: the page behind does not scroll */
html.nav-locked,html.nav-locked body{overflow:hidden}

/* inner-page heroes: centred like the home hero, a little taller, no big dark gap after */
.phero.v-photo{min-height:min(62vh,600px);text-align:center;padding-top:calc(var(--header-h) + clamp(40px,5vw,64px));padding-bottom:clamp(28px,3vw,40px)}
.phero.v-photo>.container{display:flex;flex-direction:column;align-items:center}
.phero.v-photo h1{max-width:20ch;margin-left:auto;margin-right:auto;text-wrap:balance}
.phero.v-photo .subhead,.phero.v-photo p:not(.subhead){margin-left:auto;margin-right:auto;text-wrap:pretty}
.phero.v-photo .hero-actions{justify-content:center}
.phero.v-photo .phero-shade{background:radial-gradient(70% 80% at 50% 50%,rgba(11,13,16,.55) 0%,rgba(11,13,16,.78) 100%),linear-gradient(180deg,rgba(11,13,16,.6) 0%,rgba(11,13,16,0) 30%,rgba(11,13,16,.95) 100%)}
.phero.v-photo + .slab.plain{padding-top:0}
.phero.v-photo + .slab.plain>.container{padding-top:clamp(28px,3vw,40px)}
@media(max-width:760px){.phero.v-photo{min-height:0;padding-top:calc(var(--header-h) + 48px);padding-bottom:52px}.phero.v-photo .hero-actions{align-items:stretch;width:100%;max-width:360px}}

/* home stats: number on one line, unit underneath, the same for every stat */
.cs-top{align-items:flex-start}
.cs-top .cs-ic{margin-top:6px}
.cs-v i{display:block;margin:6px 0 0;font-size:18px;font-weight:600;letter-spacing:-.01em;line-height:1.2}
.cs-v-sm{padding-top:4px}

/* About "History and Growth": text left, at-a-glance timeline right */
.history-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.history-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.history-stats .hs{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);border-radius:18px;padding:clamp(20px,2.2vw,28px)}
.history-stats .hs-wide{grid-column:1 / -1}
.history-stats .hs-k{display:block;font-size:clamp(38px,4vw,56px);font-weight:700;letter-spacing:-.035em;line-height:1;color:#fff}
.history-stats .hs-k::after{content:"";display:block;width:28px;height:3px;border-radius:2px;background:var(--green-b);margin:14px 0 12px}
.history-stats .hs-v{display:block;font-size:15px;line-height:1.5;color:var(--t-dark)}
@media(max-width:900px){.history-grid{grid-template-columns:1fr}}

/* links inside body text: a 44px-tall tap area on touch screens, without moving the text */
.prose a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
@media(pointer:coarse){.prose a{display:inline-block;padding:12px 2px;margin:-12px -2px}}

/* centred hero titles stay on one line on laptop/desktop (Kyle, 17 Sep) */
.phero.v-photo h1{max-width:none}
.phero.v-photo h1.h1-long{font-size:clamp(28px,2.6vw,40px)}

/* FPC logo larger than the Sage Platinum badge, header and footer (Kyle, 17 Sep) */
.logo img{height:64px}
.hdr-badge{height:26px}
.ftr-logo img{height:72px}
.ftr-badge{width:150px}
@media(max-width:1080px) and (min-width:761px){.logo img{height:54px}.hdr-badge{height:22px}}
@media(max-width:880px) and (min-width:761px){.logo img{height:48px}.hdr-badge{height:20px}}
@media(max-width:760px){.logo img{height:54px}.hdr-badge{height:22px}}
@media(max-width:520px){.logo img{height:50px}.hdr-badge{height:20px}.ftr-logo img{height:60px}}
