.language-switch{display:flex;justify-content:center;gap:5px 14px;flex-wrap:wrap;padding:8px 18px;background:#f4f4ed;border-bottom:1px solid #dce4de;font-size:12px}.language-switch a{color:#234542;text-decoration:none;padding:3px 6px;border-radius:4px}.language-switch a[aria-current]{background:#234542;color:white}.translation-note{max-width:1200px;margin:20px auto;padding:12px 20px;border-left:3px solid #8eaa9f;background:#f0f4f1;color:#48605a;font-size:13px}.original-description{margin:14px 0}.original-description summary{cursor:pointer;color:#285653;font-weight:600}

/* Compact vertical language selector */
.language-switch{justify-content:flex-end;padding:5px max(18px,calc((100% - 1200px)/2));font-size:13px}
.language-dropdown{position:relative;z-index:100;width:64px}
.language-dropdown summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;cursor:pointer;list-style:none;border:1px solid #dce4de;border-radius:5px;background:#fff;color:#234542;font-weight:600}
.language-dropdown summary::-webkit-details-marker{display:none}
.language-dropdown summary::after{content:'⌄';font-size:14px}
.language-dropdown[open] summary::after{content:'⌃'}
.language-options{position:absolute;top:calc(100% + 5px);right:0;display:flex;flex-direction:column;gap:2px;width:64px;padding:5px;background:#fff;border:1px solid #dce4de;border-radius:6px;box-shadow:0 6px 18px #23454226;box-sizing:border-box}
.language-switch .language-options a{display:block;text-align:center;padding:7px 4px}
.language-switch .language-options a:hover{background:#edf2ef;color:#234542}
.language-dropdown summary:focus-visible,.language-options a:focus-visible{outline:2px solid #234542;outline-offset:2px}

/* Keep the language control beside Find your villa in the header. */
.header .language-switch{display:block;flex:none;margin:0;padding:0;background:transparent;border:0}
.header .language-dropdown summary{min-height:46px}
@media(max-width:767px){.header .nav.is-open{display:grid;grid-template-columns:max-content 64px;column-gap:12px}.header .nav>a:not(.button){grid-column:1/-1}.header .nav>.button{grid-column:1}.header .nav>.language-switch{grid-column:2;align-self:center}.header .language-dropdown summary{min-height:46px}}

@media(min-width:768px){.home-hero h1{max-width:none;white-space:nowrap;font-size:clamp(24px,3.05vw,46px)}}
