:root{--page-width:2200px;--reading-width:1320px;--media-square:1/1;--media-landscape:16/10;--section-gap:clamp(48px,5vw,88px)}
body[data-view="products.html"] main>.page-intro>.wrap,body[data-view="products.html"] main>.section>.wrap,body[data-view="product.html"] main>.section>.wrap,body[data-view="blog.html"] main>.section>.wrap{width:calc(100% - var(--media-gutter));max-width:var(--page-width)}
body[data-view="products.html"] .page-intro{padding-bottom:25px}body[data-view="products.html"] .page-intro h1{font-size:clamp(42px,4.4vw,72px)}body[data-view="products.html"] .page-intro h1 br{display:none}body[data-view="products.html"] .page-intro h1{max-width:none}body[data-view="products.html"] .page-intro p{max-width:76ch;font-size:17px}
.catalogue-visual-strip{width:calc(100% - var(--media-gutter));max-width:var(--page-width);display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:42px}.catalogue-visual-strip a{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#191D21;min-height:180px;overflow:hidden}.catalogue-visual-strip img{width:100%;height:220px;object-fit:contain;background:#23282E}.catalogue-visual-strip span{font:clamp(22px,1.8vw,33px)/1.18 var(--serif);padding:25px;max-width:13ch}.catalogue-visual-strip a:hover span{text-decoration:underline;text-underline-offset:5px}.catalogue-visual-strip a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
body[data-view="products.html"] .product-layout{grid-template-columns:230px minmax(0,1fr);gap:clamp(30px,3vw,65px)}body[data-view="products.html"] .product-layout>aside{position:sticky;top:115px;max-height:calc(100svh - 145px);overflow-y:auto;align-self:start;padding-right:12px}body[data-view="products.html"] .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 25px}.product-card .product-photo{aspect-ratio:var(--media-square);background:#191D21;overflow:hidden}.product-card .product-photo>a{display:block;width:100%;height:100%}.product-card .product-photo img{width:100%;height:100%;aspect-ratio:var(--media-square);object-fit:contain;display:block;transition:transform .3s ease}.product-card .product-photo>a:hover img{transform:scale(1.025)}.product-card h3{font-size:clamp(19px,1.4vw,25px);line-height:1.3;margin-top:14px}.product-card>p,.product-card a>p{font-size:12px;line-height:1.6}.product-card .add-mini{font-size:12px;background:#23282E;border:1px solid #46505A}.product-card .add-mini:focus-visible{outline:3px solid var(--gold);outline-offset:-4px}
.product-detail-hero{grid-template-columns:1.45fr 1fr;gap:clamp(35px,4vw,90px);align-items:center}.catalogue-image-zoom{border:0;background:#191D21;width:100%;padding:0;display:block;position:relative;cursor:zoom-in}.catalogue-image-zoom>img{width:100%;height:clamp(480px,65svh,850px);object-fit:contain;aspect-ratio:1/1;display:block}.catalogue-image-zoom>span{position:absolute;bottom:18px;right:18px;padding:9px 14px;background:rgba(247,249,248,.95);color:#F3F0E8;font-size:12px;border:1px solid #46505A}.catalogue-image-zoom:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.product-detail-hero h1{font-size:clamp(35px,3.5vw,64px);line-height:1.1;max-width:20ch}.product-detail-hero .lead{max-width:34ch}.product-detail-hero p{max-width:60ch}.product-detail-image>.caption{font-size:12px;margin-top:13px}.product-detail-hero .actions{gap:14px}
.illustration-frame{position:relative;overflow:hidden}.illustration-frame>img{display:block;width:100%;aspect-ratio:var(--media-landscape);height:auto;object-fit:cover}.illustration-badge{position:absolute;bottom:14px;left:14px;background:rgba(16,18,20,.92);border:1px solid #46505A;color:#F3F0E8;font-size:11px;line-height:1.5;padding:5px 9px;max-width:calc(100% - 28px);z-index:2}.generated-illustration{margin:0}.generated-illustration figcaption{font-size:12px;line-height:1.6;color:#B7BEC5;margin-top:12px;max-width:80ch}.case-placeholder-media.generated-illustration .illustration-frame>img{aspect-ratio:16/10;object-fit:cover}.case-placeholder-media.generated-illustration .sample-tag{margin-left:6px}.case-installation-grid .generated-illustration .illustration-badge{font-size:10px}.illustration-section{background:#191D21;padding:var(--section-gap) 0}.illustration-split{max-width:var(--page-width);width:calc(100% - var(--media-gutter));display:grid;grid-template-columns:1.45fr 1fr;gap:clamp(35px,4vw,85px);align-items:center}.illustration-split h2{font-size:clamp(35px,3.5vw,58px);line-height:1.14;max-width:19ch}.illustration-split p{max-width:52ch}.contact-visual{margin:0 0 32px}.contact-visual .illustration-frame>img{aspect-ratio:16/10}.film-picture{position:relative}.film-picture .illustration-badge{bottom:45px}
body[data-view="blog.html"] .blog-grid{gap:40px 30px}.blog-grid .film-picture img{aspect-ratio:16/10;object-fit:cover}body[data-view="contact.html"] .form-layout{max-width:1700px;width:calc(100% - var(--media-gutter));grid-template-columns:1fr 1.1fr;gap:clamp(35px,4vw,85px)}body[data-view="ai-studio.html"] main>.section>.wrap{max-width:2200px;width:calc(100% - var(--media-gutter))}body[data-view="ai-studio.html"] .studio-layout{grid-template-columns:390px minmax(0,1fr)}body[data-view="ai-studio.html"] .studio-canvas{min-height:520px;aspect-ratio:16/10}body[data-view="ai-studio.html"] .studio-canvas img{width:100%;height:100%;object-fit:contain}
@media(min-width:2200px){body[data-view="products.html"] .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.catalogue-visual-strip img{height:260px}}
@media(max-width:1050px){body[data-view="products.html"] .product-layout{grid-template-columns:190px minmax(0,1fr);gap:25px}body[data-view="products.html"] .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-visual-strip a{grid-template-columns:1fr}.catalogue-visual-strip img{height:190px}.catalogue-visual-strip span{font-size:24px;padding:18px;max-width:none}.product-detail-hero{grid-template-columns:1.2fr 1fr;gap:30px}.catalogue-image-zoom>img{height:520px}.illustration-split{grid-template-columns:1.2fr 1fr;gap:30px}body[data-view="ai-studio.html"] .studio-layout{grid-template-columns:320px minmax(0,1fr)}}
@media(max-width:850px){body[data-view="products.html"] .product-layout{grid-template-columns:1fr}body[data-view="products.html"] .product-layout>aside{position:static;max-height:none;overflow:visible;padding:0}.product-detail-hero,.illustration-split,body[data-view="contact.html"] .form-layout,body[data-view="ai-studio.html"] .studio-layout{grid-template-columns:1fr}.catalogue-image-zoom>img{height:clamp(330px,70svh,600px)}.product-detail-hero h1{max-width:none}.illustration-split h2{max-width:23ch}.illustration-split{gap:27px}body[data-view="ai-studio.html"] .studio-canvas{min-height:330px}.catalogue-visual-strip{gap:16px}}
@media(max-width:560px){.catalogue-visual-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-bottom:25px;padding-bottom:10px}.catalogue-visual-strip a{flex:0 0 78%;scroll-snap-align:start;grid-template-columns:1fr 1fr;min-height:155px}.catalogue-visual-strip img{height:190px}.catalogue-visual-strip span{font-size:23px;padding:15px}.product-card h3{font-size:18px}.product-card .add-mini{font-size:10px;padding:6px 8px}.product-card .product-photo{min-width:0}.product-detail-hero{gap:24px}.catalogue-image-zoom>img{height:355px}.catalogue-image-zoom>span{bottom:12px;right:12px;font-size:11px}.product-detail-hero h1{font-size:37px}body[data-view="products.html"] .product-grid{gap:27px 15px}.illustration-badge{font-size:10px;bottom:10px;left:10px;max-width:calc(100% - 20px)}.illustration-split h2{font-size:36px}.illustration-frame>img{aspect-ratio:4/3}.case-placeholder-media.generated-illustration .illustration-frame>img{aspect-ratio:4/3}body[data-view="ai-studio.html"] .studio-canvas{min-height:260px}.contact-visual{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.product-card .product-photo img{transition:none}.product-card .product-photo>a:hover img{transform:none}}
body[data-view="ai-studio.html"] .studio-layout>div{min-width:0}body[data-view="ai-studio.html"] .studio-panel{min-width:0;max-width:100%}body[data-view="ai-studio.html"] .preset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}body[data-view="ai-studio.html"] .preset{min-width:0}body[data-view="ai-studio.html"] .preset span{overflow-wrap:anywhere}body[data-view="ai-studio.html"] input,body[data-view="ai-studio.html"] select,body[data-view="ai-studio.html"] textarea{min-width:0;max-width:100%}
@media(max-width:850px){body[data-view="ai-studio.html"] .studio-layout{grid-template-columns:minmax(0,1fr)}}
body[data-view="ai-studio.html"] .studio-canvas{width:100%;min-width:0;max-width:100%}
