/* ===================== RESET & BASE ===================== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:#fff;
  color:var(--dark);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;}
img{max-width:100%;display:block;}
a,button{text-decoration:none;cursor:pointer;font:inherit;color:inherit;}
button{background:none;border:0;}
ul{list-style:none;}
svg{display:block;}

.container{width:100%;max-width:1240px;margin:0 auto;padding:0 1.5rem;}

/* ===================== COLOR SYSTEM ===================== */
:root{
  --red:#D62828;
  --red-dark:#ad1f1f;
  --blue:#083A8B;
  --blue-dark:#052860;
  --blue-tint:#eef2fb;
  --blue-tint-2:#dde6f7;
  --bg-warm:#FFF8F2;
  --dark:#242424;
  --slate:#5c5f66;
  --line:#ece1d4;
  --white:#fff;
  --gold:#f2b03c;
  --grad-red:linear-gradient(135deg,#e6472f 0%,var(--red) 60%,var(--red-dark) 100%);
  --grad-blue:linear-gradient(135deg,var(--blue) 0%,var(--blue-dark) 100%);
  --h2:clamp(1.8rem,3.2vw,2.55rem);
  --lead:1.04rem;
  --eyebrow:.74rem;
  --sec-pad:clamp(3rem,5.5vw,4.75rem);
  --header-h:88px;
}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.skip-link{position:absolute;left:.5rem;top:-3rem;z-index:200;background:var(--red);color:#fff;padding:.6rem 1rem;border-radius:0 0 8px 8px;font-weight:700;font-size:.9rem;transition:top .15s;}
.skip-link:focus{top:0;}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:4px;}
section[id]{scroll-margin-top:var(--header-h);}

/* icon helpers */
.ic{width:20px;height:20px;flex-shrink:0;}
.ic path{fill:currentColor;}
.tick{width:26px;height:26px;flex-shrink:0;}

/* ===================== SECTION HEAD SYSTEM ===================== */
h2{font-size:var(--h2);font-weight:800;line-height:1.14;letter-spacing:-.03em;color:var(--blue);margin-bottom:.8rem;}
h3{font-weight:800;letter-spacing:-.015em;color:var(--blue);}
.s-head{max-width:800px;margin:0 auto clamp(2rem,4vw,2.9rem);text-align:center;}
.s-head--left{max-width:none;margin-inline:0;text-align:left;}
.s-eyebrow{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:.85rem;font-size:var(--eyebrow);font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--red);}
.s-eyebrow::before{content:'';width:22px;height:2px;border-radius:2px;background:currentColor;flex-shrink:0;}
.s-lead,.s-head p:not(.s-eyebrow){font-size:var(--lead);color:var(--slate);line-height:1.7;}
.hl{color:var(--red);}
.s-head--dark h2{color:#fff;}
.s-head--dark .s-eyebrow,.s-head--dark .hl{color:var(--gold);}
.s-head--dark .s-lead,.s-head--dark p:not(.s-eyebrow){color:rgba(255,255,255,.85);}

.hl,.hl2{position:relative;display:inline-block;}
.hl::after,.hl2::after{content:"";position:absolute;left:.05em;right:.05em;bottom:-.15em;height:.1em;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 20' preserveAspectRatio='none'%3E%3Cpath d='M2 15 Q100 2 198 13' fill='none' stroke='black' stroke-width='7' stroke-linecap='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 20' preserveAspectRatio='none'%3E%3Cpath d='M2 15 Q100 2 198 13' fill='none' stroke='black' stroke-width='7' stroke-linecap='round'/%3E%3C/svg%3E");-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;}

/* ===================== BUTTONS ===================== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.9rem 1.9rem;border-radius:60px;font-weight:800;font-size:1rem;white-space:nowrap;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,filter .15s ease;}
.btn svg{width:18px;height:18px;fill:currentColor;flex-shrink:0;}
.btn--red{background:var(--grad-red);color:#fff;box-shadow:0 9px 22px rgba(214,40,40,.35);}
.btn--red:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(214,40,40,.48);}
.btn--blue{background:var(--grad-blue);color:#fff;box-shadow:0 9px 22px rgba(8,58,139,.32);}
.btn--blue:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(8,58,139,.45);}
.btn--light{background:#fff;color:var(--red);}
.btn--light:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.22);}
.btn--outline{border:1.5px solid rgba(255,255,255,.55);color:#fff;}
.btn--outline:hover{border-color:#fff;background:rgba(255,255,255,.12);}
.btn--sm{padding:.7rem 1.4rem;font-size:.95rem;}

/* ===================== TOP BAR ===================== */
.top-bar{background:var(--blue-dark);color:rgba(255,255,255,.92);font-size:.7rem;padding:.3rem 0;}
.top-bar-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:.9rem;white-space:nowrap;}
.top-bar-left{display:flex;align-items:center;font-weight:500;min-width:0;overflow:hidden;flex:1;}
.marquee-track{display:flex;align-items:center;gap:.55rem;white-space:nowrap;flex-shrink:0;}
.top-bar-left .dot{color:var(--gold);font-weight:700;}
.top-bar-divider{opacity:.35;}
.mq-dup{display:none;}
.top-bar-phone{color:#fff;font-weight:700;display:inline-flex;align-items:center;gap:.4rem;transition:color .15s;flex-shrink:0;}
.top-bar-phone .ic{width:13px;height:13px;}
.top-bar-phone:hover{color:var(--gold);}
@media (max-width:700px){
  .mq-dup{display:inline-flex;}
  .marquee-track{animation:marquee 12s linear infinite;}
}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none;}}

/* ===================== HEADER ===================== */
.site-header{background:#fff;position:sticky;top:0;z-index:100;border-bottom:1px solid var(--line);box-shadow:0 2px 14px rgba(8,58,139,.06);}
.header-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;}
.brand{justify-self:start;padding:.5rem 0;}
.brand img{height:58px;width:auto;}
.main-nav{grid-column:2;justify-self:center;display:flex;align-items:center;}
.nav-list{display:flex;align-items:center;gap:1.75rem;}
.nav-list>li{position:relative;}
.nav-list>li>a{position:relative;display:inline-flex;align-items:center;gap:.3rem;color:var(--dark);font-weight:600;font-size:.94rem;padding:1.15rem 0;transition:color .15s;}
.nav-list>li>a::after{content:'';position:absolute;left:0;bottom:.85rem;width:100%;height:2px;background:var(--red);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .22s ease;}
.nav-list>li>a:hover{color:var(--red);}
.nav-list>li>a:hover::after{transform:scaleX(1);}
.caret{width:9px;height:9px;fill:currentColor;flex-shrink:0;transition:transform .25s ease;}

