:root{--white:#ffffff;--off-white:#f7f5f2;--stone:#e8e3db;--warm-gray:#9e9890;--dark:#1a1916;--ink:#2d2b27;--accent:#C89102;--accent-light:#d4a030;}
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{font-family:'DM Sans',sans-serif;background:var(--white);color:var(--ink);overflow-x:hidden;}
  nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.4rem 4rem;background:rgba(255,255,255,0.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--stone);}
  .nav-logo{text-decoration:none;z-index:201;display:flex;align-items:center;} .nav-logo img{height:46px;width:auto;max-width:200px;object-fit:contain;}
  
  .nav-right{display:flex;align-items:center;gap:1rem;}
  .lang-toggle{display:flex;border:1.5px solid var(--stone);border-radius:2px;overflow:hidden;}
  .lang-btn{padding:.35rem .65rem;font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;background:transparent;color:var(--warm-gray);transition:background .2s,color .2s;font-family:'DM Sans',sans-serif;}
  .lang-btn.active{background:var(--dark);color:var(--white);}
  .lang-btn:hover:not(.active){background:var(--stone);color:var(--ink);}
  .nav-links{display:flex;gap:2.4rem;align-items:center;}
  .nav-links a{font-size:.85rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--ink);transition:color .2s;}
  .nav-links a:hover{color:var(--accent);}
  .nav-cta{background:var(--dark)!important;color:var(--white)!important;padding:.6rem 1.4rem;border-radius:2px;}
  .nav-cta:hover{background:var(--accent)!important;}
  .hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;cursor:pointer;background:none;border:none;padding:4px;z-index:201;}
  .hamburger span{display:block;height:2px;background:var(--dark);border-radius:2px;transition:transform .3s,opacity .3s;transform-origin:center;width:100%;}
  .hamburger span:nth-child(2){width:70%;margin-left:auto;}
  .hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0);}
  .hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .mobile-menu{position:fixed;top:0;left:0;right:0;bottom:0;z-index:199;background:var(--white);padding:6rem 2.5rem 3rem;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);}
  .mobile-menu.open{transform:translateX(0);}
  .mobile-menu a{display:block;font-family:'Bebas Neue',sans-serif;font-size:2.8rem;letter-spacing:.04em;color:var(--dark);text-decoration:none;padding:.6rem 0;border-bottom:1px solid var(--stone);transition:color .2s;}
  .mobile-menu a:hover{color:var(--accent);}
  .mobile-menu .mobile-cta{margin-top:2rem;background:var(--accent);color:var(--white)!important;padding:1rem 2rem;border-radius:2px;text-align:center;font-size:1rem;letter-spacing:.1em;border-bottom:none!important;}
  .mobile-lang{display:flex;margin-top:auto;padding-top:2rem;}
  section{padding:7rem 4rem;}
  .section-tag{font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;display:block;}
  .section-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.4rem,4vw,3.8rem);line-height:1.05;color:var(--dark);letter-spacing:.02em;margin-bottom:1rem;}
  .section-title em{font-family:'DM Serif Display',serif;font-style:italic;color:var(--accent);}
  .section-sub{font-size:1rem;font-weight:300;color:var(--warm-gray);line-height:1.7;max-width:540px;}
  .divider-line{width:40px;height:2px;background:var(--accent);margin:1.2rem 0;}
  .btn-primary{background:var(--accent);color:var(--white);padding:.85rem 2rem;border:none;border-radius:2px;font-family:'DM Sans',sans-serif;font-size:.85rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block;transition:background .2s,transform .2s;}
  .btn-primary:hover{background:var(--dark);transform:translateY(-1px);}
  .btn-outline{background:transparent;color:var(--ink);padding:.85rem 2rem;border:1.5px solid var(--stone);border-radius:2px;font-family:'DM Sans',sans-serif;font-size:.85rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block;transition:border-color .2s,color .2s;}
  .btn-outline:hover{border-color:var(--ink);color:var(--accent);}
  .newsletter{background:var(--dark);padding:5rem 4rem;display:flex;flex-direction:column;align-items:center;gap:2rem;text-align:center;}
  .newsletter-copy h2{font-family:'Bebas Neue',sans-serif;font-size:2.8rem;letter-spacing:.04em;color:var(--white);margin-bottom:.5rem;text-align:center;}
  .newsletter-copy p{font-size:.9rem;font-weight:300;color:rgba(255,255,255,.5);text-align:center;}
  .newsletter-fields{display:flex;gap:1rem;flex-wrap:wrap;width:100%;max-width:560px;justify-content:center;}
  .newsletter-form{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;}
  .newsletter-input{flex:1;padding:.9rem 1.2rem;border:1.5px solid rgba(255,255,255,.15);border-right:none;background:rgba(255,255,255,.05);color:var(--white);font-family:'DM Sans',sans-serif;font-size:.9rem;outline:none;border-radius:2px 0 0 2px;transition:border-color .2s;}
  .newsletter-input::placeholder{color:rgba(255,255,255,.3);}
  .newsletter-input:focus{border-color:var(--accent);}
  .newsletter-widget{width:100%;}.newsletter-widget iframe{width:100%;min-height:550px;border:none;border-radius:6px;display:block;}
  .events-book-btn{display:inline-block;padding:1rem 2.5rem;background:var(--accent);color:var(--white);font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:.1em;text-decoration:none;border-radius:2px;transition:background .2s,transform .2s;}
  .events-book-btn:hover{background:#a87800;transform:translateY(-2px);}
  .newsletter-note{font-size:.75rem;color:rgba(255,255,255,.35);margin-top:.6rem;text-align:right;}
  .newsletter-or{font-size:.8rem;color:rgba(255,255,255,.3);letter-spacing:.05em;text-transform:uppercase;margin:.5rem 0;}
  .newsletter-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.78rem;color:rgba(255,255,255,.5);max-width:560px;text-align:left;cursor:pointer;}
  .newsletter-consent input[type="checkbox"]{margin-top:.15rem;accent-color:var(--accent);flex-shrink:0;}
  .newsletter-consent a{color:var(--accent);text-decoration:none;}
  .newsletter-consent a:hover{text-decoration:underline;}
  .newsletter-msg{font-size:.82rem;margin-top:.3rem;min-height:1.2em;}
  .newsletter-btn{background:var(--accent);color:var(--white);padding:.9rem 1.6rem;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:.8rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border-radius:0 2px 2px 0;transition:background .2s;white-space:nowrap;}
  .newsletter-btn:hover{background:var(--accent-light);}
  footer{background:var(--dark);border-top:1px solid rgba(255,255,255,.07);padding:4rem 4rem 2.5rem;}
  .footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:4rem;margin-bottom:4rem;}
  .footer-brand .nav-logo{display:block;margin-bottom:1rem;} .footer-brand .nav-logo img{height:38px;width:auto;max-width:180px;object-fit:contain;}
  .footer-tagline{font-size:.85rem;font-weight:300;line-height:1.65;color:rgba(255,255,255,.35);max-width:240px;}
  .footer-col h4{font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:1.2rem;}
  .footer-col a{display:block;font-size:.85rem;font-weight:300;color:rgba(255,255,255,.35);text-decoration:none;margin-bottom:.65rem;transition:color .2s;}
  .footer-col a:hover{color:var(--accent-light);}
  .footer-social{display:flex;gap:.8rem;margin-top:1.2rem;}
  .social-btn{width:36px;height:36px;border:1px solid rgba(255,255,255,.15);border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:.85rem;color:rgba(255,255,255,.4);text-decoration:none;transition:border-color .2s,color .2s;}
  .social-btn:hover{border-color:var(--accent);color:var(--accent);}
  .footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.07);font-size:.78rem;color:rgba(255,255,255,.3);flex-wrap:wrap;gap:1rem;}
  @keyframes fadeUp{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}
  @keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
  .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease;}
  .reveal.visible{opacity:1;transform:translateY(0);}
  @media(max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem;}}
  @media(max-width:900px){
    nav{padding:1.2rem 1.5rem;}
    .nav-links{display:none;}
    .hamburger{display:flex;}
    section{padding:5rem 1.5rem;}
    .newsletter{flex-direction:column;padding:4rem 1.5rem;}
    footer{padding:3rem 1.5rem 2rem;}
    .footer-grid{grid-template-columns:1fr 1fr;gap:2rem;}
  }
  @media(max-width:480px){.footer-grid{grid-template-columns:1fr;}.newsletter-fields{display:flex;gap:1rem;flex-wrap:wrap;width:100%;max-width:560px;justify-content:center;}
  .newsletter-form{flex-direction:column;}.newsletter-input{border-right:1.5px solid rgba(255,255,255,.15);border-bottom:none;border-radius:2px 2px 0 0;}.newsletter-widget{width:100%;}.newsletter-widget iframe{width:100%;min-height:550px;border:none;border-radius:6px;display:block;}
  .events-book-btn{display:inline-block;padding:1rem 2.5rem;background:var(--accent);color:var(--white);font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:.1em;text-decoration:none;border-radius:2px;transition:background .2s,transform .2s;}
  .events-book-btn:hover{background:#a87800;transform:translateY(-2px);}
  .newsletter-note{font-size:.75rem;color:rgba(255,255,255,.35);margin-top:.6rem;text-align:right;}
  .newsletter-or{font-size:.8rem;color:rgba(255,255,255,.3);letter-spacing:.05em;text-transform:uppercase;margin:.5rem 0;}
  .newsletter-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.78rem;color:rgba(255,255,255,.5);max-width:560px;text-align:left;cursor:pointer;}
  .newsletter-consent input[type="checkbox"]{margin-top:.15rem;accent-color:var(--accent);flex-shrink:0;}
  .newsletter-consent a{color:var(--accent);text-decoration:none;}
  .newsletter-consent a:hover{text-decoration:underline;}
  .newsletter-msg{font-size:.82rem;margin-top:.3rem;min-height:1.2em;}
  .newsletter-btn{border-radius:0 0 2px 2px;}}
