
:root{
  --teal:#0b8da4; --teal-dark:#075f70; --aqua:#68d3df; --red:#ef3340;
  --gold:#f4b63f; --ink:#10272d; --cream:#fbfaf6; --white:#fff;
  --shadow:0 18px 50px rgba(4,31,37,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:12px 5vw;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:0 2px 18px rgba(0,0,0,.07)}
.brand{display:flex;align-items:center;gap:12px;font-weight:800}.brand img{width:58px;height:58px;border-radius:50%;object-fit:cover}.brand span{font-family:"Playfair Display",serif;font-size:1.1rem}
.nav{display:flex;align-items:center;gap:26px;font-weight:600}.nav a:hover{color:var(--teal)}
.nav-cta{background:var(--red);color:white!important;padding:12px 18px;border-radius:999px}
.menu-toggle{display:none;border:0;background:none;font-size:1.7rem}
.hero{min-height:78vh;position:relative;display:flex;align-items:center;background-image:var(--hero-image);background-size:cover;background-position:center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,22,28,.86) 0%,rgba(3,22,28,.62) 45%,rgba(3,22,28,.18) 100%)}
.hero-content{position:relative;max-width:760px;padding:90px 7vw;color:white}
.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:800;color:var(--aqua);margin-bottom:14px}.eyebrow.dark{color:var(--teal)}.eyebrow.light{color:#bff7ff}
h1,h2{font-family:"Playfair Display",serif;line-height:1.05;margin:0 0 18px}
h1{font-size:clamp(3rem,7vw,6.2rem);max-width:900px}
h2{font-size:clamp(2.2rem,4.5vw,4rem)}
.hero p{font-size:1.16rem;max-width:650px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0 22px}
.btn{display:inline-flex;justify-content:center;align-items:center;padding:15px 22px;border-radius:999px;font-weight:800;border:0;cursor:pointer;font:inherit}
.btn-primary{background:var(--red);color:white;box-shadow:0 10px 25px rgba(239,51,64,.28)}
.btn-secondary{background:white;color:var(--ink)}.full{width:100%}
.service-line{font-size:.92rem!important;opacity:.88}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d8e4e6}.trust-strip div{background:white;padding:26px 5vw}.trust-strip strong,.trust-strip span{display:block}.trust-strip strong{color:var(--teal);font-size:1.15rem}.trust-strip span{font-size:.92rem;color:#53676c}
.section{padding:90px 7vw}.intro{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end}.intro>p{font-size:1.17rem;color:#53676c}
.section-heading{max-width:900px}.section-heading.centered{text-align:center;margin:0 auto 45px}
.services-section{background:#eef7f8}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:white;padding:34px;border-radius:24px;box-shadow:var(--shadow)}.card span{color:var(--gold);font-weight:800}.card h3{font-size:1.35rem;margin:14px 0 8px}.card p{color:#5d6f73}
.gallery{columns:3 280px;column-gap:18px}.gallery-item{width:100%;padding:0;border:0;background:none;margin:0 0 18px;break-inside:avoid;cursor:zoom-in;border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.gallery-item img{width:100%;transition:.3s transform}.gallery-item:hover img{transform:scale(1.025)}
.process-section{background:var(--teal-dark);color:white}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.steps b{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:1.2rem}.steps h3{margin:18px 0 6px}.steps p{color:#c8e4e9}
.quote-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.quote-copy{position:sticky;top:115px}.quote-copy p{font-size:1.1rem;color:#53676c}.contact-block{display:flex;flex-direction:column;gap:7px;margin-top:26px;font-weight:800;color:var(--teal)}
.quote-form{background:white;padding:34px;border-radius:24px;box-shadow:var(--shadow)}label{display:block;font-weight:700;margin-bottom:18px}input,select,textarea{width:100%;margin-top:7px;padding:14px 15px;border:1px solid #cbd8da;border-radius:12px;font:inherit;background:white}textarea{resize:vertical}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-note{font-size:.8rem;color:#6a797d;text-align:center}.hidden{display:none}
footer{padding:45px 7vw;background:#071f25;color:white;display:grid;grid-template-columns:1fr 1fr;gap:18px}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand img{width:64px;height:64px;border-radius:50%;object-fit:cover}.footer-brand strong,.footer-brand span{display:block}.footer-contact{display:flex;justify-content:flex-end;gap:22px;align-items:center}.copyright{opacity:.65}
.lightbox{border:0;border-radius:18px;padding:0;background:#08191d;max-width:min(94vw,1200px);max-height:94vh}.lightbox::backdrop{background:rgba(0,0,0,.86)}.lightbox img{max-height:90vh;max-width:92vw}.lightbox button{position:absolute;right:10px;top:6px;width:42px;height:42px;border:0;border-radius:50%;font-size:2rem;background:rgba(255,255,255,.9);cursor:pointer}
@media(max-width:900px){
  .menu-toggle{display:block}.nav{position:absolute;top:82px;left:0;right:0;display:none;flex-direction:column;background:white;padding:24px;box-shadow:var(--shadow)}.nav.open{display:flex}
  .hero{min-height:72vh}.hero-content{padding:70px 6vw}.trust-strip,.cards,.steps{grid-template-columns:1fr 1fr}.intro,.quote-section{grid-template-columns:1fr}.quote-copy{position:static}
}
@media(max-width:620px){
  .brand span{display:none}.section{padding:70px 5vw}.trust-strip,.cards,.steps,.field-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}.btn{width:100%}.gallery{columns:1}.quote-form{padding:22px}footer{grid-template-columns:1fr}.footer-contact{justify-content:flex-start;flex-direction:column;align-items:flex-start;gap:4px}
}

.permanent-section{background:linear-gradient(135deg,#06272f,#0a5969);color:white;display:grid;grid-template-columns:.82fr 1.18fr;gap:55px;align-items:center}
.permanent-copy p{color:#d2e8ec;font-size:1.08rem}.permanent-features{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:26px 0 30px;font-weight:700}.permanent-features span{color:#e8fbff}
.permanent-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}.permanent-gallery .gallery-item{margin:0;border-radius:16px;aspect-ratio:4/3}.permanent-gallery .gallery-item:first-child{grid-column:1/-1;aspect-ratio:16/8}.permanent-gallery img{width:100%;height:100%;object-fit:cover}
@media(max-width:900px){.permanent-section{grid-template-columns:1fr}}@media(max-width:620px){.permanent-features,.permanent-gallery{grid-template-columns:1fr}.permanent-gallery .gallery-item:first-child{grid-column:auto;aspect-ratio:4/3}}
