/* YAVENO · pagine interne (listino, cosa compri, aziende, alberghi, contatti, privacy, 404) · 15/10
   Stanno sopra site.css e finiture.css: stesse carte, stessi colori, la stessa intestazione della home. */

/* ---------- fascia in alto ---------- */
.pg-hero{background:var(--stage);color:var(--white);padding:clamp(124px,14vw,188px) var(--g) clamp(48px,6vw,88px)}
.pg-hero-in{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:32px clamp(32px,5vw,72px);align-items:end}
.pg-hero-in.solo{grid-template-columns:minmax(0,1fr)}
.pg-eyebrow{font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--muted-dark);margin-bottom:20px}
.pg-hero h1{font-size:clamp(42px,6.2vw,104px);letter-spacing:-.045em;line-height:.95;text-wrap:balance}
.pg-lead{font-size:clamp(18px,1.5vw,22px);color:#d3dade;max-width:42ch;margin-top:26px}
.pg-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.pg-hero .btn-ghost{border-color:rgba(255,255,255,.45)}
@media (hover:hover){.pg-hero .btn-ghost:hover{background:rgba(255,255,255,.08)}}
.pg-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pg-prices a{display:flex;flex-direction:column;gap:8px;text-decoration:none;border:1px solid var(--line-dark);border-radius:14px;padding:18px 16px 16px;background:rgba(255,255,255,.03);min-height:44px}
.pg-prices a span{font-size:15px;color:var(--muted-dark)}
.pg-prices a strong{font-weight:400;font-size:clamp(20px,1.8vw,26px);letter-spacing:-.04em;line-height:1;white-space:nowrap}
.pg-prices a:nth-child(2){border-color:rgba(255,255,255,.55)}
@media (hover:hover){.pg-prices a:hover{background:rgba(255,255,255,.08)}}
.pg-prices-note{grid-column:1/-1;font-size:14px;color:var(--muted-dark)}
.pg-fig{margin:0;border-radius:16px;overflow:hidden;border:1px solid var(--line-dark);background:#0b0f14}
.pg-fig img{width:100%;aspect-ratio:4/3;object-fit:cover}
.pg-fig figcaption{padding:12px 16px;font-size:13px;color:var(--muted-dark)}

/* ---------- sezioni ---------- */
.pg-sec{padding:clamp(72px,8vw,120px) var(--g)}
.pg-sec.alt{background:var(--surface);border-top:1px solid var(--line)}
.pg-sec .section-head{margin-bottom:clamp(32px,4vw,56px)}
.pg-sec .section-head h2{font-size:clamp(36px,4.8vw,80px)}
.pg-cards{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}
.pg-card{border:1px solid var(--line);border-radius:var(--r);padding:28px;background:var(--white)}
.pg-card h3{font-size:clamp(22px,2vw,28px);letter-spacing:-.03em;line-height:1.08;margin-bottom:12px}
.pg-card p{color:#3b4045;font-size:16px}
.pg-card p+p{margin-top:10px}
.pg-card a{font-weight:500;text-underline-offset:4px}
.pg-two{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px clamp(32px,5vw,72px);align-items:center}
.pg-two h3{font-size:clamp(28px,3vw,46px);letter-spacing:-.04em;line-height:1;margin-bottom:16px}
.pg-two p{color:#3b4045;max-width:46ch}
.pg-two p+p{margin-top:12px}
.pg-two .pg-cta{margin-top:24px}
.pg-two .pg-fig{border-color:var(--line);background:var(--surface)}
.pg-two .pg-fig figcaption{color:var(--muted)}
.pg-note{max-width:var(--max);margin:24px auto 0;font-size:14px;color:var(--muted)}
.pg-mini{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pg-mini a{display:flex;flex-direction:column;gap:8px;text-decoration:none;border:1px solid var(--line);border-radius:var(--r);padding:24px 24px 22px;background:var(--white);min-height:44px}
.pg-mini a span{font-size:15px;color:var(--muted)}
.pg-mini a strong{font-weight:400;font-size:clamp(34px,3.4vw,52px);letter-spacing:-.045em;line-height:1}
.pg-mini a small{font-size:15px;color:#3b4045}
.pg-mini a:nth-child(2){border:2px solid var(--ink)}
@media (hover:hover){.pg-mini a:hover{background:var(--surface)}}
.pg-link{max-width:var(--max);margin:24px auto 0}
.pg-link a{font-weight:500;text-underline-offset:4px}

/* ---------- passi ---------- */
.pg-steps{max-width:var(--max);margin:0 auto;padding:0;list-style:none;counter-reset:pgs;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 24px}
.pg-step{counter-increment:pgs;border-top:2px solid var(--ink);padding-top:18px}
.pg-step::before{content:counter(pgs,decimal-leading-zero);display:block;font-size:14px;color:var(--muted);margin-bottom:10px}
.pg-step h3{font-size:clamp(26px,2.4vw,36px);letter-spacing:-.035em;margin-bottom:12px}
.pg-step p{font-size:16px;color:#3b4045}
.pg-step .step-you{margin-top:12px;color:var(--ink)}
.pg-step .step-you span{font-weight:500;color:var(--ink)}

/* ---------- confronto dei tre siti ---------- */
.compare{max-width:var(--max);margin:0 auto;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--white)}
.compare:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.compare table{width:100%;min-width:640px;border-collapse:collapse;font-size:16px}
.compare th,.compare td{padding:16px 20px;text-align:left;vertical-align:top;border-top:1px solid var(--line)}
.compare thead th{border-top:0;font-weight:500;font-size:20px;letter-spacing:-.02em;vertical-align:bottom}
.compare thead th span{display:block;font-weight:400;font-size:15px;letter-spacing:0;color:var(--muted);margin-top:4px}
.compare tbody th{font-weight:500;width:34%}
.compare td{color:#3b4045}
.compare td.no{color:var(--muted)}
.compare thead th:nth-child(3),.compare tbody td:nth-child(3){background:#f6f7f7}
.compare-hint{max-width:var(--max);margin:0 auto 10px;font-size:14px;color:var(--muted)}

/* ---------- listino: aggiunte e Cura ---------- */
.prices .offer-link{margin-top:24px}
.care+.extras-pg{padding-top:0}
.extras-pg .extra{grid-template-columns:minmax(0,1.6fr) minmax(0,.6fr)}
.extras-pg .extra p a,.extras-pg .extra-note a{font-weight:500;text-underline-offset:4px}
.extra-frame{display:flex;align-items:stretch;width:min(100%,380px);height:262px;margin:18px 0 0;padding:24px 24px 0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:24px}
.extra-frame .qr-flow{flex:1;display:flex;align-items:center;gap:clamp(6px,.9vw,12px);min-width:0}
.extra-frame .qr-card{flex:0 1 84px;min-width:0;width:84px;height:auto;display:block}
.extra-frame .qr-arrow{flex:0 0 auto;width:22px;height:auto;color:var(--ink)}
.extra-frame .qr-phone{position:relative;flex:1 1 0;min-width:0;max-width:176px;margin-left:auto;align-self:stretch;overflow:hidden;background:#fff;border:6px solid #16181a;border-bottom:0;border-radius:28px 28px 0 0;box-shadow:0 18px 30px -18px rgba(22,24,26,.5)}
.extra-frame .qr-phone img{position:absolute;left:0;top:0;display:block;width:100%;height:auto;min-height:100%;object-fit:cover;object-position:top}
@media (max-width:759px){
  .extra-frame{height:250px;padding:20px 16px 0}
  .extra-frame .qr-card{flex-basis:70px;width:70px}
  .extra-frame .qr-arrow{width:clamp(14px,4vw,22px)}
  .extra-frame .qr-phone{max-width:150px}
}
.extra-try{margin-top:0}
.extra-try a{display:inline-flex;align-items:center;min-height:44px;font-weight:500;text-underline-offset:4px}
.pg-quote{max-width:var(--max);margin:clamp(32px,4vw,56px) auto 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px 48px;border:1px solid var(--line);border-radius:var(--r);padding:clamp(24px,3vw,36px);background:var(--surface)}
.pg-quote h3{font-size:clamp(24px,2.4vw,34px);letter-spacing:-.03em;line-height:1.05}
.pg-quote ul{margin:0;padding:0 0 0 20px;color:#3b4045}
.pg-quote li{padding:3px 0}
.pg-quote p{grid-column:1/-1;color:#3b4045}
.pg-faq{max-width:var(--max);margin:0 auto}
.pg-faq .faq{margin-top:0}

/* ---------- il Concierge, con la prova (era nella home) ---------- */
.s-ai{scroll-margin-top:12px}

/* ---------- contatti ---------- */
.contact-page{padding-top:clamp(124px,14vw,188px)}
.contact-page h1{font-size:clamp(46px,6.8vw,116px);letter-spacing:-.045em;line-height:.94;margin-bottom:28px;text-wrap:balance}
.pg-ways{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pg-ways .pg-card address{font-style:normal;color:#3b4045;font-size:16px}

/* ---------- testi lunghi (privacy) ---------- */
.pg-prose{max-width:calc(var(--max) + 2 * var(--g));margin:0 auto;padding:clamp(48px,6vw,88px) var(--g);box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);justify-items:start}
.pg-prose>*{max-width:72ch;width:100%}
.pg-prose h2{font-size:clamp(26px,2.6vw,36px);letter-spacing:-.035em;line-height:1.08;margin:clamp(36px,4vw,56px) 0 14px}
.pg-prose h2:first-child{margin-top:0}
.pg-prose p,.pg-prose li{color:#2c3135;font-size:17px;line-height:1.6}
.pg-prose p+p{margin-top:12px}
.pg-prose ul{margin:12px 0 0;padding:0 0 0 22px}
.pg-prose li{padding:4px 0}
.pg-prose a{text-underline-offset:4px;font-weight:500}
.pg-box{border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:24px 26px}
.pg-box h2{margin-top:0!important}
.pg-date{margin-top:40px;font-size:14px;color:var(--muted)}

/* ---------- 404 ---------- */
.pg-lost{display:grid;gap:10px;margin-top:32px;max-width:420px}
.pg-lost a{display:flex;align-items:center;min-height:48px;padding:0 18px;border:1px solid var(--line-dark);border-radius:12px;text-decoration:none}
@media (hover:hover){.pg-lost a:hover{background:rgba(255,255,255,.08)}}

/* ---------- schermi stretti ---------- */
@media (max-width:1080px){
  .pg-hero-in{grid-template-columns:minmax(0,1fr)}
  .pg-two{grid-template-columns:minmax(0,1fr)}
  .pg-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg-quote{grid-template-columns:minmax(0,1fr)}
  .pg-ways{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .pg-mini{grid-template-columns:minmax(0,1fr)}
  .extras-pg .extra{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .pg-steps{grid-template-columns:minmax(0,1fr)}
  .pg-prices{gap:8px}
  .pg-prices a{padding:12px 12px 12px;gap:6px;border-radius:12px}
  .pg-prices a span{font-size:13px}
  .pg-prices a strong{font-size:clamp(17px,5.4vw,22px)}
  .pg-cta .btn{width:100%}
  .pg-card{padding:22px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