/* --- Desktop dropdown --- */
@media (min-width:901px){
  .has-sub:hover .caret,.has-sub:focus-within .caret{transform:rotate(180deg);}
  .sub{position:absolute;top:100%;left:0;min-width:220px;padding:.4rem;background:#fff;border-radius:12px;border-top:3px solid var(--blue);box-shadow:0 22px 48px rgba(8,58,139,.2),0 2px 6px rgba(8,58,139,.08);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .22s ease,transform .25s ease,visibility .25s;z-index:120;}
  .has-sub:hover>.sub,.has-sub:focus-within>.sub{opacity:1;visibility:visible;transform:translateY(0);}
  .sub a{display:block;padding:.6rem .8rem;border-radius:8px;font-size:.88rem;font-weight:600;color:var(--blue);white-space:nowrap;transition:background .15s,color .15s;}
  .sub a:hover{background:var(--blue-tint);color:var(--blue-dark);}
}
@media (max-width:900px){
  .sub{display:none;padding-left:1rem;}
  .has-sub.open .sub{display:block;}
  .has-sub.open .caret{transform:rotate(180deg);}
  .sub a{display:block;padding:.7rem 0;font-size:.9rem;color:var(--slate);font-weight:600;}
}
.header-call{grid-column:3;justify-self:end;display:inline-flex;align-items:center;gap:.5rem;background:var(--grad-red);color:#fff;padding:.28rem .95rem .28rem .3rem;border-radius:60px;box-shadow:0 4px 14px rgba(214,40,40,.32);transition:transform .15s,box-shadow .15s,filter .15s;}
.header-call:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 8px 20px rgba(214,40,40,.45);}
.header-call .ring{width:32px;height:32px;flex-shrink:0;display:grid;place-items:center;background:rgba(255,255,255,.22);border-radius:50%;}
.header-call .ring svg{width:16px;height:16px;}
.header-call .ring svg path{fill:#fff;}
.header-call .txt{display:flex;flex-direction:column;line-height:1.1;}
.header-call .lbl{font-size:.5rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:rgba(255,255,255,.82);}
.header-call .num{font-size:.94rem;font-weight:800;letter-spacing:-.2px;}

.burger{display:none;grid-column:3;justify-self:end;width:40px;height:40px;flex-shrink:0;position:relative;z-index:101;border-radius:10px;background:var(--blue);box-shadow:0 3px 10px rgba(8,58,139,.3);}
.burger .bar,.burger .bar::before,.burger .bar::after{position:absolute;width:18px;height:2px;background:#fff;border-radius:2px;transition:transform .22s ease,background .15s ease,width .22s ease;}
.burger .bar{top:50%;left:50%;margin:-1px 0 0 -9px;}
.burger .bar::before{content:'';left:0;top:-6px;width:12px;}
.burger .bar::after{content:'';left:0;top:6px;}
.nav-open .burger{background:var(--red);}
.nav-open .burger .bar{background:transparent;}
.nav-open .burger .bar::before{width:18px;transform:translateY(6px) rotate(45deg);}
.nav-open .burger .bar::after{transform:translateY(-6px) rotate(-45deg);}
.scrim{position:fixed;inset:0;background:rgba(4,20,45,.55);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s;z-index:98;}
.nav-open .scrim{opacity:1;visibility:visible;}
.nav-drawer-cta,.nav-drawer-note{display:none;}

@media (max-width:900px){
  .burger{display:block;}
  .header-call{display:none;}
  .main-nav{position:fixed;top:0;right:0;height:100vh;width:min(320px,84vw);background:#fff;transform:translateX(100%);transition:transform .3s ease;z-index:99;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:5.5rem 1.75rem 2rem;box-shadow:-10px 0 40px rgba(0,0,0,.18);}
  .nav-open .main-nav{transform:translateX(0);}
  .nav-list{flex-direction:column;align-items:flex-start;gap:0;width:100%;}
  .nav-list>li{width:100%;border-bottom:1px solid var(--line);}
  .nav-list>li>a{padding:.95rem 0;width:100%;}
  .nav-list>li>a::after{display:none;}
  .nav-drawer-cta{display:flex;align-items:center;justify-content:center;gap:.6rem;margin-top:1.5rem;background:var(--grad-red);color:#fff;padding:.9rem 1rem;border-radius:60px;font-weight:800;}
  .nav-drawer-cta svg{width:18px;height:18px;}
  .nav-drawer-cta svg path{fill:#fff;}
  .nav-drawer-note{display:block;text-align:center;margin-top:.9rem;font-size:.82rem;color:var(--slate);}
  .nav-drawer-note b{color:var(--blue);}
}

/* ===================== HERO ===================== */
.hero{position:relative;background:var(--blue-dark);padding:clamp(2.25rem,4vw,3.5rem) 0;overflow:hidden;color:#fff;text-align:left;}
.hero-bg{position:absolute;inset:0;overflow:hidden;}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,22,54,.96) 0%,rgba(5,40,96,.9) 32%,rgba(5,40,96,.62) 55%,rgba(5,40,96,.28) 75%,rgba(5,40,96,.06) 100%);}
.hero-inner{position:relative;z-index:1;width:100%;max-width:1080px;}
.hero-left{display:flex;flex-direction:column;align-items:flex-start;gap:1.1rem;max-width:640px;}
.hero-badge{display:inline-flex;align-items:center;padding:.3rem .8rem .3rem .48rem;border-radius:60px;background:linear-gradient(135deg,rgba(242,176,60,.2) 0%,rgba(242,176,60,.06) 100%);border:1px solid rgba(242,176,60,.4);backdrop-filter:blur(6px);font-size:.6rem;color:#ffe3ab;box-shadow:0 5px 16px rgba(242,176,60,.12);}
.hero-badge .live{display:inline-flex;align-items:center;gap:.45rem;background:none;border:none;color:inherit;padding:0;border-radius:0;font-size:inherit;font-weight:800;letter-spacing:.9px;text-transform:uppercase;}
.hero-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0;box-shadow:0 0 0 0 rgba(242,176,60,.7);animation:ping 2s ease-out infinite;}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(242,176,60,.65);}70%{box-shadow:0 0 0 7px rgba(242,176,60,0);}100%{box-shadow:0 0 0 0 rgba(242,176,60,0);}}
.hero-badge b{color:#fff;font-weight:700;}
.hero h1{font-size:clamp(1.9rem,4vw,3.15rem);font-weight:750;line-height:1.14;letter-spacing:-.02em;color:#fff;}
.hero h1 .hl2{position:relative;display:inline-block;color:var(--gold);}
.hero-desc-group{display:flex;flex-direction:column;gap:.5rem;}
.hero-desc{font-size:1.06rem;color:rgba(255,255,255,.86);max-width:56ch;line-height:1.6;}
.hero-desc strong{color:#fff;font-weight:700;}
@media (max-width:560px){.hero-desc{font-size:.92rem;}}
.hero-cta-group{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:flex-start;}
.btn-call{display:inline-flex;align-items:center;gap:.75rem;background:var(--grad-red);color:#fff;padding:.7rem 1.9rem .7rem .7rem;border-radius:60px;box-shadow:0 10px 24px rgba(214,40,40,.4);transition:transform .15s,box-shadow .15s;}
.btn-call:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(214,40,40,.5);}
.btn-call .ring{width:42px;height:42px;flex-shrink:0;display:grid;place-items:center;background:rgba(255,255,255,.22);border-radius:50%;}
.btn-call .ring svg{width:20px;height:20px;}
.btn-call .ring svg path{fill:#fff;}
.btn-call .txt{display:flex;flex-direction:column;line-height:1.15;text-align:left;}
.btn-call .lbl{font-size:.62rem;font-weight:600;letter-spacing:.9px;text-transform:uppercase;color:rgba(255,255,255,.85);}
.btn-call .num{font-size:1.1rem;font-weight:800;letter-spacing:-.3px;}
.btn-quote{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.7rem 1.7rem;border-radius:60px;background:transparent;border:1.5px solid rgba(255,255,255,.5);color:#fff;font-weight:600;font-size:.95rem;transition:border-color .15s,background .15s;}
.btn-quote:hover{border-color:#fff;background:rgba(255,255,255,.1);}
.hero-points{display:flex;flex-wrap:wrap;gap:.55rem 1.7rem;justify-content:flex-start;}
.hero-points li{display:flex;align-items:center;gap:.6rem;font-size:.88rem;color:rgba(255,255,255,.88);}
.hero-points li::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0;}

/* ===================== LOCAL FACT STRIP ===================== */
.fact-strip{position:relative;z-index:1;background:var(--gold);}
.fact-inner{display:flex;align-items:center;gap:1rem;padding:.85rem 0;flex-wrap:wrap;justify-content:center;text-align:center;}
.fact-inner .fi-ico{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:rgba(5,40,96,.12);display:grid;place-items:center;}
.fact-inner .fi-ico svg{width:18px;height:18px;}
.fact-inner .fi-ico svg path{fill:var(--blue-dark);}
.fact-inner p{font-size:.82rem;font-weight:700;color:var(--blue-dark);max-width:900px;line-height:1.5;}
.fact-inner strong{color:var(--blue-dark);}

/* ===================== INTRO / ABOUT ===================== */
.intro{background:#fff;padding:var(--sec-pad) 0;}
.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,4vw,3.5rem);align-items:center;}
.intro-copy p{margin-bottom:1.1rem;font-size:1.02rem;color:var(--slate);line-height:1.75;}
.intro-copy strong{color:var(--blue);}
.intro-cta{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.4rem;}
.intro-media{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 24px 55px rgba(8,58,139,.22);}
.intro-media img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3.1;}
.intro-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,58,139,0) 55%,rgba(5,25,60,.55) 100%);}
.intro-badge{position:absolute;left:1.3rem;bottom:1.3rem;z-index:2;background:#fff;border-radius:14px;padding:.9rem 1.2rem;display:flex;align-items:center;gap:.8rem;box-shadow:0 14px 30px rgba(0,0,0,.18);}
.intro-badge strong{display:block;font-size:1.35rem;color:var(--red);font-weight:900;line-height:1;}
.intro-badge span{font-size:.72rem;color:var(--slate);font-weight:700;text-transform:uppercase;letter-spacing:.5px;}
@media (max-width:960px){.intro-grid{grid-template-columns:1fr;}.intro-media{order:-1;}}

/* ===================== SERVICES ===================== */
.services{background:var(--bg-warm);padding:var(--sec-pad) 0;}

/* --- Main services: 5 unique cards --- */
.svc-main-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.1rem;margin-bottom:clamp(2.25rem,4vw,3rem);}
.svc-main-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.75rem 1.4rem;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
.svc-main-card:hover{transform:translateY(-6px);border-color:var(--red);box-shadow:0 20px 40px rgba(214,40,40,.14);}
.svc-main-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad-red);}
.svc-main-card:nth-child(even)::before{background:var(--grad-blue);}
.svc-main-num{position:absolute;top:.6rem;right:1rem;font-family:'Inter',sans-serif;font-size:2.4rem;font-weight:900;color:var(--bg-warm);line-height:1;z-index:0;}
.svc-main-ico{position:relative;z-index:1;display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:var(--grad-red);margin-bottom:1.1rem;}
.svc-main-card:nth-child(even) .svc-main-ico{background:var(--grad-blue);}
.svc-main-ico svg{width:24px;height:24px;}
.svc-main-ico svg path{fill:#fff;}
.svc-main-card h3{position:relative;z-index:1;font-size:1.05rem;margin-bottom:.55rem;color:var(--blue);}
.svc-main-card h3 a{color:inherit;}
.svc-main-card h3 a::after{content:'';position:absolute;inset:0;}
.svc-main-card:hover h3 a{color:var(--red);}
.svc-main-card p{position:relative;z-index:1;font-size:.88rem;color:var(--slate);line-height:1.6;}
@media (max-width:1180px){.svc-main-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:680px){.svc-main-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:440px){.svc-main-grid{grid-template-columns:1fr;}}

/* --- Other services: compact chip list below --- */
.svc-other{position:relative;background:linear-gradient(180deg,#fff 0%,var(--blue-tint) 130%);border:1px solid var(--blue-tint-2);border-radius:20px;padding:2rem 2.1rem 2.2rem;overflow:hidden;box-shadow:0 18px 40px rgba(8,58,139,.07);}
.svc-other::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--blue) 0%,var(--gold) 100%);}
.svc-other-head{display:flex;align-items:center;gap:.65rem;margin-bottom:1.35rem;}
.svc-other-head .dotmark{width:34px;height:34px;border-radius:10px;background:var(--blue);flex-shrink:0;position:relative;box-shadow:0 6px 14px rgba(8,58,139,.28);}
.svc-other-head .dotmark::before{content:'';position:absolute;inset:0;margin:auto;width:12px;height:12px;border-radius:3px;background:var(--gold);}
.svc-other-head h3{font-size:1.15rem;font-weight:800;color:var(--blue-dark);}
.svc-other-list{display:flex;flex-wrap:wrap;gap:.65rem;}
.svc-other-list li{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--blue-tint-2);border-radius:60px;padding:.5rem 1.05rem .5rem .6rem;font-weight:700;font-size:.85rem;color:var(--dark);box-shadow:0 2px 6px rgba(8,58,139,.06);transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;}
.svc-other-list li:hover{background:var(--blue-tint);border-color:var(--blue);transform:translateY(-2px);box-shadow:0 8px 18px rgba(8,58,139,.14);}
.svc-other-list .tick path:first-child{fill:var(--blue-tint-2);}
.svc-other-list .tick path:last-child{fill:var(--blue);}
.svc-other-list .tick{width:20px;height:20px;flex-shrink:0;}

