/*
Theme Name: Tinova Agency WP Theme 
Theme URI: https://tinovagency.com
Author: Tinova Team
Author URI: https://tinovagency.com
Description: Custom high-performance WordPress theme for Tinova built for 100% compatibility with Elementor page builder & WordPress Customizer.
Version: 2.6.0
Text Domain: tinova-v6
*/

/* ============ TINOVA BRAND TOKENS ============
   Source: Tinova Brand Guideline V2.0 (official palette, type and elements).
   Palette  f04a2b pumpkin red / f58726 light orange / 1c1a17 ink /
            fff5f0 cream / 293dff blue / 36ff66 green
   Type     Primary Oscine (licensed, installed locally) with Figtree as the
            web stand in. Secondary Open Sans for body, per the guideline.
   Elements Round cornered rectangles with smooth drop shadow.
            2 point gradients with 0 opacity at 1 end. 8 point star pattern
            used only as a backdrop.
============================================================ */

/* ============ OFFICIAL OSCINE FONT FACE DECLARATIONS ============ */
@font-face {
  font-family: 'Oscine';
  src: url('fonts/Oscine_Trial_Rg.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Oscine';
  src: url('fonts/Oscine_Trial_It.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Oscine';
  src: url('fonts/Oscine_Trial_Lt.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Oscine';
  src: url('fonts/Oscine_Trial_LtIt.ttf') format('truetype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Oscine';
  src: url('fonts/Oscine_Trial_Bd.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Oscine';
  src: url('fonts/Oscine_Trial_BdIt.ttf') format('truetype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Oscine';
  src: url('fonts/Oscine_Trial_XBd.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Oscine';
  src: url('fonts/Oscine_Trial_XBdIt.ttf') format('truetype');
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

:root{
  --orange:#F04A2B;      /* brand primary, pumpkin red */
  --orange2:#F58726;     /* brand secondary, light orange */
  --navy:#1C1A17;        /* brand ink, used for dark bands and headings */
  --ink:#100F0D;         /* deepest ink */
  --slate:#57514A;       /* warm body grey derived from the ink */
  --cream:#FFF5F0;       /* brand cream */
  --line:#E6DED7;        /* warm hairline derived from the cream */
  --blue:#293DFF;        /* brand blue accent */
  --green:#36FF66;       /* brand green accent, dark backgrounds only */
  --white:#fff;
  --mute:#8A837A;
  --grad:#F04A2B;        /* NO GRADIENTS: solid #F04A2B */
  --grad-fade:linear-gradient(90deg,#F04A2B 0%,rgba(240,74,43,0) 100%);

  --disp:'Oscine','Figtree',-apple-system,'Segoe UI',sans-serif;
  --body:'Open Sans',-apple-system,'Segoe UI',sans-serif;

  --r-sm:10px; --r-md:14px; --r-lg:22px; --r-xl:32px; --r-full:999px;
  --r-panel:140px;
  --sh-1:0 1px 2px rgba(28,26,23,.05), 0 6px 18px rgba(28,26,23,.05);
  --sh-2:0 2px 6px rgba(28,26,23,.06), 0 16px 40px rgba(28,26,23,.08);
  --sh-3:0 8px 18px rgba(28,26,23,.08), 0 34px 78px rgba(28,26,23,.14);
  --wrap:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--white);color:var(--navy);font-family:var(--body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--disp);font-weight:800;line-height:1.16;letter-spacing:-.022em;margin:0}
p{margin:0}
a{color:inherit}
img{display:block;max-width:100%}
button{font:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.eyebrow{font-family:var(--disp);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}
.eyebrow.on-dark{color:var(--orange2)}
.lede{font-size:19.5px;color:var(--slate);line-height:1.62}
.small{font-size:15px;color:var(--slate)}
.tiny{font-size:13px;color:var(--mute);line-height:1.5}
.num{font-variant-numeric:tabular-nums lining-nums}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:4px}

/* ============ BUTTONS ============ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--disp);font-weight:700;font-size:15.5px;padding:0 26px;border-radius:16px;text-decoration:none;border:0;cursor:pointer;min-height:53px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;text-transform:none;letter-spacing:.02em}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 8px 22px rgba(240,74,43,.26)}
.btn-primary:hover{background:#d83c1f;transform:translateY(-2px);box-shadow:0 12px 28px rgba(240,74,43,.34)}
.btn-primary:active{transform:translateY(0)}
.btn-ghost{background:#fff;color:var(--navy);border:1.5px solid var(--line);border-radius:16px}
.btn-ghost:hover{border-color:var(--navy)}
.btn-light{background:#fff;color:#F04A2B;border-radius:16px;font-weight:700}
.btn-light:hover{background:#fff;color:#d83c1f;transform:translateY(-2px);box-shadow:var(--sh-2)}
.btn-outline-orange{background:#fff;color:#F04A2B;border:1.5px solid #F04A2B;border-radius:16px}
.btn-outline-orange:hover{background:var(--cream);transform:translateY(-2px)}
.btn-outline-l{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.8);border-radius:16px}
.btn-outline-l:hover{border-color:#fff;background:rgba(255,255,255,.12)}
.btn-dark-outline{background:#fff;color:var(--navy);border:1.5px solid var(--navy);border-radius:16px}
.btn-dark-outline:hover{background:var(--navy);color:#fff}

/* ============ TOPBAR + NAV ============ */
.topbar{display:none!important;background:var(--ink);color:#B9B0A5;font-size:13px}
.topbar .in{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:9px 32px;max-width:var(--wrap);margin:0 auto}
.topbar a{text-decoration:none}
.topbar a:hover{color:#fff}
.topbar .sep{color:#494239;margin:0 10px}
.topbar b{color:#fff;font-weight:600}
header{position:sticky;top:0;z-index:200;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:22px;padding:13px 32px;max-width:var(--wrap);margin:0 auto}
.nav .brand{flex:0 0 auto;display:block}
.nav .brand img{height:36px;width:auto;min-width:100px}  /* guideline: never below 100px wide on web */
.menu{display:flex;gap:4px;list-style:none;margin:0 auto 0 18px;padding:0;align-items:center}
.menu>li{position:relative}
.menu>li>a,.menu>li>button{display:inline-flex;align-items:center;gap:6px;background:none;border:0;cursor:pointer;font-family:var(--disp);font-weight:600;font-size:14.5px;color:var(--navy);text-decoration:none;padding:10px 12px;border-radius:var(--r-sm)}
.menu>li>a:hover,.menu>li>button:hover{color:var(--orange);background:var(--cream)}
.menu .caret{transition:transform .2s ease}
.menu>li.open .caret{transform:rotate(180deg)}
.drop{position:absolute;top:calc(100% + 8px);left:0;min-width:320px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-2);padding:10px;list-style:none;margin:0;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:1001}
.menu>li.open .drop, .menu>li:hover .drop{opacity:1;visibility:visible;transform:translateY(0)}
.drop a{display:flex!important;flex-direction:column!important;text-decoration:none;padding:11px 13px;border-radius:var(--r-sm);border-left:3px solid transparent;transition:all .18s ease}
.drop a:hover{background:var(--cream);border-left-color:var(--orange)}
.drop .t{display:block!important;font-family:var(--disp);font-weight:700;font-size:14.5px;color:var(--navy);margin-bottom:2px}
.drop .d{display:block!important;font-family:var(--body);font-weight:400;font-size:12.5px;color:var(--mute);margin-top:2px;line-height:1.42}
.nav .navcta{flex:0 0 auto;padding:12px 22px;font-size:14.5px;min-height:46px}
.burger{display:none;flex:0 0 auto;margin-left:auto;background:#fff;border:1.5px solid var(--line);border-radius:var(--r-sm);width:46px;height:46px;align-items:center;justify-content:center;cursor:pointer}
.burger span{display:block;width:20px;height:2px;background:var(--navy);position:relative}
.burger span:before,.burger span:after{content:"";position:absolute;left:0;width:20px;height:2px;background:var(--navy)}
.burger span:before{top:-6px}.burger span:after{top:6px}
.mobile{display:none;border-top:1px solid var(--line);background:#fff;max-height:calc(100vh - 120px);overflow:auto;box-shadow:var(--sh-2)}
.mobile.show{display:block}
.mobile ul{list-style:none;margin:0;padding:14px 24px 28px}
.mobile li{margin:0;padding:0}
.mobile a:not(.btn){display:block;text-decoration:none;font-family:var(--disp);font-weight:600;font-size:16px;padding:14px 0;border-bottom:1px solid var(--line);color:var(--navy);transition:color .18s ease}
.mobile a:not(.btn):hover{color:var(--orange)}
.mobile .sub a:not(.btn){font-weight:400;font-size:15px;color:var(--slate);padding-left:16px}
.mobile .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:100%!important;margin-top:20px!important;padding:0 24px!important;min-height:52px!important;border-radius:16px!important;border-bottom:none!important;text-decoration:none!important;font-family:var(--disp)!important;font-weight:700!important;font-size:15.5px!important;line-height:1.2!important;text-align:center!important;box-sizing:border-box!important}
.mobile li:has(.btn){border-bottom:none!important}

/* ============ HERO ============ */
.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#FFF9F6 0%,#fff 76%)}
.hero .eyebrow.dark-eyebrow, .hero .eyebrow-dark{color:var(--navy)}
.hero:before{content:"";position:absolute;right:-200px;top:-200px;width:660px;height:660px;background:radial-gradient(circle,rgba(245,135,38,.22),rgba(245,135,38,0) 68%);pointer-events:none}
.hero:after{content:"";position:absolute;left:-140px;bottom:-220px;width:520px;height:520px;background:radial-gradient(circle,rgba(240,74,43,.09),rgba(240,74,43,0) 70%)  /* guideline: prioritise warm tones */;pointer-events:none}
.hero .in{position:relative;max-width:var(--wrap);margin:0 auto;padding:72px 32px 64px;display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}
.hero h1{font-size:clamp(32px,4.1vw,50px);letter-spacing:-.034em}
.hero h1 .hl{color:var(--orange);position:relative;display:inline-block}
.hero h1 .hl:after{content:"";position:absolute;left:-2px;right:-2px;bottom:3px;height:10px;background:rgba(245,135,38,.28);border-radius:4px;z-index:-1}
.hero h1 .n{font-variant-numeric:tabular-nums lining-nums}
.hero h1 .qt{display:block;color:var(--slate);font-size:.56em;letter-spacing:-.02em;margin-top:14px}
.hero .lede{margin-top:20px;max-width:48ch}
.hero .lede b{color:var(--navy);font-weight:700}
.hchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.hchips span{font-family:var(--disp);font-weight:700;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 13px}
.hchips span i{font-style:normal;color:var(--orange)}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:30px}
.reassure{margin-top:18px;display:flex;gap:10px;align-items:flex-start;max-width:48ch}
.reassure svg{flex:0 0 auto;margin-top:4px}
.brandline{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-family:var(--disp);font-weight:700;font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:var(--slate)}
.brandline i{font-style:normal;color:var(--orange)}

.fcard{position:relative}
.fcard .ph{border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-3);transform:rotate(1.4deg)}
.fcard .ph img{width:100%;height:auto}
.fquote{position:absolute;left:-26px;bottom:30px;width:300px;background:#fff;border-radius:var(--r-lg);padding:20px 22px;box-shadow:var(--sh-2);border-left:4px solid var(--orange);transform:rotate(-1.1deg)}
.fquote p{font-size:15.5px;line-height:1.5;font-weight:600;color:var(--navy)}
.sig{font-family:'Caveat',cursive;font-size:27px;color:var(--orange);line-height:1;margin-top:12px}
.fbadge{position:absolute;top:18px;right:-14px;background:var(--navy);color:#fff;border-radius:var(--r-md);padding:11px 16px;font-family:var(--disp);font-weight:700;font-size:12px;letter-spacing:.09em;text-transform:uppercase;box-shadow:var(--sh-2);z-index:2}

/* ============ PROOF BAR ============ */
.proofbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.proofbar .g{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.pcell{padding:30px 26px;border-right:1px solid var(--line)}
.pcell:first-child{padding-left:32px}
.pcell:last-child{border-right:0}
.pcell .v{font-family:var(--disp);font-weight:800;font-size:32px;letter-spacing:-.03em;color:var(--orange)}
.pcell .v.navy{color:var(--navy)}
.pcell .k{margin-top:4px;font-size:14.5px;color:var(--slate);line-height:1.4}
.pcell .who{margin-top:8px;font-family:var(--disp);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#A69C90}

/* ============ PARTNERS ============ */
.partners{background:#F04A2B;color:#fff;padding:60px 0 54px;text-align:center;overflow:hidden}
.partners .in{max-width:var(--wrap);margin:0 auto;padding:0 32px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}
.partners .lbl{font-family:var(--disp);font-weight:700;font-size:13px;letter-spacing:.15em;text-transform:uppercase;color:#ffffff!important;margin:0 auto}
.partners h2{font-size:clamp(26px,3.5vw,42px);font-weight:800;color:#fff;letter-spacing:-.025em;margin:0}
.partners-carousel{overflow:hidden;width:100%;max-width:100%;margin-top:12px;position:relative;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}
.partners-track{display:flex;align-items:center;gap:54px;width:max-content;animation:partner-marquee 24s linear infinite}
.partners-track:hover{animation-play-state:paused}
.partners-track img{height:34px;width:auto;brightness:0;invert:1;filter:brightness(0) invert(1);opacity:.95;flex:0 0 auto}
@keyframes partner-marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ============ TYPEWRITER ANIMATION ============ */
.typewriter-box{display:inline-block;border-right:2.5px solid rgba(255,255,255,0.9);white-space:nowrap;overflow:hidden;animation:blink-cursor 0.75s step-end infinite;vertical-align:bottom;padding-right:2px}
@keyframes blink-cursor{from,to{border-color:transparent}50%{border-color:rgba(255,255,255,0.9)}}

/* ============ SECTIONS ============ */
section{padding:92px 0}
section.tight{padding:76px 0}
.shead{max-width:64ch}
.shead.center{margin:0 auto;text-align:center}
.shead h1,.shead h2{font-size:clamp(28px,3.2vw,39px);margin-top:14px}
.shead .lede{margin-top:16px}
.dark{background:#F04A2B;color:#fff}
.dark h2,.dark h3,.dark h4{color:#fff}
.dark .lede,.dark .small{color:rgba(255,255,255,.92)}
.dark .tiny{color:rgba(255,255,255,.8)}
.cream{background:var(--cream)}
.ulist{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.ulist li{display:flex;gap:11px;font-size:16px;color:var(--slate);line-height:1.52}
.ulist li:before{content:"";flex:0 0 auto;width:7px;height:7px;border-radius:2px;margin-top:8px;background:var(--orange)}
.dark .ulist li{color:rgba(255,255,255,.92)}
.dark .ulist li:before{background:#fff}

/* ============ THREE WAYS ============ */
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.door{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.door:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.door .cap{padding:26px 26px 22px;border-bottom:1px solid var(--line);text-align:center}
.door.accent{border-color:var(--orange);box-shadow:0 12px 34px rgba(240,74,43,.13)}
.door.accent .cap{background:linear-gradient(180deg,#FFF3ED,#fff)}
.tag{display:inline-block;font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.13em;text-transform:uppercase;padding:6px 14px;border-radius:var(--r-sm);background:#FFE7DF;color:#F04A2B;margin:0 auto}
.tag-a,.tag-b,.tag-c{background:#FFE7DF;color:#F04A2B}
.door h3{font-size:22.5px;margin-top:15px;letter-spacing:-.025em}
.door .sub{margin-top:9px;font-size:15.5px;color:var(--slate);line-height:1.5}
.door .body{padding:22px 26px 26px;flex:1;display:flex;flex-direction:column}
.dl{display:grid;gap:13px;margin:0 0 20px}
.dl .r{display:grid;grid-template-columns:82px 1fr;gap:13px;align-items:start}
.dl .k{font-family:var(--disp);font-weight:700;font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:#A69C90;padding-top:4px}
.dl .v{font-size:15.5px;color:var(--navy);line-height:1.48}
.door .foot{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.door .foot .tlink{font-size:14.5px}
.owned{margin-top:38px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:var(--r-lg);padding:26px 28px;box-shadow:var(--sh-1)}
.owned p{font-size:17px;color:var(--slate)}
.owned b{color:var(--navy)}

/* ============ METHOD ============ */
.method{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.mcard{background:#ffffff;border:1px solid #E6DED7;border-radius:24px;padding:32px 26px;box-shadow:0 6px 24px rgba(0,0,0,.07);display:flex;flex-direction:column}
.mcard .n{font-family:var(--disp);font-weight:800;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}
.mcard h3{font-size:21px;color:var(--navy);margin-top:0;margin-bottom:12px;font-weight:800}
.mcard p{margin-top:0;font-size:15.5px;color:var(--slate);line-height:1.6;flex:1}
.mcard .out{margin-top:24px;padding-top:16px;border-top:1px solid #F3EDE7;font-size:14.5px;color:var(--orange);font-weight:700}
.mnote{margin-top:32px;font-size:16.5px;color:#C9C0B6;max-width:74ch}
.mnote b{color:#fff}

/* ============ SERVICES ============ */
.svcs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.svc{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.svc:hover{transform:translateY(-3px);box-shadow:var(--sh-2);border-color:#CFC6BC}
.svc .ic{width:46px;height:46px;border-radius:var(--r-md);background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:var(--disp);font-weight:800;font-size:15px;color:#fff}
.svc h3{font-size:19.5px;margin-top:16px}
.svc p{margin-top:10px;font-size:15.5px;color:var(--slate);line-height:1.55}
.svc .go{margin-top:16px;font-family:var(--disp);font-weight:700;font-size:13.5px;color:var(--orange);letter-spacing:.02em}

/* ============ VALUES ============ */
.vals{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:42px}
.val{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 24px;border-top:4px solid var(--orange)}
.val:nth-child(2){border-top-color:var(--orange2)}
.val:nth-child(3){border-top-color:var(--blue)}
.val:nth-child(4){border-top-color:var(--navy)}
.val h3{font-size:18.5px}
.val p{margin-top:10px;font-size:15.5px;color:var(--slate);line-height:1.55}

/* ============ CTA BAND ============ */
.band{background:var(--grad);color:#fff;padding:64px 0}
.band .in{max-width:var(--wrap);margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1.25fr .75fr;gap:44px;align-items:center}
.band h2{font-size:clamp(26px,3vw,36px);color:#fff}
.band p{margin-top:14px;font-size:18px;color:rgba(255,255,255,.94);max-width:52ch}
.band .acts{display:flex;flex-direction:column;gap:12px}
.band .acts .btn{width:100%}
.band .acts .tiny{color:rgba(255,255,255,.85)}

/* ============ WORK ============ */
.work{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px}
.wk{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:#fff;text-decoration:none;display:block;transition:transform .2s ease,box-shadow .2s ease}
.wk:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.wk img{width:100%;height:186px;object-fit:cover}
.wk .cap{display:block;padding:16px 18px 18px}
.wk .t{display:block;font-family:var(--disp);font-weight:700;font-size:16px;color:var(--navy);line-height:1.3}
.wk .d{display:block;margin-top:4px;font-size:14px;color:var(--mute);line-height:1.45}
.centeract{margin-top:34px;text-align:center}

/* ============ CASES + QUOTES ============ */
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px}
.case{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px}
.case .v{font-family:var(--disp);font-weight:800;font-size:36px;letter-spacing:-.035em;color:var(--orange)}
.case .k{margin-top:5px;font-family:var(--disp);font-weight:700;font-size:15px}
.case p{margin-top:13px;font-size:15.5px;color:var(--slate);line-height:1.55}
.case .meta{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-family:var(--disp);font-weight:700;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:#A69C90}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}
.q{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 24px;display:flex;flex-direction:column}
.q .mark{font-family:var(--disp);font-weight:800;font-size:32px;color:var(--orange);line-height:.7;height:17px}
.q p{margin-top:14px;font-size:15.5px;color:var(--slate);line-height:1.56;flex:1}
.q .by{margin-top:18px;display:flex;align-items:center;gap:12px}
.q .mono{width:42px;height:42px;border-radius:var(--r-full);background:var(--grad);color:#fff;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-family:var(--disp);font-weight:800;font-size:14.5px}
.q .nm{font-family:var(--disp);font-weight:700;font-size:15px}

/* ============ TEAM ============ */
.people{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.people .ph{border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-3);aspect-ratio:4/3}
.people .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;display:block}
.people h2{font-size:clamp(26px,3vw,36px)}
.sigblock{margin-top:26px;display:flex;align-items:center;gap:15px}
.sigblock .av{width:58px;height:58px;border-radius:var(--r-full);overflow:hidden;flex:0 0 auto;box-shadow:var(--sh-1)}
.sigblock .av img{width:100%;height:100%;object-fit:cover;object-position:50% 16%}
.sigblock .nm{font-family:var(--disp);font-weight:700;font-size:16px}
.photo-cap{margin-top:12px;font-size:13px;color:var(--mute)}

/* ============ BLOG ============ */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px}
.post{display:flex;flex-direction:column;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.post:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.post img{width:100%;height:176px;object-fit:cover}
.post .c{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.post .tagline{font-family:var(--disp);font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange)}
.post h3{font-size:18px;margin-top:10px;line-height:1.32}
.post .go{margin-top:auto;padding-top:16px;font-family:var(--disp);font-weight:700;font-size:13.5px;color:var(--navy)}

/* ============ FAQ ============ */
.faqwrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
.faqs{display:grid;gap:12px}
.fq{border:1px solid var(--line);border-radius:var(--r-md);background:#fff;overflow:hidden}
.fq button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;background:none;border:0;cursor:pointer;padding:20px 22px;font-family:var(--disp);font-weight:700;font-size:16.5px;color:var(--navy);min-height:56px}
.fq button:hover{color:var(--orange)}
.fq .pm{flex:0 0 auto;width:26px;height:26px;border-radius:var(--r-full);background:var(--cream);color:var(--orange);display:flex;align-items:center;justify-content:center;font-size:19px;line-height:1;transition:transform .2s ease}
.fq.open .pm{transform:rotate(45deg)}
.fq .ans{display:none;padding:0 22px 22px;font-size:16px;color:var(--slate);line-height:1.6}
.fq.open .ans{display:block}
.askbox{background:#F04A2B;color:#fff;border-radius:var(--r-xl);padding:32px 30px}
.askbox h3{font-size:22px;color:#fff}
.askbox p{margin-top:12px;color:rgba(255,255,255,.94);font-size:16.5px}
.askbox .btn{margin-top:22px;width:100%;background:#ffffff;color:#F04A2B;font-weight:700;border-radius:16px;min-height:53px;padding:0 26px}
.askbox .btn:hover{background:#ffffff;color:#d83c1f;box-shadow:0 8px 24px rgba(0,0,0,.15)}
.askbox .contact{margin-top:22px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2);display:grid;gap:9px;font-size:15.5px}
.askbox .contact a{text-decoration:none;color:#fff;display:flex;gap:10px;align-items:center}
.askbox .contact a:hover{color:rgba(255,255,255,.85)}

/* ============ RED BAND BANNER ============ */
.redband{background:#F04A2B;color:#fff;padding:48px 20px;text-align:center}
.redband h2{font-family:var(--disp);font-size:clamp(22px,3.2vw,38px);font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:#fff;margin:0}
.redband h2 i{font-style:italic;font-weight:400;font-family:var(--body);text-transform:uppercase}

/* ============ 4 METRIC CARDS ============ */
.metric-section{background:#FAF8F5;padding:48px 0 64px}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.m-card{background:#fff;border:1.5px solid #FFE7DF;border-radius:var(--r-xl);padding:42px 20px;text-align:center;box-shadow:0 4px 18px rgba(240,74,43,.05);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:160px}
.m-card h3{font-family:var(--disp);font-size:clamp(24px,2.4vw,34px);font-weight:800;color:#F04A2B;letter-spacing:-.02em;line-height:1.15;margin:0}
.m-card p{margin-top:10px;font-size:14.5px;color:var(--slate);line-height:1.4;margin:10px 0 0}
@media(max-width:900px){.metric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.metric-grid{grid-template-columns:1fr}}

/* ============ METHOD STEP CARDS & ICONS ============ */
.mcard .step-head{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 20px;display:flex;align-items:center;gap:16px;margin-bottom:20px}
.mcard .step-head .icon-box{width:48px;height:48px;background:#F04A2B;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex:0 0 auto}
.mcard .step-head h3{color:#F04A2B;margin:0;font-size:22px}
.mcard .step-head .step-lbl{font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}

/* ============ DEPTH CARDS ============ */
.door.accent{border:1.5px solid #F04A2B;box-shadow:0 12px 34px rgba(240,74,43,.12)}
.door.accent .cap{background:#ffffff}
.door .btn-dark-outline{background:#fff;color:var(--navy);border:1.5px solid var(--navy)}
.door .btn-dark-outline:hover{background:var(--navy);color:#fff}

/* ============ FINAL CTA SECTION (Solid Red #F04A2B) ============ */
.final{text-align:center;background:#F04A2B;color:#fff;padding:84px 0}
.final.dark{background:#1C1A17;color:#fff}
.final .eyebrow{color:rgba(255,255,255,.9);letter-spacing:.16em;font-weight:700}
.final.dark .eyebrow{color:#F04A2B}
.final h2{font-size:clamp(30px,4vw,46px);max-width:26ch;margin:14px auto 0;letter-spacing:-.03em;color:#fff}
.final.dark h2{color:#fff}
.final .lede{margin:18px auto 0;max-width:58ch;color:rgba(255,255,255,.95)}
.final.dark .lede{color:#C9C0B6}
.final .cta-row{justify-content:center;margin-top:32px;gap:16px}
.final .btn-light{background:#ffffff;color:#F04A2B;font-weight:700}
.final .btn-light:hover{background:#ffffff;transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.18)}
.final .btn-outline-l{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.8);border-radius:var(--r-full)}
.final .btn-outline-l:hover{border-color:#fff;background:rgba(255,255,255,.14)}
.final.dark .btn-outline-l{border-color:rgba(255,255,255,.4)}
.final.dark .btn-outline-l:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.stepline{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:34px}
.stepline div{font-size:14.5px;color:#fff;background:transparent;border:1.5px solid rgba(255,255,255,.75);border-radius:var(--r-full);padding:9px 22px;display:inline-flex;align-items:center;gap:6px}
.final.dark .stepline div{border-color:rgba(255,255,255,.3)}
.stepline b{color:#fff;font-family:var(--disp);font-weight:800}

/* ============ FOOTER (White) ============ */
footer{background:#ffffff;color:var(--slate);padding:64px 0 28px;font-size:15.5px;border-top:1px solid var(--line)}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.15fr;gap:38px}
footer .mk{height:34px;margin-bottom:16px}
footer h4{font-family:var(--disp);font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);margin-bottom:16px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
footer a{text-decoration:none;color:var(--slate)}
footer a:hover{color:var(--orange)}
.socials{display:flex;gap:12px;margin-top:18px}
.socials a{width:40px;height:40px;border-radius:var(--r-full);background:var(--orange);border:1.5px solid var(--orange);display:flex;align-items:center;justify-content:center;color:#ffffff;transition:all .22s ease}
.socials a:hover{background:#ffffff;border-color:var(--orange);color:var(--orange);transform:translateY(-2px);box-shadow:0 6px 16px rgba(240,74,43,.25)}
.socials a svg{width:18px;height:18px;fill:currentColor}
.fbot{margin-top:46px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13.5px;color:var(--mute)}

/* ============ CONTACT PAGE REDESIGN ============ */
.contact-founder-tag{display:flex;align-items:center;gap:12px;margin-top:24px}
.contact-founder-tag img{width:36px;height:36px;border-radius:999px;object-fit:cover;flex:0 0 auto}
.contact-founder-tag .info{font-size:13.5px;color:var(--slate);line-height:1.35}
.contact-founder-tag .nm{font-family:var(--disp);font-weight:700;color:var(--navy)}

.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.way{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:26px 26px 28px;display:flex;flex-direction:column}
.way .way-badge{display:inline-block;width:100%;text-align:center;padding:8px 12px;border-radius:8px;font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
.way .way-badge.a{background:#FFE7DF;color:#B93518}
.way .way-badge.b{background:#E9EBFF;color:#1F2FCC}
.way .way-badge.c{background:#F3EEE9;color:#4A433B}
.way h3{font-size:21px;margin:0 0 8px}
.way .sub{font-size:14.5px;color:var(--slate);line-height:1.5;margin-bottom:20px}

.cxgrid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:44px;align-items:start}
.cbox{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:32px 30px}
.cbox h3{font-size:21px;color:#F04A2B;margin-bottom:20px}
.callout-hint{background:#FAF8F5;border-radius:12px;padding:14px 16px;font-size:13px;color:var(--slate);display:flex;gap:12px;align-items:flex-start;margin-top:22px;line-height:1.45}

.expect-list{list-style:none;margin:0;padding:0;display:grid;gap:0}
.expect-item{position:relative;padding-left:18px;padding-top:12px;padding-bottom:12px;border-bottom:1px solid #F3EEE9}
.expect-item:first-child{padding-top:0}
.expect-item:last-child{border-bottom:0;padding-bottom:0}
.expect-item:before{content:"";position:absolute;left:0;top:20px;width:6px;height:6px;border-radius:50%;background:#F04A2B}
.expect-item:first-child:before{top:8px}
.expect-item .t{font-family:var(--disp);font-weight:700;font-size:15px;color:#1C1A17;line-height:1.35;margin-bottom:3px;display:block}
.expect-item .d{font-size:14px;color:var(--slate);line-height:1.5;margin:0;display:block}

.notbook-list{display:grid;gap:0;margin-top:36px}
.notbook-row{border-bottom:1px solid rgba(255,255,255,0.22);padding:24px 0;display:grid;grid-template-columns:48px 1fr 30px 1.4fr;gap:20px;align-items:center}
.notbook-row:first-child{border-top:1px solid rgba(255,255,255,0.22)}
.notbook-num{width:36px;height:36px;border-radius:8px;background:#fff;color:#F04A2B;display:flex;align-items:center;justify-content:center;font-family:var(--disp);font-weight:800;font-size:13.5px}
.notbook-title{font-size:18px;font-weight:700;color:#fff;line-height:1.35}
.notbook-arrow{color:rgba(255,255,255,0.8);font-size:18px}
.notbook-desc{font-size:15px;color:rgba(255,255,255,0.92);line-height:1.5}

@media(max-width:900px){
  .ways,.cxgrid{grid-template-columns:1fr}
  .notbook-row{grid-template-columns:40px 1fr;gap:12px}
  .notbook-arrow{display:none}
  .notbook-desc{grid-column:2 / -1;margin-top:4px}
}

/* ============ RESPONSIVE ============ */
@media(max-width:1080px){
  .menu,.nav .navcta{display:none}
  .burger{display:flex}
  .hero .in{grid-template-columns:1fr;gap:54px;padding:52px 24px 56px}
  .fquote{left:0;width:min(300px,84%)}
  .doors,.method,.svcs,.cases,.quotes,.work,.posts{grid-template-columns:1fr 1fr}
  .vals{grid-template-columns:1fr 1fr}
  .people,.faqwrap,.band .in{grid-template-columns:1fr}
  .proofbar .g{grid-template-columns:1fr 1fr}
  .pcell{border-bottom:1px solid var(--line)}
  .pcell:nth-child(2){border-right:0}
  .fgrid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  body{font-size:17px}
  section{padding:64px 0}
  .wrap,.hero .in,.nav,.topbar .in,.partners .in,.band .in{padding-left:20px;padding-right:20px}
  .doors,.method,.svcs,.cases,.quotes,.work,.posts,.vals,.fgrid{grid-template-columns:1fr}
  .proofbar .g{grid-template-columns:1fr}
  .pcell:first-child{padding-left:20px}
  .pcell{border-right:0}
  .cta-row .btn{width:100%}
  .topbar .in{justify-content:center;text-align:center;font-size:12.5px}
  .topbar .tbmeta{display:none}
  .hero h1{font-size:clamp(32px,8.4vw,40px)}
  .hero .lede{font-size:17px}
  .band .acts .btn{width:100%}
  .partners .in{justify-content:center;text-align:center}
  .logos{gap:26px;justify-content:center}
}

/* ============ PERFECT MOBILE RESPONSIVENESS OVERRIDES ============ */
html, body {
  max-width: 100vw !important;
  overflow-x: hidden !important;
}

@media (max-width: 900px) {
  .method, .doors, .svcs, .cases, .quotes, .work, .posts, .gaterow, .leaks, .objs, .xlinks, .cxgrid, .fitgrid, .story, .people, .proofbar .g, .metric-grid, .fgrid, .single-hero-grid, .why-section-full, .csways, .mv, .xl, .gal, .deliv, .smrow, .cases.four {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  .phead, .shero .in, .hero .in, .policy, .bpwrap, .rescall, .cshead {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .rescall .fig {
    font-size: 36px !important;
  }
  .art {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    padding: 20px !important;
  }
  .artmeta .r {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
  }
  .artmeta .k {
    padding-top: 0 !important;
  }
}

@media (max-width: 600px) {
  .wrap, .hero .in, .shero .in, .nav, .partners .in, section {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  h1, .hero h1, .shero h1, .shead h1 {
    font-size: clamp(26px, 7vw, 36px) !important;
  }
  h2, .shead h2, .partners h2, .redband h2, .final h2 {
    font-size: clamp(22px, 6vw, 28px) !important;
  }
  .lede {
    font-size: 16px !important;
  }
  .btn {
    width: 100% !important;
    justify-content: center !important;
  }
  .cta-row {
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 12px !important;
  }
  .cta-row .btn, .cta-row .tlink {
    width: 100% !important;
    text-align: center !important;
  }
  .mcard, .door, .svc, .case, .q, .dv, .leak, .obj, .xlink, .cbox, .way {
    padding: 20px 18px !important;
  }
  .proofbar .g {
    grid-template-columns: 1fr !important;
  }
  .pcell {
    padding: 20px 16px !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--line) !important;
  }
  .pcell:last-child {
    border-bottom: 0 !important;
  }
  .fcard .ph {
    transform: none !important;
  }
  .fquote {
    position: relative !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    margin-top: 16px !important;
    transform: none !important;
  }
  .fbadge {
    position: relative !important;
    top: 0 !important;
    right: 0 !important;
    display: inline-block !important;
    margin-bottom: 12px !important;
  }
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}

/* ============ SERVICES HUB + 6 CAPABILITY PAGES ============ */
/* page hero */
.shero{position:relative;overflow:hidden;background:linear-gradient(180deg,#FFF9F6 0%,#fff 80%);border-bottom:1px solid var(--line)}
.shero:before{content:"";position:absolute;right:-220px;top:-240px;width:620px;height:620px;background:radial-gradient(circle,rgba(245,135,38,.20),rgba(245,135,38,0) 68%);pointer-events:none}
.shero .in{position:relative;max-width:var(--wrap);margin:0 auto;padding:62px 32px 58px;display:grid;grid-template-columns:1.12fr .88fr;gap:52px;align-items:start}
.shero .crumb{font-family:var(--disp);font-weight:700;font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--mute)}
.shero .crumb a{text-decoration:none;color:var(--orange)}
.shero h1{font-size:clamp(30px,3.7vw,45px);letter-spacing:-.032em;margin-top:14px}
.shero h1 .hl{color:var(--orange)}
.shero .lede{margin-top:18px;max-width:52ch}
.painbox{background:#fff;border:1px solid var(--line);border-top:4px solid var(--orange);border-radius:var(--r-lg);padding:26px 26px 28px;box-shadow:var(--sh-2)}
.painbox .t{font-family:var(--disp);font-weight:800;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--orange)}
.painbox h2{font-size:20px;margin-top:12px;letter-spacing:-.02em}
.painbox p{margin-top:12px;font-size:16px;color:var(--slate);line-height:1.56}
.painbox .cost{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:14.5px;color:var(--navy);font-weight:600}

/* deliverables: concrete artefacts */
.deliv{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px}
.dv{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 24px}
.dv .lbl{font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.dv h3{font-size:18.5px;margin-top:10px}
.dv p{margin-top:10px;font-size:15.5px;color:var(--slate);line-height:1.55}
.dv ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px}
.dv li{position:relative;padding-left:20px;font-size:15px;color:var(--slate);line-height:1.5}
.dv li:before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:2px;background:var(--orange2)}
.cream .dv{background:#fff}

/* how it runs: numbered vertical steps */
.stack{display:grid;gap:16px;margin-top:42px}
.stp{display:grid;grid-template-columns:76px 1fr;gap:22px;align-items:start;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.15);border-radius:var(--r-lg);padding:24px 26px}
.stp .n{font-family:var(--disp);font-weight:800;font-size:26px;letter-spacing:-.03em;color:var(--orange2)}
.stp h3{font-size:20px}
.stp p{margin-top:9px;font-size:16.5px;color:#C9C0B6;line-height:1.56}
.stp .out{margin-top:12px;font-size:14.5px;color:#fff;font-weight:600}

/* the 6 leaks */
.leaks{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.lk{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:22px 22px}
.lk .n{font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#A69C90}
.lk h3{font-size:17px;margin-top:8px}
.lk p{margin-top:9px;font-size:15px;color:var(--slate);line-height:1.5}
.lk .fix{margin-top:12px;font-family:var(--disp);font-weight:700;font-size:12.5px;letter-spacing:.02em;color:var(--mute)}
.lk.on{border-color:var(--orange);box-shadow:0 10px 28px rgba(240,74,43,.13)}
.lk.on .n,.lk.on .fix{color:var(--orange)}

/* named result callout */
.rescall{margin-top:40px;display:grid;grid-template-columns:200px 1fr;gap:34px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:30px 32px;box-shadow:var(--sh-1)}
.rescall .fig{font-family:var(--disp);font-weight:800;font-size:46px;letter-spacing:-.04em;color:var(--orange);line-height:1}
.rescall .who{margin-top:6px;font-family:var(--disp);font-weight:700;font-size:14.5px;color:var(--navy)}
.rescall .when{margin-top:4px;font-family:var(--disp);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#A69C90}
.rescall .body p{font-size:16.5px;color:var(--slate);line-height:1.58}
.rescall .body p+p{margin-top:12px}

/* cross-links to the other capabilities */
.xl{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px}
.xlk{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:20px 20px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.xlk:hover{transform:translateY(-3px);box-shadow:var(--sh-2);border-color:#CFC6BC}
.xlk .n{font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.12em;color:var(--orange)}
.xlk h3{font-size:16.5px;margin-top:8px}
.xlk p{margin-top:8px;font-size:14.5px;color:var(--slate);line-height:1.48}

/* system map on the hub */
.sysmap{display:grid;gap:14px;margin-top:42px}
.smrow{display:grid;grid-template-columns:66px 1.05fr 1.35fr auto;gap:24px;align-items:center;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:var(--r-md);padding:20px 24px;text-decoration:none}
.smrow:hover{box-shadow:var(--sh-2)}
.smrow .n{font-family:var(--disp);font-weight:800;font-size:22px;color:var(--orange);letter-spacing:-.03em}
.smrow h3{font-size:18px}
.smrow .part{margin-top:5px;font-family:var(--disp);font-weight:700;font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#A69C90}
.smrow .lkline{font-size:15.5px;color:var(--slate);line-height:1.5}
.smrow .go{font-family:var(--disp);font-weight:700;font-size:13.5px;color:var(--orange);white-space:nowrap}
.smrow:nth-child(2){border-left-color:var(--orange2)}
.smrow:nth-child(3){border-left-color:var(--blue)}
.smrow:nth-child(4){border-left-color:var(--navy)}
.smrow:nth-child(5){border-left-color:var(--orange)}
.smrow:nth-child(6){border-left-color:var(--orange2)}
.dark .owned{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.15);border-left-color:var(--orange2);box-shadow:none}
.dark .owned p{color:#C9C0B6}
.dark .owned b{color:#fff}
.gal{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:40px}
.gal figure{margin:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.gal img{width:100%;height:300px;object-fit:cover}
.gal figcaption{padding:14px 18px 16px;font-size:14.5px;color:var(--slate)}
.gal figcaption b{font-family:var(--disp);color:var(--navy);display:block;font-size:15.5px}
@media(max-width:1080px){
  .shero .in{grid-template-columns:1fr;gap:36px;padding:48px 24px 52px}
  .deliv,.leaks,.xl{grid-template-columns:1fr 1fr}
  .smrow{grid-template-columns:52px 1fr;row-gap:10px}
  .smrow .lkline,.smrow .go{grid-column:2}
}
@media(max-width:720px){
  .deliv,.leaks,.xl,.gal{grid-template-columns:1fr}
  .rescall{grid-template-columns:1fr;gap:20px;padding:26px 22px}
  .stp{grid-template-columns:1fr;gap:8px;padding:22px 20px}
  .gal img{height:230px}
}

/* ============ about.html (founder story + measurable commitments) ============ */
.story{display:grid;grid-template-columns:.82fr 1.18fr;gap:48px;align-items:start;margin-top:44px}
.story .ph{border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-3)}
.story .ph img{width:100%;height:auto}
.storyprose p{margin-top:17px;font-size:17.5px;color:var(--slate);line-height:1.68}
.storyprose p:first-child{margin-top:0}
.storyprose b{color:var(--navy);font-weight:700}
.storysig{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.p-about .val .m{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-family:var(--disp);font-weight:700;font-size:13.5px;line-height:1.45;color:var(--orange)}

/* ============ career.html (fit screen) ============ */
.fitgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:44px}
.fitcol{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:28px 26px;border-top:4px solid var(--orange)}
.fitcol.no{border-top-color:var(--navy)}
.fitcol .hd{font-family:var(--disp);font-weight:800;font-size:19px;color:var(--navy);letter-spacing:-.02em}
.fitcol ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px}
.fitcol li{display:flex;gap:11px;font-size:16px;color:var(--slate);line-height:1.52}
.fitcol li:before{content:"+";flex:0 0 auto;width:22px;height:22px;border-radius:var(--r-full);background:#FFE7DF;color:#B93518;font-family:var(--disp);font-weight:800;font-size:14px;line-height:22px;text-align:center;margin-top:2px}
.fitcol.no li:before{content:"\00D7";background:#F3EEE9;color:#4A433B}

/* ============ privacy-policy.html ============ */
.plainbox{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:var(--r-lg);padding:28px 28px 24px;box-shadow:var(--sh-2)}
.plainbox .ttl{font-family:var(--disp);font-weight:800;font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:var(--orange)}
.plainbox ul{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:11px}
.plainbox li{display:flex;gap:11px;font-size:16px;color:var(--slate);line-height:1.55}
.plainbox li:before{content:"";flex:0 0 auto;width:7px;height:7px;border-radius:2px;margin-top:9px;background:var(--orange2)}
.plainbox .fine,.ptoc .fine,.howto .fine{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--mute);line-height:1.5}
.policy{display:grid;grid-template-columns:.62fr 1.38fr;gap:52px;align-items:start}
.ptoc{position:sticky;top:112px;background:var(--cream);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px 24px 22px}
.ptoc .ttl{font-family:var(--disp);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--navy)}
.ptoc ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px}
.ptoc a{text-decoration:none;font-size:15.5px;color:var(--slate)}
.ptoc a:hover{color:var(--orange)}
.pbody{display:grid;gap:34px}
.pblock{border-top:1px solid var(--line);padding-top:26px}
.pblock:first-child{border-top:0;padding-top:0}
.pblock .sn{font-family:var(--disp);font-weight:700;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange)}
.pblock h3{font-size:24px;margin-top:9px;letter-spacing:-.025em}
.pblock p{margin-top:14px;font-size:17px;color:var(--slate);line-height:1.66}
.pblock b{color:var(--navy)}
.pblock .dl{margin-top:20px;gap:16px}
.pblock .dl .r{grid-template-columns:110px 1fr}
.pblock .note{margin-top:18px;background:var(--cream);border-radius:var(--r-md);padding:18px 20px;font-size:16px}
.howto{margin-top:22px;background:#F04A2B;color:#fff;border-radius:var(--r-lg);padding:26px 26px 22px}
.howto .ttl{font-family:var(--disp);font-weight:800;font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:#fff}
.howto p{margin-top:14px;font-size:16.5px;color:rgba(255,255,255,.94);line-height:1.62}
.howto b,.howto a{color:#fff}
.howto .fine{border-top-color:rgba(255,255,255,.2);color:rgba(255,255,255,.8)}
.howto .fine a{color:#fff}
.p-privacy .final .lede a{color:#fff}
@media(max-width:1080px){
  .story,.fitgrid,.policy{grid-template-columns:1fr;gap:32px}
  .ptoc{position:static}
}

/* ============ PROGRAM PAGES: fed.html, pcs.html, agency.html ============ */
.leaks{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px}
.leak{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:var(--r-lg);padding:26px 24px}
.leak .no{font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--orange)}
.leak h3{font-size:19px;margin-top:10px;letter-spacing:-.02em}
.leak p{margin-top:11px;font-size:15.5px;color:var(--slate);line-height:1.55}
.leak .cost{margin-top:15px;padding-top:13px;border-top:1px solid var(--line);font-size:14.5px;color:var(--navy);font-weight:600}

.gaterow{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.gaterow.g4{grid-template-columns:repeat(4,1fr);gap:20px}
.gate{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);overflow:hidden;display:flex;flex-direction:column}
.gate .top{padding:24px 26px 20px;background:linear-gradient(180deg,#FFF3ED,#fff);border-bottom:1px solid var(--line)}
.gate .top .no{font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--orange)}
.gate .top h3{font-size:21px;margin-top:9px;letter-spacing:-.025em}
.gate .bd{padding:22px 26px 26px;flex:1;display:flex;flex-direction:column}
.gate .lbl2{margin-top:18px;font-family:var(--disp);font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#A69C90}
.gate .ulist li{font-size:15.5px}
.gatelock{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:14.5px;color:var(--slate);line-height:1.5}
.gatelock b{color:var(--orange)}

.ownlist{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:13px 34px}
.ownlist li{display:flex;gap:11px;font-size:16px;color:var(--slate);line-height:1.5}
.ownlist li:before{content:"\2713";flex:0 0 auto;font-family:var(--disp);font-weight:800;font-size:14px;color:var(--orange)}

.objs{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:42px}
.obj{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 24px}
.obj h3{font-size:18.5px;letter-spacing:-.02em}
.obj p{margin-top:12px;font-size:16px;color:var(--slate);line-height:1.58}
.dark .obj{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.15)}
.dark .obj p{color:#C9C0B6}

.terms{list-style:none;margin:36px 0 0;padding:0;display:grid;gap:13px}
.terms li{background:#fff;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:var(--r-md);padding:18px 20px;font-size:16.5px;color:var(--slate);line-height:1.58}
.terms li b{color:var(--navy)}

.xlinks{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:38px}
.xlinks.x3{grid-template-columns:repeat(3,1fr)}
.xlink{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 26px;transition:transform .2s ease,box-shadow .2s ease}
a.xlink:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.xlink .k{font-family:var(--disp);font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange)}
.xlink h3{font-size:20px;margin-top:10px;letter-spacing:-.025em}
.xlink p{margin-top:10px;font-size:15.5px;color:var(--slate);line-height:1.55}
.xlink .go{margin-top:16px;font-family:var(--disp);font-weight:700;font-size:13.5px;color:var(--navy)}
.method.m4{grid-template-columns:repeat(4,1fr);gap:20px}

@media(max-width:1080px){
  .leaks,.gaterow,.gaterow.g4,.method.m4,.xlinks.x3{grid-template-columns:1fr 1fr}
  .ownlist{grid-template-columns:1fr}
}
@media(max-width:720px){
  .leaks,.gaterow,.gaterow.g4,.method.m4,.objs,.xlinks,.xlinks.x3,.cases[style]{grid-template-columns:1fr}
}

/* ============ PROOF PAGE (proof.html) ============ */
.cases.four{grid-template-columns:repeat(4,1fr)}
.cases.four .case .v{font-size:32px}
.cases.four .case p{font-size:14.5px}
.cs{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:30px 30px 28px;box-shadow:var(--sh-1);margin-top:26px;scroll-margin-top:110px}
.cs:first-of-type{margin-top:44px}
.cshead{display:grid;grid-template-columns:1fr 210px;gap:26px;align-items:start;padding-bottom:22px;border-bottom:1px solid var(--line)}
.cs h3{font-size:26px;margin-top:14px;letter-spacing:-.028em}
.cs .sub{margin-top:9px;font-size:16.5px;color:var(--slate);line-height:1.5}
.csnum{background:var(--cream);border-radius:var(--r-lg);padding:20px 22px;text-align:right}
.csnum .v{font-family:var(--disp);font-weight:800;font-size:38px;letter-spacing:-.035em;color:var(--orange);line-height:1}
.csnum .k{margin-top:6px;font-size:14.5px;color:var(--slate);line-height:1.35}
.csnum .meta{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-family:var(--disp);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#A69C90}
.csdl{display:grid;gap:16px;margin-top:22px}
.csdl .r{display:grid;grid-template-columns:158px 1fr;gap:20px;align-items:start}
.csdl .k{font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);padding-top:5px}
.csdl .v{font-size:16.5px;color:var(--slate);line-height:1.58}
.csdl .v b{color:var(--navy)}
.csways{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:26px}

/* ============ PROJECTS PAGE (projects.html) ============ */
.wk .r{display:block;margin-top:8px;font-size:14px;color:var(--slate);line-height:1.45}
.wk .flag{display:block;margin-top:12px;font-family:var(--disp);font-weight:700;font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:#A69C90}
.wk .flag.named{color:#B93518}

/* ============ BLOGS PAGE (blogs.html) ============ */
.art{display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:30px;box-shadow:var(--sh-1);margin-top:24px;scroll-margin-top:110px;transition:transform .2s ease,box-shadow .2s ease}
.art:first-of-type{margin-top:44px}
.art:hover{box-shadow:var(--sh-2)}
.artimg{border-radius:var(--r-lg);overflow:hidden;background:var(--cream);display:flex;align-items:center;justify-content:center;aspect-ratio:3/2}
.artimg img{width:100%;height:100%;object-fit:cover;display:block}
.tag{display:inline-block;font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);background:var(--cream);padding:6px 14px;border-radius:100px;margin-bottom:10px}
.tag-a{color:#F04A2B;background:#FFF5F0}
.tag-b{color:#F04A2B;background:#FFF5F0}
.tag-c{color:#F04A2B;background:#FFF5F0}
.art h3{font-family:var(--disp);font-weight:800;font-size:24px;color:#000000;margin-top:10px;line-height:1.25;letter-spacing:-.022em}
.artbody .lede{margin-top:12px;font-size:16.5px;color:var(--slate);line-height:1.6}
.artmeta{display:grid;gap:14px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.artmeta .r{display:grid;grid-template-columns:160px 1fr;gap:18px;align-items:start}
.artmeta .k{font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);padding-top:3px}
.artmeta .v{font-size:15.5px;color:var(--slate);line-height:1.55}
.artmeta .v b{color:#000000;font-weight:700}
.art .cta-row{display:flex;align-items:center;gap:18px;margin-top:24px;flex-wrap:wrap}
.art .cta-row .btn{min-height:46px;padding:0 22px;font-size:14.5px;border-radius:14px}
.art .cta-row .tlink{font-family:var(--disp);font-weight:700;font-size:14.5px;color:var(--navy);text-decoration:none;border-bottom:1.5px solid transparent;transition:all .18s ease}
.art .cta-row .tlink:hover{color:var(--orange);border-bottom-color:var(--orange)}

/* ============ CONTACT PAGE (contact.html) ============ */
.ways{display:grid;grid-template-columns:1.14fr 1fr 1fr;gap:22px;margin-top:44px}
.way{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:28px 26px;display:flex;flex-direction:column}
.way.pri{border-color:var(--orange);box-shadow:0 12px 34px rgba(240,74,43,.13)}
.way h3{font-size:22px;margin-top:15px;letter-spacing:-.025em}
.way .sub{margin-top:9px;font-size:15.5px;color:var(--slate);line-height:1.5}
.way .dl{margin-top:20px}
.way .dl .r{grid-template-columns:74px 1fr}
.way .btn{margin-top:auto;width:100%}
.cxgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:42px}
.cbox{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px}
.cbox h3{font-size:20px}
.cbox .ulist li b{color:var(--navy)}

@media(max-width:1080px){
  .cases.four{grid-template-columns:1fr 1fr}
  .csways,.ways{grid-template-columns:1fr}
  .art{grid-template-columns:1fr}
}
@media(max-width:900px){
  .cshead{grid-template-columns:1fr}
  .csnum{text-align:left}
  .csdl .r,.artmeta .r{grid-template-columns:1fr;gap:4px}
  .cxgrid{grid-template-columns:1fr}
}
@media(max-width:720px){
  .cases.four{grid-template-columns:1fr}
  .cs,.art{padding:22px 20px}
  .way .btn{width:100%}
}
/* blogs.html: program cards sit in the narrow FAQ-grid column, stack them */
.faqwrap .csways{grid-template-columns:1fr;gap:14px}
.lk .fix a{text-decoration:none;color:var(--orange)}
.lk .fix a:hover{text-decoration:underline}
.owned .tlink{margin-top:12px}
.quotes.two{grid-template-columns:repeat(2,1fr)}
@media(max-width:720px){.quotes.two{grid-template-columns:1fr}}

/* ============ SINGLE BLOG PAGE STYLES ============ */
.single-hero-grid{display:grid;grid-template-columns:1.2fr 0.8fr;gap:40px;align-items:center}
@media(max-width:900px){.single-hero-grid{grid-template-columns:1fr;gap:28px}}

/* ============ BRAND ELEMENTS (Brand Guideline V2.0) ============
   1. Round cornered rectangles with smooth drop shadow.
   2. 2 point gradients with 0 opacity at 1 end.
   3. 8 point star pattern, backdrop only, never over body copy.
================================================================ */

/* The signature panel band. */
.bpanel{position:relative;overflow:hidden;background:#F04A2B;color:#fff}
.bpanel:before{content:"";position:absolute;left:0;top:0;bottom:0;width:min(34%,420px);
  background:#F04A2B;
  border-top-right-radius:var(--r-panel);border-bottom-right-radius:0;pointer-events:none;opacity:.97}
.bpanel:after{content:"";position:absolute;left:min(34%,420px);top:0;bottom:0;width:120px;
  background:linear-gradient(90deg,rgba(240,74,43,.20),rgba(240,74,43,0));pointer-events:none}
.bpanel > .wrap{position:relative;z-index:2}
@media (max-width:900px){
  .bpanel:before{width:100%;height:124px;bottom:auto;border-top-right-radius:0;border-bottom-right-radius:96px}
  .bpanel:after{display:none}
}

/* 2 point gradient rule, 0 opacity at 1 end. */
.grule{height:4px;border:0;margin:0;background:var(--grad-fade);border-radius:var(--r-full)}
.grule.short{max-width:140px}

/* 8 point star pattern backdrop, low opacity, decorative only. */
.starfield{position:relative;overflow:hidden}
.starfield:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.07;
  background-image:url("../img/star-pattern.svg");background-size:132px 132px;background-repeat:repeat}
.starfield > .wrap{position:relative;z-index:2}

/* The guiding star used as a list marker and small accent. */
.starlist{list-style:none;padding:0;margin:0}
.starlist li{position:relative;padding-left:30px;margin-top:12px;color:var(--slate);font-size:16.5px;line-height:1.6}
.starlist li:before{content:"";position:absolute;left:0;top:.34em;width:16px;height:16px;
  background:url("../img/star-mark.svg") center/16px 16px no-repeat}
.starlist.on-dark li{color:#C9C0B6}

/* Mission and vision pair, brand voice block. */
.mv{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:34px}
.mv .c{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;box-shadow:var(--sh-1)}
.mv .c .t{font-family:var(--disp);font-weight:800;font-size:19px;color:var(--orange)}
.mv .c p{margin-top:12px;color:var(--slate);font-size:16.5px;line-height:1.62}
.mv.on-dark .c{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);box-shadow:none}
.mv.on-dark .c p{color:#C9C0B6}
.mv.on-dark .c .t{color:var(--orange2)}
@media (max-width:820px){.mv{grid-template-columns:1fr}}

/* Brand line used to close a belief section. */
.bline{margin-top:26px;font-family:var(--disp);font-weight:800;font-size:clamp(19px,2.1vw,24px);
  letter-spacing:-.02em;color:var(--navy)}
.bline.on-dark{color:#fff}
.bline em{font-style:normal;color:var(--orange)}
.bline.on-dark em{color:var(--orange2)}

/* Two column page head used where a belief frame sits beside the headline. */
.phead{display:grid;grid-template-columns:1.12fr .88fr;gap:52px;align-items:start}
.phead .shead{max-width:none}
@media (max-width:900px){.phead{grid-template-columns:1fr;gap:32px}}

/* Layout for the signature gradient panel band. */
.bpanel .wrap{padding-top:78px;padding-bottom:78px}
.bpwrap{display:grid;grid-template-columns:.9fr 1.6fr;gap:56px;align-items:start}
.bptitle h2{color:#fff;font-size:clamp(28px,3.3vw,42px);margin-top:14px;letter-spacing:-.03em}
.bpbody .lede.on-dark{color:#C9C0B6;max-width:64ch}
@media (max-width:900px){
  .bpwrap{grid-template-columns:1fr;gap:30px}
  .bpanel .wrap{padding-top:154px;padding-bottom:60px}
  .bptitle h2{color:#fff}
}

/* ============ WHY TINOVA EXISTS (Image 2 Full-Width Left Panel) ============ */
.why-section-full {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  align-items: center;
  width: 100%;
  padding: 40px 0;
}
.why-section-full .left-panel {
  background: #F04A2B;
  color: #fff;
  padding: 72px 48px 72px max(24px, calc((100vw - 1200px)/2));
  border-top-right-radius: 120px;
  border-bottom-right-radius: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 420px;
}
.why-section-full .left-panel .eyebrow {
  color: rgba(255,255,255,.9);
  letter-spacing: .15em;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
}
.why-section-full .left-panel h2 {
  color: #fff;
  font-size: clamp(28px, 3.4vw, 42px);
  line-height: 1.15;
  margin-top: 16px;
  font-family: var(--disp);
  font-weight: 800;
}
.why-section-full .right-content {
  padding: 20px max(24px, calc((100vw - 1200px)/2)) 20px 48px;
}
.mv-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}
.mv-card{background:#fff;border:1.5px solid #FFE7DF;border-radius:var(--r-xl);padding:28px 24px;box-shadow:0 4px 14px rgba(240,74,43,.04)}
.mv-card .card-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.mv-card .icon-box{width:48px;height:48px;background:#F04A2B;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex:0 0 auto}
.mv-card h3{color:#F04A2B;font-size:22px;margin:0}
.mv-card p{color:var(--slate);font-size:15px;line-height:1.55;margin:0}
@media(max-width:960px){
  .why-section-full{grid-template-columns:1fr}
  .why-section-full .left-panel{padding:48px 24px;border-top-right-radius:60px;min-height:auto}
  .why-section-full .right-content{padding:32px 24px}
  .mv-cards{grid-template-columns:1fr}
}

/* ============ REVISED METRIC CARDS (Image 4 Design) ============ */
.metric-section {
  padding: 56px 0;
  background: #FAF8F5;
}
.metric-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.m-card {
  background: #ffffff;
  border: 1.5px solid #FFE7DF;
  border-radius: 24px;
  padding: 32px 20px;
  text-align: center;
  box-shadow: 0 4px 18px rgba(240, 74, 43, 0.05);
  transition: transform .2s ease, box-shadow .2s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.m-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 26px rgba(240, 74, 43, 0.12);
}
.m-card h3, .m-card .m-num {
  font-family: var(--disp);
  font-weight: 800;
  font-size: 28px;
  color: #F04A2B;
  margin: 0 0 6px 0;
  line-height: 1.15;
  letter-spacing: -.02em;
}
.m-card p, .m-card .m-lbl {
  font-size: 14.5px;
  color: var(--slate);
  margin: 0;
  font-weight: 500;
  line-height: 1.35;
}
@media (max-width: 900px) {
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
  .metric-grid { grid-template-columns: 1fr; }
}

/* ============ REVISED PROCESS / STEP CARDS 3x2 GRID (Image 2 Design) ============ */
.process-grid-3x2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 44px;
}
.process-card-white {
  background: #ffffff;
  border-radius: 24px;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(230, 222, 215, 0.6);
  transition: transform .2s ease, box-shadow .2s ease;
}
.process-card-white:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}
.process-card-white .step-num {
  font-family: var(--disp);
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .1em;
  color: #F04A2B;
  margin-bottom: 10px;
}
.process-card-white h3 {
  font-size: 19px;
  color: var(--navy);
  margin: 0 0 10px 0;
  line-height: 1.3;
  font-weight: 800;
}
.process-card-white p {
  font-size: 15px;
  color: var(--slate);
  line-height: 1.55;
  margin: 0;
  flex: 1;
}
.process-card-white .output-line {
  margin-top: 20px;
  padding-top: 14px;
  border-top: 1px solid #FFE7DF;
  font-size: 13.5px;
  color: #F04A2B;
  font-weight: 700;
  line-height: 1.45;
}
@media (max-width: 1080px) {
  .process-grid-3x2 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 720px) {
  .process-grid-3x2 { grid-template-columns: 1fr; }
}

/* ============ REVISED HOW WE WORK WHITE CARDS ON RED (Image 5 -> Image 2 Design) ============ */
.hww-section-red {
  background: #F04A2B;
  color: #ffffff;
  padding: 84px 0;
}
.hww-section-red .shead h2 { color: #ffffff; }
.hww-section-red .shead .lede { color: rgba(255, 255, 255, 0.95); }
.hww-section-red .shead .eyebrow { color: rgba(255, 255, 255, 0.9); }

.hww-grid-2x2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-top: 44px;
}
.hww-card-white {
  background: #ffffff;
  border-radius: 24px;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
.hww-card-white:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.12);
}
.hww-card-white h3 {
  font-size: 19.5px;
  color: var(--navy);
  margin: 0 0 12px 0;
  font-weight: 800;
  line-height: 1.3;
}
.hww-card-white p {
  font-size: 15.5px;
  color: var(--slate);
  line-height: 1.55;
  margin: 0;
}
@media (max-width: 900px) {
  .hww-grid-2x2 { grid-template-columns: 1fr; }
}

