/* DOHO — strona startowa. Paleta: kamień, len, taupe, czarna wiśnia, biel ciepła. */
:root{
  --kamien:#F7F4EF; --len:#E7DED2; --taupe:#A08C78; --wisnia:#38101A; --biel:#FBF9F6; --tekst:#1F1215; --soft:#6E5F55; --rule:#DDD3C6; --panel:#FCFAF7;
  --f-display:"Bodoni Moda", "Didot", "Bodoni 72", Georgia, serif;
  --f-body:"Jost", "Futura", "Avenir Next", "Century Gothic", Arial, sans-serif;
  --f-mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
  --pad:clamp(16px,4vw,56px); --max:1240px;
  --accent:#38101A; --hdr:rgba(247,244,239,.94); --dark-soft:#D8C4BC;
  color-scheme:only light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--kamien);color:var(--tekst);font:300 17px/1.65 var(--f-body);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--f-display);font-weight:400;margin:0;text-wrap:balance;letter-spacing:-.005em}
p{margin:0}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--pad)}
.mono{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:400}
.kick{color:var(--accent)}
.soft{color:var(--soft)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* header */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--hdr);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid transparent;transition:border-color .2s}
.hdr.scrolled{border-bottom-color:var(--rule)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:76px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--accent)}
.logo svg{width:46px;height:auto}
.logo span{font-family:var(--f-body);font-weight:300;letter-spacing:.32em;font-size:17px;margin-right:-.32em;color:var(--tekst)}
.nav{display:flex;gap:30px;align-items:center}
.nav a{text-decoration:none;font-size:15px;letter-spacing:.02em;padding-block:6px;border-bottom:1px solid transparent}
.nav a:hover,.nav a[aria-current="page"]{border-bottom-color:currentColor}
.btn{display:inline-block;padding:13px 22px;border:1px solid currentColor;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;white-space:nowrap;background:none;color:inherit;cursor:pointer;transition:background .2s,color .2s}
.btn:hover{background:var(--wisnia);color:var(--biel);border-color:var(--wisnia)}
.btn.solid{background:var(--wisnia);color:var(--biel);border-color:var(--wisnia)}
.btn.solid:hover{background:var(--tekst);border-color:var(--tekst)}
.btn.light{color:var(--biel);border-color:var(--biel)}
.btn.light:hover{background:var(--biel);color:var(--wisnia)}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer;color:var(--tekst)}
.burger i{display:block;width:24px;height:1.5px;background:currentColor;margin:5px 0}
@media (max-width:900px){
  .nav{position:fixed;inset:76px 0 auto 0;background:var(--kamien);flex-direction:column;align-items:flex-start;gap:4px;padding:16px var(--pad) 28px;border-bottom:1px solid var(--rule);display:none}
  .nav.open{display:flex}
  .nav a{font-size:20px;font-family:var(--f-display)}
  .nav .btn{margin-top:12px;font-family:var(--f-mono);font-size:12px}
  .burger{display:block}
}

