
:root{--sky:#c8edff;--ice:#f1fbff;--navy:#001c2a;--navy2:#062f42;--lime:#b9ff3f;--aqua:#69e7ff;--ink:#071820;--muted:#647781;--white:#fff;--line:#d7e9f0;--shadow:0 24px 70px rgba(0,32,49,.14);--max:1320px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#caefff 0%,#e8f8ff 46%,#fff 100%);color:var(--ink);font-family:"Outfit",sans-serif;line-height:1.6;overflow-x:hidden}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.skip{position:absolute;left:-9999px;top:8px;background:#fff;padding:10px;z-index:999}.skip:focus{left:8px}
.site-header{position:absolute;top:0;left:0;right:0;z-index:50}.nav-wrap{width:min(1180px,calc(100% - 48px));margin:34px auto 0;min-height:72px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:26px;color:#fff}.brand{font:700 1rem "Syne";letter-spacing:.08em}.brand span{color:var(--lime)}.nav{display:flex;justify-content:center;gap:34px;font:500 .78rem "Syne"}.nav a{opacity:.95}.nav a[aria-current=page]{color:var(--lime)}.join,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;border:0;background:var(--lime);color:#041a23;font-weight:700;border-radius:10px;cursor:pointer}.menu-toggle{display:none;background:var(--lime);border:0;padding:8px 12px;border-radius:8px}
.hero{min-height:770px;position:relative;overflow:hidden;background:var(--navy);color:#fff}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.75) brightness(.55)}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,20,30,.15),rgba(0,24,36,.32) 45%,rgba(0,21,31,.72))}.hero-inner{position:relative;z-index:3;width:min(var(--max),calc(100% - 64px));margin:auto;padding:190px 0 170px;text-align:center}.marker{font-family:"Kalam";font-size:clamp(2.3rem,4.3vw,5rem);color:var(--lime);transform:rotate(-7deg);display:inline-block}.hero h1{font:700 clamp(6rem,13vw,12.5rem)/.72 "Syne";letter-spacing:-.08em;margin:2px 0;text-transform:uppercase;opacity:.98}.hero h1 span{display:block}.hero .roll{font:400 clamp(2.4rem,4vw,4.8rem) "Kalam";margin-left:38%;transform:rotate(-8deg)}.hero-copy{max-width:670px;margin:22px auto 0;color:#d6e9f0}.hero-actions{display:flex;gap:12px;justify-content:center;margin-top:24px;flex-wrap:wrap}.btn.dark{background:#fff;color:#062230}.hero-wave{position:absolute;z-index:5;left:-2%;right:-2%;bottom:-58px;height:160px;background:var(--ice);clip-path:polygon(0 55%,18% 20%,39% 45%,62% 58%,76% 44%,86% 0,100% 17%,100% 100%,0 100%)}
.section{padding:95px 0;background:var(--ice)}.section.dark{background:var(--navy);color:#fff}.section.white{background:#fff}.section-inner{width:min(var(--max),calc(100% - 64px));margin:auto}.eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.11em;color:#6f858f}.section-title{font:700 clamp(3.2rem,5.5vw,6rem)/.95 "Syne";letter-spacing:-.055em;margin:5px 0}.section-lead{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end;margin-bottom:45px}.section-lead p{color:var(--muted);margin:0}.dark .section-lead p,.dark .eyebrow{color:#96adb7}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:center}.gallery img{width:100%;height:350px;object-fit:cover;background:#0a2734}.gallery figure:nth-child(2),.gallery figure:nth-child(4){transform:translateY(38px)}.gallery figure{margin:0}.image-frame{position:relative}.image-frame img{width:100%;height:100%;object-fit:cover}.image-frame img.error{display:none}.image-fallback{display:none;position:absolute;inset:0;background:url('../images/image-fallback.svg') center/cover no-repeat}.image-frame.broken .image-fallback{display:block}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fff;padding:28px;border-radius:24px;min-height:330px}.card.dark-card{background:#092936;color:#fff}.card h3{font:700 1.8rem "Syne";letter-spacing:-.03em}.card p,.card li{color:#66757c}.dark-card p,.dark-card li{color:#bfd0d7}.card ul{padding-left:18px}.card .tag{display:inline-block;background:#e8f4f9;padding:7px 10px;border-radius:99px;font-size:.68rem}.dark-card .tag{background:#163a47;color:#d8e9ef}.card .btn{margin-top:12px}
.expect-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.expect{background:#f5fbfe;color:var(--ink);padding:26px;border-radius:18px}.expect b{display:block;color:#6e8790;font-size:.72rem}.expect h3{font:700 1.3rem "Syne"}.expect p{color:#617079;font-size:.82rem}.lime-dot{width:14px;height:14px;border-radius:50%;background:var(--lime);display:inline-block;margin-right:7px}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:26px}.compare-box{background:#fff;padding:30px;border-radius:22px}.compare-box h3{font:700 1.55rem "Syne"}.compare-box ul{list-style:none;padding:0}.compare-box li{padding:11px 0;border-bottom:1px solid var(--line)}.good:before{content:'✓';color:#0a8b49;font-weight:900;margin-right:10px}.bad:before{content:'×';color:#e03b3b;font-weight:900;margin-right:10px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.step{padding:24px;background:#fff;border-radius:20px}.step b{font:700 1.5rem "Syne"}.step h3{font:700 1.15rem "Syne"}.step p{font-size:.8rem;color:var(--muted)}
.page-hero{padding:155px 0 80px;background:var(--navy);color:#fff}.page-inner{width:min(var(--max),calc(100% - 64px));margin:auto}.page-hero h1{font:700 clamp(4rem,7vw,7.6rem)/.9 "Syne";letter-spacing:-.06em;margin:0}.page-hero h1 span{color:var(--lime)}.page-hero p{max-width:800px;color:#bed1d8}.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.split img{width:100%;height:500px;object-fit:cover}.prose{max-width:950px}.prose h2{font:700 2rem "Syne"}.prose p,.prose li{color:var(--muted)}.note{padding:18px;background:#e8f7fd;border-left:5px solid var(--lime)}
.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;border:0;background:none;padding:22px 0;display:flex;justify-content:space-between;text-align:left;font-weight:700}.faq-a{display:none;padding:0 0 22px;color:var(--muted)}.faq-item.open .faq-a{display:block}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}label{display:block;font-size:.75rem;font-weight:700;margin-bottom:6px}input,select,textarea{width:100%;padding:14px;border:1px solid #cadce4;background:#fff}textarea{min-height:160px}.notice{padding:15px;background:#e9f8ff;border-left:5px solid var(--lime);margin-bottom:16px}
.site-footer{background:var(--navy);color:#fff;padding:65px 0 25px}.footer-grid{width:min(var(--max),calc(100% - 64px));margin:auto;display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:40px}.footer-brand{font-size:1.3rem}.footer-grid p{color:#93aab4}.footer-grid h2{font:700 .85rem "Syne"}.footer-grid a{display:block;color:#a9bdc5;font-size:.75rem;margin:7px 0}.footer-note{width:min(var(--max),calc(100% - 64px));margin:35px auto 0;padding-top:18px;border-top:1px solid #21424f;color:#6f8a95;font-size:.68rem}.footer-bottom{width:min(var(--max),calc(100% - 64px));margin:14px auto 0;display:flex;justify-content:space-between;color:#627c87;font-size:.64rem}
.reveal{animation:rise .55s ease both;animation-timeline:view();animation-range:entry 5% cover 25%}@keyframes rise{from{opacity:.01;transform:translateY(16px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:980px){.nav-wrap{grid-template-columns:auto auto;justify-content:space-between}.menu-toggle{display:block}.join{display:none}.nav{display:none;position:absolute;left:24px;right:24px;top:92px;background:#062634;padding:18px;flex-direction:column}.nav.open{display:flex}.section-lead,.split{grid-template-columns:1fr;gap:30px}.gallery{grid-template-columns:1fr 1fr}.cards,.expect-grid,.steps{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.nav-wrap,.hero-inner,.section-inner,.page-inner,.footer-grid,.footer-note,.footer-bottom{width:calc(100% - 30px)}.nav-wrap{margin-top:18px}.hero{min-height:680px}.hero-inner{padding:160px 0 160px}.hero h1{font-size:clamp(4.4rem,23vw,7rem)}.hero .roll{margin-left:0}.gallery,.cards,.expect-grid,.steps,.compare,.footer-grid,.form-grid{grid-template-columns:1fr}.gallery figure:nth-child(2),.gallery figure:nth-child(4){transform:none}.gallery img{height:310px}.form-grid .full{grid-column:auto}.page-hero{padding:130px 0 60px}.split img{height:360px}.footer-bottom{flex-direction:column}}


/* 2026 visual refresh: premium type + high-definition image cards */
.brand{font-weight:800;letter-spacing:.055em}
.nav{letter-spacing:.015em}
.marker,.hero .roll{font-weight:700;text-shadow:0 5px 18px rgba(0,0,0,.18)}
.hero h1{font-weight:800}
.hero-bg{filter:saturate(.92) contrast(1.03) brightness(.57)}
.hero-shade{background:linear-gradient(180deg,rgba(0,18,30,.12),rgba(0,26,39,.26) 40%,rgba(0,20,30,.78)),radial-gradient(circle at 50% 46%,rgba(77,234,255,.17),transparent 34%)}
.section-title{font-weight:800}

.gallery{gap:24px;align-items:stretch}
.gallery .wash-photo-card{margin:0;background:rgba(255,255,255,.94);border-radius:28px;padding:10px;box-shadow:var(--shadow);border:1px solid rgba(9,58,78,.08);overflow:hidden;transform:none;transition:transform .24s ease,box-shadow .24s ease}
.gallery .wash-photo-card:nth-child(2),.gallery .wash-photo-card:nth-child(4){transform:translateY(38px)}
.gallery .wash-photo-card:hover{transform:translateY(-7px);box-shadow:0 30px 85px rgba(0,30,48,.2)}
.gallery .wash-photo-card:nth-child(2):hover,.gallery .wash-photo-card:nth-child(4):hover{transform:translateY(29px)}
.gallery .wash-photo-card .photo-shell{position:relative;height:350px;border-radius:21px;overflow:hidden;background:#082b3a}
.gallery .wash-photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease;filter:saturate(.97) contrast(1.02)}
.gallery .wash-photo-card:hover img{transform:scale(1.035)}
.gallery .wash-photo-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 9px 5px;font-family:"Syne",sans-serif;font-size:.79rem;font-weight:700;color:#102933}
.gallery .wash-photo-card figcaption span{display:inline-grid;place-items:center;min-width:32px;height:32px;border-radius:50%;background:var(--lime);font-size:.66rem;color:#06202b}
.gallery .wash-photo-card .caption-copy{display:flex;align-items:center;gap:10px}
.gallery .wash-photo-card .caption-note{font-family:"Outfit",sans-serif;font-size:.68rem;font-weight:500;color:#70818a}

.service-visual-card{position:relative;height:500px;padding:10px;background:#fff;border-radius:28px;box-shadow:var(--shadow);border:1px solid rgba(5,45,63,.08);overflow:hidden}
.service-visual-card .image-frame{position:relative;height:100%;border-radius:21px;overflow:hidden;background:#082b3a}
.service-visual-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.98) contrast(1.03);transition:transform .45s ease}
.service-visual-card:hover img{transform:scale(1.025)}
.service-visual-label{position:absolute;left:28px;right:28px;bottom:25px;z-index:4;display:flex;align-items:end;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:16px;background:rgba(0,22,33,.78);backdrop-filter:blur(12px);color:#fff}
.service-visual-label strong{font:700 .9rem "Syne",sans-serif}.service-visual-label span{font-size:.67rem;color:#cce4ec}

.card{border:1px solid rgba(11,66,88,.08);box-shadow:0 16px 48px rgba(0,31,48,.08);transition:transform .22s ease,box-shadow .22s ease}
.card:hover{transform:translateY(-5px);box-shadow:0 22px 65px rgba(0,31,48,.13)}
.expect{border:1px solid rgba(12,65,86,.09);box-shadow:0 15px 45px rgba(0,24,38,.1)}
.step{border:1px solid rgba(11,66,88,.07);box-shadow:0 15px 42px rgba(0,31,48,.07)}

@media(max-width:980px){
 .gallery .wash-photo-card:nth-child(2),.gallery .wash-photo-card:nth-child(4){transform:none}
 .gallery .wash-photo-card:nth-child(2):hover,.gallery .wash-photo-card:nth-child(4):hover{transform:translateY(-7px)}
}
@media(max-width:620px){
 .gallery .wash-photo-card .photo-shell{height:320px}
 .service-visual-card{height:390px;padding:8px;border-radius:22px}
 .service-visual-card .image-frame{border-radius:16px}
 .service-visual-label{left:20px;right:20px;bottom:18px}
}
