:root{
  --ink:#1d1a16;
  --graphite:#232019;
  --graphite-2:#2c2822;
  --cream:#faf4e9;
  --paper:#fffaf1;
  --caramel:#c8842f;
  --caramel-dark:#9c631d;
  --gold:#e8b463;
  --dutch-blue:#1e3a5c;
  --dutch-red:#a33b2e;
  --ivory-60: rgba(250,244,233,.6);
  --radius: 4px;
  --maxw: 1120px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Work Sans', sans-serif;
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
h1,h2,h3{
  font-family:'Fraunces', serif;
  font-weight:600;
  line-height:1.08;
  margin:0 0 .5em;
  letter-spacing:-.01em;
}
p{line-height:1.65; margin:0 0 1em;}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 28px;}

.eyebrow{
  font-family:'Work Sans', sans-serif;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.72rem;
  font-weight:600;
  color:var(--caramel-dark);
  margin:0 0 .9em;
}
.eyebrow.light{color:var(--gold);}
.light-sub{color:var(--ivory-60); max-width:640px;}

/* waffle-grid signature texture, used as background accents */
.grain{
  position:fixed; inset:0; pointer-events:none; z-index:9999;
  opacity:.025; mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* HEADER */
.site-header{
  position:sticky; top:0; z-index:100;
  background:var(--graphite);
  border-bottom:1px solid rgba(232,180,99,.18);
}
.header-inner{
  display:flex; align-items:center; justify-content:space-between;
  padding-top:12px; padding-bottom:12px;
  gap:24px;
}
.brand{
  display:flex; align-items:center; gap:10px;
  font-family:'Fraunces', serif;
  font-weight:600; font-size:1.3rem;
  color:var(--cream);
}
.brand img{height:44px; width:auto;}
.main-nav{display:flex; gap:28px;}
.main-nav a{
  color:var(--ivory-60);
  font-size:.9rem; font-weight:500;
  transition:color .15s ease;
}
.main-nav a:hover{color:var(--gold);}
.header-cta{
  color:var(--gold);
  border:1px solid rgba(232,180,99,.4);
  padding:8px 16px;
  border-radius:999px;
  font-size:.85rem; font-weight:600;
  white-space:nowrap;
}
.header-cta:hover{background:rgba(232,180,99,.1);}

/* BUTTONS */
.btn{
  display:inline-block;
  padding:14px 26px;
  border-radius:2px;
  font-weight:600;
  font-size:.92rem;
  letter-spacing:.01em;
  transition:transform .15s ease, background .15s ease, color .15s ease;
}
.btn-primary{background:var(--caramel); color:var(--ink);}
.btn-primary:hover{background:var(--gold); transform:translateY(-1px);}
.btn-outline{border:1.5px solid currentColor;}
.btn-outline:hover{background:rgba(0,0,0,.04);}
.btn-ghost{}

/* HERO */
.hero{position:relative; min-height:88vh; display:flex; align-items:flex-end; overflow:hidden;}
.hero-media{position:absolute; inset:0;}
.hero-media img{width:100%; height:100%; object-fit:cover; object-position:center 58%;}
.hero-scrim{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(29,26,22,.35) 0%, rgba(29,26,22,.55) 55%, rgba(29,26,22,.92) 100%);
}
.hero-content{position:relative; color:var(--cream); padding-top:100px; padding-bottom:76px;}
.hero h1{font-size:clamp(2.2rem, 5vw, 3.6rem); color:#fff;}
.hero-sub{max-width:620px; font-size:1.05rem; color:var(--ivory-60);}
.hero-actions{display:flex; gap:16px; flex-wrap:wrap; margin-top:1.6em;}
.hero .btn-outline{border-color:rgba(250,244,233,.5); color:var(--cream);}

/* SECTIONS */
.section{padding:96px 0;}

/* CONCEPT */
.concept-grid{
  display:grid; grid-template-columns:1.1fr .9fr; gap:64px; align-items:center;
}
.concept-text h2{font-size:clamp(1.6rem, 3vw, 2.3rem);}
.concept-media img{
  border-radius:2px;
  box-shadow:0 30px 60px -20px rgba(29,26,22,.35);
}
.tag-row{display:flex; flex-wrap:wrap; gap:10px; margin-top:1.4em;}
.tag{
  border:1px solid var(--caramel);
  color:var(--caramel-dark);
  font-size:.78rem; font-weight:600;
  padding:6px 14px; border-radius:999px;
}
.concept-strip{
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  margin-top:76px;
}
.concept-strip figure{margin:0;}
.concept-strip img{border-radius:2px; aspect-ratio:4/3; object-fit:cover; width:100%;}
.concept-strip figcaption{
  font-size:.85rem; color:var(--caramel-dark); margin-top:.7em; font-weight:500;
}

/* TROUVER */
.trouver{
  background:var(--graphite);
  background-image:
    radial-gradient(circle at 85% 20%, rgba(232,180,99,.08), transparent 45%),
    radial-gradient(circle at 10% 80%, rgba(30,58,92,.35), transparent 50%);
  color:var(--cream);
}
.trouver h2{color:#fff; max-width:680px;}
.market-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:24px;
  margin-top:52px;
}
.market-card{
  background:var(--graphite-2);
  border:1px solid rgba(232,180,99,.18);
  padding:32px;
  border-radius:2px;
  position:relative;
}
.market-dept{
  display:inline-block;
  font-family:'Fraunces', serif;
  font-size:.85rem; font-weight:600;
  color:var(--ink);
  background:var(--gold);
  padding:4px 12px;
  border-radius:999px;
  margin-bottom:1em;
}
.market-card h3{color:#fff; font-size:1.3rem; margin-bottom:.4em;}
.market-card p{color:var(--ivory-60); margin:0;}
.social-row{display:flex; gap:14px; margin-top:44px; flex-wrap:wrap;}
.social-icon{
  display:flex; align-items:center; justify-content:center;
  width:46px; height:46px;
  border-radius:50%;
  transition:transform .15s ease, filter .15s ease;
}
.social-icon:hover{transform:translateY(-2px); filter:brightness(1.08);}
.social-icon--whatsapp{background:#25D366;}
.social-icon--instagram{background:radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);}
.social-icon--tiktok{background:#010101;}

/* EVENEMENTS */
.evt-grid{
  display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center;
}
.evt-media img{border-radius:2px; box-shadow:0 30px 60px -20px rgba(29,26,22,.3);}
.evt-text h2{font-size:clamp(1.6rem, 3vw, 2.3rem);}
.check-list{list-style:none; padding:0; margin:1.4em 0; display:grid; grid-template-columns:1fr 1fr; gap:10px 20px;}
.check-list li{
  font-weight:500; font-size:.95rem;
  padding-left:22px; position:relative;
}
.check-list li::before{
  content:"";
  position:absolute; left:0; top:.5em;
  width:9px; height:9px;
  background:var(--caramel);
  border-radius:50%;
}
.evt-actions{display:flex; gap:16px; flex-wrap:wrap; margin-top:1.6em;}
.eventigo-badge{display:inline-block; margin-top:1.4em; opacity:.9; transition:opacity .15s ease;}
.eventigo-badge:hover{opacity:1;}
.eventigo-badge img{width:150px; height:auto; border-radius:2px;}
.evt-gallery{
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  margin-top:76px;
}
.evt-gallery img{border-radius:2px; aspect-ratio:4/3; object-fit:cover; width:100%;}
.evt-gallery figcaption{font-size:.85rem; color:var(--caramel-dark); margin-top:.7em; font-weight:500;}
.evt-gallery figure{margin:0;}

/* CONTACT */
.contact{background:var(--paper);}
.contact-grid{
  display:grid; grid-template-columns:1.1fr .7fr; gap:64px; align-items:center;
}
.contact h2{font-size:clamp(1.6rem, 3vw, 2.3rem);}
.contact-details{
  display:flex; flex-direction:column; gap:10px; margin-top:1.6em;
  font-family:'Fraunces', serif; font-size:1.15rem; font-weight:500;
}
.contact-details a{color:var(--caramel-dark);}
.contact-details a:hover{color:var(--caramel);}
.contact-details span{color:#77706570; font-family:'Work Sans', sans-serif; font-size:.92rem; color:#8a8175;}
.contact-logo img{border-radius:2px;}

/* FOOTER */
.site-footer{background:var(--graphite); color:var(--ivory-60); padding:26px 0;}
.footer-inner{display:flex; justify-content:space-between; font-size:.8rem; flex-wrap:wrap; gap:8px;}

/* RESPONSIVE */
@media (max-width: 860px){
  .main-nav{display:none;}
  .concept-grid, .evt-grid, .contact-grid{grid-template-columns:1fr;}
  .concept-strip, .evt-gallery{grid-template-columns:1fr 1fr;}
  .market-grid{grid-template-columns:1fr;}
  .check-list{grid-template-columns:1fr;}
  .section{padding:64px 0;}
  .hero{min-height:80vh;}
}
@media (max-width: 540px){
  .concept-strip, .evt-gallery{grid-template-columns:1fr;}
  .header-cta{display:none;}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  .btn{transition:none;}
}