/* hero */
.hero{position:relative;min-height:min(88vh,820px);display:grid;align-items:end;color:var(--biel);overflow:hidden}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,10,14,.25) 0%,rgba(28,10,14,0) 30%,rgba(28,10,14,.55) 62%,rgba(28,10,14,.86) 100%)}
.hero .wrap{position:relative;z-index:1;width:100%;padding-block:0 clamp(32px,6vw,64px);display:grid;grid-template-columns:1.25fr 1fr;gap:28px 48px;align-items:end}
.hero h1{font-size:clamp(42px,6vw,84px);line-height:1}
.hero p{max-width:440px;color:#EFE4D8;font-size:18px}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.hero .btn.solid{background:var(--biel);color:var(--wisnia);border-color:var(--biel)}
.hero .btn.solid:hover{background:var(--kamien)}
@media (max-width:820px){.hero .wrap{grid-template-columns:1fr}.hero{min-height:640px}}

/* sections */
section{padding-block:clamp(64px,9vw,120px)}
.rule{border-top:1px solid var(--rule)}
.head2{display:grid;grid-template-columns:1fr 1fr;gap:20px 56px;align-items:end;margin-bottom:44px}
.head2 h2{font-size:clamp(32px,4.4vw,56px);line-height:1.05;margin-top:12px}
.head2 p{color:var(--soft);max-width:520px}
@media (max-width:820px){.head2{grid-template-columns:1fr}}
.dark{background:var(--wisnia);color:var(--biel)}
.dark .soft,.dark .head2 p{color:#D8C4BC}
.dark .kick{color:#E6CFC5}

/* path */
.path{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--tekst)}
.path li{list-style:none;padding:16px 16px 0 0;display:grid;gap:6px;align-content:start;min-width:0}
.path b{font-family:var(--f-mono);font-weight:400;font-size:11px;color:var(--accent);letter-spacing:.1em}
.path strong{font-family:var(--f-display);font-weight:400;font-size:22px}
.path span{font-size:15px;color:var(--soft);line-height:1.5}
ol.path{margin:0;padding:0}
@media (max-width:980px){.path{grid-template-columns:repeat(3,1fr);row-gap:28px}}
@media (max-width:560px){.path{grid-template-columns:1fr 1fr}}

/* project cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 20px}
.cards.two{grid-template-columns:repeat(2,1fr)}
.card{display:grid;gap:14px;text-decoration:none;color:inherit;align-content:start}
.card .ph{overflow:hidden;background:var(--len)}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s ease}
.card:hover img{transform:scale(1.03)}
.card .meta{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.card h3{font-size:clamp(22px,2vw,27px);line-height:1.15}
.card p{color:var(--soft);font-size:15.5px}
@media (max-width:980px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.cards,.cards.two{grid-template-columns:1fr}}
.card .ph.paper{background:#EFE8DE}
.card .ph.paper img{object-fit:contain;padding:6%}
.card .meta{flex-direction:column;align-items:flex-start;gap:4px}
.label{display:inline-block;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:4px 8px;background:var(--wisnia);color:var(--biel)}
.label.v{background:var(--len);color:var(--tekst)}
.gal3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gal3 figure{margin:0}.gal3 img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media (max-width:700px){.gal3{grid-template-columns:1fr 1fr}}

/* offer */
.offers{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--rule)}
.offer{padding:28px 24px;border-left:1px solid var(--rule);display:flex;flex-direction:column;gap:14px;min-width:0;background:var(--panel)}
.offer:first-child{border-left:0}
.offer h3{font-size:28px;line-height:1.1}
.offer .price{font-family:var(--f-display);font-size:34px;line-height:1}
.offer .price small{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--soft);text-transform:uppercase;margin-top:8px}
.offer p{font-size:15.5px;color:var(--soft)}
.offer .btn{margin-top:auto;text-align:center}
.offer.hl{background:var(--wisnia);color:var(--biel)}
.offer.hl p,.offer.hl .price small{color:#D8C4BC}
.offer.hl .btn{color:var(--biel);border-color:var(--biel)}
.offer.hl .btn:hover{background:var(--biel);color:var(--wisnia)}
@media (max-width:900px){.offers{grid-template-columns:1fr}.offer{border-left:0;border-top:1px solid var(--rule)}.offer:first-child{border-top:0}}

/* split band */
.split{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:center}
.split h2{font-size:clamp(32px,4vw,52px);line-height:1.06;margin-top:12px}
.split p{margin-top:18px;max-width:520px}
.split .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.split figure{margin:0}
.split figcaption{margin-top:10px}
@media (max-width:860px){.split{grid-template-columns:1fr}}

/* quote / about */
.sig-panel{aspect-ratio:4/5;background:var(--wisnia);display:grid;place-items:center;color:var(--biel)}
.sig-panel svg{width:42%}
blockquote{margin:0;font-family:var(--f-display);font-size:clamp(26px,3vw,38px);line-height:1.2}

/* newsletter */
.signup{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;max-width:520px}
.signup input{flex:1;min-width:220px;background:transparent;border:0;border-bottom:1px solid currentColor;padding:12px 2px;font:inherit;color:inherit}
.signup input::placeholder{color:inherit;opacity:.6}
.note{font-size:14px;margin-top:12px;min-height:1.4em}

/* page head */
.phead{padding-block:clamp(48px,7vw,96px) clamp(28px,4vw,48px)}
.phead h1{font-size:clamp(40px,6vw,80px);line-height:1.02;margin-top:14px;max-width:900px}
.phead p{font-size:19px;color:var(--soft);max-width:640px;margin-top:22px}

/* project page */
.facts{display:flex;flex-wrap:wrap;border:1px solid var(--tekst);margin-top:32px}
.facts div{padding:12px 18px;border-left:1px solid var(--tekst);font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.facts div:first-child{border-left:0}
.facts small{display:block;color:var(--soft);font-size:10px}
.gal{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.gal figure{margin:0}
.gal img{width:100%;object-fit:cover}
.gal .wide{grid-column:1/-1}
.gal figcaption{margin-top:8px;font-size:14px;color:var(--soft)}
@media (max-width:700px){.gal{grid-template-columns:1fr}}
.prose{max-width:680px;display:grid;gap:18px;font-size:18px}
.prose h2{font-size:clamp(28px,3vw,38px);margin-top:16px}
.changes{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--tekst)}
.changes div{padding:18px 24px 18px 0;border-bottom:1px solid var(--rule);display:grid;gap:6px}
.changes h3{font-size:22px}
.changes p{font-size:15.5px;color:var(--soft)}
@media (max-width:700px){.changes{grid-template-columns:1fr}}
.plan{background:var(--panel);border:1px solid var(--rule);padding:clamp(8px,1.5vw,16px)}
.tag{display:inline-block;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;margin-bottom:10px}
.tag.d{background:var(--len)}.tag.o{background:var(--wisnia);color:var(--biel)}

/* offer page */
.olist{display:grid;gap:0;border-top:1px solid var(--tekst)}
.orow{display:grid;grid-template-columns:240px 1fr 220px;gap:24px 40px;padding:36px 0;border-bottom:1px solid var(--rule);align-items:start}
.orow h2{font-size:32px;line-height:1.1}
.orow .price{font-family:var(--f-display);font-size:30px;line-height:1.1}
.orow .price small{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--soft);text-transform:uppercase;margin-top:8px}
.orow ul{margin:12px 0 0;padding-left:18px;display:grid;gap:6px;font-size:16px}
.orow .side{display:grid;gap:14px;justify-items:start}
@media (max-width:900px){.orow{grid-template-columns:1fr}}
.faq{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 48px}
.faq div{border-top:1px solid var(--tekst);padding-top:16px;display:grid;gap:8px}
.faq h3{font-size:22px}
.faq p{color:var(--soft);font-size:16px}
@media (max-width:760px){.faq{grid-template-columns:1fr}}

/* contact */
.form{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}
.f{display:grid;gap:6px;min-width:0}
.f.full{grid-column:1/-1}
.f label{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.f input,.f select,.f textarea{font:inherit;font-size:17px;color:var(--tekst);background:transparent;border:0;border-bottom:1px solid var(--tekst);padding:10px 2px;border-radius:0;width:100%}
.f textarea{min-height:120px;resize:vertical;border:1px solid var(--rule);padding:12px}
.f select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--tekst) 50%),linear-gradient(135deg,var(--tekst) 50%,transparent 50%);background-position:calc(100% - 14px) 55%,calc(100% - 9px) 55%;background-size:5px 5px;background-repeat:no-repeat}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{position:relative}
.chips input{position:absolute;opacity:0}
.chips span{display:inline-block;border:1px solid var(--rule);padding:9px 14px;font-size:15px;cursor:pointer;background:var(--panel)}
.chips input:checked+span{background:var(--wisnia);color:var(--biel);border-color:var(--wisnia)}
.chips input:focus-visible+span{outline:2px solid var(--wisnia);outline-offset:2px}
@media (max-width:700px){.form{grid-template-columns:1fr}}
.cinfo{display:grid;gap:22px;align-content:start}
.cinfo div{border-top:1px solid var(--tekst);padding-top:12px}
.cinfo a{text-decoration:none;font-family:var(--f-display);font-size:24px}

