:root{--navy:#14232b;--navy-2:#1d3340;--gold:#e9bb64;--gold-light:#f6ce86;--bronze:#ac7322;--bronze-dark:#9a6a21;--steel:#d9e2e7;--line:#e2e7ea;--bg-alt:#f5f7f8;--text:#14232b;--muted:#4a5a63}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);line-height:1.6;background:#fff}
img{max-width:100%;display:block}a{color:var(--bronze-dark)}h1,h2,h3{line-height:1.15;margin:0 0 .6em}h1{font-size:clamp(2.1rem,5vw,3.6rem)}h2{font-size:clamp(1.6rem,3.2vw,2.3rem)}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
.site-header{background:var(--navy);color:#fff;position:sticky;top:0;z-index:50;border-bottom:3px solid var(--gold)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:16px}
.brand{display:flex;align-items:center;gap:10px;color:var(--gold);text-decoration:none;font-weight:800;letter-spacing:.12em;font-size:1.15rem}
.brand small{display:block;font-size:.62rem;letter-spacing:.42em;color:#fff;font-weight:600}.logo-mark{width:36px;height:42px}
#site-nav{display:flex;gap:4px;align-items:center}#site-nav a{color:#fff;text-decoration:none;padding:8px 12px;border-radius:6px;font-weight:600;font-size:.95rem}
#site-nav a:hover,#site-nav a[aria-current]{color:var(--gold)}#site-nav a.nav-cta{background:var(--gold);color:var(--navy)}
.menu-toggle{display:none;background:none;border:1px solid var(--gold);color:var(--gold);padding:8px 14px;border-radius:6px;font-weight:700}
.button{display:inline-block;background:var(--gold);color:var(--navy);padding:14px 24px;border-radius:8px;font-weight:800;text-decoration:none;border:2px solid var(--gold);cursor:pointer;font-size:1rem}
.button:hover{background:var(--gold-light)}.button.dark{background:var(--navy);border-color:var(--navy);color:#fff}.button.ghost-light{background:transparent;color:#fff;border-color:#fff}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;font-weight:800;color:var(--gold)}.eyebrow.dark{color:var(--bronze-dark)}
.hero{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;padding:64px 0}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero h1 em{color:var(--gold);font-style:normal}.lead{font-size:1.15rem;color:var(--steel);max-width:60ch}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
.hero-img img{border-radius:14px;aspect-ratio:4/5;max-height:560px;object-fit:cover;width:100%;box-shadow:0 20px 50px rgba(0,0,0,.4);border:3px solid var(--gold)}
.badges{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}.badges li{border:1px solid rgba(233,187,100,.6);color:var(--gold-light);padding:6px 12px;border-radius:99px;font-size:.85rem}
.section{padding:72px 0}.section.alt{background:var(--bg-alt)}.section-lead{color:var(--muted);max-width:65ch;font-size:1.08rem}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;margin-top:28px}
.card{border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:10px;padding:22px;background:#fff}.card p{color:var(--muted)}.card a{font-weight:700;text-decoration:none}
.why-grid,.video-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.why-list{list-style:none;padding:0;display:grid;gap:14px}.why-list li{background:#fff;border-left:4px solid var(--bronze);padding:16px 18px;border-radius:8px}.why-list strong{display:block}.why-list span{color:var(--muted)}
.chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}.chips a{display:block;background:var(--navy);color:#fff;padding:10px 18px;border-radius:99px;text-decoration:none;font-weight:600}.chips a:hover{background:var(--bronze-dark)}
.gallery.teaser{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.gallery.teaser img{aspect-ratio:3/4;object-fit:cover;border-radius:10px;width:100%}
.channel-card{aspect-ratio:16/9;background:var(--navy);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;text-align:center;border:2px solid var(--gold);padding:24px;text-decoration:none}.channel-card:hover{background:var(--navy-2)}
.channel-play{font-size:3rem;color:var(--gold)}.channel-link{color:var(--gold);font-weight:700}
.cta-band{background:var(--bronze-dark);color:#fff;padding:48px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.cta-band h2{margin:0}.cta-actions{display:flex;gap:12px;flex-wrap:wrap}.cta-band .button{background:var(--navy);border-color:var(--navy);color:#fff}.cta-band .button.ghost-light{background:transparent;border-color:#fff}
.page-hero{background:var(--navy);color:#fff;padding:56px 0}.jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.jump a{color:var(--gold);border:1px solid var(--gold);padding:6px 12px;border-radius:99px;text-decoration:none;font-size:.9rem}
.ticks{padding-left:1.2em}.ticks li::marker{content:"✔  ";color:var(--bronze)}
.areas{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.area{background:#fff;border-radius:10px;padding:20px;border-top:4px solid var(--gold)}.rounded{border-radius:14px;width:100%;aspect-ratio:4/5;object-fit:cover}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:20px 0}.gallery-grid figure{margin:0}.gallery-grid img,.ph div{aspect-ratio:3/4;object-fit:cover;width:100%;border-radius:10px}
.gallery-grid figcaption{font-size:.9rem;color:var(--muted);padding-top:6px}.ph div{background:repeating-linear-gradient(45deg,var(--bg-alt),var(--bg-alt) 12px,var(--steel) 12px,var(--steel) 24px);display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;color:var(--navy);border:2px dashed var(--bronze)}
.notice{background:#fff7e6;border:1px solid var(--gold);padding:14px 18px;border-radius:8px;margin-top:32px}
.quote-form{display:grid;gap:14px}.quote-form label{display:grid;gap:6px;font-weight:700}.quote-form input,.quote-form select,.quote-form textarea{font:inherit;padding:12px;border:1px solid #b9c5cc;border-radius:8px;width:100%}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.small{font-size:.85rem;color:var(--muted)}.contact-grid{align-items:start}.contact-card{background:var(--bg-alt);border-radius:12px;padding:24px;border-top:4px solid var(--gold)}address{font-style:normal}
.site-footer{background:var(--navy);color:var(--steel);padding:48px 0 0}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}.site-footer a{color:var(--gold-light)}.site-footer h3{color:#fff;font-size:1rem}.footer-base{border-top:1px solid #2c4553;padding:16px 20px;margin-top:28px;font-size:.85rem}
.mobile-call{display:none}
@media(max-width:900px){.hero-grid,.why-grid,.video-grid,.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.gallery.teaser{grid-template-columns:1fr 1fr}
.menu-toggle{display:block}#site-nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--navy);flex-direction:column;align-items:stretch;padding:12px 20px;border-bottom:3px solid var(--gold)}#site-nav.open{display:flex}
.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--gold);color:var(--navy);text-align:center;padding:14px;font-weight:800;text-decoration:none;z-index:60}body{padding-bottom:52px}}
@media(max-width:560px){.row,.footer-grid{grid-template-columns:1fr}.section{padding:52px 0}.hero{padding:40px 0}}
picture{display:block}.gallery-grid picture img{aspect-ratio:3/4;object-fit:cover;width:100%;border-radius:10px}.gallery.teaser picture img{aspect-ratio:3/4;object-fit:cover;border-radius:10px;width:100%}

.hero-carousel{min-width:0}.hero-slide[hidden],.slideshow-controls[hidden]{display:none}.slideshow-controls{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:16px}.slideshow-controls button{font:inherit;font-weight:700;color:var(--navy);background:var(--gold);border:2px solid var(--gold);border-radius:6px;min-height:44px;padding:8px 12px;cursor:pointer}.slideshow-controls button:hover{background:var(--gold-light)}.slide-count{padding:0 4px;color:var(--steel);font-variant-numeric:tabular-nums}.slideshow-play{flex-basis:100%}
.service-example{margin:0}.service-example figcaption{font-size:.9rem;color:var(--muted);padding-top:10px}
[id]{scroll-margin-top:92px}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Show the full owner-selected project photos in the homepage frame. */
.hero-carousel img{height:auto;object-fit:contain;background:#101e26}
