/* ============================================================
   AMBER PENSJONAT — warstwa obiektu nad wspólnym core (theme.css).
   Paleta „Polana”: mech + szałwia + miodowy bursztyn + len.
   Forma ZAOKRĄGLONA (body.amber-rounded wyłącza tryb kanciasty core), tylko tryb jasny.
   Makieta: AMBER PENSJONAT/index-v4.html (zaakceptowana 2026-10-22).
   Warianty sekcji (hero island, atuty compact, pokoje rows, o-nas island, galeria bento,
   dojazd okolica/mapa, cta card, opinie) — do przeniesienia do core przy syncu rodziny.
   ============================================================ */

/* ---------- tokeny + sloty core ---------- */
:root, :root[data-theme="light"]{
  --linen:#F5F1E8; --paper-pj:#FFFDF8; --sage-50:#E8ECDF; --sage-100:#DCE3D0; --sage-300:#AFBE9F;
  --moss:#4E6446; --moss-deep:#2C3A28; --moss-ink:#3E5238;
  --honey:#D99A2B; --honey-hover:#E6AA42; --honey-ink:#875709; --honey-soft:#F6E3BC;
  --ink:#23261F; --on-dark:#F3EFE4; --on-dark-muted:#C9D0BD;
  --r-xl:36px; --r-lg:26px; --r:18px; --r-sm:12px; --pill:999px;
  --shadow-pj:0 1px 2px rgba(35,38,31,.06),0 12px 32px -12px rgba(35,38,31,.18);
  --gut-wide:clamp(12px,2vw,40px);

  /* sloty core (podstrony: pokój, rezerwacja, kontakt, cookies, lightbox) */
  --navy:var(--moss-deep); --navy-deep:var(--moss-deep);
  --amber:var(--honey); --amber-bright:var(--honey-hover); --amber-deep:var(--honey-ink);
  --paper:var(--linen); --sand:var(--sage-50);
  --bg:var(--linen); --fg:var(--ink); --heading:var(--ink); --muted:#5C6256;
  --surface:var(--paper-pj); --line:#E2DDD0; --line-soft:#ECE7DB;
  --band:var(--moss-deep); --band-fg:var(--on-dark); --band-muted:var(--on-dark-muted);
  --on-amber:#23261F;
  --footer-bg:var(--moss-deep); --footer-fg:var(--on-dark); --footer-muted:var(--on-dark-muted);
  --shadow:0 18px 40px -20px rgba(44,58,40,.35);
  --header-h:84px;
  --wrap:1576px;             /* 1480 px treści + 2 × 48 px */
  --deep:var(--moss-deep); --deep-fg:var(--on-dark); --deep-muted:var(--on-dark-muted); --deep-line:rgba(243,239,228,.14);
  color-scheme:light;
}
/* tylko jasny: neutralizacja trybu ciemnego z core (gdyby data-theme zostało usunięte) */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="dark"]){
    --bg:var(--linen); --fg:var(--ink); --sand:var(--sage-50); --surface:var(--paper-pj);
    --muted:#5C6256; --line:#E2DDD0; --line-soft:#ECE7DB; --amber:var(--honey); --amber-bright:var(--honey-hover);
    color-scheme:light;
  }
}

