:root{
  --bg:#02091f;
  --bg-2:#031234;
  --panel:#071738;
  --panel-2:#0a1d45;
  --line:rgba(214,222,236,.30);
  --line-strong:rgba(220,228,241,.50);
  --white:#f7f9fc;
  --muted:#c7ccda;
  --muted-2:#9fa9bf;
  --red:#e3101b;
  --red-2:#ff1b28;
  --gold:#ffbd00;
  --shadow:0 22px 60px rgba(0,0,0,.34);
  --radius:16px;
  --display:"PT Sans Narrow", "Arial Narrow", "Noto Sans Display ExtraCondensed", Impact, Haettenschweiler, sans-serif;
  --body:Arial, Helvetica, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;font-family:var(--body);color:var(--white);background:radial-gradient(circle at 70% 10%,#0a2559 0,#02091f 34%,#010618 68%);font-size:16px;line-height:1.45;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{color:inherit}
.shell{width:min(1540px,calc(100% - 72px));margin-inline:auto;position:relative;z-index:2}
.visual-section{position:relative;overflow:hidden;background:
 radial-gradient(circle at 82% 20%,rgba(29,73,147,.18),transparent 32%),
 linear-gradient(180deg,#020923 0%,#041033 54%,#020a26 100%)}
.visual-section::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:rgba(255,255,255,.06)}
.skip-link{position:fixed;left:12px;top:-60px;z-index:9999;background:#fff;color:#000;padding:10px 14px;border-radius:8px}.skip-link:focus{top:12px}
svg{width:1.3em;height:1.3em;display:inline-block;vertical-align:middle;fill:none}
.stars{color:var(--gold);letter-spacing:.05em}
.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;color:var(--red-2);font-style:italic;font-weight:700;letter-spacing:.045em}.eyebrow>span{width:38px;height:13px;background:var(--red);transform:skewX(-22deg);display:inline-block;flex:0 0 auto}.eyebrow.center{justify-content:center}.eyebrow.center>span{height:3px;transform:none;width:44px}.eyebrow.plain{display:block}.red-rule{width:92px;height:4px;background:var(--red);margin:18px 0 10px}.red-rule.center{margin:18px auto 15px}
.section-heading h2,.about h2,.contact-heading h2,.footer-cta h2{margin:14px 0 0;font-family:var(--display);font-style:italic;text-transform:uppercase;font-weight:900;letter-spacing:.025em;line-height:.98;color:#fff;text-shadow:0 2px 0 rgba(255,255,255,.04)}
.section-heading h2{font-size:clamp(3.1rem,4.5vw,5.1rem)}
.section-heading p{color:var(--muted);font-size:clamp(1rem,1.18vw,1.25rem);margin:12px 0 0;max-width:760px}
.section-heading.centered{text-align:center}.section-heading.centered p{margin-inline:auto}.section-heading.compact h2{font-size:clamp(3.2rem,5vw,5.5rem)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:54px;border-radius:9px;border:1px solid transparent;padding:0 23px;text-transform:uppercase;font-weight:800;letter-spacing:.02em;transition:.22s ease;cursor:pointer;white-space:nowrap}.btn:hover{transform:translateY(-2px);filter:brightness(1.07)}.btn svg{width:23px;height:23px}.btn-red{background:linear-gradient(180deg,#ed1b24,#cf090f);border-color:#ff6469;color:#fff;box-shadow:0 10px 30px rgba(227,16,27,.18)}.btn-outline{background:rgba(4,13,43,.58);border-color:rgba(255,255,255,.78);color:#fff}.btn-xl{min-height:74px;font-size:1.05rem;padding-inline:26px}.btn-xl span{display:grid;text-align:left;line-height:1.1;font-size:1.14rem}.btn-xl small{font-size:.9rem;text-transform:uppercase;margin-bottom:4px}.check-list{list-style:none;margin:0;padding:0}.check-list li{display:flex;align-items:flex-start;gap:10px;margin:10px 0;color:#f0f3f9}.check-list .check{margin-top:2px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--red);flex:0 0 auto}.check-list .check svg{width:14px;height:14px;color:#fff}.mini-rule{display:block;width:40px;height:3px;background:var(--red);margin:9px 0 8px}

/* Header */
.site-header{height:118px;background:#020926;border-bottom:1px solid rgba(255,255,255,.05);position:relative;z-index:100}.header-inner{height:118px;display:flex;align-items:center;gap:28px}.brand{width:382px;flex:0 0 382px}.brand img{width:100%;height:auto}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:35px}.desktop-nav a{position:relative;text-transform:uppercase;font-family:var(--display);font-size:1.06rem;letter-spacing:.025em;padding:11px 0}.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:.2s}.desktop-nav a:hover::after,.desktop-nav a.active::after{transform:scaleX(1)}.header-actions{display:flex;gap:16px;margin-left:14px}.call-header{min-width:230px}.call-header span{display:grid;line-height:1.05;text-transform:none;font-size:.95rem}.call-header small{text-transform:uppercase;font-weight:800;margin-bottom:4px}.menu-toggle,.mobile-menu{display:none}

/* Hero */
.hero{min-height:823px;padding-bottom:34px;background:
 linear-gradient(90deg,#020923 0%,#06183c 48%,#07152f 70%,#020a21 100%)}
.hero-layout{min-height:660px;display:grid;grid-template-columns:57% 43%;align-items:center;padding-top:38px}.hero-copy{position:relative;z-index:4;padding-left:4px}.hero h1{margin:18px 0 0;font-family:var(--display);font-style:italic;text-transform:uppercase;font-size:clamp(4.1rem,5.05vw,5.55rem);line-height:.96;letter-spacing:.012em;max-width:980px}.hero h1 span{display:block;white-space:nowrap;font-weight:900}.hero-kicker{font-size:clamp(1.35rem,1.7vw,1.9rem);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-style:italic;margin:7px 0 11px}.hero-list{font-size:clamp(1rem,1.1vw,1.22rem)}.hero-actions{display:flex;gap:24px;margin-top:28px;align-items:center}.hero-media{position:absolute;right:-44px;top:42px;width:53%;height:640px;z-index:1}.hero-media::before{content:"";position:absolute;inset:-70px 0 -40px -160px;background:radial-gradient(circle at 62% 47%,rgba(23,71,150,.36),rgba(2,9,31,0) 66%);z-index:-1}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center right;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 21%,#000 100%);mask-image:linear-gradient(90deg,transparent 0,#000 21%,#000 100%);filter:saturate(.9) contrast(1.05)}.hero-watermark{position:absolute;left:47%;top:90px;width:420px;height:430px;background:url(../images/crest.png) center/contain no-repeat;opacity:.055;filter:grayscale(1)}.hero-slash{position:absolute;left:-2%;right:-2%;bottom:145px;height:15px;background:var(--red);transform:rotate(-1.6deg);z-index:3}.hero-trust{height:100px;max-width:1130px;margin-top:3px;border:1px solid rgba(255,255,255,.35);border-radius:12px;background:linear-gradient(180deg,rgba(9,26,62,.95),rgba(2,12,38,.95));display:grid;grid-template-columns:repeat(3,1fr);align-items:center;overflow:hidden}.trust-item{display:flex;align-items:center;gap:17px;padding:0 43px;min-height:62px}.trust-item:not(:last-child){border-right:1px solid rgba(255,255,255,.22)}.trust-item>svg{width:38px;height:38px;color:var(--red)}.trust-item div{display:grid}.trust-item strong{font-size:1.35rem;line-height:1.1}.trust-item span{color:var(--muted);font-size:1rem;margin-top:6px}.rating-inline>svg{fill:var(--red);stroke:none}.rating-inline .stars{font-size:1.15rem;margin-left:8px}

/* Services */
.services{padding:44px 0 28px;min-height:920px}.services-top{display:grid;grid-template-columns:42% 58%;align-items:end;gap:30px}.feature-row{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;gap:0;margin-bottom:42px}.feature-mini{display:flex;align-items:center;gap:14px;padding:0 22px;min-height:74px}.feature-mini:not(:first-child){border-left:1px solid rgba(255,255,255,.25)}.feature-mini>svg{width:47px;height:47px;color:var(--red);flex:0 0 auto}.feature-mini b{display:block;text-transform:uppercase;font-size:.95rem}.feature-mini span{display:block;color:var(--muted);line-height:1.28;margin-top:3px}.section-watermark{position:absolute;left:36%;top:100px;width:460px;height:270px;background:url(../images/crest.png) center/contain no-repeat;filter:grayscale(1);opacity:.035}.service-grid{margin-top:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{position:relative;height:250px;border:1px solid rgba(255,255,255,.42);border-radius:11px;overflow:hidden;background:#071737;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}.service-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.service-card::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,11,34,.25),rgba(3,11,34,.15) 42%,rgba(2,8,28,.92) 100%),linear-gradient(0deg,rgba(2,8,28,.92),transparent 58%)}.service-icon{position:absolute;left:22px;bottom:50px;z-index:3;width:72px;height:72px;border-radius:50%;border:2px solid rgba(255,255,255,.85);display:grid;place-items:center;background:#071333}.service-icon svg{width:38px;height:38px;color:#fff}.service-copy{position:absolute;z-index:3;left:118px;right:18px;bottom:18px}.service-copy h3{font-family:var(--display);font-style:italic;text-transform:uppercase;font-size:1.7rem;margin:0;line-height:1.02}.service-copy p{font-size:1rem;color:#f1f3f8;margin:0;line-height:1.25}.section-bottom-cta{border-top:3px solid var(--red);margin-top:18px;display:flex;align-items:center;justify-content:center;gap:34px;padding-top:16px;text-transform:uppercase;font-size:1.25rem}.section-bottom-cta a{display:flex;align-items:center;gap:12px}.section-bottom-cta svg{color:var(--red);width:30px;height:30px}.section-bottom-cta>span{width:1px;height:35px;background:rgba(255,255,255,.35)}

/* Results */
.results{padding:54px 0 60px;min-height:890px}.results-watermark{position:absolute;right:60px;top:35px;width:430px;height:300px;background:url(../images/crest.png) center/contain no-repeat;opacity:.06;filter:grayscale(1)}.results .section-heading h2{font-size:clamp(4rem,5vw,5.7rem)}.results-grid{margin-top:38px;display:grid;grid-template-columns:repeat(4,1fr);gap:27px}.result-card{margin:0;border:1px solid rgba(255,255,255,.48);border-radius:12px;overflow:hidden;background:#050d29}.result-card figcaption{height:58px;display:grid;place-items:center;text-transform:uppercase;font-family:var(--display);font-style:italic;font-size:1.35rem;letter-spacing:.025em}.result-image{height:340px;background:#02081f}.result-image img{width:100%;height:100%;object-fit:cover}.result-labels{display:grid;grid-template-columns:1fr 1fr;height:50px;font-family:var(--display);font-size:1.25rem;text-transform:uppercase}.result-labels span{display:grid;place-items:center}.result-labels span:last-child{background:var(--red)}.center-action{text-align:center;margin-top:40px}.center-action .btn{min-width:360px;font-size:1.2rem}

/* About */
.about{min-height:880px;padding:34px 0 58px;background:linear-gradient(90deg,#020923 0,#07163a 46%,#061128 100%)}.about-layout{display:grid;grid-template-columns:47% 53%;min-height:800px;align-items:center}.about-copy{padding-right:28px}.section-index{display:flex;align-items:center;gap:15px;text-transform:uppercase;font-style:italic;margin-bottom:50px}.section-index strong{background:var(--red);font-size:1.45rem;padding:7px 14px}.section-index span{font-size:1.45rem}.about h2{font-size:clamp(4.1rem,5.1vw,5.85rem);line-height:.95}.about .lead{font-size:1.25rem;color:var(--muted);max-width:760px}.about-list{font-size:1.1rem;margin-top:22px}.rating-card{margin-top:32px;display:flex;align-items:center;gap:26px;border:1px solid rgba(255,255,255,.38);border-radius:13px;padding:23px 40px;width:min(690px,100%);background:rgba(6,18,50,.65)}.rating-card img{width:112px}.rating-card .divider{width:1px;align-self:stretch;background:rgba(255,255,255,.4)}.rating-card>div{display:grid}.rating-card strong{font-size:2.7rem;line-height:1}.rating-card strong .stars{font-size:2.1rem;margin-left:16px}.rating-card span{font-size:1.35rem;margin-top:9px}.rating-card small{color:var(--muted-2);font-size:1.1rem;margin-top:5px}.about-media{position:absolute;right:-46px;top:0;width:56%;height:850px}.about-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#041033 0,rgba(4,16,51,.15) 24%,rgba(3,8,25,.05) 100%)}.about-media img{width:100%;height:100%;object-fit:cover;object-position:center;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 17%,#000 100%);mask-image:linear-gradient(90deg,transparent 0,#000 17%,#000 100%)}.about-slash{position:absolute;left:-2%;right:-2%;bottom:34px;height:9px;background:var(--red);transform:rotate(-3.5deg);z-index:5}

/* Reviews */
.reviews{min-height:900px;padding:48px 0 50px}.reviews-watermark{position:absolute;right:180px;top:5px;width:520px;height:290px;background:url(../images/crest.png) center/contain no-repeat;filter:grayscale(1);opacity:.05}.reviews-top{display:flex;justify-content:space-between;align-items:end;gap:40px}.reviews-top .section-heading{max-width:1050px}.reviews-top .section-heading em{font-style:normal;color:var(--red)}.google-rating{display:flex;align-items:flex-start;gap:16px;margin-bottom:12px;min-width:260px}.google-g{font-weight:900;font-size:3.2rem;line-height:1;background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 25% 50%,#fbbc05 50% 75%,#ea4335 75% 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.google-rating>div:last-child{display:grid}.google-rating b{font-size:1.25rem}.google-rating strong{font-size:1.7rem}.google-rating span{color:var(--muted);font-size:1rem}.review-carousel-wrap{position:relative;margin-top:38px;padding:0 14px}.review-carousel{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.review-card{min-height:395px;border:1px solid rgba(255,255,255,.38);border-radius:12px;background:linear-gradient(180deg,rgba(10,31,72,.8),rgba(4,14,41,.88));padding:31px 28px 0;display:flex;flex-direction:column;position:relative}.review-card>.stars{font-size:1.55rem;margin-bottom:24px}.quote-icon{position:absolute;left:18px;top:84px;color:var(--red);width:28px;height:28px}.review-card p{font-size:1.04rem;margin:0 0 28px;padding-left:20px;color:#f3f4f8}.reviewer{margin-top:auto;display:grid;padding-left:25px;position:relative}.reviewer::before{content:"";position:absolute;left:0;top:2px;width:15px;height:15px;border:2px solid var(--red);border-radius:50%}.reviewer::after{content:"";position:absolute;left:-3px;top:18px;width:22px;height:10px;border:2px solid var(--red);border-top:none;border-radius:0 0 10px 10px}.reviewer strong{font-size:1.05rem}.reviewer span{color:var(--muted);font-size:.9rem}.verified{border-top:1px solid rgba(255,255,255,.2);margin:24px -6px 0;padding:17px 0;display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.9rem}.google-g.mini{font-size:1.7rem}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:#071434;display:grid;place-items:center;cursor:pointer}.carousel-arrow svg{width:28px;height:28px}.carousel-arrow.prev{left:-46px}.carousel-arrow.prev svg{transform:rotate(180deg)}.carousel-arrow.next{right:-46px}.review-info-bar{margin-top:38px;min-height:100px;border:1px solid rgba(255,255,255,.32);border-radius:10px;background:rgba(4,14,40,.88);display:grid;grid-template-columns:1.3fr .8fr 1fr auto;align-items:center}.review-info-bar>div{padding:0 32px;display:flex;align-items:center;gap:15px;min-height:62px}.review-info-bar>div+div{border-left:1px solid rgba(255,255,255,.25)}.review-info-bar svg{width:31px;height:31px;color:var(--red)}.review-info-bar span{display:grid;color:var(--muted);font-size:.92rem}.review-info-bar b{color:#fff;font-size:1rem}.review-info-bar .btn{margin-right:16px;min-width:240px}

/* Process */
.process{min-height:880px;padding:66px 0 36px}.process-top{display:flex;justify-content:space-between;align-items:start}.process-logo{width:430px;margin-top:40px}.process-grid{margin-top:30px;display:grid;grid-template-columns:repeat(4,1fr);gap:34px;position:relative}.process-card{position:relative;min-height:425px;border:1px solid rgba(255,255,255,.34);border-radius:14px;background:linear-gradient(180deg,rgba(7,23,57,.9),rgba(3,13,38,.9));text-align:center;padding:30px 36px}.process-card:not(:last-child)::after{content:"";position:absolute;right:-35px;top:50%;width:35px;border-top:4px dotted var(--red)}.process-card:not(:last-child)::before{content:"›";position:absolute;right:-31px;top:calc(50% - 19px);z-index:3;width:38px;height:38px;border-radius:50%;border:2px solid var(--red);background:#071432;color:var(--red);display:grid;place-items:center;font-size:2rem;line-height:1}.step-number{display:grid;place-items:center;width:58px;height:58px;background:var(--red);border-radius:50%;font-family:var(--display);font-size:2.2rem;margin:0 auto 22px}.process-icon{width:110px;height:110px;color:#fff;margin:0 auto 18px}.process-card h3{font-family:var(--display);font-style:italic;text-transform:uppercase;font-size:1.6rem;margin:0}.process-card .mini-rule{margin:13px auto}.process-card p{color:var(--muted);font-size:1.05rem;margin:8px auto 0;max-width:250px}.process-trust{margin-top:28px;border-top:9px solid var(--red);padding:25px 210px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0}.process-trust>div{display:flex;align-items:center;gap:16px;padding:0 30px}.process-trust>div+div{border-left:1px solid rgba(255,255,255,.25)}.process-trust svg{width:34px;height:34px;color:var(--red)}.process-trust span{display:grid;color:var(--muted)}.process-trust b{color:#fff;font-size:1.1rem}

/* FAQ */
.faq{padding:56px 0 64px;min-height:900px}.faq-top{display:grid;grid-template-columns:66% 34%;align-items:start}.faq .faq-label{font-size:4.2rem;line-height:1;margin-bottom:18px}.faq #faq-title{font-size:clamp(4.3rem,5.7vw,6.6rem);line-height:.94;margin-top:10px}.faq-business-card{margin-left:auto;width:460px;padding-top:12px}.faq-business-card>img{width:430px;margin-left:auto;margin-bottom:25px}.faq-business-card>div{display:flex;align-items:center;gap:20px;padding:11px 12px 11px 32px;border-left:1px solid rgba(255,255,255,.45)}.faq-business-card svg{width:34px;height:34px;color:var(--red);flex:0 0 auto}.faq-business-card a{font-size:1.25rem;font-weight:800}.accordion{margin-top:27px;display:grid;gap:9px}.faq-item{border:1px solid rgba(255,255,255,.30);border-radius:9px;background:rgba(4,14,40,.76);overflow:hidden}.faq-item button{width:100%;border:0;background:transparent;display:grid;grid-template-columns:80px 1fr 40px;align-items:center;min-height:66px;padding:0 19px;text-align:left;cursor:pointer;font-size:1.45rem;font-weight:700}.faq-number{height:44px;display:grid;place-items:center;border-right:1px solid var(--red);color:var(--red);font-family:var(--display);font-size:1.8rem}.faq-item button>svg{justify-self:end;color:var(--red);transform:rotate(90deg);transition:.2s}.faq-item.open button>svg{transform:rotate(-90deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.faq-answer>p{overflow:hidden;margin:0;padding:0 40px 0 118px;color:var(--muted)}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer>p{padding-bottom:22px}.faq-slash{position:absolute;left:-2%;right:-2%;bottom:26px;height:10px;background:var(--red);transform:rotate(-1.8deg)}

/* Contact */
.contact{padding:44px 0 54px;min-height:930px}.contact-heading{position:relative;min-height:245px}.contact-heading h2{font-size:clamp(4rem,4.7vw,5.4rem)}.contact-heading h3{text-transform:uppercase;font-style:italic;letter-spacing:.13em;font-size:1.55rem;margin:7px 0}.contact-heading p{color:var(--muted);font-size:1.05rem}.contact-heading>img{position:absolute;right:5px;top:0;width:430px}.contact-grid{display:grid;grid-template-columns:53% 47%;gap:28px}.contact-panel{border:1px solid rgba(255,255,255,.34);border-radius:12px;background:linear-gradient(180deg,rgba(7,24,58,.82),rgba(3,14,39,.88));box-shadow:var(--shadow)}.contact-details{display:grid;grid-template-columns:51% 49%;padding:28px}.detail-list{padding-right:24px}.detail-item{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:9px 0 24px}.detail-item+.detail-item{border-top:1px solid rgba(255,255,255,.2);padding-top:25px}.detail-icon{display:grid;place-items:center;width:52px;height:52px;background:var(--red);border-radius:50%}.detail-icon svg{width:29px;height:29px}.detail-item>div{display:grid;align-content:start}.detail-item b{text-transform:uppercase;font-size:1.04rem}.detail-item a{font-size:1.5rem;font-weight:800;margin-top:4px}.detail-item small{color:var(--muted);margin-top:4px}.detail-item p{margin:5px 0 0;color:#f1f3f8}.hours{display:grid!important;grid-template-columns:1fr auto;column-gap:14px;row-gap:4px}.hours strong{font-weight:400}.map-card{display:flex;flex-direction:column;justify-content:center}.map-card img{width:100%;height:310px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.26)}.map-card .btn{margin-top:16px}.quote-form{padding:28px 26px}.form-head h3{font-family:var(--display);font-style:italic;text-transform:uppercase;font-size:1.55rem;margin:0}.form-head p{color:var(--muted);margin:4px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 15px;margin-top:17px}.form-grid label{display:grid;gap:6px;font-size:.86rem;font-weight:700}.form-grid label>span{color:var(--red)}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid rgba(255,255,255,.24);border-radius:7px;background:#061536;color:#fff;padding:13px 14px;outline:none}.form-grid textarea{resize:vertical;min-height:88px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(227,16,27,.12)}.form-grid select option{background:#061536}.consent{display:flex;align-items:center;gap:8px;margin:16px 0;font-size:.84rem;color:var(--muted)}.consent input{accent-color:var(--red)}.submit-btn{width:100%;min-height:55px}.form-note{min-height:22px;margin:10px 0 0;color:#b8f6c3;font-size:.9rem}.contact-bottom{display:grid;grid-template-columns:55% 45%;align-items:end;gap:35px;margin-top:26px}.area-chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.area-chips span{border:1px solid rgba(255,255,255,.28);padding:11px 18px;border-radius:7px;text-transform:uppercase;font-size:.9rem}.area-chips span::before{content:"●";color:var(--red);margin-right:8px}.trust-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.trust-highlights>div{display:flex;align-items:center;gap:12px;padding:0 18px}.trust-highlights>div+div{border-left:1px solid rgba(255,255,255,.22)}.trust-highlights svg{width:37px;height:37px;color:var(--red)}.trust-highlights span{display:grid;font-size:.8rem;color:var(--muted)}.trust-highlights b{text-transform:uppercase;color:#fff;font-size:.82rem}

/* Footer */
.site-footer{background:linear-gradient(180deg,#041033,#02081e);padding-top:42px}.footer-cta{min-height:260px;border:1px solid rgba(255,255,255,.36);border-radius:18px;background:linear-gradient(90deg,rgba(6,19,52,.98),rgba(8,26,64,.93));display:grid;grid-template-columns:55% 45%;align-items:center;padding:34px 45px;overflow:hidden}.footer-cta::after{content:"";position:absolute;right:0;top:0;width:42%;height:100%;background:url(../images/hero-car.jpg) 60% 55%/cover no-repeat;opacity:.12;-webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000)}.footer-cta-copy,.footer-cta-actions{position:relative;z-index:2}.footer-cta h2{font-size:clamp(3.3rem,4.2vw,4.8rem)}.footer-cta p{font-size:1.35rem;color:var(--muted);margin:8px 0}.footer-cta-actions{display:grid;gap:27px}.cta-buttons{display:flex;gap:18px;justify-content:flex-end}.cta-features{display:flex;justify-content:flex-end;gap:28px;color:#f1f3f8}.cta-features span::first-letter{color:var(--red)}.footer-red-line{height:5px;background:var(--red);margin-top:34px}.footer-grid{display:grid;grid-template-columns:34% 17% 23% 26%;gap:30px;padding:34px 0 34px}.footer-brand{padding-right:45px}.footer-brand>img{width:410px}.footer-brand p{font-size:1.1rem;line-height:1.55;color:var(--muted);max-width:390px}.footer-rating{border:1px solid rgba(255,255,255,.4);border-radius:8px;display:flex;align-items:center;gap:16px;width:330px;padding:12px 22px}.footer-rating>svg{width:44px;height:44px;fill:var(--red);color:var(--red)}.footer-rating>div{display:grid}.footer-rating b{font-size:1.45rem}.footer-col{display:flex;flex-direction:column;gap:13px}.footer-col h3{font-family:var(--display);text-transform:uppercase;letter-spacing:.03em;font-size:1.5rem;margin:7px 0 16px}.footer-col h3::after{content:"";display:block;width:44px;height:3px;background:var(--red);margin-top:9px}.footer-col a{color:#e7eaf1}.footer-col>a::before{content:"›";color:var(--red);font-size:1.8rem;line-height:.7;margin-right:12px}.contact-col{border-left:1px solid rgba(255,255,255,.25);padding-left:30px}.contact-col p{display:flex;gap:15px;margin:0 0 3px}.contact-col svg{width:34px;height:34px;color:var(--red);border:1px solid var(--red);border-radius:50%;padding:7px;flex:0 0 auto}.contact-col span{display:grid}.contact-col span>a::before{display:none}.contact-col small{color:var(--muted);line-height:1.3;margin-top:2px}.footer-bottom{border-top:1px solid rgba(255,255,255,.16);padding:16px 0 22px}.footer-bottom>.shell{display:flex;justify-content:space-between;align-items:center;color:var(--muted)}.footer-bottom>div>span{display:flex;align-items:center;gap:12px}.footer-bottom img{width:46px}.footer-bottom nav{display:flex;align-items:center;gap:22px}.footer-bottom i{width:2px;height:18px;background:var(--red)}.back-top{position:fixed;right:20px;bottom:20px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:#08193d;color:#fff;z-index:50;opacity:0;pointer-events:none;transition:.2s;cursor:pointer}.back-top.show{opacity:1;pointer-events:auto}

/* Reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.in-view{opacity:1;transform:none}

/* Responsive */
@media (max-width:1400px){
  .shell{width:min(1280px,calc(100% - 48px))}
  .brand{width:315px;flex-basis:315px}.desktop-nav{gap:22px}.desktop-nav a{font-size:.95rem}.header-actions .btn{padding-inline:16px}.call-header{min-width:200px}
  .hero-layout{grid-template-columns:59% 41%}.hero-media{width:50%}.hero-trust{max-width:1030px}.service-card{height:230px}.service-copy h3{font-size:1.45rem}.service-copy p{font-size:.92rem}.service-icon{width:64px;height:64px}.service-copy{left:105px}
  .result-image{height:295px}.about-media{width:54%}.review-card{padding-inline:20px}.review-card p{font-size:.95rem}.process-card{padding-inline:24px}.contact-grid{grid-template-columns:52% 48%}
}
@media (max-width:1180px){
  .site-header,.header-inner{height:92px}.desktop-nav,.header-actions{display:none}.brand{width:300px;flex-basis:300px}.menu-toggle{margin-left:auto;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.3);border-radius:9px;background:#061538}.menu-toggle svg{width:26px;height:26px}.menu-toggle .close-icon{display:none}.menu-toggle[aria-expanded="true"] .menu-icon{display:none}.menu-toggle[aria-expanded="true"] .close-icon{display:block}.mobile-menu{display:block;position:absolute;top:92px;left:0;right:0;background:#030d2d;border-top:1px solid rgba(255,255,255,.08);box-shadow:0 18px 45px rgba(0,0,0,.35)}.mobile-menu[hidden]{display:none}.mobile-menu-inner{display:grid;padding:16px 0 22px}.mobile-menu a{padding:12px 4px;text-transform:uppercase;font-weight:800}.mobile-menu .btn{margin-top:8px}
  .hero{min-height:auto;padding-bottom:35px}.hero-layout{grid-template-columns:1fr;min-height:760px;padding-top:55px}.hero-copy{max-width:760px}.hero-media{right:-140px;top:160px;width:72%;height:620px;opacity:.55}.hero-copy{z-index:5}.hero-slash{bottom:128px}.hero-trust{margin-top:20px}.trust-item{padding-inline:22px}
  .services-top{grid-template-columns:1fr}.feature-row{margin:15px 0 25px}.service-grid{grid-template-columns:repeat(2,1fr)}.results-grid{grid-template-columns:repeat(2,1fr)}.result-image{height:360px}.about-layout{grid-template-columns:1fr;min-height:800px}.about-copy{max-width:720px;z-index:4}.about-media{opacity:.42;width:74%;right:-120px}.reviews-top{align-items:start}.review-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px}.review-card{flex:0 0 310px;scroll-snap-align:start}.carousel-arrow{display:none}.review-info-bar{grid-template-columns:1fr 1fr}.review-info-bar .btn{margin:12px 16px}.process-grid{grid-template-columns:repeat(2,1fr)}.process-card:not(:last-child)::after,.process-card:not(:last-child)::before{display:none}.process-trust{padding-inline:0}.faq-top{grid-template-columns:1fr}.faq-business-card{margin:25px 0 0;width:100%;display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.faq-business-card>img{display:none}.faq-business-card>div{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:14px}.contact-heading>img{width:330px}.contact-grid{grid-template-columns:1fr}.contact-details{grid-template-columns:1fr 1fr}.contact-bottom{grid-template-columns:1fr}.footer-cta{grid-template-columns:1fr}.footer-cta-actions{margin-top:20px}.cta-buttons,.cta-features{justify-content:flex-start}.footer-grid{grid-template-columns:1.35fr 1fr 1fr}.footer-brand{grid-column:1/-1;border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:25px}.contact-col{border-left:0;padding-left:0}
}
@media (max-width:760px){
  body{font-size:15px}.shell{width:min(100% - 28px,680px)}
  .brand{width:255px;flex-basis:255px}.site-header,.header-inner{height:82px}.mobile-menu{top:82px}
  .hero-layout{min-height:760px;padding-top:32px}.hero .eyebrow{font-size:.78rem}.hero h1{font-size:clamp(3rem,14vw,4.6rem)}.hero-kicker{font-size:1.05rem;letter-spacing:.08em}.hero-media{right:-250px;top:230px;width:900px;height:560px;opacity:.33}.hero-actions{flex-direction:column;align-items:stretch;gap:12px}.hero-actions .btn{width:100%}.hero-slash{display:none}.hero-trust{height:auto;grid-template-columns:1fr;margin-top:15px}.trust-item{padding:17px 22px}.trust-item:not(:last-child){border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}
  .visual-section{padding-left:0;padding-right:0}.services,.results,.reviews,.process,.faq,.contact{padding-top:38px;padding-bottom:45px}.section-heading h2{font-size:3.3rem}.feature-row{grid-template-columns:repeat(2,1fr)}.feature-mini{padding:12px 10px;border:1px solid rgba(255,255,255,.12)!important}.service-grid{grid-template-columns:1fr}.service-card{height:260px}.section-bottom-cta{flex-direction:column;gap:12px;align-items:flex-start}.section-bottom-cta>span{display:none}.results .section-heading h2{font-size:3.7rem}.results-grid{grid-template-columns:1fr}.result-image{height:390px}.center-action .btn{min-width:0;width:100%}
  .about{padding:35px 0 70px}.about-layout{min-height:850px}.section-index{margin-bottom:30px}.about h2{font-size:4rem}.about .lead{font-size:1.05rem}.about-media{right:-180px;width:900px;height:850px;opacity:.22}.rating-card{padding:18px 20px}.rating-card img{width:78px}.rating-card strong{font-size:2rem}.rating-card strong .stars{font-size:1.25rem;margin-left:8px}.rating-card span{font-size:1rem}
  .reviews-top{display:grid}.google-rating{margin:0}.review-info-bar{grid-template-columns:1fr}.review-info-bar>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.18)}.review-info-bar .btn{margin:12px;width:calc(100% - 24px)}
  .process-top{display:grid}.process-logo{width:300px;margin:12px 0 0}.process-grid{grid-template-columns:1fr}.process-card{min-height:350px}.process-trust{grid-template-columns:1fr;border-top-width:6px}.process-trust>div{padding:15px 0}.process-trust>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.2)}
  .faq .faq-label{font-size:3.2rem}.faq #faq-title{font-size:3.65rem}.faq-business-card{grid-template-columns:1fr}.faq-item button{grid-template-columns:60px 1fr 30px;font-size:1.05rem;padding:0 12px}.faq-number{font-size:1.45rem}.faq-answer>p{padding-left:80px;padding-right:18px}.faq-item.open .faq-answer>p{padding-bottom:18px}.faq-slash{display:none}
  .contact-heading{padding-top:0}.contact-heading h2{font-size:3.7rem}.contact-heading>img{position:static;width:290px;margin-top:18px}.contact-details{grid-template-columns:1fr}.detail-list{padding-right:0}.map-card img{height:260px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.contact-bottom{gap:25px}.trust-highlights{grid-template-columns:1fr}.trust-highlights>div{padding:12px 0}.trust-highlights>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.18)}
  .footer-cta{padding:28px 22px}.footer-cta h2{font-size:3.4rem}.cta-buttons{display:grid}.cta-features{display:grid;gap:7px}.footer-grid{grid-template-columns:1fr}.footer-brand>img{width:330px}.footer-brand{padding-right:0}.footer-col{border-top:1px solid rgba(255,255,255,.12);padding-top:12px}.footer-bottom>.shell{display:grid;gap:18px}.footer-bottom nav{flex-wrap:wrap;gap:10px 15px}.footer-bottom i{height:14px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn{transition:none}}
/* final fidelity tweaks */
.stars{color:var(--gold)!important}
@media (min-width:1181px){.footer-cta h2{white-space:nowrap;font-size:clamp(3.5rem,3.9vw,4.25rem)}}
@media (max-width:760px){
  .hero h1 span{white-space:normal}
  .hero h1{font-size:clamp(2.75rem,12.5vw,3.7rem);line-height:.96}
  .hero-media{opacity:.22;right:-320px;top:280px}
  .hero-copy{overflow:hidden}
}

/* =========================================================
   Mobile responsiveness pass — 2026-08-29
   Keeps the desktop visual language while preventing crop,
   overflow and unreadably tight layouts on phones/tablets.
   ========================================================= */

@media (max-width: 900px){
  html,body{max-width:100%;overflow-x:hidden}
  .shell{width:min(100% - 32px,760px)}
  .visual-section,.site-footer{overflow:hidden}
  .section-heading p br,.contact-heading p br,.faq .section-heading p br{display:none}

  /* Header */
  .site-header,.header-inner{height:78px}
  .header-inner{gap:14px}
  .brand{width:min(245px,calc(100vw - 94px));flex:0 1 auto;min-width:0}
  .brand img{width:100%;max-height:64px;object-fit:contain;object-position:left center}
  .menu-toggle{width:46px;height:46px;flex:0 0 46px;margin-left:auto}
  .mobile-menu{top:78px;max-height:calc(100dvh - 78px);overflow:auto}
  .mobile-menu-inner{padding:12px 0 18px}
  .mobile-menu a{padding:11px 2px}
  .mobile-menu .btn{width:100%;white-space:normal;text-align:center}

  /* Hero — stack image below content instead of placing it behind text */
  .hero{padding:0 0 28px;min-height:0}
  .hero-layout{display:flex;flex-direction:column;min-height:0;padding-top:34px;align-items:stretch}
  .hero-copy{width:100%;max-width:none;padding:0;overflow:visible}
  .hero .eyebrow{font-size:.78rem;line-height:1.35;gap:9px;max-width:100%;white-space:normal}
  .hero .eyebrow>span{width:31px;height:10px}
  .hero h1{font-size:clamp(2.75rem,12vw,4.3rem);line-height:.94;margin-top:15px;max-width:100%;letter-spacing:0}
  .hero h1 span{display:block;white-space:normal;overflow-wrap:normal}
  .hero-kicker{font-size:clamp(.96rem,4.6vw,1.2rem);line-height:1.3;letter-spacing:.055em;margin:5px 0 13px}
  .hero-list{font-size:.96rem;line-height:1.42}
  .hero-list li{min-width:0;flex-wrap:wrap;column-gap:8px;row-gap:0}
  .hero-list li b{flex:0 0 auto}
  .check-list .check{width:20px;height:20px}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:11px;margin-top:24px;width:100%}
  .hero-actions .btn{width:100%;min-width:0;min-height:60px;padding:10px 16px;white-space:normal}
  .hero-actions .btn-xl span{text-align:left;font-size:1.03rem;min-width:0}
  .hero-actions .btn-xl small{font-size:.78rem}
  .hero-media{position:relative;inset:auto;width:calc(100% + 32px);height:300px;margin:24px -16px 0;opacity:1;order:2;z-index:1}
  .hero-media::before{inset:-40px -40px -20px;background:radial-gradient(circle at 55% 50%,rgba(23,71,150,.38),rgba(2,9,31,0) 68%)}
  .hero-media img{width:100%;height:100%;object-fit:cover;object-position:62% center;mask-image:none;-webkit-mask-image:none;filter:saturate(.9) contrast(1.04)}
  .hero-watermark{left:auto;right:-70px;top:84px;width:270px;height:270px;opacity:.045}
  .hero-slash{display:none}
  .hero-trust{width:100%;height:auto;margin:18px auto 0;grid-template-columns:1fr;border-radius:10px}
  .trust-item{min-height:0;padding:15px 17px;gap:13px}
  .trust-item:not(:last-child){border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}
  .trust-item>svg{width:30px;height:30px}
  .trust-item strong{font-size:1.05rem;overflow-wrap:anywhere}
  .trust-item span{font-size:.88rem;margin-top:2px}
  .rating-inline .stars{font-size:.94rem;margin-left:4px}

  /* Shared section headings */
  .services,.results,.reviews,.process,.faq,.contact{padding-top:42px;padding-bottom:48px;min-height:0}
  .section-heading h2,.section-heading.compact h2,.results .section-heading h2{font-size:clamp(2.9rem,11vw,4.25rem);line-height:.96}
  .section-heading p{font-size:.98rem;line-height:1.5}
  .eyebrow{font-size:.8rem;line-height:1.3}
  .red-rule{margin:14px 0 12px;height:3px;width:74px}

  /* Services */
  .services-top{grid-template-columns:1fr;gap:24px}
  .feature-row{grid-template-columns:1fr 1fr;gap:0;margin:0}
  .feature-mini{min-height:96px;padding:13px 12px;border:1px solid rgba(255,255,255,.14)!important}
  .feature-mini>svg{width:34px;height:34px}
  .feature-mini b{font-size:.82rem;line-height:1.2}
  .feature-mini span{font-size:.82rem}
  .service-grid{grid-template-columns:1fr;gap:14px;margin-top:25px}
  .service-card{height:235px;border-radius:10px}
  .service-card::after{background:linear-gradient(90deg,rgba(3,11,34,.18),rgba(3,11,34,.12) 35%,rgba(2,8,28,.88) 100%),linear-gradient(0deg,rgba(2,8,28,.95),transparent 66%)}
  .service-icon{width:56px;height:56px;left:17px;bottom:24px}
  .service-icon svg{width:29px;height:29px}
  .service-copy{left:88px;right:15px;bottom:19px}
  .service-copy h3{font-size:1.38rem;line-height:1.02}
  .service-copy p{font-size:.89rem;line-height:1.32}
  .section-bottom-cta{align-items:stretch;gap:10px;padding-top:16px;font-size:1rem}
  .section-bottom-cta a{width:100%;padding:11px 13px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:rgba(4,14,40,.45);white-space:normal}
  .section-bottom-cta>span{display:none}
  .section-bottom-cta svg{width:23px;height:23px;flex:0 0 auto}

  /* Results */
  .results-grid{grid-template-columns:1fr;gap:16px;margin-top:28px}
  .result-card{max-width:520px;width:100%;margin-inline:auto}
  .result-card figcaption{height:48px;font-size:1.15rem;padding:0 10px;text-align:center}
  .result-image{height:280px}
  .result-labels{height:46px;font-size:1.05rem}
  .center-action{margin-top:25px}
  .center-action .btn{width:100%;min-width:0;white-space:normal}
  .results-watermark{right:-110px;top:15px;width:300px;height:220px}

  /* About */
  .about{padding:40px 0 52px;min-height:0}
  .about-layout{display:flex;flex-direction:column;min-height:0}
  .about-copy{padding-right:0;width:100%}
  .section-index{margin-bottom:28px;gap:10px;flex-wrap:wrap}
  .section-index strong{font-size:1rem;padding:6px 10px}
  .section-index span{font-size:1rem}
  .about h2{font-size:clamp(3.1rem,12vw,4.5rem);line-height:.94}
  .about .lead{font-size:1rem;line-height:1.5}
  .about-list{font-size:.96rem}
  .rating-card{width:100%;padding:16px 15px;gap:14px;margin-top:24px}
  .rating-card img{width:64px;flex:0 0 64px}
  .rating-card .divider{flex:0 0 1px}
  .rating-card>div{min-width:0}
  .rating-card strong{font-size:1.8rem;display:flex;align-items:center;flex-wrap:wrap;gap:6px}
  .rating-card strong .stars{font-size:1rem;margin-left:0;letter-spacing:.01em}
  .rating-card span{font-size:.95rem;margin-top:4px}
  .rating-card small{font-size:.85rem}
  .about-media{position:relative;inset:auto;width:calc(100% + 32px);height:310px;margin:30px -16px -12px;opacity:1;order:2}
  .about-media img{mask-image:none;-webkit-mask-image:none;object-position:67% center}
  .about-media::after{background:linear-gradient(180deg,rgba(4,16,51,.05),rgba(2,9,35,.5))}
  .about-slash{display:none}

  /* Reviews */
  .reviews-top{display:grid;gap:22px}
  .google-rating{margin:0;min-width:0}
  .google-g{font-size:2.55rem}
  .google-rating strong{font-size:1.35rem}
  .review-carousel-wrap{margin-top:25px;padding:0}
  .review-carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:0;padding:0 0 8px;-webkit-overflow-scrolling:touch}
  .review-carousel::-webkit-scrollbar{height:5px}.review-carousel::-webkit-scrollbar-thumb{background:rgba(227,16,27,.7);border-radius:10px}
  .review-card{flex:0 0:min(84vw,315px);min-height:355px;padding:24px 21px 0;scroll-snap-align:start}
  .review-card>.stars{font-size:1.35rem;margin-bottom:20px}
  .review-card p{font-size:.96rem;line-height:1.52;padding-left:17px}
  .quote-icon{top:71px;left:14px;width:24px;height:24px}
  .carousel-arrow{display:none}
  .review-info-bar{grid-template-columns:1fr;margin-top:25px}
  .review-info-bar>div{min-height:auto;padding:14px 16px}
  .review-info-bar>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.18)}
  .review-info-bar .btn{margin:12px;width:calc(100% - 24px);min-width:0;white-space:normal}

  /* Process */
  .process-top{display:grid;gap:15px}
  .process-logo{width:min(300px,82vw);margin:0}
  .process-grid{grid-template-columns:1fr;gap:14px;margin-top:26px}
  .process-card{min-height:0;padding:23px 20px 25px}
  .process-card:not(:last-child)::after,.process-card:not(:last-child)::before{display:none}
  .step-number{width:50px;height:50px;font-size:1.8rem;margin-bottom:16px}
  .process-icon{width:78px;height:78px;margin-bottom:13px}
  .process-card h3{font-size:1.35rem}
  .process-card p{font-size:.95rem;line-height:1.45}
  .process-trust{grid-template-columns:1fr;margin-top:22px;padding:0;border-top-width:6px}
  .process-trust>div{padding:13px 0}
  .process-trust>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.18)}

  /* FAQ */
  .faq-top{grid-template-columns:1fr}
  .faq .faq-label{font-size:2.8rem;margin-bottom:6px}
  .faq #faq-title{font-size:clamp(3rem,11.5vw,4.25rem);line-height:.95}
  .faq-business-card{width:100%;margin:20px 0 0;padding:0;display:grid;grid-template-columns:1fr}
  .faq-business-card>img{display:none}
  .faq-business-card>div{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:12px 0;gap:13px}
  .faq-business-card svg{width:27px;height:27px}
  .faq-business-card a{font-size:1.05rem;overflow-wrap:anywhere}
  .accordion{margin-top:22px}
  .faq-item button{grid-template-columns:46px minmax(0,1fr) 26px;min-height:62px;padding:9px 11px;font-size:1rem;line-height:1.25}
  .faq-number{height:38px;font-size:1.25rem}
  .faq-item button>span:nth-child(2){min-width:0;overflow-wrap:anywhere}
  .faq-answer>p{padding:0 15px 0 69px;font-size:.92rem;line-height:1.5}
  .faq-item.open .faq-answer>p{padding-bottom:16px}
  .faq-slash{display:none}

  /* Contact */
  .contact-heading{min-height:0;padding:0}
  .contact-heading h2{font-size:clamp(3rem,11vw,4.3rem);line-height:.96}
  .contact-heading h3{font-size:1rem;letter-spacing:.09em}
  .contact-heading p{font-size:.96rem;line-height:1.5}
  .contact-heading>img{position:static;width:min(290px,80vw);margin:19px 0 5px}
  .contact-grid{grid-template-columns:1fr;gap:16px;margin-top:20px}
  .contact-details{grid-template-columns:1fr;padding:18px}
  .detail-list{padding-right:0}
  .detail-item{grid-template-columns:48px minmax(0,1fr);gap:13px;padding:7px 0 18px}
  .detail-item+.detail-item{padding-top:18px}
  .detail-icon{width:44px;height:44px}
  .detail-icon svg{width:24px;height:24px}
  .detail-item a{font-size:1.18rem;overflow-wrap:anywhere}
  .detail-item p{font-size:.92rem}
  .hours{grid-template-columns:1fr auto;column-gap:8px;font-size:.88rem}
  .map-card img{height:235px}
  .map-card .btn{width:100%;white-space:normal}
  .quote-form{padding:20px 18px}
  .form-grid{grid-template-columns:1fr;gap:12px;margin-top:14px}
  .form-grid .full{grid-column:auto}
  .form-grid input,.form-grid select,.form-grid textarea{font-size:16px;min-height:48px}
  .consent{align-items:flex-start;line-height:1.4}
  .contact-bottom{grid-template-columns:1fr;gap:24px;margin-top:25px}
  .area-chips{gap:8px}
  .area-chips span{font-size:.78rem;padding:9px 11px}
  .trust-highlights{grid-template-columns:1fr}
  .trust-highlights>div{padding:12px 0}
  .trust-highlights>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.18)}

  /* Footer */
  .site-footer{padding-top:26px}
  .footer-cta{grid-template-columns:1fr;padding:24px 18px;gap:20px}
  .footer-cta h2{font-size:clamp(2.8rem,10.5vw,4rem);white-space:normal;line-height:.95}
  .footer-cta p{font-size:.96rem}
  .footer-cta-actions{margin-top:0}
  .cta-buttons{display:grid;grid-template-columns:1fr;gap:10px;justify-content:stretch}
  .cta-buttons .btn{width:100%;min-width:0;white-space:normal;padding:10px 14px}
  .cta-features{display:grid;justify-content:start;gap:6px;font-size:.9rem}
  .footer-grid{grid-template-columns:1fr;gap:10px;padding:26px 0}
  .footer-brand{grid-column:auto;padding:0 0 22px;border-bottom:1px solid rgba(255,255,255,.15)}
  .footer-brand>img{width:min(320px,85vw)}
  .footer-brand p{font-size:.98rem}
  .footer-rating{width:100%;max-width:330px;padding:11px 15px}
  .footer-rating>svg{width:38px;height:38px}
  .footer-rating b{font-size:1.2rem}
  .footer-col{border-top:1px solid rgba(255,255,255,.12);padding-top:14px;gap:10px}
  .footer-col h3{font-size:1.25rem;margin:3px 0 10px}
  .contact-col{padding-left:0;border-left:0}
  .footer-bottom>.shell{display:grid;gap:16px;justify-items:start}
  .footer-bottom>div>span{font-size:.83rem;line-height:1.4}
  .footer-bottom img{width:38px}
  .footer-bottom nav{display:flex;flex-wrap:wrap;gap:9px 12px;font-size:.82rem}
  .footer-bottom i{height:13px}
  .back-top{width:44px;height:44px;right:14px;bottom:14px}
}

@media (max-width: 480px){
  .shell{width:calc(100% - 24px)}
  .brand{width:min(215px,calc(100vw - 82px))}
  .site-header,.header-inner{height:72px}.mobile-menu{top:72px;max-height:calc(100dvh - 72px)}
  .menu-toggle{width:42px;height:42px;flex-basis:42px}
  .hero-layout{padding-top:28px}
  .hero .eyebrow{font-size:.7rem}
  .hero h1{font-size:clamp(2.45rem,12.2vw,3.45rem)}
  .hero-kicker{font-size:.9rem}
  .hero-list{font-size:.9rem}
  .hero-media{width:calc(100% + 24px);margin-left:-12px;margin-right:-12px;height:245px}
  .hero-media img{object-position:60% center}
  .hero-actions .btn{font-size:.94rem}
  .btn-xl{min-height:58px}
  .trust-item strong{font-size:1rem}
  .section-heading h2,.section-heading.compact h2,.results .section-heading h2{font-size:clamp(2.65rem,12vw,3.55rem)}
  .services-top .section-heading h2 br{display:none}
  .feature-mini{min-height:103px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px}
  .feature-mini b{font-size:.75rem}
  .feature-mini span{font-size:.76rem}
  .service-card{height:220px}
  .service-copy{left:82px}
  .service-copy h3{font-size:1.22rem}
  .service-copy p{font-size:.84rem}
  .result-image{height:245px}
  .about h2{font-size:clamp(2.9rem,12.5vw,3.8rem)}
  .about-media{width:calc(100% + 24px);margin-left:-12px;margin-right:-12px;height:270px}
  .rating-card{display:grid;grid-template-columns:54px 1px minmax(0,1fr);gap:10px}
  .rating-card img{width:54px}
  .rating-card strong{font-size:1.55rem}
  .rating-card strong .stars{font-size:.86rem}
  .review-card{flex-basis:min(87vw,300px)}
  .process-logo{width:min(260px,78vw)}
  .faq #faq-title{font-size:clamp(2.7rem,11.5vw,3.5rem)}
  .faq-item button{grid-template-columns:42px minmax(0,1fr) 22px;font-size:.94rem}
  .faq-answer>p{padding-left:63px}
  .contact-heading h2{font-size:clamp(2.75rem,11.2vw,3.55rem)}
  .hours{grid-template-columns:1fr;font-size:.86rem;row-gap:1px}
  .hours strong{margin-bottom:5px;color:var(--muted)}
  .footer-cta{padding-inline:15px}
  .footer-cta h2{font-size:clamp(2.55rem,11vw,3.35rem)}
}

@media (max-width: 350px){
  .shell{width:calc(100% - 18px)}
  .brand{width:190px}
  .hero h1{font-size:2.25rem}
  .hero-actions .btn{padding-inline:10px}
  .feature-row{grid-template-columns:1fr}
  .feature-mini{min-height:78px}
  .service-copy{left:76px}
  .service-icon{left:13px;width:50px;height:50px}
  .service-copy h3{font-size:1.1rem}
  .rating-card{grid-template-columns:46px 1px minmax(0,1fr)}
  .rating-card img{width:46px}
  .rating-card strong{font-size:1.35rem}
}

/* small cross-device polish */
.skip-link{clip-path:inset(100%);width:1px;height:1px;overflow:hidden;white-space:nowrap;padding:0;border:0}
.skip-link:focus-visible{clip-path:none;width:auto;height:auto;overflow:visible;white-space:normal;padding:10px 14px;border-radius:8px;top:12px}
.desktop-nav a{white-space:nowrap}
@media (min-width:1181px) and (max-width:1550px){
  .shell{width:min(1360px,calc(100% - 44px))}
  .brand{width:290px;flex-basis:290px}
  .desktop-nav{gap:18px}
  .desktop-nav a{font-size:.9rem}
  .header-actions{gap:10px;margin-left:8px}
  .header-actions .btn{padding-inline:14px}
  .call-header{min-width:200px}
  .carousel-arrow.prev{left:-22px}.carousel-arrow.next{right:-22px}
}
@media (max-width:900px){
  .section-heading p br,.contact-heading p br,.faq .section-heading p br{display:block}
}
@media (max-width:480px){
  .services-top .section-heading h2 br{display:block}
}


/* =========================================================
   FINAL RESPONSIVE + INTERACTION FIX PASS — 2026-08-29
   ========================================================= */
.svg-sprite{position:absolute!important;width:0!important;height:0!important;overflow:hidden!important;visibility:hidden!important;pointer-events:none!important}
.menu-toggle{color:#fff}
.menu-toggle svg{display:block;color:#fff;stroke:#fff;fill:none}

/* True before/after comparison */
.compare{--pos:50%;position:relative;height:340px;overflow:hidden;background:#02081f;cursor:ew-resize;touch-action:pan-y;user-select:none;-webkit-user-select:none;outline:none}
.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.compare-before{z-index:1}
.compare-after{z-index:2;clip-path:inset(0 0 0 var(--pos))}
.compare-divider{position:absolute;z-index:3;left:var(--pos);top:0;bottom:0;width:2px;background:#fff;transform:translateX(-1px);display:flex;align-items:center;justify-content:center;pointer-events:none}
.compare-divider::before{content:"";position:absolute;width:48px;height:48px;border-radius:50%;border:2px solid #fff;background:#071434;box-shadow:0 4px 18px rgba(0,0,0,.35)}
.compare-divider span{position:relative;z-index:1;font:800 24px/1 Arial,sans-serif;color:#fff;margin:0 2px}
.compare:focus-visible{box-shadow:0 0 0 3px rgba(227,16,27,.7) inset}
.compare.dragging .compare-divider::before{background:var(--red)}
.about-list .about-point{display:inline}.about-list .about-point>b{margin-right:.25em}

/* Desktop: keep text and media in real grid tracks — no collisions. */
@media (min-width:1181px){
  .hero{min-height:823px}
  .hero-layout{display:grid;grid-template-columns:minmax(0,58%) minmax(0,42%);min-height:675px;align-items:center;gap:0;padding-top:30px}
  .hero-copy{grid-column:1;min-width:0;max-width:none;padding:0 34px 0 4px;z-index:4}
  .hero h1{font-size:clamp(3.55rem,4.1vw,4.95rem);max-width:100%;letter-spacing:.006em;line-height:.96}
  .hero h1 span{white-space:nowrap;max-width:100%}
  .hero-media{position:relative;grid-column:2;right:auto;top:auto;width:calc(100% + 105px);height:610px;margin-right:-105px;z-index:1;align-self:center}
  .hero-media::before{inset:-60px -20px -45px -120px}
  .hero-media img{object-position:55% center;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 17%,#000 100%);mask-image:linear-gradient(90deg,transparent 0,#000 17%,#000 100%)}
  .hero-watermark{left:45%;top:100px}
  .hero-trust{position:relative;z-index:6}

  .footer-cta{grid-template-columns:minmax(0,53%) minmax(0,47%);gap:34px;padding:34px 42px}
  .footer-cta-copy,.footer-cta-actions{min-width:0}
  .footer-cta h2{font-size:clamp(2.85rem,3.25vw,3.85rem);white-space:normal!important;max-width:760px;line-height:.96}
  .footer-cta p{font-size:clamp(1rem,1.2vw,1.25rem)}
  .footer-cta-actions{gap:20px}
  .cta-buttons{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:15px;justify-content:stretch}
  .cta-buttons .btn{width:100%;min-width:0;padding-inline:16px;white-space:normal;text-align:center}
  .cta-features{justify-content:flex-start;flex-wrap:wrap;gap:10px 20px;font-size:.92rem}
}

@media (min-width:1181px) and (max-width:1450px){
  .hero-layout{grid-template-columns:minmax(0,60%) minmax(0,40%)}
  .hero h1{font-size:clamp(3.35rem,4vw,4.2rem)}
  .hero-media{width:calc(100% + 70px);margin-right:-70px;height:575px}
  .footer-cta{grid-template-columns:minmax(0,51%) minmax(0,49%)}
  .footer-cta h2{font-size:clamp(2.6rem,3.2vw,3.35rem)}
}

/* Phones + tablets */
@media (max-width:900px){
  .shell{width:min(calc(100% - 28px),760px)}
  .menu-toggle{display:grid!important;place-items:center!important;position:relative!important;overflow:visible!important}
  .menu-toggle svg{width:25px!important;height:25px!important;opacity:1!important;visibility:visible!important}

  .section-heading h2,.section-heading.compact h2,.results .section-heading h2{max-width:100%;font-size:clamp(2.35rem,9.9vw,3.55rem);line-height:.96;letter-spacing:0;overflow-wrap:normal;word-break:normal}
  .services-top .section-heading h2 br{display:block}

  .feature-row{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .feature-mini{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;min-width:0;min-height:122px;padding:14px 8px!important}
  .feature-mini>svg{display:block;width:34px;height:34px;flex:0 0 auto}
  .feature-mini>div{min-width:0}
  .feature-mini b{font-size:.78rem;white-space:normal}
  .feature-mini span{font-size:.77rem;line-height:1.25}

  .service-card{height:260px}
  .service-icon{left:14px;bottom:20px;width:52px;height:52px}
  .service-copy{left:78px;right:13px;bottom:16px;min-width:0}
  .service-copy h3{font-size:clamp(1.12rem,5vw,1.4rem);overflow-wrap:normal}
  .service-copy p{font-size:.84rem;line-height:1.3}

  .results-grid{gap:18px}
  .result-card{max-width:520px}
  .compare{height:280px}
  .result-labels{height:46px}

  .about h2{max-width:100%;font-size:clamp(2.45rem,10vw,3.5rem);line-height:.94;letter-spacing:0;overflow-wrap:normal}
  .about-list li{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;margin:12px 0}
  .about-list .check{grid-column:1;margin-top:2px}
  .about-list .about-point{grid-column:2;display:grid;gap:1px;min-width:0;line-height:1.35}
  .about-list .about-point>b{margin:0;font-size:.98rem}
  .about-list .about-point>span{color:#f0f3f9}
  .about-media{height:330px;margin-top:28px}
  .about-media img{object-position:68% center}

  .footer-cta{overflow:hidden}
  .footer-cta h2{max-width:100%;overflow-wrap:normal;word-break:normal}
}

@media (max-width:480px){
  .shell{width:calc(100% - 24px)}
  .brand{width:min(220px,calc(100vw - 80px))}
  .menu-toggle{width:43px!important;height:43px!important;flex:0 0 43px!important}
  .menu-toggle svg{width:23px!important;height:23px!important}

  .hero h1{font-size:clamp(2.2rem,10.8vw,3rem);line-height:.96}
  .hero-kicker{font-size:.88rem;letter-spacing:.045em}
  .hero-media{height:235px}
  .hero-trust{margin-top:14px}

  .section-heading h2,.section-heading.compact h2,.results .section-heading h2{font-size:clamp(2.18rem,9.4vw,2.85rem)}
  .section-heading p{font-size:.93rem}
  .feature-mini{min-height:112px;padding:12px 6px!important}
  .feature-mini>svg{width:30px;height:30px}
  .feature-mini b{font-size:.72rem}
  .feature-mini span{font-size:.72rem}

  .service-card{height:250px}
  .service-copy{left:73px}
  .service-copy h3{font-size:1.12rem}
  .service-copy p{font-size:.8rem}

  .compare{height:235px}
  .compare-divider::before{width:44px;height:44px}
  .compare-divider span{font-size:21px}

  .about h2{font-size:clamp(2.25rem,9.8vw,2.9rem)}
  .about .lead{font-size:.96rem}
  .about-list .about-point>b{font-size:.94rem}
  .about-list .about-point>span{font-size:.9rem}
  .about-media{height:285px}

  .footer-cta h2{font-size:clamp(2.25rem,9.5vw,2.9rem)!important}
}

@media (max-width:350px){
  .feature-row{grid-template-columns:1fr}
  .feature-mini{min-height:90px}
  .section-heading h2,.section-heading.compact h2,.results .section-heading h2{font-size:2.05rem}
  .about h2{font-size:2.1rem}
}


/* Desktop grid containment: percentages + gaps previously exceeded the shell. */
@media (min-width:901px){
  .services-top{grid-template-columns:minmax(0,42fr) minmax(0,58fr)}
  .contact-grid{grid-template-columns:minmax(0,53fr) minmax(0,47fr)}
  .contact-bottom{grid-template-columns:minmax(0,55fr) minmax(0,45fr)}
  .footer-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,.75fr) minmax(0,1fr) minmax(0,1.15fr)}
  .services-top>* ,.contact-grid>* ,.contact-bottom>* ,.footer-grid>*{min-width:0}
}
@media (min-width:1181px) and (max-width:1450px){
  .hero-media{width:calc(100% + 20px);margin-right:-20px}
}
html,body{overflow-x:clip}
