.site-header{gap:1.2rem}
.site-header .main-navigation{gap:1.3rem}
.language-picker{position:relative;flex:none;color:var(--wine);font-size:.875rem}
.language-picker summary{display:flex;align-items:center;gap:.45rem;min-height:44px;padding:.4rem .2rem;cursor:pointer;list-style:none}
.language-picker summary::-webkit-details-marker{display:none}
.language-picker summary::marker{content:""}
.language-symbol{font-size:1.3rem;line-height:1}
.language-options{position:absolute;z-index:20;right:0;top:calc(100% + 12px);min-width:190px;list-style:none;margin:0;padding:.5rem 1rem;background:var(--paper);border:1px solid var(--line);box-shadow:0 14px 30px #291d2014}
.language-options a{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:44px;padding:.55rem 0;color:var(--wine);text-decoration:none;border-bottom:1px solid var(--line)}
.language-options li:last-child a{border-bottom:0}
.language-options a>span{font-size:.75rem;color:var(--muted)}
.language-options a[aria-current="page"]{font-weight:700}
.language-options a:hover{text-decoration:underline;text-underline-offset:4px}
.language-picker[open] .nav-chevron{transform:translateY(2px) rotate(225deg)}
.hero h1{font-size:clamp(2.8rem,4.5vw,4.6rem)}
html:not([lang="it"]) :is(h1,h2,h3){overflow-wrap:break-word;hyphens:auto}
@media(min-width:1001px) and (max-width:1100px){.site-header{padding-left:3%;padding-right:3%;gap:.75rem}.site-header .main-navigation{gap:.8rem;font-size:.875rem}.site-header .brand>span{font-size:1.15rem}.site-header .header-booking{padding:.7rem .9rem}}
@media(max-width:1000px){.language-picker{order:2;margin-left:auto}.site-header>.brand{margin-right:0}.site-header .menu-toggle{order:3}.site-header .header-booking{order:1;margin-left:auto}.site-header .main-navigation{order:4}.language-symbol{display:none}}
@media(max-width:480px){.site-header{gap:.4rem}.site-header .menu-toggle>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.site-header .brand>span{font-size:1.05rem}.site-header .header-booking{font-size:.875rem;padding:.6rem .65rem}.language-picker{margin-left:0}.language-picker summary{gap:.3rem}.language-options{right:-3rem}.site-header .menu-toggle{padding:.45rem}}
@media(max-width:350px){.site-header{padding-left:4%;padding-right:4%}.site-header .brand>span{font-size:.92rem}.site-header .header-booking{padding:.55rem}.language-picker summary{font-size:.8rem}}
