@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;1,600&display=swap";:root{--navy:#061c57;--blue:#063eaa;--yellow:#ffcc16;--pink:#ec1772;--ice:#edf5ff;--ink:#102048}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}.topbar{background:var(--navy);color:#cbd8f4;text-transform:uppercase;letter-spacing:.1em;justify-content:space-between;align-items:center;height:36px;padding:0 6vw;font-size:10px;display:flex}.topbar a{color:#fff;align-items:center;gap:7px;display:flex}header{z-index:20;background:#fff;justify-content:space-between;align-items:center;height:86px;padding:0 6vw;display:flex;position:relative;box-shadow:0 8px 25px #071b4c0d}.logo{color:var(--navy);align-items:center;gap:10px;font-family:Playfair Display;font-size:19px;font-weight:600;display:flex}.logo>span{background:var(--navy);color:#fff;letter-spacing:-.2em;border-radius:50%;place-items:center;width:48px;height:48px;padding-right:5px;font-size:24px;display:grid}.logo i{color:var(--pink);font-size:12px}.logo small{letter-spacing:.2em;color:var(--blue);margin-top:3px;font:700 7px DM Sans;display:block}nav{gap:31px;font-size:12px;font-weight:600;display:flex}nav a:hover{color:var(--pink)}.quote-btn,.button{justify-content:center;align-items:center;gap:9px;display:inline-flex}.quote-btn{background:var(--blue);color:#fff;padding:14px 19px;font-size:11px;font-weight:700}.menu{color:var(--navy);background:0 0;border:0;display:none}.hero{height:720px;position:relative;overflow:hidden}.hero>img{object-fit:cover;width:100%;height:100%}.hero-wash{background:linear-gradient(90deg,#03123ff5,#052365cc 44%,#031f5b14 75%);position:absolute;inset:0}.hero-copy{color:#fff;max-width:690px;position:absolute;top:50%;left:8vw;transform:translateY(-50%)}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.19em;color:var(--blue);font-size:10px;font-weight:700}.eyebrow{color:#ffdd58;align-items:center;gap:8px;display:flex}h1,h2{letter-spacing:-.04em;margin:20px 0;font:600 clamp(47px,6vw,84px)/.98 Playfair Display}h1 em,h2 em{color:var(--yellow)}.hero-copy>p:not(.eyebrow){color:#dae5ff;max-width:550px;font-size:17px;line-height:1.7}.actions{gap:12px;margin-top:33px;display:flex}.button{text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:0;padding:16px 20px;font:700 11px DM Sans}.yellow{background:var(--yellow);color:var(--navy)}.yellow:hover{background:#ffdb4f}.ghost{color:#fff;border:1px solid #ffffff64}.hero-badge{text-align:center;width:150px;height:150px;color:var(--navy);background:#fff;border:8px solid #ffffff54;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;bottom:45px;right:6vw;box-shadow:0 20px 55px #00143b55}.hero-badge strong{color:var(--pink);font:600 33px Playfair Display}.hero-badge span{text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:700}.trust{background:var(--yellow);grid-template-columns:repeat(4,1fr);padding:27px 6vw;display:grid}.trust>div{border-right:1px solid #071b4c33;align-items:center;gap:13px;padding:0 25px;display:flex}.trust>div:last-child{border:0}.trust svg{color:var(--blue)}.trust span,.trust strong{display:block}.trust strong{text-transform:uppercase;font-size:12px}.trust span{color:#425070;font-size:10px}.intro{grid-template-columns:1fr 1fr;gap:10vw;padding:115px 8vw;display:grid}.intro p{color:#61708f;font-size:14px;line-height:1.8}.intro a,.service-grid a{text-transform:uppercase;letter-spacing:.08em;color:var(--blue);align-items:center;gap:8px;margin-top:25px;font-size:11px;font-weight:700;display:flex}.intro h2{font-size:clamp(43px,5vw,69px)}.intro h2 em,.work h2 em{color:var(--pink)}.services{background:var(--navy);color:#fff;padding:110px 6vw}.section-title{text-align:center;max-width:730px;margin:auto}.section-title h2{font-size:clamp(43px,5vw,69px)}.section-title>p:last-child{color:#aebcdc}.light{color:var(--yellow)}.service-grid{border-top:1px solid #ffffff24;grid-template-columns:repeat(4,1fr);margin-top:65px;display:grid}.service-grid article{border-right:1px solid #ffffff24;padding:35px 2.5vw 15px}.service-grid article:first-child{padding-left:0}.service-grid article:last-child{border:0}.service-grid article>div{color:#ffdb51;justify-content:space-between;display:flex}.service-grid article>div>span{letter-spacing:.15em;font-size:10px}.service-grid h3{margin:38px 0 15px;font:600 25px Playfair Display}.service-grid p{color:#abb8d5;font-size:12px;line-height:1.75}.service-grid a{color:#ffda4c}.work{background:var(--ice);padding:115px 6vw}.work-head{justify-content:space-between;align-items:end;gap:30px;display:flex}.work-head h2{font-size:clamp(43px,5vw,69px)}.work-head>p{color:#63718e;max-width:440px;line-height:1.7}.gallery{grid-template-columns:1.3fr 1fr 1fr;gap:15px;margin-top:50px;display:grid}.gallery figure{background:var(--navy);height:520px;margin:0;position:relative;overflow:hidden}.gallery img{object-fit:cover;width:100%;height:100%;transition:all .6s}.gallery figure:hover img{transform:scale(1.035)}.gallery figcaption{color:#fff;background:linear-gradient(#0000,#061c57e8);padding:70px 24px 25px;position:absolute;bottom:0;left:0;right:0}.gallery span,.gallery strong{display:block}.gallery span{text-transform:uppercase;letter-spacing:.15em;color:var(--yellow);font-size:9px}.gallery strong{margin-top:6px;font:600 22px Playfair Display}.cta{text-align:center;background:var(--pink);color:#fff;padding:90px 6vw}.cta .spark{color:var(--yellow);font-size:35px}.cta h2{margin-bottom:12px;font-size:clamp(43px,5vw,69px)}.cta>p:not(.kicker){opacity:.8}.cta .button{margin-top:22px}.contact{grid-template-columns:.85fr 1.15fr;display:grid}.contact-card{background:var(--blue);color:#fff;padding:90px 7vw}.contact-card h2{font-size:55px}.contact-card>p:not(.kicker){color:#cedcff;line-height:1.7}.contact-card>a{border-top:1px solid #fff3;align-items:center;gap:14px;padding:19px 0;display:flex}.contact-card>a span,.contact-card>a small{display:block}.contact-card>a small{letter-spacing:.15em;color:#ffdf58;margin-bottom:3px;font-size:8px}.contact form{background:#fff;padding:75px 7vw}.row{grid-template-columns:1fr 1fr;gap:20px;display:grid}label{text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px;font-size:9px;font-weight:700;display:block}input,select,textarea{background:0 0;border:0;border-bottom:1px solid #1020483b;outline:none;width:100%;margin-top:6px;padding:13px 2px;font:13px DM Sans;display:block}textarea{border:1px solid #1020483b;padding:12px}form .button{width:100%;margin-top:8px}footer{color:#fff;background:#04133d;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px;padding:55px 6vw 25px;display:grid}footer .logo{color:#fff}footer>p{text-align:center;color:#9eabd0;font-size:11px;line-height:1.7}footer>div{color:#ffdd58;flex-direction:column;align-items:flex-end;gap:7px;font-size:11px;display:flex}footer>small{text-align:center;color:#687699;border-top:1px solid #ffffff1a;grid-column:1/-1;padding-top:22px;font-size:9px}header{border-bottom:1px solid #0b2a7014;position:sticky;top:0}.nav-actions,.nav-phone{align-items:center;display:flex}.nav-actions{gap:20px}.nav-phone{color:var(--navy);gap:9px;font-size:11px;font-weight:700}.nav-phone svg{color:var(--pink)}.nav-phone span,.nav-phone small{display:block}.nav-phone small{letter-spacing:.15em;color:#7783a2;margin-bottom:2px;font-size:7px}header nav a{padding:34px 0;position:relative}header nav a:after{content:"";background:var(--pink);height:3px;transition:all .25s;position:absolute;bottom:0;left:50%;right:50%}header nav a:hover:after{left:0;right:0}.blue{background:var(--blue);color:#fff}.process{background:#fff;grid-template-columns:.8fr 1.2fr;align-items:center;gap:9vw;padding:120px 7vw;display:grid}.process-intro h2,.reviews h2,.faq h2,.assurance h2{font-size:clamp(43px,5vw,69px)}.process-intro h2 em,.reviews h2 em,.faq h2 em{color:var(--pink)}.process-intro>p:not(.kicker){color:#667492;font-size:14px;line-height:1.8}.process-intro .button{margin-top:23px}.steps{border-top:1px solid #0a2d7b25}.steps article{border-bottom:1px solid #0a2d7b25;grid-template-columns:50px 1fr;gap:28px;padding:28px 0;display:grid}.steps article>span{letter-spacing:.14em;color:var(--pink);font-size:10px;font-weight:700}.steps article>div{grid-template-columns:45px 1fr;column-gap:15px;display:grid}.steps svg{background:var(--ice);width:42px;height:42px;color:var(--blue);border-radius:50%;grid-row:1/3;padding:10px}.steps h3{margin:0;font:600 23px Playfair Display}.steps p{color:#697795;grid-column:2;margin:7px 0 0;font-size:12px;line-height:1.7}.assurance{background:var(--blue);color:#fff;grid-template-columns:1fr 1fr;display:grid}.assurance-image{min-height:680px;overflow:hidden}.assurance-image img{object-fit:cover;width:100%;height:100%}.assurance-copy{padding:95px 8vw 85px 7vw}.assurance-copy>p:not(.kicker){color:#cedbfa;line-height:1.8}.assurance-points{margin:30px 0}.assurance-points>p{border-bottom:1px solid #ffffff2a;align-items:center;gap:15px;padding:14px 0;display:flex}.assurance-points svg{color:var(--yellow)}.assurance-points span,.assurance-points strong{display:block}.assurance-points span{color:#c8d7f8;font-size:11px}.assurance-points strong{color:#fff;margin-bottom:3px;font-size:13px}.reviews{background:#fff;padding:115px 6vw}.reviews-head{text-align:center}.review-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px;display:grid}.review-grid article{background:var(--ice);border-top:4px solid var(--yellow);padding:38px}.review-grid article>div{color:var(--pink)}.review-grid h3{margin:22px 0 12px;font:600 27px Playfair Display}.review-grid p{color:#61708f;font-size:13px;line-height:1.75}.faq{background:#f8fbff;grid-template-columns:.75fr 1.25fr;gap:10vw;padding:110px 8vw;display:grid}.faq>div:first-child>p:last-child{color:#657390;font-size:13px}.faq>div:first-child a{color:var(--pink);font-weight:700}.faq-list{border-top:1px solid #1020482b}.faq details{border-bottom:1px solid #1020482b;padding:0 5px}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;padding:22px 0;font:600 17px Playfair Display;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq details[open] summary svg{transform:rotate(180deg)}.faq details p{color:#687695;max-width:620px;margin:0 0 22px;font-size:13px;line-height:1.7}@media (width<=1050px){.nav-phone{display:none}header nav{gap:20px}}@media (width<=850px){header{height:74px}.topbar span{display:none}header nav{background:#fff;flex-direction:column;padding:10px 7vw 28px;display:none;position:absolute;top:74px;left:0;right:0;box-shadow:0 20px 35px #071b4c20}header nav.open{display:flex}header nav a{padding:12px 0}.nav-actions .quote-btn{display:none}.menu{display:block}.hero{height:700px}.hero-copy{left:7vw;right:7vw}.hero-wash{background:linear-gradient(90deg,#03123ff0,#0523659e)}.hero-badge{display:none}.trust{grid-template-columns:1fr 1fr;gap:20px}.trust>div{border:0;padding:0}.intro,.contact,.process,.faq{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.service-grid article{border-bottom:1px solid #ffffff24}.gallery{grid-template-columns:1fr 1fr}.gallery .wide{grid-column:1/-1}.work-head{display:block}.assurance{grid-template-columns:1fr}.assurance-image{min-height:480px}.review-grid{grid-template-columns:1fr}.contact form{padding:65px 7vw}footer{text-align:center;grid-template-columns:1fr}footer .logo{justify-content:center}footer>div{align-items:center}footer>small{grid-column:1}}@media (width<=540px){.topbar{justify-content:center}.logo{font-size:15px}.logo>span{width:42px;height:42px}.hero-copy h1{font-size:50px}.actions{flex-direction:column;align-items:flex-start}.trust{grid-template-columns:1fr;padding:25px 8vw}.intro,.services,.work,.process,.reviews,.faq{padding:85px 7vw}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article:first-child{padding:30px 0}.gallery{grid-template-columns:1fr}.gallery .wide{grid-column:auto}.gallery figure{height:460px}.assurance-image{min-height:360px}.assurance-copy{padding:75px 7vw}.row{grid-template-columns:1fr}.contact-card{padding:70px 7vw}.contact-card h2{font-size:45px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
