/* BADWEB Premium Templates add-on. No core template contract is changed. */
.customer-premium{--premium-ease:cubic-bezier(.2,.72,.2,1);--premium-line:color-mix(in srgb,var(--site-ink) 18%,transparent)}
.customer-premium .site-media-user:before{display:none}.customer-premium .site-media-user>img,.customer-premium .site-media-video>video{object-fit:cover;object-position:center}.customer-premium .about-media,.customer-premium .about-page-media,.customer-premium .machina-gallery-item{background:color-mix(in srgb,var(--site-bg) 82%,var(--site-accent) 18%)}
.customer-premium .customer-site-nav{position:relative;z-index:20}.customer-premium .btn{transition:transform .32s var(--premium-ease),background .32s var(--premium-ease),border-color .32s var(--premium-ease)}
.customer-premium .card{transition:transform .38s var(--premium-ease),box-shadow .38s var(--premium-ease)}
.customer-premium .site-grid>.card:hover{transform:translateY(-8px)}
@media(prefers-reduced-motion:no-preference){.customer-premium .section,.customer-premium .public-page>.split,.customer-premium .gallery-grid{animation:premiumReveal both linear;animation-timeline:view();animation-range:entry 4% cover 28%}@keyframes premiumReveal{from{opacity:.25;transform:translateY(34px)}to{opacity:1;transform:none}}}

