:root{
  --cream:#FAF6EC; --cream-deep:#F1E6D2; --white:#FFFDF9;
  --red:#C8342A; --red-dark:#A3241C; --navy:#2B3A67; --brown:#3A2A1D; --orange:#BE7B3C; --blue:#4A73A8;
}

*{box-sizing:border-box;}
body{margin:0;background:var(--cream);font-family:'Jost',sans-serif;color:var(--brown);}
a{color:inherit;text-decoration:none;}
h1,h2,h3{font-family:'Poppins',sans-serif;margin:0;font-weight:700;}
.script{font-family:'Caveat',cursive;}

/* header / nav */
header{position:sticky;top:0;z-index:50;background:rgba(250,246,236,0.96);backdrop-filter:blur(4px);border-bottom:1px solid #EADFC7;}
.header-inner{max-width:1160px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px 48px;}
.logo{display:flex;align-items:center;gap:10px;}
.logo img{height:42px;width:auto;object-fit:contain;}
.logo span{font-size:20px;font-weight:700;color:var(--brown);letter-spacing:.01em;font-family:'Poppins',sans-serif;}
.navrow{display:flex;gap:36px;}
.navlink{font-size:14px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--brown);padding:6px 2px;border-bottom:2px solid transparent;}
.navlink:hover,.navlink.active{border-bottom:2px solid var(--red);color:var(--red);}
.lang-toggle{display:flex;align-items:center;border:1.5px solid var(--navy);border-radius:999px;overflow:hidden;}
.lang-toggle button{padding:7px 16px;font-family:'Jost',sans-serif;font-size:13px;font-weight:700;border:none;cursor:pointer;background:transparent;color:var(--navy);}
.lang-toggle button.active{background:var(--navy);color:#fff;}

/* buttons */
.btn-primary{display:inline-block;background:var(--red);color:#fff;font-family:'Jost',sans-serif;font-weight:600;font-size:15px;padding:14px 30px;border-radius:999px;border:2px solid var(--red);cursor:pointer;transition:opacity .15s;}
.btn-primary:hover{opacity:.88;}
.btn-outline{display:inline-block;background:transparent;color:var(--navy);font-family:'Jost',sans-serif;font-weight:600;font-size:15px;padding:12px 28px;border-radius:999px;border:2px solid var(--navy);cursor:pointer;text-align:center;}
.btn-outline:hover{background:var(--navy);color:#fff;}
.btn-ghost{display:inline-block;background:transparent;color:#8A7B68;font-family:'Jost',sans-serif;font-weight:600;font-size:14px;padding:10px 20px;border-radius:999px;border:1.5px dashed #C9B98D;cursor:pointer;text-align:center;}
.badge{font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--navy);background:#fff;border:1.5px solid var(--navy);border-radius:999px;padding:7px 16px;}

/* layout */
.section-pad{padding:100px 48px;}
.container{max-width:1160px;margin:0 auto;}
.two-col{display:flex;gap:64px;align-items:center;}
.two-col.top{align-items:flex-start;}
.card{background:var(--white);border-radius:20px;box-shadow:0 2px 18px rgba(58,42,29,0.08);}
.card.flat{background:var(--cream);box-shadow:none;border:1px solid #EADFC7;}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;}

/* about page */
.link-red{color:var(--red);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
.link-red:hover{color:var(--red-dark);}

/* events page */
.watch{font-size:14px;font-style:italic;color:#8A7B68;margin:10px 0 0 0;}

/* contact page */
input,textarea{font-family:'Jost',sans-serif;font-size:15px;border:1.5px solid #E3D6BE;border-radius:10px;padding:13px 16px;background:#fff;color:var(--brown);box-sizing:border-box;width:100%;}
input:focus,textarea:focus{outline:none;border-color:var(--navy);}
label{font-size:13px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--navy);margin-bottom:6px;display:block;}
.ig-icon{width:30px;height:30px;display:inline-block;vertical-align:middle;flex-shrink:0;}
.contact-card{padding:52px 48px;border-radius:26px;}
.contact-card label{font-size:15px;margin-bottom:8px;}
.contact-item{margin-bottom:36px;}
.contact-value{font-size:24px;font-weight:600;overflow-wrap:anywhere;}

/* home hero heading with Eiffel Tower */
.hero-heading{display:flex;align-items:flex-end;gap:22px;}
.hero-eiffel{height:104px;width:auto;display:block;}

/* footer */
footer{background:var(--navy);color:#F2ECDD;padding:48px 48px 32px 48px;}
.footer-inner{max-width:1160px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;}
.footer-nav{display:flex;gap:28px;flex-wrap:wrap;justify-content:center;font-size:13px;letter-spacing:.05em;text-transform:uppercase;}
.footer-nav a{color:#F2ECDD;}
.footer-rights{font-size:12px;color:#B9C0D6;margin-top:6px;}

[data-i18n], [data-i18n-placeholder]{ }
.hidden{display:none !important;}

@media (max-width:1100px){
  .navrow{gap:20px;}
  .navlink{font-size:13px;}
}
@media (max-width:900px){
  .hero-eiffel{height:76px;}
  .section-pad{padding:56px 24px;}
  .two-col{flex-direction:column;gap:36px;}
  .hero-title{font-size:42px !important;}
  .grid-3{grid-template-columns:1fr;}
  .grid-2{grid-template-columns:1fr;}
  header .navrow{display:none;}
}
