/*
Theme Name: Fonyódi Nyár
Theme URI: https://fonyodinyar.hu/
Author: Fonyódi Nyár
Description: Szerkeszthető apartmanokkal, bloggal és várható programokkal bővített egyedi téma.
Version: 4.2.0
Text Domain: fonyodi-nyar
*/


    :root {
      --ink:   #1a2328;
      --slate: #3d5a6b;
      --water: #5e7f8e;
      --mist:  #8faab5;
      --sand:  #c4a882;
      --gold:  #c9943a;
      --cream: #f2ece3;
      --white: #faf8f4;
    }
    *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { font-family:'DM Sans',sans-serif; font-weight:300; background:var(--white); color:var(--ink); overflow-x:hidden; }

    /* ── NAV (egységes wordmark, Hilltop-kék) ── */
    nav { position:fixed; top:0; left:0; right:0; z-index:500; padding:1rem 3rem; display:flex; align-items:center; justify-content:space-between; transition:background 0.4s; }
    nav.solid { background:var(--white); border-bottom:1px solid rgba(100,130,140,0.12); }
    .nav-logo { display:flex; align-items:center; gap:0.65rem; text-decoration:none; }
    .nav-logo img { height:38px; width:auto; transition:filter 0.4s; filter:drop-shadow(0 0 8px rgba(0,0,0,0.8)) drop-shadow(0 0 3px rgba(0,0,0,0.9)); }
    .nav-logo-text { display:flex; flex-direction:column; line-height:1; transition:color 0.4s; }
    .nav-logo-text .nlt-main { font-family:'Playfair Display',serif; font-weight:700; font-size:1rem; color:#fff; letter-spacing:0.01em; text-shadow:0 0 8px rgba(0,0,0,0.6); }
    .nav-logo-text .nlt-sub { font-size:0.6rem; letter-spacing:0.24em; text-transform:uppercase; color:rgba(255,255,255,0.75); margin-top:0.35rem; text-shadow:0 0 6px rgba(0,0,0,0.7); }
    nav.solid .nav-logo img { filter:none; }
    nav.solid .nav-logo-text .nlt-main { color:var(--ink); text-shadow:none; }
    nav.solid .nav-logo-text .nlt-sub { color:var(--water); text-shadow:none; }
    .nav-back { text-decoration:none; font-size:0.72rem; letter-spacing:0.18em; text-transform:uppercase; color:rgba(255,255,255,0.8); display:flex; align-items:center; gap:0.5rem; transition:color 0.3s; }
    .nav-back::before { content:'←'; }
    nav.solid .nav-back { color:var(--slate); }
    .nav-back:hover { color:var(--gold); }
    .nav-langs { display:flex; gap:0.4rem; }
    .nav-langs a { font-size:0.7rem; letter-spacing:0.1em; text-decoration:none; padding:0.22rem 0.55rem; border:1px solid rgba(255,255,255,0.35); color:rgba(255,255,255,0.7); transition:all 0.3s; }
    nav.solid .nav-langs a { border-color:var(--mist); color:var(--water); }
    .nav-langs a:hover, .nav-langs a.on { color:var(--gold); border-color:var(--gold); }

    /* olasz zászló-sáv a hero jobb oldalán */
    .hero-stripes {
      position:absolute; top:0; right:0; bottom:0; width:6px; pointer-events:none; z-index:3;
      display:flex; flex-direction:column;
    }
    .hero-stripes span { flex:1; }
    .hero-stripes span:nth-child(1) { background:rgba(0,140,69,0.28); }
    .hero-stripes span:nth-child(2) { background:rgba(255,255,255,0.12); }
    .hero-stripes span:nth-child(3) { background:rgba(205,33,42,0.22); }

    /* ── HERO — Hilltop-stílus, de apartman-specifikus ── */
    .hero {
      height:88vh; min-height:600px;
      position:relative; overflow:hidden;
      background: linear-gradient(152deg, var(--ink) 0%, var(--slate) 45%, var(--water) 80%, var(--sand) 100%);
    }
    .hero-darken { position:absolute; inset:0; background:linear-gradient(165deg,rgba(26,35,40,0.72) 0%,rgba(26,35,40,0.25) 55%,rgba(26,35,40,0.55) 100%); }
    .hero-kubista { position:absolute; inset:0; pointer-events:none; }
    .hero-kubista svg { width:100%; height:100%; }
    .hero-badacsony { position:absolute; bottom:0; left:0; right:0; height:220px; pointer-events:none; color:rgba(26,35,40,0.5); }
    .hero-badacsony svg { width:100%; height:100%; }
    .hero-body { position:relative; z-index:2; height:100%; display:flex; flex-direction:column; justify-content:flex-end; padding:0 3rem 7rem; max-width:1200px; margin:0 auto; }
    .hero-eyebrow { font-size:0.65rem; letter-spacing:0.35em; text-transform:uppercase; color:var(--sand); margin-bottom:1.2rem; display:flex; align-items:center; gap:0.8rem; }
    .hero-eyebrow::before { content:''; display:block; width:30px; height:1px; background:var(--sand); }
    .hero-eyebrow a { color:var(--sand); text-decoration:none; border-bottom:1px solid transparent; transition:border-color 0.3s; }
    .hero-eyebrow a:hover { border-color:var(--sand); }
    .hero-h1 { font-family:'Playfair Display',serif; font-weight:900; font-size:clamp(3.5rem,8vw,6.5rem); line-height:0.9; color:#fff; margin-bottom:1.2rem; }
    .hero-h1 em { display:block; font-style:italic; font-weight:400; color:var(--sand); font-size:0.5em; line-height:1.4; margin-top:0.3rem; }
    .hero-tagline { font-size:1.05rem; color:rgba(255,255,255,0.75); max-width:540px; line-height:1.75; margin-bottom:2rem; }
    .hero-meta { display:flex; gap:2.5rem; flex-wrap:wrap; }
    .hm { display:flex; flex-direction:column; }
    .hm strong { font-family:'Playfair Display',serif; font-size:1.8rem; color:#fff; font-weight:700; }
    .hm span { font-size:0.65rem; letter-spacing:0.18em; text-transform:uppercase; color:rgba(255,255,255,0.55); margin-top:0.3rem; }

    /* ── STORY ── */
    .story {
      max-width:1100px; margin:0 auto;
      padding:7rem 3rem 4rem;
      display:grid; grid-template-columns:1fr 1.2fr; gap:4rem; align-items:start;
    }
    .story-lbl { font-size:0.68rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--gold); margin-bottom:1rem; }
    .story-left h2 {
      font-family:'Playfair Display',serif;
      font-size:clamp(2rem,3.5vw,3rem);
      font-weight:700; line-height:1.1; color:var(--ink);
    }
    .story-left h2 em { font-style:italic; color:var(--sand); }
    .story-right p { font-size:1rem; line-height:1.9; color:var(--slate); max-width:540px; }
    .story-right p + p { margin-top:1rem; }
    .story-right strong { color:var(--ink); font-weight:500; }

    /* ── GALLERY - magazin/Pinterest stílus ── */
    .gallery {
      max-width:1280px; margin:3rem auto 0;
      padding:0 3rem;
    }
    .gallery-lbl { font-size:0.68rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--gold); margin-bottom:0.8rem; }
    .gallery-title {
      font-family:'Playfair Display',serif;
      font-size:clamp(1.8rem,3vw,2.4rem);
      font-weight:700; color:var(--ink); margin-bottom:2.5rem;
    }
    .gallery-title em { font-style:italic; color:var(--sand); }
    .gallery-grid {
      display:grid;
      grid-template-columns:repeat(6, 1fr);
      grid-auto-rows:180px;
      gap:1rem;
    }
    .ph {
      background:var(--cream);
      position:relative;
      overflow:hidden;
      display:flex; align-items:center; justify-content:center;
      color:var(--mist);
      font-size:0.7rem; letter-spacing:0.2em; text-transform:uppercase;
      border:1px dashed rgba(100,130,140,0.25);
    }
    .ph img { width:100%; height:100%; object-fit:cover; display:block; cursor:zoom-in; transition:transform 0.5s; }
    .ph:hover img { transform:scale(1.04); }
    /* magazinos méretek: 6 oszlop, különböző col/row span */
    .ph1 { grid-column:span 4; grid-row:span 2; } /* nagy, hero-szerű */
    .ph2 { grid-column:span 2; grid-row:span 1; }
    .ph3 { grid-column:span 2; grid-row:span 1; }
    .ph4 { grid-column:span 2; grid-row:span 2; } /* magas portré */
    .ph5 { grid-column:span 2; grid-row:span 1; }
    .ph6 { grid-column:span 2; grid-row:span 1; }
    .ph7 { grid-column:span 3; grid-row:span 2; } /* közepes-nagy */
    .ph8 { grid-column:span 3; grid-row:span 2; }

    /* ── FELSZERELTSÉG GRID ── */
    .amenities {
      max-width:1100px; margin:5rem auto 0;
      padding:0 3rem;
    }
    .amenities-head {
      display:flex; align-items:baseline; justify-content:space-between;
      gap:2rem; margin-bottom:2.5rem; flex-wrap:wrap;
    }
    .amenities-head h2 {
      font-family:'Playfair Display',serif;
      font-size:clamp(1.8rem,3vw,2.4rem);
      font-weight:700; color:var(--ink);
    }
    .amenities-head h2 em { font-style:italic; color:var(--sand); }
    .amenities-head p { font-size:0.9rem; color:var(--slate); max-width:400px; line-height:1.7; }

    .am-grid {
      display:grid;
      grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));
      gap:1px; background:rgba(100,130,140,0.15);
      border:1px solid rgba(100,130,140,0.15);
    }
    .am-item {
      background:var(--white);
      padding:1.4rem 1.6rem;
    }
    .am-icon { font-size:1.3rem; margin-bottom:0.5rem; display:block; }
    .am-name { font-family:'Playfair Display',serif; font-size:1rem; font-weight:700; color:var(--ink); margin-bottom:0.3rem; }
    .am-desc { font-size:0.82rem; color:var(--slate); line-height:1.5; }

    /* ── TÉNYEK TÁBLA ── */
    .facts {
      max-width:1100px; margin:4rem auto 0;
      padding:0 3rem;
    }
    .facts-title {
      font-family:'Playfair Display',serif;
      font-size:clamp(1.6rem,2.6vw,2.1rem);
      font-weight:700; color:var(--ink); margin-bottom:2rem;
    }
    .facts-title em { font-style:italic; color:var(--sand); }
    .facts-grid {
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:0 3rem;
      border-top:1px solid rgba(100,130,140,0.2);
    }
    .fact {
      display:grid; grid-template-columns:160px 1fr;
      padding:1.1rem 0;
      border-bottom:1px solid rgba(100,130,140,0.12);
      font-size:0.92rem; gap:1rem;
    }
    .fact-lbl { color:var(--mist); font-size:0.7rem; letter-spacing:0.15em; text-transform:uppercase; padding-top:0.15rem; }
    .fact-val { color:var(--ink); line-height:1.5; }

    /* ── CTA ── */
    .cta {
      background:var(--ink);
      clip-path:polygon(0 6%, 100% 0, 100% 100%, 0 100%);
      padding:9rem 3rem 5rem;
      margin-top:6rem;
      text-align:center; color:#fff;
      position:relative; overflow:hidden;
    }
    .cta-badacsony { position:absolute; bottom:0; left:0; right:0; height:180px; pointer-events:none; color:rgba(255,255,255,0.03); }
    .cta-badacsony svg { width:100%; height:100%; }
    .cta-inner { position:relative; z-index:1; max-width:640px; margin:0 auto; }
    .cta-lbl { font-size:0.68rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--sand); margin-bottom:1.2rem; display:block; }
    .cta h2 { font-family:'Playfair Display',serif; font-size:clamp(2rem,4vw,3rem); font-weight:900; line-height:1.1; margin-bottom:1.2rem; }
    .cta h2 em { font-style:italic; color:var(--sand); }
    .cta p { font-size:0.95rem; color:rgba(255,255,255,0.6); max-width:520px; margin:0 auto 2.5rem; line-height:1.75; }
    .cta-btns { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }
    .btn-primary, .btn-ghost {
      display:inline-flex; align-items:center; gap:0.6rem;
      text-decoration:none;
      padding:0.95rem 2.4rem; font-size:0.78rem;
      letter-spacing:0.14em; text-transform:uppercase;
      clip-path:polygon(0 0,calc(100% - 10px) 0,100% 100%,10px 100%);
      transition:all 0.3s;
    }
    .btn-primary { background:var(--gold); color:var(--ink); border:1px solid var(--gold); }
    .btn-primary:hover { background:var(--sand); border-color:var(--sand); }
    .btn-primary::after { content:'→'; }
    .btn-ghost { color:#fff; border:1px solid rgba(255,255,255,0.35); }
    .btn-ghost:hover { background:rgba(255,255,255,0.08); border-color:var(--sand); color:var(--sand); }

    /* ── SISTERS (más apartmanok) ── */
    .sisters {
      background:var(--ink); color:#fff;
      padding:4rem 3rem 5rem;
    }
    .sisters-inner { max-width:1100px; margin:0 auto; }
    .sisters-lbl { font-size:0.68rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--sand); margin-bottom:0.8rem; }
    .sisters h3 {
      font-family:'Playfair Display',serif;
      font-size:clamp(1.4rem,2.4vw,1.9rem);
      font-weight:700; margin-bottom:2rem;
    }
    .sisters h3 em { font-style:italic; color:var(--sand); }
    .sis-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:1rem; }
    .sis {
      text-decoration:none;
      padding:1.5rem;
      background:rgba(255,255,255,0.03);
      border:1px solid rgba(255,255,255,0.08);
      transition:all 0.3s;
      color:#fff;
    }
    .sis:hover { background:rgba(201,148,58,0.08); border-color:var(--sand); }
    .sis-name { font-family:'Playfair Display',serif; font-size:1.2rem; font-weight:700; margin-bottom:0.3rem; }
    .sis-meta { font-size:0.72rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--mist); }

    /* ── FOOTER ── */
    footer { background:var(--ink); padding:2.5rem 3rem; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; border-top:1px solid rgba(255,255,255,0.05); }
    .footer-links { display:flex; gap:1.5rem; flex-wrap:wrap; }
    .footer-links a { text-decoration:none; font-size:0.7rem; letter-spacing:0.1em; text-transform:uppercase; color:rgba(255,255,255,0.3); transition:color 0.3s; }
    .footer-links a:hover { color:var(--sand); }
    .footer-copy { font-size:0.72rem; color:rgba(255,255,255,0.18); }

    /* ── LIGHTBOX ── */
    .lb { position:fixed; inset:0; background:rgba(15,20,24,0.96); z-index:1000; display:none; align-items:center; justify-content:center; opacity:0; transition:opacity 0.3s; }
    .lb.open { display:flex; opacity:1; }
    .lb-stage { position:relative; width:100%; height:100%; display:flex; align-items:center; justify-content:center; padding:3rem; }
    .lb-img { max-width:100%; max-height:100%; object-fit:contain; box-shadow:0 8px 50px rgba(0,0,0,0.6); user-select:none; -webkit-user-drag:none; }
    .lb-caption { position:absolute; left:50%; transform:translateX(-50%); bottom:1.5rem; color:#fff; font-size:0.78rem; letter-spacing:0.18em; text-transform:uppercase; background:rgba(0,0,0,0.5); padding:0.55rem 1.2rem; border:1px solid rgba(255,255,255,0.12); }
    .lb-counter { position:absolute; top:1.5rem; left:1.5rem; color:rgba(255,255,255,0.55); font-size:0.7rem; letter-spacing:0.2em; text-transform:uppercase; }
    .lb-close { position:absolute; top:1.2rem; right:1.5rem; background:none; border:1px solid rgba(255,255,255,0.25); color:#fff; width:42px; height:42px; cursor:pointer; font-size:1.2rem; line-height:1; transition:all 0.3s; }
    .lb-close:hover { background:var(--gold); border-color:var(--gold); color:var(--ink); }
    .lb-nav { position:absolute; top:50%; transform:translateY(-50%); background:none; border:1px solid rgba(255,255,255,0.2); color:#fff; width:54px; height:54px; cursor:pointer; font-size:1.4rem; line-height:1; transition:all 0.3s; }
    .lb-nav:hover { background:var(--gold); border-color:var(--gold); color:var(--ink); }
    .lb-prev { left:1.5rem; }
    .lb-next { right:1.5rem; }
    @media (max-width:680px) {
      .lb-stage { padding:1rem; }
      .lb-nav { width:42px; height:42px; font-size:1.1rem; }
      .lb-prev { left:0.6rem; }
      .lb-next { right:0.6rem; }
      .lb-caption { font-size:0.68rem; padding:0.4rem 0.9rem; bottom:1rem; max-width:calc(100% - 2rem); text-align:center; }
      .lb-close { top:0.8rem; right:0.8rem; width:36px; height:36px; }
      .lb-counter { top:1rem; left:1rem; font-size:0.62rem; }
    }

    /* ── REVEAL ── */
    .reveal { opacity:0; transform:translateY(24px); transition:opacity 0.65s,transform 0.65s; }
    .reveal.visible { opacity:1; transform:none; }

    /* ── RESPONSIVE ── */
    @media (max-width:960px) {
      nav { padding:0.8rem 1.5rem; }
      .nav-back-text { display:none; }
      .nav-logo img { height:30px !important; }
      .nav-logo-text .nlt-main { font-size:0.9rem; }
      .nav-logo-text .nlt-sub { font-size:0.54rem; }
      .hero-body { padding:0 1.5rem 5rem; }
      .story { grid-template-columns:1fr; gap:1.5rem; padding:5rem 1.5rem 3rem; }
      .gallery { padding:0 1.5rem; }
      .gallery-grid { grid-template-columns:repeat(2, 1fr); grid-auto-rows:160px; }
      .ph1, .ph4, .ph7, .ph8 { grid-column:span 2; grid-row:span 2; }
      .ph2, .ph3, .ph5, .ph6 { grid-column:span 1; grid-row:span 1; }
      .amenities { padding:0 1.5rem; }
      .facts { padding:0 1.5rem; }
      .facts-grid { grid-template-columns:1fr; gap:0; }
      .cta { clip-path:none; padding:5rem 1.5rem 4rem; margin-top:4rem; }
      .sisters { padding:3rem 1.5rem 4rem; }
      footer { flex-direction:column; padding:2rem 1.5rem; }
    }
    @media (max-width:680px) {
      .fact { grid-template-columns:1fr; gap:0.3rem; }
      .hero-meta { gap:1.5rem; }
      .hm strong { font-size:1.5rem; }
      .nav-langs a { font-size:0.65rem; padding:0.18rem 0.45rem; }
    }
  
.site-nav-dynamic{background:#1a2328}.dynamic-main{min-height:70vh}.dynamic-hero{min-height:560px;background-size:cover;background-position:center}.dynamic-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,35,40,.9),rgba(26,35,40,.35))}.dog-hero-badge{display:inline-flex;background:#c9943a;color:#1a2328;padding:.45rem .9rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1.2rem}.editor-content{max-width:1080px;margin:0 auto;padding:5rem 3rem;color:#3d5a6b}.editor-content>h2{font-family:'Playfair Display',serif;color:#1a2328;font-size:clamp(1.8rem,3vw,2.7rem);margin:3rem 0 1.2rem}.editor-content>p{max-width:760px;font-size:1rem;line-height:1.9;margin:.9rem 0}.apartman-szolgaltatas{border-left:3px solid #c9943a;padding:1rem 1.3rem;margin:1rem 0;background:#f2ece3}.apartman-szolgaltatas h3{font-family:'Playfair Display',serif;color:#1a2328;margin-bottom:.4rem}.wp-block-gallery{display:grid!important;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}.wp-block-gallery figure{margin:0;overflow:hidden}.wp-block-gallery img{width:100%;height:360px;object-fit:cover}.content-hero{padding:11rem 3rem 5rem;background:linear-gradient(145deg,#1a2328,#3d5a6b);color:#fff}.content-hero-inner,.content-wrap{max-width:1100px;margin:auto}.content-hero .eyebrow{color:#c4a882;text-transform:uppercase;letter-spacing:.25em;font-size:.68rem}.content-hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.8rem,7vw,5.5rem);line-height:1;margin:.8rem 0}.content-hero p{color:rgba(255,255,255,.65);font-size:1.05rem;max-width:680px;line-height:1.7}.content-wrap{padding:5rem 3rem}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.content-card{display:flex;flex-direction:column;text-decoration:none;color:#1a2328;border:1px solid rgba(61,90,107,.16);padding:1.6rem;min-height:230px;background:#fff;transition:.3s}.content-card:hover{transform:translateY(-4px);border-color:#c9943a}.content-card h2,.content-card h3{font-family:'Playfair Display',serif;margin:.7rem 0}.card-kicker{font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:#c9943a}.card-date{margin-top:auto;padding-top:1.2rem;color:#5e7f8e;font-size:.78rem}.fonyod-tip-card{padding:1.5rem;border:1px solid rgba(61,90,107,.14);margin:1rem 0;background:#faf8f4}.fonyod-tip-card h3{font-family:'Playfair Display',serif}.tip-badge{display:inline-block!important;margin:.4rem 0!important}.event-meta{display:flex;gap:1rem;flex-wrap:wrap;margin:1.5rem 0}.event-meta span{background:#f2ece3;padding:.6rem .9rem}.article-body{max-width:820px;margin:auto;padding:5rem 3rem;font-size:1.05rem;line-height:1.85}.article-body h2,.article-body h3{font-family:'Playfair Display',serif;color:#1a2328;margin:2.5rem 0 1rem}.site-footer-dynamic{background:#1a2328;color:#fff;padding:3rem}.site-footer-dynamic-inner{max-width:1100px;margin:auto;display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}.site-footer-dynamic a{color:#c4a882;text-decoration:none;margin-right:1rem}@media(max-width:900px){.cards-grid{grid-template-columns:1fr}.editor-content,.content-wrap,.article-body{padding:3rem 1.5rem}.content-hero{padding:9rem 1.5rem 4rem}.wp-block-gallery{grid-template-columns:1fr}.wp-block-gallery img{height:auto}}
.apt-link::before{content:'🐾 Kutyabarát';display:inline-block;margin-right:.65rem;padding:.22rem .55rem;background:#c9943a;color:#1a2328;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500}

/* 2.0.2 — olvashatóság, Gutenberg-tipográfia és biztos gyorsítótár-frissítés */
.site-nav-dynamic{background:#1a2328!important;border-bottom:1px solid rgba(255,255,255,.1)!important}
.site-nav-dynamic .nav-logo-text .nlt-main{color:#fff!important;text-shadow:none!important}
.site-nav-dynamic .nav-logo-text .nlt-sub{color:#c4a882!important;text-shadow:none!important}
.site-nav-dynamic .nav-logo img{filter:drop-shadow(0 0 5px rgba(0,0,0,.45))!important}
.site-nav-dynamic .nav-back,.site-nav-dynamic .nav-langs a{color:#fff!important;border-color:rgba(255,255,255,.35)!important}
.site-nav-dynamic .nav-back:hover,.site-nav-dynamic .nav-langs a:hover{color:#c9943a!important;border-color:#c9943a!important}
.event-meta span{background:#f2ece3;color:#1a2328;border:1px solid rgba(196,168,130,.55);font-weight:500;line-height:1.4}
.article-body{color:#263740;background:#fff}
.article-body p,.editor-content p{margin:0 0 1.35rem;line-height:1.85}
.article-body h2,.editor-content h2{margin:2.8rem 0 1.15rem;line-height:1.2}
.article-body h3,.editor-content h3{margin:2.1rem 0 .85rem;line-height:1.3}
.article-body h2:first-child,.editor-content h2:first-child{margin-top:0}
.article-body ul,.article-body ol,.editor-content ul,.editor-content ol{margin:0 0 1.5rem 1.4rem;padding:0}
.article-body li,.editor-content li{margin:.45rem 0;line-height:1.7}
.article-body blockquote,.editor-content blockquote{margin:2rem 0;padding:1.1rem 1.4rem;border-left:4px solid #c9943a;background:#f2ece3;color:#263740}
.article-body a:not(.btn-primary),.editor-content a{color:#315f75;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.article-body a:not(.btn-primary):hover,.editor-content a:hover{color:#9b681b}
.article-body .btn-primary{margin-top:1rem;color:#1a2328!important;text-decoration:none;font-weight:500}
.wp-block-image{margin:2rem 0}.wp-element-caption{margin:.55rem 0 0;color:#5b707a;font-size:.78rem;line-height:1.5}
.content-card p{margin:0 0 1rem;color:#3d515b;line-height:1.65}.content-card .card-date{color:#476f80}
.content-hero p{color:rgba(255,255,255,.84)}
.card-kicker,.latest-card-type{color:#845711!important;font-weight:500}
.fonyod-tip-card p{margin:.55rem 0 0;line-height:1.7;color:#3d515b}
.article-body hr,.editor-content hr{margin:2.5rem 0;border:0;border-top:1px solid rgba(61,90,107,.2)}
.article-body table,.editor-content table{width:100%;margin:1.5rem 0;border-collapse:collapse;color:#263740}
.article-body th,.article-body td,.editor-content th,.editor-content td{padding:.8rem;border:1px solid rgba(61,90,107,.2);text-align:left}
.article-body th,.editor-content th{background:#f2ece3;color:#1a2328}
.site-footer-dynamic p{margin:.65rem 0 0;color:rgba(255,255,255,.7);line-height:1.6}
@media(max-width:680px){.site-nav-dynamic{padding:.75rem 1rem}.site-nav-dynamic .nav-back{display:none}.site-nav-dynamic .nav-langs a{padding:.3rem .55rem}.event-meta{flex-direction:column;align-items:flex-start}.event-meta span{width:100%}}

/* 3.0 — programnaptár, térkép, szállásajánló és egységes kapcsolatűrlap */
[hidden]{display:none!important}
.section-kicker{display:block;margin-bottom:.7rem;color:#845711;font-size:.66rem;font-weight:500;letter-spacing:.24em;text-transform:uppercase}

/* Ajánlatkérő */
.apartment-contact{max-width:1180px;margin:0 auto;padding:7rem 3rem;display:grid;grid-template-columns:.8fr 1.2fr;gap:6rem;align-items:start;background:#faf8f4}
.apartment-contact-intro{position:sticky;top:8rem}
.apartment-contact-intro h2{font-family:'Playfair Display',serif;font-size:clamp(2.3rem,4vw,4rem);line-height:1.06;color:#1a2328;margin:.5rem 0 1.5rem}
.apartment-contact-intro>p{color:#4a5a62;line-height:1.8;margin-bottom:2rem}
.contact-promises{display:grid;gap:.8rem;color:#315267;font-size:.86rem}
.inquiry-form-wrap{min-width:0}
.fony-inquiry-form{display:grid;gap:1.1rem}
.fony-inquiry-form .cf-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.fony-inquiry-form .cf-row-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.fony-inquiry-form .cf-group{display:flex;flex-direction:column;gap:.4rem}
.fony-inquiry-form .cf-group label{font-size:.64rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:#5e7f8e}
.fony-inquiry-form .cf-group label span{color:#9b681b}
.fony-inquiry-form input:not([type=checkbox]),.fony-inquiry-form select,.fony-inquiry-form textarea{width:100%;border:1px solid rgba(61,90,107,.24);border-radius:0;background:#fff;padding:.85rem .9rem;font:inherit;font-size:.92rem;color:#1a2328;outline:none;transition:border-color .2s,box-shadow .2s;-webkit-appearance:auto}
.fony-inquiry-form input:focus,.fony-inquiry-form select:focus,.fony-inquiry-form textarea:focus{border-color:#c9943a;box-shadow:0 0 0 3px rgba(201,148,58,.12)}
.fony-inquiry-form textarea{min-height:130px;resize:vertical}
.fony-inquiry-form .btn-send{display:inline-flex;border:0;background:#1a2328;color:#fff;padding:1rem 2.2rem;font:inherit;font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .2s,transform .2s}
.fony-inquiry-form .btn-send:hover{background:#3d5a6b;transform:translateY(-2px)}
.fony-inquiry-form .btn-send:disabled{opacity:.6;cursor:wait;transform:none}
.privacy-check{display:flex;align-items:flex-start;gap:.7rem;color:#4a5a62;font-size:.75rem;line-height:1.55;cursor:pointer}
.privacy-check input{margin-top:.18rem;accent-color:#c9943a}
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.inquiry-context{margin:0;padding:.75rem 1rem;border-left:3px solid #c9943a;background:#f2ece3;color:#314956;font-size:.84rem}
.form-status{min-height:1.2rem;margin:.8rem 0 0;color:#9a3d30;font-size:.82rem}
.form-ok{padding:2rem;background:#f2ece3;border-left:4px solid #c9943a;color:#263740}
.form-ok:not([hidden]){display:block}
.form-ok h3{font-family:'Playfair Display',serif;font-size:1.7rem;color:#1a2328;margin:0 0 .5rem}
.form-ok p{margin:0;line-height:1.6}

/* Programgyűjtő */
.program-hub-hero{position:relative;overflow:hidden}
.program-hub-hero:after{content:'08';position:absolute;right:3vw;bottom:-4rem;font-family:'Playfair Display',serif;font-size:clamp(9rem,22vw,24rem);font-weight:900;line-height:1;color:rgba(255,255,255,.035);pointer-events:none}
.program-hub-wrap{max-width:1180px}
.featured-program{display:grid;grid-template-columns:1.15fr .85fr;min-height:410px;margin-bottom:6rem;background:#1a2328;color:#fff;box-shadow:0 24px 60px -38px rgba(26,35,40,.8)}
.featured-program-copy{padding:clamp(2rem,5vw,4.5rem);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.featured-program-copy .section-kicker{color:#c4a882}
.featured-program-copy h2{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,4vw,4rem);line-height:1.05;margin:0 0 1.2rem}
.featured-program-copy h2 a{color:#fff;text-decoration:none}
.featured-program-copy>p{color:rgba(255,255,255,.72);line-height:1.75;margin:0 0 1.5rem}
.featured-program-meta{display:flex;flex-wrap:wrap;gap:.7rem 1.2rem;margin-bottom:2rem;color:#f2ece3;font-size:.8rem}
.featured-program-visual{position:relative;display:flex;align-items:flex-end;justify-content:flex-end;min-height:320px;padding:2rem;background:linear-gradient(145deg,#5e7f8e,#c4a882);background-size:cover;background-position:center;text-decoration:none;overflow:hidden}
.featured-program-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(26,35,40,.45))}
.featured-program-visual span{position:relative;z-index:1;font-family:'Playfair Display',serif;font-size:clamp(2.4rem,6vw,5.5rem);font-weight:900;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.25)}

.program-calendar-section{margin-bottom:6rem;padding:clamp(1.4rem,3vw,2.5rem);border:1px solid rgba(61,90,107,.16);background:#fff;box-shadow:0 24px 70px -55px rgba(26,35,40,.75)}
.program-calendar-header{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.program-calendar-header h2{font-family:'Playfair Display',serif;font-size:clamp(2.1rem,4vw,3.7rem);line-height:1;color:#1a2328;margin:0}
.calendar-nav{display:flex;align-items:center;gap:.5rem}
.calendar-nav a,.calendar-nav button{display:grid;place-items:center;min-width:42px;height:42px;border:1px solid rgba(61,90,107,.22);background:#fff;color:#1a2328;text-decoration:none;font:inherit;font-size:.75rem;cursor:pointer;padding:0 .8rem;transition:.2s}
.calendar-nav a:hover,.calendar-nav button:hover{border-color:#c9943a;color:#845711}
.program-calendar-weekdays,.program-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}
.program-calendar-weekdays{margin-bottom:.45rem}
.program-calendar-weekdays span{padding:.55rem;text-align:center;color:#6b7f88;font-size:.62rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase}
.program-calendar-day,.program-calendar-blank{min-height:76px}
.program-calendar-day{position:relative;display:flex;align-items:flex-start;justify-content:space-between;border:1px solid rgba(61,90,107,.13);background:#faf8f4;padding:.7rem;color:#3d5a6b;font:inherit;cursor:default;transition:.2s}
.program-calendar-day.has-events{background:#f2ece3;border-color:rgba(201,148,58,.32);color:#1a2328;cursor:pointer}
.program-calendar-day.has-events:hover,.program-calendar-day.is-selected{transform:translateY(-2px);background:#1a2328;border-color:#1a2328;color:#fff;box-shadow:0 10px 24px -18px rgba(26,35,40,.9)}
.program-calendar-day.is-today{box-shadow:inset 0 0 0 2px #c9943a}
.calendar-day-number{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700}
.calendar-event-count{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#c9943a;color:#1a2328;font-size:.68rem;font-weight:700}
.program-calendar-day.is-selected .calendar-event-count{background:#fff}

.program-results{scroll-margin-top:7rem;margin-bottom:5rem}
.program-results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.program-results-head h2{font-family:'Playfair Display',serif;font-size:clamp(2rem,4vw,3.4rem);line-height:1.1;color:#1a2328;margin:0}
.program-type-filters{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.45rem}
.program-type-filters button{border:1px solid rgba(61,90,107,.2);background:#fff;padding:.55rem .8rem;color:#3d5a6b;font:inherit;font-size:.67rem;cursor:pointer}
.program-type-filters button:hover,.program-type-filters button.is-active{border-color:#1a2328;background:#1a2328;color:#fff}
.program-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.program-card{display:flex;flex-direction:column;min-width:0;border:1px solid rgba(61,90,107,.15);background:#fff;transition:transform .25s,border-color .25s,box-shadow .25s}
.program-card:hover{transform:translateY(-4px);border-color:#c9943a;box-shadow:0 18px 35px -28px rgba(26,35,40,.8)}
.program-card-image{display:block;min-height:190px;background-size:cover;background-position:center}
.program-card-body{display:flex;flex:1;flex-direction:column;padding:1.5rem}
.program-card h3{font-family:'Playfair Display',serif;font-size:1.55rem;line-height:1.15;margin:.6rem 0 .8rem}
.program-card h3 a{color:#1a2328;text-decoration:none}
.program-card p{color:#475c66;line-height:1.65;margin:0 0 1.2rem}
.program-card-details{display:grid;gap:.45rem;margin-top:auto;padding-top:.7rem;color:#405e6c;font-size:.74rem;line-height:1.45}
.program-card-link{margin-top:1.2rem;color:#845711;font-size:.72rem;font-weight:500;text-decoration:none}
.program-empty{padding:3rem;border:1px dashed rgba(61,90,107,.25);text-align:center;color:#526872}
.program-empty h3{font-family:'Playfair Display',serif;font-size:1.7rem;color:#1a2328;margin:0 0 .5rem}
.program-tips-content{padding-left:0;padding-right:0}

/* Egyedi programoldal */
.single-program-hero{background-size:cover;background-position:center}
.event-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.btn-secondary{display:inline-flex;align-items:center;padding:.8rem 1.35rem;border:1px solid #3d5a6b;color:#315f75;text-decoration:none;font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.event-map-section{max-width:1180px;margin:0 auto;padding:0 3rem 6rem;display:grid;grid-template-columns:.65fr 1.35fr;gap:3rem;align-items:center}
.event-map-copy h2{font-family:'Playfair Display',serif;font-size:clamp(2rem,4vw,3.3rem);line-height:1.1;color:#1a2328;margin:.5rem 0 1rem}
.event-map-copy p{color:#4a5a62;line-height:1.7;margin:0 0 1rem}
.event-map-copy a{color:#845711;text-decoration:none;font-size:.78rem;font-weight:500}
.event-map{position:relative;min-height:360px;background:linear-gradient(145deg,#dfe7e7,#f2ece3);overflow:hidden}
.event-map button{position:absolute;inset:50% auto auto 50%;z-index:2;transform:translate(-50%,-50%);border:0;background:#1a2328;color:#fff;padding:1rem 1.5rem;font:inherit;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.event-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.event-stays{padding:6rem 3rem;background:#f2ece3}
.event-stays-head{max-width:780px;margin:0 auto 2.5rem;text-align:center}
.event-stays-head h2{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,5vw,4rem);line-height:1.08;color:#1a2328;margin:.5rem 0 1rem}
.event-stays-head p{color:#4a5a62;line-height:1.7}
.stay-card-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
.stay-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(61,90,107,.14)}
.stay-card-image{position:relative;display:block;min-height:230px;background-size:cover;background-position:center;text-decoration:none}
.stay-card-image span{position:absolute;left:1rem;top:1rem;background:#c9943a;color:#1a2328;padding:.35rem .6rem;font-size:.62rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}
.stay-card-body{display:flex;flex:1;flex-direction:column;padding:1.35rem}
.stay-card h3{font-family:'Playfair Display',serif;font-size:1.8rem;margin:.5rem 0}
.stay-card h3 a{color:#1a2328;text-decoration:none}
.stay-card p{color:#526872;margin:0 0 1.2rem}
.stay-card-actions{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:auto}
.stay-card-actions a{color:#315f75;text-decoration:none;font-size:.72rem;font-weight:500}
.stay-card-actions .stay-inquiry{background:#1a2328;color:#fff;padding:.7rem .9rem}

@media(max-width:900px){
  .apartment-contact{grid-template-columns:1fr;gap:3rem;padding:5rem 1.5rem}.apartment-contact-intro{position:static}
  .featured-program{grid-template-columns:1fr}.featured-program-visual{min-height:260px}
  .program-results-head{align-items:flex-start;flex-direction:column}.program-type-filters{justify-content:flex-start}
  .program-card-grid,.stay-card-grid{grid-template-columns:1fr 1fr}
  .event-map-section{grid-template-columns:1fr;padding:0 1.5rem 5rem}
}
@media(max-width:620px){
  .fony-inquiry-form .cf-row,.fony-inquiry-form .cf-row-three{grid-template-columns:1fr}
  .program-calendar-section{margin-left:-.5rem;margin-right:-.5rem;padding:1rem}.program-calendar-header{align-items:flex-start;flex-direction:column;gap:1rem}.program-calendar-day,.program-calendar-blank{min-height:52px}.program-calendar-day{padding:.45rem}.calendar-day-number{font-size:.9rem}.calendar-event-count{width:18px;height:18px;font-size:.58rem}
  .program-card-grid,.stay-card-grid{grid-template-columns:1fr}.program-hub-wrap{padding-left:1rem;padding-right:1rem}.featured-program{margin-left:-1rem;margin-right:-1rem}
  .event-stays{padding:4rem 1rem}.event-map{min-height:300px}
}
/* ─────────────────────────────────────────────────────────────
   4.0 · brand, navigation and local guide
───────────────────────────────────────────────────────────── */
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:9999;background:#fff;color:#1a2328;padding:.8rem 1rem}.skip-link:focus{top:1rem}
.site-nav-dynamic{min-height:70px;gap:1.5rem}.site-nav-dynamic .nav-primary{display:flex;align-items:center;gap:1.35rem;margin-left:auto}.site-nav-dynamic .nav-primary a{text-decoration:none;color:var(--slate);font-size:.69rem;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.site-nav-dynamic .nav-primary a:hover{color:var(--gold)}
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.guide-hub{background:var(--white)}
.guide-hero{position:relative;min-height:600px;display:flex;align-items:flex-end;overflow:hidden;background:linear-gradient(135deg,#152026 0%,#2e4a59 62%,#5e7f8e 100%);color:#fff;padding:10rem 3rem 6rem}
.guide-hero:after{content:"";position:absolute;left:-8%;right:-8%;bottom:-125px;height:230px;border-radius:50%;background:var(--white);transform:rotate(-2deg)}
.guide-hero-pattern{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(120deg,transparent 0 48%,rgba(201,148,58,.25) 48% 48.25%,transparent 48.25%),radial-gradient(circle at 78% 22%,rgba(201,148,58,.85) 0 55px,transparent 56px),repeating-radial-gradient(ellipse at 80% 100%,transparent 0 32px,rgba(255,255,255,.16) 33px 34px,transparent 35px 68px)}
.guide-hero-inner{position:relative;z-index:1;width:min(1180px,100%);margin:0 auto}
.guide-hero .eyebrow{color:var(--sand);margin-bottom:1.2rem}
.guide-hero h1{font-family:'Playfair Display',serif;font-size:clamp(4rem,9vw,8rem);font-weight:900;line-height:.78;letter-spacing:-.045em;max-width:900px}.guide-hero h1 em{display:block;color:var(--sand);font-weight:400;margin-left:8%;margin-top:.12em}
.guide-lead{max-width:680px;font-size:1.08rem;line-height:1.8;color:rgba(255,255,255,.74);margin:2.7rem 0 2rem}
.guide-stats{display:flex;gap:2rem;flex-wrap:wrap}.guide-stats span{font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.55)}.guide-stats strong{font-family:'Playfair Display',serif;font-size:1.45rem;color:#fff;margin-right:.35rem;letter-spacing:0}

.guide-toolbar{position:sticky;top:70px;z-index:30;max-width:1240px;margin:-1rem auto 0;padding:1.1rem 1.2rem;background:rgba(250,248,244,.96);backdrop-filter:blur(18px);border:1px solid rgba(61,90,107,.13);box-shadow:0 18px 45px rgba(26,35,40,.08);display:grid;grid-template-columns:270px 1fr;gap:1rem;align-items:center}
.guide-search{height:46px;border:1px solid rgba(61,90,107,.2);display:flex;align-items:center;gap:.55rem;padding:0 .85rem;background:#fff}.guide-search span{font-size:1.5rem;color:var(--gold)}.guide-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:400 .82rem 'DM Sans',sans-serif}
.guide-filters{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.guide-filters button{border:1px solid rgba(61,90,107,.15);background:transparent;color:var(--slate);padding:.67rem .8rem;font:500 .63rem 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:.2s}.guide-filters button span{margin-right:.35rem}.guide-filters button:hover,.guide-filters button.is-active{background:var(--ink);border-color:var(--ink);color:#fff}

.guide-intro{width:min(1180px,calc(100% - 6rem));margin:7rem auto 4rem;display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:end}.guide-intro h2{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,5vw,4.3rem);line-height:.95;margin-top:1rem}.guide-intro h2 em{color:var(--gold);font-weight:400}.guide-intro p{font-size:1rem;line-height:1.85;color:var(--slate);max-width:590px}.guide-intro p+p{margin-top:1rem}

.guide-grid{width:min(1240px,calc(100% - 6rem));margin:0 auto 8rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:start}
.guide-card{--card-accent:#5e7f8e;background:#fff;border:1px solid rgba(61,90,107,.12);box-shadow:0 15px 42px rgba(26,35,40,.055);transition:transform .3s,box-shadow .3s,border-color .3s;min-width:0}.guide-card:hover{transform:translateY(-6px);box-shadow:0 24px 58px rgba(26,35,40,.12);border-color:color-mix(in srgb,var(--card-accent) 55%,transparent)}.guide-card[hidden]{display:none}
.guide-card-strand{--card-accent:#4b91aa}.guide-card-termalfurdo{--card-accent:#b87957}.guide-card-etterem{--card-accent:#9b615a}.guide-card-kavezo{--card-accent:#9b724e}.guide-card-pekseg{--card-accent:#bd8c46}.guide-card-fagyizo{--card-accent:#b66d83}.guide-card-kirandulas{--card-accent:#587a62}.guide-card-aktiv-program{--card-accent:#397c83}.guide-card-szallas{--card-accent:#75669b}.guide-card-bevasarlas{--card-accent:#7e8450}
.guide-card-featured{grid-column:span 1}.guide-card-visual{height:210px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;text-decoration:none;background-image:linear-gradient(145deg,color-mix(in srgb,var(--card-accent) 84%,#1a2328),color-mix(in srgb,var(--card-accent) 35%,#f2ece3));background-size:cover;background-position:center}.guide-card-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s}.guide-card:hover .guide-card-photo{transform:scale(1.045)}.guide-card-visual:after{content:"";position:absolute;z-index:1;inset:0;background:repeating-radial-gradient(ellipse at 50% 120%,transparent 0 27px,rgba(255,255,255,.11) 28px 29px,transparent 30px 56px)}.guide-card-has-image:after{background:linear-gradient(180deg,rgba(26,35,40,.04),rgba(26,35,40,.52))}.guide-card-icon{position:relative;z-index:2;font-size:4.2rem;filter:drop-shadow(0 8px 18px rgba(0,0,0,.2));transition:transform .35s}.guide-card-has-image .guide-card-icon{position:absolute;left:1rem;bottom:1rem;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(250,248,244,.92);font-size:1.35rem;filter:none;box-shadow:0 8px 24px rgba(0,0,0,.2)}.guide-card:hover .guide-card-icon{transform:scale(1.08) rotate(-3deg)}.guide-card-number{position:absolute;z-index:2;right:1rem;top:.75rem;font:700 2.1rem 'Playfair Display',serif;color:rgba(255,255,255,.42);text-shadow:0 1px 12px rgba(0,0,0,.24)}
.guide-card-body{padding:1.45rem 1.45rem 1.25rem}.guide-card-top{display:flex;gap:.65rem;align-items:flex-start;justify-content:space-between;min-height:26px}.guide-card-type{font-size:.59rem;letter-spacing:.16em;text-transform:uppercase;color:var(--card-accent);font-weight:500}.guide-card-badge{font-size:.56rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);background:color-mix(in srgb,var(--card-accent) 18%,#fff);padding:.3rem .45rem;text-align:right}
.guide-card h2{font-family:'Playfair Display',serif;font-size:1.48rem;line-height:1.08;margin:.7rem 0}.guide-card h2 a{text-decoration:none;color:var(--ink)}.guide-card-body>p{font-size:.84rem;line-height:1.65;color:var(--slate);min-height:68px}
.guide-card-facts{margin:1rem 0;border-top:1px solid rgba(61,90,107,.1);padding-top:.8rem}.guide-card-facts div{display:grid;grid-template-columns:20px 1fr;gap:.4rem;font-size:.7rem;color:#657982;line-height:1.45}.guide-card-facts div+div{margin-top:.35rem}.guide-card-facts dt{opacity:.72}.guide-card-facts dd{margin:0}
.guide-card-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.guide-card-actions a{text-decoration:none}.guide-route{background:var(--ink);color:#fff;padding:.65rem .75rem;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.guide-route:hover{background:var(--card-accent)}.guide-more{font-size:.66rem;color:var(--slate);margin-left:auto}.guide-more:hover{color:var(--gold)}.guide-site{width:31px;height:31px;border:1px solid rgba(61,90,107,.18);display:grid;place-items:center;color:var(--slate)}
.guide-empty{text-align:center;padding:7rem 2rem}.guide-empty span{font-size:4rem;color:var(--gold)}.guide-empty h2{font:700 2rem 'Playfair Display',serif;margin:.7rem 0}.guide-empty p{color:var(--slate)}
.guide-footer-cta{background:var(--ink);color:#fff;padding:7rem max(3rem,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;position:relative;overflow:hidden}.guide-footer-cta:after{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(201,148,58,.14);border-radius:50%;right:-120px;top:-210px;box-shadow:0 0 0 70px rgba(201,148,58,.035),0 0 0 140px rgba(201,148,58,.025)}.guide-footer-cta h2{font:700 clamp(2.3rem,4vw,4rem)/1 'Playfair Display',serif;margin-top:1rem}.guide-footer-cta h2 em{color:var(--sand);font-weight:400}.guide-footer-cta p{color:rgba(255,255,255,.66);line-height:1.8;margin-bottom:1.6rem;max-width:530px}.guide-footer-cta>div{position:relative;z-index:1}

.place-single .content-hero{min-height:460px}.place-single-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:4rem}.place-panel{background:var(--cream);padding:1.6rem;position:sticky;top:100px}.place-panel dl div{padding:.8rem 0;border-bottom:1px solid rgba(61,90,107,.14)}.place-panel dt{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--mist);margin-bottom:.3rem}.place-panel dd{margin:0;color:var(--ink);line-height:1.5}.place-panel .btn-primary{margin-top:1.2rem;width:100%;justify-content:center}.place-panel .btn-ghost{margin-top:.65rem;color:var(--ink);border-color:rgba(61,90,107,.25);width:100%;justify-content:center}

@media(max-width:1050px){.site-nav-dynamic .nav-primary{display:none}.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-toolbar{grid-template-columns:1fr;top:66px}.guide-intro{gap:3rem}.place-single-grid{gap:2.5rem}}
@media(max-width:700px){.guide-hero{min-height:520px;padding:8rem 1.35rem 5.5rem}.guide-hero h1{font-size:clamp(3.4rem,17vw,5.5rem)}.guide-hero h1 em{margin-left:0}.guide-lead{font-size:.93rem}.guide-stats{gap:.8rem 1.3rem}.guide-toolbar{position:relative;top:auto;margin:-.5rem 1rem 0}.guide-intro{width:auto;margin:5rem 1.35rem 3rem;grid-template-columns:1fr;gap:2rem}.guide-grid{width:auto;margin:0 1rem 5rem;grid-template-columns:1fr}.guide-card-visual{height:185px}.guide-card-body>p{min-height:0}.guide-footer-cta{padding:5rem 1.35rem;grid-template-columns:1fr;gap:2rem}.place-single-grid{grid-template-columns:1fr}.place-panel{position:static}.site-nav-dynamic{padding:.75rem 1rem}.site-nav-dynamic .nav-logo-text{display:none}.site-nav-dynamic .nav-langs{margin-left:auto}}

/* A főoldal 4.0-ban tudatosan rövidebb, a mobil fejléc pedig nem csúszik össze. */
@media(max-width:680px){body.home .hero{height:auto;min-height:560px;clip-path:polygon(0 0,100% 0,100% 94%,0 100%)}body.home .hero-body{padding:0 1.35rem 4.8rem;display:flex;align-items:flex-end}body.home .hero-right{display:none}body.home .hero-kicker{margin-bottom:.8rem}body.home .hero-h1{font-size:clamp(3.4rem,18vw,5.4rem);margin-bottom:1.25rem}body.home nav{gap:.7rem}body.home .nav-logo-text{display:none}}

.program-guide-bridge{margin:7rem 0 2rem;padding:4.5rem;background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;position:relative;overflow:hidden}.program-guide-bridge:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(201,148,58,.16);border-radius:50%;right:-120px;bottom:-180px;box-shadow:0 0 0 55px rgba(201,148,58,.035)}.program-guide-bridge>div{position:relative;z-index:1}.program-guide-bridge h2{font:700 clamp(2rem,4vw,3.5rem)/1.02 'Playfair Display',serif;margin-top:.8rem}.program-guide-bridge h2 em{color:var(--sand);font-weight:400}.program-guide-bridge p{line-height:1.8;color:rgba(255,255,255,.68);margin-bottom:1.5rem}

.journal-hero{min-height:610px;padding:10rem 3rem 6rem;display:flex;align-items:flex-end;color:#fff;background:linear-gradient(135deg,#172229,#3d5a6b);position:relative;overflow:hidden}.journal-hero:before{content:"F";position:absolute;right:4vw;bottom:-14vw;font:900 min(42vw,620px)/.7 'Playfair Display',serif;color:rgba(255,255,255,.035)}.journal-hero:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(201,148,58,.35);border-radius:50%;right:14vw;top:8rem;box-shadow:0 0 0 48px rgba(201,148,58,.045),0 0 0 96px rgba(201,148,58,.028)}.journal-hero-inner{width:min(1180px,100%);margin:auto;position:relative;z-index:1}.journal-hero h1{font:900 clamp(4.4rem,10vw,8.5rem)/.78 'Playfair Display',serif;letter-spacing:-.04em}.journal-hero h1 em{display:block;color:var(--sand);font-weight:400;margin-left:10%}.journal-hero p:last-child{max-width:650px;color:rgba(255,255,255,.7);line-height:1.8;margin-top:2.5rem}
.journal-wrap{width:min(1180px,calc(100% - 6rem));margin:7rem auto 2rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.journal-card{display:grid;grid-template-columns:1fr;background:#fff;border:1px solid rgba(61,90,107,.12)}.journal-card-lead{grid-column:1/-1;grid-template-columns:1.15fr .85fr;min-height:430px}.journal-card-image{min-height:260px;background:center/cover no-repeat}.journal-card-copy{padding:2rem;display:flex;flex-direction:column}.journal-card-lead .journal-card-copy{padding:3.5rem}.journal-meta{display:flex;gap:.7rem;flex-wrap:wrap;color:var(--gold);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}.journal-card h2{font:700 1.8rem/1.1 'Playfair Display',serif;margin:1rem 0}.journal-card-lead h2{font-size:clamp(2.3rem,4vw,3.8rem)}.journal-card h2 a{text-decoration:none;color:var(--ink)}.journal-card p{color:var(--slate);line-height:1.75}.journal-read{margin-top:auto;padding-top:1.6rem;text-decoration:none;color:var(--gold);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.journal-empty{grid-column:1/-1;text-align:center;padding:6rem 1rem}.journal-empty span{font-size:4rem;color:var(--gold)}.journal-empty h2{font:700 2.2rem 'Playfair Display',serif;margin:1rem}.journal-empty p{color:var(--slate);max-width:650px;margin:auto;line-height:1.8}.journal-pagination{width:min(1180px,calc(100% - 6rem));margin:2rem auto 7rem}.journal-pagination .nav-links{display:flex;justify-content:center;gap:.45rem}.journal-pagination a,.journal-pagination span{padding:.65rem .85rem;border:1px solid rgba(61,90,107,.18);text-decoration:none;color:var(--slate)}.journal-pagination .current{background:var(--ink);color:#fff}
.journal-single-hero{min-height:620px;padding:12rem max(3rem,calc((100vw - 980px)/2)) 6rem;display:flex;align-items:flex-end;background-color:var(--ink);background-size:cover;background-position:center;color:#fff}.journal-single-hero>div{max-width:900px}.journal-single-hero h1{font:900 clamp(3rem,7vw,6rem)/.96 'Playfair Display',serif;margin:1rem 0 1.5rem}.journal-single-hero p:last-child{font-size:1.1rem;line-height:1.75;color:rgba(255,255,255,.72);max-width:720px}.journal-single-hero .eyebrow a{color:var(--sand)}.journal-article{font-size:1.08rem}.journal-article>p:first-of-type{font-size:1.25rem;color:var(--ink)}.journal-article-footer{margin-top:4rem;padding-top:2rem;border-top:1px solid rgba(61,90,107,.14)}.journal-article-footer a{color:var(--gold);text-decoration:none}
@media(max-width:800px){.program-guide-bridge{padding:3rem 1.5rem;grid-template-columns:1fr;gap:2rem}.journal-hero{min-height:520px;padding:9rem 1.35rem 5rem}.journal-hero h1{font-size:clamp(3.7rem,18vw,6rem)}.journal-hero h1 em{margin-left:0}.journal-wrap{width:auto;margin:4rem 1rem;grid-template-columns:1fr}.journal-card-lead{grid-column:auto;grid-template-columns:1fr}.journal-card-lead .journal-card-copy{padding:2rem}.journal-card h2,.journal-card-lead h2{font-size:2rem}.journal-single-hero{min-height:520px;padding:10rem 1.35rem 4rem}.journal-single-hero h1{font-size:clamp(2.6rem,12vw,4.5rem)}}

/* ─────────────────────────────────────────────────────────────
   4.1 · látható tartalmi háló és morzsamenü
───────────────────────────────────────────────────────────── */
.content-breadcrumbs{position:static;inset:auto;z-index:auto;min-height:0;padding:0;margin:0 0 1.35rem;display:flex;align-items:center;justify-content:flex-start;gap:.55rem;flex-wrap:wrap;background:transparent;border:0;color:rgba(255,255,255,.64);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;transition:none}.content-breadcrumbs a{color:rgba(255,255,255,.82);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.2)}.content-breadcrumbs a:hover{color:var(--sand);border-color:var(--sand)}.content-breadcrumbs>span[aria-current]{max-width:min(480px,70vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dynamic-hero .content-breadcrumbs{margin-bottom:1rem}

.content-discovery{padding:6.5rem max(3rem,calc((100vw - 1180px)/2));background:var(--cream)}.content-discovery-head{max-width:760px;margin-bottom:2.5rem}.content-discovery-head h2{font:700 clamp(2.35rem,5vw,4.25rem)/1.02 'Playfair Display',serif;margin:.7rem 0 1rem;color:var(--ink)}.content-discovery-head p{max-width:690px;color:var(--slate);line-height:1.8}.discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.discovery-card{position:relative;isolation:isolate;min-height:270px;display:flex;flex-direction:column;padding:1.8rem;background:var(--white);border:1px solid rgba(61,90,107,.14);color:var(--ink);text-decoration:none;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}.discovery-card:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 22px 50px rgba(26,35,40,.1)}.discovery-card>span{font-size:.6rem;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);font-weight:500}.discovery-card h3{font:700 1.75rem/1.08 'Playfair Display',serif;margin:.8rem 0;color:inherit}.discovery-card p{font-size:.84rem;line-height:1.7;color:var(--slate)}.discovery-card b{margin-top:auto;padding-top:1.4rem;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-weight:500}.discovery-card-image{background-image:linear-gradient(150deg,rgba(26,35,40,.95),rgba(26,35,40,.52)),var(--discovery-image,linear-gradient(140deg,#3d5a6b,#8faab5));background-size:cover;background-position:center;color:#fff}.discovery-card-image p{color:rgba(255,255,255,.73)}.content-discovery-all{margin-top:1.8rem;text-align:right}.content-discovery-all a{color:var(--gold);text-decoration:none;font-size:.7rem;letter-spacing:.09em;text-transform:uppercase}
.content-discovery-dark{background:var(--ink);color:#fff}.content-discovery-dark .content-discovery-head h2{color:#fff}.content-discovery-dark .content-discovery-head p{color:rgba(255,255,255,.68)}.content-discovery-dark .discovery-card{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.13);color:#fff}.content-discovery-dark .discovery-card p{color:rgba(255,255,255,.66)}.content-discovery-dark .discovery-card:hover{border-color:var(--gold);box-shadow:0 22px 50px rgba(0,0,0,.2)}
@media(max-width:850px){.content-discovery{padding:4.5rem 1.35rem}.discovery-grid{grid-template-columns:1fr}.discovery-card{min-height:230px}.content-breadcrumbs{font-size:.56rem}.content-breadcrumbs>span[aria-current]{max-width:55vw}}

/* ─────────────────────────────────────────────────────────────
   4.2 · Booking-elérhetőség és közvetlen ajánlatkérés
───────────────────────────────────────────────────────────── */
.availability-section{padding:7rem max(3rem,calc((100vw - 1180px)/2));background:linear-gradient(145deg,#1a2328,#304c5b);color:#fff;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:5rem;align-items:start}.availability-intro{padding-top:1.5rem}.availability-intro h2{font:700 clamp(3rem,6vw,5rem)/.95 'Playfair Display',serif;margin:.8rem 0 1.5rem}.availability-intro h2 em{color:var(--sand);font-weight:400}.availability-intro>p{color:rgba(255,255,255,.7);line-height:1.85;max-width:520px}.availability-legend{display:flex;gap:1rem 1.5rem;flex-wrap:wrap;margin-top:2rem;font-size:.7rem;color:rgba(255,255,255,.75)}.availability-legend span{display:flex;align-items:center;gap:.5rem}.availability-legend i{width:14px;height:14px;border:1px solid rgba(255,255,255,.35);display:inline-block}.availability-legend .is-free{background:#fff}.availability-legend .is-busy{background:repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 3px,rgba(255,255,255,.24) 3px 5px)}.availability-legend .is-selected{background:var(--gold);border-color:var(--gold)}
.availability-calendar-shell{background:var(--white);color:var(--ink);padding:2.1rem;box-shadow:0 25px 70px rgba(0,0,0,.25)}.availability-calendar-head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;text-align:center;margin-bottom:1.3rem}.availability-calendar-head strong{font:700 1.55rem 'Playfair Display',serif;text-transform:capitalize}.calendar-nav{width:42px;height:42px;border:1px solid rgba(61,90,107,.18);background:transparent;color:var(--ink);cursor:pointer;font-size:1rem}.calendar-nav:hover:not(:disabled){background:var(--gold);border-color:var(--gold)}.calendar-nav:disabled{opacity:.25;cursor:not-allowed}.availability-weekdays,.availability-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.availability-weekdays{font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mist);text-align:center;margin-bottom:5px}.availability-weekdays span{padding:.5rem .2rem}.calendar-empty{min-height:48px}.calendar-day{position:relative;min-height:48px;border:1px solid rgba(61,90,107,.13);background:#fff;color:var(--ink);font:500 .78rem 'DM Sans',sans-serif;cursor:pointer;transition:.18s}.calendar-day:hover:not(:disabled){border-color:var(--gold);transform:translateY(-1px)}.calendar-day.is-busy{color:#8d969b;background:repeating-linear-gradient(135deg,#f0f0ed 0 5px,#e3e4e1 5px 7px)}.calendar-day.is-past{opacity:.3;cursor:not-allowed}.calendar-day.is-range{background:#ead9bc;border-color:#d8b477}.calendar-day.is-arrival,.calendar-day.is-departure{background:var(--gold);border-color:var(--gold);color:var(--ink);font-weight:700}.calendar-day.is-arrival:after,.calendar-day.is-departure:after{position:absolute;left:50%;transform:translateX(-50%);bottom:2px;font-size:.43rem;text-transform:uppercase;letter-spacing:.06em}.calendar-day.is-arrival:after{content:'érk.'}.calendar-day.is-departure:after{content:'táv.'}.availability-selection{display:grid;grid-template-columns:1fr 1fr auto;gap:1rem;align-items:end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(61,90,107,.14)}.availability-selection>div span{display:block;font-size:.55rem;letter-spacing:.13em;text-transform:uppercase;color:var(--mist);margin-bottom:.35rem}.availability-selection>div strong{font-size:.83rem}.availability-selection .btn-primary{border:0;cursor:pointer;min-height:46px}.availability-selection .btn-primary:disabled{opacity:.35;cursor:not-allowed}.availability-message{margin:.9rem 0 0;font-size:.76rem;line-height:1.55;color:var(--slate)}.availability-message[data-state="success"]{color:#247348}.availability-message[data-state="error"]{color:#a13232}.availability-updated{margin:1rem 0 0;font-size:.61rem;color:#738690;line-height:1.5}.availability-pending{background:#fff;color:var(--ink);padding:2.5rem}.availability-pending p{margin:.6rem 0 1.5rem;color:var(--slate)}

.availability-finder{padding:7rem 3rem;background:linear-gradient(145deg,#22333c,#3d5a6b);color:#fff}.availability-finder-inner{max-width:1180px;margin:auto}.availability-finder-copy{display:grid;grid-template-columns:.45fr 1fr;gap:2rem 5rem;align-items:start}.availability-finder-copy .section-kicker{padding-top:.8rem}.availability-finder-copy h2{font:700 clamp(2.8rem,6vw,5.1rem)/.98 'Playfair Display',serif}.availability-finder-copy h2 em{color:var(--sand);font-weight:400}.availability-finder-copy p{grid-column:2;color:rgba(255,255,255,.7);line-height:1.8;max-width:680px}.availability-search{display:grid;grid-template-columns:1fr 1fr .55fr auto;gap:8px;align-items:end;margin-top:3rem;background:rgba(255,255,255,.07);padding:1rem}.availability-search>div{background:#fff;padding:.7rem 1rem}.availability-search label{display:block;color:var(--mist);font-size:.55rem;letter-spacing:.13em;text-transform:uppercase;margin-bottom:.4rem}.availability-search input{width:100%;border:0;background:transparent;color:var(--ink);font:500 .9rem 'DM Sans',sans-serif;min-height:28px}.availability-search .btn-primary{border:0;min-height:66px;cursor:pointer;padding-inline:1.5rem}.availability-finder-note{font-size:.68rem;color:rgba(255,255,255,.67);margin-top:1rem}.availability-results{scroll-margin-top:90px;margin-top:5rem;padding-top:3rem;border-top:1px solid rgba(255,255,255,.15)}.availability-results-head h3{font:700 clamp(2rem,4vw,3.2rem)/1.05 'Playfair Display',serif;margin:.7rem 0 2rem}.availability-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.availability-result-card{background:var(--white);color:var(--ink);display:flex;flex-direction:column;min-height:440px}.availability-result-image{height:220px;background:center/cover no-repeat;display:flex;align-items:flex-start;padding:1rem;text-decoration:none}.availability-result-image span{background:var(--gold);color:var(--ink);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;padding:.35rem .65rem}.availability-result-body{padding:1.5rem;display:flex;flex:1;flex-direction:column}.availability-result-body h3{font:700 1.8rem/1.05 'Playfair Display',serif;margin:.7rem 0}.availability-result-body h3 a{color:var(--ink);text-decoration:none}.availability-result-status{font-size:.76rem;line-height:1.55;color:#247348}.availability-result-actions{display:flex;gap:.6rem;margin-top:auto;padding-top:1.4rem}.availability-result-actions a{flex:1;text-align:center;padding:.75rem .7rem;border:1px solid rgba(61,90,107,.2);color:var(--ink);text-decoration:none;font-size:.63rem;letter-spacing:.08em;text-transform:uppercase}.availability-result-actions .result-inquiry{background:var(--gold);border-color:var(--gold)}.availability-no-result{background:rgba(255,255,255,.07);padding:2.5rem}.availability-no-result h3{font:700 2rem 'Playfair Display',serif}.availability-no-result p{margin:.8rem 0 1.5rem;color:rgba(255,255,255,.7)}

.inquiry-availability-state{min-height:1.4rem;margin:-.2rem 0 1rem;font-size:.75rem;line-height:1.5}.inquiry-availability-state.is-free{color:#247348}.inquiry-availability-state.is-busy{color:#a13232;background:#fff2f0;padding:.7rem .9rem}.inquiry-not-booking{font-size:.68rem;line-height:1.55;color:var(--mist);max-width:680px;margin:.9rem 0 1.2rem;padding-left:.8rem;border-left:2px solid var(--gold)}
.mobile-inquiry-bar{display:none}

/* Teljes képernyős apartmangaléria. */
.fony-lightbox-trigger{cursor:zoom-in}.fony-lightbox-trigger img{transition:transform .35s,filter .35s}.fony-lightbox-trigger:hover img{transform:scale(1.015);filter:brightness(.93)}body.fony-lightbox-open{overflow:hidden}.fony-lightbox[hidden]{display:none}.fony-lightbox{position:fixed;inset:0;z-index:3000;background:rgba(12,17,20,.97);display:grid;grid-template-columns:88px 1fr 88px;grid-template-rows:76px 1fr auto;color:#fff}.fony-lightbox-toolbar{grid-column:1/-1;display:flex;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.1)}.fony-lightbox-counter{font-size:.65rem;letter-spacing:.18em;color:rgba(255,255,255,.64)}.fony-lightbox-zoom{display:flex;gap:.35rem;margin-left:auto;margin-right:.7rem}.fony-lightbox-toolbar button,.fony-lightbox-nav{border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;cursor:pointer}.fony-lightbox-toolbar button{width:42px;height:42px;font-size:1.1rem}.fony-lightbox-toolbar button:hover,.fony-lightbox-nav:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}.fony-lightbox-stage{grid-column:2;display:flex;align-items:center;justify-content:center;overflow:auto;padding:1rem;touch-action:pan-y}.fony-lightbox-stage img{max-width:100%;max-height:calc(100vh - 150px);object-fit:contain;transition:transform .18s;transform-origin:center;user-select:none;-webkit-user-drag:none}.fony-lightbox.is-zoomed .fony-lightbox-stage{cursor:zoom-out}.fony-lightbox-nav{align-self:center;width:54px;height:70px;font-size:1.8rem}.fony-lightbox-prev{grid-column:1;grid-row:2;justify-self:center}.fony-lightbox-next{grid-column:3;grid-row:2;justify-self:center}.fony-lightbox-caption{grid-column:1/-1;padding:1rem 2rem 1.25rem;text-align:center;color:rgba(255,255,255,.72);font-size:.72rem;letter-spacing:.08em}

@media(max-width:950px){.availability-section{grid-template-columns:1fr;gap:2.5rem;padding:5rem 1.5rem}.availability-intro{max-width:650px}.availability-finder{padding:5rem 1.5rem}.availability-finder-copy{grid-template-columns:1fr;gap:1rem}.availability-finder-copy p{grid-column:auto}.availability-search{grid-template-columns:1fr 1fr}.availability-search .btn-primary{grid-column:1/-1}.availability-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){body.single-fony_apartman{padding-bottom:72px}.availability-section{padding:4.2rem 1rem}.availability-intro h2{font-size:3.1rem}.availability-calendar-shell{padding:1rem}.calendar-empty,.calendar-day{min-height:42px}.availability-selection{grid-template-columns:1fr 1fr}.availability-selection .btn-primary{grid-column:1/-1}.availability-finder{padding:4.5rem 1rem}.availability-finder-copy h2{font-size:3.1rem}.availability-search{grid-template-columns:1fr;padding:.75rem}.availability-search .btn-primary{grid-column:auto}.availability-result-grid{grid-template-columns:1fr}.availability-result-card{min-height:410px}.mobile-inquiry-bar{position:fixed;z-index:850;left:0;right:0;bottom:0;display:flex;align-items:center;gap:.45rem;background:#fff;border-top:1px solid rgba(61,90,107,.18);padding:.55rem .7rem calc(.55rem + env(safe-area-inset-bottom));box-shadow:0 -12px 35px rgba(26,35,40,.12)}.mobile-inquiry-bar>span{display:none}.mobile-inquiry-bar a{flex:1;text-align:center;text-decoration:none;font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;padding:.75rem .35rem}.mobile-phone{color:var(--ink);border:1px solid rgba(61,90,107,.2)}.mobile-inquiry{background:var(--gold);color:var(--ink)}.fony-lightbox{grid-template-columns:48px 1fr 48px;grid-template-rows:64px 1fr auto}.fony-lightbox-toolbar{padding:.65rem}.fony-lightbox-toolbar button{width:38px;height:38px}.fony-lightbox-nav{width:42px;height:58px}.fony-lightbox-stage{padding:.35rem}.fony-lightbox-stage img{max-height:calc(100vh - 125px)}.fony-lightbox-caption{padding:.7rem 1rem 1rem;font-size:.63rem}}
