
      :root { --black:#090909; --black-soft:#11100f; --black-card:#171512; --gold:#c9a55d; --gold-light:#efd49a; --line:rgba(201,165,93,.30); --white:#fffdf8; --muted:#c6c0b5; }
      * { box-sizing:border-box; } html { scroll-behavior:smooth; }
      body { margin:0; background:var(--black); color:var(--white); font-family:"DM Sans",Arial,sans-serif; }
      .hero { min-height:760px; height:100vh; min-height:650px; position:relative; overflow:hidden; isolation:isolate; border-bottom:1px solid var(--line); }
      .hero::before { content:""; position:absolute; inset:0; z-index:-2; background:#090909; }
      .hero::after { content:""; position:absolute; inset:0; z-index:-1; }
      .etoile-nav { position:sticky; top:0; z-index:100; width:100%; padding:27px max(42px,calc((100vw - 1280px)/2 + 42px)); display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid rgba(255,255,255,.10); background:rgba(9,9,9,.98); isolation:isolate; transition:background .32s ease,border-color .32s ease,box-shadow .32s ease; } .etoile-nav.nav-scrolled { background:transparent; border-color:transparent; box-shadow:none; } .etoile-nav::before { content:""; position:absolute; z-index:0; inset:0 -2px -25px; opacity:0; pointer-events:none; background:linear-gradient(to bottom,#090909 0%,rgba(9,9,9,.97) 64%,rgba(9,9,9,.82) 82%,transparent 100%); transition:opacity .32s ease; } .etoile-nav.nav-scrolled::before { opacity:1; } .etoile-nav > * { position:relative; z-index:1; }
      .wordmark { text-decoration:none; color:var(--white); font:600 18px "Playfair Display",serif; letter-spacing:.07em; }.wordmark span { color:var(--gold); }
      .nav-links { display:flex; gap:28px; align-items:center; }.nav-links a { color:#e8e2d8; text-decoration:none; font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; transition:color .2s; }.nav-links a:hover { color:var(--gold-light); }
      .hero-grid { max-width:1196px; margin:0 auto; min-height:calc(100% - 82px); padding:55px 42px 38px; display:grid; grid-template-columns:1fr minmax(310px,430px); align-items:center; gap:60px; }
      .eyebrow { margin:0 0 25px; display:flex; align-items:center; gap:12px; color:var(--gold-light); font-size:11px; font-weight:600; letter-spacing:.21em; text-transform:uppercase; }.eyebrow::before { content:""; width:38px; height:1px; background:var(--gold); }
      h1 { margin:0; max-width:690px; font:600 clamp(55px,7vw,102px)/.93 "Playfair Display",serif; letter-spacing:-.055em; }h1 em { color:var(--gold-light); font-weight:500; }
      .hero-text { max-width:510px; margin:29px 0 32px; color:var(--muted); font-size:16px; line-height:1.75; }.button { display:inline-flex; align-items:center; justify-content:center; min-height:49px; padding:0 23px; color:#17120b; background:linear-gradient(100deg,#ad823d,var(--gold-light),#b28a45); text-decoration:none; font-size:11px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; transition:transform .2s,box-shadow .2s; }.button:hover { transform:translateY(-2px); box-shadow:0 10px 35px rgba(201,165,93,.18); }.date-note { display:block; margin-top:17px; color:#a9a197; font-size:11px; letter-spacing:.06em; }
      .logo-frame { justify-self:end; width:min(100%,470px); position:relative; text-align:center; }.logo-frame::before { content:""; position:absolute; z-index:-1; inset:-85px -50px; background:radial-gradient(ellipse,rgba(201,165,93,.12),transparent 66%); }.logo-mark { display:block; width:100%; max-width:390px; height:auto; margin:0 auto -2px; }.logo-name { display:flex; justify-content:center; gap:18px; color:var(--gold-light); font:500 clamp(28px,3.15vw,43px)/1 "Playfair Display",serif; letter-spacing:.14em; }.logo-name span:last-child { color:var(--gold); }.logo-country { margin:12px 0 9px; color:#f4d692; font-size:12px; font-weight:600; letter-spacing:.68em; text-indent:.68em; }.logo-rule { display:flex; justify-content:center; align-items:center; gap:9px; color:var(--gold-light); font-size:17px; }.logo-rule::before,.logo-rule::after { content:""; width:108px; height:1px; background:linear-gradient(90deg,transparent,var(--gold)); }.logo-rule::after { transform:scaleX(-1); }.logo-subtitle { margin:13px 0 0; color:#e9d7ac; font-size:7.5px; font-weight:600; letter-spacing:.24em; line-height:2.1; text-transform:uppercase; }
      .section { max-width:1120px; margin:auto; padding:116px 32px; }.section-label { display:block; color:var(--gold-light); font-size:11px; font-weight:600; letter-spacing:.19em; text-transform:uppercase; }h2 { margin:18px 0 0; font:600 clamp(39px,5vw,64px)/1.04 "Playfair Display",serif; letter-spacing:-.045em; }
      .intro-section { display:grid; grid-template-columns:.9fr 1.1fr; gap:105px; }.intro-section p { margin:24px 0 0; color:var(--muted); font-size:17px; line-height:1.85; }
      .categories { background:var(--black-soft); border-block:1px solid var(--line); }.category-grid { display:grid; grid-template-columns:1fr 1fr; margin-top:55px; border-top:1px solid var(--line); }.category { padding:42px 42px 25px 0; min-height:245px; }.category + .category { border-left:1px solid var(--line); padding-left:42px; }.number { display:block; color:var(--gold); font:500 17px "Playfair Display",serif; margin-bottom:44px; }h3 { margin:0 0 14px; font:600 clamp(28px,3vw,40px)/1.1 "Playfair Display",serif; }.category p { max-width:340px; margin:0; color:var(--muted); font-size:15px; line-height:1.75; }
      .quote { min-height:250px; display:grid; place-items:center; position:relative; overflow:hidden; padding:42px; background:linear-gradient(120deg,#151007,#090909 47%,#181106); border-bottom:1px solid var(--line); }.quote::before { content:"✦"; position:absolute; color:rgba(201,165,93,.10); font:350px "Playfair Display",serif; transform:translateY(-4px); }.quote p { z-index:1; max-width:780px; margin:0; color:var(--gold-light); text-align:center; font:italic 500 clamp(28px,4vw,51px)/1.2 "Playfair Display",serif; }
      .info-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }.info-card { min-height:245px; padding:38px; background:var(--black-card); border:1px solid var(--line); }.info-card h3 { margin-top:16px; font-size:30px; }.info-card p { color:var(--muted); line-height:1.75; }.organisers { color:var(--gold-light)!important; font:500 22px/1.55 "Playfair Display",serif; }
      .site-footer { background:#060606; border-top:1px solid var(--line); }.footer-top { max-width:1120px; margin:auto; padding:65px 32px 48px; display:grid; grid-template-columns:1.55fr 1fr .72fr; gap:48px; }.footer-brand { margin:0 0 15px; color:var(--white); font:600 25px "Playfair Display",serif; letter-spacing:.06em; }.footer-brand span { color:var(--gold); }.footer-copy { max-width:340px; margin:0; color:#9c9487; font-size:13px; line-height:1.7; }.footer-title { display:block; margin-bottom:18px; color:var(--gold-light); font-size:10px; font-weight:600; letter-spacing:.19em; text-transform:uppercase; }.footer-links { display:grid; gap:11px; }.footer-links a { color:#d2cbc0; text-decoration:none; font-size:13px; transition:color .2s; }.footer-links a:hover { color:var(--gold-light); }.instagram-link { display:inline-grid; place-items:center; width:43px; height:43px; color:var(--gold-light); border:1px solid rgba(201,165,93,.55); transition:background .2s,color .2s,transform .2s; }.instagram-link:hover { color:#0b0a09; background:var(--gold-light); transform:translateY(-2px); }.instagram-link svg { width:19px; height:19px; }.footer-bottom { max-width:1120px; margin:auto; padding:20px 32px; display:flex; justify-content:space-between; gap:18px; color:#766f64; border-top:1px solid rgba(255,255,255,.08); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
      .menu-toggle { display:none; } @media (max-width:760px) { .hero { height:auto; min-height:0; } .etoile-nav { padding:22px 24px; } .etoile-nav .nav-links { display:none; } .menu-toggle { display:grid; place-items:center; gap:4px; width:40px; height:36px; padding:0; color:var(--gold-light); cursor:pointer; background:transparent; border:1px solid rgba(201,165,93,.55); }.menu-toggle span { display:block; width:16px; height:1px; background:currentColor; transition:transform .2s,opacity .2s; }.menu-toggle[aria-expanded="true"] span:first-child { transform:translateY(5px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }.menu-toggle[aria-expanded="true"] span:last-child { transform:translateY(-5px) rotate(-45deg); } .etoile-nav.menu-open .nav-links { position:absolute; top:100%; left:0; right:0; display:grid; gap:0; padding:10px 24px 17px; background:#090909; border-bottom:1px solid var(--line); box-shadow:0 18px 28px rgba(0,0,0,.32); } .etoile-nav.menu-open .nav-links a { padding:13px 0; border-bottom:1px solid rgba(255,255,255,.08); } .etoile-nav.menu-open .nav-links a:last-child { border:0; } .hero-grid { min-height:0; grid-template-columns:1fr; padding:65px 24px 62px; gap:46px; } .logo-frame { justify-self:center; width:min(84vw,400px); } .intro-section,.info-grid { grid-template-columns:1fr; gap:24px; } .section { padding:80px 24px; } .category-grid { grid-template-columns:1fr; } .category { min-height:0; padding:34px 0; } .category + .category { padding-left:0; border-left:0; border-top:1px solid var(--line); } .number { margin-bottom:26px; } .footer-top { grid-template-columns:1fr; gap:35px; padding:54px 24px 38px; }.footer-bottom { padding:18px 24px; flex-direction:column; }.footer-copy { max-width:390px; } }
    

      .language-switcher { display:inline-flex; gap:5px; align-items:center; padding:4px; border:1px solid rgba(201,165,93,.42); background:rgba(9,9,9,.68); }
      .language-switcher button { display:grid; place-items:center; width:31px; height:25px; padding:0; cursor:pointer; background:transparent; border:1px solid transparent; border-radius:1px; filter:grayscale(.7) opacity(.65); transition:transform .2s,filter .2s,border-color .2s,background .2s; }
      .language-switcher img { display:block; width:22px; height:15px; box-shadow:0 1px 4px rgba(0,0,0,.42); }
      .language-switcher button:hover { filter:grayscale(0) opacity(1); transform:translateY(-1px); }
      .language-switcher button[aria-pressed="true"] { filter:grayscale(0) opacity(1); border-color:var(--gold-light); background:rgba(201,165,93,.12); }
      @media (max-width:760px) { .language-switcher { margin-left:auto; } .language-switcher button { width:29px; height:24px; } }
    