/* ===================== HEAT & HUMIDITY (timeline) ===================== */
.heat{background:var(--grad-blue);padding:var(--sec-pad) 0;color:#fff;position:relative;overflow:hidden;}
.heat::after{content:'';position:absolute;right:-8%;top:-15%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,rgba(255,255,255,0) 70%);}
.heat-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:center;position:relative;z-index:1;}
.heat-copy p{color:rgba(255,255,255,.86);font-size:1rem;line-height:1.75;margin-bottom:1.1rem;}
.wear-list{display:flex;flex-direction:column;gap:.8rem;}
.wear-item{display:flex;align-items:flex-start;gap:.9rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:1rem 1.2rem;}
.wear-item .num{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:var(--gold);color:var(--blue-dark);font-weight:900;font-size:.95rem;display:grid;place-items:center;}
.wear-item p{color:rgba(255,255,255,.92);font-size:.97rem;font-weight:600;line-height:1.5;margin:0;}
@media (max-width:960px){.heat-grid{grid-template-columns:1fr;}}

/* ===================== COMMON PROBLEMS ACCORDION ===================== */
.problems{background:#fff;padding:var(--sec-pad) 0;}

.prob-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-bottom:clamp(2rem,4vw,2.75rem);}
.pj-item{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.2rem;border-radius:60px;border:1.5px solid var(--line);background:var(--bg-warm);color:var(--blue);font-weight:700;font-size:.85rem;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;}
.pj-item:hover{background:var(--blue);border-color:var(--blue);color:#fff;transform:translateY(-2px);}
.pj-item .pj-count{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--red);color:#fff;font-size:.68rem;font-weight:800;}

.prob-group{margin-bottom:clamp(1.75rem,3vw,2.5rem);}
.prob-group:last-of-type{margin-bottom:0;}
.prob-group-head{display:flex;align-items:center;gap:.75rem;margin-bottom:1.1rem;padding-bottom:.85rem;border-bottom:2px solid var(--line);}
.pg-ico{flex-shrink:0;width:38px;height:38px;border-radius:10px;background:var(--grad-blue);display:grid;place-items:center;}
.pg-ico svg{width:19px;height:19px;}
.pg-ico svg path{fill:#fff;}
.prob-group-head h3{font-size:1.08rem;color:var(--blue);}
.prob-group-head .pg-tally{margin-left:auto;font-size:.78rem;font-weight:700;color:var(--slate);background:var(--bg-warm);border:1px solid var(--line);padding:.25rem .7rem;border-radius:60px;white-space:nowrap;}

:root{--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolyline points='6 9 12 15 18 9' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}

/* --- Symptom cards: always open, no click needed --- */
.symptom-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}
.symptom-card{background:var(--bg-warm);border:1px solid var(--line);border-radius:14px;padding:1.35rem 1.45rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.symptom-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(8,58,139,.1);border-color:var(--blue-tint-2);}
.symptom-card h4{display:flex;align-items:flex-start;gap:.5rem;font-size:.98rem;color:var(--blue);margin-bottom:.55rem;line-height:1.4;}
.symptom-card p{font-size:.87rem;color:var(--slate);line-height:1.65;margin:0;}
.symptom-card--urgent{background:#fff6f5;border-color:rgba(214,40,40,.3);}
.symptom-card--urgent:hover{border-color:var(--red);box-shadow:0 14px 30px rgba(214,40,40,.14);}
.symptom-card h4 .badge-urgent{margin-left:auto;flex-shrink:0;font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;padding:.22rem .5rem;border-radius:5px;background:var(--red);color:#fff;}
@media (max-width:992px){.symptom-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:620px){.symptom-grid{grid-template-columns:1fr;}}

.prob-cta{margin-top:clamp(2.25rem,4vw,3.25rem);background:var(--grad-red);border-radius:16px;padding:1.8rem 2.25rem;text-align:center;color:#fff;box-shadow:0 12px 30px rgba(214,40,40,.24);}
.prob-cta p{font-size:1.15rem;font-weight:700;line-height:1.55;}
.prob-cta a{color:#fff;text-decoration:underline;text-underline-offset:3px;font-weight:900;}

/* ===================== NOT COOLING (numbered cards) ===================== */
.notcooling{background:var(--bg-warm);padding:var(--sec-pad) 0;}
.nc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;}
.nc-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.5rem 1.25rem;position:relative;transition:transform .2s ease,box-shadow .2s ease;}
.nc-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(8,58,139,.14);}
.nc-card .nc-num{font-family:'Inter',sans-serif;font-size:2.2rem;font-weight:900;color:var(--blue-tint-2);line-height:1;margin-bottom:.6rem;}
.nc-card h4{font-size:1rem;color:var(--blue);margin-bottom:.5rem;}
.nc-card p{font-size:.88rem;color:var(--slate);line-height:1.55;}
.nc-cta{margin-top:2rem;text-align:center;}
@media (max-width:992px){.nc-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:620px){.nc-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:420px){.nc-grid{grid-template-columns:1fr;}}

/* ===================== REPAIR OR REPLACE ===================== */
.cost{background:#fff;padding:var(--sec-pad) 0;}
.cost-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-bottom:2.2rem;}
.cost-card{background:var(--bg-warm);border:1px solid var(--line);border-radius:16px;padding:1.6rem 1.7rem;display:flex;gap:1rem;align-items:flex-start;}
.cost-card .ci{flex-shrink:0;width:44px;height:44px;border-radius:12px;background:var(--blue-tint);display:grid;place-items:center;}
.cost-card .ci svg{width:22px;height:22px;}
.cost-card .ci svg path{fill:var(--blue);}
.cost-card h4{font-size:1.02rem;color:var(--blue);margin-bottom:.4rem;}
.cost-card p{font-size:.93rem;color:var(--slate);line-height:1.6;}
.cost-rule{display:flex;gap:1.4rem;align-items:center;background:var(--grad-blue);border-radius:18px;padding:1.8rem 2rem;color:#fff;box-shadow:0 16px 36px rgba(8,58,139,.24);}
.cost-rule .cr-ico{flex-shrink:0;width:52px;height:52px;border-radius:50%;background:var(--gold);display:grid;place-items:center;}
.cost-rule .cr-ico svg{width:26px;height:26px;}
.cost-rule .cr-ico svg path{fill:var(--blue-dark);}
.cost-rule p{font-size:1rem;line-height:1.65;color:rgba(255,255,255,.94);}
.cost-rule strong{color:var(--gold);}
@media (max-width:900px){.cost-grid{grid-template-columns:1fr;}.cost-rule{flex-direction:column;text-align:center;}}

/* ===================== LOCAL / AREAS SPLIT ===================== */
.local{background:var(--bg-warm);padding:var(--sec-pad) 0;}
.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,3.5rem);align-items:center;}
.local-media{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 24px 55px rgba(8,58,139,.16);max-height:420px;}
.local-media img{width:100%;height:420px;max-height:420px;object-fit:cover;object-position:center;display:block;}
.local-badge{position:absolute;left:1.1rem;bottom:1.1rem;display:inline-flex;align-items:center;gap:.5rem;background:rgba(5,40,96,.88);backdrop-filter:blur(4px);color:#fff;font-weight:800;font-size:.82rem;padding:.55rem 1rem .55rem .7rem;border-radius:60px;border:1px solid rgba(255,255,255,.18);box-shadow:0 10px 24px rgba(8,58,139,.3);}
.local-badge svg{width:17px;height:17px;flex-shrink:0;}
.local-badge svg path{fill:var(--gold);}
.local-copy p{font-size:1rem;color:var(--slate);line-height:1.75;margin-bottom:1.1rem;}
.local-copy strong{color:var(--blue);}
.local-chips{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.2rem;}
.local-chips span,.local-chips a{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--line);color:var(--blue);font-weight:700;font-size:.82rem;padding:.5rem 1rem .5rem .65rem;border-radius:60px;box-shadow:0 2px 6px rgba(8,58,139,.05);transition:background .18s ease,border-color .18s ease,transform .18s ease;}
.local-chips span:hover,.local-chips a:hover{background:var(--blue-tint);border-color:var(--blue-tint-2);transform:translateY(-2px);}
.local-chips svg{width:15px;height:15px;flex-shrink:0;}
.local-chips svg path{fill:var(--red);}
.local-chips a .chip-arrow{width:13px;height:13px;flex-shrink:0;opacity:.55;transition:transform .18s ease,opacity .18s ease;}
.local-chips a .chip-arrow path{fill:var(--blue);}
.local-chips a:hover .chip-arrow{transform:translateX(2px);opacity:1;}
@media (max-width:960px){.local-grid{grid-template-columns:1fr;}.local-media{order:-1;max-height:280px;}.local-media img{height:280px;max-height:280px;}}
@media (max-width:480px){
  .local-badge{left:.7rem;right:.7rem;bottom:.7rem;max-width:calc(100% - 1.4rem);font-size:.72rem;padding:.45rem .8rem .45rem .55rem;}
  .local-badge span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .local-chips{gap:.5rem;}
  .local-chips span{font-size:.76rem;padding:.42rem .85rem .42rem .55rem;}
}

.areas{background:var(--grad-blue);padding:var(--sec-pad) 0;color:#fff;}
.areas-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;}
.area-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:1.1rem 1.2rem;display:flex;align-items:center;gap:.7rem;font-weight:700;transition:background .2s ease,transform .2s ease;}
.area-card:hover{background:rgba(255,255,255,.15);transform:translateY(-3px);}
.area-card svg{width:18px;height:18px;flex-shrink:0;}
.area-card svg path{fill:var(--gold);}
.area-card .area-arrow{margin-left:auto;width:16px;height:16px;flex-shrink:0;opacity:.65;transition:transform .2s ease,opacity .2s ease;}
.area-card .area-arrow path{fill:#fff;}
.area-card:hover .area-arrow{transform:translateX(3px);opacity:1;}
@media (max-width:900px){.areas-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:480px){.areas-grid{grid-template-columns:1fr;}}

/* ===================== WHY TRUST US ===================== */
.trust{background:#fff;padding:var(--sec-pad) 0;}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem;margin-bottom:2rem;}
.trust-card{border:1px solid var(--line);border-radius:18px;padding:1.75rem 1.5rem;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.trust-card:hover{transform:translateY(-4px);border-color:var(--red);box-shadow:0 16px 34px rgba(214,40,40,.1);}
.trust-card .ti{width:48px;height:48px;border-radius:12px;background:var(--grad-red);display:grid;place-items:center;margin-bottom:1rem;}
.trust-card .ti svg{width:24px;height:24px;}
.trust-card .ti svg path{fill:#fff;}
.trust-card h4{font-size:1.02rem;color:var(--blue);margin-bottom:.5rem;}
.trust-card p{font-size:.9rem;color:var(--slate);line-height:1.6;}
.tdlr-note{display:flex;align-items:flex-start;gap:.9rem;background:var(--blue-tint);border:1px solid var(--blue-tint-2);border-left:4px solid var(--blue);border-radius:12px;padding:1.1rem 1.4rem;}
.tdlr-note svg{width:22px;height:22px;flex-shrink:0;margin-top:2px;}
.tdlr-note svg path{fill:var(--blue);}
.tdlr-note p{font-size:.94rem;color:var(--dark);line-height:1.6;}
@media (max-width:992px){.trust-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.trust-grid{grid-template-columns:1fr;}}

/* ===================== FAQ ===================== */
.faq{background:var(--bg-warm);padding:var(--sec-pad) 0;}
.faq-list{max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:.85rem;}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;}
.faq-q{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;text-align:left;padding:1.2rem 1.5rem;font-weight:800;font-size:1rem;color:var(--blue);}
.faq-q::after{content:'';flex-shrink:0;width:20px;height:20px;background:var(--red);-webkit-mask:var(--chevron) center/contain no-repeat;mask:var(--chevron) center/contain no-repeat;transition:transform .25s ease;}
.faq-q[aria-expanded="true"]::after{transform:rotate(180deg);}
.faq-a{display:none;padding:0 1.5rem 1.3rem;font-size:.96rem;color:var(--slate);line-height:1.72;}
.faq-a.open{display:block;animation:accIn .25s ease-out;}

/* ===================== FINAL CTA ===================== */
.final{position:relative;background:var(--blue-dark);padding:clamp(3.5rem,6vw,5.5rem) 0;overflow:hidden;color:#fff;text-align:center;}
.final-bg{position:absolute;inset:0;overflow:hidden;opacity:.16;}
.final-bg img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.final-inner{position:relative;z-index:1;max-width:820px;margin:0 auto;}
.final h2{color:#fff;}
.final p{font-size:1.06rem;color:rgba(255,255,255,.86);line-height:1.72;margin-bottom:1.8rem;}
.final-cta{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;}

/* ===================== FOOTER ===================== */
.site-footer{background:#161616;color:rgba(255,255,255,.78);overflow-x:hidden;}
.ft-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:2.5rem;padding:var(--sec-pad) 0 clamp(2rem,5vw,3rem);}
.ft-brand img{height:52px;width:auto;margin-bottom:1rem;filter:brightness(0) invert(1);}
.ft-about{font-size:.9rem;line-height:1.7;color:rgba(255,255,255,.62);margin-bottom:1.2rem;}
.ft-col h3{color:#fff;font-size:.95rem;letter-spacing:.4px;text-transform:uppercase;margin-bottom:1.1rem;}
.ft-links{display:flex;flex-direction:column;gap:.65rem;}
.ft-links a{font-size:.9rem;color:rgba(255,255,255,.65);transition:color .15s;}
.ft-links a:hover{color:var(--gold);}
.ft-contact{display:flex;flex-direction:column;gap:1rem;}
.ft-row{display:flex;align-items:flex-start;gap:.7rem;font-size:.9rem;}
.ft-row .ico{flex-shrink:0;width:20px;height:20px;margin-top:2px;}
.ft-row .ico svg path{fill:var(--gold);}
.ft-row b{display:block;color:#fff;}
.ft-row span span{color:rgba(255,255,255,.55);font-size:.84rem;}
.ft-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.2rem 0;}
.ft-bottom-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem;font-size:.82rem;color:rgba(255,255,255,.5);}
.ft-legal-links{display:flex;flex-wrap:wrap;gap:1.1rem;}
.ft-legal-links a{color:rgba(255,255,255,.5);transition:color .15s;}
.ft-legal-links a:hover{color:var(--gold);}
@media (max-width:960px){.ft-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem;}}
@media (max-width:560px){
  .container{padding:0 1.2rem;}
  .ft-grid{grid-template-columns:1fr;gap:2.2rem;text-align:center;}
  .ft-brand{display:flex;flex-direction:column;align-items:center;}
  .ft-about{max-width:340px;}
  .ft-col{display:flex;flex-direction:column;align-items:center;}
  .ft-contact{align-items:center;}
  .ft-row{flex-direction:column;align-items:center;text-align:center;gap:.3rem;}
  .ft-row .ico{margin-top:0;}
  .ft-bottom-inner{flex-direction:column;text-align:center;justify-content:center;}
  .ft-legal-links{justify-content:center;}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}}

/* ============================================================
   INNER PAGE SHARED COMPONENTS (service pages, legal pages)
   ============================================================ */

/* --- Breadcrumb: small, tight, sits inside the hero --- */
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:.9rem;font-size:.74rem;color:rgba(255,255,255,.62);}
.crumb a{color:rgba(255,255,255,.78);font-weight:600;transition:color .15s;}
.crumb a:hover{color:var(--gold);}
.crumb .sep{opacity:.5;}
.crumb .cur{color:#fff;font-weight:700;}

/* --- Service hero: split, image right, breadcrumb tight up top --- */
.svc-hero{position:relative;background:var(--blue-dark);padding:clamp(1.75rem,3.5vw,2.75rem) 0 clamp(3rem,5vw,4.25rem);overflow:hidden;color:#fff;}
.svc-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
.svc-hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,rgba(3,22,54,.97) 0%,rgba(5,40,96,.93) 40%,rgba(5,40,96,.72) 62%,rgba(5,40,96,.3) 82%,rgba(5,40,96,.08) 100%);}
.svc-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,3.5rem);align-items:center;}
.svc-hero-eyebrow{position:relative;display:inline-flex;align-items:center;gap:.45rem;padding:.3rem .8rem .3rem .48rem;border-radius:60px;background:linear-gradient(135deg,rgba(242,176,60,.2) 0%,rgba(242,176,60,.06) 100%);border:1px solid rgba(242,176,60,.4);backdrop-filter:blur(6px);font-size:.6rem;font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:#ffe3ab;margin-bottom:1rem;box-shadow:0 5px 16px rgba(242,176,60,.12);}
.svc-hero-eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0;box-shadow:0 0 0 0 rgba(242,176,60,.7);animation:ping 2s ease-out infinite;}
.svc-hero h1{font-size:clamp(1.9rem,3.6vw,2.85rem);font-weight:750;line-height:1.14;letter-spacing:-.02em;color:#fff;margin-bottom:1rem;}
.svc-hero h1 .hl2{color:var(--gold);}
.svc-hero-lead{font-size:1.04rem;color:rgba(255,255,255,.86);line-height:1.68;max-width:52ch;margin-bottom:1.6rem;}
.svc-hero-cta{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:1.4rem;}
.svc-hero-points{display:flex;flex-wrap:wrap;gap:.55rem 1.5rem;}
.svc-hero-points li{display:flex;align-items:center;gap:.55rem;font-size:.85rem;color:rgba(255,255,255,.85);}
.svc-hero-points li::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0;}
.svc-hero-media{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 28px 60px rgba(0,10,28,.45);}
.svc-hero-media img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3.3;}
.svc-hero-media::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);border-radius:inherit;}
@media (max-width:960px){.svc-hero-grid{grid-template-columns:1fr;}.svc-hero-media{order:-1;max-width:460px;margin:0 auto;}}