/* Premium 01 — Maison: quiet luxury, editorial proportion, warm gallery feel. */
.premium-01{--site-bg:#f2eee7;--site-surface:#fbf8f2;--site-ink:#181511;--site-muted:#6d6459;--site-line:rgba(24,21,17,.18);--site-accent:#9c6b43;--site-accent-strong:#72492d;--site-accent-contrast:#fff;--site-radius:2px;--site-shadow:0 28px 90px rgba(44,32,20,.12)}
.premium-01.customer-font-modern,.premium-01.customer-font-classic{font-family:Georgia,"Times New Roman",serif}.premium-01 .customer-site-nav{min-height:94px;border-bottom:1px solid var(--site-line);background:color-mix(in srgb,var(--site-bg) 94%,transparent)}.premium-01 .customer-site-brand{font-size:clamp(21px,1.5vw,26px);font-weight:500;letter-spacing:.01em}.premium-01 .customer-site-links{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.premium-01 .premium-hero{position:relative;min-height:calc(100svh - 94px);display:grid;align-items:end;overflow:hidden}.premium-01 .premium-media-wrap{position:absolute;inset:0}.premium-01 .premium-media-wrap .site-hero-media{width:100%;height:100%;min-height:100%;border-radius:0;box-shadow:none}.premium-01 .premium-media-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,14,10,.04) 18%,rgba(18,14,10,.68) 100%);pointer-events:none}.premium-01 .premium-hero-copy{position:relative;z-index:2;padding-block:clamp(52px,9vw,132px);color:#fff}.premium-01 .premium-hero-copy .hero-copy{max-width:min(1050px,80vw)}.premium-01 .premium-hero h1{font-size:clamp(72px,10vw,178px);font-weight:400;line-height:.82;letter-spacing:-.065em;text-shadow:0 4px 40px rgba(0,0,0,.22)}.premium-01 .premium-hero .lead{max-width:48ch;color:rgba(255,255,255,.82);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.premium-01 .premium-hero .hero-kicker{color:#fff}.premium-01 .premium-hero .btn{background:#fff;color:#16120f}.premium-01 .premium-hero .text-action{color:#fff}.premium-01 .home-services{padding-top:clamp(100px,12vw,190px)}.premium-01 .section-heading{border-bottom:1px solid var(--site-line);padding-bottom:24px}.premium-01 .section-heading h2,.premium-01 .home-about h2{font-weight:400;font-size:clamp(58px,7vw,112px)}.premium-01 .site-grid{grid-template-columns:repeat(12,1fr);gap:1px;background:var(--site-line);border:1px solid var(--site-line)}.premium-01 .site-grid>.card{grid-column:span 4;border:0;border-radius:0;min-height:380px;padding:clamp(28px,4vw,58px);background:var(--site-surface)}.premium-01 .site-grid>.card:nth-child(4n+1){grid-column:span 6}.premium-01 .site-grid>.card h3{font-size:clamp(28px,2.4vw,42px);font-weight:400}.premium-01 .premium-editorial-break{padding-block:clamp(58px,8vw,110px);border-block:1px solid var(--site-line)}.premium-01 .premium-editorial-break .shell{display:flex;justify-content:space-between;gap:30px;align-items:baseline}.premium-01 .premium-editorial-break span{font:700 11px/1 Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase}.premium-01 .premium-editorial-break strong{font-size:clamp(38px,6vw,100px);font-weight:400}.premium-01 .home-about{grid-template-columns:minmax(0,.7fr) minmax(520px,1.3fr)}.premium-01 .about-media{min-height:760px;border-radius:0}.premium-01 .gallery-grid{gap:4px}.premium-01 .gallery-grid>.machina-gallery-item{border:0;border-radius:0}.premium-01 .public-page h1{font-weight:400;font-size:clamp(70px,9vw,150px)}.premium-01 .page-contact .panel,.premium-01 .page-contact .card{border-radius:0}.premium-01 .customer-site-footer{min-height:220px}

/* Premium 02 — Noir: cinematic, dark, high contrast, motion-led. */
.premium-02{--site-bg:#070707;--site-surface:#101010;--site-ink:#f5f5f0;--site-muted:#aaa9a1;--site-line:rgba(255,255,255,.18);--site-accent:#d7ff54;--site-accent-strong:#ecff9e;--site-accent-contrast:#080808;--site-radius:18px;--site-shadow:0 40px 100px rgba(0,0,0,.52)}
.premium-02 .customer-site-nav{position:absolute;inset:0 0 auto;color:#fff;border-bottom-color:rgba(255,255,255,.2);background:linear-gradient(180deg,rgba(0,0,0,.62),transparent);width:100%;max-width:none;padding-inline:var(--site-gutter)}.premium-02 .customer-site-links{color:#fff}.premium-02 .premium-hero{position:relative;display:grid;min-height:100svh}.premium-02 .premium-hero>*{grid-area:1/1}.premium-02 .premium-hero .site-hero-media{height:100svh;min-height:760px;border-radius:0;box-shadow:none}.premium-02 .premium-hero:after{content:"";grid-area:1/1;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.30) 52%,rgba(0,0,0,.08)),linear-gradient(0deg,rgba(0,0,0,.65),transparent 45%);pointer-events:none}.premium-02 .premium-hero-copy{position:relative;z-index:2;display:flex;align-items:flex-end;padding-bottom:clamp(58px,9vw,138px)}.premium-02 .premium-hero .hero-copy{max-width:1120px}.premium-02 .premium-hero h1{font-size:clamp(76px,11.5vw,190px);font-weight:760;line-height:.77;letter-spacing:-.085em;text-transform:uppercase}.premium-02 .premium-hero .lead{color:rgba(255,255,255,.76);max-width:44ch}.premium-02 .premium-hero .hero-kicker{color:var(--site-accent)}.premium-02 .premium-hero .btn{background:var(--site-accent);color:#080808}.premium-02 .premium-hero .text-action{color:#fff}.premium-02 .premium-marquee{overflow:hidden;border-block:1px solid var(--site-line);padding:18px 0;white-space:nowrap}.premium-02 .premium-marquee span{display:inline-block;font-size:clamp(30px,4vw,72px);font-weight:800;letter-spacing:-.05em;text-transform:uppercase}@media(prefers-reduced-motion:no-preference){.premium-02 .premium-marquee span{animation:noirMarquee 18s linear infinite}@keyframes noirMarquee{to{transform:translateX(-25%)}}}.premium-02 .section-heading h2,.premium-02 .home-about h2{font-size:clamp(58px,7.2vw,120px);font-weight:720;text-transform:uppercase}.premium-02 .site-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.premium-02 .site-grid>.card{min-height:420px;border-color:var(--site-line);background:linear-gradient(150deg,#111,#090909)}.premium-02 .site-grid>.card h3{font-size:clamp(30px,3vw,52px)}.premium-02 .home-gallery{padding-top:0}.premium-02 .home-gallery-grid,.premium-02 .page-gallery>.gallery-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-inline:var(--site-gutter);padding-bottom:22px}.premium-02 .home-gallery-grid>* ,.premium-02 .page-gallery .machina-gallery-item{flex:0 0 min(78vw,1050px);height:clamp(420px,62vw,820px);aspect-ratio:auto;scroll-snap-align:center;border:0;border-radius:12px}.premium-02 .home-about{grid-template-columns:minmax(0,.72fr) minmax(520px,1.28fr)}.premium-02 .about-media{min-height:760px;border-radius:12px}.premium-02 .public-page h1{font-size:clamp(72px,10vw,168px);text-transform:uppercase}.premium-02 .page-contact .panel{background:#0d0d0d}.premium-02 .field input,.premium-02 .field textarea,.premium-02 .field select{background:#080808;color:#fff}.premium-02 .customer-site-footer{border-color:var(--site-line)}

/* Premium 03 — Monument: graphic grid, massive typography, architectural rhythm. */
.premium-03{--site-bg:#f5f4ef;--site-surface:#ffffff;--site-ink:#101010;--site-muted:#5f5f59;--site-line:#101010;--site-accent:#e2552c;--site-accent-strong:#b63e1d;--site-accent-contrast:#fff;--site-radius:0;--site-shadow:none}
.premium-03 .customer-site-nav{min-height:74px;border-bottom:2px solid var(--site-ink)}.premium-03 .customer-site-brand{font-size:18px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.premium-03 .customer-site-links{font-size:12px;text-transform:uppercase}.premium-03 .monument-hero{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);gap:0;max-width:none;padding-inline:0;border-bottom:2px solid var(--site-ink)}.premium-03 .monument-copy{display:flex;align-items:flex-end;padding:clamp(42px,6vw,92px) var(--site-gutter)}.premium-03 .monument-copy .hero-copy{max-width:none}.premium-03 .monument-copy h1{font-size:clamp(76px,10.4vw,172px);font-weight:850;line-height:.77;letter-spacing:-.09em;text-transform:uppercase}.premium-03 .monument-media{border-inline-start:2px solid var(--site-ink)}.premium-03 .monument-media .site-hero-media{height:calc(100svh - 74px);min-height:700px;border-radius:0;box-shadow:none}.premium-03 .hero-actions .btn{border-radius:0;text-transform:uppercase}.premium-03 .hero-actions .text-action{text-transform:uppercase}.premium-03 .section{max-width:none;padding-inline:var(--site-gutter)}.premium-03 .section-heading{grid-template-columns:72px 1fr auto;border-block:2px solid var(--site-ink);padding-block:18px}.premium-03 .section-heading h2,.premium-03 .home-about h2{font-size:clamp(58px,8vw,132px);font-weight:850;line-height:.8;text-transform:uppercase}.premium-03 .site-grid{gap:0;border:2px solid var(--site-ink);grid-template-columns:repeat(12,1fr)}.premium-03 .site-grid>.card{grid-column:span 4;border:0;border-inline-end:2px solid var(--site-ink);border-radius:0;min-height:360px;background:transparent}.premium-03 .site-grid>.card:nth-child(3n){border-inline-end:0}.premium-03 .site-grid>.card h3{font-size:clamp(30px,3vw,50px);font-weight:800;text-transform:uppercase}.premium-03 .home-gallery-grid,.premium-03 .page-gallery>.gallery-grid{gap:0;border:2px solid var(--site-ink)}.premium-03 .gallery-grid>.machina-gallery-item{border:0;border-radius:0;border-inline-end:2px solid var(--site-ink);border-bottom:2px solid var(--site-ink)}.premium-03 .home-about{grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr);gap:0;border-block:2px solid var(--site-ink);padding-inline:0}.premium-03 .home-about .about-copy{padding:clamp(44px,6vw,90px) var(--site-gutter)}.premium-03 .home-about .about-media{min-height:720px;border-radius:0;border-inline-start:2px solid var(--site-ink)}.premium-03 .public-page{max-width:none;border-bottom:2px solid var(--site-ink)}.premium-03 .public-page h1{font-size:clamp(72px,10vw,165px);font-weight:850;line-height:.8;text-transform:uppercase}.premium-03 .page-about .split,.premium-03 .page-contact .split{border:2px solid var(--site-ink);gap:0}.premium-03 .page-about .split>div:first-child,.premium-03 .page-contact .split>div:first-child{padding:clamp(30px,5vw,72px)}.premium-03 .page-about .about-page-media,.premium-03 .page-contact .panel{border-radius:0;border:0;border-inline-start:2px solid var(--site-ink)}.premium-03 .field input,.premium-03 .field textarea,.premium-03 .field select{border:2px solid var(--site-ink);border-radius:0;background:#fff;color:#111}

/* Premium responsive behavior: no overflow, no dead media space. */
@media(max-width:900px){.premium-01 .premium-hero{min-height:82svh}.premium-01 .premium-hero-copy .hero-copy{max-width:94vw}.premium-01 .site-grid>.card,.premium-01 .site-grid>.card:nth-child(4n+1){grid-column:span 6}.premium-01 .home-about,.premium-02 .home-about,.premium-03 .monument-hero{grid-template-columns:1fr}.premium-01 .about-media,.premium-02 .about-media{min-height:clamp(420px,75vw,650px)}.premium-02 .premium-hero .site-hero-media{height:86svh;min-height:620px}.premium-03 .monument-media{border-inline-start:0;border-top:2px solid var(--site-ink)}.premium-03 .monument-media .site-hero-media{height:68svh;min-height:500px}.premium-03 .site-grid>.card{grid-column:span 6}.premium-03 .site-grid>.card:nth-child(3n){border-inline-end:2px solid var(--site-ink)}.premium-03 .site-grid>.card:nth-child(2n){border-inline-end:0}.premium-03 .home-about{grid-template-columns:1fr}.premium-03 .home-about .about-media{border-inline-start:0;border-top:2px solid var(--site-ink)}}
@media(max-width:600px){.premium-01 .premium-hero{min-height:74svh}.premium-01 .premium-hero h1,.premium-02 .premium-hero h1,.premium-03 .monument-copy h1{font-size:clamp(52px,17vw,86px)}.premium-01 .site-grid>.card,.premium-01 .site-grid>.card:nth-child(4n+1),.premium-03 .site-grid>.card{grid-column:1/-1;border-inline-end:0;border-bottom:1px solid var(--site-line)}.premium-01 .premium-editorial-break .shell{display:grid}.premium-02 .premium-hero .site-hero-media{height:76svh;min-height:540px}.premium-02 .premium-hero-copy{padding-bottom:42px}.premium-02 .site-grid{grid-template-columns:1fr}.premium-02 .home-gallery-grid>* ,.premium-02 .page-gallery .machina-gallery-item{flex-basis:88vw;height:clamp(330px,112vw,560px)}.premium-03 .monument-copy{padding-block:44px}.premium-03 .section-heading{grid-template-columns:44px 1fr}.premium-03 .section-heading>.text-action{grid-column:2}.premium-03 .customer-site-nav{border-bottom-width:1px}}

/* Main BADWEB homepage — template showcase. */
.template-showcase{overflow:hidden}.template-showcase .section-head{align-items:end}.template-showcase-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,31vw);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px max(var(--site-gutter,18px),1px) 28px 0;overscroll-behavior-inline:contain;scrollbar-width:thin}.template-showcase-card{position:relative;scroll-snap-align:start;min-height:430px;padding:14px;border:1px solid rgba(26,28,36,.12);border-radius:26px;background:#fff;box-shadow:0 24px 70px rgba(23,30,50,.08)}.template-showcase-card.premium{background:#111;color:#fff;border-color:#242424}.template-showcase-card>header{display:flex;justify-content:space-between;align-items:center;padding:4px 4px 14px}.template-showcase-card>header strong{font-size:16px}.template-showcase-card>header span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;opacity:.64}.template-mini{position:relative;height:340px;overflow:hidden;border-radius:18px;background:#f0efe9}.template-mini-nav{height:34px;border-bottom:1px solid currentColor;opacity:.5}.template-mini-hero{display:grid;grid-template-columns:1fr 1fr;height:180px}.template-mini-copy{padding:22px 16px}.template-mini-copy b{display:block;width:82%;height:11px;margin-bottom:10px;border-radius:8px;background:currentColor}.template-mini-copy b:nth-child(2){width:58%}.template-mini-media{margin:12px;background:linear-gradient(145deg,#c7c4ba,#8f948d)}.template-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px}.template-mini-grid i{display:block;height:68px;background:rgba(0,0,0,.09)}.template-showcase-card:nth-child(2n) .template-mini{background:#f3e8df}.template-showcase-card:nth-child(3n) .template-mini-hero{grid-template-columns:.72fr 1.28fr}.template-showcase-card:nth-child(4n) .template-mini-media{border-radius:120px 12px 12px}.template-showcase-card:nth-child(5n) .template-mini-grid i:first-child{grid-column:span 2}.template-showcase-card.premium .template-mini{background:#0b0b0b;color:#f5f5ef}.template-showcase-card.premium .template-mini-media{background:linear-gradient(145deg,#49433b,#151515)}.template-showcase-card.premium .template-mini-grid i{background:rgba(255,255,255,.13)}.template-showcase-card.premium[data-premium="maison"] .template-mini{background:#eee8df;color:#1c1712}.template-showcase-card.premium[data-premium="maison"] .template-mini-media{grid-column:1/-1;margin:0;background:linear-gradient(150deg,#a58f7c,#55483d)}.template-showcase-card.premium[data-premium="noir"] .template-mini-hero{position:relative;display:block;background:linear-gradient(145deg,#363636,#080808);color:#fff}.template-showcase-card.premium[data-premium="noir"] .template-mini-copy{position:absolute;left:0;bottom:0;width:82%;z-index:2}.template-showcase-card.premium[data-premium="monument"] .template-mini{background:#f5f4ef;color:#111;border:2px solid #111;border-radius:0}.template-showcase-card.premium[data-premium="monument"] .template-mini>*{border-color:#111}.template-showcase-card.premium[data-premium="monument"] .template-mini-media{margin:0;border-left:2px solid #111;border-radius:0}.template-showcase-card.premium[data-premium="monument"] .template-mini-grid{gap:0;padding:0;border-top:2px solid #111}.template-showcase-card.premium[data-premium="monument"] .template-mini-grid i{height:78px;border-right:2px solid #111;background:transparent}.template-showcase-note{margin-top:18px;color:#6b7280}
@media(max-width:760px){.template-showcase-rail{grid-auto-columns:82vw}.template-showcase-card{min-height:390px}.template-mini{height:300px}}
