/* Homepage refresh: a calm, readable opening with real work alongside it. */
header.hero.hero-premium{display:block;min-height:0;padding:48px 0;background:#0b0b0b!important;border-bottom:1px solid #282828}
header.hero.hero-premium::after{display:none}
header.hero.hero-premium .hero-in{display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:64px;padding:0 24px}
.hero .hero-copy{min-width:0;max-width:600px}
.hero .hero-copy .eyebrow{font-size:.875rem;letter-spacing:.1em;margin:0 0 24px;color:#d4af37}
header.hero.hero-premium .hero-copy h1{font-size:clamp(2.7rem,4.3vw,4rem);line-height:1.1;font-weight:500;letter-spacing:-.045em;text-shadow:none}
.hero-copy h1 span{color:#d8bd78}
header.hero.hero-premium .hero-copy>p:not(.eyebrow){font-size:1.0625rem;line-height:1.75;color:#bebebe;text-shadow:none;max-width:470px;margin:24px 0 28px}
header.hero.hero-premium .hero-copy>p.hero-trust{font-size:.875rem;color:#a9a9a9;margin:22px 0 0}
header.hero.hero-premium .hero-ctas{gap:12px;flex-wrap:wrap}
header.hero.hero-premium .hero-ctas .btn{padding:14px 22px;min-height:50px;letter-spacing:0}
header.hero.hero-premium .btn.ghost{background:transparent;border-color:#606060;backdrop-filter:none}
.hero-media{position:relative;min-width:0;isolation:isolate;height:540px;overflow:hidden;background:#151515}
.hero-media .hero-still{width:100%;height:100%;object-fit:cover;object-position:50% 65%}
header.hero.hero-premium .hero-video{opacity:0;filter:none;object-position:center;transition:opacity .4s ease}
header.hero.hero-premium .hero-media.is-playing .hero-video{opacity:1}
.hero-media::after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8));pointer-events:none}
.hero-media-caption{position:absolute;bottom:28px;left:28px;right:28px;z-index:2;color:#fff}
.hero-media-caption span{display:block;font-size:.75rem;letter-spacing:.15em;margin-bottom:5px}
.hero-media-caption strong{font-size:1.5rem;font-weight:500}
.hero-motion{position:absolute;z-index:3;right:16px;top:16px;min-height:44px;padding:10px 15px;border:1px solid #aaa;background:#0a0a0acc;color:white;font:inherit;font-size:.875rem;cursor:pointer;border-radius:2px}
.proof-strip{padding:22px 0!important;background:#111}
.proof-in{gap:18px}
.proof-text,.proof-badges,.proof-link{font-size:.875rem}
#services{padding-top:64px}
#before-after .ba-video{display:none} /* The same interior work is already shown by the sliders. */
:focus-visible{outline:3px solid #edc968;outline-offset:5px}
@media(min-width:820px) and (max-width:1100px){.nav-links{gap:12px}.nav-links a{font-size:.875rem}.nav-links .btn{padding:9px 12px}}
@media(max-width:1000px){header.hero.hero-premium .hero-in{gap:32px}.hero-media{height:480px}}
@media(max-width:819px){
 header.hero.hero-premium{padding:36px 0 24px;min-height:0}
 header.hero.hero-premium .hero-in{grid-template-columns:1fr;gap:28px;padding:0 22px}
 .hero .hero-copy .eyebrow{font-size:.875rem;letter-spacing:.06em;margin-bottom:18px}
 header.hero.hero-premium .hero-copy h1{font-size:clamp(2.4rem,7.8vw,3.6rem);line-height:1.12}
 header.hero.hero-premium .hero-copy>p:not(.eyebrow){font-size:1rem;margin:20px 0 24px}
 header.hero.hero-premium .hero-copy>p.hero-trust{margin-top:18px}
 header.hero.hero-premium .hero-ctas .btn{flex:1 1 auto;padding:13px 16px}
 .hero-media{height:290px}
 .hero-media .hero-still{object-position:50% 65%}
 .hero-media-caption{bottom:20px;left:20px}
 #services{padding-top:44px}
}
@media(max-width:370px){header.hero.hero-premium .hero-ctas .btn{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){header.hero.hero-premium .hero-video{display:none}.hero-motion{display:none}html{scroll-behavior:auto}}
/* Keep compact layouts inside the viewport, including older service grids. */
header.hero.hero-premium{padding-block:40px}
.hero-media{height:470px}
.proof-strip .proof-in{padding-block:8px}
.ba-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.ceramic-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
@media(max-width:819px){
 header.hero.hero-premium{padding-block:30px 24px}
 .hero-media{height:260px}
 header.hero.hero-premium .hero-copy>p:not(.eyebrow){line-height:1.65}
 header.hero.hero-premium .hero-copy>p.hero-trust{font-size:.875rem;line-height:1.5}
 .card{min-width:0}
 .ceramic-cards{grid-template-columns:1fr}
}
@media(max-width:370px){header.hero.hero-premium .hero-copy h1{font-size:2rem}.hero .hero-copy .eyebrow{font-size:.8125rem}}
.ceramic-tier .grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}
