:root{--navy:#082e5b;--blue:#0758b1;--ink:#172e45;--muted:#53677b;--line:#dce5ec;--display:Manrope,system-ui,sans-serif;--body:"DM Sans",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.7 var(--body)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}p{margin:0 0 18px}h1,h2,h3{font-family:var(--display);color:var(--navy);line-height:1.2;margin:0 0 20px}h2{font-size:clamp(30px,3.2vw,44px);letter-spacing:-1.6px}h3{font-size:20px;letter-spacing:-.4px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #388ddd;outline-offset:5px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:16px max(5vw,24px);background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand img{width:185px;height:auto;mix-blend-mode:multiply}.site-header nav{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600}.nav-cta,.button.primary{background:var(--blue);color:white;border-radius:5px}.nav-cta{padding:12px 18px}.menu{display:none}.hero,.section,.assurance{max-width:1320px;margin:auto;padding-left:6%;padding-right:6%}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;padding-top:56px;padding-bottom:56px;align-items:center}.hero-logo{width:330px;height:auto;margin-bottom:28px;mix-blend-mode:multiply}.eyebrow{font-size:13px;letter-spacing:1.8px;text-transform:uppercase;color:var(--blue);font-weight:700;margin-bottom:14px}h1{font-size:clamp(37px,4.1vw,58px);letter-spacing:-2.6px;margin-bottom:20px}h1 em{font-style:normal;color:var(--blue)}.lead{font-size:18px;color:var(--muted);max-width:580px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;justify-content:center;align-items:center;padding:13px 20px;border:1px solid var(--line);border-radius:5px;font-weight:700;cursor:pointer;min-height:50px}.button:hover,.nav-cta:hover{filter:brightness(.94)}.hero-photo{margin:0;position:relative}.hero-photo img{width:100%;height:510px;object-fit:cover;border-radius:8px}.hero-photo figcaption{position:absolute;bottom:20px;left:20px;right:20px;background:#ffffffed;border-radius:4px;padding:18px;font-size:14px;font-weight:600;color:var(--navy)}.assurance{display:flex;justify-content:space-between;gap:24px;padding-top:22px;padding-bottom:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;font-weight:600;color:var(--navy)}.assurance span:before{content:"✓";margin-right:10px;color:var(--blue)}.section{padding-top:78px;padding-bottom:78px}.detail-heading,.pricing-head,.testimonial-head{max-width:750px;margin-bottom:32px}.detail-heading>p:last-child,.price-note,.testimonial-head>p:last-child{color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 48px}.detail-grid article{padding:25px 0;border-top:1px solid var(--line)}.detail-grid article>span{font-size:13px;color:var(--blue);font-weight:700}.detail-grid h3{margin:10px 0}.detail-grid p{color:var(--muted);margin:0}.detail-grid article:last-child{grid-column:1/-1;max-width:760px}.pricing{background:#f2f6fa;border-radius:12px}.price-table-wrap{background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden}.price-table{width:100%;border-collapse:collapse}.price-table th{text-align:left;background:var(--navy);color:white;font-size:14px;padding:17px 22px}.price-table td{padding:18px 22px;border-bottom:1px solid var(--line);vertical-align:top}.price-table td:first-child{width:27%}.price-table td:nth-child(2){color:var(--muted)}.price-table td:last-child{white-space:nowrap;text-align:right;width:20%}.price-table th:last-child{text-align:right}.price-table td small{display:block;color:var(--muted);font-size:13px}.price-includes{padding:24px;display:flex;gap:12px;flex-wrap:wrap;background:#f8fafc}.price-includes strong{width:100%}.price-includes span{font-size:14px;margin-right:18px}.price-includes span:before{content:"✓ ";color:var(--blue)}.pricing-fine{padding:20px 24px 0;color:var(--muted);font-size:14px}.pricing-button{margin:0 24px 24px}.coverage{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%}.coverage>div>p:last-child{color:var(--muted)}.coverage-list article{padding:22px 0;border-bottom:1px solid var(--line)}.coverage-list article:first-child{padding-top:0}.coverage-list h3{margin-bottom:10px}.coverage-list p{color:var(--muted);margin-bottom:10px}.small{font-size:14px}.testimonials{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.quote-grid figure{margin:0;background:#f2f6fa;padding:30px;border-radius:6px;display:flex;flex-direction:column;justify-content:space-between;gap:25px}.quote-grid blockquote{margin:0;font-size:21px;font-family:var(--display);font-weight:600;color:var(--navy);line-height:1.5}.quote-grid figcaption strong,.quote-grid figcaption span{display:block}.quote-grid figcaption span{font-size:13px;color:var(--muted)}.approach{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.approach>img{width:100%;height:520px;object-fit:cover;border-radius:8px}.steps{list-style:decimal-leading-zero;margin:28px 0 0;padding-left:32px}.steps li{padding-left:10px;margin-bottom:18px}.steps li::marker{font-size:14px;color:var(--blue);font-weight:700}.steps p{color:var(--muted);margin:3px 0 0}.faq{background:#f2f6fa;border-radius:12px;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%}.faq-intro p:last-child{color:var(--muted)}details{border-bottom:1px solid #d0dce7}summary{cursor:pointer;padding:20px 25px 20px 0;font-weight:700;color:var(--navy)}details p{color:var(--muted);padding:0 0 20px;margin:0}.enquire{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%}.enquire-copy>p:not(.eyebrow){color:var(--muted)}.contact{display:flex;flex-direction:column;gap:8px;margin-top:30px;overflow-wrap:anywhere}.contact a:first-child{font-size:25px;font-weight:700;color:var(--navy)}.contact a{color:var(--blue)}form{padding:28px;border:1px solid var(--line);border-radius:6px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-weight:600;font-size:14px;margin-bottom:18px}input,select,textarea{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #bccbd9;border-radius:4px;background:#fff;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.form-status{font-size:14px;margin:12px 0 0;color:var(--muted)}footer{background:#f2f6fa;border-top:1px solid var(--line);padding:36px 6%;display:grid;grid-template-columns:1fr 1.4fr;gap:24px;align-items:center}footer p{color:var(--muted);margin:0;font-size:14px}footer>div{display:flex;gap:24px;font-size:14px}footer small{font-size:13px;color:var(--muted)}.reveal{opacity:1!important;transform:none!important}
@media(max-width:1000px){.site-header nav{gap:13px}.hero{gap:4%}.hero-logo{width:285px}.hero-photo img{height:480px}.quote-grid{gap:14px}.quote-grid figure{padding:22px}}
@media(max-width:850px){.site-header{padding:12px 5%}.brand img{width:160px}.menu{display:block;background:#fff;border:1px solid var(--line);padding:9px 15px;border-radius:4px}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:20px 5%;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}.hero,.coverage,.approach,.faq,.enquire{grid-template-columns:1fr;gap:35px}.hero{padding-top:36px}.hero-logo{width:310px}.hero-photo img{height:340px}.assurance{flex-wrap:wrap;justify-content:flex-start;gap:12px 24px}.section{padding-top:52px;padding-bottom:52px}.detail-grid{gap:0 28px}.quote-grid{grid-template-columns:1fr}.approach>img{height:300px}.pricing,.faq{border-radius:0}.price-table td,.price-table th{padding:14px}.price-table td:nth-child(2){font-size:14px}}
@media(max-width:560px){.detail-grid{grid-template-columns:1fr}.detail-grid article:last-child{grid-column:auto}.hero h1{font-size:39px;letter-spacing:-1.6px}.hero-logo{width:280px}.hero-actions .button{flex:1}.assurance{display:grid;font-size:14px}.price-table td:nth-child(2),.price-table th:nth-child(2){display:none}.price-table td:first-child{width:65%}.price-table td:last-child{width:35%}.field-row{grid-template-columns:1fr;gap:0}form{padding:20px}footer{grid-template-columns:1fr}footer>div{flex-wrap:wrap}h2{letter-spacing:-1px}}
@media(max-width:560px){.price-table td:nth-child(2){display:table-cell}.price-table th:nth-child(2){display:table-cell}.price-table{font-size:14px}.price-table td,.price-table th{padding:12px 8px}.price-table td:first-child,.price-table td:last-child{width:auto}.price-table td:last-child{white-space:normal}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
:root{color-scheme:light;--surface:#fff;--soft:#f2f6fa;--button:#0758b1}
:root[data-theme=dark]{color-scheme:dark;--navy:#e0ecfa;--blue:#83bdff;--ink:#e2eaf3;--muted:#b1c2d4;--line:#33475d;--surface:#101e2d;--soft:#17293b;--button:#145ca9}
body,.site-header,.site-header nav,.menu,.price-table-wrap{background:var(--surface)}
.pricing,.faq,footer,.quote-grid figure,.price-includes{background:var(--soft)}
.nav-cta,.button.primary{background:var(--button);color:#fff}.price-table th{background:#082e5b}
input,select,textarea{background:var(--surface);border-color:var(--line)}
.theme-toggle,.menu{color:var(--ink);border:1px solid var(--line);background:var(--surface);border-radius:5px;padding:9px 12px;cursor:pointer;white-space:nowrap}
.theme-toggle{margin-left:auto;font-size:13px}.site-header{gap:18px}
[data-theme=dark] .brand img,[data-theme=dark] .hero-logo{mix-blend-mode:normal;background:white;border-radius:5px;padding:7px}
.hero-photo figcaption{color:#082e5b}details{border-color:var(--line)}
.consent{display:flex;align-items:flex-start;gap:10px;font-weight:400}.consent input{width:18px;height:18px;flex-shrink:0;margin-top:4px}.consent a,.legal a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
button:disabled{opacity:.6;cursor:not-allowed}#security-check{margin:16px 0}#upload-help,#file-summary{color:var(--muted)}
.legal{max-width:940px;margin:auto;padding:60px 6% 80px}.legal h1{font-size:clamp(36px,5vw,54px)}.legal h2{font-size:25px;letter-spacing:-.5px;margin-top:40px}.legal p,.legal li{color:var(--muted)}.legal .intro{font-size:19px}.legal nav{padding:24px;background:var(--soft);border:1px solid var(--line);border-radius:6px}.legal nav ol{columns:2;margin:0;padding-left:24px}.legal section{scroll-margin-top:130px}.legal-note{padding:18px 22px;background:var(--soft);border-left:3px solid var(--blue)}
@media(max-width:1050px){.site-header nav{gap:10px;font-size:12px}.site-header .brand img{width:150px}}
@media(max-width:560px){.site-header{gap:8px}.site-header .brand img{width:120px}.theme-toggle,.menu{font-size:12px;padding:8px}.legal nav ol{columns:1}.legal{padding-top:36px}}

.public-spinner{display:inline-block;width:1.2em;height:1.2em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:public-spin .8s linear infinite}button[aria-busy=true]{min-width:190px;justify-content:center;cursor:wait}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@keyframes public-spin{to{transform:rotate(360deg)}}