/* footer */
.ftr{background:var(--wisnia);color:#D8C4BC;padding-block:56px 40px;font-size:15px}
.ftr .grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px}
.ftr .logo,.ftr .logo span{color:var(--biel)}
.ftr b{display:block;font-family:var(--f-mono);font-weight:400;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--biel);margin-bottom:10px}
.ftr a{text-decoration:none}
.ftr a:hover{color:var(--biel)}
.ftr .bottom{margin-top:48px;padding-top:20px;border-top:1px solid rgba(251,249,246,.15);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px}
@media (max-width:820px){.ftr .grid{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.ftr .grid{grid-template-columns:1fr}}
.hero p.mono{font-size:12px;max-width:none}
.chips span{font-family:var(--f-body);text-transform:none;letter-spacing:0;color:var(--tekst);font-size:15px}.chips input:checked+span{color:var(--biel)}
.trio{display:grid;grid-template-columns:1fr 1fr 1.3fr;border:1px solid var(--tekst)}
.trio div{padding:22px 24px;display:grid;gap:8px;align-content:start;border-left:1px solid var(--tekst);min-width:0}
.trio div:first-child{border-left:0}
.trio h3{font-size:26px;line-height:1.1}
.trio p{color:var(--soft);font-size:15.5px}
.trio .on{background:var(--wisnia);color:var(--biel);border-left-color:var(--wisnia)}
.trio .on p{color:var(--dark-soft)}
@media (max-width:760px){.trio{grid-template-columns:1fr}.trio div{border-left:0;border-top:1px solid var(--tekst)}.trio div:first-child{border-top:0}}
.pgal{display:grid;gap:16px}
.grow{display:grid;gap:16px}
.grow.g2{grid-template-columns:1fr 1fr}.grow.g3{grid-template-columns:1fr 1fr 1fr}
.grow figure{margin:0;min-width:0}.grow img{width:100%;object-fit:cover;background:var(--len)}
.galh{font-size:clamp(26px,3vw,36px);margin:40px 0 4px;padding-top:20px;border-top:1px solid var(--tekst)}
.galh:first-child{margin-top:0}
@media (max-width:640px){.grow.g3{grid-template-columns:1fr 1fr}.grow.g3 figure:last-child{grid-column:1/-1}.grow.g3 figure:last-child img{aspect-ratio:3/2!important}}
.nextp{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.nextp a{font-family:var(--f-display);font-size:clamp(24px,3vw,36px);text-decoration:none}
.nextp a:hover{color:var(--accent)}
/* v2: jaśniejszy hero, mniej bordo */
.nav .btn{border:1px solid currentColor;padding:11px 20px}
.nav .btn:hover{border-color:var(--wisnia)}
.hero2{padding-block:clamp(40px,6vw,80px) 0}
.hero2-text{display:grid;grid-template-columns:1.25fr 1fr;gap:24px 56px;align-items:end;margin-bottom:clamp(28px,4vw,48px)}
.hero2 h1{font-size:clamp(42px,6vw,88px);line-height:1;margin-top:14px}
.hero2 p{max-width:460px;font-size:18px;color:var(--soft)}
.hero2 .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.hero2-img{margin:0}
.hero2-img img{width:100%;aspect-ratio:16/8;object-fit:cover;object-position:50% 60%}
.hero2-img figcaption{margin-top:10px}
@media (max-width:820px){.hero2-text{grid-template-columns:1fr}.hero2-img img{aspect-ratio:4/3}}
.band{background:var(--panel);border-block:1px solid var(--rule)}
.offer.hl{background:var(--biel);color:var(--tekst);border-top:3px solid var(--wisnia)}
.offer.hl p,.offer.hl .price small{color:var(--soft)}
.offer.hl .btn{color:var(--biel);background:var(--wisnia);border-color:var(--wisnia)}
.offer.hl .btn:hover{background:var(--tekst);color:var(--biel)}
.photo{margin:0}.photo img{width:100%;aspect-ratio:4/5;object-fit:cover}
.hero2 p.mono{font-size:12px;max-width:none;color:var(--accent)}
/* v5: czytelniejsza typografia (grubsze kreski) */
body{font-weight:400;font-size:17px}
h1,h2,h3,blockquote,.price,.cinfo a,.nextp a,.offer h3,.orow h2{font-weight:500;font-variation-settings:"opsz" 24}
.hero h1{font-variation-settings:"opsz" 40}
.logo span{font-weight:400}
.nav a{font-weight:400}
:root{--soft:#5A4C43}
.hero p{font-weight:400;color:#F5ECE3}
.mono{font-weight:500}
/* v7 · telefon */
@media (max-width:600px){
  .facts{display:grid;grid-template-columns:1fr 1fr;border:0;border-top:1px solid var(--tekst);border-left:1px solid var(--tekst)}
  .facts div,.facts div:first-child{border-left:0;border-right:1px solid var(--tekst);border-bottom:1px solid var(--tekst);padding:12px 14px}
  .facts div:last-child:nth-child(odd){grid-column:1/-1}
}
@media (max-width:820px){
input[type=file]{font:400 14px var(--f-body);color:var(--soft)}
input[type=file]::file-selector-button{font:500 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;background:transparent;color:var(--wisnia);border:1px solid var(--wisnia);padding:10px 14px;margin-right:12px;cursor:pointer;border-radius:0}
select,input,textarea,button{-webkit-appearance:none;appearance:none;border-radius:0}
input[type=checkbox]{-webkit-appearance:auto;appearance:auto;accent-color:var(--wisnia)}
}
/* v8 · hero na telefonie: czytelniejszy tekst na zdjęciu */
@media (max-width:820px){
  .hero::after{background:linear-gradient(180deg,rgba(28,10,14,.2) 0%,rgba(28,10,14,.35) 25%,rgba(28,10,14,.68) 50%,rgba(28,10,14,.9) 100%)}
  .hero p.mono{font-weight:500;font-size:12.5px;color:#fff;letter-spacing:.14em;text-shadow:0 1px 8px rgba(20,8,10,.6)}
  .hero h1{font-weight:500;font-variation-settings:"opsz" 18;text-shadow:0 2px 18px rgba(20,8,10,.45)}
  .hero p{font-weight:500;text-shadow:0 1px 10px rgba(20,8,10,.45)}
}
/* v10 · nagłówki: Bodoni, grubsze kreski (wariant B) */
h1,h2,h3,blockquote,.price,.cinfo a,.nextp a,.offer h3,.orow h2,.path strong,.hero h1{font-weight:500;font-variation-settings:"opsz" 6}
@media (max-width:820px){.nav a{font-weight:500;font-variation-settings:"opsz" 6}}

/* ===== v11 · nowy styl DOHO (Instrument Serif / Instrument Sans / Geist) ===== */
:root{--f-display:"Instrument Serif",Georgia,serif;--f-body:"Instrument Sans",ui-sans-serif,system-ui,sans-serif;--f-mono:"Geist",ui-sans-serif,sans-serif;--soft:#5A4C43;--rule:rgba(31,18,21,.12);--max:1280px;--pad:clamp(20px,3vw,32px)}
body{font:400 17px/1.65 var(--f-body);color:#1F1215;background:#F7F4EF}
h1,h2,h3,blockquote,.price,.cinfo a,.nextp a,.offer h3,.orow h2,.path strong,.hero h1,.trio h3,.faq h3,.changes h3{font-family:var(--f-display);font-weight:400;font-variation-settings:normal;letter-spacing:-.01em;text-shadow:none}
h1 em,h2 em,h3 em{font-style:italic;color:#38101A}
.phead h1{font-size:clamp(52px,7vw,104px);line-height:.98;max-width:1000px}
.head2 h2,.split h2{font-size:clamp(40px,5vw,68px);line-height:1.02}
.prose h2{font-size:clamp(34px,3.6vw,48px);line-height:1.05}
.card h3{font-size:28px;line-height:1.12}
.offer h3,.trio h3{font-size:30px;line-height:1.1}
.orow h2{font-size:40px;line-height:1.05}
.faq h3,.changes h3{font-size:26px;line-height:1.15}
.path strong{font-size:27px;line-height:1.1}
.price,.orow .price,.offer .price{font-size:44px;line-height:1}
.cinfo a{font-size:30px}
.nextp a{font-size:clamp(30px,3.4vw,44px)}
blockquote{font-size:clamp(30px,3.4vw,46px);line-height:1.15}
.mono{font-family:var(--f-mono);font-size:12px;letter-spacing:.2em;font-weight:400;text-transform:uppercase}
.kick{color:#38101A}
.card .mono,.label{color:#8A6F66}
.phead p,.head2 p{font-size:18px;color:#5A4C43}
/* przyciski */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 26px;border-radius:10px;border:1px solid rgba(31,18,21,.25);font-family:var(--f-body);font-size:15px;font-weight:500;letter-spacing:.01em;text-transform:none;color:#1F1215;background:transparent;transition:background-color .25s,color .25s,border-color .25s}
.btn:hover{background:#1F1215;color:#F7F4EF;border-color:#1F1215}
.btn.solid{background:#38101A;border-color:#38101A;color:#FBF9F6}
.btn.solid:hover{background:#1F1215;border-color:#1F1215}
.btn.light{color:#FBF9F6;border-color:rgba(251,249,246,.45);background:rgba(251,249,246,.12)}
.hero .btn.solid{background:#FBF9F6;color:#1F1215;border-color:#FBF9F6}
/* zdjęcia i karty */
.card img,.card .ph,.photo img,.pgal img,.gal3 img,.galh img,.plan,figure img{border-radius:6px}
.card{gap:20px}
.offer{border-radius:14px;background:#FBF9F6;border:1px solid rgba(31,18,21,.08)}
.offer.hl{background:#38101A;color:#FBF9F6;border-color:#38101A;box-shadow:0 32px 64px -36px rgba(56,16,26,.7)}
.facts{border-radius:10px;overflow:hidden;border-color:rgba(31,18,21,.2)}
.facts div{border-color:rgba(31,18,21,.2)!important}
.trio > div{border-radius:14px}
/* formularz */
.f input,.f select,.f textarea{font-family:var(--f-body);font-size:16px;border-color:rgba(31,18,21,.25)}
.f textarea{border-radius:10px}
.f label{font-family:var(--f-mono);letter-spacing:.16em}
.chips label span,.chips span{border-radius:999px}
@media (max-width:760px){
 .phead h1{font-size:48px}
 .head2 h2,.split h2{font-size:38px}
 .orow h2{font-size:34px}
 .price,.orow .price,.offer .price{font-size:38px}
}

/* ===== DOHO · wspólny nagłówek i stopka (styl Instrument) ===== */
.dh-hdr{position:sticky;top:0;z-index:30;background:rgba(247,244,239,.86);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);border-bottom:1px solid rgba(31,18,21,.07);font-family:'Instrument Sans',ui-sans-serif,system-ui,sans-serif;color:#1F1215}
.dh-nav{max-width:1280px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.dh-logo{display:flex;align-items:center;gap:14px;min-height:44px;color:#1F1215;text-decoration:none}
.dh-logo span{font-family:'Geist',sans-serif;font-weight:400;letter-spacing:.34em;font-size:14px}
.dh-right{display:flex;align-items:center;gap:28px}
.dh-links{display:flex;align-items:center;gap:30px;font-size:15px}
.dh-links a{padding:10px 0;color:#1F1215;text-decoration:none;border-bottom:1px solid transparent}
.dh-links a:hover{color:#38101A}
.dh-links a[aria-current="page"]{border-bottom-color:#1F1215}
.dh-kontakt,.dh-kontakt-m{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border-radius:10px;background:#1F1215;color:#F7F4EF!important;font-size:14px;font-weight:500;letter-spacing:.02em;text-decoration:none;transition:background-color .25s}
.dh-kontakt:hover,.dh-kontakt-m:hover{background:#38101A}
.dh-kontakt-m{display:none}
.dh-burger{display:none;background:none;border:0;padding:10px;margin-right:-10px;cursor:pointer;color:#1F1215}
.dh-burger i{display:block;width:24px;height:1.5px;background:currentColor;margin:5px 0}
@media (max-width:900px){
 .dh-nav{padding:10px 20px}
 .dh-kontakt{display:none}
 .dh-burger{display:block}
 .dh-links{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 20px 28px;background:#F7F4EF;border-bottom:1px solid rgba(31,18,21,.1)}
 .dh-links.open{display:flex}
 .dh-links a{font-family:'Instrument Serif',Georgia,serif;font-size:30px;line-height:1.2;padding:6px 0}
 .dh-links a[aria-current="page"]{border-bottom-color:transparent;font-style:italic;color:#38101A}
 .dh-links .dh-kontakt-m{display:inline-flex;margin-top:14px;font-family:'Instrument Sans',sans-serif;font-size:15px;line-height:1;padding:0 26px;min-height:50px}
}
.dh-foot{font-family:'Instrument Sans',ui-sans-serif,system-ui,sans-serif;color:#5A4C43;font-size:14px;line-height:1.6;border-top:1px solid rgba(31,18,21,.08);margin-top:120px;background:#F7F4EF}
.dh-foot a{color:inherit;text-decoration:none}.dh-foot a:hover{color:#38101A}
.dh-foot-in{max-width:1216px;margin:0 auto;padding:56px 32px 36px;display:flex;flex-direction:column;gap:28px}
.dh-foot-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 28px}
.dh-foot .dh-logo{min-height:0}.dh-foot .dh-logo svg{width:32px;height:22px}.dh-foot .dh-logo span{font-size:13px}
.dh-foot-links{display:flex;flex-wrap:wrap;gap:24px;color:#1F1215;font-size:15px}
.dh-foot-small{font-size:13px;padding-top:22px;border-top:1px solid rgba(31,18,21,.08)}
@media (max-width:760px){.dh-foot{margin-top:80px}.dh-foot-in{padding:44px 20px 30px}.dh-foot-row{flex-direction:column;align-items:flex-start}}
