/* ============ TENDINA "LE NOSTRE CAMERE" (frame Figma 105:26647) ============ */
.nav-sub{position:relative}
.sub-panel{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%,6px);width:330px;background:var(--white);border-radius:12px;box-shadow:0 10px 40px rgba(79,71,35,.3);padding:28px 16px 16px;display:flex;flex-direction:column;gap:14px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .18s,visibility .18s;z-index:60}
.sub-panel::before{content:'';position:absolute;top:-14px;left:0;right:0;height:14px}
.nav-sub:hover .sub-panel,.nav-sub:focus-within .sub-panel,.nav-sub.open .sub-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
@media (prefers-reduced-motion:reduce){.sub-panel{transition:none}}
.sub-label{font-size:14px;color:var(--olive-600);padding:0 12px;font-weight:500}
.nav-pill .sub-panel a.sub-item,.scroll-head nav .sub-panel a.sub-item,.sub-panel a.sub-item{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 12px;border-radius:6px;color:var(--green);font-size:16px;font-weight:500;background:none}
.nav-pill .sub-panel a.sub-item:hover,.scroll-head nav .sub-panel a.sub-item:hover,.sub-panel a.sub-item:hover{font-weight:800;background:var(--cream-50)}
@media (max-width:980px){.sub-panel{display:none}}
.nav-sub-trigger{appearance:none;display:block;margin:0;border:0;background:transparent;font:inherit;text-align:left;cursor:pointer}
.nav-sub-trigger:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.collage-img{max-width:520px;width:100%;justify-self:end} /* export Figma del collage chi-siamo, ombre e trasparenza incluse */
@media (max-width:980px){.collage-img{justify-self:center}}
.como-cards-img{width:268px;max-width:100%;justify-self:end} /* export Figma card Parks/Villas */
@media (max-width:980px){.como-cards-img{justify-self:start}}

/* ============ MENU MOBILE (Figma: menu negativo/positivo 390x90) ============ */
.burger{display:none}
.mobile-menu{position:fixed;inset:0;z-index:80;background:var(--green);color:var(--cream-50);display:flex;flex-direction:column;padding:0 24px max(20px,env(safe-area-inset-bottom));transform:translateX(100%);transition:transform .28s cubic-bezier(.22,1,.36,1),visibility .28s;visibility:hidden}
.mobile-menu.is-open{transform:translateX(0);visibility:visible}
@media (prefers-reduced-motion:reduce){.mobile-menu{transition:none}}
.mm-head{display:flex;align-items:center;justify-content:space-between;padding:10px 0 14px}
.mm-head img{height:56px;width:auto}
.mm-close{border-color:var(--cream-50);color:var(--cream-50)}
.mm-close svg{stroke:var(--cream-50)}
.mm-nav{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:4px;overflow-y:auto}
.mm-nav>a,.mm-group-label{display:block;font-family:var(--serif);font-size:28px;line-height:1.1;color:var(--white);padding:8px 0}
.mm-nav a.is-current,.mm-group-label.is-current{color:var(--gold)}
.mm-sub{display:flex;flex-direction:column;padding:0 0 6px 18px;border-left:1.5px solid rgba(251,248,235,.25);margin-left:4px}
.mm-sub a{font-size:16px;line-height:1.35;color:var(--cream-100);padding:5px 0;font-weight:500}
.mm-actions{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-start;gap:10px;padding-top:16px}
.mm-actions .btn-square{flex:0 0 48px;width:48px;height:48px}
.mm-actions .mm-whatsapp{margin-left:auto}
.mm-actions .btn-square:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.no-scroll{overflow:hidden}

@media (max-width:980px){
  .burger{display:inline-flex}
  /* barre mobile alte 90: logo staccato da sinistra, icone allineate a destra */
  .site-head{padding:0 16px;height:90px;grid-template-columns:auto 1fr}
  .site-head .logo{background:var(--white);width:78px;height:78px;border-radius:12px;display:flex;align-items:center;justify-content:center}
  .site-head .logo img{height:56px}
  .site-head .head-cta{justify-self:end}
  .scroll-head{padding:0 16px;height:90px;grid-template-columns:auto 1fr}
  .static-bar{left:0;transform:none} /* su mobile la barra e a tutta larghezza: il translate(-50%) del desktop la spaccava a sinistra */
  .scroll-head .logo{width:78px;height:90px;display:flex;align-items:center;justify-content:center}
  .scroll-head .logo img{height:56px}
}
.field input::placeholder,.field textarea::placeholder{color:var(--olive-600);opacity:1;font-style:italic}

/* --- Language selector: current language trigger + compact alternatives popover --- */
.lang-switch{position:relative;display:block;font-size:14px;letter-spacing:.04em}
.lang-trigger{appearance:none;width:61px;height:48px;padding:0 7px;border:1.5px solid var(--green);border-radius:8px;background:transparent;color:var(--green);display:grid;grid-template-columns:16px 1fr 10px;align-items:center;gap:4px;font:inherit;font-weight:800;line-height:1;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.lang-trigger svg{stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lang-trigger:hover,.lang-switch.is-open .lang-trigger{background:var(--green);color:var(--white)}
.lang-trigger:focus-visible,.lang-option:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.lang-chevron{transition:transform .18s}
.lang-switch.is-open .lang-chevron{transform:rotate(180deg)}
.lang-menu{position:absolute;top:calc(100% + 9px);right:0;z-index:70;min-width:148px;padding:6px;background:var(--white);border:1px solid rgba(19,79,74,.12);border-radius:10px;box-shadow:0 12px 36px rgba(64,56,23,.22);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-5px);transition:opacity .16s,transform .16s,visibility .16s}
.lang-switch.is-open .lang-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.lang-option{min-height:42px;padding:0 10px;border-radius:6px;color:var(--green);display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:700;letter-spacing:0;text-decoration:none;white-space:nowrap}
.lang-option:hover{background:var(--cream-50)}
.lang-option-code{font-size:11px;letter-spacing:.08em;color:var(--olive-600)}
.site-head .lang-trigger{border-color:var(--white);color:var(--white)}
.site-head .lang-trigger:hover,.site-head .lang-switch.is-open .lang-trigger{background:var(--white);color:var(--green)}
@media (min-width:1101px){.head-cta .btn-phone{padding-right:10px;padding-left:10px}}
@media (prefers-reduced-motion:reduce){.lang-trigger,.lang-chevron,.lang-menu{transition:none}}
@media (max-width:980px){.head-cta .lang-switch{display:none}} /* On mobile the selector lives in the menu panel. */
.mobile-menu .lang-switch{align-self:auto;margin:0;font-size:15px}
.mobile-menu .lang-trigger{width:72px;height:48px;border-color:var(--cream-50);color:var(--cream-50)}
.mobile-menu .lang-trigger:hover,.mobile-menu .lang-switch.is-open .lang-trigger{background:var(--cream-50);color:var(--green)}
.mobile-menu .lang-menu{top:auto;right:auto;bottom:calc(100% + 9px);left:0;transform:translateY(5px)}
.mobile-menu .lang-switch.is-open .lang-menu{transform:translateY(0)}
