/* POLSKI BRAMY v1.1: editorial multi-page extension of the approved graphite/gold style. */
:root { --hline: rgba(241,242,239,.16); }
body { background:#101719; }
a:focus-visible,button:focus-visible,summary:focus-visible {outline:2px solid var(--gold);outline-offset:4px}
.nav-links a[aria-current="page"] {color:var(--gold)}
.nav-links{gap:clamp(10px,1.2vw,23px)}
.nav-links a{white-space:nowrap}
.header-contact{margin-left:10px}
.hero-image{object-position:60% 50%}
.gates-figure > img {object-fit:cover;object-position:center;}
.door-photo > img {object-fit:cover;object-position:center;}
.door-photo:before {display:none;}
.external-catalog {display:inline-flex; margin-top:19px;color:#d5c4a7}
.gate-catalog-link {margin:-14px 0 24px}
.footer-inner {flex-wrap:wrap}
.footer-inner > a > img{width:160px;max-width:100%;height:auto}
.footer-inner > div {display:flex;align-items:center;flex-wrap:wrap;gap:18px}
.footer-inner > div a {white-space:nowrap}
/* Shared editorial syntax */
.portfolio-teaser {background:#192126;border-top:1px solid var(--hline)}
.portfolio-teaser h2,.home-faq h2,.subsection-head h2,.collection-section h2,.portfolio-case-note h2,.mini-cta h2,.editorial-text h2,.catalog-strip h2 {font-size:clamp(39px,4.5vw,75px);line-height:1.13;letter-spacing:-.05em;font-weight:500}
.portfolio-teaser h2 em,.home-faq h2 em,.subsection-head h2 em,.collection-section h2 em,.portfolio-case-note h2 em,.mini-cta h2 em,.editorial-text h2 em,.subhero h1 em,.portfolio-header h1 em,.contact-hero h1 em {font-family:var(--display);font-weight:400;color:var(--gold);letter-spacing:-.045em}
.teaser-head {display:grid;grid-template-columns:1.2fr .7fr;gap:7vw;align-items:end;margin-bottom:52px}
.teaser-head h2{margin-bottom:0}
.teaser-head>div:nth-child(2)>p {font-size:14px;line-height:1.85;color:#aeb8b5}
.teaser-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.teaser-card {display:block;background:#10181b;overflow:hidden;min-width:0}
.teaser-media{aspect-ratio:1.08;overflow:hidden;background:#252d31;position:relative}
.teaser-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#0b0f1169,transparent 42%)}
.teaser-media img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.teaser-card:hover img{transform:scale(1.035)}
.teaser-card > span{padding:18px 18px 22px;display:flex;justify-content:space-between;gap:10px;font-size:11px;font-weight:700;letter-spacing:.1em}
.teaser-card > span b{font-size:20px;color:var(--gold);font-weight:400}
.visual-note {font-size:11px;color:#8f9e9b;line-height:1.8;margin:23px 0 0}
.home-faq {background:#11191c;border-top:1px solid var(--hline)}
.faq-wrap {display:grid;grid-template-columns:.9fr 1fr;gap:10vw}
.faq-wrap > div:first-child > p:not(.eyebrow){color:#9eadaa;line-height:1.9;max-width:430px}
.faq-accordion {border-top:1px solid var(--hline)}
.faq-accordion details {border-bottom:1px solid var(--hline)}
.faq-accordion summary {list-style:none;cursor:pointer;padding:26px 45px 26px 0;font-size:16px;line-height:1.4;font-weight:580;position:relative}
.faq-accordion summary::-webkit-details-marker{display:none}
.faq-accordion summary::after{content:'+';position:absolute;right:6px;top:17px;font-size:27px;color:var(--gold);font-weight:300}
.faq-accordion details[open] summary::after{content:'−'}
.faq-accordion details p {padding:0 20px 24px 0;color:#aeb8b5;line-height:1.8;font-size:14px;margin:0}
/* Category page hero */
.subhero {position:relative;min-height:min(740px,88svh);display:flex;align-items:center;overflow:hidden;background:#242e31}
.subhero-media,.subhero-gradient {position:absolute;inset:0}
.subhero-media img{width:100%;height:100%;object-fit:cover;object-position:center;image-rendering:auto}
.subhero-gradient {background:linear-gradient(90deg,#0b1317f2 0%,#0b1317e0 19%,#0b1317a1 48%,#0b131736 90%),linear-gradient(0deg,#0b131767,transparent 40%)}
.subhero-text{position:relative;padding-top:70px;padding-bottom:85px;z-index:1}
.breadcrumb{display:inline-flex;margin-bottom:75px;gap:10px;font-size:11px;letter-spacing:.025em;color:#c1c8c6}
.breadcrumb span{color:var(--gold)}
.subhero .eyebrow {color:#eee3d1}
.subhero h1,.portfolio-header h1,.contact-hero h1 {font-size:clamp(57px,6vw,98px);line-height:1.03;letter-spacing:-.06em;font-weight:560;margin:25px 0 29px;max-width:840px}
.subhero-lead{font-size:clamp(16px,1.5vw,20px);line-height:1.75;color:#e5e9e5;max-width:570px}
.subhero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:30px;margin-top:39px}
.info-section{background:#141c20}
.subsection-head{display:grid;grid-template-columns:1.1fr .66fr;gap:9vw;align-items:end;margin-bottom:55px}
.subsection-head h2 {margin:16px 0 0}
.subsection-head > p{font-size:16px;line-height:1.85;color:#b0bfba;margin-bottom:3px}
.info-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--hline)}
.info-tile {min-height:270px;padding:34px 27px;border-right:1px solid var(--hline);background:linear-gradient(145deg,#1d262b,#141c20)}
.info-tile:last-child{border-right:0}
.info-num{font-family:var(--display);font-size:24px;font-style:italic;color:var(--gold)}
.info-tile h3{font-size:17px;font-weight:620;margin:53px 0 13px;letter-spacing:-.03em}
.info-tile p{font-size:13px;line-height:1.75;color:#a9b6b2;margin-bottom:0}
.editorial-photo{display:grid;grid-template-columns:1.15fr .85fr;min-height:630px;background:#20282d}
.editorial-photo>div:first-child{position:relative;min-height:500px;overflow:hidden}
.editorial-photo>div:first-child img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.editorial-text{padding:clamp(45px,6vw,120px);display:flex;align-items:flex-start;justify-content:center;flex-direction:column}
.editorial-text h2{margin:17px 0 25px}
.editorial-text>p:not(.eyebrow) {font-size:15px;color:#c5cfcb;line-height:1.85}
.editorial-text .text-link{margin-top:22px}
.catalog-strip {background:#0c1215;padding:100px 0;border-top:1px solid var(--hline)}
.catalog-strip-grid{display:grid;grid-template-columns:1fr .65fr;gap:7vw;align-items:center}
.catalog-strip h2{margin:18px 0;font-size:clamp(35px,3.3vw,53px)}
.catalog-strip p:not(.eyebrow){font-size:15px;line-height:1.8;color:#aebbb6;max-width:700px}
.catalog-buttons{display:grid;gap:13px}
.button-outline{border:1px solid #ffffff65;background:transparent;color:#f7f7f3;width:100%;max-width:470px}
.button-outline:hover{background:#ffffff13;border-color:var(--gold)}
.collection-section{background:#1b2429}
.collection-section h2{margin:22px 0 45px}
.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.collection-grid a{display:flex;flex-direction:column;padding:38px;min-height:350px;background:linear-gradient(140deg,#2d373b,#171f22);border:1px solid #ffffff20;transition:transform .2s,background .2s}
.collection-grid a:hover{transform:translateY(-3px);background:#2d393d}
.collection-grid a>span{font-size:10px;letter-spacing:.15em;color:var(--gold)}
.collection-grid h3{margin-top:auto;font-weight:600;font-size:26px;letter-spacing:-.045em}
.collection-grid p{color:#afbcb7;font-size:14px;line-height:1.8}
.collection-grid b{font-size:12px;color:var(--gold);font-weight:600;margin-top:10px}
.mini-cta{padding:100px 0;background:#232b30;border-top:1px solid var(--hline)}
.mini-cta-flex{display:flex;align-items:center;justify-content:space-between;gap:55px}
.mini-cta h2{margin:18px 0 20px;font-size:clamp(36px,4.0vw,64px)}
.mini-cta p:not(.eyebrow){color:#b8c5c0;line-height:1.7}
.mini-cta-flex>div:last-child{display:flex;flex-direction:column;align-items:center;gap:20px;flex:none}
.small-phone{font-size:14px;color:var(--gold)}
/* Portfolio */
.portfolio-header {padding-bottom:75px;background:#192226;border-bottom:1px solid var(--hline)}
.portfolio-intro{display:grid;grid-template-columns:1fr .66fr;gap:6vw;align-items:end}
.portfolio-intro h1{margin-bottom:0}
.portfolio-intro>p{color:#b5c0bb;font-size:16px;line-height:1.85;margin-bottom:4px}
.gallery-section{background:#12191d;padding:0 0 95px}
.gallery-control{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--hline);margin-bottom:40px}
.gallery-filters{display:flex;gap:23px;overflow-x:auto;max-width:100%;scrollbar-width:thin}
.gallery-filters button{background:transparent;color:#a4b3ae;border:0;border-bottom:2px solid transparent;white-space:nowrap;font-size:13px;font-weight:700;padding:26px 1px 22px;cursor:pointer}
.gallery-filters button.active {border-bottom-color:var(--gold);color:#f0dfc3}
.gallery-filters button span{font-size:10px;color:var(--gold)}
.gallery-count{font-size:11px;color:#91a19b;white-space:nowrap}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 17px}
.gallery-card[hidden]{display:none}
.gallery-open {display:block;border:none;text-align:left;padding:0;background:transparent;color:inherit;width:100%;cursor:zoom-in}
.gallery-image{aspect-ratio:1.04;position:relative;overflow:hidden;background:#253038}
.gallery-image img {width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.gallery-open:hover img {transform:scale(1.045)}
.gallery-zoom{position:absolute;right:18px;bottom:17px;width:41px;height:41px;border-radius:50%;display:grid;place-items:center;font-size:19px;background:#101719d9;border:1px solid #ffffff52}
.gallery-meta{padding:18px 2px 2px}
.gallery-meta>span{font-size:11px;color:#bdad90}
.gallery-meta h2{font-size:23px;font-weight:560;letter-spacing:-.035em;margin:7px 0}
.portfolio-case-note{background:#1d272b;padding:105px 0}
.case-note-inner{display:flex;justify-content:space-between;align-items:end;gap:60px}
.case-note-inner>div{max-width:840px}
.case-note-inner h2{margin:15px 0 20px}
.case-note-inner p:not(.eyebrow){color:#abb9b3;line-height:1.85;font-size:15px}
.case-note-inner>a{flex:none}
.gallery-dialog{border:0;padding:0;background:#101719;color:#f5f6f4;box-shadow:0 20px 100px #000d;max-width:min(1100px,94vw);max-height:92dvh;overflow:auto}
.gallery-dialog::backdrop{background:#030709e8}
.gallery-dialog img {max-width:min(1100px,92vw);max-height:77dvh;object-fit:contain;margin:auto}
.gallery-dialog p {margin:0;padding:18px 22px;font-size:13px;color:#d2d6d1}
.gallery-close{position:sticky;top:7px;float:right;margin:7px;z-index:10;width:43px;height:43px;font-size:30px;color:white;background:#101719e8;border:1px solid #ffffff75;cursor:pointer}
/* Contacts */
.contact-hero {background:radial-gradient(ellipse at 80% 15%,#354142,#151d21 70%);min-height:650px}
.contact-hero .breadcrumb {margin-bottom:80px}
.contact-hero h1{margin-bottom:27px}
.contact-lead {font-size:18px;color:#c0cfca;line-height:1.8;max-width:650px}
.contact-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:65px}
.contact-panel{min-height:260px;padding:39px;border:1px solid var(--hline);background:#141d20}
.contact-panel-accent{background:#273034}
.panel-label{font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--gold)}
.contact-phone{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:clamp(28px,4vw,52px);font-weight:570;letter-spacing:-.04em;margin-top:55px}
.contact-phone span{font-weight:400;color:var(--gold);font-size:30px}
.contact-panel>p{color:#9eaeaa;margin-top:17px}
.contact-panel h2{font-size:28px;letter-spacing:-.035em;font-weight:560;margin:24px 0 12px}
.contact-panel-accent>p{font-size:14px;line-height:1.7}
.contact-panel-accent .button{margin-top:12px}
@media(max-width:1220px){.nav-links{display:none}.menu-button{display:flex;margin-left:auto}.site-header .mobile-nav{display:flex;flex-direction:column;background:#101719;position:absolute;left:0;right:0;top:85px;padding:5px 24px 18px;border-bottom:1px solid #ffffff30;max-height:80dvh;overflow-y:auto}.site-header .mobile-nav[hidden]{display:none}.site-header .mobile-nav a[aria-current="page"]{color:var(--gold)}}
@media(max-width:900px){.site-header .mobile-nav{top:76px}.teaser-head,.faq-wrap,.subsection-head,.portfolio-intro,.catalog-strip-grid{grid-template-columns:1fr;gap:28px}.info-tiles{grid-template-columns:repeat(2,1fr)}.info-tile:nth-child(2){border-right:0}.info-tile:nth-child(-n+2){border-bottom:1px solid var(--hline)}.editorial-photo{grid-template-columns:1fr}.editorial-photo>div:first-child{height:430px;min-height:0}.editorial-text{padding:60px 44px}.collection-grid{grid-template-columns:1fr 1fr}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-note-inner{align-items:start;flex-direction:column;gap:25px}.teaser-head h2{margin-bottom:12px}.mini-cta-flex{align-items:start;flex-direction:column}.mini-cta-flex>div:last-child{align-items:start}}
@media(max-width:600px){.site-header .mobile-nav{top:66px}.teaser-grid,.collection-grid,.portfolio-grid,.contact-columns{grid-template-columns:1fr}.teaser-media{aspect-ratio:1.25}.portfolio-teaser h2,.home-faq h2,.subsection-head h2,.collection-section h2,.editorial-text h2{font-size:43px}.subhero{min-height:690px}.subhero-gradient{background:linear-gradient(90deg,#0b1317f0,#0b1317a6 75%,#0b131752),linear-gradient(0deg,#0b13176b,transparent)}.subhero-text{padding-top:35px;padding-bottom:65px}.subhero .breadcrumb{margin-bottom:85px}.subhero h1,.portfolio-header h1,.contact-hero h1{font-size:clamp(48px,11vw,67px)}.subhero-actions{gap:24px}.info-tiles{grid-template-columns:1fr}.info-tile{min-height:0;padding:27px;border-right:0!important;border-bottom:1px solid var(--hline)}.info-tile h3{margin-top:27px}.info-tile:last-child{border-bottom:0}.editorial-photo>div:first-child{height:315px}.editorial-text{padding:55px 22px}.catalog-strip,.mini-cta,.portfolio-case-note{padding:69px 0}.collection-grid a{min-height:245px;padding:28px}.gallery-control{align-items:stretch;flex-direction:column;gap:0}.gallery-filters{gap:20px}.gallery-count{padding:12px 0;text-align:right}.gallery-image{aspect-ratio:1.2}.contact-hero .breadcrumb{margin-bottom:62px}.contact-panel{padding:25px;min-height:240px}.contact-phone{font-size:34px}.subsection-head>p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.teaser-media img,.gallery-image img,.collection-grid a{transition:none}}
/* Maintain display when original manufacturer image is unavailable: assets.js switches to bundled fallbacks. */
