/* BEDWEB customer websites: ten compositions, one editable content contract. */
.customer-site{--site-bg:#f5f4ef;--site-surface:#fff;--site-ink:#171915;--site-muted:#62675f;--site-line:rgba(23,25,21,.16);--site-accent:#1f5b45;--site-accent-strong:#174534;--site-accent-contrast:#fff;--site-radius:24px;--site-gutter:clamp(18px,4vw,68px);--site-shadow:0 24px 70px rgba(20,28,23,.10);margin:0;background:var(--site-bg);color:var(--site-ink);overflow-x:hidden;overflow-x:clip;-webkit-text-size-adjust:100%;text-size-adjust:100%;font-size:16px}
.customer-site.customer-font-modern{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.customer-site.customer-font-editorial{font-family:Georgia,"Times New Roman",serif}.customer-site.customer-font-classic{font-family:"Trebuchet MS",Verdana,Arial,sans-serif}
.customer-site *{min-width:0}.customer-site :is(h1,h2,h3,p,a,strong,div){overflow-wrap:anywhere}.customer-site img,.customer-site video,.customer-site iframe{display:block;max-width:100%}.customer-site img,.customer-site video{width:100%;height:auto}.customer-site button,.customer-site a,.customer-site input,.customer-site select,.customer-site textarea{touch-action:manipulation}.customer-site input,.customer-site select,.customer-site textarea{font-size:max(16px,1rem)}.customer-site .shell{width:100%;max-width:1600px;margin-inline:auto;padding-inline:var(--site-gutter)}.customer-site .customer-rich-text{white-space:pre-wrap;overflow-wrap:anywhere}.customer-site :focus-visible{outline:3px solid var(--site-accent);outline-offset:4px}
/* Navigation never discards a page. */
.customer-site .customer-site-nav{min-height:82px;height:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;padding-block:14px;border-bottom:1px solid var(--site-line)}.customer-site .customer-site-brand{max-width:48%;font-size:clamp(20px,1.8vw,29px);font-weight:800;line-height:1.05;letter-spacing:-.045em}.customer-site .customer-site-links{display:flex!important;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px clamp(10px,1.7vw,26px);color:var(--site-ink);font-size:14px;font-weight:700}.customer-site .customer-site-links>a{display:inline-flex!important;align-items:center;min-height:44px;padding:9px 2px;white-space:nowrap;border-bottom:1px solid transparent}.customer-site .customer-site-links>a:hover,.customer-site .customer-site-links>a[aria-current="page"]{border-color:currentColor}
/* Shared editorial primitives. */
.customer-site .site-hero{display:grid;align-items:center;gap:clamp(30px,5vw,90px)}.customer-site .hero-copy{display:flex;flex-direction:column;align-items:flex-start;max-width:820px}.customer-site .hero-kicker,.customer-site .section-index,.customer-site .section-heading>span{display:block;margin-bottom:15px;color:var(--site-accent);font-size:12px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.customer-site .site-hero h1,.customer-site .public-page h1{max-width:1100px;margin:0;font-size:clamp(52px,6.8vw,112px);font-weight:650;line-height:.91;letter-spacing:-.07em;text-wrap:balance}.customer-site .site-hero .lead{max-width:64ch;margin:25px 0 0;color:var(--site-muted);font-size:clamp(18px,1.45vw,24px);line-height:1.58}.customer-site .hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:32px}.customer-site .btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 22px;border:1px solid transparent;border-radius:999px;background:var(--site-accent);color:var(--site-accent-contrast,#fff);box-shadow:none;font-size:15px;font-weight:800;transition:transform .2s ease,background .2s ease}.customer-site .btn:hover{background:var(--site-accent-strong);transform:translateY(-2px)}.customer-site .btn.secondary{background:transparent;color:var(--site-ink);border-color:var(--site-line)}.customer-site .text-action{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--site-ink);font-weight:800;border-bottom:1px solid currentColor}.customer-site .site-hero-media,.customer-site .about-media{position:relative;overflow:hidden;background:color-mix(in srgb,var(--site-accent) 7%,#e5e7eb);border-radius:var(--site-radius)}.customer-site .site-hero-media{min-height:clamp(420px,52vw,760px);box-shadow:var(--site-shadow)}.customer-site .site-media-frame{position:relative;isolation:isolate;overflow:hidden}.customer-site .site-media-frame>img,.customer-site .site-media-frame>video{width:100%;height:100%}.customer-site .site-media-generated>img{object-fit:cover;object-position:50% 50%}.customer-site .site-media-user{background:color-mix(in srgb,var(--site-bg) 92%,var(--site-accent) 8%)}.customer-site .site-media-user:before{display:none}.customer-site .site-media-user>img{position:relative;z-index:1;object-fit:contain;object-position:50% 50%}.customer-site .site-media-video>video{object-fit:contain;background:#090b0d}
.customer-site .section{padding-block:clamp(76px,9vw,142px)}.customer-site .section-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:18px;margin-bottom:clamp(30px,4vw,60px)}.customer-site .section-heading>span{margin-bottom:10px}.customer-site .section-heading h2,.customer-site .home-about h2{margin:0;font-size:clamp(40px,5vw,78px);line-height:.95;letter-spacing:-.06em;text-wrap:balance}.customer-site .site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,28px)}.customer-site .card,.customer-site .panel{border:1px solid var(--site-line);border-radius:var(--site-radius);background:var(--site-surface);color:var(--site-ink);box-shadow:none}.customer-site .site-grid>.card{display:flex;flex-direction:column;justify-content:flex-end;min-height:260px;padding:clamp(23px,2.6vw,42px)}.customer-site .site-grid>.card h3{font-size:clamp(22px,1.8vw,31px);line-height:1.12}.customer-site .site-grid>.card p{max-width:54ch;color:var(--site-muted);line-height:1.65}.customer-site .home-about{display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);align-items:center;gap:clamp(38px,8vw,130px)}.customer-site .about-copy{max-width:760px}.customer-site .about-copy .lead{color:var(--site-muted);font-size:clamp(18px,1.4vw,23px);line-height:1.68}.customer-site .about-media{min-height:clamp(390px,45vw,680px)}
.customer-site .gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(8px,1.2vw,18px)}.customer-site .gallery-grid>.machina-gallery-item,.customer-site .gallery-grid>.machina-gallery-add{grid-column:span 4;min-height:220px;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--site-line);border-radius:var(--site-radius);background:var(--site-surface)}.customer-site .gallery-grid>.machina-gallery-item:nth-child(5n+1){grid-column:span 4;aspect-ratio:4/3}.customer-site .machina-gallery-item{position:relative}.customer-site .machina-gallery-remove{position:absolute;inset-block-start:10px;inset-inline-end:10px;z-index:3}.customer-site .machina-gallery-add,.customer-site .machina-image-placeholder{display:grid;place-content:center;gap:6px;min-height:220px;padding:24px;text-align:center;color:var(--site-muted)}
/* Inner pages and footer. */
.customer-site .public-page{min-height:72svh;padding-block:clamp(64px,8vw,128px)}.customer-site .public-page>.eyebrow{margin-bottom:14px;color:var(--site-accent)}.customer-site .public-page>.lead{max-width:820px;margin:24px 0 50px;color:var(--site-muted);font-size:clamp(18px,1.4vw,23px);line-height:1.68}.customer-site .public-page>.site-grid,.customer-site .public-page>.gallery-grid{margin-top:clamp(34px,5vw,66px)}.customer-site .split{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);align-items:start;gap:clamp(32px,7vw,110px)}.customer-site .split>.panel{padding:clamp(22px,3vw,44px)}.customer-site .content-image{width:100%;height:100%;max-height:none}.customer-site .about-page-media{min-height:clamp(390px,48vw,720px);padding:0;overflow:hidden}.customer-site .page-contact .split>div:first-child{display:grid;gap:clamp(14px,2vw,24px)}.customer-site .page-contact .split>div:first-child>.card{padding:clamp(22px,3vw,36px)}.customer-site .field input,.customer-site .field select,.customer-site .field textarea{min-height:50px;border-color:var(--site-line);border-radius:12px;background:var(--site-surface);color:var(--site-ink)}.customer-site .field textarea{min-height:150px;resize:vertical}.customer-site .customer-site-footer{max-width:1600px;min-height:150px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-block:clamp(36px,5vw,64px);border-top:1px solid var(--site-line);color:var(--site-muted)}.customer-site .customer-site-footer-brand{display:grid;gap:8px}.customer-site .customer-site-footer-brand strong{font-size:clamp(19px,1.5vw,27px);color:var(--site-ink)}.customer-site .customer-site-footer-legal{max-width:720px;text-align:end;line-height:1.8}.customer-site .customer-auto-link{color:var(--site-accent);font-weight:750;text-decoration:underline;text-underline-offset:3px;unicode-bidi:isolate;direction:ltr}.customer-site .cookie{bottom:max(18px,env(safe-area-inset-bottom));left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));max-height:calc(100dvh - 36px);overflow:auto}
/* 01 Studio — quiet architectural split and offset cards. */
.customer-template-01{--site-bg:#f3f2ec;--site-surface:#fbfbf8;--site-ink:#192018;--site-muted:#626b60;--site-accent:#315f46;--site-accent-strong:#204432;--site-radius:26px}.customer-template-01 .hero-studio{grid-template-columns:minmax(0,.86fr) minmax(440px,1.14fr);min-height:min(860px,calc(100svh - 82px));padding-block:clamp(46px,7vw,110px)}.customer-template-01 .hero-studio .site-hero-media{border-radius:220px 26px 26px 26px}.customer-template-01 .home-services .card:nth-child(2){margin-top:32px;margin-bottom:-32px}.customer-template-01 .home-about .about-media{border-radius:26px 220px 26px 26px}
/* 02 Editorial — print masthead followed by edge-to-edge photography. */
.customer-template-02{--site-bg:#fff;--site-surface:#fff;--site-ink:#151313;--site-muted:#625d59;--site-accent:#b52e24;--site-accent-strong:#86211a;--site-line:rgba(21,19,19,.25);--site-radius:0}.customer-template-02 .customer-site-nav{border-top:7px solid var(--site-accent);border-bottom:1px solid var(--site-ink)}.customer-template-02 .hero-editorial{display:block;padding-top:clamp(60px,8vw,124px)}.customer-template-02 .hero-editorial>.shell{padding-bottom:clamp(44px,6vw,84px)}.customer-template-02 .hero-editorial .hero-copy{max-width:1260px}.customer-template-02 .hero-editorial h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(64px,9vw,150px);font-weight:400;line-height:.84}.customer-template-02 .hero-editorial .lead{padding-inline-start:22px;border-inline-start:5px solid var(--site-accent)}.customer-template-02 .hero-editorial .site-hero-media{width:100vw;min-height:clamp(430px,60vw,850px);margin-inline:calc(50% - 50vw);border-radius:0;box-shadow:none}.customer-template-02 .home-services,.customer-template-02 .home-about{border-top:1px solid var(--site-ink)}.customer-template-02 .site-grid{gap:0;border-top:1px solid var(--site-line)}.customer-template-02 .site-grid>.card{justify-content:flex-start;border-width:0 1px 1px 0;background:transparent}.customer-template-02 :is(h2,.customer-site-brand){font-family:Georgia,"Times New Roman",serif;font-weight:400}
/* 03 Cinema — full-screen frame with a deliberate, bounded caption panel. */
.customer-template-03{--site-bg:#0d1119;--site-surface:#171e2b;--site-ink:#f5f7ff;--site-muted:#bac3d5;--site-accent:#a9caff;--site-accent-strong:#d4e3ff;--site-accent-contrast:#10151f;--site-line:rgba(202,216,244,.24);--site-radius:16px;--site-shadow:0 35px 100px rgba(0,0,0,.42)}.customer-template-03 .customer-site-nav{background:#0d1119}.customer-template-03 .hero-cinema{position:relative;display:grid;min-height:min(900px,calc(100svh - 82px));padding:clamp(24px,4vw,60px)}.customer-template-03 .hero-cinema>*{grid-area:1/1}.customer-template-03 .hero-cinema>.shell{position:relative;z-index:2;display:flex;align-items:flex-end;padding:0}.customer-template-03 .hero-cinema .hero-copy{max-width:900px;margin:clamp(18px,4vw,54px);padding:clamp(26px,4vw,58px);border-inline-start:2px solid var(--site-accent);background:linear-gradient(95deg,rgba(5,8,14,.91),rgba(5,8,14,.34));backdrop-filter:blur(8px)}.customer-template-03 .hero-cinema .site-hero-media{z-index:1;min-height:100%;border-radius:clamp(120px,20vw,300px) clamp(120px,20vw,300px) 16px 16px}.customer-template-03 .hero-cinema .site-hero-media:after,.customer-template-10 .hero-panorama .site-hero-media:after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 35%,rgba(2,5,9,.75))}.customer-template-03 .site-grid>.card{background:linear-gradient(145deg,var(--site-surface),color-mix(in srgb,var(--site-accent) 8%,var(--site-surface)))}
/* 04 Gallery-led — portrait first, asymmetric gallery and lean text. */
.customer-template-04{--site-bg:#fff;--site-surface:#fff;--site-ink:#181818;--site-muted:#666;--site-accent:#242424;--site-accent-strong:#000;--site-line:rgba(0,0,0,.2);--site-radius:2px}.customer-template-04 .customer-site-nav{border-bottom-color:var(--site-ink)}.customer-template-04 .hero-gallery-led{grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);align-items:end;padding-block:clamp(28px,5vw,72px)}.customer-template-04 .hero-gallery-led .site-hero-media{order:-1;min-height:clamp(580px,68vw,900px);aspect-ratio:4/5;box-shadow:none}.customer-template-04 .home-gallery{padding-block:clamp(60px,8vw,115px)}.customer-template-04 .home-gallery-grid{gap:6px}.customer-template-04 .home-gallery-grid>*{border-radius:0}.customer-template-04 .home-gallery-grid>*:nth-child(3n+2){margin-top:0;margin-bottom:0}.customer-template-04 .site-grid{grid-template-columns:1fr;gap:0;border-top:1px solid var(--site-line)}.customer-template-04 .site-grid>.card{min-height:180px;justify-content:flex-start;padding-inline:0;border-width:0 0 1px;background:transparent}
/* 05 Professional — information-first corporate system. */
.customer-template-05{--site-bg:#edf3fb;--site-surface:#fff;--site-ink:#10203c;--site-muted:#53627a;--site-accent:#174ca7;--site-accent-strong:#103a82;--site-line:rgba(16,32,60,.17);--site-radius:10px;--site-shadow:0 24px 60px rgba(21,53,102,.12)}.customer-template-05 .customer-site-nav{background:#fff}.customer-template-05 .hero-professional{grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr);min-height:720px;padding-block:clamp(52px,7vw,105px)}.customer-template-05 .hero-professional h1{font-size:clamp(50px,5.6vw,90px);line-height:1}.customer-template-05 .hero-professional .lead{padding-inline-start:20px;border-inline-start:4px solid var(--site-accent)}.customer-template-05 .site-grid>.card{justify-content:flex-start;border-top:6px solid var(--site-accent);box-shadow:0 12px 35px rgba(21,53,102,.07)}.customer-template-05 .home-about .about-media{padding:10px;background:#fff;box-shadow:var(--site-shadow)}.customer-template-05 .customer-site-footer{border-top:5px solid var(--site-accent)}
/* 06 Boutique — centered luxury, soft arch and tactile cards. */
.customer-template-06{--site-bg:#fff5f7;--site-surface:#fffdfd;--site-ink:#371520;--site-muted:#785663;--site-accent:#852044;--site-accent-strong:#661432;--site-line:rgba(91,29,50,.18);--site-radius:34px;--site-shadow:0 32px 85px rgba(91,29,50,.13)}.customer-template-06 .customer-site-nav{border-bottom:0}.customer-template-06 .hero-boutique{grid-template-columns:1fr;justify-items:center;text-align:center;padding-block:clamp(52px,8vw,120px)}.customer-template-06 .hero-boutique .hero-copy{align-items:center;max-width:1050px}.customer-template-06 .hero-boutique h1,.customer-template-06 h2{font-family:Georgia,"Times New Roman",serif;font-weight:400}.customer-template-06 .hero-boutique .site-hero-media{width:min(100%,1260px);min-height:clamp(440px,55vw,740px);border-radius:400px 400px 34px 34px}.customer-template-06 .home-about{grid-template-columns:1fr;justify-items:center;text-align:center}.customer-template-06 .home-about .about-copy{display:flex;flex-direction:column;align-items:center}.customer-template-06 .home-about .about-media{width:min(100%,980px);border-radius:34px 34px 320px 320px}.customer-template-06 .site-grid>.card{align-items:center;justify-content:center;text-align:center;background:color-mix(in srgb,var(--site-accent) 6%,#fff)}.customer-template-06 .site-grid>.card:nth-child(even){border-radius:170px 170px 34px 34px}
/* 07 Atelier — image first, hard rules and typographic confidence. */
.customer-template-07{--site-bg:#f1f0eb;--site-surface:#f1f0eb;--site-ink:#111;--site-muted:#4b4b47;--site-accent:#384038;--site-accent-strong:#1d221d;--site-line:#111;--site-radius:0;--site-shadow:none}.customer-template-07 .customer-site-nav{border-top:10px solid var(--site-accent);border-bottom:2px solid var(--site-ink)}.customer-template-07 :is(.customer-site-brand,h1,h2,h3){font-weight:850;text-transform:uppercase}.customer-template-07 .hero-atelier{display:block}.customer-template-07 .hero-atelier .site-hero-media{width:100vw;min-height:clamp(430px,62vw,820px);margin-inline:calc(50% - 50vw);border-radius:0;box-shadow:none}.customer-template-07 .hero-atelier>.shell{padding-block:clamp(40px,7vw,96px);border-bottom:2px solid var(--site-ink)}.customer-template-07 .hero-atelier h1{max-width:1300px;line-height:.88}.customer-template-07 .btn{border:2px solid var(--site-ink);border-radius:0;box-shadow:8px 8px 0 var(--site-ink)}.customer-template-07 .site-grid{gap:0;border:2px solid var(--site-ink)}.customer-template-07 .site-grid>.card{border-width:0 2px 0 0;background:transparent}.customer-template-07 .home-about .about-media{border:2px solid var(--site-ink)}
/* 08 Bento — modular product-style composition. */
.customer-template-08{--site-bg:#f5f1ff;--site-surface:#fff;--site-ink:#241746;--site-muted:#675b7d;--site-accent:#5325bd;--site-accent-strong:#3b178f;--site-line:rgba(50,31,91,.17);--site-radius:28px;--site-shadow:0 28px 70px rgba(83,37,189,.13)}.customer-template-08 .customer-site-nav{border-bottom:0}.customer-template-08 .hero-bento{position:relative;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);margin-top:clamp(20px,3vw,46px);padding:clamp(30px,5vw,76px);border-radius:clamp(30px,4vw,60px);background:linear-gradient(135deg,#fff 0 58%,color-mix(in srgb,var(--site-accent) 14%,#fff) 58%)}.customer-template-08 .hero-bento:before{content:"";position:absolute;inset-block-start:-24px;inset-inline-end:22%;width:clamp(100px,12vw,180px);aspect-ratio:1;border-radius:50%;background:var(--site-accent);opacity:.1;pointer-events:none}.customer-template-08 .hero-bento .site-hero-media{min-height:390px;aspect-ratio:1;border-radius:50% 50% 28px 50%}.customer-template-08 .site-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense}.customer-template-08 .site-grid>.card{grid-column:span 2;min-height:230px}.customer-template-08 .site-grid>.card:nth-child(4n+1){grid-column:span 4;background:color-mix(in srgb,var(--site-accent) 9%,#fff)}
/* 09 Journal — reading rhythm and photographic essay. */
.customer-template-09{--site-bg:#fbfaf5;--site-surface:#fbfaf5;--site-ink:#171713;--site-muted:#625f55;--site-accent:#126366;--site-accent-strong:#0b494b;--site-line:rgba(23,23,19,.3);--site-radius:0;--site-shadow:none}.customer-template-09 .customer-site-nav{border-top:1px solid var(--site-ink);border-bottom:4px double var(--site-ink)}.customer-template-09 .customer-site-brand,.customer-template-09 :is(h1,h2){font-family:Georgia,"Times New Roman",serif;font-weight:400}.customer-template-09 .hero-journal{grid-template-columns:minmax(0,.82fr) minmax(460px,1.18fr);align-items:end;padding-block:clamp(52px,7vw,105px)}.customer-template-09 .hero-journal .site-hero-media{min-height:clamp(520px,60vw,800px);border-radius:0;box-shadow:none}.customer-template-09 .home-about{border-top:4px double var(--site-ink);border-bottom:1px solid var(--site-ink)}.customer-template-09 .site-grid{grid-template-columns:1fr;gap:0;border-top:4px double var(--site-ink)}.customer-template-09 .site-grid>.card{min-height:0;display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,2fr);align-items:start;padding-inline:0;border-width:0 0 1px;background:transparent}.customer-template-09 .gallery-grid{gap:8px}.customer-template-09 .gallery-grid>*{border-radius:0}.customer-template-09 .gallery-grid>*:first-child{grid-column:span 12;aspect-ratio:2.2/1}.customer-template-09 .customer-site-footer{border-top:4px double var(--site-ink)}
/* 10 Panorama — immersive landscape and horizontal visual rail. */
.customer-template-10{--site-bg:#08171c;--site-surface:#11272e;--site-ink:#f3fbfc;--site-muted:#b9ced3;--site-accent:#72d8ce;--site-accent-strong:#b3fff6;--site-accent-contrast:#0b1a1f;--site-line:rgba(191,230,235,.24);--site-radius:20px;--site-shadow:0 40px 100px rgba(0,0,0,.34)}.customer-template-10 .customer-site-nav{position:relative;z-index:4;background:#08171c}.customer-template-10 .hero-panorama{position:relative;display:grid;width:100vw;min-height:min(900px,calc(100svh - 82px));margin-inline:calc(50% - 50vw)}.customer-template-10 .hero-panorama>*{grid-area:1/1}.customer-template-10 .hero-panorama>.shell{position:relative;z-index:2;display:flex;align-items:flex-end;padding-bottom:clamp(34px,7vw,96px)}.customer-template-10 .hero-panorama .hero-copy{max-width:1050px;padding:clamp(24px,3vw,46px);border-radius:20px;background:linear-gradient(100deg,rgba(4,13,17,.9),rgba(4,13,17,.35));backdrop-filter:blur(8px)}.customer-template-10 .hero-panorama .site-hero-media{z-index:1;min-height:100%;border-radius:0;box-shadow:none}.customer-template-10 .hero-panorama h1{font-size:clamp(58px,8vw,132px);font-weight:500;line-height:.87}.customer-template-10 .home-gallery-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-inline:var(--site-gutter);padding-bottom:18px}.customer-template-10 .home-gallery-grid>*{flex:0 0 min(78vw,960px);height:clamp(340px,52vw,660px);aspect-ratio:auto;scroll-snap-align:start}.customer-template-10 .site-grid>.card{min-height:300px;background:linear-gradient(145deg,var(--site-surface),color-mix(in srgb,var(--site-accent) 7%,var(--site-surface)))}
/* Every design continues across Services, About, Gallery and Contact. */
.customer-template-01 .public-page{background:radial-gradient(circle at 92% 7%,color-mix(in srgb,var(--site-accent) 12%,transparent),transparent 28%)}.customer-template-01 .page-about .split{grid-template-columns:minmax(0,.72fr) minmax(460px,1.28fr);align-items:center}.customer-template-01 .page-about .about-page-media{border-radius:180px 26px 26px 26px}.customer-template-01 .page-services>.site-grid>.card:nth-child(2n){transform:translateY(26px)}
.customer-template-02 .public-page{padding-top:clamp(50px,6vw,90px);border-top:1px solid var(--site-ink)}.customer-template-02 .public-page>.eyebrow{font-weight:800;letter-spacing:.18em;text-transform:uppercase}.customer-template-02 .page-about .split{grid-template-columns:minmax(0,.7fr) minmax(480px,1.3fr);padding-top:clamp(28px,4vw,56px);border-top:1px solid var(--site-ink)}.customer-template-02 .page-gallery{max-width:none;padding-inline:0}.customer-template-02 .page-gallery>.eyebrow,.customer-template-02 .page-gallery>h1{padding-inline:var(--site-gutter)}.customer-template-02 .page-gallery>.gallery-grid{gap:1px;background:var(--site-ink)}.customer-template-02 .page-contact .split>.editor{border-width:3px 1px 1px}
.customer-template-03 .public-page{background:radial-gradient(circle at 85% 0,color-mix(in srgb,var(--site-accent) 13%,transparent),transparent 34%)}.customer-template-03 .public-page>.eyebrow{letter-spacing:.2em;text-transform:uppercase}.customer-template-03 .page-about .about-page-media{border-color:color-mix(in srgb,var(--site-accent) 50%,var(--site-line));box-shadow:var(--site-shadow)}.customer-template-03 .page-contact .split>.editor{background:linear-gradient(145deg,var(--site-surface),color-mix(in srgb,var(--site-accent) 10%,var(--site-surface)))}
.customer-template-04 .public-page{max-width:1440px}.customer-template-04 .public-page>h1{font-weight:500}.customer-template-04 .page-about .split{grid-template-columns:minmax(420px,1.05fr) minmax(0,.95fr);align-items:end}.customer-template-04 .page-about .about-page-media{order:-1;border:0;border-radius:0}.customer-template-04 .page-gallery>.gallery-grid{gap:6px}.customer-template-04 .page-gallery .machina-gallery-item:nth-child(4n+1){grid-column:span 7;aspect-ratio:7/5}.customer-template-04 .page-gallery .machina-gallery-item:nth-child(4n+2){grid-column:span 5;aspect-ratio:5/7}.customer-template-04 .page-contact .card,.customer-template-04 .page-contact .panel{border-width:1px 0;border-radius:0}
.customer-template-05 .public-page{max-width:1480px}.customer-template-05 .public-page>.eyebrow{display:inline-flex;padding:8px 12px;background:var(--site-accent);color:#fff;font-weight:800}.customer-template-05 .page-about .about-page-media{padding:10px;background:#fff;box-shadow:var(--site-shadow)}.customer-template-05 .page-contact .split>.editor{border-top:7px solid var(--site-accent);box-shadow:var(--site-shadow)}
.customer-template-06 .public-page>.eyebrow,.customer-template-06 .public-page>h1,.customer-template-06 .public-page>.lead{text-align:center;margin-inline:auto}.customer-template-06 .page-about .split{grid-template-columns:1fr;justify-items:center;text-align:center}.customer-template-06 .page-about .split>div:first-child{max-width:900px}.customer-template-06 .page-about .about-page-media{width:min(100%,1040px);border-radius:360px 360px 34px 34px}.customer-template-06 .page-contact .split>.editor{border-radius:34px 34px 170px 34px}.customer-template-06 .page-gallery .machina-gallery-item:nth-child(odd){border-radius:180px 180px 34px 34px}
.customer-template-07 .public-page{border-bottom:2px solid var(--site-ink)}.customer-template-07 .public-page>.eyebrow{display:inline-block;padding:7px 10px;background:var(--site-ink);color:var(--site-bg);font-weight:900;text-transform:uppercase}.customer-template-07 .page-about .split{align-items:stretch;gap:0;border:2px solid var(--site-ink)}.customer-template-07 .page-about .split>div:first-child{padding:clamp(28px,4vw,60px)}.customer-template-07 .page-about .about-page-media{border:0;border-inline-start:2px solid var(--site-ink)}.customer-template-07 .page-gallery>.gallery-grid{gap:0;border:2px solid var(--site-ink)}.customer-template-07 .page-contact .card,.customer-template-07 .page-contact .panel{border:2px solid var(--site-ink);border-radius:0}
.customer-template-08 .public-page{margin-block:clamp(24px,4vw,62px);padding:clamp(38px,6vw,92px);border-radius:clamp(30px,4vw,60px);background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--site-accent) 9%,#fff))}.customer-template-08 .page-about .about-page-media{border:0;border-radius:50% 50% 28px 50%;box-shadow:var(--site-shadow)}.customer-template-08 .page-contact .split>.editor{border:0;box-shadow:var(--site-shadow)}
.customer-template-09 .public-page{max-width:1380px}.customer-template-09 .public-page>.eyebrow{padding-bottom:12px;border-bottom:1px solid var(--site-ink);font-weight:700;text-transform:uppercase}.customer-template-09 .page-about .split{grid-template-columns:minmax(0,.68fr) minmax(480px,1.32fr);align-items:start}.customer-template-09 .page-about .about-page-media{border:0;border-radius:0}.customer-template-09 .page-services>.site-grid,.customer-template-09 .page-contact .split{border-top:4px double var(--site-ink)}.customer-template-09 .page-contact .card,.customer-template-09 .page-contact .panel{border-width:0 0 1px;border-radius:0;background:transparent}
.customer-template-10 .public-page{background:radial-gradient(circle at 88% 4%,color-mix(in srgb,var(--site-accent) 17%,transparent),transparent 34%)}.customer-template-10 .page-about .about-page-media{border-color:color-mix(in srgb,var(--site-accent) 55%,var(--site-line));box-shadow:var(--site-shadow)}.customer-template-10 .page-gallery{max-width:none;padding-inline:0}.customer-template-10 .page-gallery>.eyebrow,.customer-template-10 .page-gallery>h1{padding-inline:var(--site-gutter)}.customer-template-10 .page-gallery>.gallery-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-inline:var(--site-gutter);padding-bottom:20px}.customer-template-10 .page-gallery .machina-gallery-item{flex:0 0 min(80vw,980px);height:clamp(360px,55vw,700px);aspect-ratio:auto;scroll-snap-align:center}.customer-template-10 .page-contact .split>.editor{background:linear-gradient(145deg,var(--site-surface),color-mix(in srgb,var(--site-accent) 8%,var(--site-surface)))}
@media(max-width:1100px){.customer-site .site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-site .home-about{grid-template-columns:minmax(0,1fr) minmax(340px,1fr);gap:44px}.customer-template-08 .site-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.customer-template-08 .site-grid>.card,.customer-template-08 .site-grid>.card:nth-child(4n+1){grid-column:span 2}}
/* Phone and small tablet: overlays become document flow; no content overlap. */
@media(max-width:800px){.customer-site .customer-site-nav{align-items:flex-start;flex-direction:column;gap:6px;padding-block:15px}.customer-site .customer-site-brand{max-width:100%}.customer-site .customer-site-links{width:100%;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;padding-bottom:2px}.customer-site .customer-site-links::-webkit-scrollbar{display:none}.customer-site .customer-site-links>a{flex:0 0 auto;padding:8px 9px}.customer-site .site-hero,.customer-template-01 .hero-studio,.customer-template-04 .hero-gallery-led,.customer-template-05 .hero-professional,.customer-template-08 .hero-bento,.customer-template-09 .hero-journal{grid-template-columns:1fr;min-height:0}.customer-site .site-hero h1,.customer-site .public-page h1{font-size:clamp(42px,11vw,68px);line-height:1;letter-spacing:-.055em}.customer-site .site-hero-media{min-height:clamp(300px,72vw,520px)}.customer-site .home-about,.customer-site .split{grid-template-columns:1fr;gap:34px}.customer-site .site-grid{grid-template-columns:1fr}.customer-site .section-heading{grid-template-columns:auto 1fr;align-items:start}.customer-site .section-heading>.text-action{grid-column:2}.customer-site .gallery-grid{grid-template-columns:1fr}.customer-site .gallery-grid>img,.customer-site .gallery-grid>.machina-gallery-item,.customer-site .gallery-grid>.machina-gallery-add,.customer-site .gallery-grid>img:nth-child(5n+1),.customer-site .gallery-grid>.machina-gallery-item:nth-child(5n+1){grid-column:auto;min-height:0;aspect-ratio:4/3}.customer-site .customer-site-footer{align-items:flex-start;flex-direction:column}.customer-site .customer-site-footer-legal{text-align:start}.customer-template-01 .hero-studio .site-hero-media,.customer-template-01 .home-about .about-media{border-radius:24px}.customer-template-01 .home-services .card:nth-child(2){margin:0}.customer-template-02 .hero-editorial h1{font-size:clamp(48px,13vw,78px)}.customer-template-03 .hero-cinema,.customer-template-10 .hero-panorama{display:flex;width:100%;min-height:0;margin:0;padding:0;flex-direction:column}.customer-template-03 .hero-cinema .site-hero-media,.customer-template-10 .hero-panorama .site-hero-media{order:-1;width:100%;min-height:clamp(320px,72vw,520px);border-radius:0}.customer-template-03 .hero-cinema>.shell,.customer-template-10 .hero-panorama>.shell{display:block;width:100%;padding:0 var(--site-gutter)}.customer-template-03 .hero-cinema .hero-copy,.customer-template-10 .hero-panorama .hero-copy{max-width:none;margin:0;padding:38px 0;background:none;backdrop-filter:none;border-radius:0}.customer-template-04 .hero-gallery-led .site-hero-media{min-height:clamp(420px,120vw,660px)}.customer-template-04 .home-gallery-grid>*:nth-child(3n+2){margin:0}.customer-template-06 .hero-boutique .site-hero-media,.customer-template-06 .home-about .about-media{border-radius:34px}.customer-template-07 .hero-atelier .site-hero-media{min-height:clamp(320px,72vw,520px)}.customer-template-08 .hero-bento{margin:18px;padding:28px 22px;background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--site-accent) 10%,#fff))}.customer-template-08 .hero-bento:before{display:none}.customer-template-08 .site-grid{grid-template-columns:1fr}.customer-template-08 .site-grid>.card,.customer-template-08 .site-grid>.card:nth-child(4n+1){grid-column:auto}.customer-template-09 .site-grid>.card{grid-template-columns:1fr}.customer-template-10 .home-gallery-grid>*{flex-basis:86vw;height:clamp(280px,72vw,500px)}}
@media(max-width:800px){.customer-site .about-page-media{min-height:clamp(300px,82vw,520px)}.customer-template-01 .page-about .split,.customer-template-02 .page-about .split,.customer-template-04 .page-about .split,.customer-template-06 .page-about .split,.customer-template-09 .page-about .split{grid-template-columns:1fr}.customer-template-01 .page-services>.site-grid>.card:nth-child(2n){transform:none}.customer-template-02 .page-gallery,.customer-template-10 .page-gallery{width:100%;margin:0}.customer-template-04 .hero-gallery-led .site-hero-media{aspect-ratio:4/3}.customer-template-04 .page-about .about-page-media{order:0}.customer-template-04 .page-gallery .machina-gallery-item:nth-child(4n+1),.customer-template-04 .page-gallery .machina-gallery-item:nth-child(4n+2){grid-column:auto;aspect-ratio:4/3}.customer-template-07 .page-about .split{grid-template-columns:1fr;gap:0}.customer-template-07 .page-about .about-page-media{border-inline-start:0;border-top:2px solid var(--site-ink)}.customer-template-08 .public-page{margin:18px;padding:42px 22px}.customer-template-10 .page-gallery .machina-gallery-item{flex-basis:88vw;height:clamp(280px,78vw,500px)}}
@media(max-width:520px){.customer-site{--site-gutter:18px}.customer-site .hero-actions{width:100%;align-items:stretch;flex-direction:column}.customer-site .hero-actions .btn,.customer-site .hero-actions .text-action{width:100%}.customer-site .hero-actions .text-action{justify-content:center}.customer-site .section{padding-block:68px}.customer-site .section-heading{gap:8px 12px}.customer-site .site-grid>.card{min-height:210px}.customer-template-08 .hero-bento{margin-inline:10px}}
[dir="rtl"] .customer-site :is(h1,h2,h3,.customer-site-brand){letter-spacing:normal;line-height:1.12}[dir="rtl"] .customer-site .customer-site-footer-legal{text-align:start}@media(hover:none),(pointer:coarse){.customer-site .btn:hover{transform:none}.customer-site .btn,.customer-site .customer-site-links a{min-height:48px}}@media(prefers-reduced-motion:reduce){.customer-site *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@supports(height:100dvh){.customer-site .public-page{min-height:72dvh}}

/* Post-READY media consistency: user uploads keep the whole image visible and gallery tiles stay equal-sized. */
.customer-site .gallery-grid>.machina-gallery-item>img{object-fit:contain;object-position:center;background:color-mix(in srgb,var(--site-bg) 92%,var(--site-accent) 8%)}
.customer-template-04 .page-gallery .machina-gallery-item:nth-child(4n+1),.customer-template-04 .page-gallery .machina-gallery-item:nth-child(4n+2),.customer-template-09 .gallery-grid>*:first-child{grid-column:span 4;aspect-ratio:4/3}
@media(max-width:800px){.customer-site .gallery-grid>.machina-gallery-item,.customer-template-04 .page-gallery .machina-gallery-item:nth-child(4n+1),.customer-template-04 .page-gallery .machina-gallery-item:nth-child(4n+2),.customer-template-09 .gallery-grid>*:first-child{grid-column:auto;aspect-ratio:4/3}}

/* Removable post-READY website add-ons: uploaded hero video + social links. */
.customer-site .site-media-uploaded-video{min-height:0;aspect-ratio:16/9;background:var(--site-surface);box-shadow:var(--site-shadow)}
.customer-site .site-media-uploaded-video>video{width:100%;height:100%;object-fit:cover;background:var(--site-surface)}
.customer-site .customer-site-social{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:4px 0 2px}
.customer-site .customer-site-social-link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;border:1px solid var(--site-line);border-radius:999px;background:var(--site-surface);color:var(--site-ink);font-size:13px;font-weight:900;line-height:1;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.customer-site .customer-site-social-link:hover{transform:translateY(-2px);border-color:var(--site-accent);background:color-mix(in srgb,var(--site-accent) 9%,var(--site-surface))}
.customer-site .customer-site-social-link span{display:inline-flex;align-items:center;justify-content:center;min-width:1.2em;letter-spacing:-.04em}
@media(max-width:800px){.customer-site .site-media-uploaded-video{aspect-ratio:16/10}.customer-site .customer-site-social-link{width:40px;height:40px;flex-basis:40px}}

/* MachinA Store add-on */
.store-cart-button{border:1px solid currentColor;background:transparent;border-radius:999px;padding:.55rem .85rem;font:inherit;cursor:pointer}.store-cart-button span{display:inline-flex;min-width:1.4rem;height:1.4rem;align-items:center;justify-content:center;border-radius:999px;background:var(--accent,#5d3df5);color:#fff;font-size:.78rem}.store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.store-product-card{overflow:hidden;padding:0}.store-product-image{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.store-product-body{padding:1rem}.store-product-buy{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem}.store-cart-drawer{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.42);display:flex;justify-content:flex-end}.store-cart-drawer[hidden]{display:none}.store-cart-panel{width:min(520px,100%);height:100%;overflow:auto;background:#fff;color:#111;padding:1.25rem;box-shadow:-12px 0 40px rgba(0,0,0,.2)}.store-cart-lines{display:grid;gap:.75rem;margin:1rem 0}.store-cart-line{display:flex;justify-content:space-between;gap:1rem;align-items:center;border-bottom:1px solid #e5e5e5;padding:.75rem 0}.store-cart-line .toolbar{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.store-cart-total{display:flex;justify-content:space-between;font-size:1.15rem;padding:1rem 0}.store-checkout-form{display:grid;gap:.7rem;margin-top:.5rem}@media(max-width:650px){.store-cart-line{align-items:flex-start;flex-direction:column}.store-product-buy{align-items:flex-start;flex-direction:column}.store-cart-button{padding:.45rem .65rem}}

/* ================================================================
   14–25 · 2026 template expansion
   Visual-only compositions. They reuse the canonical MachinA slots,
   resources, editor, Save and Publish path without new content fields.
   ================================================================ */

/* 14 · CV Executive — Swiss career profile, disciplined and legible. */
.customer-template-14{--site-bg:#f6f7f9;--site-surface:#fff;--site-ink:#0d1726;--site-muted:#657082;--site-line:rgba(13,23,38,.14);--site-accent:#1d4ed8;--site-accent-strong:#173ca6;--site-radius:14px;--site-shadow:0 26px 80px rgba(18,36,78,.10)}
.customer-template-14 .customer-site-nav{min-height:68px;border-bottom:1px solid var(--site-ink)}
.customer-template-14 .customer-site-brand{font-size:15px;text-transform:uppercase;letter-spacing:.15em}
.customer-template-14 .customer-site-links{font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.customer-template-14 .hero-cv-executive{grid-template-columns:minmax(0,1.08fr) minmax(320px,.62fr);min-height:calc(100svh - 68px);padding-block:clamp(50px,7vw,108px)}
.customer-template-14 .hero-cv-executive .hero-copy{max-width:980px}
.customer-template-14 .hero-cv-executive .hero-kicker{padding-bottom:10px;border-bottom:2px solid var(--site-accent)}
.customer-template-14 .hero-cv-executive h1{font-size:clamp(64px,8vw,138px);font-weight:760;line-height:.83;letter-spacing:-.075em}
.customer-template-14 .hero-cv-executive .site-hero-media{min-height:clamp(420px,48vw,720px);border-radius:10px;box-shadow:none}
.customer-template-14 .home-about{border-top:1px solid var(--site-ink);border-bottom:1px solid var(--site-line);padding-block:clamp(62px,7vw,108px)}
.customer-template-14 .home-about .about-media{border-radius:10px}
.customer-template-14 .section-heading{padding-bottom:18px;border-bottom:1px solid var(--site-ink)}
.customer-template-14 .section-heading h2,.customer-template-14 .home-about h2{font-size:clamp(40px,4.5vw,70px);font-weight:720}
.customer-template-14 .site-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--site-line)}
.customer-template-14 .site-grid>.card{min-height:220px;border:0;border-bottom:1px solid var(--site-line);border-radius:0;background:transparent;padding:30px 0}
.customer-template-14 .site-grid>.card:nth-child(odd){padding-inline-end:clamp(22px,4vw,64px);border-inline-end:1px solid var(--site-line)}
.customer-template-14 .site-grid>.card:nth-child(even){padding-inline-start:clamp(22px,4vw,64px)}
.customer-template-14 .site-grid>.card h3{font-size:clamp(24px,2vw,34px)}
.customer-template-14 .public-page h1{font-size:clamp(58px,7vw,112px)}

/* 15 · CV Persona — the person is the brand. */
.customer-template-15{--site-bg:#f7f3ff;--site-surface:#fff;--site-ink:#22143e;--site-muted:#705f83;--site-line:rgba(58,28,94,.15);--site-accent:#7c3aed;--site-accent-strong:#5b21b6;--site-radius:28px;--site-shadow:0 30px 90px rgba(75,31,130,.17)}
.customer-template-15 .customer-site-nav{position:relative;z-index:5;border-bottom:0;background:rgba(247,243,255,.82);backdrop-filter:blur(16px)}
.customer-template-15 .hero-cv-persona{position:relative;min-height:calc(100svh - 82px);display:grid;align-items:end;overflow:hidden}
.customer-template-15 .hero-cv-persona>.site-hero-media{grid-area:1/1;min-height:calc(100svh - 82px);border-radius:0;box-shadow:none}
.customer-template-15 .hero-cv-persona>.site-hero-media:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(25,11,49,.82),rgba(25,11,49,.25) 58%,rgba(25,11,49,.05))}
.customer-template-15 .hero-cv-persona>.shell{grid-area:1/1;position:relative;z-index:3;width:100%;padding-block:clamp(58px,8vw,118px)}
.customer-template-15 .hero-cv-persona .hero-copy{max-width:900px;color:#fff}
.customer-template-15 .hero-cv-persona .hero-kicker,.customer-template-15 .hero-cv-persona .lead,.customer-template-15 .hero-cv-persona .text-action{color:#fff}
.customer-template-15 .hero-cv-persona h1{font-size:clamp(70px,10vw,174px);font-weight:820;line-height:.78;letter-spacing:-.085em;text-transform:uppercase;text-shadow:0 12px 40px rgba(15,5,30,.25)}
.customer-template-15 .hero-cv-persona .btn{background:#fff;color:#2c1550}
.customer-template-15 .home-services{padding-top:clamp(90px,10vw,150px)}
.customer-template-15 .site-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense}
.customer-template-15 .site-grid>.card{grid-column:span 4;min-height:280px}
.customer-template-15 .site-grid>.card:nth-child(4n+1){grid-column:span 8;background:color-mix(in srgb,var(--site-accent) 9%,#fff)}
.customer-template-15 .home-about{grid-template-columns:minmax(0,.8fr) minmax(480px,1.2fr)}
.customer-template-15 .home-about .about-media{min-height:700px;border-radius:280px 28px 28px 28px}
.customer-template-15 .gallery-grid>.machina-gallery-item{border-radius:28px}
.customer-template-15 .public-page h1{font-size:clamp(64px,8vw,132px);font-weight:800}

/* 16 · CV Story — career narrative / outcomes timeline. */
.customer-template-16{--site-bg:#edf7f5;--site-surface:#fafffe;--site-ink:#0c2c2a;--site-muted:#55716e;--site-line:rgba(12,44,42,.17);--site-accent:#0f766e;--site-accent-strong:#0b5b55;--site-radius:20px;--site-shadow:0 25px 75px rgba(15,78,73,.10)}
.customer-template-16 .customer-site-nav{border-bottom:0}
.customer-template-16 .hero-cv-story{grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);padding-block:clamp(48px,6vw,92px)}
.customer-template-16 .hero-cv-story .hero-copy{position:relative;padding-inline-start:clamp(24px,4vw,56px);border-inline-start:4px solid var(--site-accent)}
.customer-template-16 .hero-cv-story h1{font-size:clamp(58px,7.2vw,120px);line-height:.84}
.customer-template-16 .hero-cv-story .site-hero-media{min-height:650px;border-radius:180px 20px 180px 20px;box-shadow:none}
.customer-template-16 .home-services{position:relative}
.customer-template-16 .home-services:before{content:"";position:absolute;inset-block:clamp(150px,16vw,250px) 0;inset-inline-start:calc(var(--site-gutter) + 23px);width:2px;background:linear-gradient(var(--site-accent),transparent)}
.customer-template-16 .site-grid{display:grid;grid-template-columns:1fr;gap:18px;padding-inline-start:70px}
.customer-template-16 .site-grid>.card{position:relative;min-height:170px;justify-content:center;padding:28px 34px;background:rgba(255,255,255,.7);backdrop-filter:blur(10px)}
.customer-template-16 .site-grid>.card:before{content:"";position:absolute;inset-inline-start:-59px;top:42px;width:14px;height:14px;border:5px solid var(--site-bg);border-radius:50%;background:var(--site-accent);box-shadow:0 0 0 2px var(--site-accent)}
.customer-template-16 .home-gallery-grid>.machina-gallery-item:nth-child(3n+1){grid-column:span 8}
.customer-template-16 .home-about{padding:clamp(38px,6vw,88px);border-radius:36px;background:#092f2c;color:#f5fffd}
.customer-template-16 .home-about .lead,.customer-template-16 .home-about .section-index{color:#c4e4df}
.customer-template-16 .home-about .about-media{border-radius:22px}

/* 17 · Card Signature — elegant digital calling card. */
.customer-template-17{--site-bg:#f7f5ef;--site-surface:#fff;--site-ink:#111827;--site-muted:#626a76;--site-line:rgba(17,24,39,.16);--site-accent:#111827;--site-accent-strong:#000;--site-radius:24px;--site-shadow:0 30px 80px rgba(24,24,27,.10)}
.customer-template-17 .customer-site-nav{border:0}
.customer-template-17 .hero-card-signature{grid-template-columns:minmax(0,1.08fr) minmax(280px,.62fr);min-height:calc(100svh - 82px);padding-block:clamp(34px,6vw,90px)}
.customer-template-17 .hero-card-signature:before{content:"PROFILE / 01";position:absolute;inset-inline-start:var(--site-gutter);top:105px;font-size:10px;letter-spacing:.2em}
.customer-template-17 .hero-card-signature .hero-copy{padding:clamp(36px,5vw,80px);border:1px solid var(--site-ink);border-radius:2px;background:rgba(255,255,255,.62)}
.customer-template-17 .hero-card-signature h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(64px,8vw,126px);font-weight:400;line-height:.84}
.customer-template-17 .hero-card-signature .site-hero-media{min-height:620px;border-radius:2px;box-shadow:none}
.customer-template-17 .hero-card-signature .site-hero-media:after{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.65);pointer-events:none}
.customer-template-17 .home-about{padding-block:80px;border-top:1px solid var(--site-ink)}
.customer-template-17 .home-services .section-heading{display:none}
.customer-template-17 .home-services{padding-top:0}
.customer-template-17 .site-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.customer-template-17 .site-grid>.card{min-height:190px;border-radius:2px}

/* 18 · Card Signal — bold, energetic, instant contact identity. */
.customer-template-18{--site-bg:#fff1f4;--site-surface:#fff;--site-ink:#250811;--site-muted:#7d4c5a;--site-line:rgba(95,20,45,.15);--site-accent:#e11d48;--site-accent-strong:#be123c;--site-radius:32px;--site-shadow:0 30px 85px rgba(190,24,93,.14)}
.customer-template-18 .customer-site-nav{border-bottom:0}
.customer-template-18 .hero-card-signal{position:relative;grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr);min-height:calc(100svh - 82px);padding-block:clamp(42px,6vw,90px)}
.customer-template-18 .hero-card-signal:after{content:"";position:absolute;width:clamp(180px,24vw,380px);aspect-ratio:1;border:2px solid var(--site-accent);border-radius:50%;inset-inline-end:-8vw;bottom:4%;opacity:.22;pointer-events:none}
.customer-template-18 .hero-card-signal .site-hero-media{min-height:640px;border-radius:50% 50% 18px 50%;transform:rotate(-2deg)}
.customer-template-18 .hero-card-signal .hero-copy{padding-inline-start:clamp(10px,3vw,50px)}
.customer-template-18 .hero-card-signal h1{font-size:clamp(66px,8.6vw,148px);font-weight:900;line-height:.78;text-transform:uppercase}
.customer-template-18 .hero-card-signal .btn{border-radius:12px}
.customer-template-18 .site-grid>.card{justify-content:center;background:color-mix(in srgb,var(--site-accent) 7%,#fff);border:0}
.customer-template-18 .site-grid>.card:nth-child(2n){transform:translateY(28px)}
.customer-template-18 .home-about{margin-block:60px;padding:clamp(30px,5vw,70px);border:1px solid var(--site-line);border-radius:40px;background:rgba(255,255,255,.75)}

/* 19 · Card Minimal — ultra-clean one-screen identity. */
.customer-template-19{--site-bg:#f8fafc;--site-surface:#fff;--site-ink:#0f172a;--site-muted:#64748b;--site-line:rgba(15,23,42,.12);--site-accent:#2563eb;--site-accent-strong:#1d4ed8;--site-radius:18px;--site-shadow:none}
.customer-template-19 .customer-site-nav{min-height:64px;border-bottom:0}
.customer-template-19 .hero-card-minimal{grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);min-height:calc(100svh - 64px);align-items:center;padding-block:40px}
.customer-template-19 .hero-card-minimal .hero-copy{max-width:1000px}
.customer-template-19 .hero-card-minimal h1{font-size:clamp(70px,9.2vw,160px);font-weight:560;line-height:.8;letter-spacing:-.085em}
.customer-template-19 .hero-card-minimal .lead{max-width:48ch}
.customer-template-19 .hero-card-minimal .site-hero-media{min-height:520px;aspect-ratio:4/5;border-radius:999px;box-shadow:none}
.customer-template-19 .hero-actions .btn{border-radius:999px;padding-inline:30px}
.customer-template-19 .home-about{grid-template-columns:1fr;border-top:1px solid var(--site-line);padding-top:70px}
.customer-template-19 .home-about .about-media{display:none}
.customer-template-19 .home-services{padding-top:0}
.customer-template-19 .site-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.customer-template-19 .site-grid>.card{min-height:160px;padding:24px;background:transparent}

/* 20 · Premium++ Aurelia — quiet luxury, cinematic image and editorial layers. */
.customer-template-20{--site-bg:#f0ebe4;--site-surface:#faf7f2;--site-ink:#261c15;--site-muted:#77685d;--site-line:rgba(38,28,21,.16);--site-accent:#b07a4f;--site-accent-strong:#8e5d38;--site-radius:4px;--site-shadow:0 34px 110px rgba(61,42,27,.16)}
.customer-template-20 .customer-site-nav{position:absolute;z-index:8;left:0;right:0;border-bottom:1px solid rgba(255,255,255,.36);color:#fff}
.customer-template-20 .customer-site-brand,.customer-template-20 .customer-site-links{color:#fff}
.customer-template-20 .aurelia-hero{position:relative;min-height:100svh;display:grid;align-items:end;overflow:hidden}
.customer-template-20 .premium-plus-media,.customer-template-20 .premium-plus-media .site-hero-media{position:absolute;inset:0;min-height:100%;border-radius:0;box-shadow:none}
.customer-template-20 .premium-plus-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,15,10,.08),rgba(22,15,10,.15) 45%,rgba(22,15,10,.78))}
.customer-template-20 .premium-plus-copy{position:relative;z-index:3;padding-bottom:clamp(55px,8vw,118px)}
.customer-template-20 .premium-plus-copy .hero-copy{max-width:1180px;color:#fff}
.customer-template-20 .premium-plus-copy .hero-kicker,.customer-template-20 .premium-plus-copy .lead,.customer-template-20 .premium-plus-copy .text-action{color:#fff}
.customer-template-20 .premium-plus-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(76px,10vw,176px);font-weight:400;line-height:.78;letter-spacing:-.075em}
.customer-template-20 .premium-plus-copy .btn{background:#fff;color:#281d16}
.customer-template-20 .home-about{grid-template-columns:minmax(0,.66fr) minmax(540px,1.34fr);padding-block:clamp(110px,12vw,190px)}
.customer-template-20 .home-about h2,.customer-template-20 .section-heading h2{font-family:Georgia,"Times New Roman",serif;font-weight:400}
.customer-template-20 .home-about .about-media{min-height:780px;border-radius:2px}
.customer-template-20 .site-grid{grid-template-columns:repeat(12,1fr);gap:18px}
.customer-template-20 .site-grid>.card{grid-column:span 4;min-height:340px;border-radius:2px;background:rgba(250,247,242,.72)}
.customer-template-20 .site-grid>.card:nth-child(4n+1){grid-column:span 8}
.customer-template-20 .gallery-grid>.machina-gallery-item{border-radius:2px}

/* 21 · Premium++ Obsidian — high-fashion black space and luminous type. */
.customer-template-21{--site-bg:#050505;--site-surface:#0c0c0c;--site-ink:#f5f7ed;--site-muted:#9ca395;--site-line:rgba(255,255,255,.14);--site-accent:#c6ff3d;--site-accent-strong:#a9e51d;--site-accent-contrast:#071000;--site-radius:10px;--site-shadow:0 30px 110px rgba(0,0,0,.42)}
.customer-template-21 .customer-site-nav{border-color:var(--site-line)}
.customer-template-21 .obsidian-hero{position:relative;min-height:calc(100svh - 82px);display:grid;align-items:end;overflow:hidden}
.customer-template-21 .obsidian-hero>.site-hero-media{grid-area:1/1;min-height:calc(100svh - 82px);border-radius:0;filter:saturate(.75) contrast(1.08)}
.customer-template-21 .obsidian-hero>.site-hero-media:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 40%,transparent 0 22%,rgba(0,0,0,.18) 50%,rgba(0,0,0,.84) 100%)}
.customer-template-21 .obsidian-hero .premium-plus-copy{grid-area:1/1;position:relative;z-index:3;padding-bottom:clamp(48px,7vw,100px)}
.customer-template-21 .obsidian-hero .hero-copy{max-width:1300px}
.customer-template-21 .obsidian-hero h1{font-size:clamp(80px,11.6vw,198px);font-weight:900;line-height:.72;letter-spacing:-.09em;text-transform:uppercase}
.customer-template-21 .obsidian-hero .lead{color:#d7dbd1}
.customer-template-21 .obsidian-hero .text-action{color:#fff}
.customer-template-21 .home-gallery-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-inline:var(--site-gutter);padding-bottom:18px}
.customer-template-21 .home-gallery-grid>*{flex:0 0 min(76vw,1080px);height:clamp(460px,62vw,840px);scroll-snap-align:center;border:0}
.customer-template-21 .site-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--site-line)}
.customer-template-21 .site-grid>.card{min-height:330px;border:0;border-radius:0;background:#080808}
.customer-template-21 .home-about{grid-template-columns:minmax(0,.72fr) minmax(520px,1.28fr)}
.customer-template-21 .home-about .about-media{min-height:800px;border-radius:10px}
.customer-template-21 .field input,.customer-template-21 .field textarea,.customer-template-21 .field select{background:#090909;color:#fff}

/* 22 · Premium++ Kinetic — graphic motion, oversized type and asymmetric media. */
.customer-template-22{--site-bg:#f4f3ed;--site-surface:#fff;--site-ink:#111;--site-muted:#5e5d57;--site-line:#111;--site-accent:#ff4d00;--site-accent-strong:#d53f00;--site-radius:0;--site-shadow:none}
.customer-template-22 .customer-site-nav{min-height:70px;border-bottom:2px solid var(--site-ink)}
.customer-template-22 .customer-site-brand{font-size:15px;font-weight:950;text-transform:uppercase;letter-spacing:.12em}
.customer-template-22 .kinetic-hero{max-width:none;padding:0;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(390px,.84fr);gap:0;border-bottom:2px solid var(--site-ink)}
.customer-template-22 .kinetic-copy{display:flex;align-items:flex-end;padding:clamp(48px,7vw,104px) var(--site-gutter);overflow:hidden}
.customer-template-22 .kinetic-copy .hero-copy{max-width:none}
.customer-template-22 .kinetic-copy h1{font-size:clamp(80px,11vw,186px);font-weight:950;line-height:.72;letter-spacing:-.095em;text-transform:uppercase}
.customer-template-22 .kinetic-copy h1::first-letter{color:var(--site-accent)}
.customer-template-22 .kinetic-media{border-inline-start:2px solid var(--site-ink)}
.customer-template-22 .kinetic-media .site-hero-media{height:calc(100svh - 70px);min-height:680px;border-radius:0}
.customer-template-22 .section{max-width:none;padding-inline:var(--site-gutter)}
.customer-template-22 .section-heading{border-block:2px solid var(--site-ink);padding-block:18px}
.customer-template-22 .site-grid{grid-template-columns:repeat(12,1fr);gap:0;border:2px solid var(--site-ink)}
.customer-template-22 .site-grid>.card{grid-column:span 4;border:0;border-inline-end:2px solid var(--site-ink);border-radius:0;background:transparent}
.customer-template-22 .site-grid>.card:nth-child(3n){border-inline-end:0}
.customer-template-22 .home-about{gap:0;border:2px solid var(--site-ink)}
.customer-template-22 .home-about .about-copy{padding:clamp(42px,6vw,90px)}
.customer-template-22 .home-about .about-media{border-radius:0;border-inline-start:2px solid var(--site-ink)}
.customer-template-22 .gallery-grid{gap:0;border:2px solid var(--site-ink)}
.customer-template-22 .gallery-grid>.machina-gallery-item{border:0;border-inline-end:2px solid var(--site-ink);border-radius:0}

/* Shared immersive grammar — depth without changing the content contract. */
.customer-template-23,.customer-template-24,.customer-template-25{--site-radius:18px;perspective:1600px}
.customer-template-23 .customer-site-nav,.customer-template-24 .customer-site-nav,.customer-template-25 .customer-site-nav{position:relative;z-index:20;background:color-mix(in srgb,var(--site-bg) 82%,transparent);backdrop-filter:blur(18px)}
.customer-template-23 .immersive-world,.customer-template-24 .immersive-world,.customer-template-25 .immersive-world{position:relative;isolation:isolate}
.customer-template-23 .immersive-room,.customer-template-24 .immersive-room,.customer-template-25 .immersive-room{position:relative;transform-style:preserve-3d}
.customer-template-23 .immersive-room>.section,.customer-template-24 .immersive-room>.section,.customer-template-25 .immersive-room>.section{position:relative;z-index:2}
.customer-template-23 .immersive-stage,.customer-template-24 .portal-stage,.customer-template-25 .orbit-stage{transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.75,.2,1)}

/* 23 · Immersive Atrium — luminous architectural room. */
.customer-template-23{--site-bg:#071827;--site-surface:#0c2234;--site-ink:#eaf8ff;--site-muted:#9cc4d8;--site-line:rgba(166,222,246,.18);--site-accent:#38bdf8;--site-accent-strong:#0ea5e9;--site-accent-contrast:#04131d;--site-shadow:0 40px 120px rgba(0,0,0,.38)}
.customer-template-23 .atrium-hero{position:relative;min-height:calc(100svh - 82px);display:grid;grid-template-columns:minmax(0,.72fr) minmax(460px,1.28fr);align-items:center;gap:clamp(30px,5vw,80px);padding-block:clamp(48px,6vw,94px)}
.customer-template-23 .atrium-hero:before,.customer-template-23 .atrium-hero:after{content:"";position:absolute;inset-block:6% 4%;width:1px;background:linear-gradient(transparent,var(--site-accent),transparent);opacity:.45}
.customer-template-23 .atrium-hero:before{inset-inline-start:11%}.customer-template-23 .atrium-hero:after{inset-inline-end:11%}
.customer-template-23 .immersive-copy{position:relative;z-index:4}
.customer-template-23 .immersive-copy h1{font-size:clamp(68px,8.4vw,148px);font-weight:720;line-height:.78;text-shadow:0 0 36px rgba(56,189,248,.12)}
.customer-template-23 .immersive-copy .lead{color:var(--site-muted)}
.customer-template-23 .immersive-stage{position:relative;min-height:680px;padding:4.5%;transform:rotateY(-8deg) rotateX(3deg)}
.customer-template-23 .immersive-stage:before{content:"";position:absolute;inset:0;border:1px solid rgba(122,213,250,.28);background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(56,189,248,.015));box-shadow:inset 0 0 70px rgba(56,189,248,.08),0 35px 90px rgba(0,0,0,.34);clip-path:polygon(7% 0,100% 7%,94% 100%,0 92%)}
.customer-template-23 .immersive-stage .site-hero-media{min-height:610px;border-radius:8px;transform:translateZ(48px);box-shadow:0 45px 110px rgba(0,0,0,.48)}
.customer-template-23 .immersive-stage:hover{transform:rotateY(-2deg) rotateX(1deg) translateY(-6px)}
.customer-template-23 .room-services:before,.customer-template-23 .room-about:before{content:"";position:absolute;inset:6% var(--site-gutter);border:1px solid var(--site-line);transform:perspective(1200px) rotateX(2deg);pointer-events:none}
.customer-template-23 .site-grid>.card{background:rgba(8,30,46,.72);backdrop-filter:blur(16px);box-shadow:inset 0 1px rgba(255,255,255,.06)}
.customer-template-23 .home-about{padding:clamp(36px,5vw,72px);border-radius:30px;background:linear-gradient(135deg,rgba(13,49,71,.9),rgba(5,22,34,.82))}
.customer-template-23 .field input,.customer-template-23 .field textarea,.customer-template-23 .field select{background:#081d2c;color:#fff}

/* 24 · Immersive Portal — enter through a visual portal, then rooms. */
.customer-template-24{--site-bg:#100b22;--site-surface:#18102e;--site-ink:#f6f0ff;--site-muted:#baa9d1;--site-line:rgba(210,191,255,.16);--site-accent:#a78bfa;--site-accent-strong:#8b5cf6;--site-accent-contrast:#160d2a;--site-shadow:0 42px 130px rgba(0,0,0,.5)}
.customer-template-24 .portal-hero{position:relative;min-height:calc(100svh - 82px);display:grid;place-items:center;overflow:hidden}
.customer-template-24 .portal-stage{grid-area:1/1;position:relative;width:min(74vw,1080px);height:min(74vw,780px);display:grid;place-items:center;transform:perspective(1400px) rotateX(5deg)}
.customer-template-24 .portal-stage:before,.customer-template-24 .portal-stage:after{content:"";position:absolute;border:1px solid rgba(167,139,250,.42);border-radius:50%;box-shadow:0 0 55px rgba(167,139,250,.14),inset 0 0 55px rgba(167,139,250,.08)}
.customer-template-24 .portal-stage:before{inset:2% 13%}.customer-template-24 .portal-stage:after{inset:9% 20%;border-color:rgba(255,255,255,.18)}
.customer-template-24 .portal-stage .site-hero-media{width:68%;height:76%;min-height:0;border-radius:48% 48% 20px 20px;transform:translateZ(80px);box-shadow:0 42px 120px rgba(0,0,0,.58)}
.customer-template-24 .portal-hero>.immersive-copy{grid-area:1/1;align-self:end;position:relative;z-index:5;width:100%;padding-bottom:clamp(40px,6vw,86px);pointer-events:none}
.customer-template-24 .portal-hero .hero-copy{max-width:950px;pointer-events:auto}
.customer-template-24 .portal-hero h1{font-size:clamp(64px,8.8vw,154px);line-height:.77;text-shadow:0 8px 55px #0a0615}
.customer-template-24 .portal-hero .lead{color:#ddd2ed}
.customer-template-24 .portal-hero .text-action{color:#fff}
.customer-template-24 .room-about,.customer-template-24 .room-services{margin:clamp(20px,4vw,70px) var(--site-gutter);border:1px solid var(--site-line);border-radius:36px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.015));box-shadow:inset 0 1px rgba(255,255,255,.05)}
.customer-template-24 .room-about .shell,.customer-template-24 .room-services .shell{padding-inline:clamp(24px,4vw,60px)}
.customer-template-24 .site-grid>.card{background:rgba(24,16,46,.72);backdrop-filter:blur(14px)}
.customer-template-24 .home-about{grid-template-columns:minmax(0,.8fr) minmax(470px,1.2fr)}
.customer-template-24 .home-about .about-media{min-height:720px}
.customer-template-24 .field input,.customer-template-24 .field textarea,.customer-template-24 .field select{background:#140d29;color:#fff}

/* 25 · Immersive Orbit — floating object / gallery world. */
.customer-template-25{--site-bg:#09100d;--site-surface:#101b16;--site-ink:#f6f4e9;--site-muted:#a9b2a9;--site-line:rgba(242,197,112,.18);--site-accent:#f59e0b;--site-accent-strong:#d97706;--site-accent-contrast:#171006;--site-shadow:0 45px 130px rgba(0,0,0,.48)}
.customer-template-25 .orbit-hero{position:relative;min-height:calc(100svh - 82px);display:grid;grid-template-columns:minmax(470px,1.2fr) minmax(0,.8fr);align-items:center;padding-block:clamp(50px,7vw,104px)}
.customer-template-25 .orbit-stage{position:relative;display:grid;place-items:center;min-height:720px}
.customer-template-25 .orbit-stage:before,.customer-template-25 .orbit-stage:after{content:"";position:absolute;border:1px solid rgba(245,158,11,.3);border-radius:50%;transform:rotateX(68deg) rotateZ(-18deg)}
.customer-template-25 .orbit-stage:before{width:100%;height:58%;box-shadow:0 0 70px rgba(245,158,11,.07)}
.customer-template-25 .orbit-stage:after{width:74%;height:42%;border-color:rgba(255,255,255,.16)}
.customer-template-25 .orbit-stage .site-hero-media{width:67%;min-height:570px;border-radius:50%;transform:translateZ(64px) rotate(-2deg);box-shadow:0 55px 130px rgba(0,0,0,.62)}
.customer-template-25 .orbit-hero .immersive-copy{position:relative;z-index:4;padding-inline-start:clamp(20px,4vw,70px)}
.customer-template-25 .orbit-hero h1{font-size:clamp(64px,8.5vw,148px);font-weight:760;line-height:.78}
.customer-template-25 .orbit-hero .lead{color:var(--site-muted)}
.customer-template-25 .room-services{position:relative;padding-block:clamp(30px,5vw,70px)}
.customer-template-25 .room-services:before{content:"";position:absolute;inset:12% 5%;background:radial-gradient(circle at 50% 20%,rgba(245,158,11,.08),transparent 62%);pointer-events:none}
.customer-template-25 .site-grid{grid-template-columns:repeat(3,minmax(0,1fr));perspective:1200px}
.customer-template-25 .site-grid>.card{background:rgba(16,27,22,.78);transform:rotateX(2deg);transition:transform .3s ease,border-color .3s ease}
.customer-template-25 .site-grid>.card:hover{transform:translateY(-8px) rotateX(0);border-color:rgba(245,158,11,.42)}
.customer-template-25 .home-gallery-grid{display:flex;align-items:center;gap:18px;overflow-x:auto;padding:50px var(--site-gutter);scroll-snap-type:x mandatory}
.customer-template-25 .home-gallery-grid>*{flex:0 0 min(62vw,850px);height:clamp(380px,52vw,680px);scroll-snap-align:center;transform:perspective(1200px) rotateY(-4deg);border-radius:28px}
.customer-template-25 .home-about{margin:clamp(30px,5vw,80px) var(--site-gutter);padding:clamp(32px,5vw,74px);border:1px solid var(--site-line);border-radius:40px;background:rgba(16,27,22,.8)}
.customer-template-25 .field input,.customer-template-25 .field textarea,.customer-template-25 .field select{background:#0d1712;color:#fff}

/* New-template responsive contract: preserve content, editing and touch targets. */
@media(max-width:980px){
  .customer-template-14 .hero-cv-executive,.customer-template-16 .hero-cv-story,.customer-template-17 .hero-card-signature,.customer-template-18 .hero-card-signal,.customer-template-19 .hero-card-minimal,.customer-template-22 .kinetic-hero,.customer-template-23 .atrium-hero,.customer-template-25 .orbit-hero{grid-template-columns:1fr}
  .customer-template-14 .hero-cv-executive .site-hero-media,.customer-template-17 .hero-card-signature .site-hero-media,.customer-template-18 .hero-card-signal .site-hero-media,.customer-template-19 .hero-card-minimal .site-hero-media{min-height:clamp(430px,72vw,680px)}
  .customer-template-15 .home-about,.customer-template-20 .home-about,.customer-template-21 .home-about,.customer-template-24 .home-about{grid-template-columns:1fr}
  .customer-template-15 .site-grid>.card,.customer-template-15 .site-grid>.card:nth-child(4n+1),.customer-template-20 .site-grid>.card,.customer-template-20 .site-grid>.card:nth-child(4n+1){grid-column:span 6}
  .customer-template-20 .home-about .about-media,.customer-template-21 .home-about .about-media,.customer-template-24 .home-about .about-media{min-height:clamp(460px,80vw,720px)}
  .customer-template-22 .kinetic-media{border-inline-start:0;border-top:2px solid var(--site-ink)}
  .customer-template-22 .kinetic-media .site-hero-media{height:68svh;min-height:500px}
  .customer-template-22 .site-grid>.card{grid-column:span 6}
  .customer-template-22 .site-grid>.card:nth-child(3n){border-inline-end:2px solid var(--site-ink)}
  .customer-template-22 .site-grid>.card:nth-child(2n){border-inline-end:0}
  .customer-template-23 .immersive-stage{min-height:560px;transform:none}
  .customer-template-23 .immersive-stage .site-hero-media{min-height:510px;transform:none}
  .customer-template-24 .portal-stage{width:min(94vw,850px);height:min(94vw,700px)}
  .customer-template-25 .orbit-stage{min-height:580px;order:-1}
  .customer-template-25 .orbit-stage .site-hero-media{min-height:470px}
}
@media(max-width:680px){
  .customer-template-14 .site-grid,.customer-template-21 .site-grid,.customer-template-25 .site-grid{grid-template-columns:1fr}
  .customer-template-14 .site-grid>.card:nth-child(odd),.customer-template-14 .site-grid>.card:nth-child(even){padding-inline:0;border-inline-end:0}
  .customer-template-15 .hero-cv-persona h1,.customer-template-20 .premium-plus-copy h1,.customer-template-21 .obsidian-hero h1,.customer-template-22 .kinetic-copy h1{font-size:clamp(54px,16vw,90px)}
  .customer-template-15 .site-grid>.card,.customer-template-15 .site-grid>.card:nth-child(4n+1),.customer-template-20 .site-grid>.card,.customer-template-20 .site-grid>.card:nth-child(4n+1),.customer-template-22 .site-grid>.card{grid-column:1/-1}
  .customer-template-16 .site-grid{padding-inline-start:42px}.customer-template-16 .site-grid>.card:before{inset-inline-start:-36px}.customer-template-16 .home-services:before{inset-inline-start:calc(var(--site-gutter) + 10px)}
  .customer-template-17 .hero-card-signature .hero-copy{padding:28px 22px}
  .customer-template-18 .site-grid>.card:nth-child(2n){transform:none}
  .customer-template-19 .hero-card-minimal .site-hero-media{width:min(82vw,440px);justify-self:center}
  .customer-template-20 .customer-site-nav{position:relative;background:#2b211b}
  .customer-template-20 .aurelia-hero{min-height:82svh}.customer-template-20 .premium-plus-media,.customer-template-20 .premium-plus-media .site-hero-media{min-height:82svh}
  .customer-template-21 .home-gallery-grid>*{flex-basis:88vw;height:clamp(350px,110vw,560px)}
  .customer-template-22 .site-grid>.card{border-inline-end:0;border-bottom:2px solid var(--site-ink)}
  .customer-template-23 .atrium-hero:before,.customer-template-23 .atrium-hero:after{display:none}
  .customer-template-23 .immersive-stage{min-height:440px;padding:0}.customer-template-23 .immersive-stage:before{display:none}.customer-template-23 .immersive-stage .site-hero-media{min-height:430px}
  .customer-template-24 .portal-stage{height:118vw;min-height:500px}.customer-template-24 .portal-stage .site-hero-media{width:78%;height:72%}.customer-template-24 .portal-hero>.immersive-copy{padding-bottom:32px}
  .customer-template-25 .orbit-stage{min-height:480px}.customer-template-25 .orbit-stage .site-hero-media{width:76%;min-height:390px}.customer-template-25 .home-gallery-grid>*{flex-basis:84vw;height:clamp(330px,100vw,520px);transform:none}
}
@media(prefers-reduced-motion:reduce){
  .customer-template-23 .immersive-stage,.customer-template-25 .site-grid>.card{transition:none!important;transform:none!important}
  .customer-template-25 .home-gallery-grid>*{transform:none!important}
}


/* V121 visual QA pass — existing template structure only, no new product state. */
.customer-template-25 .home-gallery{overflow-x:clip}
.customer-template-25 .home-about{width:calc(100% - 2 * var(--site-gutter));max-width:none;box-sizing:border-box}
.customer-template-18 .hero-card-signal{overflow-x:clip}
@media(max-width:800px){
  .customer-template-04 .hero-gallery-led .site-hero-media{width:100%;max-width:100%;height:auto;min-height:0;aspect-ratio:4/5}
  .customer-template-08 .hero-bento{width:calc(100% - 20px);max-width:calc(100% - 20px);box-sizing:border-box;margin-inline:10px}
  .customer-template-08 .hero-bento .site-hero-media{width:100%;min-height:0;aspect-ratio:1}
  .customer-template-18 .hero-card-signal::after{inset-inline-end:0}
  .customer-template-18 .hero-card-signal .site-hero-media{width:100%;max-width:100%;min-height:0;aspect-ratio:4/5;transform:none}
  .customer-template-25 .orbit-hero{min-width:0;max-width:100%;overflow-x:clip}
  .customer-template-25 .home-gallery{overflow-x:clip}
}
@media(max-width:680px){
  body.customer-site .home-layout .hero-copy h1,
  body.customer-site .home-layout .immersive-copy h1,
  body.customer-site .home-layout .premium-hero-copy h1{font-size:clamp(37px,9.6vw,58px);line-height:1.06;letter-spacing:-.045em;text-wrap:balance;hyphens:auto}
  body.customer-site .home-layout .hero-copy .lead{font-size:clamp(17px,4.4vw,20px);line-height:1.56}
  .customer-template-18 .hero-card-signal .hero-copy{padding-inline:0}
  .customer-template-25 .home-about{border-radius:24px;padding:clamp(24px,6vw,38px)}
}


/* V121 mobile QA: complete navigation and readable cinematic heroes.
   Desktop compositions unchanged; canonical render/slots are unchanged. */
@media(max-width:680px){
  .customer-site .customer-site-links{flex-wrap:wrap;overflow:visible;gap:0 13px;padding-bottom:0}
  .customer-site .customer-site-links>a{padding-inline:2px;min-height:44px}

  /* Template 20: cinematic background becomes a real image followed by readable copy. */
  .customer-template-20 .aurelia-hero{display:flex;flex-direction:column;min-height:0;overflow:visible}
  .customer-template-20 .premium-plus-media{position:relative;inset:auto;width:100%;min-height:0;height:auto}
  .customer-template-20 .premium-plus-media .site-hero-media{position:relative;inset:auto;display:block;width:100%;height:auto;min-height:0;aspect-ratio:16/10}
  .customer-template-20 .premium-plus-media:after{display:none}
  .customer-template-20 .premium-plus-copy{padding-top:35px;padding-bottom:65px}
  .customer-template-20 .premium-plus-copy .hero-copy{color:var(--site-ink)}
  .customer-template-20 .premium-plus-copy .hero-kicker,
  .customer-template-20 .premium-plus-copy .lead,
  .customer-template-20 .premium-plus-copy .text-action{color:var(--site-ink)}
  .customer-template-20 .premium-plus-copy h1{font-size:clamp(39px,10vw,55px);line-height:1.08;letter-spacing:-.045em}
  .customer-template-20 .premium-plus-copy .btn{background:#281d16;color:#fff}

  /* Template 21: no headline over unpredictable customer-supplied imagery. */
  .customer-template-21 .obsidian-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;overflow:visible}
  .customer-template-21 .obsidian-hero>.site-hero-media{display:block;width:100%;height:auto;min-height:0;aspect-ratio:16/10}
  .customer-template-21 .obsidian-hero>.site-hero-media:after{display:none}
  .customer-template-21 .obsidian-hero .premium-plus-copy{padding-top:35px;padding-bottom:65px}
  .customer-template-21 .obsidian-hero h1{font-size:clamp(38px,10vw,56px);line-height:1.08;letter-spacing:-.045em}

  /* Template 24: portal art and editable headline/body each have their own block. */
  .customer-template-24 .portal-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;overflow:visible}
  .customer-template-24 .portal-stage{order:0;width:100%;height:clamp(320px,94vw,470px);min-height:0;transform:none}
  .customer-template-24 .portal-stage .site-hero-media{transform:none}
  .customer-template-24 .portal-hero>.immersive-copy{order:1;align-self:stretch;width:100%;padding-top:20px;padding-bottom:60px}
  .customer-template-24 .portal-hero h1{font-size:clamp(39px,10vw,54px);line-height:1.08;letter-spacing:-.045em;text-shadow:none}
}

/* V121 final visual QA — long-content/tablet safety for legacy compositions.
   Presentation only: no DOM, data, editor, Save or Publish contract changes. */
@media(max-width:1100px){
  /* 03 Cinema: customer text never shares the image plane once the viewport narrows. */
  .customer-template-03 .hero-cinema{display:flex;flex-direction:column;min-height:0;padding:0}
  .customer-template-03 .hero-cinema>.site-hero-media{order:0;width:100%;min-height:0;aspect-ratio:16/10;border-radius:0;box-shadow:none}
  .customer-template-03 .hero-cinema .site-hero-media:after{display:none}
  .customer-template-03 .hero-cinema>.shell{order:1;display:block;width:100%;padding:0 var(--site-gutter)}
  .customer-template-03 .hero-cinema .hero-copy{max-width:980px;margin:0;padding:clamp(34px,5vw,64px) 0;background:none;backdrop-filter:none;border-radius:0}

  /* 04 Gallery-led: retain the editorial image, but make it a wide lead image on tablet. */
  .customer-template-04 .hero-gallery-led{grid-template-columns:1fr;align-items:start;gap:clamp(30px,5vw,58px)}
  .customer-template-04 .hero-gallery-led .site-hero-media{order:-1;width:100%;min-height:0;aspect-ratio:16/10}

  /* 19 Minimal: the portrait is centered above copy before its pill shape can leave the viewport. */
  .customer-template-19 .hero-card-minimal{grid-template-columns:1fr;min-height:0;gap:clamp(34px,5vw,60px);padding-block:clamp(32px,5vw,58px)}
  .customer-template-19 .hero-card-minimal .site-hero-media{order:-1;width:min(72vw,520px);min-height:0;aspect-ratio:4/5;justify-self:center}
}

@media(max-width:900px){
  /* 15 Persona: image first, readable content second. */
  .customer-template-15 .hero-cv-persona{display:flex;flex-direction:column;align-items:stretch;min-height:0;overflow:visible}
  .customer-template-15 .hero-cv-persona>.site-hero-media{order:0;width:100%;min-height:0;aspect-ratio:16/10;border-radius:0}
  .customer-template-15 .hero-cv-persona>.site-hero-media:after{display:none}
  .customer-template-15 .hero-cv-persona>.shell{order:1;width:100%;padding-block:clamp(34px,6vw,68px)}
  .customer-template-15 .hero-cv-persona .hero-copy{max-width:980px;color:var(--site-ink)}
  .customer-template-15 .hero-cv-persona .hero-kicker{color:var(--site-accent)}
  .customer-template-15 .hero-cv-persona .lead{color:var(--site-muted)}
  .customer-template-15 .hero-cv-persona .text-action{color:var(--site-ink)}
  .customer-template-15 .hero-cv-persona h1{font-size:clamp(48px,10vw,82px);line-height:.98;letter-spacing:-.06em;text-shadow:none}
  .customer-template-15 .hero-cv-persona .btn{background:var(--site-accent);color:#fff}

  /* 20/21/24 cinematic compositions become document flow on tablets too. */
  .customer-template-20 .customer-site-nav{position:relative;background:#2b211b}
  .customer-template-20 .aurelia-hero{display:flex;flex-direction:column;min-height:0;overflow:visible}
  .customer-template-20 .premium-plus-media{position:relative;inset:auto;width:100%;height:auto;min-height:0}
  .customer-template-20 .premium-plus-media .site-hero-media{position:relative;inset:auto;width:100%;height:auto;min-height:0;aspect-ratio:16/10}
  .customer-template-20 .premium-plus-media:after{display:none}
  .customer-template-20 .premium-plus-copy{padding-top:clamp(34px,5vw,58px);padding-bottom:clamp(54px,7vw,80px)}
  .customer-template-20 .premium-plus-copy .hero-copy{color:var(--site-ink)}
  .customer-template-20 .premium-plus-copy .hero-kicker{color:var(--site-accent)}
  .customer-template-20 .premium-plus-copy .lead{color:var(--site-muted)}
  .customer-template-20 .premium-plus-copy .text-action{color:var(--site-ink)}
  .customer-template-20 .premium-plus-copy .btn{background:var(--site-accent);color:#fff}
  .customer-template-20 .premium-plus-copy h1{font-size:clamp(48px,9.4vw,82px);line-height:.98;letter-spacing:-.055em}

  .customer-template-21 .obsidian-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;overflow:visible}
  .customer-template-21 .obsidian-hero>.site-hero-media{order:0;display:block;width:100%;height:auto;min-height:0;aspect-ratio:16/10}
  .customer-template-21 .obsidian-hero>.site-hero-media:after{display:none}
  .customer-template-21 .obsidian-hero .premium-plus-copy{order:1;padding-top:clamp(34px,5vw,58px);padding-bottom:clamp(54px,7vw,80px)}
  .customer-template-21 .obsidian-hero h1{font-size:clamp(48px,10vw,84px);line-height:.96;letter-spacing:-.06em}

  .customer-template-24 .portal-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;overflow:visible}
  .customer-template-24 .portal-stage{order:0;width:100%;height:auto;min-height:0;aspect-ratio:16/10;transform:none}
  .customer-template-24 .portal-stage:before,.customer-template-24 .portal-stage:after{display:none}
  .customer-template-24 .portal-stage .site-hero-media{width:100%;height:100%;min-height:0;border-radius:0;transform:none;box-shadow:none}
  .customer-template-24 .portal-hero>.immersive-copy{order:1;align-self:stretch;width:100%;padding-top:clamp(34px,5vw,58px);padding-bottom:clamp(54px,7vw,80px)}
  .customer-template-24 .portal-hero h1{font-size:clamp(48px,9.5vw,80px);line-height:.98;letter-spacing:-.055em;text-shadow:none}
}

/* Canonical service media: business_services.media_asset_id already exists in the core model.
   The editor only exposes that existing field; no parallel content model is introduced. */
.customer-site .machina-resource-card{position:relative;overflow:hidden}
.customer-site .machina-service-media{width:100%;aspect-ratio:16/10;margin:calc(-1 * clamp(23px,2.6vw,42px)) calc(-1 * clamp(23px,2.6vw,42px)) clamp(20px,2vw,30px);width:calc(100% + 2 * clamp(23px,2.6vw,42px));overflow:hidden;background:color-mix(in srgb,var(--site-accent) 9%,var(--site-surface));border-bottom:1px solid var(--site-line)}
.customer-site .machina-service-media>img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s ease}
.customer-site .machina-resource-card:hover .machina-service-media>img{transform:scale(1.025)}
.customer-site .machina-service-media-empty{display:grid;place-content:center;gap:5px;text-align:center;color:var(--site-muted);cursor:pointer;min-height:150px}
.customer-site .machina-service-media-empty strong{color:var(--site-ink)}
.customer-site .machina-service-media[tabindex]{cursor:pointer}
.customer-site .machina-service-media[tabindex]:focus-visible{outline:3px solid var(--site-accent);outline-offset:-5px}
@media(max-width:760px){.customer-site .machina-service-media{aspect-ratio:16/9}.customer-site .machina-resource-card:hover .machina-service-media>img{transform:none}}