/* --- Quick stats strip (3-up variant of the fact-strip) --- */
.quick-stats{background:var(--gold);}
.qs-track{display:grid;grid-template-columns:repeat(3,1fr);}
.qs-item{display:flex;align-items:center;justify-content:center;gap:.55rem;padding:.85rem .5rem;text-align:center;font-size:.82rem;font-weight:700;color:var(--blue-dark);}
.qs-item svg{width:17px;height:17px;flex-shrink:0;}
.qs-item svg path{fill:var(--blue-dark);}
.qs-item+.qs-item{border-left:1px solid rgba(5,40,96,.18);}
@media (max-width:700px){.qs-track{grid-template-columns:1fr;}.qs-item+.qs-item{border-left:0;border-top:1px solid rgba(5,40,96,.18);}}

/* --- Signs / symptom checklist (icon cards) --- */
.signs{background:#fff;padding:var(--sec-pad) 0;}
.signs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
.sign-card{display:flex;align-items:flex-start;gap:.9rem;background:var(--bg-warm);border:1px solid var(--line);border-radius:14px;padding:1.15rem 1.3rem;}
.sign-card .si{flex-shrink:0;width:34px;height:34px;border-radius:9px;background:var(--grad-red);display:grid;place-items:center;}
.sign-card .si svg{width:17px;height:17px;}
.sign-card .si svg path{fill:#fff;}
.sign-card p{font-size:.93rem;color:var(--dark);font-weight:600;line-height:1.55;margin:0;}
.signs-note{display:flex;align-items:flex-start;gap:.8rem;margin-top:1.5rem;background:var(--blue-tint);border:1px solid var(--blue-tint-2);border-left:4px solid var(--blue);border-radius:12px;padding:1rem 1.3rem;}
.signs-note svg{width:20px;height:20px;flex-shrink:0;margin-top:2px;}
.signs-note svg path{fill:var(--blue);}
.signs-note p{font-size:.92rem;color:var(--dark);line-height:1.6;margin:0;}
@media (max-width:680px){.signs-grid{grid-template-columns:1fr;}}

/* --- Offerings: icon+title+desc cards (repairs/options/benefits list) --- */
.offer{background:var(--bg-warm);padding:var(--sec-pad) 0;}
.offer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem;}
.offer-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.6rem 1.7rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.offer-card:hover{transform:translateY(-4px);border-color:var(--blue-tint-2);box-shadow:0 16px 34px rgba(8,58,139,.1);}
.offer-card h3{display:flex;align-items:center;gap:.6rem;font-size:1.02rem;color:var(--blue);margin-bottom:.55rem;}
.offer-card .oi{flex-shrink:0;width:36px;height:36px;border-radius:10px;background:var(--grad-blue);display:grid;place-items:center;}
.offer-card .oi svg{width:18px;height:18px;}
.offer-card .oi svg path{fill:#fff;}
.offer-card p{font-size:.9rem;color:var(--slate);line-height:1.65;margin:0;}
@media (max-width:820px){.offer-grid{grid-template-columns:1fr;}}

/* --- Process timeline: numbered steps with connecting line --- */
.process{background:#fff;padding:var(--sec-pad) 0;}
.process-track{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;}
.process-track::before{content:'';position:absolute;top:22px;left:10%;right:10%;height:2px;background:var(--line);z-index:0;}
.process-step{position:relative;z-index:1;text-align:center;}
.process-num{width:44px;height:44px;margin:0 auto .9rem;border-radius:50%;background:var(--grad-red);color:#fff;font-family:'Inter',sans-serif;font-weight:900;font-size:1.05rem;display:grid;place-items:center;box-shadow:0 8px 18px rgba(214,40,40,.3);}
.process-step:nth-child(even) .process-num{background:var(--grad-blue);box-shadow:0 8px 18px rgba(8,58,139,.3);}
.process-step h4{font-size:.92rem;color:var(--blue);margin-bottom:.4rem;}
.process-step p{font-size:.82rem;color:var(--slate);line-height:1.55;}
@media (max-width:960px){.process-track{grid-template-columns:repeat(3,1fr);gap:1.5rem 1rem;}.process-track::before{display:none;}}
@media (max-width:560px){.process-track{grid-template-columns:1fr 1fr;}}
@media (max-width:400px){.process-track{grid-template-columns:1fr;}}

/* --- Info panel: two-column context section with sidebar callout --- */
.info{background:var(--bg-warm);padding:var(--sec-pad) 0;}
.info-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,3rem);align-items:start;}
.info-copy p{font-size:.98rem;color:var(--slate);line-height:1.75;margin-bottom:1.1rem;}
.info-copy strong{color:var(--blue);}
.info-list{display:flex;flex-direction:column;gap:.7rem;margin-top:1rem;}
.info-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.93rem;color:var(--dark);line-height:1.55;}
.info-list .tick{width:22px;height:22px;flex-shrink:0;margin-top:1px;}
.info-side{background:var(--grad-blue);border-radius:18px;padding:1.9rem 1.8rem;color:#fff;box-shadow:0 20px 44px rgba(8,58,139,.2);}
.info-side h3{font-size:1rem;color:var(--gold);margin-bottom:1rem;}
.info-side p{font-size:.9rem;color:rgba(255,255,255,.88);line-height:1.65;margin-bottom:.9rem;}
.info-side p:last-child{margin-bottom:0;}
@media (max-width:960px){.info-grid{grid-template-columns:1fr;}}

/* --- Related services: internal-linking card row --- */
.related{background:#fff;padding:var(--sec-pad) 0;}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;}
.related-card{display:flex;flex-direction:column;gap:.5rem;background:var(--bg-warm);border:1px solid var(--line);border-radius:14px;padding:1.3rem 1.4rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.related-card:hover{transform:translateY(-4px);border-color:var(--red);box-shadow:0 14px 30px rgba(214,40,40,.12);}
.related-card .rc-tag{font-size:.66rem;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--red);}
.related-card h3{font-size:.98rem;color:var(--blue);}
.related-card h3 a{color:inherit;}
.related-card h3 a::after{content:'';position:absolute;inset:0;}
.related-card{position:relative;}
.related-card p{font-size:.84rem;color:var(--slate);line-height:1.55;margin:0;}
@media (max-width:992px){.related-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.related-grid{grid-template-columns:1fr;}}

/* --- Benefits: bg-warm variant of the trust-card grid --- */
.benefits{background:var(--bg-warm);padding:var(--sec-pad) 0;}
.benefits .trust-grid{margin-bottom:0;}
.benefits .trust-card{background:#fff;}

/* --- Chip list (compact pill row) --- */
.chip-panel{background:#fff;padding:var(--sec-pad) 0;}
.chip-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;}
.chip-list span{display:inline-flex;align-items:center;gap:.5rem;background:var(--bg-warm);border:1px solid var(--line);color:var(--blue);font-weight:700;font-size:.86rem;padding:.6rem 1.2rem;border-radius:60px;}
.chip-list .tick{width:20px;height:20px;flex-shrink:0;}

/* --- Versus comparison: two cards with a center divider --- */
.vs{background:var(--bg-warm);padding:var(--sec-pad) 0;}
.vs-wrap{display:grid;grid-template-columns:1fr auto 1fr;gap:1.5rem;align-items:center;}
.vs-card{background:#fff;border:1.5px solid var(--line);border-radius:18px;padding:1.9rem 1.8rem;}
.vs-card h3{font-size:1.08rem;color:var(--blue);margin-bottom:.65rem;}
.vs-card p{font-size:.92rem;color:var(--slate);line-height:1.65;margin-bottom:1rem;}
.vs-card a{display:inline-flex;align-items:center;gap:.4rem;color:var(--red);font-weight:800;font-size:.88rem;}
.vs-or{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--grad-red);color:#fff;font-family:'Inter',sans-serif;font-weight:900;font-size:.85rem;box-shadow:0 10px 24px rgba(214,40,40,.3);}
@media (max-width:820px){.vs-wrap{grid-template-columns:1fr;}.vs-or{margin:0 auto;}}

/* --- Quote / callout panel (single centered statement) --- */
.quote-panel{background:var(--grad-blue);padding:clamp(2.5rem,4.5vw,3.5rem) 0;color:#fff;}
.quote-panel blockquote{max-width:820px;margin:0 auto;text-align:center;font-size:clamp(1.05rem,2vw,1.3rem);font-weight:600;line-height:1.6;color:#fff;}
.quote-panel blockquote::before{content:'\201C';color:var(--gold);font-size:1.4em;font-weight:900;}

/* ============================================================
   LEGAL PAGES
   ============================================================ */
.legal-hero{background:var(--blue-dark);padding:clamp(1.75rem,3.5vw,2.25rem) 0 clamp(2rem,3.5vw,2.75rem);color:#fff;}
.legal-hero h1{font-size:clamp(1.6rem,3vw,2.15rem);font-weight:800;color:#fff;}
.legal-hero p{font-size:.85rem;color:rgba(255,255,255,.7);margin-top:.5rem;}
.legal{background:#fff;padding:clamp(2.5rem,5vw,3.75rem) 0 clamp(3.5rem,6vw,5rem);}
.legal-wrap{max-width:820px;margin:0 auto;}
.legal-wrap h2{font-size:1.3rem;color:var(--blue);margin:2.2rem 0 .8rem;}
.legal-wrap h2:first-child{margin-top:0;}
.legal-wrap h3{font-size:1.05rem;color:var(--blue);margin:1.5rem 0 .6rem;}
.legal-wrap p{font-size:.95rem;color:var(--slate);line-height:1.75;margin-bottom:1rem;}
.legal-wrap ul{margin:0 0 1rem 0;display:flex;flex-direction:column;gap:.5rem;}
.legal-wrap li{font-size:.95rem;color:var(--slate);line-height:1.65;padding-left:1.2rem;position:relative;}
.legal-wrap li::before{content:'';position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--red);}
.legal-wrap a{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:2px;}
.legal-updated{display:inline-block;background:var(--blue-tint);color:var(--blue);font-size:.78rem;font-weight:700;padding:.35rem .9rem;border-radius:60px;margin-bottom:2rem;}
.legal-toc{background:var(--bg-warm);border:1px solid var(--line);border-radius:14px;padding:1.4rem 1.6rem;margin-bottom:2.5rem;}
.legal-toc h2{margin:0 0 .8rem !important;font-size:1rem !important;}
.legal-toc ol{display:flex;flex-direction:column;gap:.5rem;padding-left:1.1rem;}
.legal-toc li{font-size:.9rem;}
.legal-toc a{font-weight:600;}

/* ===================== CONTACT PAGE ===================== */
.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3rem);align-items:stretch;}
.contact-card{background:var(--grad-blue);border-radius:20px;padding:2.2rem 2.1rem;color:#fff;box-shadow:0 24px 55px rgba(8,58,139,.22);display:flex;flex-direction:column;}
.contact-card h3{color:#fff;font-size:1.25rem;margin-bottom:1.4rem;}
.contact-rows{display:flex;flex-direction:column;gap:1.3rem;margin-bottom:1.6rem;}
.contact-row{display:flex;gap:.9rem;align-items:flex-start;}
.contact-row .ci{flex-shrink:0;width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;}
.contact-row .ci svg{width:19px;height:19px;}
.contact-row .ci svg path{fill:var(--gold);}
.contact-row h4{color:#fff;font-size:.98rem;margin-bottom:.25rem;}
.contact-row p{color:rgba(255,255,255,.75);font-size:.87rem;line-height:1.55;margin:0;}
.contact-row a{color:#fff;}
.contact-card .btn--white{margin-top:auto;}
.btn--white{background:#fff;color:var(--blue-dark);box-shadow:0 10px 24px rgba(0,0,0,.18);}
.btn--white:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.24);}
.contact-map{border-radius:20px;overflow:hidden;box-shadow:0 24px 55px rgba(8,58,139,.16);border:1px solid var(--line);min-height:360px;}
.contact-map iframe{width:100%;height:100%;min-height:360px;border:0;display:block;}

.contact-form-wrap{background:#fff;border:1px solid var(--line);border-radius:20px;padding:2.2rem 2.3rem;box-shadow:0 18px 40px rgba(8,58,139,.07);max-width:760px;margin:0 auto;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin-bottom:1.1rem;}
.form-field{display:flex;flex-direction:column;gap:.4rem;}
.form-field.full{grid-column:1 / -1;}
.form-field label{font-size:.82rem;font-weight:700;color:var(--blue-dark);}
.form-field input,.form-field textarea{font-family:inherit;font-size:.95rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:10px;background:var(--bg-warm);color:var(--dark);transition:border-color .15s ease,box-shadow .15s ease;}
.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-tint);background:#fff;}
.form-field textarea{resize:vertical;min-height:120px;}
.contact-form-wrap .btn{width:100%;}
.contact-form-note{font-size:.85rem;color:var(--slate);margin-top:1.1rem;text-align:center;}

@media (max-width:860px){.contact-grid{grid-template-columns:1fr;}.form-grid{grid-template-columns:1fr;}}

/* ===================== WHO WE SERVE ===================== */
.serve{background:#fff;padding:var(--sec-pad) 0;}
.serve-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:stretch;}
.serve-card{position:relative;border-radius:20px;padding:2.1rem 1.9rem;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease;}
.serve-card:hover{transform:translateY(-6px);}
.serve-ico{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin-bottom:1.2rem;}
.serve-ico svg{width:25px;height:25px;}
.serve-tag{font-size:.7rem;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;margin-bottom:.5rem;}
.serve-card h3{font-size:1.08rem;margin-bottom:.7rem;letter-spacing:-.01em;}
.serve-card > p{font-size:.9rem;line-height:1.65;margin-bottom:1.3rem;}
.serve-card ul{display:flex;flex-direction:column;gap:.55rem;margin-top:auto;padding-top:1rem;border-top:1px solid rgba(0,0,0,.08);}
.serve-card li{position:relative;padding-left:1.3rem;font-size:.88rem;font-weight:700;}
.serve-card li::before{content:'';position:absolute;left:0;top:.48em;width:7px;height:7px;border-radius:2px;}

.serve-card--blue{background:var(--blue-tint);border:1px solid var(--blue-tint-2);}
.serve-card--blue:hover{box-shadow:0 20px 40px rgba(8,58,139,.14);}
.serve-card--blue .serve-ico{background:var(--grad-blue);color:#fff;box-shadow:0 10px 24px rgba(8,58,139,.25);}
.serve-card--blue .serve-tag{color:var(--blue);}
.serve-card--blue h3{color:var(--blue-dark);}
.serve-card--blue>p{color:var(--slate);}
.serve-card--blue ul{border-color:var(--blue-tint-2);}
.serve-card--blue li{color:var(--dark);}
.serve-card--blue li::before{background:var(--blue);}

.serve-card--red{background:#fff6f5;border:1px solid #ffe0dc;}
.serve-card--red:hover{box-shadow:0 20px 40px rgba(214,40,40,.14);}
.serve-card--red .serve-ico{background:var(--grad-red);color:#fff;box-shadow:0 10px 24px rgba(214,40,40,.25);}
.serve-card--red .serve-tag{color:var(--red);}
.serve-card--red h3{color:var(--red-dark);}
.serve-card--red>p{color:var(--slate);}
.serve-card--red ul{border-color:#ffe0dc;}
.serve-card--red li{color:var(--dark);}
.serve-card--red li::before{background:var(--red);}

.serve-card--dark{background:var(--grad-blue);color:#fff;box-shadow:0 24px 50px rgba(8,58,139,.22);}
.serve-card--dark:hover{box-shadow:0 28px 56px rgba(8,58,139,.32);}
.serve-card--dark .serve-ico{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:var(--gold);}
.serve-card--dark .serve-tag{color:var(--gold);}
.serve-card--dark h3{color:#fff;}
.serve-card--dark>p{color:rgba(255,255,255,.78);}
.serve-card--dark ul{border-color:rgba(255,255,255,.16);}
.serve-card--dark li{color:rgba(255,255,255,.92);}
.serve-card--dark li::before{background:var(--gold);}

@media (max-width:960px){.serve-grid{grid-template-columns:1fr;max-width:460px;margin:0 auto;}}