body{background:var(--linen); color:var(--ink); font-size:17px}
body::before{content:""; position:fixed; inset:0; pointer-events:none; z-index:0; opacity:.35;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.2 0 0 0 0 0.22 0 0 0 0 0.17 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.wp-site-blocks{position:relative; z-index:1}
h1,h2,h3,h4{letter-spacing:-.02em}
::selection{background:var(--honey); color:#23261F}
.gem, .gem-deco{display:none !important}
.wrap-wide{padding-inline:var(--gut-wide)}

/* ---------- przyciski: pigułki ---------- */
.pbtn{display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:54px; padding:0 26px; border-radius:var(--pill);
  font:600 16px/1.1 var(--font-body); text-decoration:none; border:0; cursor:pointer; white-space:nowrap;
  transition:transform .2s, background .2s, box-shadow .2s, color .2s}
.pbtn svg{width:18px; height:18px; flex:none; stroke:currentColor; fill:none; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round}
.pbtn:hover{transform:translateY(-2px)}
.pbtn--primary{background:var(--honey); color:#23261F; box-shadow:0 8px 22px -10px rgba(217,154,43,.8)}
.pbtn--primary:hover{background:var(--honey-hover)}
.pbtn--soft{background:var(--sage-100); color:var(--ink)}
.pbtn--soft:hover{background:var(--sage-300)}
.pbtn--ghost{background:transparent; color:var(--on-dark); box-shadow:inset 0 0 0 1.5px rgba(243,239,228,.45)}
.pbtn--ghost:hover{box-shadow:inset 0 0 0 1.5px var(--on-dark)}
.pbtn--ink{background:#23261F; color:#F5F1E8}
.pbtn--cream{background:rgba(255,255,255,.55); color:#23261F}
.pbtn--cream:hover{background:rgba(255,255,255,.75)}
/* core .btn (podstrony): ten sam miód, ciemny tekst, pigułka */
.btn{background:var(--honey); color:#23261F; border-radius:var(--pill)}
.btn:hover{background:var(--honey-hover); box-shadow:0 10px 24px -12px rgba(217,154,43,.7)}
.btn-ghost{color:var(--on-dark)}

.kick, .eyebrow{display:inline-flex; align-items:center; gap:10px; font:600 13px/1.2 var(--font-body); letter-spacing:.14em; text-transform:uppercase; color:var(--moss-ink); margin:0 0 18px}
.kick::before, .eyebrow::before{content:""; width:22px; height:8px; border-radius:8px; background:var(--honey); flex:none}
.lead{font-size:19px; color:var(--muted); max-width:56ch}

/* ---------- nagłówek strony ---------- */
.site-header.site-header--pj, body:not(.home) .site-header.site-header--pj{
  position:fixed; top:0; inset-inline:0; z-index:50; color:var(--ink); background:transparent; box-shadow:none; backdrop-filter:none}
.site-header--pj.scrolled{background:color-mix(in srgb,var(--linen) 90%,transparent) !important; backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); box-shadow:0 1px 0 var(--line) !important}
.admin-bar .site-header--pj{top:32px}
.site-header--pj .bar{min-height:var(--header-h); gap:18px}
.amber-main{padding-top:var(--header-h) !important}
.logo{display:flex; align-items:center; gap:12px; text-decoration:none; margin-right:auto; color:inherit}
.logo-mark{width:40px; height:40px; border-radius:50% 50% 50% 14px; background:var(--moss); display:grid; place-items:center; flex:none}
.logo-mark svg{width:22px; height:22px}
.logo-txt b{font:800 22px/1 var(--font-display); letter-spacing:-.02em; display:block}
.logo-txt small{font:500 12px/1 var(--font-body); color:var(--muted); letter-spacing:.04em}
.site-header--pj .main-nav{display:flex; gap:4px; background:var(--paper-pj); padding:6px; border-radius:var(--pill); box-shadow:var(--shadow-pj)}
.site-header--pj .main-nav a{padding:10px 18px; border-radius:var(--pill); text-decoration:none; font:500 15px/1 var(--font-body); color:var(--muted); opacity:1}
.site-header--pj .main-nav a:hover, .site-header--pj .main-nav a[aria-current="page"]{background:var(--sage-50); color:var(--ink)}
.site-header--pj .main-nav a::after{display:none}
.site-header--pj .header-cta{display:flex; align-items:center; gap:14px}
.site-header--pj .header-phone{display:inline-flex; align-items:center; gap:8px; color:var(--ink); font:600 15px/1 var(--font-body); text-decoration:none}
.site-header--pj .header-phone svg{width:18px; height:18px; color:var(--moss)}
.site-header--pj .header-rez{min-height:46px; padding:0 22px; font-size:15px}
.site-header--pj .nav-toggle{width:46px; height:46px; border-radius:50%; background:var(--paper-pj); box-shadow:var(--shadow-pj); color:var(--ink); border:0; display:none; place-items:center}
.mobile-nav{background:var(--linen); color:var(--ink); top:var(--header-h)}
.mobile-nav a{color:var(--ink); border-color:var(--line)}
.mobile-nav .mobile-phone{color:var(--moss-ink)}
@media (max-width:1280px){ .site-header--pj .main-nav a{padding:10px 13px} .site-header--pj .header-phone{display:none} }
@media (max-width:1080px){ .site-header--pj .main-nav{display:none} .site-header--pj .nav-toggle{display:grid} }
@media (max-width:720px){ :root{--header-h:72px} .site-header--pj .header-rez{display:none} body{font-size:16px} }

/* ======================================================
   HERO · wyspa (amber/hero variant=island)
   ====================================================== */
.hero-island{padding-top:18px; position:relative}
.island{background:var(--moss-deep); color:var(--on-dark); border-radius:var(--r-xl); padding:72px 72px 120px; display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; position:relative; overflow:hidden; min-height:min(78vh,820px)}
.hero-island.is-wide .island{padding-left:max(56px,calc((100% - 1480px)/2)); padding-right:max(56px,calc((100% - 1480px)/2))}
.island.no-visual{grid-template-columns:1fr}
.island::before{content:""; position:absolute; width:640px; height:640px; border-radius:50%; left:-260px; bottom:-380px; background:radial-gradient(circle,rgba(217,154,43,.20),transparent 62%)}
.island::after{content:""; position:absolute; right:-120px; top:-120px; width:420px; height:420px; border-radius:50%; border:60px solid rgba(243,239,228,.04)}
.island-txt{position:relative; z-index:1}
.island .kick{color:var(--on-dark-muted)}
.island h1{font-size:clamp(46px,6vw,96px); font-weight:800; letter-spacing:-.035em; line-height:.96; margin:4px 0 26px; color:var(--on-dark)}
.island h1 em{font-style:normal; color:var(--honey)}
.island .lead{color:var(--on-dark-muted); font-size:20px}
.island-ctas{display:flex; gap:12px; flex-wrap:wrap; margin:34px 0 30px}
.rating-line{display:flex; align-items:center; gap:18px; flex-wrap:wrap; font-size:15px; color:var(--on-dark-muted)}
.rating-line .score{display:inline-flex; align-items:center; gap:8px}
.rating-line .score b{font:700 15px/1 var(--font-body); background:rgba(243,239,228,.1); color:var(--on-dark); border-radius:10px 10px 10px 3px; padding:7px 9px}
.hero-island.is-center .island-txt{text-align:center; display:flex; flex-direction:column; align-items:center}
.hero-island.is-center .island-txt .lead{margin-inline:auto}
.hero-island.is-center .island-ctas, .hero-island.is-center .rating-line{justify-content:center}
.island-visual{position:relative; padding-left:44px; z-index:1}
.ph{position:relative; overflow:hidden; background:var(--sage-100)}
.ph img{width:100%; height:100%; object-fit:cover}
.ph--arch{border-radius:999px 999px var(--r-xl) var(--r-xl)}
.island-visual .ph--arch{aspect-ratio:4/4.3}
.island-visual .ph--small{position:absolute; left:0; bottom:-36px; width:36%; aspect-ratio:3/4; border-radius:var(--r-lg); border:7px solid var(--moss-deep)}
.chip{position:absolute; display:flex; align-items:center; gap:12px; background:var(--paper-pj); color:var(--ink); border-radius:var(--pill); padding:10px 18px 10px 10px; box-shadow:var(--shadow-pj); font-size:14px; line-height:1.25; z-index:2; text-align:left}
.chip i{width:38px; height:38px; border-radius:50%; display:grid; place-items:center; background:var(--honey-soft); color:var(--honey-ink); flex:none}
.chip i svg{width:19px; height:19px; stroke:currentColor; fill:none}
.chip b{display:block; font:700 15px/1.2 var(--font-body)}
.chip--1{top:16%; right:-14px}
.chip--2{bottom:14%; right:10%}
.chip--2 i{background:var(--sage-100); color:var(--moss-ink)}

/* pasek dat — pigułka nachodząca na dół wyspy */
.island-book{position:relative; z-index:5; margin:-46px auto 0; max-width:min(1432px, calc(100vw - 2*var(--gut-wide) - 64px)); padding:0 24px}
.island-book .booking-bar{margin:0; width:auto}
.island-book .booking-form{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr) auto; gap:8px; background:var(--paper-pj); border:0; border-radius:var(--pill); padding:8px; box-shadow:0 24px 50px -24px rgba(35,38,31,.45); color:var(--ink)}
.island-book .booking-field{padding:8px 26px; border:0; border-radius:var(--pill); justify-content:center; transition:background .2s; background:transparent}
.island-book .booking-field:hover{background:var(--sage-50)}
.island-book .booking-field + .booking-field{border-left:1px solid var(--line)}
.island-book .booking-field:focus-within{box-shadow:inset 0 0 0 2px var(--honey)}
.island-book .booking-field label{font:600 12px/1 var(--font-body); letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:6px}
.island-book .booking-field input, .island-book .booking-field select{font:500 17px/1.2 var(--font-body); color:var(--ink); background:transparent; border:0; padding:0}
.island-book .booking-submit{padding:0}
.island-book .booking-submit .btn{height:62px; padding:0 34px; border-radius:var(--pill); font-size:16px; gap:10px}
.island-book .booking-submit .btn svg{width:18px; height:18px; stroke:currentColor}

.sticky-pill{position:fixed; left:50%; bottom:20px; transform:translate(-50%,160%); z-index:60; display:flex; align-items:center; gap:6px; background:var(--moss-deep); color:var(--on-dark); padding:6px 6px 6px 22px; border-radius:var(--pill); box-shadow:0 18px 40px -14px rgba(0,0,0,.5); transition:transform .45s cubic-bezier(.2,.9,.2,1)}
.sticky-pill.show{transform:translate(-50%,0)}
.sticky-pill span{font-size:15px; margin-right:12px; white-space:nowrap}
.sticky-pill .pbtn{min-height:46px; padding:0 20px; font-size:15px}
.sticky-pill a.tel{color:var(--on-dark); width:46px; height:46px; border-radius:50%; display:grid; place-items:center; box-shadow:inset 0 0 0 1.5px rgba(243,239,228,.35)}
.sticky-pill a.tel svg{width:18px; height:18px; stroke:currentColor; fill:none}
.amber-cookies:not([hidden]) ~ .sticky-pill, body.has-cookies .sticky-pill{bottom:120px}

/* ======================================================
   ATUTY · kompaktowe (amber/atuty variant=compact)
   ====================================================== */
.perks-compact{padding:56px 0 0}
.perk-row{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
.perk-c{display:flex; align-items:center; gap:18px; background:var(--paper-pj); border-radius:var(--r-lg); padding:22px 24px; box-shadow:0 0 0 1px var(--line); transition:transform .25s, box-shadow .25s}
.perk-c:hover{transform:translateY(-3px); box-shadow:var(--shadow-pj)}
.perk-c i{width:58px; height:58px; border-radius:50% 50% 50% 16px; display:grid; place-items:center; background:var(--moss); color:#fff; flex:none}
.perk-c:nth-child(2) i{background:var(--honey); color:#23261F}
.perk-c i svg{width:26px; height:26px; stroke:currentColor; fill:none}
.perk-c b{display:block; font:700 20px/1.15 var(--font-display); letter-spacing:-.01em}
.perk-c span{font-size:14.5px; color:var(--muted)}

/* ---------- nagłówek sekcji rozsunięty ---------- */
.split-head{display:flex; justify-content:space-between; align-items:flex-end; gap:32px; flex-wrap:wrap; margin-bottom:48px}
.split-head h2{font-size:clamp(34px,4.2vw,60px); line-height:1.05}
.split-head h2 em{font-style:normal; color:var(--moss)}
.split-head .lead{margin:0}

/* ======================================================
   POKOJE · rzędy (amber/pokoje layout=rows)
   ====================================================== */
.rooms-rows{padding-top:96px}
.room-rows{display:flex; flex-direction:column; gap:16px}
.room-row{display:grid; grid-template-columns:minmax(0,440px) 1fr 260px; gap:40px; align-items:center; background:var(--paper-pj); border-radius:var(--r-xl); padding:14px 40px 14px 14px; box-shadow:0 0 0 1px var(--line); transition:box-shadow .3s, transform .3s}
.room-row:hover{box-shadow:var(--shadow-pj); transform:translateY(-2px)}
.room-row .ph{aspect-ratio:16/10; border-radius:var(--r-lg); display:block}
.room-row .ph img{transition:transform .6s}
.room-row:hover .ph img{transform:scale(1.04)}
.room-row h3{font-size:clamp(28px,2.4vw,36px); margin-bottom:10px}
.room-row h3 a{text-decoration:none}
.room-row .desc{color:var(--muted); max-width:52ch; margin-bottom:22px}
.room-row-specs{display:flex; flex-wrap:wrap; gap:14px 26px; margin:0; padding:0; list-style:none}
.room-row-specs li{display:inline-flex; gap:10px; align-items:center; font:500 16px/1 var(--font-body)}
.room-row-specs li i{width:40px; height:40px; border-radius:12px; background:var(--sage-50); color:var(--moss-ink); display:grid; place-items:center}
.room-row-specs svg{width:20px; height:20px; stroke:currentColor; fill:none}
.room-row-side{display:flex; flex-direction:column; gap:12px; align-items:stretch; padding-left:40px; border-left:1px solid var(--line); align-self:stretch; justify-content:center}
.room-row-side .price{font-size:14px; color:var(--muted)}
.room-row-side .price b{font:700 36px/1.1 var(--font-display); color:var(--ink); letter-spacing:-.02em}
.room-row-side .price--ask{font:600 15px/1.3 var(--font-body); color:var(--moss-ink)}
.room-row-side .pbtn{min-height:50px}
.rooms-note{display:flex; gap:10px; align-items:center; color:var(--muted); font-size:15px; margin-top:22px}
.rooms-note svg{width:18px; height:18px; color:var(--moss); stroke:currentColor; fill:none; flex:none}
.rooms-foot{margin-top:28px}

/* ======================================================
   O OBIEKCIE · ciemna wyspa (amber/o-nas variant=island) — parking i transfer
   ====================================================== */
.about-island{padding-top:20px}
.dark-island{background:var(--moss-deep); color:var(--on-dark); border-radius:var(--r-xl); display:grid; grid-template-columns:1fr 1fr; overflow:hidden; min-height:620px}
.dark-island-txt{padding:72px 64px; display:flex; flex-direction:column; justify-content:center; position:relative}
.dark-island-txt::before{content:""; position:absolute; width:480px; height:480px; border-radius:50%; left:-220px; bottom:-280px; background:radial-gradient(circle,rgba(217,154,43,.2),transparent 65%); pointer-events:none}
.dark-island .kick{color:var(--on-dark-muted)}
.dark-island h2{font-size:clamp(34px,4.2vw,60px); margin:0 0 22px; color:var(--on-dark)}
.dark-island p{color:var(--on-dark-muted); font-size:18px; max-width:50ch}
.dark-island p + p{margin-top:14px}
.dark-island .pfacts{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin:30px 0 34px; max-width:560px}
.dark-island .pfact{background:rgba(243,239,228,.08); border-radius:var(--r); padding:14px 18px}
.dark-island .pfact b{display:block; font:700 24px/1.1 var(--font-display); color:var(--on-dark); white-space:nowrap}
.dark-island .pfact span{font-size:13.5px; color:var(--on-dark-muted)}
.dark-island .island-ctas{margin:0; position:relative}
.dark-island-ph{position:relative; min-height:100%}
.dark-island-ph img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}

/* ======================================================
   GALERIA · bento (amber/galeria layout=bento)
   ====================================================== */
.gallery-bento{padding-top:96px}
.split-head-btn{margin-left:auto}
.bento{display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:260px; gap:14px; grid-auto-flow:dense}
.bento .b-item{position:relative; overflow:hidden; border-radius:var(--r-lg); cursor:zoom-in; background:var(--sage-100); display:block}
.bento .b-item img{width:100%; height:100%; object-fit:cover; transition:transform .6s}
.bento .b-item:hover img{transform:scale(1.05)}
.bento .b-big{grid-column:span 2; grid-row:span 2; border-radius:var(--r-xl) var(--r-lg) var(--r-lg) var(--r-xl)}
.bento .b-tall{grid-row:span 2}
.bento .b-wide{grid-column:span 2}
button.pbtn{font-family:var(--font-body)}

/* ======================================================
   OKOLICA · rozkład jazdy (amber/dojazd variant=okolica)
   ====================================================== */
.area-board .area{display:grid; grid-template-columns:.8fr 1.2fr; gap:72px; align-items:start}
.area-side{position:sticky; top:calc(var(--header-h) + 26px); display:flex; flex-direction:column; gap:22px}
.area-side .kick{margin:0}
.area-side h2{font-size:clamp(38px,4.4vw,64px); letter-spacing:-.035em}
.area-side h2 em{font-style:normal; color:var(--moss)}
.area-side .lead{margin:0}
.area-side .ph--arch{aspect-ratio:4/3.4; margin-top:10px}
.board-head{display:grid; grid-template-columns:150px 1fr 120px; gap:24px; padding:0 20px 16px; font:600 12px/1 var(--font-body); letter-spacing:.14em; text-transform:uppercase; color:var(--muted); border-bottom:2px solid var(--ink)}
.board{list-style:none; margin:0; padding:0}
.board li{border-bottom:1px solid var(--line); padding:6px 0}
.board-row{display:grid; grid-template-columns:150px 1fr 120px; gap:24px; align-items:center; padding:26px 20px; text-decoration:none; color:inherit; border-radius:var(--r); transition:background .25s, padding .25s}
a.board-row:hover{background:var(--paper-pj); padding-left:28px}
.board .t{font:800 46px/1 var(--font-display); letter-spacing:-.04em; color:var(--moss)}
.board .t small{font:600 15px/1 var(--font-body); letter-spacing:0; color:var(--muted); margin-left:6px}
.board li:first-child .t{color:var(--honey-ink)}
.board h4{font:700 24px/1.2 var(--font-display); letter-spacing:-.01em; margin:0}
.board p{font-size:15.5px; color:var(--muted); margin-top:4px}
.board .go{justify-self:end}
.board .go i{width:40px; height:40px; border-radius:50%; display:grid; place-items:center; box-shadow:inset 0 0 0 1.5px var(--line); color:var(--moss-ink); transition:background .25s, box-shadow .25s}
.board .go svg{width:16px; height:16px; stroke:currentColor}
a.board-row:hover .go i{background:var(--honey); box-shadow:none; color:#23261F}
.board-note{display:flex; gap:12px; align-items:flex-start; margin-top:26px; padding:0 20px; font-size:15px; color:var(--muted)}
.board-note svg{width:20px; height:20px; color:var(--moss); stroke:currentColor; fill:none; flex:none; margin-top:1px}

/* ======================================================
   OPINIE (amber/opinie)
   ====================================================== */
.reviews-sec{padding-top:20px}
.reviews{display:grid; grid-template-columns:minmax(0,420px) 1fr; gap:20px; align-items:stretch}
.reviews.no-quotes{grid-template-columns:minmax(0,520px)}
.scores{background:var(--honey); color:#23261F; border-radius:var(--r-xl); padding:44px; display:flex; flex-direction:column; gap:26px}
.scores .kick{color:#3F3720; margin:0}
.scores .kick::before{background:#23261F}
.score-row{display:flex; gap:40px; flex-wrap:wrap}
.score-row b{font:800 76px/1 var(--font-display); letter-spacing:-.045em; display:block}
.score-row span{font-size:14.5px; color:#3F3720}
.scores-link{margin-top:auto; align-self:flex-start; font-weight:600; color:#23261F; text-decoration:none; border-bottom:1.5px solid currentColor; padding-bottom:2px}
.quotes{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
.quote{margin:0; background:var(--paper-pj); border-radius:var(--r-xl); padding:34px; box-shadow:0 0 0 1px var(--line); display:flex; flex-direction:column; gap:22px}
.quote .q{font:800 64px/.5 var(--font-display); color:var(--sage-300); height:28px}
.quote p{font:600 21px/1.4 var(--font-display); letter-spacing:-.01em}
.quote footer{font-size:14px; color:var(--muted); margin-top:auto}

/* ======================================================
   DOJAZD · mapa + karty (amber/dojazd variant=mapa)
   ====================================================== */
.map-cards{padding-top:20px}
.getting{display:grid; grid-template-columns:1.3fr .7fr; gap:22px}
.map{background:var(--sage-50); border-radius:var(--r-xl); overflow:hidden; position:relative; min-height:540px}
.map iframe{position:absolute; inset:0; width:100%; height:100%; border:0}
.how{display:flex; flex-direction:column; gap:12px}
.how-card{background:var(--paper-pj); border-radius:var(--r-lg); padding:24px 26px; box-shadow:0 0 0 1px var(--line)}
.how-card .hc-top{display:flex; align-items:center; gap:14px; margin-bottom:10px}
.how-card .hc-top i{width:42px; height:42px; border-radius:14px; background:var(--sage-50); color:var(--moss-ink); display:grid; place-items:center}
.how-card .hc-top i svg{width:21px; height:21px; stroke:currentColor; fill:none}
.how-card h4{font:700 19px/1.2 var(--font-display); margin:0}
.how-card p, .how-card address{font-size:15.5px; color:var(--muted); font-style:normal}
.how-card--addr{background:var(--moss); color:#fff; box-shadow:none}
.how-card--addr h4{font-size:24px; margin-bottom:10px}
.how-card--addr address, .how-card--addr p{color:rgba(255,255,255,.85)}
.how-card--addr a{color:#fff}
.how-card--addr .map-link{display:inline-block; margin-top:12px; font-weight:600; text-decoration:none; border-bottom:1.5px solid currentColor}

/* ======================================================
   CTA · karta (amber/cta variant=card)
   ====================================================== */
.cta-card-sec{padding:20px 0 0}
.cta-card{background:var(--honey); border-radius:var(--r-xl); padding:76px 72px; display:grid; grid-template-columns:1.3fr auto; gap:40px; align-items:center; position:relative; overflow:hidden; color:#23261F}
.cta-card-sec.is-wide .cta-card{padding-left:max(56px,calc((100% - 1480px)/2)); padding-right:max(56px,calc((100% - 1480px)/2))}
.cta-card::after{content:""; position:absolute; right:-60px; top:-120px; width:380px; height:380px; border-radius:50%; border:56px solid rgba(255,255,255,.17); pointer-events:none}
.cta-card h2{font-size:clamp(36px,4.4vw,64px); color:#23261F}
.cta-card p{font-size:19px; margin-top:16px; color:#3F3720; max-width:50ch}
.cta-card .kick{color:#3F3720}
.cta-card .kick::before{background:#23261F}
.cta-card-btns{display:flex; flex-direction:column; gap:12px; position:relative; z-index:1}

/* ---------- stopka ---------- */
.site-footer--pj{background:var(--moss-deep); color:var(--on-dark-muted); border-radius:var(--r-xl) var(--r-xl) 0 0; margin-top:110px; padding:80px 0 34px}
.site-footer--pj .foot-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr 1.2fr; gap:40px}
.site-footer--pj h3{font:700 15px/1 var(--font-body); letter-spacing:.12em; text-transform:uppercase; color:var(--on-dark); margin:0 0 18px}
.site-footer--pj ul{list-style:none; margin:0; padding:0; display:grid; gap:10px; font-size:15.5px}
.site-footer--pj a{color:var(--on-dark-muted); text-decoration:none}
.site-footer--pj a:hover{color:var(--on-dark)}
.site-footer--pj .logo{margin:0}
.site-footer--pj .logo-txt b{color:var(--on-dark)}
.site-footer--pj .logo-txt small{color:var(--on-dark-muted)}
.site-footer--pj .logo-mark{background:var(--honey)}
.site-footer--pj .foot-brand p{margin-top:22px; font-size:15.5px; line-height:1.7}
.foot-family a{display:flex; justify-content:space-between; gap:10px; padding:12px 16px; border-radius:var(--r); background:rgba(243,239,228,.06)}
.foot-family a span{opacity:.7; font-size:13px}
.site-footer--pj .footer-bottom{margin-top:56px; padding-top:24px; border-top:1px solid rgba(243,239,228,.12); display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; font-size:14px; color:var(--on-dark-muted)}

/* ======================================================
   PODSTRONY — zaokrąglone wyspy zamiast pasm na całą szerokość
   ====================================================== */
.page-hero, .apt-hero{margin:18px var(--gut-wide) 0; border-radius:var(--r-xl); overflow:hidden}
.page-hero--plain, .page-hero--plain::before{background:var(--moss-deep)}
.page-hero h1, .apt-hero h1{color:var(--on-dark)}
.page-hero .kicker, .apt-hero .kicker{color:var(--honey-hover)}
.booking-card, .contact-item, .contact-card, .amenity, .fact{border-radius:var(--r-lg)}
.booking-card{box-shadow:var(--shadow-pj); border:0}
.photos-grid a, .photo-tile, .room-card, .room-photo, .others .room-card{border-radius:var(--r-lg); overflow:hidden}
.apt-photos .photos-grid img, .photo-tile img{border-radius:0}
.engine-section{background:var(--linen)}
.engine-frame{background:#fff; border-radius:var(--r-xl); padding:clamp(12px,2vw,28px); box-shadow:0 0 0 1px var(--line)}
.amber-cookies-inner{border-radius:var(--r-lg)}
.amber-main--text .wp-block-post-content{max-width:860px}
.legal a{color:var(--moss-ink)}
.room-specs svg, .fact svg, .amenity svg, .contact-item svg{stroke:var(--moss)}
.cta-band--plain{margin-inline:var(--gut-wide); border-radius:var(--r-xl)}
.others{padding-bottom:20px}

/* ======================================================
   RESPONSIVE
   ====================================================== */
@media (max-width:1280px){
  .room-row{grid-template-columns:minmax(0,360px) 1fr 220px; gap:28px; padding-right:28px}
  .room-row-side{padding-left:28px}
}
@media (max-width:1080px){
  .island{grid-template-columns:1fr; padding:52px 36px 120px; min-height:0}
  .hero-island.is-wide .island{padding-left:36px; padding-right:36px}
  .island-visual{max-width:520px; width:100%; margin-inline:auto}
  .perk-row{grid-template-columns:repeat(2,1fr)}
  .room-row{grid-template-columns:minmax(0,300px) 1fr; padding:14px}
  .room-row-body{padding-right:14px}
  .room-row-side{grid-column:1/-1; flex-direction:row; align-items:center; flex-wrap:wrap; border-left:0; border-top:1px solid var(--line); padding:18px 12px 6px}
  .room-row-side .price{margin-right:auto}
  .dark-island{grid-template-columns:1fr}
  .dark-island-ph{min-height:360px; order:-1}
  .dark-island-txt{padding:48px 36px}
  .area-board .area, .reviews, .getting{grid-template-columns:1fr}
  .area-board .area{gap:40px}
  .area-side{position:static}
  .area-side .ph--arch{aspect-ratio:16/9; border-radius:var(--r-xl)}
  .quotes{grid-template-columns:1fr 1fr}
  .site-footer--pj .foot-grid{grid-template-columns:1fr 1fr}
  .cta-card{grid-template-columns:1fr; padding:56px 36px}
  .cta-card-sec.is-wide .cta-card{padding-left:36px; padding-right:36px}
}
@media (max-width:720px){
  .wrap-wide{padding-inline:10px}
  .lead{font-size:17px}
  .island{padding:40px 22px 110px; border-radius:var(--r-lg)}
  .hero-island.is-wide .island{padding-left:22px; padding-right:22px}
  .island .lead{font-size:17px}
  .island-visual{padding-left:22px}
  .chip--1{right:-4px; top:8%}
  .chip--2{display:none}
  .island-book{padding:0 16px; margin-top:-60px}
  .island-book .booking-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr); border-radius:var(--r-lg)}
  .island-book .booking-field{border-radius:var(--r); padding:8px 14px}
  .island-book .booking-field input, .island-book .booking-field select{font-size:15px}
  .island .kick{flex-wrap:wrap; justify-content:center; text-align:center}
  .island-book .booking-field + .booking-field{border-left:0}
  .island-book .booking-field:nth-child(3){grid-column:span 2}
  .island-book .booking-submit{grid-column:span 2}
  .island-book .booking-submit .btn{width:100%; border-radius:var(--r)}
  .perks-compact{padding-top:36px}
  .perk-row{gap:10px}
  .perk-c{flex-direction:column; align-items:flex-start; gap:12px; padding:18px}
  .perk-c i{width:48px; height:48px}
  .perk-c b{font-size:17px}
  .rooms-rows, .gallery-bento{padding-top:72px}
  .room-row{grid-template-columns:1fr; border-radius:var(--r-lg); padding:10px}
  .room-row-body{padding:6px 10px 0}
  .room-row-specs{gap:10px 16px}
  .room-row-specs li i{width:34px; height:34px}
  .room-row-side{padding:16px 10px 6px}
  .room-row-side .price{width:100%}
  .room-row-side .pbtn{flex:1}
  .dark-island, .scores, .cta-card{border-radius:var(--r-lg)}
  .dark-island-txt{padding:36px 22px}
  .dark-island-ph{min-height:260px}
  .dark-island .pfacts{grid-template-columns:1fr 1fr}
  .bento{grid-template-columns:1fr 1fr; grid-auto-rows:170px}
  .bento .b-wide{grid-column:span 2}
  .board-head{display:none}
  .board-row{grid-template-columns:86px 1fr; gap:14px; padding:20px 6px}
  a.board-row:hover{padding-left:6px}
  .board .go{display:none}
  .board .t{font-size:34px}
  .board .t small{display:block; margin:6px 0 0}
  .board h4{font-size:19px}
  .board-note{padding:0 6px}
  .quotes{grid-template-columns:1fr}
  .score-row b{font-size:60px}
  .scores{padding:32px 24px}
  .map{min-height:380px}
  .cta-card{padding:44px 24px}
  .cta-card-sec.is-wide .cta-card{padding-left:24px; padding-right:24px}
  .site-footer--pj .foot-grid{grid-template-columns:1fr}
  .sticky-pill span{display:none}
  .sticky-pill{padding-left:6px}
  .page-hero, .apt-hero{margin-inline:10px; border-radius:var(--r-lg)}
}

/* stopka: Nasze obiekty ([previo_obiekty]) */
.foot-family .pase-family{list-style:none; margin:0; padding:0; display:grid; gap:10px}
.foot-family .is-current a{background:rgba(243,239,228,.14); color:var(--on-dark)}

/* nagłówek: logo | menu na środku strony | CTA (2026-10-23) */
@media (min-width:1081px){
  .site-header .bar{display:grid; grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr); column-gap:1.25rem}
  .site-header .bar > .brand, .site-header .bar > .logo{justify-self:start; margin:0}
  .site-header .bar > .main-nav{justify-self:center; margin:0}
  .site-header .bar > .header-cta{justify-self:end; margin:0}
}
