  :root{
    /* === COLOR SCHEME — granat (BG) + złoto (akcent) ===
       Hierarchia: granat na ciemne tła i nagłówki na jasnym, złoto wyłącznie
       jako akcent (CTA, ramki, ikony, em italic). Wcześniejsza globalna podmiana
       --navy → złoto powodowała gold-on-gold w sekcjach, przywróciliśmy navy. */
    --navy:#0d1b2a;        /* dark navy — backgrounds (header/footer/CTA) + dark text */
    --navy-2:#142339;      /* slightly darker for hovers / gradients */
    --navy-3:#1a2a44;      /* navy accent for gradient-end stops */
    --gold:#c9a961;
    --gold-deep:#b48f3d;
    --cream:#f6f1e7;
    --cream-2:#efe7d4;
    --ink:#0c1320;
    --muted:#5a6473;
    --line:rgba(201,169,97,.28);
    --shadow-lg:0 28px 80px -30px rgba(10,22,40,.45);
    --shadow-md:0 14px 40px -16px rgba(10,22,40,.28);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html,body{background:var(--cream);color:var(--ink);font-family:"Cormorant Garamond",system-ui,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
  img{display:block;max-width:100%}
  a{color:inherit;text-decoration:none}
  .wrap{max-width:1320px;margin:0 auto;padding:0 28px}
  .eyebrow{font-family:"Cormorant Garamond";font-size:11px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-deep);display:inline-flex;align-items:center;gap:10px}
  .eyebrow::before{content:"";width:24px;height:1px;background:var(--gold-deep)}
  h1,h2,h3,.serif{font-family:"Cormorant Garamond",serif;font-weight:400;letter-spacing:-.01em;color:var(--navy)}
  h1{font-size:clamp(40px,5.4vw,76px);line-height:1.02;font-weight:300}
  h2{font-size:clamp(30px,3.6vw,50px);line-height:1.05;font-weight:400}
  h3{font-size:clamp(20px,1.6vw,24px);line-height:1.2;font-weight:500}
  p{color:#374151}
  em{font-style:italic;color:var(--gold-deep);font-weight:400}

  /* ============== HEADER (KACPER — zawsze "stuck" style, bez animacji) ==============
     Klient: header ma zawsze wyglądać jak po przewinięciu — solidna belka full-width,
     bez floating pill-shape. Stan-bazowy = poprzedni stan-stuck.
     Klasa .is-stuck pozostaje w DOM (JS dalej ją togluje), ale wizualnie nie zmienia
     niczego — zachowana dla wstecznej kompatybilności hooków/customizerów. */
  .ec-header{position:fixed;top:0;left:0;right:0;z-index:9999;padding:0}
  /* Wymus, zeby kontrolki Leaflet nigdy nie nachodzily na header */
  .leaflet-top,.leaflet-bottom{z-index:500 !important}
  .leaflet-control{z-index:500 !important}
  .ec-header__inner{
    max-width:none;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;
    background:var(--navy,#0d1b2a);
    border:0;border-bottom:1px solid rgba(255,255,255,.10);
    border-radius:0;
    padding:14px 28px;
    box-shadow:0 1px 0 rgba(10,22,40,.08), 0 12px 30px -22px rgba(10,22,40,.28);
  }
  .ec-header__logo{display:flex;align-items:center;gap:10px}
  .ec-header__logo img{height:32px;width:auto}
  .ec-header__logo .lite{display:block}
  .ec-header__logo .dark{display:none}
  .ec-nav{display:flex;align-items:center;gap:6px}
  .ec-nav a{color:rgba(255,255,255,.92);font-size:13px;font-weight:500;letter-spacing:.02em;padding:10px 14px;border-radius:999px}
  .ec-nav a:hover{color:#fff;background:rgba(255,255,255,.12)}
  .ec-header__cta{display:flex;align-items:center;gap:10px}
  /* Button system — unified gold pill (klient: jeden uniwersalny styl CTA na całej stronie).
     .ec-pill            — PRIMARY (gold bg, navy text — works on dark and light backgrounds)
     .ec-pill--ghost / --dark / --bordered  — variant aliases, wszystkie wyglądają jak primary,
                           klient chce ujednolicony styl. Klasy zachowane dla wstecznej
                           kompatybilności (PHP/patterns), ale wizualnie identyczne. */
  .ec-pill,
  .ec-pill--ghost,
  .ec-pill--dark,
  .ec-pill--bordered{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.02em;background:var(--gold) !important;color:var(--navy) !important;border:1px solid transparent !important;cursor:pointer;font-family:"Cormorant Garamond",serif;transition:.2s}
  .ec-pill:hover,
  .ec-pill--ghost:hover,
  .ec-pill--dark:hover,
  .ec-pill--bordered:hover{background:var(--gold-deep) !important;color:#fff !important}
  /* CTA per section — added per client feedback (każda sekcja strony głównej musi mieć CTA) */
  .ec-section-cta{text-align:center;margin:40px auto 0;padding:0 20px}
  .ec-section-cta .ec-pill{margin:0 auto}
  .ec-lang{font-size:12px;font-weight:600;letter-spacing:.18em;color:rgba(255,255,255,.82);padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.22)}

  /* .is-stuck — wizualnie no-op (stan bazowy = stuck). Klasa zostawiona dla
     ewentualnych integracji JS/customizerów które na nią patrzą. */

  /* ============== HERO — VIDEO BG (KACPER) ==============
     Statyczna sekcja, zero animacji. Jedyny "ruch" to YouTube w tle. */
  .ec-hero{position:relative;padding:0 18px 0;margin-top:0}
  .ec-hero__frame{position:relative;border-radius:0 0 32px 32px;overflow:hidden;height:min(92vh,820px);min-height:600px;background:#0c1320;box-shadow:var(--shadow-lg)}
  .ec-hero__video{position:absolute;inset:0;overflow:hidden;pointer-events:none}
  /* iframe skalowany do pełnego pokrycia (16:9) — hack: nadwymiar pokrywa marki/kontrolki YT */
  .ec-hero__video iframe{
    position:absolute;top:50%;left:50%;
    width:max(100%, calc(100vh * 16 / 9));
    height:max(100%, calc(100vw * 9 / 16));
    min-width:177.77vh; /* 100vh*16/9 */
    min-height:56.25vw; /* 100vw*9/16 */
    transform:translate(-50%,-50%);
    border:0;pointer-events:none;
  }
  /* Overlay: lekkie przyciemnienie u góry, mocniejsze na dole — czytelność tekstu na każdej klatce video */
  .ec-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,22,40,.28) 0%,rgba(10,22,40,.30) 40%,rgba(10,22,40,.78) 100%);z-index:2}
  /* Treść hero — bezpośrednio na video, bez karty (powrót do układu sprzed rebrandu) */
  .ec-hero__content{position:absolute;left:0;right:0;bottom:0;padding:64px clamp(32px,6vw,80px);z-index:3;color:#fff;max-width:980px}
  .ec-hero__content .eyebrow{color:var(--gold)}
  .ec-hero__content .eyebrow::before{background:var(--gold)}
  .ec-hero__content h1{color:#fff;max-width:880px;margin-top:18px;font-size:clamp(34px,4.4vw,58px);line-height:1.05;text-shadow:0 2px 8px rgba(0,0,0,.45)}
  .ec-hero__content h1 em{color:var(--gold);font-weight:400;font-style:italic;font-family:"Cormorant Garamond",serif}
  .ec-hero__content p{color:#faf7f0;max-width:580px;margin-top:16px;font-size:17px;line-height:1.6;text-shadow:0 2px 8px rgba(0,0,0,.45)}
  .ec-hero__ctaRow{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
  /* Hero CTA — ec-pill--ghost ujednolicony jako gold pill (patrz: button system). */

  /* ============== BOOKING WIDGET (z piktogramami) ============== */
  .ec-booking{position:relative;margin:-72px auto 0;max-width:1180px;z-index:5;padding:0 28px}
  .ec-booking__card{background:#fff;border-radius:24px;padding:14px;display:grid;grid-template-columns:1.4fr 1.4fr 1.2fr 1fr auto;gap:6px;align-items:center;box-shadow:var(--shadow-lg);border:1px solid rgba(10,22,40,.04)}
  .ec-booking__field{padding:14px 18px;display:flex;align-items:center;gap:14px;border-right:1px solid #f0eadb}
  .ec-booking__field:nth-last-child(2){border-right:0}
  .ec-booking__ico{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#f7efdb,#fbf6e8);color:var(--gold-deep);display:flex;align-items:center;justify-content:center;flex-shrink:0}
  .ec-booking__col{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
  .ec-booking__label{font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep)}
  .ec-booking__field select,.ec-booking__field input{border:0;background:transparent;font-family:"Cormorant Garamond";font-size:14.5px;font-weight:500;color:var(--ink);outline:none;padding:0;width:100%;cursor:pointer}
  .ec-booking__btn{margin-left:6px;background:var(--gold);color:var(--navy);border:0;border-radius:999px;padding:18px 26px;font-family:"Cormorant Garamond";font-weight:600;font-size:14px;letter-spacing:.04em;cursor:pointer;display:inline-flex;align-items:center;gap:10px;transition:.2s}
  .ec-booking__btn:hover{background:var(--gold-deep);color:#fff;transform:translateY(-1px)}

  /* ============== REKOMENDOWANE 3x3 ============== */
  .ec-featured{padding:96px 0 80px}
  .ec-featured__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px;flex-wrap:wrap}
  .ec-featured__head .lead{max-width:560px}
  .ec-featured__head .cta{display:flex;gap:10px;align-items:center}
  .ec-featured__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
  .ec-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--shadow-md);transition:.3s;border:1px solid rgba(10,22,40,.04)}
  .ec-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
  .ec-card__img{position:relative;height:300px;background-size:cover;background-position:center}
  .ec-card__badge{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);color:var(--navy);font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:7px 12px;border-radius:999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
  .ec-card__price{position:absolute;bottom:14px;left:14px;background:rgba(10,22,40,.78);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:"Cormorant Garamond",serif;font-size:20px;font-weight:500;padding:9px 14px;border-radius:12px}
  .ec-card__body{padding:20px 22px 24px}
  .ec-card__loc{font-size:11px;color:var(--gold-deep);font-weight:600;letter-spacing:.16em;text-transform:uppercase}
  .ec-card__title{font-family:"Cormorant Garamond",serif;font-size:20px;font-weight:500;color:var(--navy);margin-top:6px;line-height:1.2}
  .ec-card__meta{display:flex;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid #f0eadb;font-size:12.5px;color:#5a6473}
  .ec-card__meta span{display:inline-flex;align-items:center;gap:5px}
  .ec-featured__bottom{margin-top:48px;text-align:center}
  /* Paginacja Rekomendowanych ofert (KACPER) */
  .ec-featured__pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:48px}
  .ec-featured__page{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:40px;height:40px;padding:0 12px;
    border-radius:999px;border:1px solid transparent;
    color:var(--navy);font-family:"Cormorant Garamond",serif;font-size:14px;font-weight:500;
    background:var(--gold);transition:.2s;
  }
  .ec-featured__page:hover{background:var(--gold-deep);color:#fff}
  .ec-featured__page.is-current{background:var(--gold-deep);color:#fff}
  .ec-featured__page.is-disabled{opacity:.35;cursor:default}

  /* ============== WYRÓŻNIONA OFERTA — 4 karty (KACPER) ==============
     Sekcja "Wyróżniona oferta" — flagowe projekty 3D w stylu karty
     "Penthouse z prywatnym dachem". Dużo whitespace, luksusowy minimalizm. */
  .ec-featuredOffer{padding:120px 0 80px}
  .ec-featuredOffer__head{text-align:center;max-width:720px;margin:0 auto 64px}
  .ec-featuredOffer__head .eyebrow{justify-content:center}
  .ec-featuredOffer__head h2{margin-top:14px}
  .ec-featuredOffer__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-featuredOffer__head p{margin-top:18px;color:#3a4555;font-size:16px;line-height:1.7}
  .ec-featuredOffer__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
  .ec-featuredCard{background:#fff;border-radius:22px;overflow:hidden;border:1px solid rgba(201,169,97,.18);box-shadow:var(--shadow-md);display:flex;flex-direction:column}
  .ec-featuredCard__img{position:relative;height:240px;background-size:cover;background-position:center}
  .ec-featuredCard__badge{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.95);color:var(--gold-deep);font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:7px 12px;border-radius:999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
  .ec-featuredCard__price{position:absolute;bottom:14px;left:14px;background:rgba(180,143,61,.92);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:"Cormorant Garamond",serif;font-size:16px;font-weight:500;padding:8px 14px;border-radius:10px}
  .ec-featuredCard__body{padding:24px 22px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
  .ec-featuredCard__loc{font-size:11px;color:var(--gold-deep);font-weight:600;letter-spacing:.16em;text-transform:uppercase}
  .ec-featuredCard__title{font-family:"Cormorant Garamond",serif;font-size:18px;font-weight:500;color:var(--gold-deep);line-height:1.25;min-height:2.5em}
  .ec-featuredCard__meta{display:flex;gap:14px;padding-top:12px;border-top:1px solid rgba(201,169,97,.22);font-size:13px;color:#5a6473}
  .ec-featuredCard__cta{margin-top:auto;align-self:flex-start;padding:9px 16px;font-size:12px}
  .ec-featuredOffer__note{margin:36px auto 0;text-align:center;color:#8a93a3;font-size:12px;letter-spacing:.04em}
  @media (max-width:1100px){.ec-featuredOffer__grid{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:560px){.ec-featuredOffer__grid{grid-template-columns:1fr}}

  /* ============== MAPKA PLACEHOLDER ============== */
  .ec-map{padding:60px 0}
  .ec-map__head{text-align:center;margin-bottom:36px}
  .ec-map__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-map__head p{margin-top:14px;color:#5a6473;max-width:560px;margin-left:auto;margin-right:auto}
  .ec-map__placeholder{position:relative;height:560px;border-radius:24px;overflow:hidden;background:linear-gradient(135deg,#dde7ec,#c8d6df);display:flex;align-items:center;justify-content:center;border:1px dashed rgba(10,22,40,.18)}
  .ec-map__placeholder::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%, var(--gold) 0 4px, transparent 5px),radial-gradient(circle at 35% 55%, var(--gold) 0 4px, transparent 5px),radial-gradient(circle at 50% 38%, var(--gold) 0 4px, transparent 5px),radial-gradient(circle at 62% 62%, var(--gold) 0 4px, transparent 5px),radial-gradient(circle at 78% 45%, var(--gold) 0 4px, transparent 5px),radial-gradient(circle at 86% 70%, var(--gold) 0 4px, transparent 5px),radial-gradient(circle at 28% 75%, var(--gold) 0 4px, transparent 5px);opacity:.6}
  .ec-map__note{position:relative;z-index:2;background:rgba(255,255,255,.92);padding:24px 32px;border-radius:18px;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(10,22,40,.06)}
  .ec-map__note .ic{display:inline-flex;width:48px;height:48px;border-radius:50%;background:var(--cream-2);color:var(--gold-deep);align-items:center;justify-content:center;margin-bottom:12px}
  .ec-map__note h3{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:20px;font-weight:500}
  .ec-map__note p{margin-top:6px;color:#5a6473;font-size:13.5px}
  .ec-map__note small{display:block;margin-top:10px;color:#8a93a3;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}

  /* ============== KIM JESTEŚMY ============== */
  .ec-about{padding:120px 0}
  .ec-about__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}
  .ec-about__text h2 em{color:var(--gold-deep);font-style:italic}
  .ec-about__text p{margin-top:22px;font-size:16.5px;line-height:1.75;color:#3a4555}
  .ec-about__chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
  .ec-chip{padding:9px 16px;border:1px solid var(--line);background:#fff;border-radius:999px;font-size:12.5px;color:var(--navy);font-weight:500}
  .ec-about__cta{margin-top:36px;display:flex;gap:12px;flex-wrap:wrap}
  /* .ec-pill--dark / .ec-pill--bordered — ujednolicone jako gold pill (patrz: button system). */
  .ec-about__visual{position:relative;height:640px}
  .ec-about__photo{position:absolute;border-radius:24px;overflow:hidden;background-size:cover;background-position:center;box-shadow:var(--shadow-lg)}
  .ec-about__photo--1{top:0;left:0;width:65%;height:78%;border-top-left-radius:200px;border-top-right-radius:200px}
  .ec-about__photo--2{bottom:0;right:0;width:55%;height:50%}
  .ec-about__badge{position:absolute;bottom:30px;left:18%;background:#fff;border-radius:18px;padding:18px 22px;box-shadow:var(--shadow-md);display:flex;gap:14px;align-items:center;z-index:3}
  .ec-about__badge .num{font-family:"Cormorant Garamond",serif;font-size:38px;font-weight:500;color:var(--gold-deep);line-height:1}
  .ec-about__badge .lbl{font-size:11.5px;color:#5a6473;letter-spacing:.08em;line-height:1.3}

  /* ============== TRZY ŚCIEŻKI ============== */
  .ec-paths{padding:80px 0}
  .ec-paths__head{text-align:center;margin-bottom:48px}
  .ec-paths__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-paths__head p{max-width:560px;margin:18px auto 0;color:#3a4555}
  .ec-paths__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .ec-path{background:#fff;border-radius:24px;padding:36px 32px;transition:.3s;border:1px solid rgba(10,22,40,.04);position:relative;overflow:hidden}
  .ec-path:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
  .ec-path__num{font-family:"Cormorant Garamond",serif;font-size:60px;font-weight:300;color:var(--gold);line-height:1;opacity:.32;position:absolute;top:24px;right:32px}
  .ec-path__icon{width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,var(--cream-2),#fff);display:flex;align-items:center;justify-content:center;color:var(--gold-deep);margin-bottom:24px}
  .ec-path h3{font-family:"Cormorant Garamond",serif;font-size:24px;font-weight:500;margin-bottom:12px}
  .ec-path p{color:#5a6473;font-size:15px;line-height:1.65}
  .ec-path__link{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-size:13px;font-weight:600;color:var(--navy);letter-spacing:.04em}
  .ec-path__link svg{transition:.2s}
  .ec-path:hover .ec-path__link svg{transform:translateX(4px)}

  /* ============== APARTAMENTY — FULL-BLEED BANNER ============== */
  .ec-apartHead{padding:80px 0 40px}
  .ec-apartHead__inner{max-width:880px;margin:0 auto;text-align:center}
  .ec-apartHead__inner .eyebrow{justify-content:center;display:inline-flex}
  .ec-apartHead__inner h2{margin-top:18px}
  .ec-apartHead__inner h2 em{color:var(--gold-deep);font-style:italic}
  .ec-apartHead__inner p{margin-top:18px;color:#3a4555;font-size:16.5px;line-height:1.7;max-width:680px;margin-left:auto;margin-right:auto}
  .ec-apartBanner{position:relative;margin:0 18px 40px;border-radius:32px;overflow:hidden;height:min(78vh,720px);min-height:520px;background:#c9a961;box-shadow:var(--shadow-lg)}
  .ec-apartBanner__bg{position:absolute;inset:0;background-image:url('../img/photos/img%20(5).jpg');background-size:cover;background-position:center}
  .ec-apartBanner__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(10,22,40,.58) 0%,rgba(10,22,40,.18) 50%,rgba(10,22,40,.62) 100%)}
  .ec-apartBanner__content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:64px clamp(32px,5vw,72px);color:#fff}
  .ec-apartBanner__top{position:absolute;top:0;left:0;right:0;padding:36px clamp(32px,5vw,72px);display:flex;justify-content:space-between;align-items:flex-start}
  .ec-apartBanner__tag{font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:600}
  .ec-apartBanner__counter{font-family:"Cormorant Garamond",serif;font-size:14px;letter-spacing:.18em;color:rgba(255,255,255,.7)}
  .ec-apartBanner__counter b{color:#fff;font-weight:500}
  .ec-apartBanner__content h2{color:#fff;font-size:clamp(34px,4.6vw,64px);max-width:760px;font-weight:300}
  .ec-apartBanner__content h2 em{color:var(--gold);font-style:italic;font-weight:300}
  .ec-apartBanner__row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-top:32px;flex-wrap:wrap}
  .ec-apartBanner__feats{display:flex;gap:24px;flex-wrap:wrap}
  .ec-apartBanner__feat{display:flex;flex-direction:column;gap:4px}
  .ec-apartBanner__feat .num{font-family:"Cormorant Garamond",serif;font-size:32px;font-weight:500;color:var(--gold)}
  .ec-apartBanner__feat .lbl{font-size:12px;color:rgba(255,255,255,.78);letter-spacing:.06em}
  .ec-apartBanner__cta{display:flex;gap:12px}

  /* ============== OPINIE (carousel B) ============== */
  .ec-reviews{padding:96px 0}
  .ec-reviews__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:40px;flex-wrap:wrap}
  .ec-reviews__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-reviews__head p{max-width:420px;color:#5a6473}
  .ec-reviews__nav{display:flex;gap:10px}
  .ec-reviews__navBtn{width:46px;height:46px;border-radius:50%;border:1px solid rgba(10,22,40,.14);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--navy);transition:.2s}
  .ec-reviews__navBtn:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
  .ec-reviews__viewport{overflow:hidden}
  .ec-reviews__track{display:flex;gap:24px;transition:transform .55s cubic-bezier(.65,0,.35,1)}
  .ec-review{flex:0 0 calc((100% - 48px)/3);background:#fff;border-radius:22px;padding:32px 30px;border:1px solid rgba(10,22,40,.04);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:16px}
  .ec-review__head{display:flex;justify-content:space-between;align-items:center}
  .ec-review__quote{color:var(--gold);font-family:"Cormorant Garamond",serif;font-size:42px;line-height:1;font-weight:500}
  .ec-review__stars{display:flex;gap:2px;color:var(--gold)}
  .ec-review__text{color:#3a4555;font-size:14.5px;line-height:1.7;flex:1}
  .ec-review__person{display:flex;align-items:center;gap:14px;padding-top:18px;border-top:1px solid #f0eadb}
  .ec-review__avatar{width:46px;height:46px;border-radius:50%;background:var(--cream-2);color:var(--gold-deep);display:flex;align-items:center;justify-content:center;font-family:"Cormorant Garamond",serif;font-weight:600;font-size:18px;flex-shrink:0}
  .ec-review__name{font-weight:600;color:var(--navy);font-size:14.5px;line-height:1.2}
  .ec-review__src{font-size:11.5px;color:#8a93a3;letter-spacing:.06em;margin-top:2px;display:inline-flex;align-items:center;gap:5px}
  .ec-reviews__dots{display:flex;justify-content:center;gap:8px;margin-top:28px}
  .ec-reviews__dot{width:8px;height:8px;border-radius:50%;background:rgba(10,22,40,.16);border:0;cursor:pointer;padding:0;transition:.2s}
  .ec-reviews__dot.is-active{background:var(--gold);width:24px;border-radius:4px}

  /* ============== SEO PLACEHOLDER ============== */
  .ec-seo{padding:60px 0}
  .ec-seo__box{background:#fff;border:2px dashed rgba(10,22,40,.18);border-radius:20px;min-height:440px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 32px;text-align:center}
  .ec-seo__plug{width:60px;height:60px;border-radius:14px;background:var(--cream-2);color:var(--gold-deep);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
  .ec-seo__box h3{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:22px;font-weight:500}
  .ec-seo__box p{color:#5a6473;margin-top:8px;max-width:520px;font-size:14.5px}
  .ec-seo__box small{margin-top:18px;color:#8a93a3;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}

  /* ============== BLOG GRID ============== */
  .ec-blog{padding:80px 0}
  .ec-blog__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:40px;flex-wrap:wrap}
  .ec-blog__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-blog__head p{max-width:420px;color:#5a6473}
  .ec-blog__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
  .ec-post{background:#fff;border-radius:22px;overflow:hidden;border:1px solid rgba(10,22,40,.04);box-shadow:var(--shadow-md);transition:.3s;display:flex;flex-direction:column}
  .ec-post:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
  .ec-post__img{height:240px;background-size:cover;background-position:center;position:relative}
  .ec-post__cat{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.94);color:var(--navy);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;border-radius:999px}
  .ec-post__body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:12px;flex:1}
  .ec-post__meta{display:flex;align-items:center;gap:10px;font-size:12px;color:#8a93a3;letter-spacing:.04em}
  .ec-post__meta .dot{width:3px;height:3px;border-radius:50%;background:#cbd2dc}
  .ec-post__title{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:21px;line-height:1.25;font-weight:500}
  .ec-post__excerpt{color:#5a6473;font-size:14px;line-height:1.65;flex:1}
  .ec-post__more{margin-top:6px;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--navy)}

  /* ============== TYPY — PIKTOGRAMY ============== */
  .ec-types{padding:96px 0}
  .ec-types__head{text-align:center;margin-bottom:48px}
  .ec-types__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-types__head p{max-width:560px;margin:14px auto 0;color:#5a6473}
  .ec-types__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
  .ec-type{background:#fff;border-radius:22px;padding:36px 24px 28px;text-align:center;border:1px solid rgba(10,22,40,.05);transition:.3s;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:14px}
  .ec-type:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--gold)}
  .ec-type__icon{width:78px;height:78px;border-radius:20px;background:linear-gradient(135deg,#fbf6e8,var(--cream-2));color:var(--gold-deep);display:flex;align-items:center;justify-content:center;transition:.3s}
  .ec-type:hover .ec-type__icon{background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff;transform:scale(1.05)}
  .ec-type__title{font-family:"Cormorant Garamond",serif;font-size:20px;font-weight:500;color:var(--navy)}
  .ec-type__count{font-size:12px;color:#8a93a3;letter-spacing:.06em}
  .ec-type__arrow{margin-top:6px;display:inline-flex;align-items:center;gap:5px;color:var(--gold-deep);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}

  /* ============== KONTAKT + NEWSLETTER (navy split) ============== */
  .ec-contact{padding:80px 18px}
  .ec-contact__panel{display:grid;grid-template-columns:1fr 1.05fr;border-radius:32px;overflow:hidden;box-shadow:var(--shadow-lg);min-height:660px;background:var(--navy)}
  .ec-contact__left{padding:64px 56px;color:#fff;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(160deg,var(--navy) 0%,var(--navy-3) 100%);position:relative}
  .ec-contact__left::before{content:"";position:absolute;top:-80px;right:-60px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(212,177,99,.2),transparent 70%)}
  .ec-contact__left .eyebrow{color:var(--gold);position:relative;z-index:2}
  .ec-contact__left .eyebrow::before{background:var(--gold)}
  .ec-contact__left h2{color:#fff;margin-top:18px;font-weight:300;position:relative;z-index:2}
  .ec-contact__left h2 em{color:var(--gold);font-weight:300}
  .ec-contact__left p{color:rgba(255,255,255,.82);margin-top:18px;font-size:15.5px;line-height:1.7;max-width:480px;position:relative;z-index:2}
  .ec-contact__form{margin-top:32px;display:flex;flex-direction:column;gap:14px;position:relative;z-index:2}
  .ec-contact__row{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:10px}
  .ec-contact__input{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:15px 16px;color:#fff;font-family:"Cormorant Garamond";font-size:14.5px;outline:none;transition:.2s;width:100%}
  .ec-contact__input:focus{background:rgba(255,255,255,.14);border-color:var(--gold)}
  .ec-contact__input::placeholder{color:rgba(255,255,255,.52)}
  .ec-contact__textarea{min-height:110px;resize:vertical;font-family:"Cormorant Garamond"}
  .ec-contact__check{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:rgba(255,255,255,.78);line-height:1.5;cursor:pointer}
  .ec-contact__check input{accent-color:var(--gold);margin-top:3px}
  .ec-contact__check a{color:var(--gold);text-decoration:underline}
  .ec-contact__submit{margin-top:8px;background:var(--gold);color:var(--navy);border:0;border-radius:999px;padding:18px 28px;font-family:"Cormorant Garamond";font-weight:700;font-size:14px;letter-spacing:.04em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s;align-self:flex-start}
  .ec-contact__submit:hover{background:var(--gold-deep);color:#fff;transform:translateY(-1px)}
  .ec-contact__right{position:relative;background-image:url('../img/photos/img%20(9).jpg');background-size:cover;background-position:center}
  .ec-contact__right::after{content:"";position:absolute;inset:0;background:linear-gradient(225deg,rgba(10,22,40,.1) 0%,rgba(10,22,40,.4) 100%)}
  .ec-contact__info{position:relative;z-index:2;height:100%;padding:48px;display:flex;flex-direction:column;justify-content:flex-end;gap:18px;color:#fff}
  .ec-contact__infoCard{background:rgba(255,255,255,.92);color:var(--navy);padding:28px 30px;border-radius:18px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md)}
  .ec-contact__infoCard h4{font-family:"Cormorant Garamond",serif;font-size:18px;font-weight:500;margin-bottom:14px}
  .ec-contact__infoRow{display:flex;align-items:center;gap:12px;padding:8px 0;font-size:14px;color:#1f2a3a;font-weight:500}
  .ec-contact__infoRow .ic{width:36px;height:36px;border-radius:10px;background:var(--cream-2);color:var(--gold-deep);display:flex;align-items:center;justify-content:center;flex-shrink:0}

  /* ============== FOOTER ============== */
  .ec-footer{background:var(--navy);color:#fff;padding:80px 0 32px;margin-top:60px}
  .ec-footer__top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.08)}
  .ec-footer__brand img{height:38px;margin-bottom:18px}
  .ec-footer__brand p{color:rgba(255,255,255,.66);font-size:14px;line-height:1.7}
  .ec-footer__col h4{font-family:"Cormorant Garamond";font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;font-weight:600}
  .ec-footer__col a{display:block;color:rgba(255,255,255,.74);font-size:14px;padding:5px 0;transition:.2s}
  .ec-footer__col a:hover{color:var(--gold)}
  .ec-footer__bottom{padding-top:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;color:rgba(255,255,255,.5);font-size:12.5px}
  .ec-footer__social{display:flex;gap:10px}
  .ec-footer__social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);padding:0}
  .ec-footer__social a:hover{background:var(--gold);border-color:var(--gold);color:var(--navy)}

  /* ============== SUBHERO (header podstron) ============== */
  .ec-subhero{padding:0 18px;margin-top:0}
  .ec-subhero__frame{position:relative;border-radius:0 0 32px 32px;overflow:hidden;height:min(72vh,640px);min-height:480px;background:#c9a961;box-shadow:var(--shadow-lg)}
  .ec-subhero__bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.02)}
  .ec-subhero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,22,40,.55) 0%,rgba(10,22,40,.35) 38%,rgba(10,22,40,.78) 100%)}
  .ec-subhero__content{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);padding:40px clamp(32px,6vw,80px);z-index:3;color:#fff;text-align:center;display:flex;flex-direction:column;align-items:center}
  .ec-subhero__content .eyebrow{color:var(--gold);justify-content:center;display:inline-flex}
  .ec-subhero__content .eyebrow::before{background:var(--gold)}
  .ec-subhero__content h1{color:#fff;max-width:880px;margin:18px auto 0;font-size:clamp(36px,5vw,68px);font-weight:300;line-height:1.05;text-align:center}
  .ec-subhero__content h1 em{color:var(--gold);font-weight:300;font-style:italic}
  .ec-subhero__content p{color:rgba(255,255,255,.88);max-width:640px;margin:18px auto 0;font-size:17px;line-height:1.6;text-align:center}

  /* ============== KUP — USP (4 powody) ============== */
  .ec-usp{padding:120px 28px 60px;max-width:1320px;margin:0 auto}
  .ec-usp__head{max-width:760px;margin-bottom:56px}
  .ec-usp__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-usp__head p{margin-top:18px;font-size:16.5px;line-height:1.7;color:#3a4555;max-width:620px}
  .ec-usp__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
  .ec-usp__card{background:#fff;border-radius:22px;padding:34px 28px 32px;border:1px solid rgba(10,22,40,.05);transition:.3s;display:flex;flex-direction:column;gap:14px}
  .ec-usp__card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--gold)}
  .ec-usp__ico{width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,#fbf6e8,var(--cream-2));color:var(--gold-deep);display:flex;align-items:center;justify-content:center;margin-bottom:6px;transition:.3s}
  .ec-usp__card:hover .ec-usp__ico{background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff}
  .ec-usp__card h3{font-family:"Cormorant Garamond",serif;font-size:20px;font-weight:500;color:var(--navy);line-height:1.25}
  .ec-usp__card p{color:#5a6473;font-size:14.5px;line-height:1.65}

  /* ============== KUP — REGIONS (6 lokalizacji) ============== */
  .ec-regions{padding:80px 0}
  .ec-regions__head{text-align:center;margin-bottom:48px}
  .ec-regions__head .eyebrow{justify-content:center;display:inline-flex}
  .ec-regions__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-regions__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .ec-region{position:relative;display:block;height:340px;border-radius:22px;overflow:hidden;color:#fff;box-shadow:var(--shadow-md);transition:.35s}
  .ec-region:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
  .ec-region__bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:.6s}
  .ec-region:hover .ec-region__bg{transform:scale(1.05)}
  .ec-region__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,22,40,0) 30%,rgba(10,22,40,.85) 100%)}
  .ec-region__price{position:absolute;top:14px;right:14px;background:rgba(255,255,255,.94);color:var(--navy);font-family:"Cormorant Garamond",serif;font-size:14px;font-weight:500;padding:7px 14px;border-radius:999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2}
  .ec-region__content{position:absolute;left:0;right:0;bottom:0;padding:24px 26px 26px;z-index:2}
  .ec-region__content h3{font-family:"Cormorant Garamond",serif;font-size:24px;font-weight:500;color:#fff;line-height:1.1}
  .ec-region__content p{color:rgba(255,255,255,.82);font-size:13.5px;line-height:1.55;margin-top:8px}

  /* ============== KUP — BUYTYPES (4 typy) ============== */
  .ec-buyTypes{padding:96px 28px;max-width:1320px;margin:0 auto}
  .ec-buyTypes__head{text-align:center;margin-bottom:48px}
  .ec-buyTypes__head .eyebrow{justify-content:center;display:inline-flex}
  .ec-buyTypes__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-buyTypes__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .ec-buyType{background:#fff;border-radius:22px;padding:36px 28px 32px;text-align:left;border:1px solid rgba(10,22,40,.05);transition:.3s;display:flex;flex-direction:column;gap:10px;color:inherit}
  .ec-buyType:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--gold)}
  .ec-buyType__ico{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,#fbf6e8,var(--cream-2));color:var(--gold-deep);display:flex;align-items:center;justify-content:center;margin-bottom:8px;transition:.3s}
  .ec-buyType:hover .ec-buyType__ico{background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff;transform:scale(1.05)}
  .ec-buyType h3{font-family:"Cormorant Garamond",serif;font-size:22px;font-weight:500;color:var(--navy)}
  .ec-buyType__count{font-size:12px;color:var(--gold-deep);font-weight:600;letter-spacing:.14em;text-transform:uppercase}
  .ec-buyType p{color:#5a6473;font-size:14px;line-height:1.6;margin-top:4px}

  /* ============== KUP — BUYPROCESS (4 kroki) ============== */
  .ec-buyProcess{padding:96px 0;background:linear-gradient(180deg,transparent 0%,#faf6ec 50%,transparent 100%)}
  .ec-buyProcess__head{text-align:center;margin-bottom:64px;max-width:680px;margin-left:auto;margin-right:auto}
  .ec-buyProcess__head .eyebrow{justify-content:center;display:inline-flex}
  .ec-buyProcess__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-buyProcess__head p{margin-top:18px;color:#5a6473;font-size:16px;line-height:1.65}
  .ec-buyProcess__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative}
  .ec-buyProcess__line{display:none}
  .ec-bStep{background:#fff;border-radius:22px;padding:32px 28px 30px;border:1px solid rgba(10,22,40,.05);box-shadow:var(--shadow-md);position:relative;display:flex;flex-direction:column;gap:14px;transition:.3s}
  .ec-bStep:hover{transform:translateY(-4px)}
  .ec-bStep__circle{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff;font-family:"Cormorant Garamond",serif;font-size:20px;font-weight:500;display:flex;align-items:center;justify-content:center;letter-spacing:.04em;box-shadow:0 8px 20px -8px rgba(180,143,61,.5)}
  .ec-bStep h3{font-family:"Cormorant Garamond",serif;font-size:20px;font-weight:500;color:var(--navy);line-height:1.2}
  .ec-bStep p{color:#5a6473;font-size:14.5px;line-height:1.65}

  /* ============== KUP — COSTS (tabela) ============== */
  .ec-costs{padding:96px 28px;max-width:1320px;margin:0 auto}
  .ec-costs__head{max-width:760px;margin-bottom:48px}
  .ec-costs__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-costs__head p{margin-top:18px;color:#3a4555;font-size:16px;line-height:1.7}
  .ec-costs__table{background:#fff;border-radius:22px;overflow:hidden;border:1px solid rgba(10,22,40,.06);box-shadow:var(--shadow-md)}
  .ec-costs__row{display:grid;grid-template-columns:1.4fr .8fr 2fr;gap:24px;padding:20px 28px;border-bottom:1px solid #f0eadb;align-items:center;transition:.2s}
  .ec-costs__row:last-child{border-bottom:0}
  .ec-costs__row:hover:not(.is-head):not(.is-total){background:rgba(246,241,231,.4)}
  .ec-costs__row.is-head{background:var(--navy);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:18px 28px}
  .ec-costs__row.is-head div{color:rgba(255,255,255,.86)}
  .ec-costs__row.is-total{background:linear-gradient(90deg,#fbf6e8,var(--cream-2));font-weight:600}
  .ec-costs__row.is-total .ec-costs__pct{color:var(--gold-deep);font-size:18px}
  .ec-costs__name{font-weight:600;color:var(--navy);font-size:15px}
  .ec-costs__pct{font-family:"Cormorant Garamond",serif;font-size:17px;font-weight:500;color:var(--gold-deep)}
  .ec-costs__desc{font-size:14px;color:#5a6473;line-height:1.55}
  .ec-costs__note{margin-top:18px;color:#8a93a3;font-size:13px;font-style:italic}

  /* ============== KUP — FINANCING (2 opcje) ============== */
  .ec-financing{padding:96px 0;background:linear-gradient(180deg,transparent 0%,#faf6ec 50%,transparent 100%)}
  .ec-financing__head{text-align:center;margin-bottom:48px;max-width:880px;margin-left:auto;margin-right:auto}
  .ec-financing__head .eyebrow{justify-content:center;display:inline-flex}
  .ec-financing__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-financing__lead{margin-top:18px;color:#3a4555;font-size:16px;line-height:1.7}

  /* ============== ec-compareGrid — N kroków × 2 kolumny (Standard | VIP) ============== */
  .ec-compareGrid__stepsHeader{
    display:grid;
    grid-template-columns:minmax(220px,260px) 1fr 1fr;
    gap:18px;
    padding:0 24px 14px;
    border-bottom:1px solid rgba(10,22,40,.08);
    margin-bottom:8px;
  }
  .ec-compareGrid__colHead{
    font-family:"Cormorant Garamond";
    font-size:11px;
    letter-spacing:.28em;
    text-transform:uppercase;
    color:#6b7280;
    font-weight:600;
    padding:10px 0;
  }
  .ec-compareGrid__colHead--vip{
    color:var(--gold-deep);
    position:relative;
  }
  .ec-compareGrid__colHead--vip::before{
    content:"★";
    margin-right:6px;
    font-size:13px;
  }
  .ec-compareGrid__steps{display:flex;flex-direction:column;gap:0}
  .ec-compareGrid__step{
    display:grid;
    grid-template-columns:minmax(220px,260px) 1fr 1fr;
    gap:18px;
    padding:24px;
    border-bottom:1px solid rgba(10,22,40,.06);
    align-items:start;
  }
  .ec-compareGrid__step:last-child{border-bottom:0}
  .ec-compareGrid__step:nth-child(odd){background:rgba(212,177,99,.04)}
  .ec-compareGrid__stepTitle{
    font-family:"Cormorant Garamond",serif;
    font-size:20px;
    font-weight:500;
    color:var(--navy);
    line-height:1.25;
    margin:0;
  }
  .ec-compareGrid__row{display:contents}
  .ec-compareGrid__cell{
    background:#fff;
    border:1px solid rgba(10,22,40,.06);
    border-radius:14px;
    padding:20px 22px;
    box-shadow:0 1px 2px rgba(10,22,40,.03);
  }
  .ec-compareGrid__cell--vip{
    background:linear-gradient(180deg,#fff 0%,#fbf6e8 100%);
    border:1.5px solid var(--gold);
    box-shadow:0 6px 14px rgba(212,177,99,.18);
  }
  .ec-compareGrid__cellLabel{
    display:none;
    font-family:"Cormorant Garamond";
    font-size:10.5px;
    letter-spacing:.28em;
    text-transform:uppercase;
    color:#6b7280;
    font-weight:700;
    margin-bottom:8px;
  }
  .ec-compareGrid__cell--vip .ec-compareGrid__cellLabel{color:var(--gold-deep)}
  .ec-compareGrid__cell p{
    margin:0;
    font-size:14.5px;
    line-height:1.65;
    color:#3a4555;
    white-space:pre-line;
  }
  .ec-compareGrid__cell--vip p{color:#1f2a3a}

  /* Tablet */
  @media (max-width:1024px){
    .ec-compareGrid__stepsHeader{display:none}
    .ec-compareGrid__step{
      grid-template-columns:1fr 1fr;
      gap:14px;
      padding:24px 20px;
    }
    .ec-compareGrid__stepTitle{
      grid-column:1 / -1;
      margin-bottom:6px;
    }
    .ec-compareGrid__cell{padding:18px 18px}
    .ec-compareGrid__cellLabel{display:block}
  }

  /* Mobile - 1 kolumna, label widoczny */
  @media (max-width:768px){
    .ec-compareGrid__step{
      grid-template-columns:1fr !important;
      gap:12px;
      padding:20px 14px;
    }
    .ec-compareGrid__stepTitle{font-size:18px}
    .ec-compareGrid__cell{padding:16px 16px}
    .ec-compareGrid__cell p{font-size:14px}
  }
  .ec-financing__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
  .ec-financing__card{background:#fff;border-radius:24px;padding:40px 36px;border:1px solid rgba(10,22,40,.06);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:14px;transition:.3s;position:relative}
  .ec-financing__card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
  .ec-financing__card.is-highlight{border:2px solid var(--gold);background:linear-gradient(180deg,#fff 0%,#fbf6e8 100%)}
  .ec-financing__card .eyebrow{font-size:10.5px;letter-spacing:.28em}
  .ec-financing__card h3{font-family:"Cormorant Garamond",serif;font-size:26px;font-weight:500;color:var(--navy);margin-top:6px;line-height:1.15}
  .ec-financing__card p{color:#3a4555;font-size:15px;line-height:1.65;margin-bottom:6px}
  .ec-financing__list{list-style:none;display:flex;flex-direction:column;gap:10px;margin-top:6px;padding:18px 0 0;border-top:1px solid #f0eadb}
  .ec-financing__list li{position:relative;padding-left:24px;color:#3a4555;font-size:14.5px;line-height:1.6}
  .ec-financing__list li::before{content:"";position:absolute;left:0;top:9px;width:14px;height:8px;border-left:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);transform:rotate(-45deg)}

  /* ============== KUP — FAQ (accordion <details>) ============== */
  .ec-faq{padding:96px 28px;max-width:920px;margin:0 auto}
  .ec-faq__head{text-align:center;margin-bottom:48px}
  .ec-faq__head .eyebrow{justify-content:center;display:inline-flex}
  .ec-faq__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-faq__head p{margin-top:18px;color:#5a6473;font-size:16px}
  .ec-faq__list{display:flex;flex-direction:column;gap:12px}
  .ec-faq__item{background:#fff;border-radius:16px;border:1px solid rgba(10,22,40,.06);overflow:hidden;transition:.2s}
  .ec-faq__item:hover{border-color:rgba(212,177,99,.4)}
  .ec-faq__item[open]{border-color:var(--gold);box-shadow:var(--shadow-md)}
  .ec-faq__q{cursor:pointer;list-style:none;padding:22px 28px;font-family:"Cormorant Garamond";font-size:16px;font-weight:600;color:var(--navy);display:flex;justify-content:space-between;align-items:center;gap:18px;line-height:1.4;transition:.2s}
  .ec-faq__q::-webkit-details-marker{display:none}
  .ec-faq__a{padding:0 28px 24px;color:#3a4555;font-size:15px;line-height:1.7}
  .ec-faq__a p{color:inherit}
  .ec-faq__a a{color:var(--gold-deep);text-decoration:underline}
  .ec-faq__item .ic{color:var(--gold-deep);display:inline-flex;flex-shrink:0;transition:.3s}
  .ec-faq__item[open] .ic{transform:rotate(45deg)}

  /* ============== KUP — BUYCTA (formularz lead) ============== */
  .ec-buyCta{padding:96px 18px}
  .ec-buyCta__inner{max-width:1320px;margin:0 auto;background:linear-gradient(160deg,var(--navy) 0%,var(--navy-3) 100%);border-radius:32px;padding:64px clamp(32px,5vw,72px);display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center;position:relative;overflow:hidden;box-shadow:var(--shadow-lg)}
  .ec-buyCta__inner::before{content:"";position:absolute;top:-100px;right:-80px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(212,177,99,.22),transparent 70%)}
  .ec-buyCta__left{position:relative;z-index:2;color:#fff}
  .ec-buyCta__left .eyebrow{color:var(--gold)}
  .ec-buyCta__left .eyebrow::before{background:var(--gold)}
  .ec-buyCta__left h2{color:#fff;margin-top:18px;font-weight:300}
  .ec-buyCta__left h2 em{color:var(--gold);font-weight:300}
  .ec-buyCta__left p{color:rgba(255,255,255,.82);margin-top:18px;font-size:16px;line-height:1.7;max-width:480px}
  .ec-buyCta__form{position:relative;z-index:2;display:flex;flex-direction:column;gap:14px}
  .ec-buyCta__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .ec-buyCta__field{display:flex;flex-direction:column;gap:6px}
  .ec-buyCta__field label{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
  .ec-buyCta__field input,.ec-buyCta__field select,.ec-buyCta__field textarea{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:14px 16px;color:#fff;font-family:"Cormorant Garamond";font-size:14.5px;outline:none;transition:.2s;width:100%}
  .ec-buyCta__field input:focus,.ec-buyCta__field select:focus,.ec-buyCta__field textarea:focus{background:rgba(255,255,255,.14);border-color:var(--gold)}
  .ec-buyCta__field input::placeholder,.ec-buyCta__field textarea::placeholder{color:rgba(255,255,255,.5)}
  .ec-buyCta__field textarea{min-height:96px;resize:vertical;font-family:"Cormorant Garamond"}
  .ec-buyCta__field select option{color:var(--navy);background:#fff}
  .ec-buyCta__field label[for*="rodo"]{display:flex;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.78);line-height:1.5;cursor:pointer}
  .ec-buyCta__field label[for*="rodo"] input{width:auto;background:transparent;border:0;padding:0;margin-top:3px;accent-color:var(--gold)}
  .ec-buyCta__submit{margin-top:8px;background:var(--gold);color:var(--navy);border:0;border-radius:999px;padding:18px 28px;font-family:"Cormorant Garamond";font-weight:700;font-size:14px;letter-spacing:.04em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s;align-self:flex-start}
  .ec-buyCta__submit:hover{background:var(--gold-deep);color:#fff;transform:translateY(-1px)}

  /* ============== SPRZEDAJ — PROCESS (5 kroków) ============== */
  .ec-process{padding:96px 0;background:linear-gradient(180deg,transparent 0%,#faf6ec 50%,transparent 100%)}
  .ec-process__head{text-align:center;margin-bottom:64px;max-width:720px;margin-left:auto;margin-right:auto}
  .ec-process__head .eyebrow{justify-content:center;display:inline-flex}
  .ec-process__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-process__head p{margin-top:18px;color:#5a6473;font-size:16px;line-height:1.65}
  .ec-process__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;position:relative}
  .ec-process__line{position:absolute;top:38px;left:10%;right:10%;height:2px;background:linear-gradient(90deg,transparent,var(--gold) 20%,var(--gold) 80%,transparent);z-index:0;opacity:.4}
  .ec-step{text-align:center;position:relative;z-index:2;background:transparent;border:0;box-shadow:none;padding:0}
  .ec-step__circle,.ec-step__num{width:76px;height:76px;border-radius:50%;background:#fff;border:2px solid var(--gold);color:var(--gold-deep);font-family:"Cormorant Garamond",serif;font-size:28px;font-weight:500;display:flex;align-items:center;justify-content:center;margin:0 auto 22px;box-shadow:0 8px 22px -10px rgba(212,177,99,.5);position:relative;transition:.3s}
  .ec-step:hover .ec-step__circle,.ec-step:hover .ec-step__num{background:var(--gold);color:var(--navy);transform:translateY(-3px)}
  .ec-step h3{font-family:"Cormorant Garamond",serif;font-size:18px;font-weight:500;color:var(--navy);margin-bottom:8px}
  .ec-step p{font-size:13.5px;color:#5a6473;line-height:1.6;padding:0 8px}

  /* ============== SPRZEDAJ — INCLUDES (12 punktów + sticker) ============== */
  .ec-includes{padding:96px 0}
  .ec-includes__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
  .ec-includes__text h2 em{color:var(--gold-deep);font-style:italic}
  .ec-includes__text p{margin-top:18px;color:#3a4555;font-size:16px;line-height:1.7;max-width:560px}
  .ec-includes__list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 24px;margin-top:32px}
  .ec-includes__item{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--navy);line-height:1.45;font-weight:500}
  .ec-includes__check{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
  .ec-includes__visual{position:relative;height:560px}
  .ec-includes__photo{position:absolute;border-radius:24px;overflow:hidden;background-size:cover;background-position:center;box-shadow:var(--shadow-lg)}
  .ec-includes__photo--1{top:0;left:0;width:62%;height:62%;border-top-left-radius:200px;border-top-right-radius:200px}
  .ec-includes__photo--2{bottom:0;right:0;width:58%;height:54%}
  .ec-includes__sticker{position:absolute;top:54%;left:48%;background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff;border-radius:18px;padding:22px 26px;box-shadow:var(--shadow-md);transform:rotate(-6deg);text-align:center;z-index:3}
  .ec-includes__sticker .num{font-family:"Cormorant Garamond",serif;font-size:46px;font-weight:500;line-height:1}
  .ec-includes__sticker .lbl{font-size:11.5px;letter-spacing:.06em;line-height:1.4;margin-top:6px;color:rgba(255,255,255,.92)}

  /* ============== SPRZEDAJ — CHANNELS (4 kanały marketingu) ============== */
  .ec-channels{padding:96px 28px;max-width:1320px;margin:0 auto}
  .ec-channels__head{max-width:760px;margin-bottom:56px}
  .ec-channels__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-channels__head p{margin-top:18px;color:#3a4555;font-size:16.5px;line-height:1.7;max-width:620px}
  .ec-channels__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
  .ec-channel{background:#fff;border-radius:22px;padding:32px 26px 28px;border:1px solid rgba(10,22,40,.05);transition:.3s;display:flex;flex-direction:column;gap:12px}
  .ec-channel:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--gold)}
  .ec-channel__icon{width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,#fbf6e8,var(--cream-2));color:var(--gold-deep);display:flex;align-items:center;justify-content:center;margin-bottom:6px;transition:.3s}
  .ec-channel:hover .ec-channel__icon{background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff}
  .ec-channel h3{font-family:"Cormorant Garamond",serif;font-size:20px;font-weight:500;color:var(--navy);line-height:1.2}
  .ec-channel p{color:#5a6473;font-size:14px;line-height:1.6;flex:1}
  .ec-channel__stat{margin-top:10px;padding-top:14px;border-top:1px solid #f0eadb;color:var(--gold-deep);font-size:12.5px;font-weight:700;letter-spacing:.06em}
  /* ============== SPRZEDAJ — PRICING (3% + 8 includes) ============== */
  .ec-pricing{padding:96px 18px}
  .ec-pricing__inner{max-width:1320px;margin:0 auto;background:#fff;border-radius:32px;padding:64px clamp(32px,5vw,72px);box-shadow:var(--shadow-md);border:1px solid rgba(10,22,40,.06)}
  .ec-pricing__grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .ec-pricing__left h2 em{color:var(--gold-deep);font-style:italic}
  .ec-pricing__left p{margin-top:18px;color:#3a4555;font-size:16px;line-height:1.7;max-width:500px}
  .ec-pricing__big{margin-top:36px;display:flex;align-items:flex-end;gap:18px}
  .ec-pricing__big .pct{font-family:"Cormorant Garamond",serif;font-size:140px;font-weight:300;color:var(--gold-deep);line-height:.85;letter-spacing:-.02em}
  .ec-pricing__big .pct small{font-size:60px;color:var(--gold);font-weight:300;margin-left:4px}
  .ec-pricing__big .label{color:#5a6473;font-size:14.5px;line-height:1.5;max-width:240px;margin-bottom:14px}
  .ec-pricing__card{background:linear-gradient(160deg,#fbf6e8 0%,#fff 100%);border-radius:24px;padding:36px 32px;border:1px solid var(--line)}
  .ec-pricing__card h3{font-family:"Cormorant Garamond",serif;font-size:22px;font-weight:500;color:var(--navy);margin-bottom:20px}
  .ec-pricing__list{list-style:none;display:flex;flex-direction:column;gap:12px}
  .ec-pricing__list li{display:flex;gap:12px;align-items:flex-start;color:var(--navy);font-size:14.5px;line-height:1.5;font-weight:500}
  .ec-pricing__list li svg{color:var(--gold-deep);flex-shrink:0;margin-top:2px}
  .ec-pricing__note{margin-top:24px;padding-top:20px;border-top:1px solid #f0eadb;color:#5a6473;font-size:13.5px;line-height:1.6;font-style:italic}

  /* ============== SPRZEDAJ — COMPARE (tabela 7×3) ============== */
  .ec-compare{padding:96px 0;background:linear-gradient(180deg,transparent 0%,#faf6ec 50%,transparent 100%)}
  .ec-compare__head{text-align:center;margin-bottom:48px}
  .ec-compare__head .eyebrow{justify-content:center;display:inline-flex}
  .ec-compare__head h2 em{color:var(--gold-deep);font-style:italic}
  .ec-compare__table{background:#fff;border-radius:24px;overflow:hidden;border:1px solid rgba(10,22,40,.06);box-shadow:var(--shadow-md)}
  .ec-compare__row{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.1fr;gap:0;border-bottom:1px solid #f0eadb;align-items:stretch}
  .ec-compare__row:last-child{border-bottom:0}
  .ec-compare__row--head{background:var(--navy);color:#fff}
  .ec-compare__cell{padding:18px 22px;display:flex;align-items:center;justify-content:center;font-size:14px;text-align:center;color:#3a4555;border-left:1px solid #f0eadb;line-height:1.4}
  .ec-compare__cell:first-child{border-left:0}
  .ec-compare__cell--head{font-family:"Cormorant Garamond";font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.86);padding:22px;border-left-color:rgba(255,255,255,.08)}
  .ec-compare__cell--head.ec-compare__cell--highlight{background:linear-gradient(180deg,var(--gold) 0%,var(--gold-deep) 100%);color:#fff}
  .ec-compare__cell--label{justify-content:flex-start;font-weight:600;color:var(--navy);font-size:14.5px;text-align:left}
  .ec-compare__cell--highlight{background:rgba(212,177,99,.06);font-weight:600;color:var(--navy);position:relative}
  .ec-compare__row:not(.ec-compare__row--head) .ec-compare__cell--highlight::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
  .ec-compare__row:last-child .ec-compare__cell--highlight{border-bottom-right-radius:24px}
  .ec-compare__no{color:#9ba2ad;font-weight:500}
  .ec-compare__partial{color:#b8862b;font-weight:500}
  .ec-compare__yes{color:#1f7a3a;font-weight:600}
  .ec-compare__row:hover:not(.ec-compare__row--head){background:rgba(246,241,231,.3)}
  /* ============== SPRZEDAJ — VALUATION (split panel + form) ============== */
  .ec-valuation{padding:96px 18px}
  .ec-valuation__panel{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:1fr 1.05fr;background:linear-gradient(160deg,var(--navy) 0%,var(--navy-3) 100%);border-radius:32px;overflow:hidden;box-shadow:var(--shadow-lg);position:relative}
  .ec-valuation__panel::before{content:"";position:absolute;top:-100px;left:-80px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(212,177,99,.22),transparent 70%);z-index:1}
  .ec-valuation__left{padding:64px clamp(32px,5vw,64px);color:#fff;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}
  .ec-valuation__left .eyebrow{color:var(--gold)}
  .ec-valuation__left .eyebrow::before{background:var(--gold)}
  .ec-valuation__left h2{color:#fff;margin-top:18px;font-weight:300}
  .ec-valuation__left h2 em{color:var(--gold);font-weight:300}
  .ec-valuation__left p{color:rgba(255,255,255,.84);margin-top:18px;font-size:15.5px;line-height:1.7;max-width:460px}
  .ec-valuation__bullets{list-style:none;display:flex;flex-direction:column;gap:14px;margin-top:32px}
  .ec-valuation__bullets li{display:flex;align-items:flex-start;gap:14px;color:rgba(255,255,255,.92);font-size:14.5px;line-height:1.5}
  .ec-valuation__bullets li svg{color:var(--gold);flex-shrink:0;margin-top:1px}
  .ec-valuation__right{background:#fff;padding:48px clamp(28px,4vw,52px);position:relative;z-index:2}
  .ec-valuation__right h3{font-family:"Cormorant Garamond",serif;font-size:24px;font-weight:500;color:var(--navy);line-height:1.2}
  .ec-valuation__right > p{color:#5a6473;margin-top:8px;margin-bottom:24px;font-size:14.5px}
  .ec-valuation__form{display:flex;flex-direction:column;gap:14px}
  .ec-valuation__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .ec-valuation__field{display:flex;flex-direction:column;gap:6px}
  .ec-valuation__field label{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep)}
  .ec-valuation__field input,.ec-valuation__field select,.ec-valuation__field textarea{background:#fbf6e8;border:1px solid #f0eadb;border-radius:12px;padding:13px 16px;color:var(--navy);font-family:"Cormorant Garamond";font-size:14.5px;outline:none;transition:.2s;width:100%}
  .ec-valuation__field input:focus,.ec-valuation__field select:focus,.ec-valuation__field textarea:focus{background:#fff;border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,177,99,.12)}
  .ec-valuation__field input::placeholder,.ec-valuation__field textarea::placeholder{color:#9ba2ad}
  .ec-valuation__field textarea{min-height:84px;resize:vertical;font-family:"Cormorant Garamond"}
  .ec-valuation__upload{display:flex;align-items:center;gap:12px;background:#fbf6e8;border:1.5px dashed var(--gold);border-radius:12px;padding:16px 18px;color:var(--gold-deep);font-size:14px;font-weight:600;cursor:pointer;transition:.2s}
  .ec-valuation__upload:hover{background:#f5ebd0;border-color:var(--gold-deep)}
  .ec-valuation__check{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#5a6473;line-height:1.5;cursor:pointer}
  .ec-valuation__check input{accent-color:var(--gold);margin-top:3px}
  .ec-valuation__submit{margin-top:8px;background:var(--gold);color:var(--navy);border:0;border-radius:999px;padding:16px 26px;font-family:"Cormorant Garamond";font-weight:700;font-size:14px;letter-spacing:.04em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s}
  .ec-valuation__submit:hover{background:var(--gold-deep);color:#fff;transform:translateY(-1px)}

  /* ============== RESPONSIVE ============== */
  @media (max-width:1024px){
    .ec-booking__card{grid-template-columns:1fr 1fr;gap:0}
    .ec-types__grid{grid-template-columns:repeat(2,1fr)}
    .ec-featured__grid,.ec-blog__grid{grid-template-columns:repeat(2,1fr)}
    .ec-paths__grid{grid-template-columns:1fr}
    .ec-about__grid,.ec-footer__top,.ec-contact__panel{grid-template-columns:1fr;gap:40px}
    .ec-contact__row{grid-template-columns:1fr}
    .ec-review{flex:0 0 calc((100% - 24px)/2)}
    .ec-nav{display:none}
    .ec-usp__grid,.ec-buyTypes__grid,.ec-buyProcess__grid{grid-template-columns:repeat(2,1fr)}
    .ec-regions__grid{grid-template-columns:repeat(2,1fr)}
    .ec-financing__grid{grid-template-columns:1fr}
    .ec-buyCta__inner{grid-template-columns:1fr;gap:40px;padding:48px 32px}
    .ec-process__grid{grid-template-columns:repeat(3,1fr)}
    .ec-includes__grid{grid-template-columns:1fr;gap:48px}
    .ec-includes__visual{height:480px}
    .ec-channels__grid{grid-template-columns:repeat(2,1fr)}
    .ec-pricing__grid{grid-template-columns:1fr;gap:48px}
    .ec-pricing__big .pct{font-size:110px}
    .ec-pricing__big .pct small{font-size:48px}
    .ec-valuation__panel{grid-template-columns:1fr}
    .ec-compare__row{grid-template-columns:1.4fr .9fr .9fr 1fr}
  }
  @media (max-width:640px){
    .ec-featured__grid,.ec-blog__grid,.ec-types__grid{grid-template-columns:1fr}
    .ec-review{flex:0 0 100%}
    .ec-usp__grid,.ec-buyTypes__grid,.ec-buyProcess__grid,.ec-regions__grid{grid-template-columns:1fr}
    .ec-buyCta__row,.ec-costs__row{grid-template-columns:1fr;gap:8px}
    .ec-costs__row{padding:16px 18px}
    .ec-costs__row.is-head{display:none}
    .ec-subhero__frame{height:min(70vh,520px);min-height:420px}
    .ec-subhero__content{padding:48px 28px}
    .ec-usp,.ec-buyTypes,.ec-costs,.ec-faq{padding-left:18px;padding-right:18px}
    .ec-buyCta__inner{padding:36px 24px;border-radius:24px}
    .ec-process__grid,.ec-channels__grid{grid-template-columns:1fr}
    .ec-includes__list{grid-template-columns:1fr}
    .ec-includes__visual{height:380px}
    .ec-includes__sticker{padding:16px 20px}
    .ec-includes__sticker .num{font-size:36px}
    .ec-pricing__inner{padding:36px 24px;border-radius:24px}
    .ec-pricing__big{flex-direction:column;align-items:flex-start;gap:8px}
    .ec-pricing__big .pct{font-size:96px}
    .ec-pricing__big .pct small{font-size:42px}
    .ec-valuation__panel{border-radius:24px}
    .ec-valuation__left,.ec-valuation__right{padding:32px 24px}
    .ec-valuation__row{grid-template-columns:1fr}
    .ec-compare__table{border-radius:18px;overflow-x:auto;display:block}
    .ec-compare__row{min-width:560px}
    .ec-channels,.ec-pricing,.ec-valuation,.ec-compare{padding-left:14px;padding-right:14px}
  }

/* ===== Flash messages + honeypot ===== */
.ec-honeypot{position:absolute !important;left:-9999px !important;top:-9999px !important;width:1px !important;height:1px !important;opacity:0 !important;pointer-events:none !important;visibility:hidden !important}
.ec-flash{padding:14px 18px;border-radius:10px;margin-bottom:18px;font-size:14px;line-height:1.5;border:1px solid transparent;font-weight:500}
.ec-flash--ok{background:#EFF7EE;border-color:#C7E0C2;color:#1F5D1A}
.ec-flash--err{background:#FBEFEE;border-color:#E8C8C5;color:#852A22}
.ec-buyCta__form .ec-flash{margin-bottom:14px}
.ec-buyCta__form .ec-flash--ok{background:rgba(255,255,255,.94);border-color:rgba(200,168,106,.55);color:#0F2848}
.ec-buyCta__form .ec-flash--err{background:rgba(255,235,232,.96);border-color:rgba(232,200,197,.6);color:#852A22}


  /* ============================================================
     PODSTRONY: O NAS + KONTAKT (Faza I + J)
     ============================================================ */

  /* ---------- ABOUT: STATS BAR ---------- */
  .ec-stats{padding:0 28px;margin-top:-44px;position:relative;z-index:5}
  .ec-stats__card{
    background:#fff;border-radius:24px;
    box-shadow:var(--shadow-md);
    padding:36px 28px;
    display:grid;grid-template-columns:repeat(4,1fr);gap:0;
    border:1px solid rgba(10,22,40,.05);
    max-width:1320px;margin:0 auto;
  }
  .ec-stats__item{padding:0 28px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;border-left:1px solid rgba(10,22,40,.08)}
  .ec-stats__item:first-child{border-left:0}
  .ec-stats__item .num{font-family:"Cormorant Garamond",serif;font-size:clamp(36px,3.6vw,52px);line-height:1;color:var(--navy);font-weight:300}
  .ec-stats__item .lbl{font-size:13px;color:var(--muted);line-height:1.45;letter-spacing:.01em}

  /* ---------- ABOUT: STORY ---------- */
  .ec-story{padding:120px 28px}
  .ec-story__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center;max-width:1320px;margin:0 auto}
  .ec-story__visual{position:relative;height:560px}
  .ec-story__photo{position:absolute;border-radius:18px;background-size:cover;background-position:center;box-shadow:var(--shadow-lg)}
  .ec-story__photo--1{top:0;left:0;width:62%;height:74%;z-index:1}
  .ec-story__photo--2{bottom:0;right:0;width:58%;height:62%;z-index:2;border:6px solid var(--cream)}
  .ec-story__sticker{
    position:absolute;left:50%;bottom:-22px;transform:translateX(-30%);z-index:3;
    background:var(--navy);color:var(--gold);
    font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
    padding:14px 22px;border-radius:999px;
    box-shadow:0 18px 40px -16px rgba(10,22,40,.45);
  }
  .ec-story__text p{margin-top:18px;color:#374151;font-size:16px;line-height:1.7}
  .ec-story__sig{display:flex;align-items:center;gap:14px;margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}
  .ec-story__sig img{width:54px;height:54px;border-radius:999px;object-fit:cover;border:2px solid var(--gold)}
  .ec-story__sig__name{font-family:"Cormorant Garamond",serif;font-size:18px;color:var(--navy)}
  .ec-story__sig__role{font-size:11px;letter-spacing:.22em;color:var(--gold-deep);font-weight:600;margin-top:2px}

  /* ---------- ABOUT: VALUES ---------- */
  .ec-values{background:var(--navy);padding:120px 28px;color:#fff}
  .ec-values__head{max-width:780px;margin:0 auto 64px;text-align:center}
  .ec-values__head h2{color:#fff}
  .ec-values__head h2 em{color:var(--gold)}
  .ec-values__head .eyebrow{justify-content:center}
  .ec-values__head p{color:rgba(255,255,255,.72);margin-top:14px;font-size:16px;line-height:1.65}
  .ec-values__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1320px;margin:0 auto}
  .ec-value{
    position:relative;
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
    border:1px solid rgba(255,255,255,.14);
    border-radius:20px;padding:36px 28px 32px;
    transition:.3s;
  }
  .ec-value:hover{transform:translateY(-4px);border-color:rgba(212,177,99,.5);background:linear-gradient(180deg,rgba(212,177,99,.10),rgba(255,255,255,.04))}
  .ec-value::before{
    content:attr(data-num);
    position:absolute;top:22px;right:24px;
    font-family:"Cormorant Garamond",serif;font-size:42px;line-height:1;
    color:rgba(212,177,99,.32);font-weight:300;
  }
  .ec-value__ico{
    width:48px;height:48px;border-radius:12px;
    background:rgba(212,177,99,.18);color:var(--gold);
    display:flex;align-items:center;justify-content:center;
    margin-bottom:22px;
  }
  .ec-value h3{color:#fff;font-size:21px;margin-bottom:10px}
  .ec-value p{color:rgba(255,255,255,.66);font-size:14.5px;line-height:1.6}

  /* ---------- ABOUT: TEAM ---------- */
  .ec-team{padding:120px 28px}
  .ec-team__head{max-width:780px;margin:0 auto 64px;text-align:center}
  .ec-team__head .eyebrow{justify-content:center}
  .ec-team__head p{color:var(--muted);margin-top:14px;font-size:16px;line-height:1.65}
  .ec-team__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:1320px;margin:0 auto}
  .ec-member{background:#fff;border-radius:18px;padding:28px;border:1px solid rgba(10,22,40,.06);transition:.3s;display:flex;flex-direction:column;gap:6px}
  .ec-member:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:rgba(212,177,99,.3)}
  .ec-member__photo{
    width:100%;aspect-ratio:1/1;border-radius:14px;
    background-size:cover;background-position:center;
    margin-bottom:18px;
  }
  .ec-member__name{font-family:"Cormorant Garamond",serif;font-size:22px;color:var(--navy);font-weight:500}
  .ec-member__role{font-size:11px;letter-spacing:.2em;color:var(--gold-deep);font-weight:600;margin-bottom:6px}
  .ec-member__bio{color:#4a5568;font-size:14px;line-height:1.6;margin-bottom:6px}
  .ec-member__contact{display:flex;flex-wrap:wrap;gap:14px;padding-top:14px;border-top:1px solid var(--line);margin-top:auto}
  .ec-member__contact a{display:inline-flex;align-items:center;gap:7px;color:var(--navy);font-size:13px;font-weight:500;transition:.2s}
  .ec-member__contact a:hover{color:var(--gold-deep)}
  .ec-member__contact a svg{flex-shrink:0;color:var(--gold-deep)}

  /* ---------- ABOUT: CASES ---------- */
  .ec-cases{background:var(--cream-2);padding:120px 28px}
  .ec-cases__head{max-width:780px;margin:0 auto 56px;text-align:center}
  .ec-cases__head .eyebrow{justify-content:center}
  .ec-cases__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1320px;margin:0 auto}
  .ec-case{background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(10,22,40,.06);transition:.3s}
  .ec-case:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
  .ec-case__photo{position:relative;height:240px;background-size:cover;background-position:center}
  .ec-case__badge{
    position:absolute;top:16px;left:16px;
    background:rgba(255,255,255,.96);color:var(--navy);
    font-size:11px;letter-spacing:.18em;font-weight:600;text-transform:uppercase;
    padding:7px 14px;border-radius:999px;
    backdrop-filter:blur(6px);
  }
  .ec-case__body{padding:24px 26px 26px}
  .ec-case__loc{font-size:11px;letter-spacing:.22em;color:var(--gold-deep);font-weight:600;text-transform:uppercase;margin-bottom:8px}
  .ec-case__title{font-family:"Cormorant Garamond",serif;font-size:22px;color:var(--navy);font-weight:500;line-height:1.2;margin-bottom:14px}
  .ec-case__meta{display:flex;flex-wrap:wrap;gap:8px}
  .ec-case__meta span{font-size:12.5px;color:var(--muted);background:var(--cream);padding:6px 12px;border-radius:999px;border:1px solid var(--line)}

  /* ---------- ABOUT: FINAL CTA ---------- */
  .ec-aboutCta{padding:0 28px 120px}
  .ec-aboutCta__inner{
    background:var(--navy);
    background-image:radial-gradient(60% 80% at 30% 20%, rgba(212,177,99,.12) 0%, transparent 60%);
    color:#fff;border-radius:28px;
    padding:88px clamp(32px,5vw,72px);
    max-width:1320px;margin:0 auto;
    text-align:center;
  }
  .ec-aboutCta__inner .eyebrow{color:var(--gold);justify-content:center}
  .ec-aboutCta__inner .eyebrow::before{background:var(--gold)}
  .ec-aboutCta__inner h2{color:#fff;margin:18px auto 0;max-width:720px}
  .ec-aboutCta__inner h2 em{color:var(--gold)}
  .ec-aboutCta__inner p{color:rgba(255,255,255,.78);margin:18px auto 0;max-width:620px;font-size:16.5px;line-height:1.65}
  .ec-aboutCta__btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:34px}

  /* ---------- KONTAKT: MAP + INFO ---------- */
  .ec-mapInfo{padding:96px 28px 64px}
  .ec-mapInfo__grid{display:grid;grid-template-columns:1.15fr .9fr;gap:48px;max-width:1320px;margin:0 auto}
  .ec-mapInfo__map{
    position:relative;height:480px;border-radius:22px;overflow:hidden;
    background:linear-gradient(135deg,#e8ddc4 0%, #f6f1e7 60%, #efe7d4 100%);
    border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;
    box-shadow:var(--shadow-md);
  }
  .ec-mapInfo__map::before{
    content:"";position:absolute;inset:0;
    background-image:
      linear-gradient(rgba(212,177,99,.18) 1px, transparent 1px),
      linear-gradient(90deg, rgba(212,177,99,.18) 1px, transparent 1px);
    background-size:48px 48px;opacity:.7;
  }
  .ec-mapInfo__pin{
    position:relative;z-index:2;color:var(--navy);
    background:#fff;width:64px;height:64px;border-radius:999px;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 18px 40px -10px rgba(10,22,40,.4);
    border:2px solid var(--gold);
  }
  .ec-mapInfo__placeholder{
    position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:2;
    background:rgba(255,255,255,.92);
    padding:14px 22px;border-radius:14px;
    font-size:13.5px;color:var(--navy);text-align:center;line-height:1.55;
    border:1px solid var(--line);
    backdrop-filter:blur(6px);
  }
  .ec-mapInfo__details{display:flex;flex-direction:column;gap:24px}
  .ec-mapInfo__block{
    background:#fff;border-radius:16px;padding:26px 28px;
    border:1px solid rgba(10,22,40,.06);
    display:grid;grid-template-columns:48px 1fr;gap:18px;align-items:flex-start;
  }
  .ec-mapInfo__ico{
    width:48px;height:48px;border-radius:12px;
    background:rgba(212,177,99,.12);color:var(--gold-deep);
    display:flex;align-items:center;justify-content:center;
  }
  .ec-mapInfo__block h3{font-size:18px;color:var(--navy);margin-bottom:6px;font-weight:500;grid-column:2}
  .ec-mapInfo__block p{font-size:14.5px;color:#4a5568;line-height:1.7;grid-column:2}
  .ec-mapInfo__block p a{color:var(--navy);font-weight:500;border-bottom:1px solid var(--line);transition:.2s}
  .ec-mapInfo__block p a:hover{color:var(--gold-deep);border-color:var(--gold-deep)}

  /* ---------- KONTAKT: FORM + SIDEBAR ---------- */
  .ec-form{padding:64px 28px 96px}
  .ec-form__grid{display:grid;grid-template-columns:1.6fr .9fr;gap:40px;max-width:1320px;margin:0 auto;align-items:flex-start}
  .ec-form__main{background:#fff;border-radius:22px;padding:48px clamp(28px,3.5vw,52px);border:1px solid rgba(10,22,40,.06);box-shadow:var(--shadow-md)}
  .ec-form__head{margin-bottom:32px}
  .ec-form__head h2 em{color:var(--gold-deep)}
  .ec-form__head p{color:var(--muted);margin-top:14px;font-size:15.5px;line-height:1.65}

  .ec-form__topics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:24px}
  .ec-form__topic{
    display:flex;align-items:center;gap:10px;
    padding:14px 18px;border-radius:12px;
    background:var(--cream);border:1px solid var(--line);
    font-size:14px;color:var(--navy);font-weight:500;
    cursor:pointer;transition:.2s;
  }
  .ec-form__topic input[type=radio]{accent-color:var(--gold-deep);width:16px;height:16px;cursor:pointer}
  .ec-form__topic:hover{border-color:var(--gold)}
  .ec-form__topic.is-active{background:rgba(212,177,99,.12);border-color:var(--gold);color:var(--navy)}

  .ec-form__row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:14px}
  .ec-form__field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
  .ec-form__field label{font-size:12.5px;font-weight:600;letter-spacing:.04em;color:var(--navy);text-transform:uppercase}
  .ec-form__field input,
  .ec-form__field select,
  .ec-form__field textarea{
    width:100%;padding:13px 16px;border-radius:10px;
    border:1px solid rgba(10,22,40,.14);
    background:#fff;color:var(--ink);font-size:15px;
    font-family:inherit;transition:.2s;
  }
  .ec-form__field textarea{min-height:140px;resize:vertical;line-height:1.55}
  .ec-form__field input:focus,
  .ec-form__field select:focus,
  .ec-form__field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 4px rgba(212,177,99,.14)}
  .ec-form__check{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--muted);line-height:1.55;margin:18px 0 22px;cursor:pointer}
  .ec-form__check input{margin-top:3px;accent-color:var(--gold-deep)}
  .ec-form__submit{
    display:inline-flex;align-items:center;gap:10px;
    background:var(--gold);color:var(--navy);
    padding:15px 26px;border-radius:999px;border:0;cursor:pointer;
    font-size:14px;font-weight:600;letter-spacing:.04em;font-family:inherit;
    transition:.2s;
  }
  .ec-form__submit:hover{background:var(--gold-deep);color:#fff;transform:translateY(-1px)}
  .ec-form__submit svg{transition:.2s}
  .ec-form__submit:hover svg{transform:translateX(3px)}

  .ec-form__side{display:flex;flex-direction:column;gap:18px;position:sticky;top:96px}
  .ec-form__quick{
    background:var(--navy);color:#fff;border-radius:18px;padding:30px 28px;
    background-image:radial-gradient(50% 80% at 80% 20%, rgba(212,177,99,.16) 0%, transparent 60%);
  }
  .ec-form__quick .eyebrow{color:var(--gold)}
  .ec-form__quick .eyebrow::before{background:var(--gold)}
  .ec-form__quick h3{color:#fff;margin-top:10px;font-size:22px}
  .ec-form__quick p{color:rgba(255,255,255,.72);font-size:14px;line-height:1.6;margin:10px 0 18px}
  .ec-form__quick a{
    display:inline-flex;align-items:center;gap:10px;
    background:var(--gold);color:var(--navy);
    padding:12px 20px;border-radius:999px;
    font-weight:600;font-size:14px;transition:.2s;
  }
  .ec-form__quick a:hover{background:var(--gold-deep);color:#fff;transform:translateY(-1px)}
  /* w sidebarze .ec-mapInfo__block ma trochę inny ton */
  .ec-form__side .ec-mapInfo__block{display:flex;flex-direction:column;gap:8px;padding:24px 26px}
  .ec-form__side .ec-mapInfo__block .ec-mapInfo__ico{margin-bottom:6px}

  /* ---------- KONTAKT: PEOPLE ---------- */
  .ec-people{padding:64px 28px 96px}
  .ec-people__head{max-width:720px;margin:0 auto 48px;text-align:center}
  .ec-people__head .eyebrow{justify-content:center}
  .ec-people__head p{color:var(--muted);margin-top:14px;font-size:15.5px;line-height:1.65}
  .ec-people__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto}
  .ec-person{
    background:#fff;border-radius:18px;padding:32px 26px 28px;
    border:1px solid rgba(10,22,40,.06);
    text-align:center;transition:.3s;
    display:flex;flex-direction:column;align-items:center;
  }
  .ec-person:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:rgba(212,177,99,.3)}
  .ec-person__avatar{
    width:96px;height:96px;border-radius:999px;
    background-size:cover;background-position:center;
    margin-bottom:18px;
    border:3px solid var(--cream);
    box-shadow:0 8px 24px -10px rgba(10,22,40,.3);
  }
  .ec-person__name{font-family:"Cormorant Garamond",serif;font-size:21px;color:var(--navy);font-weight:500}
  .ec-person__role{font-size:11px;letter-spacing:.2em;color:var(--gold-deep);font-weight:600;margin:6px 0 4px}
  .ec-person__lang{font-size:12.5px;color:var(--muted);margin-bottom:16px}
  .ec-person__contact{display:flex;flex-direction:column;gap:8px;width:100%;padding-top:16px;border-top:1px solid var(--line)}
  .ec-person__contact a{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--navy);font-size:13.5px;font-weight:500;transition:.2s}
  .ec-person__contact a:hover{color:var(--gold-deep)}
  .ec-person__contact svg{color:var(--gold-deep);flex-shrink:0}

  /* ---------- KONTAKT: NEWSLETTER ---------- */
  .ec-newsletter{padding:0 28px 96px}
  .ec-newsletter__inner{
    background:var(--navy);color:#fff;
    border-radius:28px;
    padding:64px clamp(32px,5vw,68px);
    max-width:1320px;margin:0 auto;
    display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;
    background-image:radial-gradient(50% 80% at 100% 0%, rgba(212,177,99,.14) 0%, transparent 60%);
  }
  .ec-newsletter__left .eyebrow{color:var(--gold)}
  .ec-newsletter__left .eyebrow::before{background:var(--gold)}
  .ec-newsletter__left h2{color:#fff;margin-top:14px}
  .ec-newsletter__left h2 em{color:var(--gold)}
  .ec-newsletter__left p{color:rgba(255,255,255,.74);margin-top:14px;font-size:16px;line-height:1.65}
  .ec-newsletter__socials{display:flex;align-items:center;gap:14px;margin-top:28px}
  .ec-newsletter__socials span{font-size:11px;letter-spacing:.22em;color:rgba(255,255,255,.5);font-weight:600;text-transform:uppercase;margin-right:6px}
  .ec-newsletter__socials a{
    width:40px;height:40px;border-radius:999px;
    display:inline-flex;align-items:center;justify-content:center;
    color:#fff;border:1px solid rgba(255,255,255,.18);transition:.2s;
  }
  .ec-newsletter__socials a:hover{background:var(--gold);color:var(--navy);border-color:var(--gold);transform:translateY(-2px)}

  .ec-newsletter__form{display:flex;flex-direction:column;gap:14px}
  .ec-newsletter__row{display:flex;gap:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:6px 6px 6px 22px}
  .ec-newsletter__row input{
    flex:1;background:transparent;border:0;outline:none;
    color:#fff;font-size:15px;font-family:inherit;padding:10px 0;
  }
  .ec-newsletter__row input::placeholder{color:rgba(255,255,255,.45)}
  .ec-newsletter__submit{
    background:var(--gold);color:var(--navy);
    border:0;cursor:pointer;
    padding:12px 22px;border-radius:999px;
    font-size:14px;font-weight:600;font-family:inherit;
    transition:.2s;
  }
  .ec-newsletter__submit:hover{background:var(--gold-deep);color:#fff}
  .ec-newsletter__check{display:flex;align-items:flex-start;gap:10px;font-size:12.5px;color:rgba(255,255,255,.6);line-height:1.55;cursor:pointer}
  .ec-newsletter__check input{margin-top:3px;accent-color:var(--gold)}

  /* ---------- RESPONSIVE: O nas + Kontakt ---------- */
  @media (max-width:980px){
    .ec-stats__card{grid-template-columns:repeat(2,1fr);row-gap:28px}
    .ec-stats__item{padding:0 18px}
    .ec-stats__item:nth-child(odd){border-left:0}
    .ec-story__grid{grid-template-columns:1fr;gap:48px}
    .ec-story__visual{height:480px;max-width:560px;margin:0 auto;width:100%}
    .ec-values__grid{grid-template-columns:repeat(2,1fr)}
    .ec-team__grid{grid-template-columns:repeat(2,1fr)}
    .ec-cases__grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}
    .ec-mapInfo__grid{grid-template-columns:1fr;gap:32px}
    .ec-mapInfo__map{height:380px}
    .ec-form__grid{grid-template-columns:1fr;gap:28px}
    .ec-form__side{position:static}
    .ec-people__grid{grid-template-columns:repeat(2,1fr)}
    .ec-newsletter__inner{grid-template-columns:1fr;gap:32px;padding:48px 32px}
  }
  @media (max-width:760px){
    .ec-story,.ec-values,.ec-team,.ec-cases,.ec-mapInfo,.ec-form,.ec-people,.ec-newsletter{padding-left:18px;padding-right:18px}
    .ec-story,.ec-values,.ec-team,.ec-cases{padding-top:80px;padding-bottom:80px}
    .ec-stats{padding-left:18px;padding-right:18px}
    .ec-stats__card{padding:28px 18px}
    .ec-form__main{padding:32px 24px}
    .ec-aboutCta__inner{padding:64px 28px;border-radius:22px}
  }
  @media (max-width:640px){
    .ec-stats__card{grid-template-columns:1fr;row-gap:22px}
    .ec-stats__item{border-left:0;padding:0 8px}
    .ec-story__visual{height:420px}
    .ec-story__photo--1{width:70%;height:70%}
    .ec-story__photo--2{width:62%;height:58%}
    .ec-values__grid{grid-template-columns:1fr}
    .ec-team__grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}
    .ec-people__grid{grid-template-columns:1fr;max-width:380px;margin:0 auto}
    .ec-form__topics{grid-template-columns:1fr}
    .ec-form__row{grid-template-columns:1fr;gap:0}
    .ec-newsletter__row{flex-direction:column;border-radius:18px;padding:10px}
    .ec-newsletter__row input{padding:10px 14px}
    .ec-newsletter__submit{width:100%}
  }


  /* ============================================================
     BLOG (Faza K) — single post, pagination, dynamic list
     ============================================================ */

  /* ---------- Dynamic list overrides ----------
     wp:post-template renderuje grid jako <ul class="wp-block-post-template">.
     Nadpisujemy ten kontener naszym lookiem .ec-blog__grid. */
  .ec-blogQuery > .wp-block-post-template,
  .wp-block-post-template.ec-blog__grid{
    list-style:none;padding:0;margin:0;
    display:grid;grid-template-columns:repeat(3,1fr);gap:24px;
  }
  .wp-block-post-template.ec-blog__grid > li{
    list-style:none;margin:0;padding:0;
  }
  /* dynamiczna karta postu */
  .ec-blogQuery .ec-post{height:100%}
  .ec-blogQuery .ec-post .ec-post__img,
  .ec-blogQuery .ec-post .wp-block-post-featured-image,
  .ec-blogQuery .ec-post img.wp-post-image{
    display:block;width:100%;margin:0;border-radius:0;
  }
  .ec-blogQuery .ec-post .wp-block-post-featured-image{
    height:240px;overflow:hidden;
  }
  .ec-blogQuery .ec-post .wp-block-post-featured-image img{
    width:100%;height:100%;object-fit:cover;
  }
  .ec-blogQuery .ec-post__meta a,
  .ec-blogQuery .ec-post__meta time{font-size:12px;color:#8a93a3;letter-spacing:.04em}
  .ec-blogQuery .ec-post__meta a:hover{color:var(--gold-deep)}
  .ec-blogQuery .ec-post__title a{color:var(--navy);transition:.2s}
  .ec-blogQuery .ec-post__title a:hover{color:var(--gold-deep)}
  .ec-blogQuery .ec-post__more{color:var(--navy);transition:.2s}
  .ec-blogQuery .ec-post__more:hover{color:var(--gold-deep)}

  /* ---------- Pagination ---------- */
  .ec-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:56px}
  .ec-pagination a,
  .ec-pagination span{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:44px;height:44px;padding:0 14px;border-radius:999px;
    background:#fff;color:var(--navy);
    font-size:14px;font-weight:600;
    border:1px solid var(--line);transition:.2s;
  }
  .ec-pagination a:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
  .ec-pagination .current{background:var(--navy);color:var(--gold);border-color:var(--navy)}
  .ec-pagination .dots{background:transparent;border-color:transparent;color:var(--muted)}

  /* ---------- Single post ---------- */
  .ec-postSingle{
    background:#fff;border-radius:24px;
    padding:clamp(36px,5vw,72px) clamp(24px,4vw,64px);
    margin-top:64px !important;
    box-shadow:var(--shadow-md);
    border:1px solid rgba(10,22,40,.05);
  }
  .ec-postSingle__meta{
    display:flex;flex-wrap:wrap;gap:14px;align-items:center;
    font-size:12.5px;letter-spacing:.04em;color:var(--muted);
  }
  .ec-postSingle__meta a,
  .ec-postSingle__meta time{color:var(--muted);transition:.2s}
  .ec-postSingle__meta .wp-block-post-terms a{
    background:rgba(212,177,99,.12);color:var(--gold-deep);
    padding:5px 12px;border-radius:999px;
    font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  }
  .ec-postSingle__meta .wp-block-post-terms a:hover{background:var(--gold);color:var(--navy)}
  .ec-postSingle__meta .wp-block-post-author-name{color:var(--navy);font-weight:500}

  .ec-postSingle .wp-block-post-featured-image img{
    width:100%;height:auto;border-radius:22px;
    box-shadow:var(--shadow-md);
  }

  /* Treść posta — typografia */
  .ec-postSingle .wp-block-post-content{font-size:17px;line-height:1.78;color:#2f3a4d}
  .ec-postSingle .wp-block-post-content > *{margin-top:24px;margin-bottom:0}
  .ec-postSingle .wp-block-post-content > *:first-child{margin-top:0}
  .ec-postSingle .wp-block-post-content h2{font-size:clamp(26px,2.6vw,34px);margin-top:48px;color:var(--navy)}
  .ec-postSingle .wp-block-post-content h3{font-size:clamp(20px,1.8vw,24px);margin-top:36px;color:var(--navy);font-weight:500}
  .ec-postSingle .wp-block-post-content h2 em,
  .ec-postSingle .wp-block-post-content h3 em{color:var(--gold-deep)}
  .ec-postSingle .wp-block-post-content p{color:#374151}
  .ec-postSingle .wp-block-post-content a{
    color:var(--navy);font-weight:500;
    border-bottom:1px solid var(--gold);
    transition:.2s;
  }
  .ec-postSingle .wp-block-post-content a:hover{color:var(--gold-deep)}
  .ec-postSingle .wp-block-post-content blockquote{
    border-left:3px solid var(--gold);
    padding:12px 0 12px 28px;margin:32px 0;
    font-family:"Cormorant Garamond",serif;font-size:21px;line-height:1.5;color:var(--navy);
    font-style:italic;
  }
  .ec-postSingle .wp-block-post-content ul,
  .ec-postSingle .wp-block-post-content ol{padding-left:24px}
  .ec-postSingle .wp-block-post-content ul li,
  .ec-postSingle .wp-block-post-content ol li{margin:8px 0;color:#374151}
  .ec-postSingle .wp-block-post-content figure{margin:32px 0}
  .ec-postSingle .wp-block-post-content img{border-radius:14px}
  .ec-postSingle .wp-block-post-content code{
    background:var(--cream);padding:2px 8px;border-radius:6px;
    font-size:.92em;color:var(--navy);
  }
  .ec-postSingle .wp-block-post-content pre{
    background:var(--navy);color:var(--cream);
    padding:20px 24px;border-radius:14px;overflow-x:auto;
    font-size:14px;line-height:1.55;
  }

  /* Stopka posta — tagi + back-link */
  .ec-postSingle__foot{font-size:13.5px;color:var(--muted)}
  .ec-postSingle__foot .wp-block-post-terms a{
    background:var(--cream);color:var(--navy);
    padding:5px 12px;border-radius:999px;font-size:12.5px;
    margin-right:6px;transition:.2s;
  }
  .ec-postSingle__foot .wp-block-post-terms a:hover{background:var(--gold);color:var(--navy)}
  .ec-postSingle__back{margin:0}
  .ec-postSingle__back a{
    color:var(--navy);font-weight:600;
    border-bottom:1px solid var(--line);transition:.2s;
  }
  .ec-postSingle__back a:hover{color:var(--gold-deep);border-color:var(--gold)}

  /* ---------- Responsive ---------- */
  @media (max-width:980px){
    .ec-blogQuery > .wp-block-post-template,
    .wp-block-post-template.ec-blog__grid{grid-template-columns:repeat(2,1fr)}
  }
  @media (max-width:640px){
    .ec-blogQuery > .wp-block-post-template,
    .wp-block-post-template.ec-blog__grid{grid-template-columns:1fr}
    .ec-postSingle{padding:32px 24px;margin-top:40px !important;border-radius:18px}
    .ec-postSingle .wp-block-post-content{font-size:16px}
  }

  /* ============================================================
     CLASSIC-THEME COMPAT (header.php / footer.php — Faza N)
     Wtyczki używające get_header()/get_footer() (np. RS Real Estate)
     dostają nasz blokowy header + footer. Tu tylko oddech od headera —
     plugin zarządza swoim własnym layoutem wewnątrz .rs-single-wrapper.
     ============================================================ */
  .ec-classic-main{
    background:var(--cream);
    padding-top:48px;
    padding-bottom:24px;
    min-height:60vh;
  }
  @media (max-width:640px){
    .ec-classic-main{padding-top:32px}
  }


/* -------------------------------------------------------------------------
   Stare patterny EliteCore (section.ec-*) renderowane bezpośrednio w
   post_content — wybijają się z constrained layout do pełnej szerokości
   viewportu. Bloki natywne (.wp-block-elitecore-*) z alignfull już to
   robią same.
   ------------------------------------------------------------------------- */
  .wp-block-post-content > section[class*="ec-"]:not([class*="wp-block-elitecore"]),
  .entry-content > section[class*="ec-"]:not([class*="wp-block-elitecore"]) {
    max-width: none !important;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: auto;
  }

/* -------------------------------------------------------------------------
   Oferta - ec-shortcode (header + grid kafelków z plugina rs-realestate)
   ------------------------------------------------------------------------- */
  .ec-shortcode{ padding:80px 28px 64px; }
  .ec-shortcode .wrap{ max-width:1320px; margin:0 auto; padding:0; }
  .ec-shortcode__head{
    max-width:760px; margin:0 auto 48px;
    text-align:center;
  }
  .ec-shortcode__head .eyebrow{ display:inline-flex; justify-content:center; }
  .ec-shortcode__head h2{ margin-top:14px; text-align:center; }
  .ec-shortcode__head h2 em{ color:var(--gold-deep); font-style:italic; }
  .ec-shortcode__head p{ margin-top:18px; text-align:center; color:#4a5568; line-height:1.7; }

  /* Placeholder gdy brak shortcode */
  .ec-shortcode__box{
    border:1.5px dashed rgba(10,22,40,.18);
    border-radius:24px;
    padding:64px 32px; text-align:center;
    background:rgba(212,177,99,.04);
    color:#4a5568;
  }
  .ec-shortcode__icon{ display:inline-flex; color:var(--gold-deep); margin-bottom:12px; }
  .ec-shortcode__tag{ font-family:monospace; font-size:14px; color:var(--gold-deep); margin-bottom:12px; }
  .ec-shortcode__hint{ max-width:520px; margin:0 auto; font-size:14px; line-height:1.6; }

  @media (max-width:768px){
    .ec-shortcode{ padding:48px 18px; }
  }

/* -------------------------------------------------------------------------
   Kontakt-newsletter (ec-contact) - ograniczenie max-width żeby nie był
   na całą szerokość ekranu. Dopasowuje do reszty sekcji (1320px).
   ------------------------------------------------------------------------- */
  .ec-contact.alignfull,
  .wp-block-elitecore-kontakt-newsletter.alignfull,
  .ec-contact{
    max-width:1320px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  @media (max-width:768px){
    .ec-contact.alignfull,
    .wp-block-elitecore-kontakt-newsletter.alignfull,
    .ec-contact{ padding:40px 18px; }
  }

/* -------------------------------------------------------------------------
   Cookie banner (ec-cookie). Floating bottom, dark navy, 2 actions.
   ------------------------------------------------------------------------- */
  .ec-cookie{
    position:fixed; left:18px; right:18px; bottom:18px; z-index:9999;
    background:var(--navy,#0d1b2a); color:#fff;
    border-radius:14px; box-shadow:0 18px 48px rgba(0,0,0,.18);
    transform:translateY(120%); opacity:0; transition:.3s ease;
    pointer-events:none;
  }
  .ec-cookie.is-visible{ transform:translateY(0); opacity:1; pointer-events:auto; }
  .ec-cookie__inner{ max-width:1200px; margin:0 auto; padding:18px 22px; display:grid; grid-template-columns:1fr auto; gap:16px; align-items:center; }
  .ec-cookie__msg{ margin:0; font-size:14px; line-height:1.55; color:rgba(255,255,255,.92); }
  .ec-cookie__msg a{ color:var(--gold,#C8A86A); text-decoration:underline; margin-left:6px; }
  .ec-cookie__actions{ display:flex; gap:10px; flex-wrap:wrap; }
  .ec-cookie__btn{
    border:0; cursor:pointer;
    padding:11px 18px; border-radius:999px;
    font-family:inherit; font-size:13.5px; font-weight:600;
    background:var(--gold,#C8A86A); color:var(--navy,#0d1b2a);
    transition:.2s;
  }
  /* --ghost / --accept ujednolicone jako gold pill (klient: jeden uniwersalny styl CTA). */
  .ec-cookie__btn--ghost,
  .ec-cookie__btn--accept{ background:var(--gold,#C8A86A); color:var(--navy,#0d1b2a); border:1px solid transparent; }
  .ec-cookie__btn:hover,
  .ec-cookie__btn--ghost:hover,
  .ec-cookie__btn--accept:hover{ background:var(--gold-deep,#b48f3d); color:#fff; }
  @media (max-width:640px){
    .ec-cookie{ left:10px; right:10px; bottom:10px; }
    .ec-cookie__inner{ grid-template-columns:1fr; padding:14px 16px; }
    .ec-cookie__actions{ flex-direction:column; }
    .ec-cookie__btn{ width:100%; }
  }

  /* Booking widget — legacy max-width:1180px + ujemny margin removal:
     po redesignie .booking-section ma własne padding/margin (L1963),
     .booking-card centrowany 1280px z ::before pasek. Stara reguła
     wymuszała 1180px na block.alignfull z !important → asymetryczne
     content area + zasłanianie stats Hero przez margin:-72px.
     Reguła usunięta — alignfull działa natywnie (100vw block). */


/* =========================================================================
   FAZA S — Mobilna responsywność (audyt + naprawa)
   ========================================================================= */

/* Hamburger button — domyślnie ukryty (desktop). KACPER: bez transition. */
.ec-header__burger{
	display:none;
	width:40px;height:40px;
	padding:0;
	background:transparent;
	border:1px solid rgba(255,255,255,.32);
	border-radius:8px;
	cursor:pointer;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:4px;
}
.ec-header__burger span{
	display:block;width:18px;height:2px;background:#fff;border-radius:2px;
}
.ec-header.is-stuck .ec-header__burger{border-color:rgba(255,255,255,.32)}
.ec-header.is-stuck .ec-header__burger span{background:#fff}
.ec-header__burger.is-active span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.ec-header__burger.is-active span:nth-child(2){opacity:0}
.ec-header__burger.is-active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* ===== Tablet (≤1024px) ===== */
@media (max-width:1024px){
	.ec-header__phone{display:none}
}

/* ===== Mobile (≤768px) — większe poprawki ===== */
@media (max-width:768px){
	/* Header — pełnowymiarowa belka (KACPER: zawsze "stuck" style),
	   zostaje logo + hamburger; nav/phone/appoint chowamy do menu */
	.ec-header{padding:0}
	.ec-header__inner{gap:10px;padding:12px 18px}
	.ec-header__logo img{height:28px}
	.ec-header__appoint{display:none}
	.ec-lang{display:none}
	.ec-header__burger{display:flex}

	/* Nav — full-screen overlay po klikniecu hamburgera. KACPER: bez animacji.
	   Pojawia się/znika natychmiast — bez slide-down, fade, stagger. */
	.ec-nav{
		display:none;
		position:fixed;
		top:54px;left:0;right:0;
		height:calc(100vh - 54px);
		background:rgba(13,27,42,.98);
		-webkit-backdrop-filter:blur(20px);
		backdrop-filter:blur(20px);
		flex-direction:column;
		gap:0;
		padding:24px 28px;
		overflow-y:auto;
		z-index:9000;
	}
	.ec-nav.is-open{display:flex}
	.ec-header.is-stuck .ec-nav.is-open a{color:#fff !important}
	.ec-nav a{
		display:block;
		padding:18px 4px;
		font-size:18px;
		font-weight:500;
		color:#fff !important;
		background:transparent !important;
		border-radius:0;
		border-bottom:1px solid rgba(255,255,255,.18);
	}
	.ec-nav a:last-child{border-bottom:none}

	/* Burger tez nad menu */
	.ec-header__burger{ z-index:9100; position:relative; }
	/* Header sticky podnosimy nad menu zeby logo bylo widoczne */
	.ec-header{ z-index:9100; }

	/* Body lock when menu open */
	body.ec-menu-open{overflow:hidden}

	/* ===== Hero (KACPER — video bg, tekst bezpośrednio na video) ===== */
	.ec-hero__content{padding:32px 22px;max-width:none}
	.ec-hero__content h1{font-size:32px;line-height:1.1;max-width:none}
	.ec-hero__content p{font-size:14.5px;max-width:none}
	.ec-hero__ctaRow{flex-wrap:wrap;gap:8px;margin-top:22px}
	.ec-hero__ctaRow .ec-pill{font-size:13px;padding:11px 18px}

	/* ===== Subhero ===== */
	.ec-subhero__content{padding:32px 22px}
	.ec-subhero__content h1{font-size:34px;line-height:1.15}
	.ec-subhero__content p{font-size:14.5px}

	/* ===== Sekcje globalnie — bezpieczne marginesy boczne ===== */
	.wrap{padding:0 22px}
	.ec-usp,
	.ec-buyTypes,
	.ec-types,
	.ec-paths,
	.ec-values,
	.ec-stats,
	.ec-faq,
	.ec-process,
	.ec-buyProcess,
	.ec-channels,
	.ec-includes,
	.ec-pricing,
	.ec-compare,
	.ec-financing,
	.ec-costs,
	.ec-regions,
	.ec-form,
	.ec-mapInfo,
	.ec-people,
	.ec-contact,
	.ec-aboutCta,
	.ec-story,
	.ec-cases,
	.ec-team,
	.ec-reviews,
	.ec-blog,
	.ec-search,
	.ec-newsletter,
	.ec-map,
	.ec-seo,
	.ec-apartHead,
	.ec-apartBanner,
	.ec-valuation{
		padding-left:22px;padding-right:22px;
		padding-top:48px;padding-bottom:48px;
	}

	/* ===== Featured 3x3 → 1 kolumna na mobile ===== */
	.ec-featured__grid{grid-template-columns:1fr !important;gap:18px}
	.ec-featured{padding:48px 22px}

	/* ===== Types piktogramy → 2 kolumny ===== */
	.ec-types__grid{grid-template-columns:repeat(2,1fr) !important;gap:14px}
	.ec-buyTypes__grid{grid-template-columns:repeat(2,1fr) !important;gap:14px}

	/* ===== Trzy ścieżki → 1 kolumna ===== */
	.ec-paths__grid{grid-template-columns:1fr !important;gap:18px}

	/* ===== USP / Values / About-stats → 1 kolumna ===== */
	.ec-usp__grid{grid-template-columns:1fr !important;gap:18px}
	.ec-values__grid{grid-template-columns:1fr !important;gap:18px}
	.ec-stats__card{flex-direction:column;gap:24px;padding:28px}
	.ec-stats__item{padding:0 !important;border:none !important}
	.ec-stats__item + .ec-stats__item{border-top:1px solid var(--line) !important;padding-top:24px !important}

	/* ===== Process / Buy-process → 1 kolumna, ukryj line ===== */
	.ec-process__grid,
	.ec-buyProcess__grid{grid-template-columns:1fr !important;gap:24px}
	.ec-process__line,
	.ec-buyProcess__line{display:none}

	/* ===== Channels / Regions / Cases / Team → 1 kolumna ===== */
	.ec-channels__grid{grid-template-columns:1fr !important;gap:16px}
	.ec-regions__grid{grid-template-columns:1fr !important;gap:14px}
	.ec-cases__grid{grid-template-columns:1fr !important;gap:18px}
	.ec-team__grid{grid-template-columns:1fr !important;gap:16px}

	/* ===== Pricing / Includes / Story → split layout staje się column ===== */
	.ec-pricing__grid,
	.ec-includes__grid,
	.ec-story__grid{grid-template-columns:1fr !important;gap:32px}
	.ec-pricing__big .pct{font-size:72px}
	.ec-includes__list{grid-template-columns:1fr !important}
	.ec-story__visual{height:380px;max-width:100%}

	/* ===== Compare → tabela do scroll-x ===== */
	.ec-compare__table{overflow-x:auto;font-size:13px}
	.ec-compare__row{min-width:540px}

	/* ===== Costs table → kompaktowa ===== */
	.ec-costs__row{grid-template-columns:1fr !important;gap:6px;padding:14px 16px}
	.ec-costs__row.is-head{display:none}
	.ec-costs__pct{font-weight:700;color:var(--gold-deep)}

	/* ===== Financing → 1 kolumna ===== */
	.ec-financing__grid{grid-template-columns:1fr !important;gap:18px}

	/* ===== About-cta ===== */
	.ec-aboutCta__inner{padding:48px 22px}
	.ec-aboutCta__inner h2{font-size:30px}
	.ec-aboutCta__btns{flex-wrap:wrap;gap:8px}

	/* ===== Apartament banner =====
	   Naprawa: __top (absolute) i __content nachodzily na siebie na malych
	   ekranach. Damy banerowi wieksza min-height + odpowiednie paddingi. */
	.ec-apartBanner{
		margin:0 14px 32px;
		height:auto;
		min-height:600px;
		border-radius:24px;
	}
	.ec-apartBanner__top{
		padding:24px 22px;
		gap:12px;
	}
	.ec-apartBanner__tag{font-size:10px;letter-spacing:.24em}
	.ec-apartBanner__counter{font-size:12px}
	.ec-apartBanner__content{
		padding:90px 22px 32px;
	}
	.ec-apartBanner__content h2{
		font-size:26px;
		line-height:1.18;
		max-width:none;
	}
	.ec-apartBanner__row{
		flex-direction:column;
		gap:20px;
		align-items:flex-start;
		margin-top:24px;
	}
	.ec-apartBanner__feats{flex-wrap:wrap;gap:14px 24px}
	.ec-apartBanner__feat .num{font-size:24px}
	.ec-apartBanner__feat .lbl{font-size:11px}
	.ec-apartBanner__cta{flex-wrap:wrap;gap:8px;width:100%}
	.ec-apartBanner__cta .ec-pill{flex:1 1 auto;justify-content:center;text-align:center;font-size:13px}

	/* ===== Form ===== */
	.ec-form__grid{grid-template-columns:1fr !important;gap:24px}
	.ec-form__row{grid-template-columns:1fr !important}
	.ec-form__topics{grid-template-columns:1fr !important}
	.ec-form__main{padding:32px 22px}

	/* ===== MapInfo ===== */
	.ec-mapInfo__grid{grid-template-columns:1fr !important;gap:32px}
	.ec-mapInfo__map{min-height:240px}

	/* ===== Newsletter / Contact form =====
	   Naprawa: na mobile widac byl "pasek" po lewej (gold radial gradient
	   wystawal poza panel) i formularz wygladal na ucietry. Wymuszamy
	   overflow:hidden i padding wewnatrz panelu zamiast okladzin. */
	.ec-contact{padding:48px 14px !important}
	.ec-contact__panel{
		display:flex !important;
		flex-direction:column;
		padding:0 !important;
		overflow:hidden;
		border-radius:24px;
	}
	.ec-contact__left{
		padding:40px 24px !important;
		overflow:hidden;
		position:relative;
	}
	.ec-contact__left::before{
		display:none;
	}
	.ec-contact__left h2{font-size:26px;line-height:1.2}
	.ec-contact__left p{font-size:14.5px;max-width:none}
	.ec-contact__row{grid-template-columns:1fr !important;gap:10px}
	.ec-contact__form{margin-top:24px;gap:10px}
	.ec-contact__input{padding:13px 14px;font-size:14px}
	.ec-contact__textarea{min-height:120px}
	.ec-contact__check{font-size:12.5px;line-height:1.5}
	.ec-contact__submit{padding:14px 20px;font-size:13.5px;justify-content:center;align-self:stretch}
	.ec-contact__right{min-height:280px}
	.ec-contact__info{padding:24px 22px}
	.ec-contact__infoCard{padding:22px 24px}
	.ec-contact__infoCard h4{font-size:14px;letter-spacing:.16em;margin-bottom:10px}
	.ec-contact__infoRow{font-size:13.5px;padding:6px 0;gap:10px}
	.ec-contact__infoRow .ic{width:32px;height:32px}

	/* ===== Reviews ===== */
	.ec-reviews__head{flex-direction:column;align-items:flex-start;gap:16px}
	.ec-reviews__nav{align-self:flex-end}

	/* ===== Footer ===== */
	.ec-footer__top{
		grid-template-columns:1fr !important;
		gap:36px;
		text-align:center;
	}
	.ec-footer__brand{ display:flex; flex-direction:column; align-items:center; }
	.ec-footer__brand img{ margin-left:auto; margin-right:auto; }
	.ec-footer__brand p{ max-width:340px; margin-left:auto; margin-right:auto; }
	.ec-footer__col{ text-align:center; }
	.ec-footer__col h4{ text-align:center; }
	.ec-footer__col a{ text-align:center; }
	.ec-footer__bottom{
		flex-direction:column;
		align-items:center;
		gap:16px;
		text-align:center;
	}
	.ec-footer__social{ justify-content:center; }

	/* ===== Heading sizes ===== */
	h1{font-size:34px !important;line-height:1.15}
	h2{font-size:28px !important;line-height:1.2}
	h3{font-size:18px !important}

	/* ===== Big number on pricing ===== */
	.ec-pricing__inner{padding:48px 22px}
}

/* ===== Bardzo małe (≤480px) ===== */
@media (max-width:480px){
	.ec-types__grid,
	.ec-buyTypes__grid{grid-template-columns:1fr !important}
	.ec-hero__content h1{font-size:30px}
	h1{font-size:28px !important}
	h2{font-size:24px !important}
}

/* =========================================================================
   Booking widget — mobile (≤768px): 1-kolumna pionowo
   ========================================================================= */
@media (max-width:768px){
	.ec-booking{padding:0 22px;margin-top:-32px}
	.ec-booking__card{
		display:flex !important;
		flex-direction:column;
		grid-template-columns:1fr !important;
		align-items:stretch;
		padding:18px;
		gap:0 !important;
	}
	.ec-booking__field{
		width:100%;
		padding:14px 4px;
		border-right:none !important;
		border-bottom:1px solid rgba(10,22,40,.08);
	}
	.ec-booking__field:last-of-type,
	.ec-booking__field:nth-last-child(2){border-bottom:none}
	.ec-booking__btn{
		width:100%;
		justify-content:center;
		padding:14px 20px;
		font-size:14px;
		margin-top:8px;
		margin-left:0;
	}
}

/* ============================================================
   gold accent — added per client feedback (rollback: usuń cały
   blok poniżej, do końca pliku). Dwa subtelne dodatki:
   1) gold dot pod aktywnym linkiem w nawigacji
   2) gold rombowe bullety w treści posta blogowego
   ============================================================ */

/* 1) gold dot pod hoverowanym linkiem w nav (oraz aktywną stroną
       gdy WP menu doda klasę current-menu-item w przyszłości) */
.ec-nav a{
	position:relative;
}
.ec-nav a::after{
	content:'';
	position:absolute;
	left:50%;
	bottom:3px;
	width:4px;
	height:4px;
	margin-left:-2px;
	border-radius:50%;
	background:transparent;
	transition:background .2s ease;
}
.ec-nav a:hover::after,
.ec-nav .current-menu-item > a::after,
.ec-nav .current_page_item > a::after,
.ec-nav .current-menu-ancestor > a::after{
	background:var(--gold);
}

/* 2) gold rombowe bullety w treści wpisu blogowego */
.ec-postSingle .wp-block-post-content ul{
	list-style:none;
	padding-left:6px;
}
.ec-postSingle .wp-block-post-content ul li{
	position:relative;
	padding-left:22px;
}
.ec-postSingle .wp-block-post-content ul li::before{
	content:'';
	position:absolute;
	left:2px;
	top:11px;
	width:7px;
	height:7px;
	background:var(--gold);
	transform:rotate(45deg);
	border-radius:1px;
}
/* /gold accent */

/* ============================================================
   zasady projektowe — added per client docx 2026-05-07
   Wytyczne klienta z pliku "Najważniejsze zasady projektowe.docx".
   Cały blok można wyciąć w razie wycofania zmian.
   ============================================================ */

/* rule #14: social proof — pasek liczb na stronie głównej.
   .ec-stats ma margin-top:-44px (designed pod subhero); na home
   wstawiamy go po sekcji "trzy-sciezki", więc resetujemy odstępy. */
.ec-home-stats{padding:48px 0}
.ec-home-stats .ec-stats{margin-top:0;padding-top:0;padding-bottom:0}

/* rule #2 (pierwsze 3 sekundy) + rule #7 (eye-tracking — duże elementy/kontrast):
   Pierwsze CTA w hero ma być wyraźnie wyróżnione, żeby był pierwszym punktem
   wzroku po nagłówku. Drugi CTA pozostaje równorzędny, ale wizualnie cofnięty. */
.ec-hero__ctaRow .ec-pill:first-child{
  padding:14px 26px !important;
  font-size:14px !important;
  box-shadow:0 12px 30px -10px rgba(201,169,97,.55), 0 2px 6px rgba(0,0,0,.18);
}
.ec-hero__ctaRow .ec-pill:first-child:hover{transform:translateY(-1px)}

/* rule #1, #8 (F-pattern — najważniejsze treści po lewej):
   Eyebrow + h1 + p w hero są już left-aligned; gwarantujemy też,
   że na tabletach nie wycentrują się przez globalne reguły. */
.ec-hero__content,
.ec-hero__content .eyebrow,
.ec-hero__content h1,
.ec-hero__content p{text-align:left}

/* rule #3, #10, #12 (cognitive load — prostota = wyższa konwersja):
   Drobny "oddech" w sekcjach z gęstym layoutem — większy gap między
   kafelkami "Trzy ścieżki", żeby wzrok nie musiał przeskakiwać między
   stykającymi się blokami. */
@media (min-width:961px){
  .ec-paths__grid{gap:32px}
}

/* /zasady projektowe */



/* ╔══════════════════════════════════════════════════════════════════╗
   ║  ELITECORE — NOWY DESIGN · WARSTWA FUNDAMENTU                      ║
   ║  Dodane: 2026-05-24. Wszystko POWYŻEJ tego banera to stary motyw  ║
   ║  (klasy .ec-*) — pozostaje aktywny dla podstron jeszcze nieprze-   ║
   ║  budowanych i zostanie usunięte po migracji wszystkich stron.      ║
   ║                                                                    ║
   ║  Poniżej: kompletny arkusz nowego designu (tokeny :root, reset,    ║
   ║  typografia, przyciski, nawigacja, page-hero/subhero, booking,     ║
   ║  sekcje stron O nas / Kup / Sprzedaj, stopka, widget, responsywne) ║
   ║  + dodatki integracyjne WordPress. Źródło: nowy-design/o-nas.html. ║
   ║  Prompty podstron DOPISUJĄ swój CSS PONIŻEJ tej sekcji.            ║
   ╚══════════════════════════════════════════════════════════════════╝ */

/* ═══ NOWY DESIGN — ARKUSZ BAZOWY (z nowy-design/o-nas.html) ═══ */
:root {
  --bg:    #F7F3ED; --bg2:   #EFE9DF; --white: #FFFFFF;
  --text:  #1B1815; --muted: #7A6F65;
  --gold:  #d7b363; --gold-h:#c4a050; --gold-deep:#a8862e; --sand: #DDD4C4;
  --navy:  #0e1e38; --navy-2: #182d4e; --navy-deep: #0a1729;
  --display: #0e1e38;
  --border: rgba(14,30,56,.18);
  --serif: 'Cormorant Garamond', 'EB Garamond', Georgia, serif;
  --sans:  'Inter', 'Helvetica Neue', system-ui, sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:78px;}
body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-weight:400;letter-spacing:.005em;}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
button{font-family:inherit;}
::-webkit-scrollbar{width:3px;}
::-webkit-scrollbar-thumb{background:var(--gold);}

/* UTILITIES */
.eyebrow{font-size:.62rem;letter-spacing:.38em;text-transform:uppercase;color:var(--display);font-weight:600;font-family:var(--sans);display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;}
.eyebrow::before{content:'';width:24px;height:1px;background:var(--display);flex-shrink:0;opacity:.55;}
.eyebrow.eb-gold,
.page-hero .eyebrow{color:var(--gold) !important;font-weight:500;}
.eyebrow.eb-gold::before,
.page-hero .eyebrow::before{background:var(--gold) !important;opacity:1;}
h2.display{font-family:var(--serif);font-size:clamp(2.4rem,4.2vw,3.8rem);font-weight:300;line-height:1.04;color:var(--display);margin-bottom:24px;letter-spacing:-.015em;}
h2.display em{font-style:italic;color:var(--gold);font-weight:300;}
h1,h2,h3,h4{color:var(--display);}
.lead{font-size:1rem;font-weight:300;color:var(--muted);max-width:580px;line-height:1.75;}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:7px;padding:13px 30px;border-radius:100px;font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;cursor:pointer;border:none;transition:transform .2s,background .2s,box-shadow .2s;}
.btn:hover{transform:translateY(-2px);}
.btn-gold{background:var(--gold);color:#fff;box-shadow:0 6px 20px rgba(215,179,99,.28);}
.btn-gold:hover{background:var(--gold-h);}
.btn-ghost{background:transparent;color:var(--text);border:1.5px solid rgba(27,24,21,.22);}
.btn-ghost:hover{border-color:var(--text);}
.btn-link{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:500;background:none;border:none;cursor:pointer;padding:0;transition:gap .2s;}
.btn-link:hover{gap:10px;}

/* NAV — navy */
.nav{position:fixed;inset:0 0 auto 0;z-index:200;height:78px;padding:0 64px;display:flex;align-items:center;justify-content:space-between;background:rgba(10,23,41,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(215,179,99,.18);transition:box-shadow .3s,background .3s;}
.nav.scrolled{background:rgba(10,23,41,.98);box-shadow:0 2px 28px rgba(0,0,0,.18);}
.nav-logo{display:block;height:34px;width:auto;flex-shrink:0;}
.nav-logo svg{height:34px;width:auto;display:block;}
.nav .nav-logo svg path[fill="#1D1915"]{fill:#FDFEFE;}
.nav .nav-logo svg path[fill="#BF8728"]{fill:#d7b363;}
.nav-links{display:flex;gap:32px;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:400;color:rgba(255,255,255,.6);white-space:nowrap;}
.nav-links a{transition:color .25s ease;white-space:nowrap;}
.nav-links a:hover{color:#fff;}
.nav-links a.current{color:#fff;border-bottom:1px solid var(--gold);padding-bottom:2px;}
.nav-right{display:flex;align-items:center;gap:20px;flex-shrink:0;}
.nav-right .btn{white-space:nowrap;padding:11px 22px;}
.nav-tel{font-size:.85rem;font-weight:400;letter-spacing:.02em;color:rgba(255,255,255,.85);transition:color .25s ease;white-space:nowrap;}
.nav-tel:hover{color:#fff;}
.nav-lang{font-size:.65rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.18);padding:6px 10px;flex-shrink:0;}
.nav-burger{display:none;flex-direction:column;gap:5px;padding:8px;background:none;border:none;cursor:pointer;}
.nav-burger span{display:block;width:22px;height:1.5px;background:#fff;}

/* PAGE HERO — compact cinematic, navy gradient, gold accents */
.page-hero{
  position:relative;
  min-height:560px;
  padding:160px 80px 130px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  isolation:isolate;
}
.page-hero__bg{
  position:absolute;inset:0;z-index:0;
  background-size:cover;background-position:center;
  animation:phkb 28s ease-in-out infinite alternate;
}
@keyframes phkb{from{transform:scale(1.02);}to{transform:scale(1.08);}}
.page-hero__veil{
  position:absolute;inset:0;z-index:1;
  background:
    radial-gradient(ellipse at top right, rgba(244,217,140,.10) 0%, transparent 55%),
    linear-gradient(180deg,
      rgba(10,23,41,.55) 0%,
      rgba(10,23,41,.35) 35%,
      rgba(10,23,41,.55) 70%,
      rgba(10,23,41,.85) 100%);
}
.page-hero__inner{
  position:relative;z-index:2;
  max-width:880px;text-align:center;color:#fff;
  animation:hero-fade 1s .15s ease both;
}
@keyframes hero-fade{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:none;}}
.page-hero .eyebrow{justify-content:center;margin-bottom:22px;}
.page-hero .eyebrow::before{display:none;}
.page-hero .eyebrow::after{content:'';width:24px;height:1px;background:var(--gold);opacity:1;margin-left:12px;}
.page-hero__title{
  font-family:var(--serif);font-weight:300;
  font-size:clamp(2.8rem,5.4vw,4.8rem);
  line-height:1.06;letter-spacing:-.02em;color:#fff;
  text-shadow:0 2px 32px rgba(0,0,0,.35);
  margin-bottom:26px;
}
.page-hero__title em{
  font-style:italic;color:var(--gold);font-weight:300;
  background:linear-gradient(180deg,#f4d98c 0%,#d7b363 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.page-hero__lead{
  font-size:1.02rem;font-weight:300;color:rgba(255,255,255,.78);
  line-height:1.75;max-width:620px;margin:0 auto;
  text-shadow:0 1px 20px rgba(0,0,0,.35);
}

/* BOOKING WIDGET — search bar with 4 fields */
.booking-section{padding:0 80px;margin-top:0;position:relative;z-index:30;}
.booking-card{
  background:var(--white);
  border:1px solid var(--border);
  box-shadow:0 28px 64px rgba(14,30,56,.18),0 2px 0 rgba(215,179,99,.08);
  display:grid;grid-template-columns:repeat(4,1fr) auto;
  align-items:stretch;
}
.bk-cell{padding:20px 24px 18px;border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;min-height:84px;transition:background .2s;}
.bk-cell:hover{background:var(--bg);}
.bk-label{font-size:.59rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-weight:500;}
.bk-select{
  appearance:none;-webkit-appearance:none;
  background:transparent;border:none;outline:none;
  font-family:var(--sans);font-size:.95rem;font-weight:400;color:var(--text);
  padding:0 24px 0 0;width:100%;cursor:pointer;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%237A6F65' stroke-width='1.6'><path d='M1 1.5l5 5 5-5'/></svg>");
  background-repeat:no-repeat;background-position:right center;
}
.bk-submit{
  background:var(--gold);color:#fff;border:none;cursor:pointer;
  padding:0 38px;font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;
  display:inline-flex;align-items:center;gap:10px;
  transition:background .2s;white-space:nowrap;
}
.bk-submit:hover{background:var(--gold-h);}
.bk-submit svg{width:15px;height:15px;}

/* SECTION wrappers */
.section{padding:120px 80px;}
.section.alt{background:var(--bg2);}
.section-head{text-align:center;max-width:880px;margin:0 auto 64px;}
.section-head .eyebrow{justify-content:center;}
.section-head h2{margin-bottom:18px;}
.section-head p{font-size:1rem;font-weight:300;color:var(--muted);line-height:1.75;max-width:680px;margin:0 auto;}

/* USP — 4 cards with icons */
.usp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.usp-card{
  background:var(--white);border:1px solid var(--border);
  padding:40px 32px 36px;
  display:flex;flex-direction:column;gap:16px;
  transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1),border-color .4s ease;
}
.usp-card:hover{transform:translateY(-6px);box-shadow:0 24px 56px rgba(14,30,56,.12);border-color:var(--gold);}
.usp-ico{
  width:54px;height:54px;display:flex;align-items:center;justify-content:center;
  background:rgba(215,179,99,.10);color:var(--gold);
  border:1px solid rgba(215,179,99,.25);
}
.usp-ico svg{width:26px;height:26px;}
.usp-card h3{font-family:var(--serif);font-size:1.3rem;font-weight:500;line-height:1.25;color:var(--display);}
.usp-card p{font-size:.92rem;font-weight:300;color:var(--muted);line-height:1.7;}

/* REGIONS — 6 cards with image bg */
.regions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.region{
  position:relative;height:340px;overflow:hidden;display:block;
  border:1px solid var(--border);
  transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1);
}
.region:hover{transform:translateY(-6px);box-shadow:0 32px 80px rgba(10,23,41,.22);}
.region__bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transition:transform 1.4s cubic-bezier(.2,.7,.2,1);
}
.region:hover .region__bg{transform:scale(1.06);}
.region::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,30,56,.10) 0%,rgba(14,30,56,.30) 50%,rgba(14,30,56,.85) 100%);
}
.region__price{
  position:absolute;top:18px;right:18px;z-index:2;
  background:var(--gold);color:#fff;
  padding:7px 14px;
  font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;
}
.region__content{
  position:absolute;left:24px;right:24px;bottom:24px;z-index:2;color:#fff;
}
.region__content h3{
  font-family:var(--serif);font-size:1.8rem;font-weight:400;color:#fff;margin-bottom:8px;
  text-shadow:0 2px 16px rgba(0,0,0,.4);
}
.region__content p{font-size:.85rem;font-weight:300;color:rgba(255,255,255,.85);line-height:1.55;text-shadow:0 1px 8px rgba(0,0,0,.4);}

/* TYPES — 6 cards w/ icon, count, desc; hover navy fill */
.types-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.type-card{
  background:var(--white);border:1px solid var(--border);
  padding:36px 28px;
  display:flex;flex-direction:column;gap:14px;
  position:relative;overflow:hidden;cursor:pointer;
  transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1),border-color .4s ease;
}
.type-card::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,var(--display) 0%,var(--navy-2) 100%);
  transform:translateY(100%);
  transition:transform .65s cubic-bezier(.2,.7,.2,1);
  z-index:0;
}
.type-card > *{position:relative;z-index:1;transition:color .4s ease;}
.type-card:hover{transform:translateY(-6px);box-shadow:0 24px 56px rgba(14,30,56,.22);border-color:var(--display);}
.type-card:hover::before{transform:translateY(0);}
.type-card:hover .type-ico{border-color:var(--gold);background:rgba(215,179,99,.10);}
.type-card:hover .type-ico svg{stroke:var(--gold);}
.type-card:hover h3{color:#fff;}
.type-card:hover .type-count{color:var(--gold);}
.type-card:hover p{color:rgba(255,255,255,.75);}
.type-ico{
  width:60px;height:60px;display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(14,30,56,.2);
  transition:border-color .4s ease,background .4s ease;
}
.type-ico svg{width:32px;height:32px;stroke:var(--display);fill:none;stroke-linecap:round;stroke-linejoin:round;transition:stroke .4s ease;}
.type-card h3{font-family:var(--serif);font-size:1.35rem;font-weight:500;color:var(--display);}
.type-count{font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600;}
.type-card p{font-size:.88rem;font-weight:300;color:var(--muted);line-height:1.65;}

/* PROCESS — 4 numbered steps */
.process-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:32px;
  position:relative;
}
.process-grid::before{
  content:'';position:absolute;top:32px;left:8%;right:8%;height:1px;
  background:linear-gradient(to right,transparent,rgba(215,179,99,.4) 10%,rgba(215,179,99,.4) 90%,transparent);
  z-index:0;
}
.step{
  display:flex;flex-direction:column;align-items:flex-start;gap:18px;
  position:relative;z-index:1;
}
.step__circle{
  width:64px;height:64px;border-radius:50%;
  background:var(--white);border:1px solid var(--gold);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-size:1.4rem;font-weight:400;color:var(--gold);
  transition:background .35s,color .35s,transform .35s;
}
.step:hover .step__circle{background:var(--gold);color:#fff;transform:scale(1.05);}
.step h3{font-family:var(--serif);font-size:1.3rem;font-weight:500;color:var(--display);line-height:1.25;}
.step p{font-size:.92rem;font-weight:300;color:var(--muted);line-height:1.7;}

/* COMPARE — Standard vs VIP */
.compare-head{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;
  margin-bottom:0;
  background:var(--bg2);
  border:1px solid var(--border);
  border-bottom:none;
}
.compare-head > div{padding:24px 28px;font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;font-weight:600;color:var(--muted);}
.compare-head > div + div{border-left:1px solid var(--border);}
.compare-head .col-vip{background:rgba(215,179,99,.10);color:var(--gold-deep);}
.compare-steps{border:1px solid var(--border);border-top:none;background:var(--white);}
.compare-row{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;
  border-bottom:1px solid var(--border);
}
.compare-row:last-child{border-bottom:none;}
.compare-row > .compare-title{
  padding:28px 28px;
  font-family:var(--serif);font-size:1.15rem;font-weight:500;color:var(--display);line-height:1.3;
  display:flex;align-items:center;
  background:var(--bg);
}
.compare-cell{
  padding:28px 28px;
  border-left:1px solid var(--border);
  font-size:.92rem;font-weight:300;color:var(--muted);line-height:1.7;
}
.compare-cell.vip{background:rgba(215,179,99,.04);color:var(--text);}
.compare-cell-label{display:none;}

/* FAQ */
.faq-list{display:flex;flex-direction:column;gap:14px;max-width:880px;margin:0 auto;}
.faq-item{
  background:var(--white);border:1px solid var(--border);
  transition:border-color .25s,box-shadow .25s;
}
.faq-item[open]{border-color:var(--gold);box-shadow:0 12px 32px rgba(14,30,56,.06);}
.faq-q{
  list-style:none;cursor:pointer;
  padding:22px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  font-family:var(--serif);font-size:1.15rem;font-weight:500;color:var(--display);line-height:1.35;
}
.faq-q::-webkit-details-marker{display:none;}
.faq-ic{
  flex-shrink:0;width:32px;height:32px;border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;color:var(--gold);
  transition:transform .35s,background .25s;
}
.faq-item[open] .faq-ic{transform:rotate(45deg);background:rgba(215,179,99,.10);}
.faq-ic svg{width:14px;height:14px;}
.faq-a{padding:0 28px 26px;}
.faq-a p{font-size:.95rem;font-weight:300;color:var(--muted);line-height:1.75;max-width:760px;}

/* CTA — dark form section */
.cta-section{padding:0 80px 120px;}
.cta-card{
  background:var(--navy);color:#fff;
  display:grid;grid-template-columns:1fr 1fr;gap:80px;
  padding:80px 72px;
  position:relative;overflow:hidden;
}
.cta-card::before{
  content:'';position:absolute;top:-20%;right:-10%;
  width:50%;height:80%;
  background:radial-gradient(circle at center,rgba(244,217,140,.18) 0%,transparent 70%);
  pointer-events:none;
}
.cta-left{position:relative;z-index:1;}
.cta-left .eyebrow{color:var(--gold);}
.cta-left .eyebrow::before{background:var(--gold);opacity:1;}
.cta-left h2{font-family:var(--serif);font-size:clamp(2rem,3.4vw,3.2rem);font-weight:300;color:#fff;line-height:1.1;letter-spacing:-.015em;margin-bottom:20px;}
.cta-left h2 em{font-style:italic;color:var(--gold);font-weight:300;}
.cta-left p{font-size:1rem;font-weight:300;color:rgba(255,255,255,.7);line-height:1.75;}
.cta-form{display:flex;flex-direction:column;gap:16px;position:relative;z-index:1;}
.cta-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.cta-field{display:flex;flex-direction:column;gap:7px;}
.cta-field label{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(215,179,99,.7);font-weight:500;}
.cta-field input,.cta-field select,.cta-field textarea{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(215,179,99,.2);
  color:#fff;padding:13px 16px;
  font-family:var(--sans);font-size:.95rem;outline:none;
  transition:border-color .2s,background .2s;
}
.cta-field input:focus,.cta-field select:focus,.cta-field textarea:focus{border-color:var(--gold);background:rgba(255,255,255,.10);}
.cta-field input::placeholder,.cta-field textarea::placeholder{color:rgba(215,179,99,.4);}
.cta-field textarea{min-height:88px;resize:vertical;}
.cta-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23d7b363' stroke-width='1.6'><path d='M1 1.5l5 5 5-5'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;}
.cta-consent{display:flex;align-items:flex-start;gap:10px;cursor:pointer;}
.cta-consent input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--gold);}
.cta-consent span{font-size:.78rem;font-weight:300;color:rgba(215,179,99,.7);line-height:1.55;}
.cta-submit{
  background:var(--gold);color:#fff;border:none;cursor:pointer;
  padding:16px 32px;
  font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  transition:background .2s,transform .2s;
  margin-top:4px;align-self:flex-start;
}
.cta-submit:hover{background:var(--gold-h);transform:translateY(-2px);}

/* PROCESS 5 STEPS */
.process-grid.cols-5{grid-template-columns:repeat(5,1fr);}
.process-grid.cols-5::before{left:6%;right:6%;}

/* CHANNELS — 4 simple icon cards */
.channels-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.channel-card{
  background:var(--white);border:1px solid var(--border);
  padding:36px 28px;
  display:flex;flex-direction:column;gap:16px;
  transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1),border-color .4s ease;
}
.channel-card:hover{transform:translateY(-6px);box-shadow:0 24px 56px rgba(14,30,56,.12);border-color:var(--gold);}
.channel-ico{
  width:54px;height:54px;display:flex;align-items:center;justify-content:center;
  background:rgba(215,179,99,.10);color:var(--gold);
  border:1px solid rgba(215,179,99,.25);
}
.channel-ico svg{width:26px;height:26px;}
.channel-card p{font-size:.92rem;font-weight:300;color:var(--muted);line-height:1.7;}

/* INCLUDES — checklist + photo collage + sticker */
.includes-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:start;}
.includes-text .eyebrow{margin-bottom:18px;}
.includes-text h2{margin-bottom:18px;}
.includes-text > p{font-size:1rem;font-weight:300;color:var(--muted);line-height:1.75;margin-bottom:36px;max-width:560px;}
.includes-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;}
.includes-item{display:flex;align-items:flex-start;gap:12px;font-size:.92rem;color:var(--text);font-weight:400;line-height:1.5;}
.includes-check{
  flex-shrink:0;width:20px;height:20px;border-radius:50%;
  background:var(--gold);color:#fff;
  display:flex;align-items:center;justify-content:center;
  margin-top:1px;
}
.includes-check::after{content:'';width:9px;height:5px;border-left:1.5px solid #fff;border-bottom:1.5px solid #fff;transform:rotate(-45deg) translate(1px,-1px);}
.includes-visual{position:relative;height:560px;}
.includes-photo{
  position:absolute;
  background-size:cover;background-position:center;
  overflow:hidden;
  box-shadow:0 24px 56px rgba(14,30,56,.18);
}
.includes-photo--1{top:0;left:0;width:62%;height:62%;}
.includes-photo--2{bottom:0;right:0;width:62%;height:62%;}
.includes-sticker{
  position:absolute;bottom:24px;left:24px;z-index:3;
  background:var(--navy);color:#fff;
  padding:20px 26px;
  display:flex;align-items:center;gap:16px;
  box-shadow:0 20px 48px rgba(14,30,56,.32);
}
.includes-sticker .num{
  font-family:var(--serif);font-size:2.4rem;font-weight:300;font-style:italic;color:var(--gold);line-height:1;letter-spacing:-.02em;
}
.includes-sticker .lbl{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.75);font-weight:500;line-height:1.5;}

/* PRICING — 3% commission spread */
.pricing-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;
  background:var(--white);border:1px solid var(--border);
  padding:72px 60px;
}
.pricing-left .eyebrow{margin-bottom:18px;}
.pricing-left h2{font-family:var(--serif);font-size:clamp(2rem,3.2vw,3rem);font-weight:300;line-height:1.1;color:var(--display);letter-spacing:-.015em;margin-bottom:18px;}
.pricing-left h2 em{font-style:italic;color:var(--gold);font-weight:300;}
.pricing-left > p{font-size:.96rem;font-weight:300;color:var(--muted);line-height:1.75;margin-bottom:32px;max-width:460px;}
.pricing-big{display:flex;align-items:baseline;gap:24px;padding-top:14px;border-top:1px solid var(--border);}
.pricing-big .pct{
  font-family:var(--serif);font-size:7rem;font-weight:300;font-style:italic;color:var(--gold);line-height:.9;letter-spacing:-.04em;
}
.pricing-big .pct small{font-size:.32em;font-style:normal;}
.pricing-big .label{font-size:.86rem;font-weight:300;color:var(--muted);line-height:1.55;max-width:200px;}
.pricing-card{
  background:var(--bg);
  border:1px solid var(--border);
  padding:36px 36px 32px;
}
.pricing-card h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;color:var(--display);margin-bottom:22px;line-height:1.2;}
.pricing-list{list-style:none;display:flex;flex-direction:column;gap:11px;margin-bottom:24px;}
.pricing-list li{
  font-size:.92rem;color:var(--text);font-weight:400;line-height:1.5;
  padding-left:24px;position:relative;
}
.pricing-list li::before{
  content:'';position:absolute;left:0;top:9px;
  width:12px;height:1px;background:var(--gold);
}
.pricing-note{
  font-size:.82rem;font-weight:300;color:var(--muted);line-height:1.65;
  padding-top:22px;border-top:1px solid var(--border);
}

/* VALUATION — split panel form */
.val-panel{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  background:var(--navy);color:#fff;
  overflow:hidden;
  position:relative;
}
.val-panel::before{
  content:'';position:absolute;top:-20%;right:-10%;
  width:60%;height:80%;
  background:radial-gradient(circle at center,rgba(244,217,140,.16) 0%,transparent 70%);
  pointer-events:none;
}
.val-left,.val-right{padding:72px 60px;position:relative;z-index:1;}
.val-left{border-right:1px solid rgba(215,179,99,.18);}
.val-left .eyebrow{color:var(--gold);margin-bottom:18px;}
.val-left .eyebrow::before{background:var(--gold);opacity:1;}
.val-left h2{font-family:var(--serif);font-size:clamp(2rem,3.2vw,3rem);font-weight:300;color:#fff;line-height:1.1;letter-spacing:-.015em;margin-bottom:20px;}
.val-left h2 em{font-style:italic;color:var(--gold);font-weight:300;}
.val-left > p{font-size:1rem;font-weight:300;color:rgba(255,255,255,.7);line-height:1.75;margin-bottom:32px;}
.val-bullets{list-style:none;display:flex;flex-direction:column;gap:14px;}
.val-bullets li{
  display:flex;align-items:flex-start;gap:14px;
  font-size:.94rem;font-weight:300;color:rgba(255,255,255,.85);line-height:1.55;
}
.val-bullets li svg{flex-shrink:0;width:20px;height:20px;color:var(--gold);margin-top:1px;}
.val-right{background:rgba(255,255,255,.02);}
.val-right h3{font-family:var(--serif);font-size:1.6rem;font-weight:500;color:#fff;margin-bottom:6px;}
.val-right > p{font-size:.88rem;font-weight:300;color:rgba(215,179,99,.7);margin-bottom:28px;}
.val-form{display:flex;flex-direction:column;gap:16px;}
.val-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.val-field{display:flex;flex-direction:column;gap:7px;}
.val-field label{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(215,179,99,.7);font-weight:500;}
.val-field input,.val-field select,.val-field textarea{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(215,179,99,.2);
  color:#fff;padding:13px 16px;
  font-family:var(--sans);font-size:.95rem;outline:none;
  transition:border-color .2s,background .2s;
}
.val-field input:focus,.val-field select:focus,.val-field textarea:focus{border-color:var(--gold);background:rgba(255,255,255,.10);}
.val-field input::placeholder,.val-field textarea::placeholder{color:rgba(215,179,99,.4);}
.val-field textarea{min-height:88px;resize:vertical;}
.val-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23d7b363' stroke-width='1.6'><path d='M1 1.5l5 5 5-5'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;}
.val-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;}
.val-check input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--gold);}
.val-check span{font-size:.78rem;font-weight:300;color:rgba(215,179,99,.7);line-height:1.55;}
.val-check a{color:var(--gold);}
.val-submit{
  background:var(--gold);color:#fff;border:none;cursor:pointer;
  padding:16px 32px;
  font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  transition:background .2s,transform .2s;
  margin-top:4px;align-self:flex-start;
}
.val-submit:hover{background:var(--gold-h);transform:translateY(-2px);}

/* VALUATION wrapper */
.val-section{padding:0 80px 120px;}

/* STORY — Polski zespół premium rynek */
.story-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:88px;align-items:center;}
.story-visual{position:relative;height:580px;}
.story-photo{
  position:absolute;
  background-size:cover;background-position:center;
  overflow:hidden;
  box-shadow:0 24px 56px rgba(14,30,56,.20);
  transition:transform 1.4s cubic-bezier(.2,.7,.2,1);
}
.story-photo--1{top:0;left:0;width:70%;height:60%;}
.story-photo--2{bottom:0;right:0;width:62%;height:58%;}
.story-grid:hover .story-photo--1{transform:translateY(-4px);}
.story-grid:hover .story-photo--2{transform:translateY(-4px);}
.story-sticker{
  position:absolute;bottom:34%;left:54%;z-index:3;
  background:var(--navy);color:var(--gold);
  padding:14px 22px;
  font-family:var(--serif);font-size:1.1rem;font-style:italic;font-weight:400;letter-spacing:.01em;
  box-shadow:0 20px 48px rgba(14,30,56,.32);
  white-space:nowrap;
}
.story-text .eyebrow{margin-bottom:18px;}
.story-text h2{margin-bottom:22px;}
.story-text p{font-size:1rem;font-weight:300;color:var(--muted);line-height:1.85;margin-bottom:18px;max-width:540px;}
.story-text p:last-of-type{margin-bottom:32px;}
.story-sig{
  display:flex;align-items:center;gap:16px;
  padding-top:24px;border-top:1px solid var(--border);
  margin-top:8px;
}
.story-sig img{
  width:56px;height:56px;border-radius:50%;object-fit:cover;
  border:1px solid var(--gold);
}
.story-sig-name{font-family:var(--serif);font-size:1.2rem;font-weight:500;color:var(--display);}
.story-sig-role{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-top:3px;}

/* VALUES — 4 cards on navy with numbered eyebrow */
.section.navy{background:var(--navy);color:#fff;}
.section.navy .eyebrow{color:var(--gold);}
.section.navy .eyebrow::before{background:var(--gold);opacity:1;}
.section.navy h2.display{color:#f0ece4;}
.section.navy h2.display em{color:var(--gold);}
.section.navy .section-head p{color:rgba(215,179,99,.7);}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.value-card{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(215,179,99,.18);
  padding:36px 28px 32px;
  display:flex;flex-direction:column;gap:14px;
  position:relative;
  transition:transform .55s cubic-bezier(.2,.7,.2,1),background .35s,border-color .35s;
}
.value-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.06);border-color:rgba(215,179,99,.4);}
.value-num{
  font-family:var(--serif);font-size:1.4rem;font-style:italic;font-weight:300;color:var(--gold);
  position:absolute;top:24px;right:28px;letter-spacing:-.01em;
}
.value-ico{
  width:48px;height:48px;display:flex;align-items:center;justify-content:center;
  background:rgba(215,179,99,.12);color:var(--gold);
  border:1px solid rgba(215,179,99,.25);
  margin-bottom:4px;
}
.value-ico svg{width:24px;height:24px;}
.value-card h3{font-family:var(--serif);font-size:1.3rem;font-weight:500;color:#fff;line-height:1.25;}
.value-card p{font-size:.9rem;font-weight:300;color:rgba(240,236,228,.7);line-height:1.7;}

/* STATS — card with 4 numbers */
.stats-section{padding:0 80px;margin-top:-44px;position:relative;z-index:2;}
.stats-card{
  background:var(--white);border:1px solid var(--border);
  padding:48px 64px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:48px;
  box-shadow:0 28px 64px rgba(14,30,56,.10);
}
.stat-item{display:flex;flex-direction:column;gap:8px;text-align:center;position:relative;}
.stat-item + .stat-item::before{
  content:'';position:absolute;left:-24px;top:10%;bottom:10%;width:1px;background:var(--border);
}
.stat-num{
  font-family:var(--serif);font-weight:300;font-style:italic;
  font-size:clamp(2.6rem,4vw,3.4rem);color:var(--gold);
  line-height:1;letter-spacing:-.02em;
}
.stat-lbl{
  font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--muted);font-weight:500;line-height:1.55;
}

/* TEAM — 6 member cards */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
/* Pojedynczy członek zespołu — wyśrodkowana karta (poprawka klienta 2026-06) */
.team-grid .member:only-child{grid-column:1 / -1;max-width:400px;margin-inline:auto;}
.member{
  background:var(--white);border:1px solid var(--border);
  overflow:hidden;
  transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1);
  display:flex;flex-direction:column;
}
.member:hover{transform:translateY(-6px);box-shadow:0 32px 72px rgba(14,30,56,.16);}
.member-photo{
  height:300px;background-size:cover;background-position:center top;
  position:relative;overflow:hidden;
}
.member-photo::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 40%,rgba(14,30,56,.20) 100%);
}
.member-body{padding:26px 28px 24px;flex:1;display:flex;flex-direction:column;}
.member-name{font-family:var(--serif);font-size:1.4rem;font-weight:500;color:var(--display);margin-bottom:6px;}
.member-role{font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:14px;}
.member-bio{font-size:.88rem;font-weight:300;color:var(--muted);line-height:1.7;margin-bottom:20px;flex:1;}
.member-contact{
  display:flex;gap:0;
  padding-top:18px;border-top:1px solid var(--border);
}
.member-contact a{
  flex:1;display:inline-flex;align-items:center;gap:8px;justify-content:center;
  font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500;
  padding:6px 0;transition:color .2s;
}
.member-contact a:first-child{border-right:1px solid var(--border);}
.member-contact a:hover{color:var(--gold);}
.member-contact svg{width:13px;height:13px;}

/* CASES — 3 realizacje */
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.case-card{
  background:var(--white);border:1px solid var(--border);
  overflow:hidden;
  transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1);
}
.case-card:hover{transform:translateY(-6px);box-shadow:0 32px 72px rgba(14,30,56,.16);}
.case-photo{height:260px;background-size:cover;background-position:center;position:relative;overflow:hidden;}
.case-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(14,30,56,.25) 100%);}
.case-badge{
  position:absolute;top:16px;left:16px;z-index:2;
  background:rgba(14,30,56,.92);color:#fff;
  padding:6px 14px;
  font-size:.55rem;letter-spacing:.28em;text-transform:uppercase;font-weight:600;
  border:1px solid rgba(215,179,99,.5);
}
.case-body{padding:24px 28px 26px;}
.case-loc{font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:8px;}
.case-title{font-family:var(--serif);font-size:1.35rem;font-weight:500;color:var(--display);margin-bottom:18px;line-height:1.25;}
.case-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:.78rem;color:var(--muted);font-weight:400;padding-top:14px;border-top:1px solid var(--border);}
.case-meta span{display:inline-flex;align-items:center;}
.case-meta span + span::before{content:'·';margin-right:14px;color:var(--gold);font-weight:700;}

/* ABOUT CTA — navy centered */
.about-cta{
  padding:0 80px 120px;
}
.about-cta__inner{
  background:var(--navy);color:#fff;
  padding:80px 72px;
  text-align:center;
  position:relative;overflow:hidden;
}
.about-cta__inner::before{
  content:'';position:absolute;top:-30%;left:50%;transform:translateX(-50%);
  width:80%;height:120%;
  background:radial-gradient(ellipse at center,rgba(244,217,140,.16) 0%,transparent 60%);
  pointer-events:none;
}
.about-cta__inner > *{position:relative;z-index:1;}
.about-cta__inner .eyebrow{color:var(--gold);justify-content:center;margin-bottom:18px;}
.about-cta__inner .eyebrow::before{background:var(--gold);opacity:1;}
.about-cta__inner .eyebrow::after{content:'';width:24px;height:1px;background:var(--gold);margin-left:12px;}
.about-cta__inner h2{
  font-family:var(--serif);font-size:clamp(2.4rem,4vw,3.8rem);font-weight:300;color:#fff;
  line-height:1.1;letter-spacing:-.015em;margin-bottom:22px;
}
.about-cta__inner h2 em{font-style:italic;color:var(--gold);font-weight:300;}
.about-cta__inner > p{font-size:1.05rem;font-weight:300;color:rgba(255,255,255,.75);line-height:1.75;max-width:640px;margin:0 auto 36px;}
.about-cta__btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.about-cta__btns .btn-gold{background:var(--gold);color:#fff;}
.about-cta__btns .btn-ghost-light{
  background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.45);
  padding:13px 30px;border-radius:100px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;
  transition:border-color .25s,background .25s,transform .2s;
  display:inline-flex;align-items:center;gap:7px;
}
.about-cta__btns .btn-ghost-light:hover{border-color:#fff;background:rgba(255,255,255,.08);transform:translateY(-2px);}

/* SUN OF SPAIN — brand manifesto */
.sunofspain{
  position:relative;
  min-height:88vh;
  display:flex;align-items:center;justify-content:center;
  padding:140px 80px;
  background:var(--navy);
  overflow:hidden;
}
.sun-bg{
  position:absolute;inset:0;z-index:0;
  background:url('assets/img%20(9).jpg') center 35%/cover no-repeat;
  background-size:130% auto;
  filter:saturate(1.1) contrast(1.05);
  animation:sun-kb 36s ease-in-out infinite alternate;
}
@keyframes sun-kb{from{transform:scale(1.03);}to{transform:scale(1.10);}}
.sun-veil{
  position:absolute;inset:0;z-index:1;
  background:
    radial-gradient(ellipse at 70% 30%,
      rgba(244,217,140,.22) 0%,
      rgba(232,200,120,.08) 30%,
      transparent 55%),
    linear-gradient(180deg,
      rgba(14,30,56,.78) 0%,
      rgba(14,30,56,.62) 40%,
      rgba(14,30,56,.78) 100%);
}
.sun-glyph{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-58%);
  width:520px;height:520px;max-width:60vw;max-height:60vw;
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%,
    rgba(244,217,140,.18) 0%,
    rgba(232,200,120,.10) 30%,
    rgba(215,179,99,.06) 55%,
    transparent 75%);
  z-index:1;pointer-events:none;
  animation:sun-pulse 8s ease-in-out infinite alternate;
}
.sun-glyph::after{
  content:'';position:absolute;inset:30%;
  border-radius:50%;
  border:1px solid rgba(215,179,99,.18);
  box-shadow:0 0 80px rgba(244,217,140,.10),inset 0 0 60px rgba(244,217,140,.06);
}
@keyframes sun-pulse{
  from{opacity:.85;}
  to{opacity:1;transform:translate(-50%,-58%) scale(1.04);}
}
.sun-inner{position:relative;z-index:2;text-align:center;max-width:1100px;}
.sun-eyebrow{
  font-size:.62rem;letter-spacing:.5em;text-transform:uppercase;
  color:var(--gold);font-weight:500;
  margin-bottom:42px;
  display:flex;align-items:center;justify-content:center;gap:18px;
}
.sun-eyebrow span{width:36px;height:1px;background:rgba(215,179,99,.55);}
.sun-title{
  font-family:var(--serif);font-weight:300;
  font-size:clamp(3.2rem,6.5vw,7rem);
  font-style:italic;
  line-height:1;letter-spacing:-.02em;
  color:#fff;margin-bottom:24px;
}
.sun-title em{
  font-style:italic;
  background:linear-gradient(180deg,#f4d98c 0%,#d7b363 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.sun-line{
  font-family:var(--serif);font-style:italic;font-weight:300;
  font-size:clamp(1.3rem,1.8vw,1.7rem);
  color:rgba(255,255,255,.82);
  line-height:1.55;max-width:720px;margin:0 auto 48px;
}
.sun-ornament{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:24px;}
.sun-ornament span{width:48px;height:1px;background:rgba(215,179,99,.5);}
.sun-ornament i{
  width:8px;height:8px;border-radius:50%;background:var(--gold);
  box-shadow:0 0 18px rgba(215,179,99,.6);font-style:normal;
}
.sun-tag{
  font-size:.62rem;letter-spacing:.4em;text-transform:uppercase;
  color:#f0cf80;font-weight:600;
}
/* CTA „Pełna kolekcja ofert" w sekcji sun-of-spain (poprawka klienta 2026-06) */
.sun-cta{
  display:inline-flex;align-items:center;gap:14px;margin-top:38px;
  font-family:var(--sans);font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;font-weight:600;
  color:var(--navy-deep);background:linear-gradient(180deg,#f4d98c 0%,#d7b363 100%);
  padding:17px 38px;border-radius:100px;
  box-shadow:0 10px 30px rgba(215,179,99,.34);
  transition:transform .35s ease,box-shadow .35s ease,filter .35s ease;
}
.sun-cta:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(215,179,99,.46);filter:brightness(1.04);}
.sun-cta .arr{transition:transform .35s ease;}
.sun-cta:hover .arr{transform:translateX(5px);}

/* DAY — editorial: zdjęcia w kolumnie z lewej, tekst z prawej (poprawka klienta 2026-06) */
.day{background:var(--bg);position:relative;display:grid;grid-template-columns:1.05fr .95fr;align-items:start;}
.day-head{
  grid-column:2;grid-row:1;
  padding:96px 72px;
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:30px;
  position:sticky;top:0;min-height:100vh;
}
.day-headl{max-width:480px;}
.day-headr{
  font-family:var(--serif);font-style:italic;font-weight:300;
  font-size:1.1rem;color:var(--muted);line-height:1.6;
  max-width:440px;text-align:left;
  border-left:2px solid var(--gold);padding:4px 0 4px 24px;
}
.day-frames{grid-column:1;grid-row:1;display:grid;grid-template-columns:1fr;gap:0;height:auto;min-height:0;max-height:none;}
.day-frame{
  position:relative;overflow:hidden;
  display:flex;align-items:flex-end;
  height:60vh;min-height:440px;
}
.day-frame img{
  position:absolute;inset:0;
  width:100%;height:100%;object-fit:cover;
  filter:brightness(.72) saturate(.92) contrast(1.02);
  transform:scale(1.04);
  transition:transform 1.6s cubic-bezier(.2,.7,.2,1),filter 1.1s ease;
}
.day-frame::after{
  content:'';position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(10,23,41,.10) 30%,rgba(10,23,41,.55) 70%,rgba(10,23,41,.90) 100%);
  transition:background 1.1s cubic-bezier(.2,.7,.2,1);
}
.day-frame:hover img{transform:scale(1);filter:brightness(1) saturate(1.05);}
.day-frame:hover::after{
  background:linear-gradient(180deg,rgba(10,23,41,0) 25%,rgba(10,23,41,.30) 65%,rgba(10,23,41,.82) 100%);
}
.day-inner{position:relative;z-index:2;padding:38px 36px 44px;color:#fff;width:100%;}
.day-time{
  font-family:var(--serif);font-weight:300;font-style:italic;
  font-size:clamp(2.4rem,3vw,3.4rem);
  color:var(--gold);line-height:1;margin-bottom:14px;letter-spacing:-.01em;
}
.day-label{
  font-size:.58rem;letter-spacing:.32em;text-transform:uppercase;
  color:rgba(255,255,255,.7);font-weight:500;margin-bottom:18px;
  display:flex;align-items:center;gap:10px;
}
.day-label::before{content:'';width:22px;height:1px;background:var(--gold);}
.day-line{
  font-family:var(--serif);font-style:italic;font-weight:400;
  font-size:1.15rem;line-height:1.5;color:rgba(255,255,255,.92);
  max-width:280px;
}

/* FOOTER */
.footer{background:var(--text);color:rgba(255,255,255,.45);padding:48px 80px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:40px;}
.footer-logo{height:32px;width:auto;display:block;}
.footer-logo svg{height:32px;width:auto;display:block;}
.f-nav{display:flex;gap:32px;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;justify-content:center;}
.f-nav a{color:rgba(255,255,255,.55);text-decoration:none;transition:color .2s;}
.f-nav a:hover{color:rgba(255,255,255,.9);}
.f-legal{display:flex;gap:24px;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;justify-content:flex-end;}
.f-legal a{color:rgba(255,255,255,.4);text-decoration:none;transition:color .2s;}
.f-legal a:hover{color:rgba(255,255,255,.75);}

/* FLOAT WIDGET */
.float{position:fixed;bottom:28px;right:28px;z-index:300;display:flex;flex-direction:column;gap:10px;align-items:flex-end;transition:opacity .35s ease,transform .35s ease;}
.float.hide{opacity:0;transform:translateY(20px);pointer-events:none;}
.f-call{display:flex;align-items:center;gap:8px;padding:11px 20px;border-radius:100px;background:var(--white);color:var(--text);font-family:var(--sans);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500;border:none;cursor:pointer;box-shadow:0 4px 20px rgba(0,0,0,.1);transition:box-shadow .25s,transform .25s;}
.f-call:hover{box-shadow:0 8px 28px rgba(0,0,0,.15);transform:scale(1.02);}
.f-consult{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;background:var(--gold);color:#fff;font-family:var(--sans);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;border:none;cursor:pointer;box-shadow:0 6px 22px rgba(215,179,99,.35);transition:background .2s,transform .2s;}
.f-consult:hover{background:var(--gold-h);transform:translateY(-1px);}

/* SCROLL REVEAL */
.rv-ready .rv{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease;}
.rv.in{opacity:1 !important;transform:none !important;}
.d1{transition-delay:.1s;}.d2{transition-delay:.2s;}.d3{transition-delay:.3s;}

/* RESPONSIVE */
@media (max-width: 1480px){
  .nav{padding:0 44px;}
  .nav-links{gap:24px;font-size:.66rem;letter-spacing:.16em;}
  .nav-right{gap:16px;}
}
@media (max-width: 1280px){
  .nav-tel{display:none;}
  .nav-right .btn{padding:10px 18px;font-size:.66rem;letter-spacing:.16em;}
  .nav-links{gap:20px;}
}
@media (max-width: 1100px){
  .nav{padding:0 28px;height:64px;}
  .nav-logo svg{height:26px;}
  .nav-links{display:none;}
  .nav-right .nav-tel,.nav-right .nav-lang{display:none;}
  .nav-burger{display:flex;}
  .page-hero{padding:130px 28px 100px;min-height:480px;}
  .booking-section{padding:0 28px;}
  .booking-card{grid-template-columns:1fr 1fr;}
  .bk-cell:nth-child(2){border-right:none;}
  .bk-cell:nth-child(3),.bk-cell:nth-child(4){border-top:1px solid var(--border);}
  .bk-submit{grid-column:span 2;padding:18px 24px;justify-content:center;border-top:1px solid var(--border);}
  .section{padding:80px 28px;}
  .usp-grid{grid-template-columns:repeat(2,1fr);}
  .regions-grid{grid-template-columns:repeat(2,1fr);}
  .types-grid{grid-template-columns:repeat(2,1fr);}
  .process-grid{grid-template-columns:repeat(2,1fr);gap:40px;}
  .process-grid::before{display:none;}
  .compare-head,.compare-row{grid-template-columns:1fr;}
  .compare-head .col-empty{display:none;}
  .compare-row > .compare-title{background:var(--bg2);}
  .compare-cell{border-left:none;border-top:1px solid var(--border);}
  .compare-cell-label{display:block;font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:10px;}
  .cta-section{padding:0 28px 80px;}
  .cta-card{grid-template-columns:1fr;gap:48px;padding:56px 32px;}
  .process-grid.cols-5{grid-template-columns:repeat(2,1fr);}
  .channels-grid{grid-template-columns:repeat(2,1fr);}
  .includes-grid{grid-template-columns:1fr;gap:48px;}
  .includes-list{grid-template-columns:1fr 1fr;}
  .includes-visual{height:480px;}
  .pricing-grid{grid-template-columns:1fr;gap:36px;padding:48px 36px;}
  .pricing-big .pct{font-size:5rem;}
  .val-section{padding:0 28px 80px;}
  .val-panel{grid-template-columns:1fr;}
  .val-left,.val-right{padding:48px 32px;}
  .val-left{border-right:none;border-bottom:1px solid rgba(215,179,99,.18);}
  .story-grid{grid-template-columns:1fr;gap:48px;}
  .story-visual{height:480px;}
  .values-grid{grid-template-columns:repeat(2,1fr);}
  .stats-section{padding:0 28px;}
  .stats-card{grid-template-columns:repeat(2,1fr);padding:40px 32px;gap:32px;}
  .stat-item + .stat-item::before{display:none;}
  .stat-item:nth-child(3)::before,.stat-item:nth-child(4)::before{display:none;}
  .team-grid{grid-template-columns:repeat(2,1fr);}
  .cases-grid{grid-template-columns:1fr;}
  .about-cta{padding:0 28px 80px;}
  .about-cta__inner{padding:56px 32px;}
  .sunofspain{padding:96px 28px;min-height:80vh;}
  .sun-title{font-size:clamp(2.4rem,8vw,3.6rem);}
  .sun-line{font-size:1.05rem;}
  .sun-eyebrow{letter-spacing:.32em;}
  .day{grid-template-columns:1fr;}
  .day-head{grid-column:1;padding:84px 28px 32px;gap:24px;position:static;min-height:0;}
  .day-headr{text-align:left;border-right:none;border-left:1px solid var(--gold);padding-right:0;padding-left:16px;max-width:100%;}
  .day-frames{grid-column:1;grid-template-columns:1fr;height:auto;min-height:0;max-height:none;}
  .day-frame{height:80vw;min-height:380px;}
  .day-frame img{filter:brightness(.78) saturate(.95);transform:scale(1);}
  .day-inner{padding:28px;}
  .footer{grid-template-columns:1fr;text-align:center;padding:40px 28px;gap:24px;}
  .f-nav,.f-legal{justify-content:center;flex-wrap:wrap;}
  .footer-logo{margin:0 auto;}
}
@media (max-width: 720px){
  .booking-card{grid-template-columns:1fr;}
  .bk-cell{border-right:none;border-bottom:1px solid var(--border);}
  .bk-cell:nth-child(2){border-right:none;}
  .bk-cell:nth-child(3),.bk-cell:nth-child(4){border-top:none;}
  .bk-submit{grid-column:auto;}
  .usp-grid,.regions-grid,.types-grid{grid-template-columns:1fr;}
  .process-grid{grid-template-columns:1fr;}
  .cta-row{grid-template-columns:1fr;}
  .page-hero__title{font-size:2.4rem;}
  /* Floating CTA (Zadzwoń + Umów konsultację) chowamy na mobile —
     mobile drawer ma już własne CTA buttons (.nav-drawer__primary + __phone),
     dwa floating na małym ekranie nakładałyby się i blokowały content. */
  .float{display:none !important;}
  .channels-grid{grid-template-columns:1fr;}
  .includes-list{grid-template-columns:1fr;}
  .includes-visual{height:380px;}
  .val-row{grid-template-columns:1fr;}
  .story-visual{height:380px;}
  .values-grid{grid-template-columns:1fr;}
  .stats-card{grid-template-columns:1fr;}
  .team-grid{grid-template-columns:1fr;}
  .story-sticker{left:auto;right:0;}
}

/* ═══════════════════════════════════════════════════════════════════
   ELITECORE — DODATKI INTEGRACYJNE WORDPRESS (nowy design)
   Elementy potrzebne w wersji WP, których brak w statycznym HTML:
   mobilna szuflada nawigacji, animacja burgera, przebarwienie logo
   w stopce, offset paska admina WP, tolerancja <li> z wp_nav_menu.
   ═══════════════════════════════════════════════════════════════════ */

/* wp_nav_menu zwraca <ul><li><a> — .nav-links / .nav-drawer to tolerują */
.nav-links__menu{display:contents;}
.nav-links li{list-style:none;display:flex;align-items:center;}
.nav-drawer li{list-style:none;}
.nav-links .current-menu-item > a,
.nav-links .current_page_item > a{color:#fff;border-bottom:1px solid var(--gold);padding-bottom:2px;}

/* Burger — animacja w „X" po otwarciu */
.nav-burger{z-index:210;}
.nav-burger span{transition:transform .3s,opacity .3s;}
.nav-burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.nav-burger.open span:nth-child(2){opacity:0;}
.nav-burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

/* Mobilna szuflada nawigacji — pełnoekranowa, navy */
.nav-drawer{
  display:flex;flex-direction:column;
  position:fixed;inset:64px 0 0 0;z-index:199;
  background:var(--navy-deep);
  padding:36px 28px 40px;
  border-top:1px solid rgba(215,179,99,.15);
  overflow-y:auto;-webkit-overflow-scrolling:touch;
  transform:translateX(100%);opacity:0;visibility:hidden;pointer-events:none;
  transition:transform .38s cubic-bezier(.4,0,.2,1),opacity .32s ease,visibility 0s linear .38s;
}
.nav-drawer.open{
  transform:translateX(0);opacity:1;visibility:visible;pointer-events:auto;
  transition:transform .38s cubic-bezier(.4,0,.2,1),opacity .28s ease,visibility 0s linear 0s;
}
/* Mobile menu redesign — Cormorant Garamond links + dwa CTA buttons na dole.
   Markup: .nav-drawer > .nav-drawer__links > <a> ... + .nav-drawer__cta > 2 buttons */
.nav-drawer__links{display:flex;flex-direction:column;flex:1;}
.nav-drawer__links a,
.nav-drawer .nav-links__menu > li > a{
  font-family:'Cormorant Garamond','EB Garamond',Georgia,serif;
  font-size:2rem;font-weight:300;line-height:1.4;
  letter-spacing:.005em;text-transform:none;
  color:#f0ece4;padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.08);
  transition:color .25s ease,padding-left .25s ease;
  display:block;
}
.nav-drawer__links a:hover,
.nav-drawer .nav-links__menu > li > a:hover,
.nav-drawer .current-menu-item > a,
.nav-drawer .current_page_item > a{
  color:var(--gold);padding-left:8px;
}
.nav-drawer__cta{
  margin-top:auto;padding-top:32px;
  display:flex;flex-direction:column;gap:14px;
  max-width:320px;width:100%;align-self:center;
}
.nav-drawer__primary{
  display:flex !important;align-items:center;justify-content:center;
  background:var(--gold);color:#fff !important;
  padding:16px 28px;border-radius:999px;
  font-family:'Inter','Helvetica Neue',system-ui,sans-serif;
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:500;
  border:1px solid var(--gold);border-bottom:1px solid var(--gold) !important;
  transition:background .25s ease,border-color .25s ease;
}
.nav-drawer__primary:hover{background:var(--gold-h);border-color:var(--gold-h);color:#fff !important;}
.nav-drawer__phone{
  display:inline-flex !important;align-items:center;justify-content:center;gap:10px;
  background:transparent;color:#f0ece4 !important;
  padding:14px 24px;border-radius:999px;
  border:1px solid rgba(255,255,255,.35) !important;
  font-family:'Inter','Helvetica Neue',system-ui,sans-serif;
  font-size:.86rem;letter-spacing:.04em;font-weight:500;
  text-transform:none;transition:border-color .25s ease,color .25s ease;
}
.nav-drawer__phone svg{width:18px;height:18px;color:var(--gold);}
.nav-drawer__phone:hover{border-color:var(--gold) !important;color:#fff !important;}
/* Legacy .nav-drawer__tel — gdyby gdziekolwiek pozostał, ukrywamy */
.nav-drawer__tel{display:none;}
body.menu-open{overflow:hidden;}

/* Logo w stopce — przebarwienie ścieżek (ciemne→białe, złote→jaśniejsze) */
.footer-logo svg path[fill="#1D1915"]{fill:#FDFEFE;}
.footer-logo svg path[fill="#BF8728"]{fill:#d7b363;}

/* Offset dla paska administracyjnego WordPressa (tylko zalogowani) */
body.admin-bar .nav{top:32px;}
body.admin-bar .nav-drawer{top:96px;}
@media (max-width:782px){
  body.admin-bar .nav{top:46px;}
  body.admin-bar .nav-drawer{top:110px;}
}

/* Szuflada widoczna tylko gdy burger aktywny (na desktopie ukryta) */
@media (min-width:1101px){
  .nav-drawer{display:none;}
}

/* ═══════════════════════════════════════════════════════════════════
   ═══ STRONA GŁÓWNA — CSS ═══
   Reguły skopiowane z nowy-design/preview8.html dla sekcji
   editorialowych strony głównej. Klasy unikalne dla homepage —
   .team-grid i .types-grid pominięte celowo (kolizja z o-nas).
   ═══════════════════════════════════════════════════════════════════ */

/* Utilities dodatkowe — eyebrow z kropką, ghost-light na ciemnym tle */
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--display);box-shadow:0 0 12px rgba(14,30,56,.25);flex-shrink:0;}
.eyebrow:has(.dot)::before{display:none;}
.section-navy .eyebrow,
.triptych .eyebrow,
.vip-section .eyebrow{color:var(--gold) !important;font-weight:500;}
.section-navy .eyebrow::before,
.triptych .eyebrow::before,
.vip-section .eyebrow::before{background:var(--gold) !important;opacity:1;}
.section-navy .eyebrow .dot,
.triptych .eyebrow .dot,
.vip-section .eyebrow .dot{background:var(--gold) !important;box-shadow:0 0 12px rgba(215,179,99,.5) !important;}
.h-navy{color:var(--display) !important;}
.btn-ghost-light{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.45);display:inline-flex;align-items:center;gap:7px;padding:13px 30px;border-radius:100px;font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:transform .2s,background .2s,border-color .2s;}
.btn-ghost-light:hover{border-color:#fff;background:rgba(255,255,255,.08);transform:translateY(-2px);}

/* Section modifiers — preview8 używa .section-alt / .section-navy bez kropki */
.section-alt{background:var(--bg2);}
.section-navy{background:var(--navy) !important;}
.section-navy h2.display{color:#f0ece4 !important;}
.section-navy h2.display em{color:var(--gold);}
.section-navy .lead{color:rgba(215,179,99,.6) !important;}

/* ═══ HERO — CINEMATIC FULLSCREEN ═══ */
.hero{position:relative;display:block;height:100vh;min-height:720px;overflow:hidden;}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;z-index:0;}
.hero-photo::before{content:'';position:absolute;inset:0;background:url('../img/photos/hero-poster.jpg') center/cover no-repeat;z-index:0;}
.hero-video-wrap{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden;}
.hero-video-shield{position:absolute;inset:0;z-index:3;pointer-events:all;cursor:default;background:transparent;}
.hero-video-wrap video{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(177.78vh + 8px);height:calc(56.25vw + 8px);min-width:calc(100% + 8px);min-height:calc(100% + 8px);object-fit:cover;border:0;}
.hero-poster-overlay{position:absolute;inset:0;background:url('../img/photos/hero-poster.jpg') center/cover no-repeat;z-index:2;transition:opacity .4s ease;pointer-events:none;}
.hero-poster-overlay.faded{opacity:0;}
.hero-veil{position:absolute;inset:0;z-index:2;background:linear-gradient(95deg,rgba(10,23,41,.92) 0%,rgba(10,23,41,.82) 30%,rgba(10,23,41,.58) 55%,rgba(10,23,41,.24) 75%,rgba(10,23,41,0) 100%),linear-gradient(180deg,rgba(14,30,56,.60) 0%,rgba(14,30,56,.28) 24%,rgba(14,30,56,.12) 44%,rgba(14,30,56,.12) 58%,rgba(14,30,56,.58) 90%,rgba(14,30,56,.82) 100%);pointer-events:none;}
.hero-sun{position:absolute;top:-20%;right:-10%;width:60vw;height:60vw;max-width:900px;max-height:900px;background:radial-gradient(circle at center,rgba(244,217,140,.22) 0%,rgba(244,217,140,.08) 35%,transparent 70%);pointer-events:none;z-index:2;filter:blur(20px);}
.hero-inner{position:relative;z-index:5;height:100%;display:grid;grid-template-rows:1fr auto;padding:140px 80px 70px;max-width:100%;}
.hero-text{align-self:end;max-width:880px;animation:hero-rise 1.2s .15s cubic-bezier(.2,.7,.2,1) both;}
@keyframes hero-rise{from{opacity:0;transform:translateY(36px);}to{opacity:1;transform:none;}}
.hero-eyebrow{font-size:.62rem;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);font-weight:500;display:flex;align-items:center;gap:12px;margin-bottom:24px;}
.hero-eyebrow span{width:32px;height:1px;background:var(--gold);flex-shrink:0;}
.hero-title{font-family:var(--serif);font-weight:300;color:#fff;margin-bottom:30px;line-height:1;text-shadow:0 2px 32px rgba(0,0,0,.35);}
.ht-main{display:block;font-size:clamp(4.2rem,8vw,9rem);font-style:italic;color:#fff;line-height:.92;letter-spacing:-.025em;font-weight:300;}
.ht-sub{display:block;font-size:clamp(1.8rem,3vw,3.4rem);line-height:1;margin-top:14px;letter-spacing:.02em;font-weight:300;font-family:var(--sans);text-transform:uppercase;color:rgba(255,255,255,.85);}
.ht-sub::before{content:'';display:inline-block;width:32px;height:1px;background:var(--gold);vertical-align:middle;margin-right:14px;margin-bottom:5px;}
.hero-sub{font-size:1.05rem;font-weight:300;color:rgba(255,255,255,.78);line-height:1.7;margin-bottom:44px;max-width:460px;text-shadow:0 1px 20px rgba(0,0,0,.35);}
.hero-btns{display:flex;gap:14px;margin-bottom:0;flex-wrap:wrap;}
.hero-btns .btn-gold{box-shadow:0 8px 32px rgba(215,179,99,.45);}
.hero-btns .btn-ghost{background:rgba(255,255,255,.06);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff;border:1px solid rgba(255,255,255,.4);}
.hero-btns .btn-ghost:hover{background:rgba(255,255,255,.14);border-color:#fff;}
.hero-statsbar{align-self:end;display:flex;gap:0;margin-top:56px;padding:28px 0 0;border-top:1px solid rgba(255,255,255,.18);max-width:880px;}
.hstat{flex:1;color:#fff;}
.hstat+.hstat{border-left:1px solid rgba(255,255,255,.18);padding-left:32px;}
.hstat-n{font-family:var(--serif);font-size:2.4rem;font-weight:300;font-style:italic;color:var(--gold);line-height:1;letter-spacing:-.01em;}
.hstat-l{font-size:.56rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-top:8px;font-weight:500;}

/* SEARCH BAR — floats over hero/next-section boundary */
.search-bar{background:var(--white);border:1px solid var(--border);box-shadow:0 24px 56px rgba(14,30,56,.22),0 2px 0 rgba(215,179,99,.08);display:grid;grid-template-columns:repeat(4,1fr) auto;align-items:stretch;margin:-42px 80px -42px;position:relative;z-index:50;}
.sb-cell{padding:24px 28px;border-right:1px solid var(--border);cursor:pointer;transition:background .2s;}
.sb-cell:hover{background:var(--bg);}
.sb-label{font-size:.59rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:5px;}
.sb-val{font-size:.95rem;font-weight:400;color:var(--text);}
.sb-cta{background:var(--gold);color:#fff;border:none;padding:0 40px;cursor:pointer;font-family:var(--sans);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;display:flex;align-items:center;gap:8px;transition:background .2s;}
.sb-cta:hover{background:var(--gold-h);}

/* ═══ PROPERTIES — homepage .cards/.card ═══ */
.props-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.cards .card{background:var(--white);border:1px solid var(--border);overflow:hidden;transition:box-shadow .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1);}
.cards .card:hover{box-shadow:0 32px 80px rgba(10,23,41,.14);transform:translateY(-6px);}
.card-photo{height:280px;position:relative;overflow:hidden;}
.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1);}
.card:hover .card-photo img{transform:scale(1.05);}
.card-badge{position:absolute;top:18px;left:18px;font-size:.55rem;letter-spacing:.28em;text-transform:uppercase;padding:6px 14px;border-radius:0;font-weight:500;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
.b-gold{background:var(--gold);color:#fff;}
.b-rust{background:rgba(10,23,41,.85);color:#fff;border:1px solid rgba(215,179,99,.4);}
.b-teal{background:rgba(255,255,255,.85);color:var(--navy);border:1px solid rgba(10,23,41,.15);}
.card-body{padding:28px 28px 24px;}
.card-loc{font-size:.63rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;}
.card-name{font-family:var(--serif);font-size:1.5rem;font-weight:400;line-height:1.2;color:var(--text);margin-bottom:22px;}
.card-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:20px;}
.card-price{font-family:var(--serif);font-size:1.55rem;font-weight:300;color:var(--text);}
.props-cta{text-align:center;margin-top:56px;}

/* ═══ TRIPTYCH MIAST — 4-column travel magazine ═══ */
.triptych{background:var(--navy);position:relative;padding:132px 0 0;overflow:hidden;}
.tr-title-wrap{position:relative;z-index:3;padding:0 80px 56px;display:flex;flex-direction:column;align-items:flex-start;}
.tr-title-wrap .eyebrow{color:var(--gold);}
.tr-title-wrap .eyebrow .dot{background:var(--gold);}
.tr-title{font-family:var(--serif);font-weight:300;font-size:clamp(4rem,8vw,8.5rem);line-height:.88;letter-spacing:-.025em;color:#fff;margin:0;}
.tr-title em{font-style:italic;background:linear-gradient(180deg,#f4d98c 0%,#d7b363 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:300;}
.tr-cols{display:flex;width:100%;height:78vh;min-height:560px;max-height:780px;}
.tr-col{flex:1;position:relative;overflow:hidden;background-color:#0a1729;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;text-decoration:none;color:inherit;border-right:1px solid rgba(255,255,255,.08);transition:flex-grow 1s cubic-bezier(.2,.7,.2,1),flex-basis 1s cubic-bezier(.2,.7,.2,1);}
.tr-col:last-child{border-right:none;}
.tr-col::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(14,30,56,.40) 0%,rgba(14,30,56,.25) 30%,rgba(14,30,56,.55) 70%,rgba(14,30,56,.92) 100%);transition:opacity .6s ease;}
.tr-num{position:relative;z-index:2;padding:32px 32px 0;font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.1rem;color:rgba(255,255,255,.55);letter-spacing:.05em;}
.tr-foot{position:relative;z-index:2;padding:0 32px 36px;color:#fff;}
.tr-meta{font-size:.55rem;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:14px;font-weight:500;transition:opacity .4s ease;}
.tr-name{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(2.8rem,3.4vw,4.6rem);line-height:.95;color:#fff;letter-spacing:-.015em;margin-bottom:0;transition:color .4s ease,transform .6s cubic-bezier(.2,.7,.2,1);}
.tr-line{font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.05rem;line-height:1.55;color:rgba(255,255,255,.85);max-width:380px;margin-top:20px;max-height:0;overflow:hidden;opacity:0;transform:translateY(8px);transition:max-height .8s cubic-bezier(.2,.7,.2,1),opacity .5s ease .15s,transform .6s ease .15s,margin-top .8s ease;}
.tr-stats{display:flex;gap:32px;margin-top:22px;max-height:0;overflow:hidden;opacity:0;transform:translateY(10px);transition:max-height .8s cubic-bezier(.2,.7,.2,1) .05s,opacity .5s ease .22s,transform .6s ease .22s,margin-top .8s ease;}
.tr-stats span{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.6);font-weight:500;display:flex;flex-direction:column;gap:4px;}
.tr-stats b{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.6rem;color:var(--gold);letter-spacing:-.01em;text-transform:none;}
.tr-cols:hover .tr-col{flex-grow:1;}
.tr-cols:hover .tr-col:hover{flex-grow:2.2;}
.tr-col:hover::before{background:linear-gradient(180deg,rgba(14,30,56,.10) 0%,rgba(14,30,56,.05) 30%,rgba(14,30,56,.50) 70%,rgba(14,30,56,.92) 100%);}
.tr-col:hover .tr-name{color:#fff;transform:translateY(-2px);}
.tr-col:hover .tr-line,.tr-col:hover .tr-stats{max-height:200px;opacity:1;transform:translateY(0);}
.tr-col:hover .tr-line{margin-top:20px;}
.tr-col:hover .tr-stats{margin-top:22px;}
.tr-bar{background:#0a1729;border-top:1px solid rgba(215,179,99,.18);padding:40px 80px;display:flex;justify-content:space-between;align-items:center;gap:48px;}
.tr-bar-stats{display:flex;gap:64px;flex-wrap:wrap;}
.tr-stat{display:flex;flex-direction:column;gap:6px;}
.tr-stat-n{font-family:var(--serif);font-weight:300;font-style:italic;font-size:2.2rem;line-height:1;color:var(--gold);letter-spacing:-.01em;}
.tr-stat-l{font-size:.56rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:500;}
.tr-bar .btn-gold{background:var(--gold);color:#fff;box-shadow:0 8px 28px rgba(215,179,99,.32);flex-shrink:0;}

/* ═══ MAPA — sekcja ec-map (homepage variant) ═══ */
.ec-map{padding:110px 80px;isolation:isolate;}
.ec-map__head{text-align:center;margin-bottom:48px;}
.ec-map__head .eyebrow{justify-content:center;}
.ec-map__head h2{margin-top:6px;}
.ec-map__lead{font-size:1rem;font-weight:300;color:rgba(255,255,255,.72);max-width:560px;margin:14px auto 0;line-height:1.7;}
.rs-cm-map{border-radius:0;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 64px rgba(0,0,0,.28);width:100%;height:640px;background:var(--bg);}
.rs-cm-cluster-icon{background:none !important;border:none !important;}
.rs-cm-bubble{background:var(--gold);color:#fff;border-radius:0;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 20px rgba(191,135,40,.45);transition:background .2s,transform .2s;border:3px solid #fff;line-height:1.15;gap:1px;font-family:var(--sans);}
.rs-cm-bubble:hover{background:var(--gold-h);transform:scale(1.08);}
.rs-cm-bubble__count{font-size:18px;font-weight:600;line-height:1;}
.rs-cm-bubble__label{font-size:8px;font-weight:500;text-transform:uppercase;letter-spacing:.4px;opacity:.9;text-align:center;}
.rs-cm-city-icon-wrap{overflow:visible !important;background:transparent !important;border:none !important;}
.rs-cm-city-pin{display:inline-flex;align-items:center;gap:7px;background:var(--text);color:#fff;padding:5px 13px 5px 5px;border-radius:0;box-shadow:0 4px 14px rgba(26,45,74,.40);cursor:pointer;transition:background .15s,transform .15s;border:2px solid rgba(255,255,255,.18);white-space:nowrap;transform:translate(-50%,-100%);position:relative;font-family:var(--sans);}
.rs-cm-city-pin::after{content:'';position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);border:7px solid transparent;border-top-color:var(--text);border-bottom:none;}
.rs-cm-city-pin:hover{background:var(--gold);transform:translate(-50%,-100%) scale(1.05);}
.rs-cm-city-pin:hover::after{border-top-color:var(--gold);}
.rs-cm-city-pin__count{background:var(--gold);color:#fff;font-size:14px;font-weight:600;width:34px;height:34px;border-radius:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;}
.rs-cm-city-pin__name{font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.18em;max-width:160px;overflow:hidden;text-overflow:ellipsis;}
.leaflet-control-attribution{background:rgba(247,243,237,.92) !important;backdrop-filter:blur(4px);font-size:10px !important;border-radius:0 !important;padding:3px 8px !important;color:var(--muted) !important;}
.leaflet-control-attribution a{color:var(--gold) !important;}

/* ═══ SERVICES (#kupuj) — svc-grid ═══ */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);margin-top:56px;}
.svc-tile{padding:56px 48px 52px;border-right:1px solid var(--border);transition:background .55s cubic-bezier(.2,.7,.2,1);}
.svc-tile:last-child{border-right:none;}
.svc-tile:hover{background:var(--white);}
.svc-icon{width:40px;height:40px;color:var(--gold);margin-bottom:28px;}
.svc-title{font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--text);margin-bottom:14px;}
.svc-desc{font-size:.9rem;color:var(--muted);line-height:1.7;margin-bottom:28px;max-width:260px;}

/* ═══ TESTIMONIAL (#testi) — single quote ═══ */
.testi-wrap{max-width:820px;margin:0 auto;text-align:center;}
.testi-q{font-family:var(--serif);font-size:clamp(1.7rem,3vw,2.6rem);font-weight:300;font-style:italic;color:var(--text);line-height:1.5;margin-bottom:36px;}
.testi-q::before{content:'\201E';color:var(--gold);font-size:1.4em;line-height:0;vertical-align:-0.4em;margin-right:4px;}
.testi-q::after{content:'\201C';color:var(--gold);font-size:1.4em;line-height:0;vertical-align:-0.4em;margin-left:4px;}
.testi-who{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);}
.testi-dots{display:flex;justify-content:center;gap:8px;margin-top:32px;}
.testi-dots i{width:6px;height:6px;border-radius:50%;background:var(--sand);display:block;}
.testi-dots i.on{background:var(--gold);}
.section-navy .testi-q{color:rgba(240,236,228,.88) !important;}
.section-navy .testi-who{color:var(--gold) !important;}
.section-navy .testi-dots i{background:rgba(215,179,99,.25) !important;}
.section-navy .testi-dots i.on{background:var(--gold) !important;}

/* ═══ BLOG (#blog) — homepage variant ═══ */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:56px;}
.blog-card{cursor:pointer;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.blog-card:hover{transform:translateY(-6px);}
.blog-card:hover .blog-img img{transform:scale(1.06);}
.blog-img{height:240px;overflow:hidden;margin-bottom:24px;}
.blog-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1);}
.blog-cat{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.blog-title{font-family:var(--serif);font-size:1.35rem;font-weight:400;line-height:1.3;color:var(--text);margin-bottom:16px;}
.blog-excerpt{font-size:.88rem;color:var(--muted);line-height:1.6;margin-bottom:18px;}
.blog-cta{text-align:center;margin-top:56px;}

/* ═══ CONTACT (#kontakt) — homepage variant ═══ */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start;}
.contact-phone{font-family:var(--serif);font-size:clamp(2.6rem,4.5vw,4.2rem);font-weight:300;color:var(--text);line-height:1.1;letter-spacing:-.02em;display:block;margin:16px 0 8px;}
.contact-email{font-size:.9rem;color:var(--muted);margin-bottom:36px;display:inline-block;}
.section-navy .contact-phone{color:#f0ece4 !important;}
.section-navy .contact-email{color:rgba(215,179,99,.55) !important;transition:color .25s;}
.section-navy .contact-email:hover{color:var(--gold) !important;}
.contact-grid form{display:flex;flex-direction:column;gap:18px;}
.f-label{font-size:.61rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:6px;}
.f-input{width:100%;padding:14px 18px;background:var(--white);border:1px solid var(--border);font-family:var(--sans);font-size:.95rem;color:var(--text);border-radius:2px;outline:none;transition:border-color .2s;}
.f-input:focus{border-color:var(--gold);}
.f-input::placeholder{color:var(--muted);opacity:.6;}
textarea.f-input{min-height:104px;resize:vertical;}
.section-navy .f-label{color:rgba(240,236,228,.7) !important;}
.section-navy .f-input{background:rgba(255,255,255,.06) !important;border-color:rgba(215,179,99,.2) !important;color:#f0ece4 !important;}
.section-navy .f-input::placeholder{color:rgba(215,179,99,.3) !important;}
.section-navy .f-input:focus{border-color:var(--gold) !important;background:rgba(255,255,255,.09) !important;outline:none !important;}
.f-consent{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:4px 0;user-select:none;}
.f-check{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;}
.f-consent-mark{flex-shrink:0;width:18px;height:18px;border:1px solid rgba(215,179,99,.45);background:rgba(255,255,255,.04);display:flex;align-items:center;justify-content:center;margin-top:2px;transition:background .25s,border-color .25s;position:relative;}
.f-consent-mark::after{content:'';width:10px;height:6px;border-left:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);transform:rotate(-45deg) translateY(-2px);opacity:0;transition:opacity .2s;}
.f-check:checked + .f-consent-mark{background:rgba(215,179,99,.10);border-color:var(--gold);}
.f-check:checked + .f-consent-mark::after{opacity:1;}
.f-check:focus-visible + .f-consent-mark{outline:2px solid var(--gold);outline-offset:2px;}
.f-consent-text{font-size:.74rem;font-weight:300;line-height:1.55;color:rgba(215,179,99,.7);letter-spacing:.005em;}
.f-consent-text a{color:var(--gold);border-bottom:1px solid rgba(215,179,99,.4);transition:border-color .2s;}
.f-consent-text a:hover{border-color:var(--gold);}

/* ═══ WP PLACEHOLDER ═══ */
.wp-placeholder{margin:0 80px;padding:36px 40px;background:rgba(191,135,40,.04);border:1.5px dashed rgba(215,179,99,.28);display:flex;align-items:center;gap:20px;}
.wp-ph-icon{color:var(--gold);flex-shrink:0;}
.wp-ph-label{font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;}
.wp-ph-code{font-family:monospace;font-size:1rem;color:var(--text);font-weight:400;}

/* ═══ ATELIER — Curator's Moodboard ═══ */
.atelier{background:var(--bg);padding:140px 80px 132px;position:relative;}
.atelier-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;gap:48px;flex-wrap:wrap;}
.atelier-head .eyebrow{margin-bottom:0;}
.atelier-folio{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1rem;color:var(--muted);letter-spacing:.04em;display:flex;align-items:center;gap:14px;}
.atelier-folio::before{content:'';width:32px;height:1px;background:var(--gold);}
.atelier-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:14px;}
.atl-cell{position:relative;overflow:hidden;background:#0a1729;}
.atl-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.6s cubic-bezier(.2,.7,.2,1);}
.atl-photo:hover img{transform:scale(1.05);}
.atl-photo::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,23,41,.20) 0%,rgba(10,23,41,0) 25%,rgba(10,23,41,0) 55%,rgba(10,23,41,.78) 100%);transition:opacity .5s ease;}
.atl-tag{position:absolute;top:18px;left:20px;z-index:3;display:flex;align-items:center;gap:10px;font-family:var(--sans);font-size:.5rem;letter-spacing:.36em;text-transform:uppercase;color:rgba(255,255,255,.78);font-weight:500;}
.atl-tag .n{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--gold);font-size:.95rem;letter-spacing:.02em;text-transform:none;line-height:1;}
.atl-tag .bar{width:18px;height:1px;background:rgba(255,255,255,.5);display:inline-block;}
.atl-cap{position:absolute;bottom:22px;left:22px;right:22px;z-index:3;}
.atl-cap-title{font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.55rem;line-height:1;color:#fff;letter-spacing:-.005em;margin-bottom:8px;text-shadow:0 1px 16px rgba(0,0,0,.28);}
.atl-cap-line{font-family:var(--serif);font-style:italic;font-weight:300;font-size:.92rem;line-height:1.4;color:rgba(255,255,255,.85);max-width:220px;text-shadow:0 1px 12px rgba(0,0,0,.3);}
.atl-manifest{background:var(--bg);display:flex;flex-direction:column;justify-content:center;padding:44px 48px;position:relative;border:1px solid rgba(150,130,100,.16);}
.atl-manifest::before,.atl-manifest::after{content:'';position:absolute;width:28px;height:28px;pointer-events:none;border-color:var(--gold);border-style:solid;border-width:0;}
.atl-manifest::before{top:14px;left:14px;border-top-width:1px;border-left-width:1px;}
.atl-manifest::after{bottom:14px;right:14px;border-bottom-width:1px;border-right-width:1px;}
.atl-manifest .eyebrow{margin-bottom:18px;}
.atl-quotemark{font-family:var(--serif);font-style:italic;font-size:4.2rem;color:var(--gold);line-height:0;display:block;margin-top:18px;margin-bottom:32px;letter-spacing:-.08em;opacity:.6;height:1.2em;}
.atl-manifest-title{font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,2.4vw,2.6rem);line-height:1.12;letter-spacing:-.01em;color:var(--text);margin-bottom:26px;}
.atl-manifest-title em{font-style:italic;color:var(--gold);font-weight:300;}
.atl-manifest-foot{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:24px;border-top:1px solid var(--border);}
.atl-sig{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:1.4rem;color:var(--text);letter-spacing:.01em;transform:skew(-6deg);transform-origin:left center;}
.atl-sig-meta{flex:1;font-size:.58rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);font-weight:500;}
.atl-p1{grid-column:span 2;grid-row:span 1;}
.atl-p2{grid-column:span 1;grid-row:span 1;}
.atl-p3{grid-column:span 1;grid-row:span 1;}
.atl-manifest-cell{grid-column:span 2;grid-row:span 2;}
.atl-p4{grid-column:span 1;grid-row:span 1;}
.atl-p5{grid-column:span 1;grid-row:span 2;}
.atl-p6{grid-column:span 1;grid-row:span 1;}
.atelier-foot{margin-top:40px;padding-top:28px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.atelier-foot-l{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.05rem;color:var(--muted);max-width:500px;line-height:1.5;}
.atelier-foot-r{display:inline-flex;align-items:center;gap:14px;font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:#fff;font-weight:600;font-family:var(--sans);background:var(--display);padding:14px 28px;border-radius:100px;transition:background .35s ease,transform .35s ease,box-shadow .35s ease;box-shadow:0 6px 22px rgba(14,30,56,.22);}
.atelier-foot-r:hover{background:var(--navy-2);transform:translateY(-2px);box-shadow:0 10px 28px rgba(14,30,56,.32);}

/* ═══ LIFESTYLE MOSAIC ═══ */
.lifestyle{padding:120px 80px 160px;background:var(--bg2);}
.lf-head{max-width:580px;margin-bottom:60px;}
.lf-tag{display:inline-flex;align-items:center;gap:10px;font-size:.6rem;letter-spacing:.42em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:20px;}
.lf-tag .dot{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px rgba(215,179,99,.5);}
.lf-mosaic{display:grid;grid-template-columns:58% 42%;gap:16px;align-items:start;}
.lf-big{position:relative;overflow:hidden;height:660px;}
.lf-big img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.2,.7,.2,1);}
.lf-big:hover img{transform:scale(1.04);}
.lf-col{display:grid;grid-template-rows:1fr 1fr;gap:16px;height:660px;}
.lf-sm{position:relative;overflow:hidden;}
.lf-sm img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.2,.7,.2,1);}
.lf-sm:hover img{transform:scale(1.05);}
.lf-cap{position:absolute;bottom:0;left:0;right:0;padding:40px 24px 20px;background:linear-gradient(to bottom,transparent 0%,rgba(10,18,36,.78) 100%);font-size:.56rem;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.92);font-family:var(--sans);font-weight:500;pointer-events:none;}
/* Rozciągnięty link na zdjęciach mozaiki — klik prowadzi do filtrów Oferty (poprawka klienta 2026-06) */
.lf-big .lf-link,.lf-sm .lf-link{position:absolute;inset:0;z-index:5;cursor:pointer;}

/* ═══ VIP SECTION ═══ */
.vip-section{position:relative;padding:140px 80px;overflow:hidden;background:var(--navy);}
.vip-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;}
.vip-overlay{position:absolute;inset:0;background:transparent;}
.vip-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.vip-header .display{line-height:1.0;margin-bottom:24px;}
.vip-steps{display:flex;flex-direction:column;gap:0;padding-top:4px;}
.vip-step{display:flex;gap:28px;padding-bottom:40px;position:relative;}
.vip-step:not(:last-child)::after{content:'';position:absolute;left:24px;top:52px;bottom:0;width:1px;background:rgba(215,179,99,.18);}
.vip-step:last-child{padding-bottom:0;}
.vip-num{font-family:var(--serif);font-size:2.4rem;font-weight:400;color:var(--gold);line-height:1;opacity:.8;flex-shrink:0;width:48px;}
.vip-text{padding-top:6px;flex:1;}
.vip-title{font-family:var(--serif);font-size:1.3rem;font-weight:500;color:#fff;margin-bottom:8px;letter-spacing:.01em;}
.vip-desc{font-size:.88rem;font-weight:300;line-height:1.72;color:rgba(255,255,255,.48);}

/* ═══ CONCIERGE ═══ */
.concierge{background:var(--bg2);padding:140px 80px;position:relative;}
.concierge-head{display:grid;grid-template-columns:1fr;gap:0;align-items:end;margin-bottom:72px;max-width:1100px;text-align:left;}
.concierge-head .display{margin-bottom:32px;}
.concierge-head-r{font-size:1.35rem;color:var(--muted);font-weight:300;line-height:1.7;font-family:var(--serif);font-style:italic;max-width:780px;padding:24px 0 8px;border-top:1px solid var(--border);position:relative;}
.concierge-head-r::before{content:'';position:absolute;top:-1px;left:0;width:64px;height:1px;background:var(--gold);}
.concierge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.conc-tile{padding:48px 36px 44px;border-right:1px solid var(--border);position:relative;transition:background .35s;}
.conc-tile:last-child{border-right:none;}
.conc-tile:hover{background:rgba(215,179,99,.05);}
.conc-num{font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.05rem;color:var(--display);margin-bottom:36px;letter-spacing:.04em;}
.conc-title{font-family:var(--serif);font-weight:400;font-size:1.7rem;color:var(--text);line-height:1.15;margin-bottom:18px;letter-spacing:-.005em;}
.conc-desc{font-size:.88rem;color:var(--muted);line-height:1.7;font-weight:300;margin-bottom:0;}
.conc-foot{display:grid;grid-template-columns:1.2fr 1fr;gap:0;margin-top:0;min-height:340px;border-bottom:1px solid var(--border);}
.conc-photo{position:relative;overflow:hidden;min-height:340px;}
.conc-photo img{width:100%;height:100%;object-fit:cover;}
.conc-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(95deg,rgba(0,0,0,0) 60%,rgba(239,233,223,.8) 100%);}
.conc-quote{padding:60px 60px 60px 60px;display:flex;flex-direction:column;justify-content:center;background:var(--bg2);}
.conc-q-label{font-size:.6rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:24px;}
.conc-q-text{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.4rem,2vw,1.85rem);line-height:1.45;color:var(--text);letter-spacing:-.005em;}
.conc-q-who{margin-top:24px;font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);font-weight:500;font-family:var(--sans);}

/* ═══ MOBILE RESPONSIVE — homepage sections ═══ */
@media (max-width:900px){
  .hero{height:100svh;min-height:620px;}
  .hero-inner{padding:100px 28px 80px;}
  .ht-main{font-size:clamp(3rem,12vw,5rem);}
  .ht-sub{font-size:clamp(1.2rem,4vw,1.8rem);}
  .hero-sub{font-size:.95rem;max-width:100%;}
  .hero-statsbar{gap:0;margin-top:36px;padding-top:22px;}
  .hstat+.hstat{padding-left:16px;}
  .hstat-n{font-size:1.5rem;}
  .hstat-l{font-size:.48rem;letter-spacing:.18em;}
  .search-bar{display:flex;flex-direction:column;margin:0;box-shadow:0 12px 32px rgba(14,30,56,.22);border-left:none;border-right:none;}
  .sb-cell{border-right:none;border-bottom:1px solid var(--border);}
  .sb-cta{justify-content:center;padding:18px 20px;}
  .section-alt,.section-navy,.vip-section{padding:84px 28px;}
  .concierge{padding:84px 28px;}
  .concierge-head{grid-template-columns:1fr;gap:28px;margin-bottom:48px;}
  .concierge-head-r{font-size:1.05rem;padding-bottom:0;}
  .concierge-grid{grid-template-columns:1fr;}
  .conc-tile{border-right:none;border-bottom:1px solid var(--border);padding:36px 0;}
  .conc-tile:last-child{border-bottom:none;}
  .conc-foot{grid-template-columns:1fr;}
  .conc-photo{min-height:240px;}
  .conc-photo::after{display:none;}
  .conc-quote{padding:40px 28px;}
  .conc-q-text{font-size:1.2rem;line-height:1.55;}
  .cards{grid-template-columns:1fr;gap:20px;}
  .props-head{flex-direction:column;align-items:flex-start;gap:16px;}
  .card-photo{height:220px;}
  .triptych{padding:84px 0 0;}
  .tr-title-wrap{padding:0 28px 36px;}
  .tr-title{font-size:clamp(3rem,12vw,5rem);}
  .tr-cols{flex-direction:column;height:auto;max-height:none;}
  .tr-col{flex:0 0 auto;min-height:80vw;border-right:none;border-bottom:1px solid rgba(255,255,255,.08);}
  .tr-col:last-child{border-bottom:none;}
  .tr-num{padding:28px 28px 0;}
  .tr-foot{padding:0 28px 36px;}
  .tr-col .tr-line,.tr-col .tr-stats{max-height:240px;opacity:1;transform:none;margin-top:16px;}
  .tr-cols:hover .tr-col,.tr-cols:hover .tr-col:hover{flex-grow:0;}
  .tr-bar{flex-direction:column;align-items:flex-start;padding:32px 28px;gap:28px;}
  .tr-bar-stats{gap:32px;}
  .tr-stat-n{font-size:1.7rem;}
  .lifestyle{padding:84px 28px;}
  .lf-mosaic{grid-template-columns:1fr;height:auto;gap:14px;}
  .lf-col{grid-template-rows:auto auto;gap:14px;height:auto;}
  .lf-big,.lf-sm{height:70vw;min-height:260px;}
  .lf-cap{background:linear-gradient(transparent 30%,rgba(10,23,41,.92));padding:36px 24px 22px;font-size:.58rem;}
  .atelier{padding:84px 28px;}
  .atelier-head{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:36px;}
  .atelier-folio{font-size:.85rem;}
  .atelier-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px;gap:10px;}
  .atl-p1{grid-column:span 2;}
  .atl-manifest-cell{grid-column:span 2;grid-row:span 1;min-height:280px;padding:32px 28px 36px;justify-content:flex-start;}
  .atl-manifest-cell .atl-manifest-foot{margin-top:28px;padding-top:20px;}
  .atl-p2,.atl-p3,.atl-p4,.atl-p5{grid-column:span 1;grid-row:span 1;}
  .atl-p6{grid-column:span 2;grid-row:span 1;}
  .atl-cap-title{font-size:1.15rem;}
  .atl-cap-line{font-size:.78rem;}
  .atl-quotemark{font-size:3.4rem;margin-top:8px;margin-bottom:24px;height:1em;}
  .atl-manifest-title{font-size:1.55rem;}
  .atelier-foot{flex-direction:column;align-items:flex-start;gap:18px;}
  .atelier-foot-l{font-size:.95rem;}
  .vip-inner{grid-template-columns:1fr;gap:40px;}
  .ec-map{padding:80px 32px;}
  .rs-cm-map{height:440px;}
  .svc-grid{display:grid;grid-template-columns:1fr;border:none;margin-top:40px;gap:0;}
  .svc-tile{padding:36px 0;border-right:none;border-bottom:1px solid var(--border);background:transparent;}
  .svc-tile:last-child{border-bottom:none;}
  .svc-icon{width:32px;height:32px;margin-bottom:20px;}
  .svc-title{font-size:1.7rem;}
  .testi-q{font-size:1.4rem;line-height:1.55;padding:0;}
  .blog-grid{grid-template-columns:1fr;gap:20px;}
  .blog-img{height:220px;}
  .contact-grid{grid-template-columns:1fr;gap:48px;}
  .contact-phone{font-size:clamp(2rem,8vw,3rem);}
  .f-consent-text{font-size:.78rem;}
  .wp-placeholder{margin:0 28px 56px;}
}
@media (max-width:480px){
  .search-bar{margin:0;}
  .triptych{padding:64px 0 0;}
  .tr-title-wrap{padding:0 24px 28px;}
  .tr-num{padding:24px 24px 0;}
  .tr-foot{padding:0 24px 28px;}
  .tr-bar{padding:28px 24px;}
  .concierge,.atelier,.lifestyle{padding:64px 24px;}
  /* Atelier mobile (<480px) — pełen stack 1-col żeby manifest (Karolina
     założycielka) nie nakładał się na zdjęcia. Każdy kafelek własny wiersz. */
  .atelier-grid{grid-template-columns:1fr;grid-auto-rows:auto;gap:12px;}
  .atl-cell{height:auto;min-height:240px;grid-column:auto !important;grid-row:auto !important;}
  .atl-p1,.atl-p2,.atl-p3,.atl-p4,.atl-p5,.atl-p6,
  .atl-manifest-cell{grid-column:auto !important;grid-row:auto !important;}
  .atl-manifest-cell{min-height:auto;padding:36px 24px;}
  .wp-placeholder{margin:0 24px 48px;}
  .ec-map{padding:48px 20px;}
  .ec-map__head{margin-bottom:24px;}
  .ec-map__lead{font-size:.88rem;}
  .rs-cm-map{height:340px;border-radius:8px;}
}

/* ═══ TYPY NIERUCHOMOŚCI — homepage scope (#typy) ═══
   Scoped pod .home-types — żeby nie kolidować z .types-grid/.type-card
   z foundation (O nas). Markup z preview8.html line 664. */
.home-types .types-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,300px));justify-content:center;gap:20px;margin-top:52px;}
.home-types .type-card{background:var(--white);border:1px solid var(--border);border-radius:4px;padding:48px 28px 36px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;position:relative;overflow:hidden;transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1),border-color .4s ease;cursor:pointer;color:inherit;text-decoration:none;}
.home-types .type-card::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,var(--display) 0%,var(--navy-2) 100%);transform:translateY(100%);transition:transform .65s cubic-bezier(.2,.7,.2,1);z-index:0;}
.home-types .type-card > *{position:relative;z-index:1;transition:color .4s ease;}
.home-types .type-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;transition:transform .55s cubic-bezier(.2,.7,.2,1);z-index:1;}
.home-types .type-icon::before{content:'';position:absolute;inset:0;border:1px solid rgba(14,30,56,.2);border-radius:12px;transition:border-color .4s ease,background .4s ease;}
.home-types .type-icon svg{width:38px;height:38px;stroke:var(--display);fill:none;stroke-linecap:round;stroke-linejoin:round;position:relative;z-index:1;transition:stroke .4s ease;}
.home-types .type-card:hover{transform:translateY(-6px);box-shadow:0 24px 56px rgba(14,30,56,.22);border-color:var(--display);}
.home-types .type-card:hover::before{transform:translateY(0);}
.home-types .type-card:hover .type-icon{transform:translateY(-2px);}
.home-types .type-card:hover .type-icon::before{border-color:var(--gold);background:rgba(215,179,99,.08);}
.home-types .type-card:hover .type-icon svg{stroke:var(--gold);}
/* Ikony używają stroke="currentColor" — na hover sterujemy kolorem przez color (poprawka 2026-06) */
.home-types .type-icon{color:var(--display);}
.home-types .type-card:hover .type-icon{color:var(--gold);}
.home-types .type-card:hover .type-name{color:#fff;}
.home-types .type-card:hover .type-count{color:rgba(255,255,255,.6);}
.home-types .type-card:hover .type-link{color:var(--gold);}
.home-types .type-name{font-family:var(--serif);font-size:1.4rem;font-weight:400;color:var(--display);line-height:1.1;}
.home-types .type-count{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500;}
.home-types .type-link{font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--display);font-weight:600;text-decoration:none;margin-top:auto;padding-top:8px;}

/* ═══ TEAM (homepage #onas) — scoped ═══
   Scoped pod .home-onas — żeby nie kolidować z .team-grid z foundation
   (O nas zespół 3-col). Markup z preview8.html line 569. */
.home-onas .team-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;}
.home-onas .team-photo{aspect-ratio:4/5;overflow:hidden;position:relative;}
.home-onas .team-photo img{width:100%;height:100%;object-fit:cover;}
.home-onas .team-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(247,243,237,.4) 0%,transparent 40%);}
.home-onas .team-num{font-family:var(--serif);font-size:8rem;font-weight:300;color:var(--sand);line-height:1;margin-bottom:-16px;letter-spacing:-.04em;}
@media (max-width:900px){
  .home-types .types-grid{grid-template-columns:1fr 1fr;gap:14px;}
  .home-onas .team-grid{grid-template-columns:1fr;gap:36px;}
  .home-onas .team-photo{aspect-ratio:4/5;}
  .home-onas .team-num{font-size:5rem;margin-bottom:-8px;}
}
@media (max-width:480px){
  .home-types .types-grid{grid-template-columns:1fr;}
}

/* ═══════════════════════════════════════════════════════════════════
   ═══ KONTAKT — CSS ═══
   Reguły skopiowane z nowy-design/kontakt.html dla formularza, mapy
   i osób kontaktowych. Klasy unikalne dla podstrony Kontakt —
   bez kolizji z foundation, homepage, Kup, Sprzedaj.
   ═══════════════════════════════════════════════════════════════════ */
.kontakt-form-section{padding:96px 80px 80px;}
.kf-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:start;max-width:1280px;margin:0 auto;}
.kf-main{background:var(--white);border:1px solid var(--border);padding:48px 48px 44px;}
.kf-head{margin-bottom:32px;}
.kf-head .eyebrow{margin-bottom:14px;}
.kf-head h2{font-family:var(--serif);font-size:clamp(1.8rem,2.6vw,2.4rem);font-weight:400;line-height:1.2;color:var(--display);letter-spacing:-.01em;margin-bottom:14px;}
.kf-head h2 em{font-style:italic;color:var(--gold);font-weight:400;}
.kf-head p{font-size:.95rem;font-weight:300;color:var(--muted);line-height:1.7;}
.kf-topics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:26px;}
.kf-topic{position:relative;cursor:pointer;border:1px solid var(--border);padding:14px 18px;display:flex;align-items:center;gap:12px;font-size:.88rem;color:var(--text);font-weight:400;transition:border-color .2s,background .2s;}
.kf-topic input{position:absolute;opacity:0;pointer-events:none;}
.kf-topic::before{content:'';width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border);flex-shrink:0;background:var(--white);transition:border-color .2s,background .2s,box-shadow .2s;}
.kf-topic:hover{border-color:var(--gold);}
.kf-topic.is-active,
.kf-topic:has(input:checked){border-color:var(--gold);background:rgba(215,179,99,.06);}
.kf-topic.is-active::before,
.kf-topic:has(input:checked)::before{border-color:var(--gold);background:radial-gradient(circle,var(--gold) 0%,var(--gold) 40%,#fff 45%);}
.kf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.kf-field{display:flex;flex-direction:column;gap:8px;}
.kf-field label{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);font-weight:600;}
.kf-field input,.kf-field select,.kf-field textarea{background:var(--bg);border:1px solid var(--border);padding:13px 16px;font-family:var(--sans);font-size:.95rem;color:var(--text);outline:none;transition:border-color .2s,background .2s;}
.kf-field input:focus,.kf-field select:focus,.kf-field textarea:focus{border-color:var(--gold);background:#fff;}
.kf-field input::placeholder,.kf-field textarea::placeholder{color:var(--muted);opacity:.55;}
.kf-field textarea{min-height:120px;resize:vertical;}
.kf-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%237A6F65' stroke-width='1.6'><path d='M1 1.5l5 5 5-5'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;cursor:pointer;}
.kf-field.full{margin-bottom:16px;}
.kf-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;margin:18px 0 22px;}
.kf-check input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--gold);}
.kf-check span{font-size:.82rem;font-weight:300;color:var(--muted);line-height:1.55;}
.kf-submit{background:var(--navy);color:#fff;border:none;cursor:pointer;padding:16px 32px;font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;display:inline-flex;align-items:center;gap:10px;transition:background .25s,transform .2s;}
.kf-submit:hover{background:var(--navy-2);transform:translateY(-2px);}
.kf-submit svg{width:16px;height:16px;}
.kf-side{display:flex;flex-direction:column;gap:18px;}
.kf-quick{background:var(--navy);color:#fff;padding:32px 32px 30px;position:relative;overflow:hidden;}
.kf-quick::before{content:'';position:absolute;top:-30%;right:-20%;width:80%;height:120%;background:radial-gradient(circle at center,rgba(244,217,140,.18) 0%,transparent 65%);pointer-events:none;}
.kf-quick > *{position:relative;z-index:1;}
.kf-quick .eyebrow{color:var(--gold);margin-bottom:10px;}
.kf-quick .eyebrow::before{background:var(--gold);opacity:1;}
.kf-quick h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;color:#fff;margin-bottom:8px;}
.kf-quick p{font-size:.88rem;font-weight:300;color:rgba(255,255,255,.7);line-height:1.6;margin-bottom:18px;}
.kf-quick a{display:inline-flex;align-items:center;gap:10px;background:rgba(215,179,99,.15);border:1px solid rgba(215,179,99,.45);color:var(--gold);padding:11px 20px;font-size:.84rem;font-weight:500;letter-spacing:.01em;transition:background .25s,border-color .25s;}
.kf-quick a:hover{background:rgba(215,179,99,.25);border-color:var(--gold);}
.kf-quick a svg{width:16px;height:16px;}
.kf-info-block{background:var(--white);border:1px solid var(--border);padding:24px 28px;display:flex;align-items:flex-start;gap:16px;}
.kf-info-ico{flex-shrink:0;width:42px;height:42px;background:rgba(215,179,99,.10);color:var(--gold);border:1px solid rgba(215,179,99,.25);display:flex;align-items:center;justify-content:center;}
.kf-info-ico svg{width:20px;height:20px;}
.kf-info-body h3{font-family:var(--serif);font-size:1.15rem;font-weight:500;color:var(--display);margin-bottom:4px;line-height:1.2;}
.kf-info-body p{font-size:.88rem;font-weight:300;color:var(--muted);line-height:1.6;}

/* MAP + INFO */
.kontakt-map-section{padding:0 80px 100px;}
.km-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;max-width:1280px;margin:0 auto;}
.km-map{position:relative;background:var(--bg2);border:1px solid var(--border);min-height:480px;display:flex;align-items:center;justify-content:center;background-image:linear-gradient(rgba(215,179,99,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(215,179,99,.06) 1px,transparent 1px);background-size:32px 32px;}
.km-map iframe{width:100%;height:100%;min-height:480px;border:none;display:block;}
.km-pin{width:64px;height:64px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;box-shadow:0 16px 40px rgba(14,30,56,.32);position:absolute;top:50%;left:50%;transform:translate(-50%,-100%);}
.km-pin svg{width:32px;height:32px;}
.km-pin::after{content:'';position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);width:12px;height:12px;border-radius:50%;background:rgba(14,30,56,.18);filter:blur(4px);}
.km-placeholder{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500;background:rgba(255,255,255,.85);padding:10px 18px;backdrop-filter:blur(6px);border:1px solid var(--border);}
.km-details{display:flex;flex-direction:column;gap:18px;}
.km-block{background:var(--white);border:1px solid var(--border);padding:24px 28px;display:flex;align-items:flex-start;gap:16px;}
.km-block-ico{flex-shrink:0;width:42px;height:42px;background:rgba(215,179,99,.10);color:var(--gold);border:1px solid rgba(215,179,99,.25);display:flex;align-items:center;justify-content:center;}
.km-block-ico svg{width:20px;height:20px;}
.km-block-body{flex:1;}
.km-block-body h3{font-family:var(--serif);font-size:1.2rem;font-weight:500;color:var(--display);margin-bottom:6px;line-height:1.2;}
.km-block-body p{font-size:.88rem;font-weight:300;color:var(--muted);line-height:1.7;}
.km-block-body a{color:var(--text);transition:color .2s;}
.km-block-body a:hover{color:var(--gold);}
.km-block-body strong{font-weight:500;color:var(--text);display:inline-block;margin-top:6px;}

/* PEOPLE — kontakt persons */
.kontakt-people{padding:0 80px 120px;}
.kp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1080px;margin:0 auto;}
/* Pojedyncza osoba kontaktowa — wyśrodkowana karta (poprawka klienta 2026-06) */
.kp-grid .kp-card:only-child{grid-column:1 / -1;max-width:360px;margin-inline:auto;}
.kp-card{background:var(--white);border:1px solid var(--border);padding:36px 32px 30px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1),border-color .35s;}
.kp-card:hover{transform:translateY(-6px);box-shadow:0 32px 72px rgba(14,30,56,.14);border-color:var(--gold);}
.kp-avatar{width:92px;height:92px;border-radius:50%;background-size:cover;background-position:center 18%;border:2px solid var(--gold);margin-bottom:18px;}
.kp-name{font-family:var(--serif);font-size:1.3rem;font-weight:500;color:var(--display);margin-bottom:6px;}
.kp-role{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:10px;}
.kp-lang{display:inline-flex;gap:6px;margin-bottom:18px;}
.kp-lang span{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--muted);padding:4px 9px;border:1px solid var(--border);}
.kp-contact{width:100%;display:flex;flex-direction:column;gap:8px;padding-top:18px;border-top:1px solid var(--border);}
.kp-contact a{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.8rem;color:var(--text);font-weight:400;padding:5px 0;transition:color .2s;}
.kp-contact a:hover{color:var(--gold);}
.kp-contact svg{width:13px;height:13px;color:var(--gold);}

/* KONTAKT — mobile (≤1100px) */
@media (max-width:1100px){
  .kontakt-form-section{padding:64px 28px;}
  .kf-grid{grid-template-columns:1fr;gap:32px;}
  .kf-main{padding:36px 28px 32px;}
  .kf-topics{grid-template-columns:1fr 1fr;}
  .kf-row{grid-template-columns:1fr;}
  .kontakt-map-section{padding:0 28px 80px;}
  .km-grid{grid-template-columns:1fr;}
  .km-map{min-height:360px;}
  .km-map iframe{min-height:360px;}
  .kontakt-people{padding:0 28px 96px;}
  .kp-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:720px){
  .kf-topics{grid-template-columns:1fr;}
  .kp-grid{grid-template-columns:1fr;}
}

/* ═══════════════════════════════════════════════════════════════════
   ═══ BLOG (lista) — CSS ═══
   Reguły skopiowane z nowy-design/blog.html dla strony listy bloga
   (templates/home.html i archive.html). Klasy unikatowe — bez kolizji
   z homepage `.blog-grid`/`.blog-card`/`.blog-cta` (różne markupy:
   tu .blog-card jest dla archiwum 3-col, .blog-featured__* unikatowe,
   .blog-cats / .blog-head / .blog-section / .blog-list-archive
   nie używane wcześniej).
   ═══════════════════════════════════════════════════════════════════ */

/* Intro bloga */
.blog-head{padding:96px 80px 0;display:grid;grid-template-columns:1fr auto;align-items:end;gap:60px;max-width:1280px;margin:0 auto;}
.blog-headl{max-width:580px;}
.blog-headr{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.1rem;color:var(--muted);line-height:1.6;max-width:300px;text-align:right;padding-bottom:8px;border-right:1px solid var(--gold);padding-right:24px;}

/* Featured wrapper */
.blog-section{padding:32px 80px 80px;max-width:1280px;margin:0 auto;}
.blog-featured{
  background:var(--white);border:1px solid var(--border);
  display:grid;grid-template-columns:1.1fr 1fr;gap:0;overflow:hidden;
  transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1);
}
.blog-featured:hover{transform:translateY(-6px);box-shadow:0 32px 72px rgba(14,30,56,.14);}
.blog-featured__img{position:relative;min-height:380px;display:block;overflow:hidden;}
.blog-featured__img img{width:100%;height:100%;object-fit:cover;display:block;}
.blog-featured__img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(14,30,56,.30) 100%);pointer-events:none;}
.blog-featured__badge{position:absolute;top:18px;left:18px;z-index:2;background:var(--gold);color:#fff;padding:7px 14px;font-size:.55rem;letter-spacing:.28em;text-transform:uppercase;font-weight:600;}
.blog-featured__body{padding:48px 48px 40px;display:flex;flex-direction:column;justify-content:center;}
.blog-featured__meta{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500;display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.blog-featured__meta .dot{width:4px;height:4px;border-radius:50%;background:var(--gold);}
.blog-featured__title{font-family:var(--serif);font-size:clamp(1.8rem,2.6vw,2.4rem);font-weight:400;line-height:1.2;color:var(--display);letter-spacing:-.01em;margin-bottom:18px;}
.blog-featured__title a{color:inherit;transition:color .2s;}
.blog-featured__title a:hover{color:var(--gold);}
.blog-featured__excerpt{font-size:.96rem;font-weight:300;color:var(--muted);line-height:1.75;margin-bottom:26px;}
.blog-featured__more{display:inline-flex;align-items:center;gap:8px;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--gold);transition:gap .2s;align-self:flex-start;}
.blog-featured__more:hover{gap:12px;}
.blog-featured__more svg{width:14px;height:14px;}

/* Kategorie strip */
.blog-cats{padding:32px 80px 80px;max-width:1280px;margin:0 auto;}
.blog-cats__head{margin-bottom:36px;max-width:680px;}
.blog-cats__head h3{font-family:var(--serif);font-size:1.7rem;font-weight:500;color:var(--display);margin-bottom:10px;line-height:1.2;}
.blog-cats__head p{font-size:.94rem;font-weight:300;color:var(--muted);line-height:1.7;}
.blog-cats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.blog-cat{
  background:var(--white);border:1px solid var(--border);
  padding:24px 22px;display:flex;flex-direction:column;gap:8px;cursor:pointer;
  transition:transform .35s,border-color .25s,background .25s;
}
.blog-cat:hover{transform:translateY(-4px);border-color:var(--gold);background:rgba(215,179,99,.04);}
.blog-cat__num{font-family:var(--serif);font-size:1rem;font-style:italic;color:var(--gold);font-weight:400;}
.blog-cat__name{font-family:var(--serif);font-size:1.1rem;font-weight:500;color:var(--display);line-height:1.25;}
.blog-cat__count{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-top:auto;padding-top:6px;}

/* CTA strony bloga — większy padding niż homepage'owy .blog-cta */
.is-blog-list .blog-cta,
.is-blog-archive .blog-cta{padding:0 80px 120px;text-align:center;margin-top:0;}
.is-blog-list .blog-cta a,
.is-blog-archive .blog-cta a{display:inline-flex;align-items:center;gap:8px;}

/* Archiwum / lista starszych wpisów (3-col grid) — używa .blog-grid/.blog-card
   z homepage CSS (foundation, ETAP 2). Dodajemy tylko dopasowanie dla
   listy archiwum + paginację. */
.blog-list-archive{padding:32px 80px 60px;}
.blog-list-query .blog-grid{gap:36px;}
.blog-list-query .blog-card{cursor:default;}
.blog-list-query .blog-card a.wp-block-post-title{color:inherit;}
.blog-list-query .blog-cat-tag{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:10px;display:block;}
.blog-list-query .blog-cat-tag a{color:inherit;}
.blog-list-query .blog-card-more{display:inline-flex;align-items:center;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--gold);transition:gap .2s;}
.blog-list-query .blog-card-more:hover{gap:8px;}

/* Paginacja — minimalna, navy */
.blog-pagination{gap:14px !important;}
.blog-pagination .wp-block-query-pagination-previous,
.blog-pagination .wp-block-query-pagination-next{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text);font-weight:500;border:1px solid var(--border);padding:11px 22px;transition:border-color .25s,background .25s,color .25s;}
.blog-pagination .wp-block-query-pagination-previous:hover,
.blog-pagination .wp-block-query-pagination-next:hover{border-color:var(--gold);color:var(--gold);}
.blog-pagination .wp-block-query-pagination-numbers{display:inline-flex;gap:6px;font-size:.85rem;color:var(--muted);align-items:center;}
.blog-pagination .wp-block-query-pagination-numbers .page-numbers{padding:8px 12px;min-width:32px;text-align:center;border:1px solid transparent;transition:border-color .2s,color .2s;}
.blog-pagination .wp-block-query-pagination-numbers .page-numbers.current{color:var(--gold);border-color:var(--gold);font-weight:600;}
.blog-pagination .wp-block-query-pagination-numbers .page-numbers:hover{color:var(--gold);}

/* BLOG list — mobile */
@media (max-width:1100px){
  .blog-head{padding:64px 28px 0;grid-template-columns:1fr;gap:20px;}
  .blog-headr{text-align:left;border-right:none;border-left:1px solid var(--gold);padding-right:0;padding-left:16px;max-width:100%;}
  .blog-section{padding:24px 28px 56px;}
  .blog-featured{grid-template-columns:1fr;}
  .blog-featured__img{min-height:260px;}
  .blog-featured__body{padding:32px 28px 28px;}
  .blog-cats{padding:24px 28px 64px;}
  .blog-cats__grid{grid-template-columns:repeat(2,1fr);}
  .blog-list-archive{padding:24px 28px 40px !important;}
  .blog-list-query .blog-grid{gap:24px !important;}
  .is-blog-list .blog-cta,
  .is-blog-archive .blog-cta{padding:0 28px 84px;}
}
@media (max-width:600px){
  .blog-cats__grid{grid-template-columns:1fr;}
}

/* ═══════════════════════════════════════════════════════════════════
   ═══ WPIS BLOGA — CSS ═══
   Reguły z nowy-design/blog-wpis.html dla pojedynczego wpisu
   (templates/single.html). Wariant subhero `.page-hero--post`
   + sekcja artykułu `.post-section/.post-article/.post-meta*/
   .post-content/.post-footer/.post-back/.post-share`. Ostylowanie
   treści edytora WP (h2/h3/p/ul/ol/blockquote/img/hr/strong)
   wewnątrz `.post-content`. Klasy unikatowe dla wpisu — zero
   kolizji z foundation, homepage, Kup, Sprzedaj, Kontakt, Blog list.
   ═══════════════════════════════════════════════════════════════════ */

/* PAGE HERO — wariant dla pojedynczego wpisu (mniejszy tytuł,
   gradient gold w em) */
.page-hero--post .page-hero__title,
.page-hero__title--post{font-family:var(--serif);font-weight:300;font-size:clamp(2.8rem,5vw,4.6rem);line-height:1.06;letter-spacing:-.015em;}
.page-hero--post .page-hero__title em,
.page-hero__title--post em{font-style:italic;background:linear-gradient(180deg,#f4d98c 0%,#d7b363 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:300;}

/* POST DETAIL — article card */
.post-section{padding:64px 80px 96px;}
.post-article{max-width:780px;margin:0 auto;background:var(--white);border:1px solid var(--border);padding:64px 72px 56px;box-shadow:0 24px 56px rgba(14,30,56,.06);}

.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:36px;padding-bottom:32px;border-bottom:1px solid var(--border);}
.post-meta__cat{background:rgba(215,179,99,.10);color:var(--gold-deep);border:1px solid rgba(215,179,99,.35);padding:6px 14px;font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;font-weight:600;}
.post-meta__cat a{color:inherit;text-decoration:none;}
.post-meta__date{font-size:.78rem;color:var(--muted);letter-spacing:.04em;display:inline-flex;align-items:center;gap:8px;}
.post-meta__date::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--gold);}
.post-meta__author{font-size:.78rem;color:var(--muted);letter-spacing:.04em;display:inline-flex;align-items:center;gap:8px;}
.post-meta__author::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--gold);}

/* Featured image wewnątrz artykułu (post-featured-image) */
.post-article .wp-block-post-featured-image{margin:0 0 32px;display:block;}
.post-article .wp-block-post-featured-image img{width:100%;height:auto;display:block;}

/* Treść wpisu — WP edytor */
.post-content{font-size:1.05rem;line-height:1.85;color:var(--text);font-weight:400;}
.post-content > * + *{margin-top:1.2em;}
.post-content p{font-weight:300;color:var(--text);}
.post-content h2{font-family:var(--serif);font-size:2rem;font-weight:500;color:var(--display);line-height:1.25;margin-top:2em;}
.post-content h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;color:var(--display);line-height:1.3;margin-top:1.6em;}
.post-content h2 + p,
.post-content h3 + p{margin-top:.6em;}
.post-content a{color:var(--gold-deep);border-bottom:1px solid rgba(215,179,99,.4);transition:border-color .2s,color .2s;}
.post-content a:hover{color:var(--gold);border-color:var(--gold);}
.post-content blockquote{border-left:3px solid var(--gold);padding:8px 0 8px 24px;margin:1.6em 0;font-family:var(--serif);font-style:italic;font-size:1.25rem;font-weight:400;color:var(--display);}
.post-content ul,
.post-content ol{padding-left:24px;}
.post-content li{margin-bottom:.4em;font-weight:300;}
.post-content img{width:100%;margin:1.8em 0;height:auto;}
.post-content strong{font-weight:600;color:var(--display);}
.post-content hr{border:none;border-top:1px solid var(--border);margin:2.4em 0;}

/* Stopka artykułu */
.post-footer{margin-top:48px;padding-top:32px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.post-back{display:inline-flex;align-items:center;gap:10px;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--gold);transition:gap .2s,color .2s;text-decoration:none;}
.post-back:hover{gap:14px;color:var(--gold-h);}
.post-back svg{width:14px;height:14px;}
.post-share{display:inline-flex;align-items:center;gap:8px;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:600;}
.post-share a{width:32px;height:32px;border:1px solid var(--border);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;transition:color .2s,border-color .2s,background .2s;text-decoration:none;}
.post-share a:hover{color:var(--gold);border-color:var(--gold);background:rgba(215,179,99,.06);}
.post-share svg{width:14px;height:14px;}

/* WPIS BLOGA — mobile */
@media (max-width:1100px){
  .post-section{padding:48px 28px 80px;}
  .post-article{padding:40px 28px 36px;}
  .post-meta{gap:12px;}
  .post-footer{flex-direction:column;align-items:flex-start;}
}
@media (max-width:600px){
  .post-content{font-size:1rem;line-height:1.8;}
  .post-content h2{font-size:1.6rem;}
  .post-content h3{font-size:1.3rem;}
  .post-content blockquote{font-size:1.1rem;padding-left:18px;}
}

/* ═══════════════════════════════════════════════════════════════════
   ═══ OFERTA — CSS ═══
   Strona /oferta/. Mapping klas designu (.section-intro, .listings,
   .filter-section + .card-price-pill) ORAZ klas wtyczki rs-realestate
   (.rs-grid-wrapper, .rs-filters-bar, .rs-filter-group, .rs-card,
   .ec-card__*) — bo plugin grid template ma hardcoded `include`
   i nie wspiera theme override. Re-style przez CSS pod wrapperem
   `.is-oferta` (z patterns/oferta-shortcode.php).
   ═══════════════════════════════════════════════════════════════════ */

/* Section intro + listings wrapper */
.is-oferta .section-intro{padding:96px 80px 36px;text-align:center;}
.is-oferta .section-intro .eyebrow{justify-content:center;}
.is-oferta .section-intro h2{margin:0 auto 18px;max-width:880px;}
.is-oferta .section-intro .lead{margin:0 auto;}
.is-oferta .listings{padding:0 80px 132px;}

/* Plugin filter bar → design filter look */
.is-oferta .rs-grid-wrapper{margin:0;}
.is-oferta .rs-filters-form{position:relative;margin-bottom:40px;}
.is-oferta .rs-filters-bar{
	background:var(--white);border:1px solid var(--border);
	box-shadow:0 28px 64px rgba(14,30,56,.18),0 2px 0 rgba(215,179,99,.08);
	padding:8px;display:grid;grid-template-columns:1fr 1fr auto;gap:0;align-items:stretch;
}
.is-oferta .rs-filter-group{
	padding:18px 24px 16px;border-right:1px solid var(--border);
	display:flex;flex-direction:column;justify-content:center;min-height:78px;
}
.is-oferta .rs-filter-group:last-child{border-right:none;}
.is-oferta .rs-filter-label{
	font-size:.59rem;letter-spacing:.28em;text-transform:uppercase;
	color:var(--muted);margin-bottom:6px;font-weight:500;display:block;
}
.is-oferta .rs-filter-select{
	appearance:none;-webkit-appearance:none;
	background:transparent;border:none;outline:none;
	font-family:var(--sans);font-size:.96rem;font-weight:400;color:var(--text);
	padding:0 24px 0 0;width:100%;cursor:pointer;
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%237A6F65' stroke-width='1.6'><path d='M1 1.5l5 5 5-5'/></svg>");
	background-repeat:no-repeat;background-position:right center;
}

/* Plugin card → design card look */
.is-oferta .rs-card,
.is-oferta .ec-card{
	background:var(--white);border:1px solid var(--border);overflow:hidden;
	transition:box-shadow .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1);
	display:flex;flex-direction:column;
}
.is-oferta .rs-card:hover,
.is-oferta .ec-card:hover{box-shadow:0 32px 80px rgba(10,23,41,.14);transform:translateY(-6px);}
.is-oferta .rs-card__link{display:block;color:inherit;text-decoration:none;}
.is-oferta .ec-card__img{
	height:260px;position:relative;overflow:hidden;
	background-size:cover !important;background-position:center !important;
}
.is-oferta .ec-card__badge{
	position:absolute;top:18px;left:18px;
	background:var(--gold);color:#fff;
	font-size:.55rem;letter-spacing:.28em;text-transform:uppercase;
	padding:6px 14px;font-weight:500;backdrop-filter:blur(6px);
}
.is-oferta .ec-card__price{
	position:absolute;left:18px;bottom:18px;
	background:rgba(14,30,56,.92);color:#fff;
	padding:10px 18px;font-family:var(--serif);font-size:1.05rem;font-weight:400;letter-spacing:.01em;
	backdrop-filter:blur(6px);white-space:nowrap;
}
.is-oferta .ec-card__body{padding:26px 28px 24px;flex:1;display:flex;flex-direction:column;}
.is-oferta .ec-card__loc{
	font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;
	color:var(--gold);margin-bottom:10px;font-weight:600;
}
.is-oferta .ec-card__title{
	font-family:var(--serif);font-size:1.45rem;font-weight:400;
	line-height:1.25;color:var(--text);margin-bottom:18px;flex:1;
}
.is-oferta .ec-card__title a{color:inherit;transition:color .2s;text-decoration:none;}
.is-oferta .ec-card__title a:hover{color:var(--gold);}
.is-oferta .ec-card__meta{
	display:flex;flex-wrap:wrap;gap:14px;
	font-size:.78rem;color:var(--muted);font-weight:400;
	padding-top:14px;border-top:1px solid var(--border);
}
.is-oferta .ec-card__meta span + span::before{content:'·';margin-right:14px;color:var(--gold);font-weight:700;}

/* Grid container — restyling whatever plugin renders into 2-col */
.is-oferta .rs-grid,
.is-oferta .rs-properties-grid,
.is-oferta .rs-grid-wrapper > .rs-grid-list{
	display:grid;grid-template-columns:repeat(2,1fr);gap:28px;
}

/* No-results / loading text */
.is-oferta .rs-no-results,
.is-oferta .rs-loading{
	text-align:center;padding:60px 20px;color:var(--muted);font-size:1rem;
}

@media (max-width:1100px){
	.is-oferta .section-intro{padding:80px 28px 28px;}
	.is-oferta .listings{padding:0 28px 100px;}
	.is-oferta .rs-grid,
	.is-oferta .rs-properties-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:720px){
	.is-oferta .rs-filters-bar{grid-template-columns:1fr;}
	.is-oferta .rs-filter-group{border-right:none;border-bottom:1px solid var(--border);}
	.is-oferta .rs-filter-group:last-child{border-bottom:none;}
	.is-oferta .rs-grid,
	.is-oferta .rs-properties-grid{grid-template-columns:1fr;}
}

/* ═══════════════════════════════════════════════════════════════════
   ═══ POPRAWKI v2 (post-deploy) ═══
   1. Cormorant Garamond na wszystkich nagłówkach (override starych
      reguł). Foundation już używa var(--serif) na `.display` itd.,
      ale stare `.ec-*` reguły z góry main.css forsują Playfair —
      które zastąpiliśmy globalnym replace_all. Dodatkowy guard:
   ═══════════════════════════════════════════════════════════════════ */
html h1, html h2, html h3, html h4, html h5, html h6,
.display, .ht-main, .ht-sub, .tr-title, .sun-title,
.hero-title, .blog-featured__title, .post-content h2,
.post-content h3, .case-title, .member-name, .conc-title,
.atl-cap-title, .atl-manifest-title, .pricing-card h3,
.testi-q, .prop-title{
  font-family:'Cormorant Garamond','EB Garamond',Georgia,serif !important;
}
/* Ht-sub i hero-eyebrow zostawiamy sans (designspec) */
html .ht-sub, .hero-eyebrow, .eyebrow, .label, .btn,
.bk-label, .sb-label, .nav-links, .nav-tel, .nav-lang,
.atl-tag, .day-label, .hstat-l, .tr-meta, .tr-stats span,
.kf-label, .km-block-body p:not(:has(strong)), .f-label,
.kp-role, .blog-cat, .blog-cats__head p, .case-loc,
.member-role, .prop-detail-label, .prop-detail-value,
.prop-related-loc, .conc-num, .conc-q-label, .conc-q-who{
  font-family:'Inter','Helvetica Neue',system-ui,sans-serif;
}
/* h1/h2/h3 globalny weight — Cormorant 300 wygląda elegancko */
html h1{font-weight:300;}
html h2:not(.display):not(.tr-title):not(.sun-title):not(.hero-title){font-weight:400;}
html h3{font-weight:500;}

/* ═══ Fix 3 v2: BOOKING widget — pasek jako ::before pseudo-element.
   Widget jest self-contained: pasek (białe tło rozciągnięte na 100vw)
   dekoruje sam .booking-card, więc nie ma szansy się "rozjechać" przy
   przeniesieniu widgeta w inne miejsce strony. ═══ */
.booking-section .booking-card{
  position:relative;
  isolation:isolate;            /* własny stacking context dla z-index:-1 */
  max-width:1280px;
  margin-left:auto;margin-right:auto;
  background:transparent;        /* tło daje teraz ::before */
  box-shadow:none;               /* cień daje teraz ::before */
}
.booking-section .booking-card::before{
  content:'';
  position:absolute;
  top:-10px;left:0;
  width:100%;
  height:calc(100% + 20px);
  background:var(--white);
  box-shadow:0 28px 64px rgba(14,30,56,.18),0 2px 0 rgba(215,179,99,.08);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  z-index:-1;
  pointer-events:none;
}
.booking-section .booking-card > *{position:relative;z-index:1;}

/* ═══ Fix 5: MAPA — section-navy fallback gdy mapka pattern używa
   starego wrappera .ec-map.wrap (przed deploymentem nowej wersji).
   Zapewnia nawigację stylu w runtime. ═══ */
section.ec-map,
.ec-map{
  background:var(--navy);
  padding:110px 80px;
  isolation:isolate;
}
.ec-map > *{position:relative;z-index:1;}
.ec-map__head{text-align:center;margin-bottom:48px;max-width:880px;margin-left:auto;margin-right:auto;}
.ec-map__head .eyebrow{justify-content:center;color:var(--gold) !important;}
.ec-map__head .eyebrow::before{background:var(--gold) !important;opacity:1;}
.ec-map__head h2{color:#f0ece4;}
.ec-map__head h2 em{color:var(--gold);}
.ec-map__head p,
.ec-map__head .ec-map__lead{font-size:1rem;font-weight:300;color:rgba(255,255,255,.72);max-width:560px;margin:14px auto 0;line-height:1.7;}
/* Mapa kontener — max-width container + środkowanie */
.ec-map #rs-cities-map,
.ec-map .rs-cm-map,
.ec-map .rsmap-cities-map{
  max-width:1280px;margin:0 auto;width:100%;
  height:520px;border-radius:0;overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 24px 64px rgba(0,0,0,.28);
}
@media (max-width:1100px){
  .ec-map{padding:80px 28px;}
  .ec-map #rs-cities-map,
  .ec-map .rs-cm-map{height:440px;}
}
/* Shortcode [rs_cities_map] generuje wewnętrzną <section class="ec-map wrap">
   z własnym headerem (eyebrow + h2 + p). Skonsolidowana reguła: reset
   plugin styles + centrowanie + ukrycie zduplikowanego headera.
   WAŻNE: pierwszy selektor `section.ec-map.wrap` (specificity 0,4,1)
   musi być JEDEN bo wcześniejsze reguły rozdzielały reset i centering
   na dwa bloki — `margin:0 !important` wygrywało nad `margin:0 auto`. */
.ec-map.section-navy section.ec-map.wrap,
.ec-map.section-navy .ec-map.wrap,
.ec-map.section-navy .wp-block-shortcode > section.ec-map.wrap{
  display:block !important;
  width:100% !important;
  max-width:1280px !important;
  margin:0 auto !important;
  padding:0 !important;
  background:transparent !important;
  float:none !important;
  text-align:initial;
}
.ec-map.section-navy .ec-map.wrap > .ec-map__head{display:none !important;}
.ec-map.section-navy section.ec-map.wrap > .rs-cm-map,
.ec-map.section-navy .ec-map.wrap > .rs-cm-map,
.ec-map.section-navy .rs-cm-map,
.ec-map.section-navy .leaflet-container{
  display:block !important;
  width:100% !important;
  max-width:1280px !important;
  margin:0 auto !important;
  float:none !important;
  position:relative !important;
  left:auto !important;right:auto !important;
}
/* Wp-block-group/.wp-block-shortcode wrappers nie powinny ograniczać szerokości */
.ec-map.section-navy > .wp-block-shortcode,
.ec-map.section-navy > .wp-block-group{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* ═══ Fix 7: OFERTA — 3 kafelki w rzędzie (desktop) +
   szersza kolumna mapa-filter widget (1fr 540px zamiast plugin's
   1fr 420px). Override z większą specyficznością. ═══ */
.is-oferta .rs-grid,
.is-oferta .rs-properties-grid,
.is-oferta .rs-cards-grid,
.is-oferta .rs-grid-wrapper > .rs-grid-list{grid-template-columns:repeat(3,1fr) !important;}
.is-oferta .rs-main-layout--with-map{grid-template-columns:1fr 540px !important;}
@media (max-width:1280px){
  .is-oferta .rs-grid,
  .is-oferta .rs-properties-grid,
  .is-oferta .rs-cards-grid{grid-template-columns:repeat(2,1fr) !important;}
  .is-oferta .rs-main-layout--with-map{grid-template-columns:1fr 480px !important;}
}
@media (max-width:1100px){
  .is-oferta .rs-main-layout--with-map{grid-template-columns:1fr !important;}
}
@media (max-width:720px){
  .is-oferta .rs-grid,
  .is-oferta .rs-properties-grid,
  .is-oferta .rs-cards-grid{grid-template-columns:1fr !important;}
}

/* ══════════════════════════════════════════════════════════════
   STRONA 404
══════════════════════════════════════════════════════════════ */
.ec-404-hero{padding:100px 28px 80px;text-align:center;position:relative;overflow:hidden;background:var(--cream)}
.ec-404-hero__inner{position:relative;z-index:1;max-width:760px;margin:0 auto}
.ec-404-hero::before{content:'404';position:absolute;top:50%;left:50%;transform:translate(-50%,-55%);font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(180px,28vw,360px);font-weight:700;color:rgba(0,33,71,.04);line-height:1;user-select:none;pointer-events:none;white-space:nowrap}
.ec-404-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:16px}
.ec-404-eyebrow::before{content:'';display:inline-block;width:28px;height:1px;background:var(--gold)}
.ec-404-num{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(72px,12vw,130px);font-weight:500;color:var(--gold);line-height:1;margin:0 0 16px}
.ec-404-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(28px,4vw,50px);font-weight:500;color:var(--navy);line-height:1.2;margin:0 0 20px}
.ec-404-title em{color:var(--gold);font-style:normal}
.ec-404-line{width:44px;height:2px;background:var(--gold);margin:0 auto 24px}
.ec-404-desc{font-size:16.5px;color:var(--muted);line-height:1.7;max-width:540px;margin:0 auto 36px}
.ec-404-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.ec-404-btn{display:inline-flex;align-items:center;padding:14px 30px;font-family:'Cormorant Garamond',Georgia,serif;font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:background .2s,color .2s,border-color .2s;line-height:1}
.ec-404-btn--primary{background:var(--gold);color:#fff;border:1px solid var(--gold)}
.ec-404-btn--primary:hover{background:var(--gold-deep);border-color:var(--gold-deep);color:#fff;text-decoration:none}
.ec-404-btn--outline{background:transparent;color:var(--navy);border:1px solid var(--navy)}
.ec-404-btn--outline:hover{background:var(--navy);color:#fff;text-decoration:none}
body.error404 .ec-featured{border-top:1px solid var(--line);padding-top:80px}
@media(max-width:640px){.ec-404-hero{padding:72px 20px 56px}.ec-404-btn{padding:12px 22px;font-size:13px}}

/* ═══ Fix 6: SEO BLOCK — CSS ═══
   Sekcja SEO z 3 lorem-ipsum blokami + akordeon FAQ na dole.
   Markup w patterns/seo-placeholder.php.
   padding-top:100px — gap między poprzedzającą sekcją kontakt-newsletter
   (granat, padding-bottom:120px) a SEO blokiem (biały). ═══ */
.seo-block-section{padding:100px 80px 120px;}
.seo-block{
  max-width:1080px;margin:0 auto;
  background:var(--white);
  border:1px solid rgba(215,179,99,.28);
  padding:64px 72px 56px;
}
.seo-block__item{padding:28px 0;}
.seo-block__item + .seo-block__item{border-top:1px solid var(--border);}
.seo-block__item:first-child{padding-top:0;}
.seo-block__item h2{font-family:var(--serif);font-size:1.8rem;font-weight:400;color:var(--display);margin-bottom:14px;line-height:1.2;}
.seo-block__item p{font-size:.96rem;font-weight:300;color:var(--muted);line-height:1.75;}
.seo-block__faq{margin-top:32px;padding-top:28px;border-top:2px solid var(--gold);}
.seo-block__faq-head{font-family:var(--serif);font-size:1.5rem;font-weight:500;color:var(--display);margin-bottom:18px;}
.seo-block__faq .faq-item{margin-bottom:12px;border-radius:6px;overflow:hidden;}
.seo-block__faq summary{
  list-style:none;cursor:pointer;
  padding:18px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  font-family:var(--serif);font-size:1.12rem;font-weight:500;color:var(--display);line-height:1.35;
  transition:color .25s ease;
}
.seo-block__faq summary::-webkit-details-marker{display:none;}
.seo-block__faq summary::marker{content:"";}
.seo-block__faq summary:hover{color:var(--gold);}
.seo-block__faq summary::after{
  content:'';flex-shrink:0;width:10px;height:10px;margin-right:4px;
  border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);
  transform:rotate(45deg);transform-origin:60% 60%;
  transition:transform .3s ease;
}
.seo-block__faq .faq-item[open] summary{color:var(--gold);}
.seo-block__faq .faq-item[open] summary::after{transform:rotate(225deg);}
.seo-block__faq .faq-body{padding:0 24px 22px;}
.seo-block__faq .faq-body p{font-size:.95rem;font-weight:300;color:var(--muted);line-height:1.75;margin:0;max-width:780px;}
@media (max-width:900px){
  .seo-block-section{padding:0 28px 84px;}
  .seo-block{padding:40px 28px 32px;}
  .seo-block__item h2{font-size:1.4rem;}
}

/* ═══ Fix 4: DAY counter animation pomocnicze — chowamy
   wartości docelowe podczas animacji, JS odsłania ═══ */
.day-time[data-target]{font-variant-numeric:tabular-nums;}

/* ═══════════════════════════════════════════════════════════════════
   ═══ APARTAMENT — CSS ═══
   Strona pojedynczej nieruchomości (CPT rs_property) — szablon
   single-rs_property.php w roocie motywu nadpisuje wtyczkę.
   Markup z nowy-design/apartament.html. Wszystkie klasy `.prop-*`
   są UNIKATOWE — nie kolidują z poprzednimi etapami.
   ═══════════════════════════════════════════════════════════════════ */

.is-apartament .prop-header{padding:140px 80px 36px;background:var(--bg);}
.is-apartament .prop-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:28px;}
.is-apartament .prop-breadcrumb a{color:var(--gold);transition:color .2s;text-decoration:none;}
.is-apartament .prop-breadcrumb a:hover{color:var(--gold-h);}
.is-apartament .prop-breadcrumb span.sep{color:var(--muted);opacity:.6;}
.is-apartament .prop-breadcrumb span.crumb-last{color:var(--text);font-weight:600;}
.is-apartament .prop-header__inner{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:flex-end;max-width:1280px;margin:0 auto;}
.is-apartament .prop-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;}
.is-apartament .prop-badge{padding:7px 16px;font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;font-weight:600;}
.is-apartament .prop-badge--status{background:var(--navy);color:#fff;}
.is-apartament .prop-badge--market{background:rgba(14,30,56,.08);color:var(--navy);border:1px solid rgba(14,30,56,.2);}
.is-apartament .prop-badge--featured{background:rgba(215,179,99,.12);color:var(--gold-deep);border:1px solid rgba(215,179,99,.4);}
.is-apartament .prop-title{font-family:var(--serif);font-size:clamp(2.2rem,4vw,3.4rem);font-weight:400;line-height:1.1;color:var(--display);letter-spacing:-.015em;max-width:920px;margin-bottom:22px;}
.is-apartament .prop-address{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;color:var(--muted);font-weight:400;letter-spacing:.01em;margin-bottom:18px;}
.is-apartament .prop-address svg{width:16px;height:16px;color:var(--gold);}
.is-apartament .prop-quick-stats{display:flex;flex-wrap:wrap;gap:10px;}
.is-apartament .prop-qstat{display:inline-flex;align-items:center;gap:8px;background:var(--white);border:1px solid var(--border);padding:9px 16px;font-size:.82rem;font-weight:500;color:var(--text);letter-spacing:.01em;}
.is-apartament .prop-qstat svg{width:16px;height:16px;color:var(--gold);}
.is-apartament .prop-price-block{background:var(--navy);color:#fff;padding:24px 32px;text-align:right;min-width:280px;position:relative;overflow:hidden;}
.is-apartament .prop-price-block::before{content:'';position:absolute;top:-50%;right:-30%;width:120%;height:200%;background:radial-gradient(circle at center,rgba(244,217,140,.16) 0%,transparent 65%);pointer-events:none;}
.is-apartament .prop-price-block > *{position:relative;z-index:1;}
.is-apartament .prop-price-block__label{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(215,179,99,.7);font-weight:600;margin-bottom:8px;}
.is-apartament .prop-price-block__num{font-family:var(--serif);font-size:2rem;font-weight:400;color:#fff;line-height:1;letter-spacing:-.01em;}
.is-apartament .prop-price-block__sqm{font-size:.78rem;color:rgba(255,255,255,.7);margin-top:8px;}

/* Gallery — main image + thumbs row poniżej (classic lightbox layout) */
.is-apartament .prop-gallery{margin:0 80px 64px;display:flex;flex-direction:column;gap:16px;}
.is-apartament .prop-gallery__main{position:relative;width:100%;height:520px;background:var(--bg2);border:1px solid var(--border);background-size:cover;background-position:center;overflow:hidden;}
.is-apartament .prop-gallery__main::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 50%,rgba(14,30,56,.18) 100%);pointer-events:none;}
.is-apartament .prop-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.95);color:var(--navy);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(14,30,56,.16);transition:transform .2s,background .2s;}
.is-apartament .prop-gallery-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.05);}
.is-apartament .prop-gallery-arrow svg{width:20px;height:20px;}
.is-apartament .prop-gallery-arrow--prev{left:24px;}
.is-apartament .prop-gallery-arrow--next{right:24px;}
.is-apartament .prop-gallery-counter{position:absolute;bottom:96px;left:50%;transform:translateX(-50%);z-index:3;background:rgba(14,30,56,.85);color:#fff;padding:6px 14px;font-size:.72rem;letter-spacing:.16em;font-weight:600;backdrop-filter:blur(6px);}
.is-apartament .prop-gallery-cta{position:absolute;bottom:16px;right:16px;z-index:2;background:rgba(14,30,56,.92);color:#fff;padding:9px 14px;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;border:1px solid rgba(215,179,99,.45);display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:background .25s;}
.is-apartament .prop-gallery-cta:hover{background:var(--navy-2);}
.is-apartament .prop-gallery-cta svg{width:14px;height:14px;}
/* Thumbs row — osobny rząd poniżej main, scroll horizontalny jeśli > 6 */
.is-apartament .prop-gallery__thumbs{
  display:grid;grid-template-columns:repeat(6,1fr);gap:10px;
  position:relative;width:100%;
}
.is-apartament .prop-thumb{
  height:88px;background-size:cover;background-position:center;
  cursor:pointer;padding:0;
  background-color:var(--bg2);
  border:2px solid transparent;border-radius:2px;
  transition:border-color .2s ease,opacity .25s ease,transform .25s ease;
  opacity:.78;
}
.is-apartament .prop-thumb:hover{opacity:1;transform:translateY(-2px);}
.is-apartament .prop-thumb.active{border-color:var(--gold);opacity:1;}
@media (max-width:900px){
  .is-apartament .prop-gallery__thumbs{grid-template-columns:repeat(4,1fr);}
  .is-apartament .prop-thumb{height:72px;}
}
@media (max-width:600px){
  .is-apartament .prop-gallery{margin:0 28px 48px;}
  .is-apartament .prop-gallery__main{height:340px;}
  .is-apartament .prop-gallery__thumbs{grid-template-columns:repeat(3,1fr);gap:8px;}
  .is-apartament .prop-thumb{height:64px;}
}

/* Layout: content + sidebar */
.is-apartament .prop-layout{padding:0 80px 120px;display:grid;grid-template-columns:1fr 400px;gap:48px;align-items:start;}
.is-apartament .prop-content{display:flex;flex-direction:column;gap:24px;}
.is-apartament .prop-section{background:var(--white);border:1px solid var(--border);padding:36px 40px 32px;}
.is-apartament .prop-section h2{font-family:var(--serif);font-size:1.6rem;font-weight:500;color:var(--display);margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--border);}

.is-apartament .prop-description{font-size:1rem;font-weight:300;color:var(--text);line-height:1.85;}
.is-apartament .prop-description > p{margin-bottom:1.2em;}
.is-apartament .prop-description > p:last-child{margin-bottom:0;}
.is-apartament .prop-description strong{font-weight:600;color:var(--display);}

.is-apartament .prop-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;}
.is-apartament .prop-detail-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--border);gap:24px;}
.is-apartament .prop-detail-label{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500;}
.is-apartament .prop-detail-value{font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--display);}

.is-apartament .prop-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.is-apartament .prop-feature{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--bg);border:1px solid var(--border);transition:border-color .25s,background .25s;}
.is-apartament .prop-feature:hover{border-color:var(--gold);background:rgba(215,179,99,.04);}
.is-apartament .prop-feature-ico{flex-shrink:0;width:32px;height:32px;background:rgba(215,179,99,.10);color:var(--gold);border:1px solid rgba(215,179,99,.25);display:flex;align-items:center;justify-content:center;}
.is-apartament .prop-feature-ico svg{width:18px;height:18px;}
.is-apartament .prop-feature-name{font-size:.92rem;font-weight:500;color:var(--text);}

.is-apartament .prop-loc-address{display:inline-flex;align-items:center;gap:8px;font-size:.92rem;color:var(--muted);font-weight:400;margin-bottom:24px;}
.is-apartament .prop-loc-address svg{width:16px;height:16px;color:var(--gold);}
.is-apartament .prop-map{height:420px;width:100%;border:1px solid var(--border);background:var(--bg2);position:relative;overflow:hidden;}

.is-apartament .prop-video{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden;}
.is-apartament .prop-video iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}

/* Sidebar */
.is-apartament .prop-sidebar{position:sticky;top:104px;display:flex;flex-direction:column;gap:18px;}
.is-apartament .prop-side-card{background:var(--white);border:1px solid var(--border);padding:28px 30px 26px;}
.is-apartament .prop-side-card--price{background:var(--navy);color:#fff;border:none;padding:32px 30px 28px;text-align:center;position:relative;overflow:hidden;}
.is-apartament .prop-side-card--price::before{content:'';position:absolute;top:-40%;left:50%;transform:translateX(-50%);width:120%;height:160%;background:radial-gradient(circle at center,rgba(244,217,140,.16) 0%,transparent 60%);pointer-events:none;}
.is-apartament .prop-side-card--price > *{position:relative;z-index:1;}
.is-apartament .prop-side-card .prop-price{font-family:var(--serif);font-size:2rem;font-weight:400;color:#fff;letter-spacing:-.01em;}
.is-apartament .prop-side-card__title{font-family:var(--serif);font-size:1.4rem;font-weight:500;color:var(--display);margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border);}
.is-apartament .prop-agent-bar{display:flex;align-items:center;gap:14px;background:var(--bg);padding:14px 16px;margin-bottom:20px;}
.is-apartament .prop-agent-avatar{width:48px;height:48px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.3rem;font-weight:500;font-style:italic;flex-shrink:0;border:1px solid rgba(215,179,99,.35);}
.is-apartament .prop-agent-info{flex:1;}
.is-apartament .prop-agent-info strong{display:block;font-family:var(--serif);font-size:1.1rem;font-weight:500;color:var(--display);}
.is-apartament .prop-agent-info a{font-size:.84rem;color:var(--gold);transition:color .2s;text-decoration:none;}
.is-apartament .prop-agent-info a:hover{color:var(--gold-h);}
.is-apartament .prop-form{display:flex;flex-direction:column;gap:14px;}
.is-apartament .prop-field{display:flex;flex-direction:column;gap:7px;}
.is-apartament .prop-field label{font-size:.58rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);font-weight:600;}
.is-apartament .prop-field label .required{color:var(--gold);}
.is-apartament .prop-field input,
.is-apartament .prop-field textarea{background:var(--bg);border:1px solid var(--border);padding:12px 14px;font-family:var(--sans);font-size:.92rem;color:var(--text);outline:none;transition:border-color .2s,background .2s;}
.is-apartament .prop-field input:focus,
.is-apartament .prop-field textarea:focus{border-color:var(--gold);background:#fff;}
.is-apartament .prop-field input::placeholder,
.is-apartament .prop-field textarea::placeholder{color:var(--muted);opacity:.55;}
.is-apartament .prop-field textarea{min-height:96px;resize:vertical;}
.is-apartament .prop-consent{display:flex;align-items:flex-start;gap:10px;cursor:pointer;margin:6px 0 4px;}
.is-apartament .prop-consent input{width:16px;height:16px;flex-shrink:0;margin-top:3px;accent-color:var(--gold);}
.is-apartament .prop-consent span{font-size:.74rem;font-weight:300;color:var(--muted);line-height:1.5;}
.is-apartament .prop-submit{background:var(--navy);color:#fff;border:none;cursor:pointer;padding:14px 24px;font-family:var(--sans);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:background .25s,transform .2s;margin-top:6px;}
.is-apartament .prop-submit:hover{background:var(--navy-2);transform:translateY(-1px);}
.is-apartament .prop-submit svg{width:16px;height:16px;flex-shrink:0;}
.is-apartament .prop-call{background:transparent;color:var(--text);border:1px solid var(--border);padding:13px 22px;cursor:pointer;font-family:var(--sans);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:border-color .25s,color .25s,background .25s;text-decoration:none;}
.is-apartament .prop-call:hover{border-color:var(--gold);color:var(--gold);background:rgba(215,179,99,.04);}
.is-apartament .prop-call svg{width:14px;height:14px;}

/* Podobne oferty */
.is-apartament .prop-related{padding:0 80px 120px;}
.is-apartament .prop-related__head{margin-bottom:32px;}
.is-apartament .prop-related__head h2{font-family:var(--serif);font-size:1.8rem;font-weight:500;color:var(--display);}
.is-apartament .prop-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.is-apartament .prop-related-card{background:var(--white);border:1px solid var(--border);overflow:hidden;display:flex;flex-direction:column;transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s cubic-bezier(.2,.7,.2,1);color:inherit;text-decoration:none;}
.is-apartament .prop-related-card:hover{transform:translateY(-6px);box-shadow:0 32px 72px rgba(14,30,56,.16);}
.is-apartament .prop-related-photo{height:230px;background-size:cover;background-position:center;position:relative;overflow:hidden;}
.is-apartament .prop-related-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(14,30,56,.20) 100%);pointer-events:none;}
.is-apartament .prop-related-badge{position:absolute;top:14px;left:14px;z-index:2;background:var(--navy);color:#fff;padding:5px 12px;font-size:.55rem;letter-spacing:.28em;text-transform:uppercase;font-weight:600;}
.is-apartament .prop-related-body{padding:22px 24px 24px;flex:1;display:flex;flex-direction:column;}
.is-apartament .prop-related-loc{font-size:.58rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:8px;}
.is-apartament .prop-related-title{font-family:var(--serif);font-size:1.25rem;font-weight:500;color:var(--display);margin-bottom:14px;line-height:1.25;}
.is-apartament .prop-related-meta{font-size:.8rem;color:var(--muted);margin-bottom:14px;display:flex;flex-wrap:wrap;gap:12px;}
.is-apartament .prop-related-meta span + span::before{content:'·';color:var(--gold);margin-right:12px;}
.is-apartament .prop-related-price{font-family:var(--serif);font-size:1.4rem;font-weight:400;color:var(--display);letter-spacing:-.01em;margin-top:auto;padding-top:14px;border-top:1px solid var(--border);}
.is-apartament .prop-related-btn{display:inline-block;margin-top:14px;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600;}
.is-apartament .prop-related-btn::after{content:' →';}

@media (max-width:1100px){
	.is-apartament .prop-header{padding:100px 28px 32px;}
	.is-apartament .prop-header__inner{grid-template-columns:1fr;gap:24px;}
	.is-apartament .prop-price-block{text-align:left;min-width:0;}
	.is-apartament .prop-gallery{margin:0 28px 48px;}
	.is-apartament .prop-layout{padding:0 28px 80px;grid-template-columns:1fr;gap:32px;}
	.is-apartament .prop-sidebar{position:static;}
	.is-apartament .prop-section{padding:28px 24px;}
	.is-apartament .prop-features-grid{grid-template-columns:repeat(2,1fr);}
	.is-apartament .prop-related{padding:0 28px 80px;}
	.is-apartament .prop-related-grid{grid-template-columns:1fr;}
}
@media (max-width:680px){
	.is-apartament .prop-details-grid{grid-template-columns:1fr;}
	.is-apartament .prop-features-grid{grid-template-columns:1fr;}
	.is-apartament .prop-gallery__thumbs{grid-template-columns:repeat(3,1fr);}
}

/* ═══════════════════════════════════════════════════════════════════
   ═══ TOP-LEVEL SECTIONS — usuń WP block-gap między sekcjami ═══
   WP wstawia margin-block-start:24px (var(--wp--style--block-gap))
   na każdy direct child .is-layout-constrained — co dodaje 24px
   przerwy między sekcjami. Każda nasza sekcja home-* / about-* /
   kup-* / sprzedaj-* / kontakt-* ma własny padding wewnętrzny
   zgodny z designem; ten dodatkowy 24px gap jest niechciany
   (najbardziej widoczny przy zmianie tła np. .day → .lifestyle).
   Reset margin dla wszystkich custom elitecore-block-ów + group
   wrapperów (mapka, featured-offer, blog-grid-3, seo-placeholder).
   ═══════════════════════════════════════════════════════════════════ */
.entry-content > section[class*="wp-block-elitecore-"],
.entry-content > div.wp-block-group.alignfull{margin-block-start:0 !important;}

/* ══════════════════════════════════════════════════════════════
   KARTA NIERUCHOMOŚCI — narożnik hero / subhero
══════════════════════════════════════════════════════════════ */
.ec-prop-card{position:absolute;top:clamp(72px,9vh,100px);left:clamp(16px,3vw,32px);z-index:10;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:14px 20px 16px;max-width:300px;display:flex;flex-direction:column;gap:5px;text-decoration:none;transition:background .2s,box-shadow .2s}
.ec-prop-card--right{left:auto;right:clamp(16px,3vw,32px)}
.ec-prop-card:hover{background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.ec-prop-card__name{font-family:var(--serif);font-size:16px;font-weight:700;line-height:1.35;color:var(--navy)}
.ec-prop-card__sub{font-family:var(--serif);font-size:12px;font-weight:400;color:var(--navy);opacity:.6;margin-top:-1px}
.ec-prop-card__price{font-family:var(--serif);font-size:16px;font-weight:400;color:var(--navy);margin-top:2px}
@media(max-width:640px){.ec-prop-card{top:auto;bottom:20px;max-width:200px;padding:10px 14px}.ec-prop-card--right{right:auto;left:16px}.ec-prop-card__name,.ec-prop-card__price{font-size:12px}.ec-prop-card__sub{font-size:10px}}
@media(max-width:640px){.hero-inner{padding-bottom:130px;}.page-hero{padding-bottom:140px;}}
/* ══ MOBILE NAV — logo + drawer fixes ≤640px ══ */
@media(max-width:640px){
  .nav{padding:0 18px;}
  .nav-logo{height:auto;display:flex;align-items:center;}
  .nav-logo svg{height:20px;}
  .nav-right .btn{padding:7px 11px;font-size:.58rem;letter-spacing:.12em;}
  .nav-drawer__links a,
  .nav-drawer .nav-links__menu > li > a{font-size:1.6rem;padding:10px 0;}
  .nav-drawer__cta{padding-top:20px;gap:10px;}
}

/* ═══════════════════════════════════════════════════════════════════
   POPRAWKI KLIENTA 2026-06
   ═══════════════════════════════════════════════════════════════════ */

/* ── Zad. 1: Przycisk „Do góry strony" (globalny, mobile + desktop) ──
   Markup wstrzykiwany przez wp_footer (functions.php): button#ecToTop.
   Domyślnie ukryty; .is-visible nadawane przez JS po przewinięciu. */
.ec-to-top{
  position:fixed;right:22px;bottom:24px;z-index:1200;
  width:48px;height:48px;border:none;border-radius:50%;
  background:var(--navy,#002147);color:var(--gold,#d7b363);
  display:inline-flex;align-items:center;justify-content:center;
  cursor:pointer;padding:0;
  box-shadow:0 10px 28px rgba(10,22,40,.30);
  opacity:0;visibility:hidden;transform:translateY(14px);
  transition:opacity .3s ease,transform .3s ease,visibility .3s ease,background .2s ease,color .2s ease;
  -webkit-appearance:none;appearance:none;
}
.ec-to-top svg{width:22px;height:22px;display:block;}
.ec-to-top:hover,
.ec-to-top:focus-visible{background:var(--gold,#d7b363);color:#fff;outline:none;}
.ec-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);}
@media (max-width:640px){
  .ec-to-top{right:16px;bottom:18px;width:44px;height:44px;}
  .ec-to-top svg{width:20px;height:20px;}
}
@media (prefers-reduced-motion:reduce){
  .ec-to-top{transition:opacity .2s ease,visibility .2s ease;transform:none;}
  .ec-to-top.is-visible{transform:none;}
}

/* ── Zad. 4 (fallback): ukrycie sekcji „Polecane / Wybrane nieruchomości"
   (#oferta) na stronie głównej. Główne usunięcie robi filtr render_block
   w functions.php; ta reguła to zabezpieczenie, gdyby blok core/html był
   zapisany inaczej niż zakłada filtr. Dotyczy WYŁĄCZNIE homepage (body.home);
   na /oferta/ wrapper to .is-oferta, więc tu nic nie psujemy. */
body.home #oferta{display:none !important;}

/* ── Zad. 2: Mapka na stronie głównej — mobile.
   Na wąskich ekranach mapa była „długa i chuda" (wysokość 520/440px przy
   wąskiej kolumnie) i nie wykorzystywała szerokości. Zmniejszamy boczny
   padding sekcji (mapa bliżej pełnej szerokości) i obniżamy wysokość. */
@media (max-width:640px){
  section.ec-map,
  .ec-map{padding:56px 14px !important;}
  .ec-map #rs-cities-map,
  .ec-map .rs-cm-map,
  .ec-map.section-navy .rs-cm-map,
  .ec-map.section-navy .leaflet-container{height:360px !important;border-radius:16px !important;}
}
@media (max-width:400px){
  section.ec-map,
  .ec-map{padding:48px 10px !important;}
  .ec-map #rs-cities-map,
  .ec-map .rs-cm-map,
  .ec-map.section-navy .rs-cm-map,
  .ec-map.section-navy .leaflet-container{height:320px !important;}
}

/* ── Zad. 3 (v2): Strona /oferta/ — REDESIGN WYSZUKIWARKI NA MOBILE.
   Problem: motyw nadpisywał pasek filtrów na display:grid, co kłóciło się ze
   strukturą flex pluginu — pasek wychodził poza ekran (ucięte „Szukaj"/„Wyczyść"),
   a selekty były „goły tekst" bez ramki (wyglądały jak ukryte kontrolki). Ten
   blok zastępuje grid czystym układem pionowym z widocznymi kontrolkami. */
@media (max-width:760px){
  /* żaden element listy/mapy nie szerszy niż ekran */
  .is-oferta,
  .is-oferta .rs-grid-wrapper,
  .is-oferta .rs-filters-form,
  .is-oferta .rs-main-layout,
  .is-oferta .rs-grid-section,
  .is-oferta .rs-map-section,
  .is-oferta .rs-leaflet-map,
  .is-oferta .rs-cards-grid{max-width:100% !important;}
  .is-oferta .rs-main-layout--with-map{grid-template-columns:1fr !important;}
  .is-oferta .rs-cards-grid,
  .is-oferta .rs-main-layout--with-map .rs-cards-grid{grid-template-columns:1fr !important;}
  .is-oferta .rs-results-bar,
  .is-oferta .rs-active-filters{flex-wrap:wrap;}

  /* ── PASEK FILTRÓW: pionowy stos zamiast grid hacka ── */
  .is-oferta .rs-filters-form{margin-bottom:28px;}
  .is-oferta .rs-filters-bar{
    display:flex !important;flex-direction:column !important;align-items:stretch !important;
    gap:0 !important;padding:8px !important;width:100%;max-width:100%;box-sizing:border-box;
    grid-template-columns:none !important;
  }
  .is-oferta .rs-filter-group{
    display:flex !important;flex-direction:column !important;align-items:stretch !important;
    width:auto !important;height:auto !important;min-height:0 !important;min-width:0 !important;
    flex:0 0 auto !important;gap:7px !important;
    padding:14px !important;justify-content:flex-start !important;
    border-right:none !important;border-bottom:1px solid var(--border) !important;
  }
  /* etykiety widoczne na mobile (single-row design je chowa) */
  .is-oferta .rs-filter-label{display:block !important;margin:0 !important;line-height:1.3;height:auto !important;}
  /* selekty jako realne kontrolki: ramka, tło, chevron, duży tap-target */
  .is-oferta .rs-filter-select{
    -webkit-appearance:none;appearance:none;
    width:100%;box-sizing:border-box;height:48px;
    padding:0 40px 0 14px;
    background-color:#fff;border:1px solid var(--border);border-radius:10px;
    color:var(--text);font-size:1rem;cursor:pointer;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%237A6F65' stroke-width='1.6'><path d='M1 1.5l5 5 5-5'/></svg>");
    background-repeat:no-repeat;background-position:right 14px center;
  }
  .is-oferta .rs-filter-range{display:flex;gap:10px;align-items:center;}
  .is-oferta .rs-filter-input{
    flex:1;min-width:0;height:48px;box-sizing:border-box;
    border:1px solid var(--border);border-radius:10px;padding:0 14px;font-size:1rem;background:#fff;
  }
  /* „Szukaj" — własny wiersz, pełna szerokość */
  .is-oferta .rs-filter-group--submit{
    height:auto !important;flex:0 0 auto !important;
    border-bottom:none !important;margin-left:0 !important;padding:12px 14px !important;
  }
  .is-oferta .rs-filter-group--submit .rs-btn,
  .is-oferta .rs-filter-group--submit .rs-btn--primary{
    width:100% !important;justify-content:center;height:52px;font-size:.92rem;letter-spacing:.06em;
  }
  /* wiersz 2: „Rozwiń filtry" + „Wyczyść" — równo, pełna szerokość */
  .is-oferta .rs-filters-bar__row2{
    width:100% !important;height:auto !important;box-sizing:border-box;margin:0 !important;flex:0 0 100% !important;
    padding:12px 14px !important;border-top:1px solid var(--border) !important;
    display:flex !important;gap:10px;align-items:center;justify-content:space-between;
  }
  .is-oferta .rs-btn--filtry{flex:1 1 auto;justify-content:center;height:48px;}
  .is-oferta .rs-btn--reset{flex:0 0 auto;white-space:nowrap;}

  /* ── SZUFLADA: drobne zabezpieczenia, by nic nie wychodziło w bok ── */
  .rs-drawer-select,
  .rs-drawer-input,
  .rs-drawer-range,
  .rs-drawer-rooms,
  .rs-drawer-checkboxes{max-width:100%;box-sizing:border-box;}
}
@media (max-width:480px){
  .is-oferta .section-intro{padding-left:16px !important;padding-right:16px !important;}
  .is-oferta .listings{padding-left:16px !important;padding-right:16px !important;}
}
