/* Copertina di Casa Liliana Premium Plus Icone */
:root { --ease:cubic-bezier(.2,.7,.2,1); }
/* ═══ HERO ═══ */
.v3-hero { --wm: clamp(60px, 12.4vw, 206px); position:relative; margin-top: var(--nav-h); height: clamp(470px, calc(100svh - var(--nav-h) - 262px), 760px); }
.v3-hero-media { position:absolute; inset:0; overflow:hidden; background:#cdb98a; }
.v3-hero-media img { position:absolute; left:0; top:-6%; width:100%; height:112%; object-fit:cover; object-position:center 52%; transform: scale(1.1); animation: v3kb 2.6s var(--ease) .1s forwards; will-change: transform; }
@keyframes v3kb { to { transform: scale(1); } }
.v3-hero-veil { position:absolute; inset:0; background: linear-gradient(180deg, rgba(14,18,28,.52) 0%, rgba(14,18,28,.18) 26%, rgba(14,18,28,0) 46%, rgba(14,18,28,.6) 100%); }
.v3-hero-cap { position:absolute; left: clamp(20px, 4vw, 60px); top: clamp(22px, 4.5vw, 54px); color:#fff; }
.v3-eyebrow { font-size:12px; font-weight:500; letter-spacing:.28em; text-transform:uppercase; opacity:.92; }
.v3-sub { font: italic 300 clamp(1.4rem, 2.6vw, 2.1rem)/1.2 var(--serif); margin-top:10px; text-shadow: 0 2px 18px rgba(0,0,0,.35); max-width: 16em; }
.v3-proof { position:absolute; right: clamp(20px, 4vw, 60px); top: clamp(22px, 4.5vw, 54px); display:inline-flex; align-items:center; gap:14px; color:#fff; text-decoration:none; font-size:12px; letter-spacing:.14em; text-transform:uppercase; font-weight:500; }
.v3-proof b { font: 400 1.5rem/1 'Bodoni Moda', var(--serif); letter-spacing:0; margin-right:6px; vertical-align:-2px; }
.v3-proof i { width:1px; height:18px; background: rgba(255,255,255,.5); }
.v3-proof:hover { text-decoration: underline; text-underline-offset:5px; }

.v3-wm { position:absolute; left:0; right:0; bottom:0; transform: translateY(50%); text-align:center; font: italic 400 var(--wm)/1 var(--display); letter-spacing:-.015em; white-space:nowrap; z-index:2; margin:0; opacity:0; animation: v3in 1.4s var(--ease) .35s forwards; }
@keyframes v3in { from { opacity:0; transform: translateY(calc(50% + 24px)); } to { opacity:1; transform: translateY(50%); } }
.v3-wm-a, .v3-wm-b { display:block; padding: 0 .08em; }
.v3-wm-a { color:#fff; clip-path: inset(0 0 50% 0); text-shadow: 0 4px 40px rgba(0,0,0,.25); }
.v3-wm-b { color: var(--blue); position:absolute; inset:0; clip-path: inset(50% 0 0 0); }

/* barra prenotazione */
.v3-bookwrap { padding: calc(var(--wm, 100px) * 0 + clamp(78px, 8.4vw, 124px) ) clamp(16px, 4vw, 48px) 0; max-width: 1040px; margin: 0 auto; }
.v3-book { display:grid; grid-template-columns: 1fr 1fr .8fr auto; align-items:stretch; background:#fff; border-radius: 14px; box-shadow: 0 18px 50px -20px rgba(26,58,107,.28), 0 0 0 1px rgba(26,24,22,.07); overflow:hidden; }
.v3-f { display:flex; flex-direction:column; justify-content:center; gap:4px; padding: 14px 22px; border-right:1px solid rgba(26,24,22,.09); min-width:0; cursor:pointer; }
.v3-l { font-size:10.5px; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color: var(--stone); }
.v3-in { font: 400 1.05rem var(--serif); color: var(--ink); border:0; background:transparent; padding:0; min-height: 28px; width:100%; color-scheme: light; }
.v3-in:focus-visible { outline:none; }
.v3-f:focus-within { background: var(--paper); }
.v3-gr { display:flex; align-items:center; gap:12px; min-height:28px; }
.v3-gb { width:28px; height:28px; border-radius:50%; border:1px solid rgba(26,24,22,.25); background:transparent; color:var(--ink); font-size:16px; line-height:1; cursor:pointer; transition: background .2s, border-color .2s; }
.v3-gb:hover { background: var(--ink); color:#fff; border-color: var(--ink); }
.v3-gn { font: 400 1.3rem var(--serif); min-width:18px; text-align:center; }
.v3-go { display:inline-flex; align-items:center; justify-content:center; gap:10px; border:0; background: var(--ocra); color: var(--ink); padding: 0 32px; font: 600 12px var(--sans); letter-spacing:.16em; text-transform:uppercase; cursor:pointer; transition: background .25s; min-height:64px; }
.v3-go:hover { background:#F2B23E; }
.v3-book-note { margin-top:16px; text-align:center; font-size:12.5px; color: var(--stone); line-height:1.7; }
.v3-book-note a { margin-left:10px; color: var(--blue); text-underline-offset:4px; font-weight:500; }


@media (max-width: 860px) {
  .v3-hero { --wm: clamp(54px, 16.5vw, 120px); height: clamp(420px, calc(100svh - var(--nav-h) - 300px), 600px); }
  .v3-proof { top:auto; bottom: calc(var(--wm) * .75); right:auto; left: 20px; font-size:11px; gap:10px; }
  .v3-proof b { font-size:1.2rem; }
  .v3-bookwrap { padding-top: calc(var(--wm, 60px) * 0 + 70px); }
  .v3-book { grid-template-columns: 1fr 1fr; }
  .v3-f { border-bottom:1px solid rgba(26,24,22,.09); padding:12px 16px; }
  .v3-g { grid-column: 1 / -1; border-right:0; flex-direction:row; align-items:center; justify-content:space-between; }
  .v3-go { grid-column: 1 / -1; min-height:56px; }
}

/* Copertina ad arco: camera matrimoniale con filetto ocra */
.v3-hero-media { background:#F4F0E8; display:flex; justify-content:center; align-items:flex-start; padding-top:18px; }
.v3-hero-media img.v3-arch { position:static; animation:none; transform:none; width:min(400px,70vw); height:calc(100% - 112px); border-radius:999px 999px 0 0; object-fit:cover; object-position:center 60%; box-shadow:0 30px 60px -30px rgba(26,58,107,.5); outline:1.5px solid var(--ocra); outline-offset:9px; }
.v3-wm-a { color:var(--blue); text-shadow:none; }
.v3-hero-cap, .v3-proof { color:var(--ink); }
.v3-sub { text-shadow:none; }
.v3-proof i { background:rgba(26,24,22,.3); }
.v3-proof { min-height:44px; }
.v3-book-note { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:0 10px; }
.v3-book-note a { display:inline-flex; align-items:center; min-height:44px; }
.v3-gb { width:44px; height:44px; font-size:18px; }
@media (max-width: 860px) {
  .v3-hero-media { padding-top:112px; }
  .v3-hero-media img.v3-arch { width:min(250px,64vw); height:calc(100% - 100px); outline-offset:8px; }
}
@media (max-width: 480px) {
  .site-nav { padding:0 6px 0 12px; }
  .logo-img { height:30px; }
  .nav-right { gap:6px; }
  .nav-book { padding:0; width:44px; min-width:44px; justify-content:center; }
  .nav-book span { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
}
@media (prefers-reduced-motion: reduce) { .v3-wm { animation:none; opacity:1; transform:translateY(50%); } }

/* Voti in alto a destra, con i loghi */
.v3-proof { gap:16px; text-transform:none; letter-spacing:0; font-weight:400; }
.v3-proof .vp { display:inline-flex; align-items:center; gap:9px; }
.v3-proof .vp img { height:22px; width:auto; display:block; }
.v3-proof b { margin:0; font:400 1.95rem/1 'Bodoni Moda', var(--serif); font-variant-numeric:lining-nums; }
.v3-proof small { font-size:12px; color:var(--stone); margin-left:-4px; }
.v3-proof i { height:22px; }
@media (max-width: 860px) {
  .v3-proof { gap:12px; left:16px; }
  .v3-proof .vp { gap:6px; }
  .v3-proof .vp img { height:15px; }
  .v3-proof b { font-size:1.35rem; }
  .v3-proof small { font-size:11px; margin-left:-2px; }
}
