/* Modernisation 2026-09 : navigation, pages d'activité, cartes. Chargé après mvc.css. */
:root{--radius:14px;--shadow:0 18px 50px -24px rgba(17,16,15,.35);--border:#e4d9cc}
.skip-link{position:absolute;left:-9999px;top:10px;z-index:100;background:var(--copper);color:#fff;padding:10px 16px}.skip-link:focus{left:10px}
/* Le premier span d'un .eyebrow est le trait décoratif ; les suivants sont du texte. */
.eyebrow > span + span{width:auto;height:auto;background:none;display:inline}
.icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}

/* En-tête : fixe sur l'accueil, collant ailleurs, condensé au défilement */
.home-page .site-header{position:fixed;transition:background .3s,height .3s,box-shadow .3s}
.site-header.scrolled{height:72px;background:rgba(17,16,15,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 10px 30px -20px #000}
.inner-page .site-header{position:sticky;top:0;z-index:50;background:rgba(17,16,15,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
/* Entrée de menu active : texte doré + soulignement cuivre (barre latérale dans le menu mobile). */
.main-nav .nav-label{position:relative;display:inline-block;padding:6px 0}
.main-nav .nav-label:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.main-nav a:hover .nav-label:after{transform:scaleX(.5)}
.main-nav .is-current,.main-nav .nav-contact.is-current{color:var(--gold)}
.main-nav .is-current .nav-label{font-weight:700}
.main-nav .is-current .nav-label:after{transform:scaleX(1)}
@media(max-width:900px){
 .main-nav>a,.main-nav .nav-dropdown-toggle{position:relative;padding-left:14px}
 .main-nav>a.is-current:before,.main-nav .nav-dropdown-toggle.is-current:before{content:'';position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:3px;background:var(--copper)}
 .main-nav .nav-label:after{display:none}
}
.nav-dropdown{position:relative}
.nav-dropdown-toggle{display:inline-flex;align-items:center;gap:6px}.caret{font-size:10px;transition:transform .2s}
.nav-dropdown-menu{position:absolute;top:calc(100% + 18px);left:50%;transform:translate(-50%,8px);min-width:300px;padding:10px;background:#1a1715;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);box-shadow:0 30px 60px -20px rgba(0,0,0,.7);opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s}
.nav-dropdown-menu:before{content:'';position:absolute;left:0;right:0;top:-20px;height:20px}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav-dropdown:hover .caret,.nav-dropdown:focus-within .caret{transform:rotate(180deg)}
.nav-dropdown-menu a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;color:#d8d0c7;font-size:13px}
.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus-visible,.nav-dropdown-menu a[aria-current="page"]{background:rgba(231,102,34,.12);color:#fff}
.nav-dropdown-menu .icon{width:20px;height:20px;color:var(--copper)}
@media(max-width:900px){
 .main-nav{top:100%!important;max-height:calc(100vh - 88px);overflow-y:auto;box-shadow:0 30px 40px -20px #000}
 .nav-dropdown-menu{position:static;transform:none;opacity:1;visibility:visible;min-width:0;padding:6px 0 0 6px;background:none;border:0;box-shadow:none}
 .nav-dropdown-menu:before,.caret{display:none}
 .nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{transform:none}
 .nav-dropdown-menu a{padding:8px 10px}
}

/* Accueil : cartes des six pôles */
.activity-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}
.activity-card{position:relative;display:flex;flex-direction:column;gap:14px;min-height:280px;padding:30px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.activity-card:after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--copper),var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .35s}
.activity-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}.activity-card:hover:after{transform:scaleX(1)}
.activity-card-top{display:flex;justify-content:space-between;align-items:center}
.activity-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:14px;background:rgba(231,102,34,.1);color:var(--copper);transition:background .3s,color .3s}
.activity-card:hover .activity-icon{background:var(--copper);color:#fff}
.activity-card .card-number{font-size:12px;color:#a59b91;letter-spacing:.1em}
.activity-card h3{font-family:var(--serif);font-size:25px;line-height:1.15;font-weight:500;margin:10px 0 0}
.activity-card p{margin:0;color:#6f675f;font-size:14px;flex:1}
.activity-card-link{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.activity-card-link span:last-child{color:var(--copper);margin-left:6px;display:inline-block;transition:transform .3s}.activity-card:hover .activity-card-link span:last-child{transform:translateX(5px)}
.company-copy p+p{margin-top:0}
.principles{flex-wrap:wrap}.principles span{white-space:nowrap}

/* Accueil : réalisations, partenaires, sur mesure */
.works-section{background:#ebe5dc}
.works-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin:50px 0 35px}
.work-tile{display:flex;flex-direction:column;gap:8px;padding:24px;min-height:170px;background:var(--paper);border-radius:var(--radius);border:1px solid var(--border);transition:background .3s,color .3s,transform .3s}
.work-tile strong{font-family:var(--serif);font-size:20px;font-weight:500;line-height:1.2}.work-tile span:last-child{font-size:13px;color:#766c62}
.work-index{font-size:11px;color:var(--copper);font-weight:700;letter-spacing:.14em}
.work-tile:hover{background:var(--ink);color:var(--paper);transform:translateY(-4px)}.work-tile:hover span:last-child{color:#b9b0a6}
.partners-section .partner-grid img{border-radius:var(--radius);border:1px solid var(--border);padding:16px;transition:transform .3s,box-shadow .3s}.partners-section .partner-grid img:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.custom-section{padding-top:0}
.custom-inner{max-width:900px;padding:50px;border:1px dashed #c9b9a7;border-radius:var(--radius);background:#fff}
.custom-inner h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:0 0 16px;letter-spacing:-.03em}
.custom-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:22px 0}
.custom-list li,.range-list li{padding:8px 16px;border-radius:999px;background:rgba(231,102,34,.09);color:#7a3a12;font-size:13px;font-weight:600}

/* Pages intérieures : bandeau d'en-tête */
.page-hero{position:relative;overflow:hidden;padding:110px 6vw 90px;background:radial-gradient(circle at 85% 20%,rgba(231,102,34,.28),transparent 45%),linear-gradient(180deg,#11100f,#1d1a18);color:var(--paper)}
.page-hero:after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,transparent,#000 70%);pointer-events:none}
.page-hero-inner{position:relative;z-index:1;max-width:1380px;margin:auto}
.page-hero h1{color:#f7f1ea;max-width:900px;margin:10px 0 18px}
.page-hero-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:26px;border-radius:18px;background:rgba(231,102,34,.15);color:var(--copper);border:1px solid rgba(231,102,34,.35)}.page-hero-icon .icon{width:30px;height:30px}
.page-hero-tagline{font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.6rem);color:var(--gold);margin:0 0 18px;max-width:800px}
.page-hero-lead{max-width:760px;color:#bdb4aa;font-size:1.05rem;margin:0}
.page-hero + .page-shell{padding-top:0}
.activity-actions{display:flex;flex-wrap:wrap;gap:12px;margin:-24px 0 60px;position:relative;z-index:2}
.button{border-radius:999px;padding-left:24px;padding-right:24px}
.button-outline{background:#fff;color:var(--ink);border:1px solid var(--border);box-shadow:0 8px 20px -14px rgba(0,0,0,.4);transition:border-color .25s,color .25s,transform .25s}.button-outline:hover{border-color:var(--copper);color:var(--copper);transform:translateY(-2px)}
.button-primary{box-shadow:0 12px 26px -12px rgba(231,102,34,.8)}
.section-heading{font-family:var(--serif);font-size:clamp(1.7rem,3vw,2.4rem);font-weight:500;letter-spacing:-.02em;margin:0 0 8px}
.service-panel{position:relative;background:#fff;border-color:var(--border);border-radius:var(--radius);padding:32px;transition:box-shadow .3s,transform .3s}.service-panel:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.service-panel h3{font-size:1.25rem;font-weight:600;margin:6px 0 14px;padding-right:40px}
.panel-index{position:absolute;top:26px;right:28px;font-size:12px;font-weight:700;color:var(--copper);letter-spacing:.1em}
.check-list{list-style:none;padding:0!important;margin:0}.check-list li{position:relative;padding-left:28px;margin:10px 0!important;color:#4e4740}
.check-list li:before{content:"";position:absolute;left:0;top:.35em;width:17px;height:17px;border-radius:50%;background:rgba(231,102,34,.14)}
.check-list li:after{content:"";position:absolute;left:6px;top:calc(.35em + 4px);width:4px;height:7px;border:solid var(--copper);border-width:0 2px 2px 0;transform:rotate(45deg)}
.highlight{margin:60px 0;padding:50px;border-radius:var(--radius);background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.highlight:after{content:'\201C';position:absolute;right:30px;top:-30px;font-family:var(--serif);font-size:220px;color:rgba(231,102,34,.18);line-height:1}
.highlight-text{position:relative;z-index:1;font-family:var(--serif);font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.45;max-width:900px;margin:0}
.feature-callout{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;margin:0 0 60px;padding:36px 40px;border-radius:var(--radius);background:linear-gradient(120deg,#fff4ea,#fff);border:1px solid #f0d3bb}
.feature-callout h2{margin:0 0 6px;font-size:1.5rem}.feature-callout p:last-child{margin:0;color:#6f675f}
.cta-trio{margin:70px 0}
.cta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}
.cta-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:28px 28px 60px;border-radius:var(--radius);background:#fff;border:1px solid var(--border);transition:background .3s,color .3s,transform .3s}
.cta-card strong{font-size:1.1rem}.cta-card span{color:#6f675f;font-size:14px}
.cta-card .cta-arrow{position:absolute;left:28px;bottom:22px;color:var(--copper);font-size:22px;transition:transform .3s}
.cta-card:hover{background:var(--copper);color:#fff;transform:translateY(-4px)}.cta-card:hover span,.cta-card:hover .cta-arrow{color:#fff}.cta-card:hover .cta-arrow{transform:translateX(6px)}
.other-activities{margin-top:70px}
.other-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:22px}
.other-grid a{display:flex;align-items:center;gap:12px;padding:18px;border-radius:12px;border:1px solid var(--border);background:#fff;font-size:14px;font-weight:600;transition:border-color .25s,color .25s}
.other-grid a .icon{color:var(--copper)}.other-grid a:hover{border-color:var(--copper);color:var(--copper)}

/* Réalisations, boutique, contact */
.category-chips{display:flex;flex-wrap:wrap;gap:10px;margin:40px 0}
.category-chips a{padding:10px 18px;border-radius:999px;border:1px solid var(--border);background:#fff;font-size:13px;font-weight:600;transition:all .25s}
.category-chips a:hover{border-color:var(--copper);color:var(--copper)}.category-chips a[aria-current="page"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.range-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:40px 0}
.product-card{display:flex;flex-direction:column;background:#fff;border-radius:var(--radius);overflow:hidden;padding:0 0 26px;transition:box-shadow .3s,transform .3s}.product-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.product-card>*:not(img){margin-left:26px;margin-right:26px}.product-card img{border-radius:0;height:260px;object-fit:cover}.product-card h2{font-size:1.3rem;margin-top:20px}
.product-card>strong{font-size:1.2rem;color:var(--copper)}.product-card .button{align-self:flex-start;margin-top:auto}
.availability{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.availability:before{content:'';width:8px;height:8px;border-radius:50%}
.is-available:before{background:#2f9e5b}.is-unavailable{color:#8b7e72}.is-unavailable:before{background:#b8aa9c}
.gallery-grid img{border-radius:12px;object-fit:cover;transition:transform .4s}.gallery-grid figure{overflow:hidden}.gallery-grid a:hover img{transform:scale(1.03)}
.contact-layout{margin-top:50px}.contact-aside{display:grid;gap:20px;align-content:start}.contact-card{background:#fff;border-radius:var(--radius)}.contact-card h2{font-size:1.2rem;margin:0 0 10px}.contact-card a{color:var(--copper)}
.form-stack.panel{background:#fff;border-radius:var(--radius);padding:36px;box-shadow:var(--shadow);border-color:transparent}
input,select,textarea{border-radius:10px;border-color:#d6cabd;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--copper);box-shadow:0 0 0 4px rgba(231,102,34,.12);outline:none}
.empty{border-radius:var(--radius);background:#fff}
.error-title{margin-top:60px}

/* Pied de page des pages intérieures */
.closing-band{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;padding:70px 6vw;background:var(--copper);color:#fff}
.closing-band .eyebrow{color:#fff}.closing-band .eyebrow span{background:#fff}
.closing-quote{font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.2;letter-spacing:-.02em;margin:0;max-width:820px}.closing-quote em{font-family:var(--serif)}
.closing-band .button-primary{background:var(--ink);box-shadow:none}.closing-band .button-primary:hover{background:#2a2521}
.site-footer.site-footer-rich{display:grid;grid-template-columns:1.2fr 2fr 1.2fr;gap:30px 50px;padding:60px 6vw 26px;font-size:12px;letter-spacing:.02em;text-transform:none;color:#9d948a;line-height:1.6}
.footer-brand{display:flex;gap:14px;align-items:flex-start}.footer-brand img{border:1px solid var(--gold)}.footer-brand strong{display:block;color:var(--paper);letter-spacing:.12em;font-size:12px}.footer-brand span{display:block;font-family:var(--serif);font-style:italic;color:var(--gold)}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px}.site-footer-rich .footer-links a{color:#cfc6bc;margin:0}.site-footer-rich .footer-links a:hover{color:var(--gold)}
.footer-contact{display:grid;gap:8px;align-content:start}.footer-contact a,.footer-contact span{margin:0}
.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);font-size:10px;text-transform:uppercase;letter-spacing:.1em}
.footer-bottom a,.footer-bottom span{display:inline!important;margin:0!important}

@media(max-width:1100px){.activity-cards{grid-template-columns:repeat(2,1fr)}.other-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.cta-grid{grid-template-columns:1fr}.site-footer.site-footer-rich{grid-template-columns:1fr}.page-hero{padding:80px 7vw 70px}.custom-inner{padding:32px}}
@media(max-width:600px){.activity-cards{grid-template-columns:1fr}.other-grid{grid-template-columns:1fr 1fr}.footer-links{grid-template-columns:1fr}.highlight{padding:32px}.feature-callout{padding:26px}.activity-actions .button{width:100%}.form-stack.panel{padding:22px}}

/* Annonce d'événement (page Restauration) */
.event-banner{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:48px;align-items:center;margin:0 0 60px;padding:36px;border-radius:var(--radius);background:radial-gradient(circle at 90% 10%,rgba(216,160,75,.25),transparent 45%),linear-gradient(135deg,#15110e,#2a1a10);color:var(--paper);box-shadow:0 30px 60px -30px rgba(0,0,0,.6);border:1px solid rgba(216,160,75,.35)}
.event-poster{display:block;border-radius:12px;overflow:hidden;box-shadow:0 20px 40px -18px #000;transform:rotate(-1.5deg);transition:transform .35s}.event-poster:hover{transform:rotate(0) scale(1.02)}
.event-poster img{width:100%;height:auto}
.event-badge{display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;padding:7px 14px;border-radius:999px;background:rgba(231,102,34,.18);color:#ffb27f;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.event-pulse{width:8px;height:8px;border-radius:50%;background:var(--copper);box-shadow:0 0 0 0 rgba(231,102,34,.7);animation:event-pulse 1.8s infinite}
@keyframes event-pulse{70%{box-shadow:0 0 0 10px rgba(231,102,34,0)}100%{box-shadow:0 0 0 0 rgba(231,102,34,0)}}
.event-body h2{font-family:var(--serif);font-size:clamp(2rem,3.6vw,3rem);line-height:1.1;margin:0 0 8px;color:#fff}
.event-slogan{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:1.25rem;margin:0 0 14px}
.event-intro{color:#cfc5ba;margin:0 0 26px}
.event-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 22px}
.event-facts div{padding:16px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.event-facts dt{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--copper);font-weight:700;margin-bottom:6px}
.event-facts dd{margin:0;font-weight:600;color:#fff}.event-facts small{display:block;font-weight:400;color:#a99e93;font-size:12px;margin-top:4px}
.event-perks{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 24px}
.event-perks li{padding:7px 14px;border-radius:999px;background:rgba(216,160,75,.14);color:#f3d29f;font-size:13px;font-weight:600}
.event-rsvp-label{margin:0 0 12px;color:#cfc5ba;font-size:14px}
.event-actions{display:flex;flex-wrap:wrap;gap:12px}
.button-whatsapp{background:#25d366;color:#0b2e17;transition:background .25s,transform .25s}.button-whatsapp:hover{background:#3be27a;transform:translateY(-2px)}
@media(max-width:900px){.event-banner{grid-template-columns:1fr;gap:30px;padding:26px}.event-poster{max-width:360px;margin:auto;transform:none}}
@media(max-width:600px){.event-facts{grid-template-columns:1fr}.event-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){.event-pulse{animation:none}}

/* Lien vers la vitrine depuis la page Restauration */
.food-teaser{display:grid;grid-template-columns:180px 1fr auto;gap:32px;align-items:center;margin:0 0 40px;padding:22px 34px 22px 22px;border-radius:var(--radius);background:linear-gradient(120deg,#fff,#fff5ea);border:1px solid #efcfae;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}
.food-teaser:hover{transform:translateY(-4px);box-shadow:0 28px 60px -28px rgba(231,102,34,.55)}
.food-teaser img{width:180px;height:auto;border-radius:12px;mask-image:radial-gradient(ellipse 75% 75% at center,#000 70%,transparent 92%);-webkit-mask-image:radial-gradient(ellipse 75% 75% at center,#000 70%,transparent 92%)}
.food-teaser-body{display:flex;flex-direction:column;gap:6px}.food-teaser-body .eyebrow{margin:0}
.food-teaser strong{font-family:var(--serif);font-size:clamp(1.4rem,2.4vw,2rem);font-weight:600;line-height:1.15}
.food-teaser-body>span:last-child{color:#6f675f}
@media(max-width:900px){.food-teaser{grid-template-columns:1fr;text-align:left;padding:24px}.food-teaser img{width:200px}.food-teaser .button{justify-self:start}}

/* Vitrine Jeladist Food (/food/) */
.food-page main{background:#fbf7f1}
.food-wrap{max-width:1240px;margin:0 auto;padding:0 6vw;box-sizing:content-box}
.food-section{padding:110px 0}
.food-title{font-family:var(--serif);font-size:clamp(2rem,3.8vw,3.2rem);font-weight:500;line-height:1.1;letter-spacing:-.02em;margin:0 0 22px}
.food-title em{color:var(--copper)}
.food-text{font-size:1.08rem;color:#5e554c;max-width:560px}
.food-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px}
.food-actions .icon{width:18px;height:18px}

.food-hero{position:relative;overflow:hidden;padding:110px 0 120px;color:var(--paper);background:radial-gradient(circle at 78% 45%,rgba(216,160,75,.35),transparent 40%),radial-gradient(circle at 10% 90%,rgba(231,102,34,.25),transparent 45%),linear-gradient(160deg,#0d0b09 0%,#1c130c 55%,#2a170b 100%)}
.food-hero:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 60px,rgba(216,160,75,.05) 60px 61px);pointer-events:none}
.food-hero-grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.food-hero h1{font-family:var(--serif);font-size:clamp(3.4rem,8vw,7rem);font-weight:600;line-height:.95;letter-spacing:-.03em;margin:10px 0 18px;color:#fff}
.food-hero h1 em{color:var(--gold);font-style:italic}
.food-slogan{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.4vw,1.9rem);color:#f3c98b;margin:0 0 22px}
.food-lead{max-width:520px;color:#cdbfb0;font-size:1.05rem}
.food-button-ghost{display:inline-flex;gap:10px;background:rgba(255,255,255,.06);color:#fff;border:1px solid rgba(216,160,75,.5)}.food-button-ghost:hover{background:rgba(216,160,75,.18)}
.food-hero .text-link{color:#e9d8c4}
.food-plate{position:relative;justify-self:center;width:min(440px,80vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#ffffff 0%,#f7f1ea 55%,#e9dccd 100%);box-shadow:0 0 0 10px rgba(216,160,75,.25),0 0 0 11px rgba(216,160,75,.6),0 50px 90px -30px rgba(0,0,0,.8),inset 0 -12px 30px rgba(0,0,0,.08)}
.food-plate img{width:84%;height:auto;mask-image:radial-gradient(ellipse 75% 75% at center,#000 70%,transparent 90%);-webkit-mask-image:radial-gradient(ellipse 75% 75% at center,#000 70%,transparent 90%)}
.food-plate-ring{position:absolute;inset:-34px;border-radius:50%;border:1px dashed rgba(216,160,75,.45);animation:food-spin 60s linear infinite}
@keyframes food-spin{to{transform:rotate(360deg)}}
.food-event{padding-top:70px}.food-event .event-banner{margin:0}

.food-split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.food-quote{margin:26px 0 0;padding-left:20px;border-left:3px solid var(--copper);font-family:var(--serif);font-style:italic;font-size:1.15rem;color:#3b332c}
.food-promises{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.food-promise{padding:28px;border-radius:var(--radius);background:#fff;border:1px solid var(--border);transition:transform .3s,box-shadow .3s}.food-promise:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.food-promise span{font-size:12px;font-weight:700;color:var(--copper);letter-spacing:.12em}
.food-promise strong{display:block;font-family:var(--serif);font-size:1.4rem;font-weight:500;margin:8px 0 6px}
.food-promise p{margin:0;color:#6f675f;font-size:14px}

.food-menu{background:#120e0b;background-image:radial-gradient(circle at 50% 0%,rgba(216,160,75,.18),transparent 55%)}
.food-menu-board{max-width:760px;margin:0 auto;padding:60px clamp(24px,5vw,70px);text-align:center;color:var(--paper);border:1px solid rgba(216,160,75,.4);border-radius:22px;outline:1px solid rgba(216,160,75,.15);outline-offset:10px}
.food-menu-board .eyebrow{justify-content:center}.food-menu-board .food-title{color:#fff}
.food-menu-list{list-style:none;padding:0;margin:36px 0 26px;text-align:left}
.food-menu-list li{display:flex;align-items:baseline;gap:12px;padding:14px 0;font-size:1.15rem;font-family:var(--serif)}
.food-menu-list i{flex:1;border-bottom:1px dotted rgba(216,160,75,.5);transform:translateY(-4px)}
.food-menu-list b{color:var(--gold);font-weight:400;font-size:.9rem}
.food-menu-note{margin:0;color:#b5a796;font-size:14px}

.food-mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.food-mode{padding:30px 26px;border-radius:var(--radius);background:#fff;border:1px solid var(--border);transition:transform .3s,box-shadow .3s}.food-mode:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.food-mode-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--copper),var(--gold));color:#fff;margin-bottom:18px}
.food-mode h3{font-family:var(--serif);font-size:1.35rem;font-weight:500;margin:0 0 12px}
.food-mode ul{list-style:none;padding:0;margin:0}.food-mode li{padding:6px 0;border-top:1px solid #f0e8de;color:#5e554c;font-size:14px}

.food-video{padding-top:0}
.food-video-frame{margin-top:30px;border-radius:var(--radius);overflow:hidden;background:#000;box-shadow:0 24px 60px rgba(0,0,0,.18)}
.food-video-frame video{display:block;width:100%;max-height:80vh;background:#000}
.food-gallery{padding-top:0}
.food-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:30px}
.food-photo-grid figure{margin:0;border-radius:var(--radius);overflow:hidden;background:#eee4d8}
.food-photo-grid img{width:100%;height:260px;object-fit:cover;transition:transform .5s}.food-photo-grid a:hover img{transform:scale(1.05)}
.food-photo-grid figcaption{padding:10px 14px;font-size:13px;color:#5e554c;background:#fff}

.food-visit{padding-top:0}
.food-visit-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}
.food-visit-card{padding:44px;border-radius:var(--radius);background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}
.food-contact{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px;margin:10px 0 0}
.food-contact dt{display:flex;align-items:center;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--copper);margin-bottom:6px}.food-contact dt .icon{width:18px;height:18px}
.food-contact dd{margin:0;font-size:1.1rem;font-weight:600}.food-contact small{display:block;font-weight:400;font-size:13px;color:#7a7066;margin-top:4px}
.food-contact a:hover{color:var(--copper)}
.food-catering{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:44px;border-radius:var(--radius);color:#fff;background:linear-gradient(145deg,var(--copper),#b8460f)}
.food-catering>.icon{width:44px;height:44px}
.food-catering h2{font-family:var(--serif);font-size:1.8rem;font-weight:500;line-height:1.2;margin:0}.food-catering p{margin:0;color:#ffe6d4}
.food-catering .button{align-self:flex-start;margin-top:10px}
.food-back{display:inline-block;margin-top:36px;color:#5e554c}

@media(max-width:1000px){.food-mode-grid{grid-template-columns:repeat(2,1fr)}.food-split,.food-visit-grid{grid-template-columns:1fr;gap:40px}}
@media(max-width:800px){.food-hero-grid{grid-template-columns:1fr;gap:50px}.food-hero{padding:70px 0 90px}.food-plate{width:min(320px,75vw)}.food-section{padding:80px 0}}
@media(max-width:600px){.food-mode-grid,.food-promises,.food-contact{grid-template-columns:1fr}.food-visit-card,.food-catering{padding:28px}.food-actions .button{width:100%;justify-content:center}.food-menu-list li{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.food-plate-ring{animation:none}}
