@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;700&display=swap');
:root{--navy:#061320;--blue:#1588f1;--pale:#dfeaf3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--navy);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:50;background:#fff;padding:12px}header{height:104px;padding:5px 4%;background:#fff;display:flex;align-items:center;gap:4vw;position:sticky;top:0;z-index:20;border-bottom:1px solid #d6e3eb}.brand{width:175px;flex:none;display:flex;align-items:center}.brand img{width:100%;height:92px;object-fit:contain;transform:none!important}nav{margin-left:auto;display:flex;gap:32px;align-items:center}nav a{font:800 19px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.05em;border-bottom:3px solid transparent;padding:12px 0}nav a:hover{border-color:var(--blue)}.call{background:var(--navy);color:white;padding:12px 20px;font:800 17px 'Barlow Condensed',Impact,sans-serif;white-space:nowrap}.call span{display:block;color:#68b8ff;font-size:22px}.menu{display:none}.eyebrow{font:800 15px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.17em;color:#57b2ff;margin:0 0 22px}.hero{min-height:780px;position:relative;overflow:hidden;background:#061320;color:#fff}.hero-photo{position:absolute;inset:0;background:url('assets/IMG_4423.jpeg') 68% 53%/cover no-repeat;filter:contrast(1.08) saturate(1.06)}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#061320 0%,#061320f5 28%,#061320b5 54%,#06132024 100%),linear-gradient(0deg,#061320bb,transparent 35%)}.hero-copy{position:relative;z-index:1;padding:72px 5% 130px;max-width:770px}.anniversary{display:flex;align-items:center;gap:20px;width:max-content;padding:10px 0;border-top:2px solid #238fe6;border-bottom:2px solid #238fe6}.anniversary strong{font:900 clamp(110px,12vw,180px)/.72 'Barlow Condensed',Impact,sans-serif;color:#35a1ff;letter-spacing:-.07em}.anniversary span{font:800 clamp(20px,2.3vw,33px)/.9 'Barlow Condensed',Impact,sans-serif;letter-spacing:.05em}.hero h1,h2{font-family:'Barlow Condensed',Impact,sans-serif;letter-spacing:-.02em}.hero h1{font-size:clamp(70px,7vw,116px);line-height:.83;margin:38px 0 20px;font-weight:900}.hero em,h2 em{font-style:normal;color:#42a9ff}.hero-copy>p:not(.eyebrow){max-width:550px;color:#e0edf8;font-size:19px;line-height:1.48}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:31px}.button{display:inline-block;background:#0878df;color:white;border:2px solid #0878df;padding:17px 24px;font:800 21px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.03em;transition:background .2s,transform .2s}.button:hover{background:#005eb8;transform:translateY(-2px)}.quiet{font:800 20px 'Barlow Condensed',Impact,sans-serif;border-bottom:2px solid #6eb5f3;padding:8px 0}.hero-foot{position:absolute;z-index:2;bottom:0;left:0;right:0;background:#0878df;padding:15px 5%;font:800 13px 'DM Sans',sans-serif;letter-spacing:.2em;display:flex;justify-content:space-between}.proof{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;padding:30px 4%;border-bottom:1px solid #ccdae7}.proof div{padding:14px 22px;border-right:1px solid #c7d8e6}.proof div:last-child{border:0}.proof strong,.proof span{display:block}.proof strong{font:900 clamp(29px,3vw,45px) 'Barlow Condensed',Impact,sans-serif;color:#0878df}.proof span{font:700 13px 'DM Sans',Arial,sans-serif;letter-spacing:.06em;color:#4b6377}.story{display:grid;grid-template-columns:48% 52%;min-height:620px;background:#eef4f8}.story>img{width:100%;height:100%;object-fit:cover;object-position:center}.story>div{padding:9% 10%;align-self:center}.story h2,.work h2,.banner h2,.contact h2{font-size:clamp(57px,6vw,95px);line-height:.87;margin:0 0 29px;font-weight:900}.story p:not(.eyebrow){font-size:18px;line-height:1.6;max-width:570px;color:#354c5f}.under{font:800 21px 'Barlow Condensed',Impact,sans-serif;border-bottom:3px solid var(--blue);padding:9px 0;display:inline-block;margin-top:14px}.work{background:#071624;color:#fff;padding:95px 5% 105px}.work-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.work-head .eyebrow{margin-bottom:18px}.work h2{margin:0}.work-head>p{font-size:18px;max-width:220px;color:#c2d1dd}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:270px 270px;gap:10px}.gallery figure{margin:0;position:relative;overflow:hidden;background:#203448}.gallery .large{grid-row:span 2}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery figure:hover img{transform:scale(1.03)}.gallery figcaption{position:absolute;bottom:0;left:0;right:0;padding:40px 18px 17px;background:linear-gradient(transparent,#061320d9);font:800 24px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.05em}.banner{position:relative;min-height:460px;background:#075da9;color:#fff;overflow:hidden}.banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;opacity:.36}.banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#064681e8,#06468166)}.banner>div{position:relative;z-index:1;padding:110px 6%;max-width:980px}.banner h2{font-size:clamp(56px,5.5vw,87px)}.banner h2 em{color:#fff}.banner .button{background:#fff;border-color:#fff;color:#075494}.banner .eyebrow{color:#c5e6ff}.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:9%;padding:100px 6%;background:#061320;color:#fff}.contact>div>p:not(.eyebrow){font-size:18px;line-height:1.5;color:#c8d9e7;max-width:550px}.contact-links{display:grid;gap:0;margin:30px 0}.contact-links a{border-top:1px solid #34536c;padding:13px 0;font:800 clamp(25px,3vw,39px) 'Barlow Condensed',Impact,sans-serif}.contact-links a:last-child{border-bottom:1px solid #34536c}.contact-links small{font:700 13px 'DM Sans',Arial,sans-serif;letter-spacing:.13em;color:#63b5f8;display:inline-block;width:100px;vertical-align:middle}.contact .note{font-size:15px!important;color:#9cb8cb!important}.contact aside{background:#12344e;padding:30px;align-self:start;border-top:6px solid #249bff}.contact h3{font:900 32px 'Barlow Condensed',Impact,sans-serif;margin:0}.contact aside p{font-size:18px;line-height:1.55}.contact aside small{color:#afd0e6}.contact iframe{display:block;width:100%;height:240px;border:0;background:#eee}.contact .under{margin-top:22px}footer{background:#030b12;color:#a8bccd;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 5%;font-size:12px;font-weight:700;letter-spacing:.08em}footer img{width:120px;background:#fff}footer span{white-space:nowrap}
@media(max-width:950px){header{gap:20px}nav{gap:16px}.call{display:none}.story>div{padding:8%}.gallery{grid-template-rows:220px 220px}.contact{gap:4%}}
@media(max-width:700px){header{height:78px;padding:5px 5%}.brand{width:135px}.brand img{height:69px}.menu{display:block;margin-left:auto;border:0;background:none;font-size:30px;color:#061320}nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:16px 6%;box-shadow:0 18px 25px #0003;flex-direction:column;align-items:stretch}nav.open{display:flex}nav a{font-size:24px}.hero{min-height:770px}.hero-photo{background-position:62% center}.hero:after{background:linear-gradient(0deg,#061320 0%,#061320f5 35%,#06132090 70%,#06132022 100%)}.hero-copy{padding:255px 6% 105px}.hero .eyebrow{font-size:13px}.anniversary strong{font-size:100px}.anniversary span{font-size:21px}.hero h1{font-size:clamp(64px,12vw,91px);margin:26px 0 15px}.hero-copy>p:not(.eyebrow){font-size:17px}.hero-foot{font-size:10px}.proof{grid-template-columns:repeat(2,1fr);padding:12px 4%}.proof div{min-height:96px;border-bottom:1px solid #d3e0e9}.proof div:nth-child(even){border-right:0}.proof strong{font-size:30px}.proof span{font-size:11px}.story{display:block}.story>img{height:330px}.story>div{padding:65px 6%}.story h2,.work h2,.banner h2,.contact h2{font-size:clamp(55px,11vw,77px)}.work{padding:68px 5%}.work-head{display:block}.work-head>p{max-width:none}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 170px 170px}.gallery .large{grid-column:span 2;grid-row:auto}.gallery figcaption{font-size:19px;padding:30px 10px 10px}.banner{min-height:430px}.banner>div{padding:90px 6%}.contact{display:block;padding:70px 6%}.contact aside{margin-top:45px}.contact-links small{width:77px}footer{display:block;text-align:center}footer img{margin:auto}footer p{margin:23px 0}}
@media(max-width:380px){.hero h1{font-size:59px}.anniversary strong{font-size:85px}.actions .button{width:100%;text-align:center}.contact-links a{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.nav-quote{color:#0878df}.quote-page{background:#071624;color:#fff;min-height:calc(100vh - 104px);display:grid;grid-template-columns:.85fr 1.15fr;gap:5%;padding:72px 5% 95px}.quote-intro{padding-top:30px}.quote-intro h1{font:900 clamp(60px,6vw,98px)/.88 'Barlow Condensed',Impact,sans-serif;margin:0 0 24px}.quote-intro h1 em{color:#42a9ff;font-style:normal}.quote-intro>p:not(.eyebrow){font-size:19px;line-height:1.55;max-width:520px;color:#c8d9e7}.quote-quick{border-top:1px solid #34536c;margin-top:38px;max-width:440px}.quote-quick a{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #34536c;padding:19px 0;font:800 16px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.06em}.quote-quick strong{font-size:25px;color:#68b8ff;letter-spacing:0}.quote-panel{background:#fff;color:#061320;padding:clamp(25px,4vw,50px);border-top:7px solid #168af1;box-shadow:0 20px 55px #0004}.quote-panel h2{font:900 48px/.9 'Barlow Condensed',Impact,sans-serif;margin:0 0 28px}.quote-panel form{display:grid;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quote-panel label{display:grid;gap:8px;font-weight:700;font-size:15px}.quote-panel label span{color:#0078d9}.quote-panel input,.quote-panel textarea{width:100%;border:1px solid #9eb5c7;border-radius:0;background:#fff;color:#061320;font:16px 'DM Sans',Arial,sans-serif;padding:13px 14px;min-height:50px}.quote-panel textarea{resize:vertical}.quote-panel input:focus,.quote-panel textarea:focus{outline:3px solid #8acaff;outline-offset:1px}.quote-panel input[type=file]{border:1px dashed #8aaac2;background:#f1f7fb}.upload-label small{font-size:13px;color:#4b6377;font-weight:400}.quote-panel button{cursor:pointer;justify-self:start}.quote-panel button:disabled{opacity:.6;cursor:wait}.form-status{margin:0;font-size:15px;min-height:1.5em}.form-status.error{color:#a72424}.form-status.success{color:#176a36;font-weight:700}.form-help{font-size:15px;line-height:1.5;margin:25px 0 0;color:#4b6377}.form-help a{text-decoration:underline;color:#086fc5}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}@media(max-width:900px){.quote-page{display:block}.quote-intro{padding:0 0 45px}.quote-quick{margin-top:25px}}@media(max-width:600px){.quote-page{padding:45px 5% 65px}.quote-intro h1{font-size:clamp(55px,12vw,75px)}.quote-panel h2{font-size:40px}.form-grid{grid-template-columns:1fr}.quote-quick strong{font-size:21px}}
.delivery-note{font-size:15px;line-height:1.5;color:#29465d;background:#e7f4ff;border-left:4px solid #168af1;padding:13px 15px;margin:0 0 25px}

.quote-section{background:#071624;color:#fff;display:grid;grid-template-columns:.75fr 1.25fr;gap:5%;padding:85px 5%;scroll-margin-top:85px}.quote-section-intro{padding-top:18px}.quote-section-intro h2{font:900 clamp(62px,6vw,98px)/.88 'Barlow Condensed',Impact,sans-serif;margin:0 0 25px}.quote-section-intro h2 em{color:#42a9ff;font-style:normal}.quote-section-intro>p:not(.eyebrow){font-size:19px;line-height:1.55;color:#c8d9e7;max-width:510px}@media(max-width:900px){.quote-section{display:block}.quote-section-intro{padding:0 0 35px}}@media(max-width:600px){.quote-section{padding:55px 5%}.quote-section-intro h2{font-size:clamp(55px,12vw,75px)}}

/* Contact information stays in view at the top of every page. */
header{height:auto;padding:0;display:block}.top-contact{background:#061320;color:#fff;display:flex;align-items:center;justify-content:center;gap:clamp(20px,4vw,60px);padding:9px 4%;font-family:'DM Sans',Arial,sans-serif}.top-contact a{display:flex;align-items:baseline;gap:9px;min-width:0}.top-contact span{font-size:12px;font-weight:700;letter-spacing:.09em;color:#78bdff;white-space:nowrap}.top-contact strong{font-size:15px;font-weight:700;white-space:nowrap}.top-contact a:hover strong{text-decoration:underline}.header-main{height:104px;padding:5px 4%;display:flex;align-items:center;gap:4vw}@media(max-width:1100px){.top-contact{gap:17px}.top-contact a{display:block}.top-contact strong{display:block;font-size:14px}}@media(max-width:700px){.top-contact{display:grid;grid-template-columns:1fr 1fr;gap:5px 14px;padding:8px 5%}.top-contact span{font-size:11px}.top-contact strong{font-size:14px}.top-contact .top-address{grid-column:1/-1}.top-contact .top-address span,.top-contact .top-address strong{display:inline}.top-contact .top-address strong{white-space:normal;margin-left:7px}.header-main{height:78px;padding:5px 5%}nav{top:100%}html{scroll-padding-top:170px}}@media(max-width:380px){.top-contact strong{font-size:13px}.top-contact .top-address strong{font-size:12px}}

/* Prominent, readable contact details at the very top of every page. */
.top-contact{justify-content:space-between;gap:clamp(18px,2.5vw,42px);padding:15px 4%;box-shadow:inset 0 -2px #246eb4}
.top-contact a{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.top-contact span{font-size:13px;letter-spacing:.08em}
.top-contact strong{font-size:clamp(19px,1.55vw,25px);line-height:1.2;white-space:normal}
@media(max-width:1100px){.top-contact a{display:flex}.top-contact strong{font-size:clamp(17px,1.9vw,21px)}}
@media(max-width:700px){.top-contact{grid-template-columns:1fr 1fr;gap:14px;padding:15px 5%}.top-contact .top-address{grid-column:1/-1}.top-contact .top-address span,.top-contact .top-address strong{display:block;margin-left:0}.top-contact strong,.top-contact .top-address strong{font-size:clamp(17px,4.7vw,22px)}.top-contact span{font-size:12px}}
@media(max-width:380px){.top-contact strong,.top-contact .top-address strong{font-size:16px}}

/* Larger brand and direct contact actions. */
.header-main{height:150px;gap:2.5vw}
.brand{width:clamp(235px,22vw,320px)}
.brand img{height:140px;object-fit:contain}
.top-contact a[href^="tel:"],.top-contact a[href^="sms:"]{padding:7px 12px;border:1px solid #4a82ae;background:#102c45;min-width:185px}
.top-contact a[href^="tel:"]:hover,.top-contact a[href^="sms:"]:hover{background:#175083}
@media(max-width:1050px){.header-main{height:125px}.brand{width:230px}.brand img{height:115px}nav{gap:13px}nav a{font-size:17px}}
@media(max-width:700px){.header-main{height:110px}.brand{width:205px}.brand img{height:100px}.top-contact a[href^="tel:"],.top-contact a[href^="sms:"]{min-width:0;padding:8px 10px}.top-contact strong{overflow-wrap:anywhere}html{scroll-padding-top:220px}}
@media(max-width:380px){.brand{width:175px}.brand img{height:95px}.top-contact a[href^="tel:"],.top-contact a[href^="sms:"]{padding:6px}.top-contact strong{font-size:15px}}

/* Clear, balanced shop and text actions. */
.header-main{gap:clamp(18px,2vw,32px)}
.brand{width:clamp(255px,23vw,345px)}
.brand img{height:146px}
.top-contact{gap:18px;padding:13px 4%}
.top-contact .top-address{flex:1 1 auto}
.top-contact a[href^="tel:"],.top-contact a[href^="sms:"]{min-width:210px;min-height:64px;padding:10px 16px;border:1px solid #438ac3;border-radius:5px;background:#12344f;justify-content:center;transition:background .2s,border-color .2s}
.top-contact a[href^="sms:"]{background:#0b62a8;border-color:#348fe1}
.top-contact a[href^="tel:"]:hover,.top-contact a[href^="sms:"]:hover{background:#167cc7;border-color:#7cc4ff}
.top-contact a:focus-visible,.brand:focus-visible{outline:3px solid #74c6ff;outline-offset:3px}
.top-contact a[href^="tel:"] strong,.top-contact a[href^="sms:"] strong{font-size:clamp(19px,1.75vw,26px);white-space:nowrap}
@media(max-width:1100px){.brand{width:245px}.brand img{height:120px}.top-contact a[href^="tel:"],.top-contact a[href^="sms:"]{min-width:185px}}
@media(max-width:700px){.header-main{height:116px}.brand{width:218px}.brand img{height:108px}.top-contact{gap:9px 10px;padding:10px 5%}.top-contact .top-address{padding:1px 0 4px}.top-contact a[href^="tel:"],.top-contact a[href^="sms:"]{min-width:0;min-height:65px;padding:9px 11px}.top-contact a[href^="tel:"] strong,.top-contact a[href^="sms:"] strong{font-size:clamp(17px,4.4vw,22px)}.top-contact span{font-size:11px}html{scroll-padding-top:235px}}
@media(max-width:380px){.brand{width:190px}.brand img{height:103px}.top-contact a[href^="tel:"],.top-contact a[href^="sms:"]{padding:8px}.top-contact a[href^="tel:"] strong,.top-contact a[href^="sms:"] strong{font-size:16px}}
