:root{--bg:#f7f5ef;--surface:#fffdf8;--text:#17202a;--muted:#667085;--line:#e6e0d4;--accent:#557a46;--accent2:#a9bf04;--ink:#1d2b20;--shadow:0 24px 70px rgba(32,40,35,.12);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:130px}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(circle at top left,#eef3df,transparent 36rem),var(--bg);line-height:1.7}img{max-width:100%;display:block}a{color:inherit}.site-header{position:sticky;top:0;z-index:20;background:rgba(247,245,239,.76);backdrop-filter:blur(16px);border-bottom:1px solid rgba(230,224,212,.75);isolation:isolate}.nav{width:min(1160px,92%);margin:auto;display:flex;align-items:center;justify-content:space-between;padding:6px 0}.brand{font-weight:800;text-decoration:none;letter-spacing:.02em;color:var(--ink);display:flex;align-items:center;gap:12px}.brand img{height:100px;width:auto;display:block}.lang-switch{display:flex;gap:10px;align-items:center;font-size:.9rem}.lang-switch a{text-decoration:none;color:#405044;font-weight:800;padding:8px 10px;border-radius:999px;border:1px solid transparent}.lang-switch a[aria-current="page"]{background:var(--surface);border-color:var(--line);color:var(--ink)}.nav-links{display:flex;gap:22px;align-items:center;font-size:.94rem}.nav-links a{text-decoration:none;color:#405044;padding:8px 12px;border-radius:999px;border:1px solid transparent;transition:background .15s,border-color .15s}.nav-links a[aria-current="page"]{background:var(--surface);border-color:var(--line);color:var(--ink);font-weight:600}.nav-cta{padding:10px 16px}

/* Mobile menu */
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:10px;border:none;background:transparent;border-radius:12px;border:1px solid var(--line);background:var(--surface)}.hamburger span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:transform .25s,opacity .25s}.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu{display:none;position:relative;left:0;right:0;background:rgba(247,245,239,.98);backdrop-filter:blur(20px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 16px 16px;flex-direction:column;gap:4px;box-shadow:0 8px 32px rgba(32,40,35,.10)}.mobile-menu.open{display:flex}.mobile-menu a{text-decoration:none;color:#405044;font-weight:600;font-size:1rem;padding:12px 16px;border-radius:14px;border:1px solid transparent;transition:background .15s,border-color .15s}.mobile-menu a[aria-current="page"]{background:var(--surface);border-color:var(--line);color:var(--ink)}.mobile-menu .mobile-lang-switch{display:flex;gap:8px;padding:12px 16px}.mobile-menu .mobile-lang-switch a{font-size:.9rem;font-weight:800;padding:8px 14px;border-radius:999px;border:1px solid transparent;color:#405044}.mobile-menu .mobile-lang-switch a[aria-current="page"]{background:var(--surface);border-color:var(--line);color:var(--ink)}.mobile-menu .mobile-cta{background:var(--ink);color:white !important;border-radius:999px;text-align:center;margin-top:4px}main{overflow:hidden}.hero{width:min(1220px,94%);margin:42px auto 70px;min-height:620px;display:grid;grid-template-columns:1.05fr .95fr;background:var(--surface);border:1px solid var(--line);border-radius:36px;box-shadow:var(--shadow);overflow:hidden}.hero-image{background:linear-gradient(90deg,rgba(20,32,23,.1),rgba(20,32,23,.45)),url('assets/20260429_sarospatak_filmturisztika_0028_k.jpg') center/cover;min-height:540px}.hero-content{padding:70px clamp(28px,5vw,72px);display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--accent);font-size:.78rem;margin:0 0 12px}h1,h2,h3{line-height:1.08;color:var(--ink);margin:0 0 18px}h1{font-family:"Playfair Display",serif;font-size:clamp(3rem,6vw,6.6rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4vw,3.8rem);letter-spacing:-.04em}h3{font-size:1.35rem}.lead{font-size:clamp(1.08rem,1.7vw,1.35rem);color:#4a554d;margin:0 0 32px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;padding:14px 22px;font-weight:800}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.primary{background:var(--ink);color:white}.secondary{background:#eef2de;color:var(--ink);border:1px solid #dce5c6}.intro-grid,.feature,.speaker-block,.sections,.study-trip,.program{width:min(1120px,92%);margin:0 auto 86px}.intro-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:22px}.card,.topic-grid article,.route-card{background:rgba(255,253,248,.82);border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:0 14px 42px rgba(38,45,39,.07)}.highlight-card{background:linear-gradient(145deg,#203223,#5e7f39);color:white;display:flex;flex-direction:column;justify-content:end}.stat{font-size:clamp(4rem,9vw,7rem);line-height:.9;font-weight:900;color:#d6e85c}.feature{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.feature.reverse .image-card{order:2}.image-card,.portrait,.program-cover{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:white;border:1px solid var(--line)}.image-card img{width:100%;height:540px;object-fit:cover}.compact img{height:480px}.copy p,.card p,.speaker-block p,.section-heading p,.study-trip p,.program p{color:#4e5a53;margin-top:0}.speaker-block{display:grid;grid-template-columns:.75fr 1.25fr;gap:40px;align-items:center;background:#17251b;color:white;border-radius:34px;padding:clamp(24px,5vw,54px);box-shadow:var(--shadow)}.speaker-block h2,.speaker-block .eyebrow{color:white}.speaker-block p{color:#dbe3d8}.portrait img{height:480px;width:100%;object-fit:cover}.section-heading{max-width:760px;margin-bottom:26px}.gallery-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:24px}.gallery-pair img{height:380px;width:100%;object-fit:cover;border-radius:24px;box-shadow:0 16px 50px rgba(32,40,35,.1)}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.study-trip{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:stretch}.route-card{display:grid;place-items:center;gap:12px;background:linear-gradient(135deg,#fefdf8,#eaf0d6)}.route-card span{width:100%;padding:16px 18px;border-radius:18px;background:white;border:1px solid var(--line);font-weight:800;color:var(--accent)}.program{display:grid;grid-template-columns:1fr 300px;gap:46px;align-items:center;background:var(--surface);padding:clamp(26px,5vw,56px);border-radius:34px;border:1px solid var(--line);box-shadow:var(--shadow)}.program-cover{transition:transform .2s ease, box-shadow .2s ease}.program-cover:hover{transform:translateY(-5px);box-shadow:0 30px 90px rgba(32,40,35,.22)}footer{text-align:center;padding:38px 20px;color:#667085;border-top:1px solid var(--line)}@media (max-width:900px){.site-header{position:sticky}.nav{align-items:center}.nav-links{display:none}.lang-switch{display:none}.hamburger{display:flex}}@media (max-width:560px){body{line-height:1.62}}
.hero {
  padding: 80px 20px;
  background: #f8fafc;
}

.hero-content {
  max-width: 900px;
  margin: 0 auto;
}

.hero-full-image {
  margin: 30px 0;
}

.hero-full-image img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  display: block;
}

.hero .lead {
  font-size: 1.2rem;
  margin-bottom: 20px;
}

.hero h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2rem, 4vw, 2.8rem);
  line-height: 1.2;
  margin-bottom: 20px;
  max-width: 100%;
}
.hero .eyebrow {
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6b7280;
  margin-bottom: 10px;
}
/* Mobile navigation fix: Safari-safe dropdown and unified active states */
@media (max-width: 900px) {
  .site-header {
    z-index: 1000;
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
  }

  .nav {
    position: relative;
  }

  .hamburger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    -webkit-appearance: none;
    appearance: none;
    background: var(--surface);
    border: 1px solid var(--line);
    box-shadow: 0 8px 24px rgba(32, 40, 35, .08);
    z-index: 1002;
  }

  .hamburger span {
    flex: 0 0 auto;
  }

  .mobile-menu {
    position: absolute;
    top: 100%;
    left: 4%;
    right: 4%;
    width: auto;
    z-index: 1001;
    display: none;
    flex-direction: column;
    gap: 6px;
    padding: 14px;
    margin-top: 8px;
    background: #fffdf8;
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    border: 1px solid var(--line);
    border-radius: 22px;
    box-shadow: 0 24px 70px rgba(32, 40, 35, .18);
  }

  .mobile-menu.open {
    display: flex;
  }

  .mobile-menu a,
  .mobile-menu .mobile-cta {
    display: block;
    width: 100%;
    text-align: left;
    background: transparent;
    color: #405044 !important;
    border: 1px solid transparent;
    border-radius: 14px;
  }

  .mobile-menu a:hover,
  .mobile-menu a:focus-visible {
    background: rgba(238, 242, 222, .8);
    border-color: #dce5c6;
    outline: none;
  }

  .mobile-menu a[aria-current="page"],
  .mobile-menu .mobile-cta[aria-current="page"] {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff !important;
    font-weight: 800;
    text-align: left;
  }

  .mobile-menu .mobile-lang-switch {
    padding: 0 0 8px;
    margin-bottom: 6px;
    border-bottom: 1px solid var(--line);
  }

  .mobile-menu .mobile-lang-switch a {
    width: auto;
    text-align: center;
    border-radius: 999px;
  }

  .mobile-menu .mobile-lang-switch a[aria-current="page"] {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff !important;
  }
}
