:root{--navy:#081d32;--blue:#0b345c;--sky:#dcecf4;--yellow:#ffd83d;--cream:#f4f2eb;--ink:#101a22;--line:rgba(8,29,50,.17)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}main,section,article,div{min-width:0}
.topbar{height:32px;display:flex;justify-content:space-between;align-items:center;padding:0 3vw;background:var(--navy);color:rgba(255,255,255,.66);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.topbar strong{color:var(--yellow);margin-left:6px}
.site-header{height:92px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 3vw;border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:11px;font-size:15px;font-weight:900;letter-spacing:.03em}.brand>i{width:38px;height:38px;display:grid;place-items:center;background:var(--navy);color:var(--yellow);font-size:20px;font-weight:900;font-style:normal;clip-path:polygon(50% 0,100% 17%,86% 83%,50% 100%,14% 83%,0 17%)}.brand>span{display:flex;flex-direction:column}.brand small{font-size:7px;letter-spacing:.25em;color:#64707a}
nav{display:flex;gap:clamp(24px,3vw,48px)}nav a{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.header-cta{justify-self:end;min-height:45px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 16px;background:var(--yellow);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.header-cta span{font-size:14px}
.hero{min-height:calc(100vh - 124px);display:grid;grid-template-columns:.92fr 1.08fr}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(70px,8vw,130px) 5vw 55px;background:var(--navy);color:#fff}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 clamp(48px,7vw,90px);color:#98adc0;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.eyebrow span{width:28px;height:2px;background:var(--yellow)}h1{margin:0;font-size:clamp(62px,7.6vw,122px);font-weight:800;line-height:.84;letter-spacing:-.075em;text-transform:uppercase}h1 em{color:var(--yellow);font-style:normal}.hero-copy>p:not(.eyebrow){max-width:620px;margin:40px 0 34px;color:#a8b8c8;font-size:clamp(16px,1.3vw,20px);line-height:1.6}.hero-actions{display:flex;align-items:center;gap:28px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:50px;padding:0 19px;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.button-yellow{background:var(--yellow);color:var(--navy)}.phone-link{padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.4);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-proof{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:auto;padding-top:60px}.hero-proof span{padding-top:13px;border-top:1px solid rgba(255,255,255,.18);color:#738ba0;font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-proof strong{display:block;margin-bottom:5px;color:#fff;font-size:15px}.hero-visual{position:relative;min-height:620px;overflow:hidden}.hero-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.image-tag{position:absolute;left:24px;bottom:24px;padding:11px 14px;background:rgba(8,29,50,.9);color:#fff;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(8px)}
@media(max-width:900px){nav{display:none}.site-header{grid-template-columns:1fr auto}.hero{grid-template-columns:1fr}.hero-copy{min-height:700px}.hero-visual{min-height:550px}}
@media(max-width:600px){.topbar span{display:none}.topbar{justify-content:center}.site-header{height:76px}.brand{font-size:12px}.brand>i{width:32px;height:32px}.header-cta{gap:10px;padding:0 11px}.hero-copy{min-height:690px;padding:90px 5vw 45px}h1{font-size:clamp(40px,14vw,50px)}.hero-actions{align-items:flex-start;flex-direction:column}.hero-proof{gap:8px}.hero-visual{min-height:430px}}

button,input,select,textarea{font:inherit}.site-header{position:relative;z-index:30}.menu-button{display:none;min-width:44px;min-height:44px;border:0;background:transparent;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}nav a{position:relative}nav a::after{content:'';position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--yellow);transition:right .25s ease}nav a:hover::after,nav a.active::after{right:0}:focus-visible{outline:3px solid #1261a0;outline-offset:3px}
.section-pad{padding:clamp(90px,10vw,160px) 5vw}.section-label{margin:0;color:#60788e;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.section-heading{display:grid;grid-template-columns:1.55fr .45fr;gap:7vw;align-items:end;margin-bottom:70px}.section-heading h2,.control-copy h2,.safe-copy h2,.area-band h2,.included-section h2,.assessment-section h2,.safe-types h2,.delivery-flow h2,.values-section h2,.about-cta h2{margin:22px 0 0;font-size:clamp(48px,6.5vw,104px);font-weight:800;line-height:.88;letter-spacing:-.065em;text-transform:uppercase}.section-heading>p{margin:0 0 7px;color:#63717a;font-size:15px;line-height:1.65}
.services-preview{background:var(--cream)}.service-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{min-height:470px;display:flex;flex-direction:column;padding:28px;border:1px solid var(--line);background:#fff;transition:transform .25s ease,background .25s ease}.service-card:hover{transform:translateY(-6px);background:var(--sky)}.card-top{display:flex;justify-content:space-between;align-items:start;color:#718391;font-size:9px;font-weight:800}.card-top i{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--yellow);font-style:normal;font-size:11px}.service-card h3{max-width:340px;margin:auto 0 20px;font-size:clamp(31px,3vw,49px);line-height:.95;letter-spacing:-.05em;text-transform:uppercase}.service-card p{margin:0 0 35px;color:#68757e;font-size:13px;line-height:1.65}.card-link{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid var(--line);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.card-link b{font-size:15px}
.control-section{min-height:800px;display:grid;grid-template-columns:1.12fr .88fr;background:var(--sky)}.control-image{position:relative;min-height:650px}.control-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.control-image>span{position:absolute;left:24px;bottom:24px;padding:11px 13px;background:rgba(8,29,50,.92);color:#fff;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.control-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:8vw 5vw}.control-copy h2{font-size:clamp(45px,5vw,79px)}.control-copy>p:not(.section-label){max-width:590px;margin:35px 0;color:#586975;font-size:16px;line-height:1.65}.control-copy ul{width:100%;margin:0 0 36px;padding:0;border-top:1px solid var(--line);list-style:none}.control-copy li{padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.control-copy li span{margin-right:10px;color:#c09c00}.text-link{padding-bottom:7px;border-bottom:1px solid;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.text-link span{margin-left:40px}
.process-section{background:#fff}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);list-style:none}.process-grid li{min-height:290px;display:flex;flex-direction:column;padding:27px 2.5vw;border-right:1px solid var(--line)}.process-grid li:first-child{padding-left:0}.process-grid li:last-child{border:0}.process-grid li>span{color:#8898a4;font-size:9px;font-weight:800}.process-grid h3{margin:auto 0 17px;font-size:clamp(24px,2.3vw,37px);line-height:1;letter-spacing:-.04em;text-transform:uppercase}.process-grid p{margin:0;color:#68747c;font-size:12px;line-height:1.6}
.safe-feature{display:grid;grid-template-columns:.86fr 1.14fr;background:var(--navy);color:#fff}.safe-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:8vw 5vw}.safe-copy .section-label{color:var(--yellow)}.safe-copy h2{font-size:clamp(48px,5.7vw,91px)}.safe-copy>p:not(.section-label){max-width:600px;margin:35px 0;color:#9cb0c2;font-size:16px;line-height:1.65}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:38px}.tag-row span{padding:9px 11px;border:1px solid rgba(255,255,255,.2);color:#c3cdd6;font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.safe-image{min-height:700px}.safe-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.65)}
.reviews{background:var(--cream)}.reviews>.section-label{margin-bottom:60px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5vw}.review-grid blockquote{margin:0;padding-top:24px;border-top:3px solid var(--navy);font-size:clamp(21px,2.2vw,34px);font-weight:700;line-height:1.25;letter-spacing:-.035em}.review-grid cite{display:block;margin-top:36px;color:#74828c;font-size:9px;font-style:normal;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.area-band{display:grid;grid-template-columns:1.05fr .55fr .4fr;gap:5vw;align-items:center;padding:8vw 5vw;background:var(--yellow)}.area-band .section-label{color:var(--navy)}.area-band h2{font-size:clamp(48px,5.5vw,88px)}.area-list{display:flex;flex-direction:column}.area-list span{padding:13px 0;border-bottom:1px solid rgba(8,29,50,.25);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.circle-cta{width:min(17vw,210px);aspect-ratio:1;display:grid;place-items:center;justify-self:end;border-radius:50%;background:var(--navy);color:#fff;text-align:center;font-size:10px;font-weight:800;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;transition:transform .25s ease}.circle-cta:hover{transform:rotate(-4deg) scale(1.03)}.circle-cta b{display:block;color:var(--yellow);font-size:18px}
.site-footer{display:grid;grid-template-columns:1.35fr .55fr .8fr .6fr;gap:5vw;padding:75px 5vw 25px;background:#061726;color:#fff}.footer-brand p{max-width:400px;margin:25px 0 0;color:#74899b;font-size:13px;line-height:1.65}.site-footer .brand>i{background:var(--yellow);color:var(--navy)}.site-footer .brand small{color:#71889b}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;color:#8da0af;font-size:10px}.footer-links strong{margin-bottom:8px;color:#fff;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.footer-note{grid-column:1/-1;margin:55px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.13);color:#546a7b;font-size:8px;letter-spacing:.09em;text-transform:uppercase}.mobile-quote{display:none}

.inner-page{min-height:100vh}.page-hero{min-height:760px;display:grid;grid-template-columns:.95fr 1.05fr}.page-hero>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:8vw 5vw;background:var(--sky)}.page-hero h1{font-size:clamp(59px,7vw,112px)}.page-hero>div>p:not(.section-label){max-width:600px;margin:35px 0;color:#5f727f;font-size:17px;line-height:1.65}.page-hero>img{width:100%;height:100%;min-height:650px;object-fit:cover;filter:saturate(.75)}.dark-page-hero>div{background:var(--navy);color:#fff}.dark-page-hero>div>p:not(.section-label){color:#9eb1c1}.dark-page-hero .section-label{color:var(--yellow)}.delivery-hero>div{background:#e7edf0}
.service-list{background:#fff}.service-list article{display:grid;grid-template-columns:70px 1.1fr 1fr auto;gap:3vw;align-items:start;padding:32px 0;border-top:1px solid var(--line)}.service-list article:last-child{border-bottom:1px solid var(--line)}.service-list article>span{color:#7c8c97;font-size:9px;font-weight:800}.service-list h2,.delivery-grid h2{margin:0;font-size:clamp(29px,3.4vw,52px);line-height:1;letter-spacing:-.045em;text-transform:uppercase}.service-list p{max-width:550px;margin:0;color:#64737c;font-size:13px;line-height:1.65}.service-list article>a{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.included-section{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;background:var(--yellow)}.included-section h2{font-size:clamp(44px,5vw,78px)}.included-section ul{margin:0;padding:0;list-style:none}.included-section li{padding:18px 0;border-bottom:1px solid rgba(8,29,50,.25);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.included-section li::before{content:'✓';margin-right:12px}
.assessment-section{background:#fff}.assessment-section>div:first-child{max-width:1100px}.assessment-section h2{font-size:clamp(48px,6vw,94px)}.assessment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2vw;margin-top:80px}.assessment-grid article{min-height:300px;display:flex;flex-direction:column;padding:25px;border:1px solid var(--line)}.assessment-grid article>span{color:#7890a2;font-size:9px;font-weight:800}.assessment-grid h3{margin:auto 0 15px;font-size:29px;line-height:1;letter-spacing:-.04em;text-transform:uppercase}.assessment-grid p{margin:0;color:#63717b;font-size:12px;line-height:1.6}.safe-types{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;padding:9vw 5vw;background:var(--sky)}.safe-types h2{font-size:clamp(47px,5vw,82px)}.safe-types>div>p:not(.section-label){max-width:600px;margin:32px 0;color:#5f707c;line-height:1.65}.safe-types ul{margin:0;padding:0;list-style:none}.safe-types li{padding:18px 0;border-bottom:1px solid var(--line);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.safe-types li::before{content:'✓';margin-right:12px;color:#806b00}.caution-band{display:grid;grid-template-columns:150px 1fr;gap:25px;padding:30px 5vw;background:var(--yellow)}.caution-band span{font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.caution-band p{max-width:1000px;margin:0;font-size:13px;line-height:1.55}
.delivery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2vw;background:#fff}.delivery-grid article{min-height:350px;display:flex;flex-direction:column;padding:30px;border:1px solid var(--line)}.delivery-grid article>span{color:#7d8e9a;font-size:9px;font-weight:800}.delivery-grid h2{margin:auto 0 20px}.delivery-grid p{max-width:600px;margin:0;color:#65747d;font-size:13px;line-height:1.65}.delivery-flow{display:grid;grid-template-columns:1.1fr .75fr auto;gap:6vw;align-items:start;background:var(--navy);color:#fff}.delivery-flow .section-label{color:var(--yellow)}.delivery-flow h2{font-size:clamp(43px,4.9vw,78px)}.delivery-flow ol{margin:0;padding:0;list-style:none}.delivery-flow li{display:flex;gap:20px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.18)}.delivery-flow li>span{color:var(--yellow);font-size:9px;font-weight:800}.delivery-flow li p{margin:0;color:#a6b5c1;font-size:12px}.delivery-flow .button{align-self:end}
.about-hero{background:var(--sky)}.about-hero h1{max-width:1200px;margin:35px 0;font-size:clamp(67px,10vw,158px)}.about-hero>p:last-child{max-width:720px;margin:0;color:#5e707c;font-size:20px;line-height:1.55}.about-image{height:min(70vw,850px)}.about-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.7)}.values-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;background:#fff}.values-section h2{font-size:clamp(44px,5vw,80px)}.values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2vw}.values-grid article{min-height:280px;display:flex;flex-direction:column;padding:25px;border:1px solid var(--line)}.values-grid span{color:#83939e;font-size:9px;font-weight:800}.values-grid h3{margin:auto 0 15px;font-size:31px;letter-spacing:-.04em;text-transform:uppercase}.values-grid p{margin:0;color:#63727b;font-size:12px;line-height:1.6}.about-cta{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5vw;padding:8vw 5vw;background:var(--yellow)}.about-cta .section-label{color:var(--navy)}.about-cta h2{font-size:clamp(55px,7vw,110px)}
.quote-page{min-height:900px;display:grid;grid-template-columns:.85fr 1.15fr}.quote-intro{padding:9vw 5vw;background:var(--navy);color:#fff}.quote-intro .section-label{color:var(--yellow)}.quote-intro h1{margin:50px 0 40px;font-size:clamp(70px,8vw,130px)}.quote-intro>p:not(.section-label){max-width:590px;color:#9eb1c0;font-size:17px;line-height:1.65}.quote-intro dl{margin:90px 0 0}.quote-intro dl div{display:grid;grid-template-columns:130px 1fr;padding:15px 0;border-top:1px solid rgba(255,255,255,.18)}.quote-intro dt{color:#71899d;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.quote-intro dd{margin:0;font-size:12px}.quote-form-wrap{display:grid;place-items:center;padding:8vw 6vw;background:#fff}.quote-form,.quote-success{width:min(720px,100%)}.quote-progress{display:flex;align-items:center;margin-bottom:55px}.quote-progress span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);color:#71818c;font-size:10px;font-weight:800}.quote-progress span.done{background:var(--navy);border-color:var(--navy);color:#fff}.quote-progress i{flex:1;height:1px;background:var(--line)}.quote-progress i.done{background:var(--navy)}.quote-form fieldset{margin:0;padding:0;border:0}.quote-form legend{font-size:clamp(36px,4vw,60px);font-weight:800;line-height:1;letter-spacing:-.05em;text-transform:uppercase}.quote-form fieldset>p{margin:17px 0 40px;color:#68767f;font-size:13px;line-height:1.6}.quote-form label{display:block;margin-bottom:28px;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:8px;padding:12px 0;border:0;border-bottom:1px solid var(--navy);border-radius:0;background:transparent;color:var(--ink);font-size:16px;font-weight:400;text-transform:none;letter-spacing:normal;outline:none}.quote-form textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:3vw}.form-next,.form-submit{width:100%;min-height:58px;display:flex;justify-content:space-between;align-items:center;margin-top:38px;padding:0 18px;border:0;background:var(--yellow);color:var(--navy);cursor:pointer;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.form-next span,.form-submit span{font-size:16px}.form-nav{display:flex;align-items:center;gap:25px}.form-nav>button:first-child{border:0;background:transparent;cursor:pointer;font-size:9px;font-weight:800;text-transform:uppercase}.form-nav .form-next,.form-nav .form-submit{flex:1}.quote-form .consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none}.quote-form .consent input{flex:none;width:16px;height:16px;margin:0}.quote-form fieldset>small{display:block;margin-top:14px;color:#85919a;font-size:8px}.quote-success>span{width:62px;height:62px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);font-size:24px;font-weight:900}.quote-success .section-label{margin:45px 0 20px}.quote-success h2{margin:0 0 25px;font-size:clamp(40px,4.5vw,68px);line-height:1;letter-spacing:-.05em;text-transform:uppercase}.quote-success>p{color:#67757e;line-height:1.65}.quote-success button{margin-top:25px;padding:0 0 6px;border:0;border-bottom:1px solid;background:transparent;cursor:pointer;font-size:9px;font-weight:800;text-transform:uppercase}.quote-success small{display:block;margin-top:25px;color:#8a959d;font-size:8px}

@media(max-width:1000px){.section-heading{grid-template-columns:1fr}.service-card-grid{grid-template-columns:1fr}.service-card{min-height:350px}.control-section,.safe-feature,.page-hero,.quote-page{grid-template-columns:1fr}.safe-image{min-height:600px}.area-band{grid-template-columns:1fr 1fr}.circle-cta{width:180px}.page-hero>div{min-height:680px}.service-list article{grid-template-columns:50px 1fr}.service-list p{grid-column:2}.service-list article>a{grid-column:2}.assessment-grid{grid-template-columns:repeat(2,1fr)}.delivery-flow{grid-template-columns:1fr}.delivery-flow .button{justify-self:start}.values-section{grid-template-columns:1fr}.quote-intro{min-height:760px}}
@media(max-width:900px){nav.nav-open{position:absolute;top:92px;left:0;right:0;display:flex;flex-direction:column;gap:0;padding:25px 3vw 35px;border-top:1px solid var(--line);background:#fff;box-shadow:0 25px 50px rgba(8,29,50,.15)}nav.nav-open a{padding:13px 0;font-size:22px;text-transform:none;letter-spacing:-.02em}.header-cta{display:none}.menu-button{display:block}.review-grid{grid-template-columns:1fr;gap:65px}.process-grid{grid-template-columns:repeat(2,1fr)}.process-grid li:nth-child(2){border-right:0}.process-grid li:nth-child(n+3){border-top:1px solid var(--line)}.included-section,.safe-types{grid-template-columns:1fr}.delivery-grid{grid-template-columns:1fr}}
@media(max-width:650px){.section-pad{padding:80px 5vw}.section-heading h2,.control-copy h2,.safe-copy h2,.area-band h2,.included-section h2,.assessment-section h2,.safe-types h2,.delivery-flow h2,.values-section h2,.about-cta h2{font-size:46px}.control-image{min-height:480px}.control-copy{padding:80px 5vw}.process-grid{grid-template-columns:1fr}.process-grid li,.process-grid li:first-child{min-height:220px;padding:25px 0;border-right:0;border-top:1px solid var(--line)}.safe-copy{padding:80px 5vw}.safe-image{min-height:450px}.area-band{grid-template-columns:1fr}.circle-cta{justify-self:start}.site-footer{grid-template-columns:1fr;gap:35px;padding-bottom:100px}.footer-note{margin-top:20px}.mobile-quote{position:fixed;z-index:50;left:12px;right:12px;bottom:12px;display:flex;justify-content:space-between;padding:17px;background:var(--yellow);box-shadow:0 15px 45px rgba(8,29,50,.35);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.page-hero>div{min-height:650px}.page-hero>img{min-height:430px}.page-hero h1{font-size:54px}.service-list article{grid-template-columns:35px 1fr;gap:18px}.assessment-grid{grid-template-columns:1fr}.assessment-grid article{min-height:240px}.caution-band{grid-template-columns:1fr}.values-grid{grid-template-columns:1fr}.about-hero h1{font-size:62px}.about-cta{grid-template-columns:1fr}.quote-intro{min-height:690px;padding:85px 5vw}.quote-intro h1{font-size:63px}.quote-form-wrap{padding:80px 5vw 100px}.form-row{grid-template-columns:1fr}}
@media(max-width:600px){.site-header{grid-template-columns:1fr auto}.hero-proof{grid-template-columns:repeat(3,1fr)}.hero-proof strong{font-size:13px}.site-header nav{display:none}.site-header nav.nav-open{display:flex;top:76px}.menu-button{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important}}

/* Cinematic motion system */
body{overflow-x:hidden}
body::before{content:'';position:fixed;z-index:90;inset:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.page-loader{position:fixed;z-index:1000;inset:0;display:grid;place-content:center;justify-items:center;background:var(--navy);color:#fff;transition:opacity .65s cubic-bezier(.22,1,.36,1),visibility .65s}
.page-loader.is-finished{opacity:0;visibility:hidden}
.loader-mark{display:flex;align-items:center;gap:14px;font-size:16px;font-weight:900;letter-spacing:.04em;animation:loaderFloat 1.5s ease-in-out infinite}
.loader-mark>i{width:54px;height:54px;display:grid;place-items:center;background:var(--yellow);color:var(--navy);font-size:27px;font-style:normal;clip-path:polygon(50% 0,100% 17%,86% 83%,50% 100%,14% 83%,0 17%)}
.loader-mark>span{display:flex;flex-direction:column}.loader-mark small{color:#8297a9;font-size:8px;letter-spacing:.27em}
.loader-track{width:min(65vw,310px);height:2px;margin-top:32px;overflow:hidden;background:rgba(255,255,255,.16)}
.loader-track span{display:block;width:100%;height:100%;background:var(--yellow);transform-origin:left;animation:loaderTrack 1.15s cubic-bezier(.65,0,.35,1) both}
.page-loader p{margin:13px 0 0;color:#6e879a;font-size:8px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.scroll-progress{position:fixed;z-index:101;top:0;left:0;width:100%;height:3px;pointer-events:none;background:transparent}
.scroll-progress span{display:block;width:100%;height:100%;background:var(--yellow);box-shadow:0 0 18px rgba(255,216,61,.7);transform:scaleX(0);transform-origin:left;will-change:transform}
.cursor-glow,.cursor-dot{position:fixed;z-index:95;left:0;top:0;pointer-events:none;border-radius:50%;opacity:0;will-change:transform}
.cursor-glow{width:260px;height:260px;margin:-130px 0 0 -130px;background:radial-gradient(circle,rgba(255,216,61,.12),rgba(255,216,61,0) 68%);transition:opacity .25s}
.cursor-dot{width:8px;height:8px;margin:-4px 0 0 -4px;background:var(--yellow);box-shadow:0 0 16px rgba(255,216,61,.75);transition:width .2s,height .2s,margin .2s,opacity .2s,background .2s}
body.has-pointer .cursor-glow,body.has-pointer .cursor-dot{opacity:1}body.pointer-active .cursor-dot{width:36px;height:36px;margin:-18px 0 0 -18px;background:rgba(255,216,61,.25);border:1px solid var(--yellow)}
.site-header{position:sticky;top:0;transition:height .35s ease,background .35s ease,box-shadow .35s ease,transform .35s ease}.site-header.is-scrolled{height:72px;background:rgba(255,255,255,.91);box-shadow:0 15px 45px rgba(8,29,50,.12);backdrop-filter:blur(16px)}
.topbar{position:relative;z-index:31;overflow:hidden}.topbar::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent,rgba(255,216,61,.13),transparent);transform:translateX(-100%);animation:topbarSweep 5s ease-in-out infinite}
.brand>i{animation:brandPulse 4s ease-in-out infinite}.brand:hover>i{animation:brandSpin .65s cubic-bezier(.34,1.56,.64,1)}
.header-cta,.button-yellow,.form-next,.form-submit{position:relative;overflow:hidden;isolation:isolate;transition:transform .3s cubic-bezier(.2,.9,.25,1),box-shadow .3s ease}
.header-cta::before,.button-yellow::before,.form-next::before,.form-submit::before{content:'';position:absolute;z-index:-1;inset:-2px;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.72) 48%,transparent 70%);transform:translateX(-130%);transition:transform .65s ease}
.header-cta:hover::before,.button-yellow:hover::before,.form-next:hover::before,.form-submit:hover::before{transform:translateX(130%)}
.header-cta:hover,.button-yellow:hover,.form-next:hover,.form-submit:hover{box-shadow:0 16px 38px rgba(255,216,61,.28);transform:translateY(-3px)}
.hero{position:relative;isolation:isolate}.hero-copy{position:relative;overflow:hidden}.hero-copy::before{content:'';position:absolute;right:-28%;bottom:-48%;width:620px;aspect-ratio:1;border:1px solid rgba(255,216,61,.12);border-radius:50%;box-shadow:0 0 0 75px rgba(255,216,61,.025),0 0 0 150px rgba(255,216,61,.02);animation:heroOrbit 18s linear infinite}
.hero-copy::after{content:'V';position:absolute;right:-.08em;bottom:-.17em;color:rgba(255,255,255,.025);font-size:min(52vw,680px);font-weight:900;line-height:1;pointer-events:none}
.hero-copy>*{position:relative;z-index:1}.hero-copy .eyebrow{animation:heroEnter .85s .9s both}.hero-copy h1{animation:heroEnter .95s 1.02s both}.hero-copy>p:not(.eyebrow){animation:heroEnter .9s 1.15s both}.hero-actions{animation:heroEnter .85s 1.28s both}.hero-proof{animation:heroEnter .85s 1.4s both}
.hero-copy h1 em{position:relative;display:inline-block;background:linear-gradient(100deg,var(--yellow) 15%,#fff5ac 43%,var(--yellow) 67%);background-size:240% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:textShimmer 4.5s linear infinite}
.eyebrow span{position:relative;overflow:visible}.eyebrow span::after{content:'';position:absolute;right:-2px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 0 rgba(255,216,61,.5);animation:signalPulse 2s ease-out infinite}
.hero-visual{isolation:isolate}.hero-visual::after{content:'';position:absolute;z-index:2;inset:0;background:linear-gradient(110deg,rgba(8,29,50,.42),transparent 38%,rgba(255,216,61,.08));mix-blend-mode:multiply;pointer-events:none}.hero-visual img{transform:scale(1.08);animation:heroKenBurns 14s ease-in-out infinite alternate;will-change:transform}
.hero-visual-lines{position:absolute;z-index:3;inset:0;pointer-events:none}.hero-visual-lines i{position:absolute;top:-20%;width:1px;height:140%;background:linear-gradient(transparent,rgba(255,255,255,.55),transparent);transform:rotate(18deg);opacity:.25;animation:visualLine 7s linear infinite}.hero-visual-lines i:nth-child(1){left:15%}.hero-visual-lines i:nth-child(2){left:52%;animation-delay:-2.3s}.hero-visual-lines i:nth-child(3){left:84%;animation-delay:-4.6s}
.hero-index{position:absolute;z-index:4;right:24px;top:24px;padding:10px 12px;border:1px solid rgba(255,255,255,.45);color:#fff;font-size:8px;font-weight:900;letter-spacing:.15em;backdrop-filter:blur(8px)}
.image-tag{z-index:4;animation:tagFloat 3.5s ease-in-out infinite}
.motion-marquee{overflow:hidden;padding:17px 0;background:var(--yellow);color:var(--navy);border-block:1px solid rgba(8,29,50,.2)}.motion-marquee>div{display:flex;width:max-content;align-items:center;gap:28px;animation:marqueeMove 25s linear infinite}.motion-marquee span{font-size:11px;font-weight:900;letter-spacing:.13em}.motion-marquee i{font-size:10px;font-style:normal}
.reveal-target{opacity:0;transform:translate3d(0,55px,0);transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1)}.reveal-target.reveal-left{transform:translate3d(-65px,0,0)}.reveal-target.reveal-right{transform:translate3d(65px,0,0)}.reveal-target.is-visible{opacity:1;transform:translate3d(0,0,0)}
.service-card,.values-grid article,.process-grid li,.review-grid blockquote{position:relative;transform-style:preserve-3d;will-change:transform;transition:transform .22s ease,box-shadow .35s ease,border-color .35s ease,background .35s ease}.service-card::before,.values-grid article::before,.process-grid li::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--tilt-x,50%) var(--tilt-y,50%),rgba(255,216,61,.16),transparent 42%);opacity:0;transition:opacity .3s}.service-card:hover::before,.values-grid article:hover::before,.process-grid li:hover::before{opacity:1}.service-card:hover{box-shadow:0 34px 75px rgba(8,29,50,.18)}
.service-card .card-top,.service-card h3,.service-card p,.service-card .card-link,.values-grid article>*,.process-grid li>*{transform:translateZ(22px)}
.card-top i{transition:transform .5s cubic-bezier(.34,1.56,.64,1),box-shadow .35s}.service-card:hover .card-top i{transform:rotate(12deg) scale(1.12);box-shadow:0 12px 28px rgba(8,29,50,.22)}.card-link b,.text-link span{display:inline-block;transition:transform .3s}.service-card:hover .card-link b,.text-link:hover span{transform:translateX(8px)}
.control-image,.safe-image,.page-hero>img{overflow:hidden}.control-image img,.safe-image img,.page-hero>img{transform:translate3d(0,var(--parallax-y,0),0) scale(1.12);will-change:transform;transition:filter .6s}.control-image:hover img,.safe-image:hover img{filter:saturate(1)}
.control-copy li{position:relative;overflow:hidden;transition:padding-left .3s,color .3s}.control-copy li::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .45s}.control-copy li:hover{padding-left:12px;color:var(--navy)}.control-copy li:hover::after{transform:scaleX(1)}
.process-grid{position:relative}.process-grid::after{content:'';position:absolute;left:0;top:-2px;width:var(--process-fill,0%);height:3px;background:var(--yellow);box-shadow:0 0 18px rgba(255,216,61,.5);transition:width .25s linear}.process-grid li>span{transition:color .3s,transform .3s}.process-grid li:hover>span{color:#b69500;transform:translateX(8px)}
.safe-feature{position:relative;overflow:hidden}.safe-feature::after{content:'';position:absolute;left:0;top:0;width:55%;height:100%;pointer-events:none;background:radial-gradient(circle at var(--spot-x,50%) var(--spot-y,50%),rgba(255,216,61,.15),transparent 35%);mix-blend-mode:screen}.tag-row span{transition:transform .3s,background .3s,color .3s}.tag-row span:hover{transform:translateY(-4px);background:var(--yellow);color:var(--navy)}
.review-grid blockquote{padding:28px 20px 20px;transition:transform .35s,background .35s,box-shadow .35s}.review-grid blockquote::before{content:'“';position:absolute;right:14px;top:-25px;color:rgba(8,29,50,.08);font-size:120px;line-height:1;font-weight:900}.review-grid blockquote:hover{background:#fff;box-shadow:0 28px 65px rgba(8,29,50,.12);transform:translateY(-10px) rotate(-.6deg)}
.area-band{position:relative;overflow:hidden}.area-band::before{content:'VANGUARD';position:absolute;right:-.05em;bottom:-.35em;color:rgba(8,29,50,.055);font-size:clamp(100px,21vw,330px);font-weight:900;letter-spacing:-.09em;pointer-events:none}.area-band>*{position:relative;z-index:1}.area-list span{transition:padding-left .3s,background .3s}.area-list span:hover{padding-left:12px;background:rgba(255,255,255,.25)}.circle-cta{animation:circleBreathe 3.5s ease-in-out infinite}
.quote-intro{position:relative;overflow:hidden}.quote-intro::after{content:'';position:absolute;right:-300px;bottom:-300px;width:650px;height:650px;border:1px solid rgba(255,216,61,.13);border-radius:50%;box-shadow:0 0 0 70px rgba(255,216,61,.025),0 0 0 140px rgba(255,216,61,.02);animation:heroOrbit 20s linear infinite}.quote-intro>*{position:relative;z-index:1}
.quote-form fieldset.step-enter{animation:formStepIn .55s cubic-bezier(.22,1,.36,1) both}.quote-progress span{transition:transform .35s cubic-bezier(.34,1.56,.64,1),background .3s,color .3s}.quote-progress span.done{transform:scale(1.12)}.quote-progress i{position:relative;overflow:hidden}.quote-progress i.done::after{content:'';position:absolute;inset:0;background:var(--yellow);animation:lineFill .5s ease both}.quote-form input,.quote-form select,.quote-form textarea{transition:border-color .3s,padding-left .3s,background .3s}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{padding-left:10px;border-color:#b99500;background:rgba(255,216,61,.06)}
.confetti-piece{position:fixed;z-index:1200;left:var(--x);top:var(--y);width:9px;height:16px;background:var(--color);pointer-events:none;animation:confettiBurst 1.25s cubic-bezier(.15,.7,.25,1) forwards}
.site-footer .brand>i{animation:footerMark 6s ease-in-out infinite}.footer-links a{position:relative;transition:color .25s,transform .25s}.footer-links a:hover{color:var(--yellow);transform:translateX(6px)}.mobile-quote{overflow:hidden}.mobile-quote::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent,rgba(255,255,255,.7),transparent);transform:translateX(-130%);animation:mobileShine 3.5s ease-in-out infinite}
@keyframes loaderFloat{50%{transform:translateY(-7px)}}@keyframes loaderTrack{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes topbarSweep{0%,35%{transform:translateX(-100%)}70%,100%{transform:translateX(100%)}}@keyframes brandPulse{0%,100%{filter:drop-shadow(0 0 0 rgba(255,216,61,0))}50%{filter:drop-shadow(0 0 12px rgba(255,216,61,.32))}}@keyframes brandSpin{to{transform:rotate(360deg)}}
@keyframes heroEnter{from{opacity:0;transform:translateY(46px)}to{opacity:1;transform:none}}@keyframes heroOrbit{to{transform:rotate(360deg)}}@keyframes textShimmer{to{background-position:-240% center}}@keyframes signalPulse{70%{box-shadow:0 0 0 13px rgba(255,216,61,0)}100%{box-shadow:0 0 0 0 rgba(255,216,61,0)}}@keyframes heroKenBurns{from{transform:scale(1.08) translate3d(-1%,0,0)}to{transform:scale(1.16) translate3d(2%,-1%,0)}}@keyframes visualLine{from{transform:translateX(-180px) rotate(18deg)}to{transform:translateX(180px) rotate(18deg)}}@keyframes tagFloat{50%{transform:translateY(-7px)}}@keyframes marqueeMove{to{transform:translateX(-50%)}}
@keyframes circleBreathe{50%{box-shadow:0 0 0 15px rgba(8,29,50,.09);transform:scale(1.035)}}@keyframes formStepIn{from{opacity:0;transform:translateX(45px)}to{opacity:1;transform:none}}@keyframes lineFill{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1)}}@keyframes confettiBurst{0%{opacity:1;transform:translate3d(0,0,0) rotate(0)}100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) rotate(var(--rot))}}@keyframes footerMark{50%{transform:rotateY(180deg)}}@keyframes mobileShine{0%,45%{transform:translateX(-130%)}80%,100%{transform:translateX(130%)}}
@media(pointer:coarse){.cursor-glow,.cursor-dot{display:none}.service-card,.values-grid article,.process-grid li{transform:none!important}}
@media(max-width:900px){.site-header.is-scrolled{height:68px}.hero-copy::before{opacity:.45}.motion-marquee>div{animation-duration:20s}}
@media(max-width:650px){.hero-visual-lines{opacity:.45}.hero-index{top:15px;right:15px}.motion-marquee{padding:14px 0}.motion-marquee span{font-size:9px}.reveal-target,.reveal-target.reveal-left,.reveal-target.reveal-right{transform:translate3d(0,35px,0)}}
@media(prefers-reduced-motion:reduce){.page-loader{display:none}.scroll-progress,.cursor-glow,.cursor-dot{display:none!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.reveal-target,.reveal-target.reveal-left,.reveal-target.reveal-right{opacity:1!important;transform:none!important}.hero-visual img,.control-image img,.safe-image img,.page-hero>img{transform:none!important}}

/* Payments, booking management and legal pages */
[hidden]{display:none!important}
button:disabled{cursor:not-allowed;opacity:.58;transform:none!important}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.mobile-quote.is-hidden{opacity:0;pointer-events:none;transform:translateY(130%);transition:opacity .25s,transform .25s}
.form-message{margin:16px 0 0!important;padding:12px 14px;border-left:3px solid #c63737;background:#fff0f0;color:#8d2020!important;font-size:12px!important;line-height:1.5!important}
.consent a,.payment-legal a,.legal-content a{font-weight:800;text-decoration:underline;text-underline-offset:3px}

.payment-policy{background:var(--sky)}
.payment-policy-heading{display:grid;grid-template-columns:1.05fr 1fr;gap:4vw;align-items:end}
.payment-policy-heading .section-label{grid-column:1/-1}
.payment-policy-heading h2{margin:0;font-size:clamp(48px,5.7vw,88px);line-height:.92;letter-spacing:-.065em;text-transform:uppercase}
.payment-policy-heading>p:last-child{max-width:620px;margin:0;color:#536875;font-size:15px;line-height:1.7}
.payment-stage-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border:1px solid rgba(8,29,50,.2)}
.payment-stage-grid article{min-height:310px;padding:30px;border-right:1px solid rgba(8,29,50,.2);background:rgba(255,255,255,.24)}
.payment-stage-grid article:last-child{border-right:0}
.payment-stage-grid span{display:block;color:var(--blue);font-size:clamp(54px,6vw,90px);font-weight:900;line-height:1;letter-spacing:-.08em}
.payment-stage-grid h3{margin:70px 0 14px;font-size:21px;text-transform:uppercase}
.payment-stage-grid p{margin:0;color:#536875;font-size:13px;line-height:1.65}
.payment-legal{margin:28px 0 0;color:#4c6270;font-size:11px;line-height:1.65}

.utility-body{min-height:100vh;background:var(--cream)}
.utility-header{position:relative;z-index:5;min-height:92px;display:flex;align-items:center;justify-content:space-between;padding:20px 4vw;border-bottom:1px solid var(--line);background:#fff}
.utility-back{padding:0 0 6px;border:0;border-bottom:1px solid var(--navy);background:transparent;color:var(--navy);cursor:pointer;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.utility-shell{min-height:calc(100vh - 92px);display:grid;grid-template-columns:.9fr 1.1fr}
.utility-intro{display:flex;flex-direction:column;justify-content:center;padding:8vw 5vw;background:var(--navy);color:#fff}
.utility-intro .section-label{color:var(--yellow)}
.utility-intro h1{margin:42px 0 30px;font-size:clamp(66px,7vw,108px)}
.utility-intro>p:not(.section-label){max-width:590px;margin:0;color:#9eb1c0;font-size:16px;line-height:1.7}
.secure-note{display:flex;align-items:center;gap:16px;margin-top:55px;padding-top:25px;border-top:1px solid rgba(255,255,255,.18)}
.secure-note>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);color:var(--navy);font-weight:900}
.secure-note p{margin:0;color:#8ea4b6;font-size:11px;line-height:1.55}.secure-note strong{color:#fff;text-transform:uppercase}
.payment-card{align-self:center;width:min(760px,90%);margin:70px auto;padding:clamp(28px,5vw,65px);background:#fff;box-shadow:0 30px 90px rgba(8,29,50,.12)}
.loading-state{min-height:180px;display:grid;place-content:center;justify-items:center;gap:18px;color:#687b88;font-size:12px;text-align:center}
.spinner{width:35px;height:35px;border:3px solid var(--line);border-top-color:var(--yellow);border-radius:50%;animation:spinner .75s linear infinite}
@keyframes spinner{to{transform:rotate(360deg)}}
.notice{padding:17px 18px;border-left:4px solid var(--yellow);background:#fff8d8;color:#5a4a00;font-size:12px;line-height:1.55}
.notice-error{border-color:#c63737;background:#fff0f0;color:#8d2020}.notice-success{border-color:#29845a;background:#edf9f2;color:#145f3d}
.payment-card-top,.booking-card-top{display:flex;justify-content:space-between;gap:25px;align-items:flex-start}
.payment-card-top .section-label{margin-bottom:8px}.payment-card-top strong{font-size:15px;letter-spacing:.04em}
.status-pill{display:inline-flex;padding:8px 10px;border-radius:999px;background:var(--sky);color:var(--blue);font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.payment-card h2{margin:55px 0 15px;font-size:clamp(38px,5vw,64px);line-height:1;letter-spacing:-.05em;text-transform:uppercase}
.payment-card>div>p,#payment-summary{color:#667782;font-size:13px;line-height:1.65}
.booking-summary{margin:40px 0 0;border-top:1px solid var(--line)}
.booking-summary div{display:grid;grid-template-columns:145px 1fr;padding:14px 0;border-bottom:1px solid var(--line)}
.booking-summary dt,.admin-facts dt{color:#76858f;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.booking-summary dd,.admin-facts dd{margin:0;font-size:12px}
.money-grid{display:grid;grid-template-columns:repeat(3,1fr);margin:35px 0;border:1px solid var(--line)}
.money-grid div{padding:18px;border-right:1px solid var(--line)}.money-grid div:last-child{border-right:0}
.money-grid span{display:block;margin-bottom:9px;color:#71808a;font-size:7px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.money-grid strong{font-size:17px}
.terms-check{display:flex;align-items:flex-start;gap:12px;color:#5f717c;font-size:11px;line-height:1.55}.terms-check input{flex:none;width:17px;height:17px;margin:0}.terms-check a{font-weight:800;text-decoration:underline}
.payment-complete{margin-top:30px;padding:22px;background:var(--sky);color:var(--blue);font-weight:800;text-align:center}

.result-shell{min-height:calc(100vh - 92px);display:grid;place-items:center;padding:70px 5vw;background:var(--navy)}
.result-card{width:min(740px,100%);padding:clamp(35px,6vw,80px);background:#fff;text-align:center}
.result-mark{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 35px;border-radius:50%;background:var(--yellow);color:var(--navy);font-size:28px;font-weight:900}
.result-card h1{margin:25px 0 30px;font-size:clamp(55px,7vw,95px)}
.result-card>p:not(.section-label){max-width:580px;margin:0 auto;color:#60727e;font-size:15px;line-height:1.7}
.result-details{margin:28px 0;padding:18px;background:var(--sky);font-size:11px;font-weight:800;text-transform:uppercase}.result-card .button{margin-top:35px}

.admin-shell{padding:70px 5vw 110px}.admin-login{width:min(720px,100%);margin:4vw auto;padding:clamp(35px,6vw,75px);background:#fff;box-shadow:0 30px 90px rgba(8,29,50,.1)}
.admin-login h1{margin:45px 0 30px;font-size:clamp(62px,8vw,110px)}.admin-login>p:not(.section-label){color:#60727e;line-height:1.7}.admin-login label,.quote-setter label{display:block;margin-top:35px;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.admin-login input,.quote-setter input{display:block;width:100%;margin-top:8px;padding:14px 0;border:0;border-bottom:1px solid var(--navy);background:transparent;font-size:16px;outline:none}
.admin-dashboard{width:min(1300px,100%);margin:0 auto}.admin-dashboard-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.admin-dashboard-heading h1{margin:20px 0 0;font-size:clamp(72px,9vw,140px)}
.outline-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;padding:13px 16px;border:1px solid var(--navy);background:transparent;color:var(--navy);cursor:pointer;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.danger-button{border-color:#a52c2c;color:#8d2020}.admin-help{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:14px 20px;align-items:start;margin:45px 0;padding:25px;background:var(--navy);color:#fff}
.admin-help>span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);color:var(--navy);font-size:9px;font-weight:900}.admin-help p{margin:0;color:#91a6b7;font-size:10px;line-height:1.55}.admin-help strong{color:#fff;text-transform:uppercase}
.booking-list{display:grid;gap:22px;margin-top:28px}.booking-card{padding:clamp(24px,4vw,45px);background:#fff;border:1px solid var(--line);box-shadow:0 15px 45px rgba(8,29,50,.05)}
.booking-ref{color:#70818d;font-size:8px;font-weight:900;letter-spacing:.1em}.booking-card h2{margin:8px 0 0;font-size:32px;letter-spacing:-.04em;text-transform:uppercase}
.admin-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:32px 0 0;border-top:1px solid var(--line)}.admin-facts div{min-height:75px;padding:16px 14px 12px 0;border-bottom:1px solid var(--line)}.admin-facts dt{margin-bottom:8px}.admin-facts dd{line-height:1.45}
.booking-notes{padding:16px;background:var(--cream);color:#566a77;font-size:11px;line-height:1.65}.admin-totals{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.admin-totals span{padding:8px 10px;background:var(--sky);color:var(--blue);font-size:8px;font-weight:900;text-transform:uppercase}
.booking-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.quote-setter{display:flex;align-items:end;gap:12px;margin-right:auto}.quote-setter label{min-width:220px;margin:0}.compact-button{width:auto!important;min-height:43px!important;margin:0!important;padding:0 15px!important}

.legal-shell{display:grid;grid-template-columns:.78fr 1.22fr;min-height:calc(100vh - 92px)}
.legal-shell>header{position:sticky;top:0;height:calc(100vh - 0px);padding:8vw 5vw;background:var(--navy);color:#fff}.legal-shell>header .section-label{color:var(--yellow)}.legal-shell>header h1{margin:50px 0 35px;font-size:clamp(60px,7vw,105px)}.legal-shell>header>p:last-child{color:#98adbd;font-size:15px;line-height:1.7}
.legal-content{padding:7vw 6vw;background:#fff}.legal-content section{display:grid;grid-template-columns:45px 1fr;gap:25px;padding:32px 0;border-top:1px solid var(--line)}.legal-content section>span{color:#87959e;font-size:9px;font-weight:900}.legal-content h2{margin:0 0 15px;font-size:26px;text-transform:uppercase}.legal-content p{margin:0 0 13px;color:#536875;font-size:13px;line-height:1.75}

@media(max-width:1000px){.payment-policy-heading,.utility-shell,.legal-shell{grid-template-columns:1fr}.payment-stage-grid{grid-template-columns:1fr}.payment-stage-grid article{border-right:0;border-bottom:1px solid var(--line)}.payment-stage-grid article:last-child{border-bottom:0}.payment-card{margin-block:50px}.legal-shell>header{position:relative;height:auto;min-height:620px}.admin-facts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.utility-header{min-height:76px}.utility-header .brand>span{display:none}.payment-policy-heading h2{font-size:44px}.money-grid{grid-template-columns:1fr}.money-grid div{border-right:0;border-bottom:1px solid var(--line)}.money-grid div:last-child{border-bottom:0}.booking-summary div{grid-template-columns:110px 1fr}.payment-card-top,.booking-card-top,.admin-dashboard-heading{align-items:flex-start;flex-direction:column}.admin-help{grid-template-columns:auto 1fr}.admin-facts{grid-template-columns:1fr}.booking-actions,.quote-setter{align-items:stretch;flex-direction:column;width:100%}.quote-setter label{min-width:0}.booking-actions .outline-button,.booking-actions .danger-button,.booking-actions .compact-button{width:100%!important}.legal-shell>header{min-height:560px}.legal-content{padding:70px 5vw}.legal-content section{grid-template-columns:32px 1fr;gap:12px}.result-card h1{font-size:48px}}

/* Accessibility, responsive containment, and secure admin dashboard */
.skip-link{position:fixed;z-index:2000;left:14px;top:14px;padding:12px 16px;background:#fff;color:var(--navy);font-size:12px;font-weight:900;transform:translateY(-180%)}
.skip-link:focus{transform:none}
.section-label{color:#425f75}
.hero-copy h1{max-width:100%;font-size:clamp(50px,6.4vw,102px)}
.hero-copy .eyebrow{color:#b7c6d2}.hero-copy>p:not(.eyebrow){color:#bdc9d4}.hero-proof span{color:#adbdca}
.utility-shell>*{min-width:0}.payment-card{width:min(760px,calc(100% - 32px))}.payment-card h2,.result-card h1{overflow-wrap:anywhere}
.status-pill{max-width:100%;white-space:normal;text-align:center}
.footer-links a{min-height:24px;display:flex;align-items:center}.footer-note{color:#91a4b3}
.quote-form fieldset>small{color:#5d6b74}.section-label,.booking-summary dt,.admin-facts dt{filter:none}
.admin-session{display:flex;align-items:center;gap:18px}.admin-session>span{max-width:52vw;overflow:hidden;text-overflow:ellipsis;color:#536875;font-size:10px;font-weight:800}
.text-button{min-height:44px;margin-top:12px;padding:8px 0;border:0;border-bottom:1px solid var(--navy);background:transparent;color:var(--navy);cursor:pointer;font-size:10px;font-weight:800}
.admin-login input:focus,.quote-setter input:focus,.booking-filters input:focus,.booking-filters select:focus{outline:3px solid #1261a0;outline-offset:3px}
.admin-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:48px 0 24px}
.admin-metrics article{min-height:175px;display:flex;flex-direction:column;padding:22px;background:#fff;border:1px solid var(--line)}
.admin-metrics span{color:#60717d;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.admin-metrics strong{margin:auto 0 10px;color:var(--navy);font-size:clamp(28px,3.2vw,50px);line-height:1;letter-spacing:-.06em;overflow-wrap:anywhere}.admin-metrics small{color:#647581;font-size:9px;line-height:1.4}
.admin-insights{display:grid;grid-template-columns:1.45fr .55fr;gap:20px;margin:20px 0}.admin-insights-secondary{grid-template-columns:1fr 1fr}
.analytics-panel,.admin-bookings-section{padding:clamp(22px,3vw,38px);background:#fff;border:1px solid var(--line)}
.panel-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:26px}.panel-heading h2{margin:9px 0 0;font-size:clamp(26px,3vw,44px);line-height:1;text-transform:uppercase;letter-spacing:-.045em}
.analytics-chart{height:250px;display:grid;grid-template-columns:repeat(14,minmax(10px,1fr));align-items:end;gap:7px;padding-top:25px;border-bottom:1px solid var(--line)}
.chart-day{height:100%;display:grid;grid-template-rows:1fr auto;gap:8px;align-items:end}.chart-bars{height:100%;display:flex;align-items:end;justify-content:center;gap:2px}.chart-bar{width:40%;min-height:0;display:block;background:var(--navy)}.chart-bar-enquiries{background:var(--yellow)}.chart-day>span{font-size:7px;color:#657984;transform:rotate(-45deg);transform-origin:center;white-space:nowrap}
.funnel-list,.rank-list{margin:0;padding:0}.funnel-list>div,.rank-list li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid var(--line)}.funnel-list dt,.rank-list span{color:#5b6e7a;font-size:10px}.funnel-list dd,.rank-list strong{margin:0;color:var(--navy);font-size:20px;font-weight:900}.rank-list{list-style:none}
.bookings-heading{align-items:flex-end}.booking-filters{display:flex;gap:12px}.booking-filters label{color:#536875;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.booking-filters label span{display:block;margin-bottom:7px}.booking-filters input,.booking-filters select{min-height:44px;min-width:190px;padding:0 12px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.booking-card h3{margin:8px 0 0;font-size:32px;letter-spacing:-.04em;text-transform:uppercase;overflow-wrap:anywhere}.booking-ref{overflow-wrap:anywhere}.admin-facts dd{overflow-wrap:anywhere}
.audit-panel{margin-top:20px}.audit-list{display:grid}.audit-row{display:grid;grid-template-columns:1fr 1fr 1.2fr 1fr;gap:18px;padding:14px 0;border-top:1px solid var(--line);font-size:10px}.audit-row strong{text-transform:capitalize}.audit-row span,.audit-row time{color:#5d707c;overflow-wrap:anywhere}
.outline-button,.danger-button,.compact-button{min-height:44px}.admin-dashboard-heading h1{overflow-wrap:anywhere}

@media(max-width:1100px){.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-insights{grid-template-columns:1fr}.audit-row{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:clamp(48px,9vw,88px)}}
@media(max-width:700px){
  .hero-copy h1{font-size:clamp(40px,13.5vw,50px)}.hero-copy{padding-inline:6vw}.hero-proof{grid-template-columns:1fr;gap:14px}.hero-proof span{min-width:0}
  .admin-shell{padding:42px 16px 90px}.admin-login{padding:28px 22px}.admin-login h1{font-size:clamp(42px,16vw,58px)}.admin-dashboard-heading h1{font-size:clamp(45px,16vw,64px)}
  .admin-session{gap:10px}.admin-session>span{font-size:8px}.admin-metrics{grid-template-columns:1fr}.admin-metrics article{min-height:140px}
  .analytics-panel,.admin-bookings-section{padding:22px 16px}.admin-insights-secondary{grid-template-columns:1fr}.analytics-chart{gap:3px;height:210px}.chart-day>span{font-size:6px}
  .bookings-heading,.booking-filters{align-items:stretch;flex-direction:column}.booking-filters{width:100%}.booking-filters input,.booking-filters select{width:100%;min-width:0}.audit-row{grid-template-columns:1fr}.booking-card{padding:22px 16px}.booking-card h3{font-size:26px}
  .payment-card{margin:30px 16px;width:calc(100% - 32px);padding:26px 20px}.payment-card h2{font-size:clamp(31px,11vw,44px)}.result-shell{padding:35px 16px}.result-card{padding:34px 20px}.result-card h1{font-size:clamp(34px,12vw,46px)}
  .legal-shell>header h1{font-size:clamp(42px,15vw,58px)}.status-pill{align-self:flex-start}
}
.page-hero h2{margin:0;font-size:clamp(59px,7vw,112px);font-weight:800;line-height:.84;letter-spacing:-.075em;text-transform:uppercase}.quote-intro h2{margin:50px 0 40px;font-size:clamp(70px,8vw,130px);font-weight:800;line-height:.84;letter-spacing:-.075em;text-transform:uppercase}.quote-intro h2 em{color:var(--yellow);font-style:normal}
@media(max-width:650px){.page-hero h2{font-size:54px}.quote-intro h2{font-size:63px}}
