.language-switch a { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; border-radius:999px; text-decoration:none; }
.language-switch a.is-active { background:var(--honey); opacity:1; }
.language-switch a:hover,.language-switch a:focus-visible { opacity:1; outline:2px solid var(--ink); outline-offset:2px; }
.language-switch a img { width:22px; height:16px; object-fit:cover; }
.hero h1 { font-size:clamp(44px,5.8vw,82px); line-height:1.04; }
.hero-media { background:none; }
.hero-image { width:100%; height:100%; object-fit:cover; object-position:center 48%; }
.menu-item { background-image:none; }
.menu-card-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.menu-item::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(21,21,21,.08) 22%,rgba(21,21,21,.9) 100%); }
.menu-item > div { position:relative; z-index:1; }
.seo-section,.faq-section { padding:clamp(48px,7vw,90px) clamp(20px,5vw,72px); }
.seo-section { background:var(--paper); }
.seo-section h2,.faq-section h2 { font-size:clamp(34px,4.5vw,58px); line-height:1.02; max-width:900px; }
.seo-section > p { max-width:850px; font-size:18px; line-height:1.6; }
.seo-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:24px; }
.faq-section { background:var(--mint); }
.faq-list { max-width:1000px; margin-top:30px; }
.faq-list details { border-bottom:1px solid var(--ink); padding:20px 0; }
.faq-list summary { cursor:pointer; font-size:20px; font-weight:800; line-height:1.4; }
.faq-list details p { margin:14px 0 0; max-width:850px; font-size:17px; line-height:1.65; }
.occasion-card { min-height:250px; }
.occasion-card h3 { font-size:30px; line-height:1.1; margin:16px 0; }
.occasion-card p,.reviews-note { font-size:17px; line-height:1.6; }
.footer-grid [data-hours] { white-space:pre-line; }
.page-breadcrumb { display:flex; gap:8px; align-items:center; flex-wrap:wrap; font-size:15px; padding:16px clamp(20px,5vw,72px); }
.page-breadcrumb a { text-decoration:underline; }
@media(max-width:600px) { .hero h1 { font-size:clamp(36px,10vw,58px); } .seo-actions .button { width:100%; } }
