:root{
      --dark:#100800;--dark2:#1a0f00;--mid:#3d2b00;--warm:#6b4700;
      --gold:#c8922a;--gold-lt:#e8b84b;--light:#f0ddb0;--cream:#faf3e0;
      --paper:#f5e6c8;--velvet:#7a1515;--velvet2:#5c0f0f;--ink:#1a0a00;--aged:#fdf8ee;
    }
    *{margin:0;padding:0;box-sizing:border-box;}
    html{scroll-behavior:smooth;overflow-x:hidden;}
    body{background:var(--dark);color:var(--ink);font-family:'Libre Baskerville',serif;overflow-x:hidden;padding-top:64px;width:100%;}
    body::after{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");pointer-events:none;z-index:9998;opacity:.35;}

    /* NAV */
    nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(16,8,0,.97);border-bottom:1px solid rgba(200,146,42,.25);backdrop-filter:blur(10px);}
    .nav-inner{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;height:64px;}
    .nav-brand{font-family:'Cinzel Decorative',cursive;font-size:1.70rem;color:var(--gold)!important;text-decoration:none;letter-spacing:.04em;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;line-height:1;animation:brandGlow 3s ease-in-out infinite;transition:transform .25s ease;}.nav-brand:hover{transform:scale(1.08);}.brand-main{display:block;}.brand-sub{font-family:'Cinzel Decorative',cursive;font-size:.68rem;letter-spacing:.18em;color:var(--gold);opacity:.65;display:block;margin-bottom:1px;font-weight:400;}@keyframes brandGlow{0%,100%{text-shadow:0 0 10px rgba(200,146,42,.3),0 0 20px rgba(200,146,42,.15);}50%{text-shadow:0 0 20px rgba(200,146,42,.7),0 0 40px rgba(200,146,42,.35),0 0 60px rgba(200,146,42,.15);}}
    
    .nav-links{display:flex;gap:2px;list-style:none;}
    .nav-links>li{position:relative;}
    .nav-links>li>a{font-family:'Cinzel Decorative',cursive;font-size:.98rem;letter-spacing:.13em;color:var(--light);text-decoration:none;text-transform:uppercase;padding:8px 12px;display:block;opacity:.72;transition:opacity .2s,color .2s;white-space:nowrap;}
    .nav-links>li>a:hover,.nav-links>li>a.active,.current-menu-item>a{opacity:1;color:var(--gold);}
    .sub-menu{position:absolute;top:100%;left:0;background:rgba(16,8,0,.98);border:1px solid rgba(200,146,42,.22);min-width:230px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .22s ease;}
    .menu-item:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0);}
    .sub-menu .menu-item a{display:block;padding:12px 18px;font-family:'Libre Baskerville',serif;font-size:.82rem;color:var(--light);text-decoration:none;opacity:.72;border-bottom:1px solid rgba(200,146,42,.08);transition:all .18s;}
    .sub-menu .menu-item:last-child a{border:none;}
    .sub-menu .menu-item a:hover{opacity:1;color:var(--gold);padding-left:24px;background:rgba(200,146,42,.04);}
    .hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px;}
    .hamburger span{display:block;width:22px;height:2px;background:var(--gold);margin:5px 0;}

    /* PAGES */
    #barbaroke-main{min-height:100vh;}

    /* GAP FIX */
    #barbaroke-main{margin-top:0;padding-top:0;}
    #barbaroke-main>.barbaroke-page:first-child{margin-top:0;padding-top:0;}
    .page-hero:first-child{margin-top:0;}

    /* HERO */
    .hero{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,#3d1800 0%,#0a0400 65%);}
    .orn{position:absolute;width:120px;height:120px;opacity:.28;}
    .orn svg{width:100%;height:100%;}
    .orn-tl{top:80px;left:16px;}.orn-tr{top:80px;right:16px;transform:scaleX(-1);}
    .orn-bl{bottom:16px;left:16px;transform:scaleY(-1);}.orn-br{bottom:16px;right:16px;transform:scale(-1);}
    .hero-eyebrow{font-family:'Cinzel Decorative',cursive;font-size:1.1rem;letter-spacing:.48em;color:var(--gold);margin-bottom:18px;opacity:.78;}

    .hero-title{font-family:'Cinzel Decorative',cursive;font-size:clamp(.75rem,4.01vw,9.875rem);font-weight:700;color:var(--gold);line-height:1.2;text-shadow:0 0 80px rgba(200,146,42,.45),3px 3px 0 rgba(0,0,0,.7);animation:glow 4s ease-in-out infinite;}
    @keyframes glow{0%,100%{text-shadow:0 0 60px rgba(200,146,42,.35),3px 3px 0 rgba(0,0,0,.7);}50%{text-shadow:0 0 110px rgba(200,146,42,.7),3px 3px 0 rgba(0,0,0,.7);}}
    .hero-sub{font-family:'IM Fell English',serif;font-style:italic;font-size:clamp(.9rem,2.2vw,1.35rem);color:var(--light);margin:16px 0 8px;opacity:.88;}
    .orn-div{display:flex;align-items:center;gap:12px;margin:22px auto;max-width:440px;}
    .orn-div .l{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
    .orn-div .d{width:9px;height:9px;background:var(--gold);transform:rotate(45deg);flex-shrink:0;}
    .orn-div .ds{width:5px;height:5px;}
    .hero-lead{font-size:clamp(.88rem,1.8vw,1.1rem);color:var(--paper);max-width:980px;line-height:1.78;opacity:.8;}
    .hero-lead p{font-size:clamp(.88rem,1.8vw,1.1rem);margin-bottom:16px;}
    .hero-lead-title{font-family:'Cinzel Decorative',cursive;font-size:clamp(.95rem,2.2vw,1.35rem);font-weight:700;color:var(--gold);letter-spacing:.08em;margin-bottom:18px;line-height:1.3;}
    .hero-lead-final{font-family:'IM Fell English',serif;font-style:italic;font-size:clamp(1rem,2vw,1.2rem);color:var(--gold-lt);margin-top:8px;}
    .hero-ctas{margin-top:40px;display:flex;gap:14px;flex-wrap:wrap;justify-content:center;}
    .btn{font-family:'Cinzel Decorative',cursive;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;padding:12px 30px;border:2px solid var(--gold);text-decoration:none;cursor:pointer;transition:all .28s;display:inline-block;}
    .btn-gold{background:var(--gold);color:var(--dark);}
    .btn-gold:hover{background:transparent;color:var(--gold);}
    .btn-out{background:transparent;color:var(--gold);}
    .btn-out:hover{background:var(--gold);color:var(--dark);}

    /* VIDEO */
    .video-section{background:#000;}
    .video-label{background:linear-gradient(180deg,#000 0%,var(--dark) 100%);text-align:center;padding:56px 24px 36px;}
    .video-label h2{font-family:'Cinzel Decorative',cursive;font-size:clamp(1.1rem,2.8vw,1.9rem);color:var(--gold);margin-bottom:10px;}
    .video-label p{font-family:'IM Fell English',serif;font-style:italic;color:var(--light);opacity:.7;font-size:1.5rem;}

    .video-wrapper{position:relative;width:100%;padding-bottom:56.25%;background:#000;}
    .video-wrapper iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
    .video-caption{background:linear-gradient(180deg,var(--dark) 0%,#000 100%);text-align:center;padding:28px 24px 52px;}
    .video-caption p{font-family:'IM Fell English',serif;font-style:italic;color:var(--light);opacity:.5;font-size:1.4rem;}

    /* INNER PAGE HERO */
    .page-hero{background:linear-gradient(180deg,#200e00 0%,var(--dark2) 100%);padding:56px 24px 36px;text-align:center;border-bottom:1px solid rgba(200,146,42,.18);position:relative;overflow:hidden;}

    .page-hero .eyebrow{font-family:'Cinzel Decorative',cursive;font-size:1.3rem;letter-spacing:.48em;color:var(--gold);margin-bottom:14px;display:block;opacity:1.72;}
    .page-hero h1{font-family:'Playfair Display',serif;font-size:clamp(1.9rem,6vw,3.8rem);font-weight:900;font-style:italic;color:var(--gold);line-height:1.1;}
    .page-hero .sub{font-family:'IM Fell English',serif;font-style:italic;color:var(--light);opacity:.65;font-size:1.7rem;margin-top:12px;}

    /* UTILS */
    .sec{padding:88px 24px;}
    .container{max-width:1100px;margin:0 auto;}
    .sec-label{font-family:'Cinzel Decorative',cursive;font-size:.58rem;letter-spacing:.42em;color:var(--gold);display:block;margin-bottom:10px;}
    .sec-title{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,4vw,2.9rem);font-weight:900;font-style:italic;line-height:1.1;margin-bottom:26px;}
    .fu{opacity:0;transform:translateY(26px);transition:opacity .65s,transform .65s;}
    .fu.vis{opacity:1;transform:none;}

    /* SPECTACLE */
    .spectacle-intro{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;}
    .spectacle-intro .body{font-size:.98rem;line-height:1.85;color:var(--mid);}
    .spectacle-intro .body p+p{margin-top:14px;}
    .info-box{background:var(--dark2);border:1px solid var(--gold);padding:36px;color:var(--light);}
    .info-box h3{font-family:'Cinzel Decorative',cursive;font-size:.65rem;letter-spacing:.22em;color:var(--gold);margin-bottom:22px;}
    .info-row{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid rgba(200,146,42,.1);}
    .info-row:last-child{border:none;}
    .info-row .ic{font-size:1.1rem;flex-shrink:0;margin-top:1px;}
    .info-row div{font-size:.88rem;line-height:1.55;}
    .info-row strong{color:var(--gold-lt);display:block;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;}
    .compagnie-band{background:var(--velvet2);padding:68px 24px;text-align:center;border-top:3px solid var(--gold);}
    .compagnie-band h2{font-family:'Playfair Display',serif;font-size:clamp(1.4rem,3vw,2.3rem);font-style:italic;color:var(--gold);margin-bottom:18px;}
    .compagnie-band p{max-width:740px;margin:0 auto;font-size:.97rem;line-height:1.8;color:rgba(240,221,176,.83);}
    .compagnie-band p+p{margin-top:12px;}
    .pilliers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:2px;background:rgba(0,0,0,.2);margin-top:48px;}
    .pilier{background:var(--velvet);padding:42px 28px;text-align:center;transition:background .3s;}
    .pilier:hover{background:rgba(122,21,21,.7);}
    .pilier-icon{font-size:2.6rem;margin-bottom:18px;display:block;}
    .pilier h3{font-family:'Playfair Display',serif;font-size:1.1rem;font-style:italic;color:var(--cream);margin-bottom:10px;}
    .pilier p{font-size:.86rem;color:rgba(250,243,224,.7);line-height:1.68;}
    .eras{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px;margin-top:48px;}
    .era{border:1px solid rgba(200,146,42,.26);padding:30px 22px;background:rgba(255,255,255,.02);transition:border-color .3s,background .3s;}
    .era:hover{border-color:var(--gold);background:rgba(200,146,42,.05);}
    .era-ep{font-family:'Cinzel Decorative',cursive;font-size:.55rem;letter-spacing:.35em;color:var(--gold);display:block;margin-bottom:9px;}
    .era h3{font-family:'Playfair Display',serif;font-size:1.2rem;font-style:italic;color:var(--light);margin-bottom:12px;}
    .era ul{list-style:none;}
    .era ul li{font-size:.86rem;color:var(--paper);opacity:.7;padding:5px 0;border-bottom:1px solid rgba(200,146,42,.07);}
    .era ul li:last-child{border:none;}
    .era ul li::before{content:'\266A ';color:var(--gold);opacity:.5;}

    /* PEDAGOGIE */
    .peda-intro{max-width:740px;font-size:.98rem;line-height:1.85;color:var(--mid);margin-bottom:58px;}
    .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:0;border:1px solid rgba(61,43,0,.18);}
    .step{padding:46px 34px;border-right:1px solid rgba(61,43,0,.15);transition:background .3s;}
    .step:last-child{border-right:none;}
    .step:hover{background:rgba(200,146,42,.05);}
    .step-num{font-family:'Cinzel Decorative',cursive;font-size:2.8rem;color:var(--gold);opacity:.16;line-height:1;margin-bottom:10px;}
    .step-icon{font-size:1.9rem;margin-bottom:14px;display:block;}
    .step h3{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700;color:var(--dark);margin-bottom:10px;}
    .step p{font-size:.88rem;line-height:1.74;color:var(--warm);}
    .franco-goals{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px;margin-top:52px;}
    .fgoal{padding:28px 22px;border-left:3px solid var(--gold);background:rgba(200,146,42,.04);}
    .fgoal h4{font-family:'Playfair Display',serif;font-size:1rem;color:var(--dark);margin-bottom:9px;}
    .fgoal p{font-size:.86rem;color:var(--warm);line-height:1.62;}
    .stats-band{background:var(--dark2);padding:64px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;text-align:center;}
    .stat{padding:32px 18px;border-right:1px solid rgba(200,146,42,.12);}
    .stat:last-child{border:none;}
    .stat .num{font-family:'Cinzel Decorative',cursive;font-size:2.6rem;color:var(--gold);}
    .stat p{font-size:.8rem;color:var(--light);opacity:.6;margin-top:7px;line-height:1.5;}

    /* PEDAGOGIE NEW */
    .peda-section{padding:88px 24px;}
    .peda-section h2{font-family:'Playfair Display',serif;font-size:clamp(1.5rem,3.5vw,2.4rem);font-weight:900;font-style:italic;line-height:1.15;margin-bottom:24px;}
    .peda-section h2.gold{color:var(--gold);}.peda-section h2.dark{color:var(--dark);}
    .peda-body{font-size:.97rem;line-height:1.85;color:var(--mid);}
    .peda-body.light{color:var(--light);opacity:.82;}
    .peda-body.narrow{max-width:720px;}
    .peda-with-photo{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:start;}
    .peda-photo img{width:auto;height:auto;max-width:100%;border:3px solid var(--gold);border-radius:12px;box-shadow:0 4px 24px rgba(200,146,42,.18);}
    @media(max-width:800px){.peda-with-photo{grid-template-columns:1fr;}}
    .photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px;margin:36px 0;}
    .photo-grid .photo{border:3px solid var(--gold);border-radius:12px;overflow:hidden;box-shadow:0 4px 24px rgba(200,146,42,.18);transition:transform .35s,box-shadow .35s;background:var(--dark2);}
    .photo-grid .photo:hover{transform:scale(1.02);box-shadow:0 6px 36px rgba(200,146,42,.3);}
    .photo-grid .photo img{width:100%;height:auto;display:block;}
    .photo-grid.two{grid-template-columns:1fr 1fr;}
    @media(max-width:600px){.photo-grid.two{grid-template-columns:1fr;}}
    .peda-list{list-style:none;margin:18px 0 18px 20px;}
    .peda-list li{padding:8px 0 8px 28px;font-size:.93rem;line-height:1.65;color:var(--warm);position:relative;}
    .peda-list li::before{content:'♬';position:absolute;left:0;color:var(--gold);opacity:.65;}
    .peda-list.light li{color:var(--light);opacity:.82;}
    .peda-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:0;border:1px solid rgba(200,146,42,.18);margin:36px 0;background:rgba(200,146,42,.02);}
    .peda-step{border-right:1px solid rgba(200,146,42,.12);padding:44px 32px;transition:background .3s;}
    .peda-step:last-child{border-right:none;}
    .peda-step:hover{background:rgba(200,146,42,.05);}
    .peda-step .step-num{font-family:'Cinzel Decorative',cursive;font-size:2.6rem;color:#a07020;opacity:.9;line-height:1;margin-bottom:10px;}
    .peda-step h3{font-family:'Playfair Display',serif;font-size:1.15rem;font-style:italic;color:var(--dark);margin-bottom:10px;}
    .peda-step p{font-size:.87rem;line-height:1.74;color:var(--warm);}
    @media(max-width:720px){.peda-step{border-right:none;border-bottom:1px solid rgba(200,146,42,.12);}.peda-step:last-child{border:none;}}
    .peda-pts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin:32px 0;}
    .peda-pt{padding:28px 24px;border-left:3px solid var(--gold);background:rgba(200,146,42,.04);text-align:center;}
    .peda-pt .peda-icon{font-size:4rem;line-height:1;display:block;margin-bottom:8px;}
    .peda-pt h4{font-family:'Playfair Display',serif;font-size:1rem;color:var(--dark);margin-bottom:8px;}
    .peda-pt p{font-size:.86rem;color:var(--warm);line-height:1.6;}
    .peda-quote{background:var(--dark2);padding:66px 24px;text-align:center;border-top:1px solid rgba(200,146,42,.12);}
    .peda-quote blockquote{font-family:'Playfair Display',serif;font-size:clamp(1.15rem,2.5vw,1.85rem);font-style:italic;color:var(--light);max-width:780px;margin:0 auto;line-height:1.5;}
    .peda-quote blockquote .qp{color:var(--gold);font-size:3.2rem;vertical-align:-.75rem;}
    .peda-quote cite{display:block;margin-top:22px;font-family:'Libre Baskerville',serif;font-size:.97rem;line-height:1.85;color:var(--light);opacity:.65;font-style:italic;}
    .peda-quote cite .ct{font-style:normal;font-family:'Libre Baskerville',serif;opacity:.85;}

    /* DATES */
    .events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:26px;margin-top:48px;}
    .event-card{border:1px solid rgba(200,146,42,.28);background:rgba(200,146,42,.03);overflow:hidden;transition:transform .3s,border-color .3s;}
    .event-card:hover{transform:translateY(-4px);border-color:var(--gold);}
    .event-header{background:linear-gradient(135deg,var(--velvet),var(--velvet2));padding:26px 26px 18px;border-bottom:2px solid var(--gold);}
    .event-date{font-family:'Cinzel Decorative',cursive;font-size:.58rem;letter-spacing:.3em;color:var(--gold-lt);margin-bottom:7px;}
    .event-title{font-family:'Playfair Display',serif;font-size:1.28rem;font-style:italic;color:var(--cream);line-height:1.2;}
    .event-body{padding:22px 26px 26px;}
    .event-meta-row{display:flex;gap:9px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(200,146,42,.09);font-size:.86rem;color:var(--light);opacity:.78;}
    .event-meta-row:last-child{border:none;}
    .event-meta-row .ic{font-size:.95rem;flex-shrink:0;}
    .event-desc{font-size:.86rem;line-height:1.68;color:var(--paper);opacity:.62;margin-top:14px;}
    .tag{display:inline-block;font-family:'Cinzel Decorative',cursive;font-size:.52rem;letter-spacing:.18em;padding:4px 11px;border:1px solid rgba(200,146,42,.38);color:var(--gold);margin-bottom:12px;}
    .next-cta{text-align:center;margin-top:56px;padding:56px 24px;border:1px solid rgba(200,146,42,.18);background:rgba(200,146,42,.03);}
    .next-cta h3{font-family:'Playfair Display',serif;font-size:1.5rem;font-style:italic;color:var(--gold);margin-bottom:12px;}
    .next-cta p{color:var(--light);opacity:.65;margin-bottom:26px;line-height:1.7;}

    /* FICHE */
    .fiche-grid{display:grid;grid-template-columns:2fr 1fr;gap:56px;align-items:start;}
    .fiche-block{margin-bottom:38px;}
    .fiche-block h3{font-family:'Cinzel Decorative',cursive;font-size:.64rem;letter-spacing:.27em;color:var(--velvet);border-bottom:1px solid rgba(122,21,21,.22);padding-bottom:9px;margin-bottom:18px;}
    table.ft{width:100%;border-collapse:collapse;}
    table.ft tr{border-bottom:1px solid rgba(61,43,0,.1);}
    table.ft tr:last-child{border:none;}
    table.ft td{padding:10px 7px;font-size:.88rem;vertical-align:top;}
    table.ft td:first-child{font-weight:700;color:var(--mid);width:44%;font-size:.83rem;}
    table.ft td:last-child{color:var(--warm);}
    .sc{background:var(--dark2);border:1px solid var(--gold);padding:32px;margin-bottom:22px;color:var(--light);}
    .sc h4{font-family:'Cinzel Decorative',cursive;font-size:.62rem;letter-spacing:.22em;color:var(--gold);margin-bottom:16px;}
    .sc ul{list-style:none;}
    .sc ul li{font-size:.86rem;padding:7px 0;border-bottom:1px solid rgba(200,146,42,.09);color:var(--light);opacity:.78;}
    .sc ul li:last-child{border:none;}
    .sc ul li::before{content:'\2713 ';color:var(--gold);}
    .dl-btn{display:block;text-align:center;background:var(--velvet);color:var(--cream);padding:15px;font-family:'Cinzel Decorative',cursive;font-size:.62rem;letter-spacing:.18em;text-decoration:none;border:1px solid var(--gold);transition:background .3s;cursor:pointer;}
    .dl-btn:hover{background:var(--velvet2);}

    /* CONTACT */
    .contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;}
    .contact-layout p{font-size:1.05rem;color:#6b6b6b;line-height:1.8;}
    .info-item{display:flex;gap:14px;margin-bottom:24px;align-items:flex-start;}
    .info-item .ic{font-size:1.35rem;flex-shrink:0;width:42px;height:42px;border:1px solid rgba(200,146,42,.32);display:flex;align-items:center;justify-content:center;}
    .info-item div strong{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;letter-spacing:0;color:var(--gold);text-shadow:1px 1px 2px rgba(0,0,0,.45);display:block;margin-bottom:3px;}
    .info-item div span{color:#6b6b6b;font-size:1.05rem;opacity:1;font-family:'Libre Baskerville',serif;}
    .form-box{background:rgba(255,255,255,.03);border:1px solid rgba(200,146,42,.18);padding:44px;}
    .form-title{font-family:'Playfair Display',serif;font-size:1.35rem;font-style:italic;color:var(--gold);margin-bottom:28px;}
    .fr{margin-bottom:18px;}
    .fr label{display:block;font-family:'Libre Baskerville',serif;font-size:.85rem;letter-spacing:0;color:#6b6b6b;margin-bottom:6px;}
    .fr input,.fr select,.fr textarea{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(200,146,42,.22);color:#6b6b6b;padding:12px 16px;font-family:'Libre Baskerville',serif;font-size:.95rem;outline:none;transition:border-color .2s;appearance:none;}
    .fr input:focus,.fr select:focus,.fr textarea:focus{border-color:var(--gold);background:rgba(255,255,255,.12);}
    .fr select option{background:#1a0f00;color:#e0d0b0;}
    .fr textarea{resize:vertical;min-height:105px;}
    .fg{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
    .form-submit{width:100%;margin-top:6px;background:var(--gold);color:var(--dark);border:none;cursor:pointer;font-family:'Libre Baskerville',serif;font-size:1.1rem;font-weight:700;padding:16px;transition:background .28s;}
    .form-submit:hover{background:var(--gold-lt);}
    .form-ok{display:none;text-align:center;padding:36px;}
    .form-ok .ck{font-size:2.8rem;}
    .form-ok .ft{color:var(--gold);font-family:'Playfair Display',serif;font-size:1.25rem;font-style:italic;margin:12px 0 6px;}
    .form-ok p{color:var(--light);opacity:.72;font-size:.9rem;line-height:1.65;}
    .map-embed{margin-top:48px;width:100%;border:3px solid var(--gold);border-radius:12px;overflow:hidden;box-shadow:0 4px 24px rgba(200,146,42,.18);}
    .map-embed iframe{display:block;width:100%;height:380px;border:0;}
    .form-note{font-family:'Libre Baskerville',serif;font-size:.88rem;color:rgba(200,146,42,.65);margin-bottom:22px;font-style:italic;}

    /* CF7 */
    .wpcf7-form .fg{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
    .wpcf7-form .fr{margin-bottom:18px;}
    .wpcf7-form label{display:block;font-family:'Libre Baskerville',serif;font-size:.85rem;letter-spacing:0;color:#6b6b6b;margin-bottom:6px;}
    .wpcf7-form .wpcf7-text,.wpcf7-form .wpcf7-email,.wpcf7-form .wpcf7-tel,.wpcf7-form .wpcf7-select,.wpcf7-form .wpcf7-textarea,.wpcf7-form .wpcf7-date{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(200,146,42,.22);color:#6b6b6b;padding:12px 16px;font-family:'Libre Baskerville',serif;font-size:.95rem;outline:none;transition:border-color .2s,background .2s;appearance:none;}
    .wpcf7-form .wpcf7-text:focus,.wpcf7-form .wpcf7-email:focus,.wpcf7-form .wpcf7-tel:focus,.wpcf7-form .wpcf7-select:focus,.wpcf7-form .wpcf7-textarea:focus,.wpcf7-form .wpcf7-date:focus{border-color:var(--gold);background:rgba(255,255,255,.12);}
    .wpcf7-form .wpcf7-select option{background:#1a0f00;color:#e0d0b0;}
    .wpcf7-form .wpcf7-textarea{resize:vertical;min-height:105px;}
    .wpcf7-form .wpcf7-submit{width:100%;margin-top:6px;background:var(--gold);color:var(--dark);border:none;cursor:pointer;font-family:'Libre Baskerville',serif;font-size:1.1rem;font-weight:700;padding:16px;transition:background .28s,transform .2s;}
    .wpcf7-form .wpcf7-submit:hover{background:var(--gold-lt);transform:scale(1.02);}
    .wpcf7-form .wpcf7-response-output{font-family:'Libre Baskerville',serif;font-size:.95rem;padding:16px;margin:18px 0 0;border:1px solid rgba(200,146,42,.22);background:rgba(200,146,42,.08);color:#6b6b6b;text-align:center;}
    .wpcf7-form .wpcf7-not-valid-tip{font-family:'Libre Baskerville',serif;font-size:.82rem;color:var(--velvet);margin-top:4px;}
    .wpcf7-form .wpcf7-spam-blocked{color:var(--velvet);}
    @media(max-width:720px){.wpcf7-form .fg{grid-template-columns:1fr;}}

    /* FOOTER */
    footer{background:#060300;border-top:1px solid rgba(200,146,42,.1);padding:36px 24px 24px;text-align:center;}
    footer .brand{font-family:'Cinzel Decorative',cursive;font-size:.88rem;color:var(--gold);margin-bottom:10px;}
    footer p{font-size:.76rem;color:var(--paper);opacity:.36;}
    footer p+p{margin-top:4px;}
    footer a{color:var(--gold);opacity:.55;}
    .footer-extra{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:24px;padding-top:16px;border-top:1px solid rgba(200,146,42,.08);}
    .back-to-top{font-family:'Libre Baskerville',serif;font-size:.72rem;color:var(--gold);opacity:.4;text-decoration:none;transition:opacity .25s;}
    .back-to-top:hover{opacity:.8;}
    .footer-login{font-family:'Libre Baskerville',serif;font-size:.65rem;color:#060300;text-decoration:none;}

    /* HOME TEASER */
    .teaser{background:var(--cream);padding:88px 24px;text-align:center;}
    .teaser .sec-title{color:var(--dark);}
    .teaser .body{max-width:700px;margin:0 auto 36px;font-size:.98rem;line-height:1.85;color:var(--mid);}

    /* RESPONSIVE */
    @media(max-width:900px){
      .spectacle-intro,.fiche-grid,.contact-layout{grid-template-columns:1fr;}
      .steps{grid-template-columns:1fr;}
      .step{border-right:none;border-bottom:1px solid rgba(61,43,0,.15);}
      .step:last-child{border:none;}
    }
     @media(max-width:720px){
      .nav-links{display:none;flex-direction:column;position:fixed;top:64px;left:0;right:0;background:rgba(16,8,0,.98);border-bottom:1px solid rgba(200,146,42,.18);padding:16px 0;}
      .nav-links.open{display:flex;}
      .nav-links>li>a{padding:13px 24px;}
      .sub-menu{position:static;opacity:1;visibility:visible;transform:none;border:none;background:rgba(255,255,255,.03);}
      .hamburger{display:block;}
      .fg{grid-template-columns:1fr;}
      .form-box{padding:26px 18px;}
    }

    /* === FIXES === */

    /* Sticky footer - remove gap below footer on all pages */
    html { min-height: 100%; margin: 0; padding: 0; }
    body { min-height: 100vh; display: flex; flex-direction: column; }
    #barbaroke-main { flex: 1 0 auto; }
    footer { flex-shrink: 0; margin-bottom: 0; padding-bottom: 36px; }

    /* Homepage: fond pleine largeur, contenu à la même largeur que la navbar */
    body.home .elementor-10 .e-con,
    body.page-id-10 .elementor-10 .e-con { --padding-top: 0; --padding-bottom: 0; }
    body.home #barbaroke-main .video-section,
    body.page-id-10 #barbaroke-main .video-section { background: transparent; }
    body.home #barbaroke-main .video-label,
    body.page-id-10 #barbaroke-main .video-label { background: transparent; }
    body.home #barbaroke-main .video-caption,
    body.page-id-10 #barbaroke-main .video-caption { background: transparent; }
    body.home .elementor-element-6e8b056a,
    body.page-id-10 .elementor-element-6e8b056a { background-image: linear-gradient(180deg, #100800 65%, #C8922A 83%) !important; }
    body.home .elementor-10 .e-con,
    body.page-id-10 .elementor-10 .e-con { --container-max-width: 100%; --padding-inline: 0; }
    body.home .elementor-10 .e-con > .e-con-inner,
    body.page-id-10 .elementor-10 .e-con > .e-con-inner { max-width: 1200px; margin-inline: auto; padding-inline: 24px; }
    body.home .elementor-10 .elementor-element-6e8b056a,
    body.page-id-10 .elementor-10 .elementor-element-6e8b056a { overflow: hidden !important; overflow-x: hidden !important; overflow-y: auto !important; }

    /* Inner pages: reduce page-hero padding to remove gap with nav */
    .page-id-18 .page-hero,
    .page-id-19 .page-hero { padding-top: 4px; padding-bottom: 20px; }

    /* Homepage: reduce video-label padding to remove gap with nav */
    .page-id-10 .video-label { padding-top: 4px; }

    /* Fiche technique & Pedagogie: remove whitespace before footer */
    .page-id-18 .sec, .page-id-16 .sec { margin-bottom: 0; padding-bottom: 88px; }

    /* Contact page: same background as fiche-technique */
    .page-id-19 .sec { background: var(--paper); }
    .page-id-19 .sec .sec-title { color: var(--dark); }
    .page-id-19 #barbaroke-main .contact-layout p,
    .page-id-19 #barbaroke-main .info-item div span { color: #6b6b6b; }
    .page-id-19 #barbaroke-main .fr label { color: #6b6b6b; }
    .page-id-19 #barbaroke-main .fr input,
    .page-id-19 #barbaroke-main .fr textarea,
    .page-id-19 #barbaroke-main .fr select { color: #6b6b6b; background: rgba(255,255,255,.5); }
