/* Carpi Suite — pagine editoriali: Scopri Carpi e Contatti
   Header, menu, footer, pulsanti e banner disponibilità sono globali (global.css, disponibilita.css).
   Qui solo le sezioni editoriali di queste pagine. */

/* ───────── Base tipografica delle pagine editoriali ───────── */
:root{--blush:#F8F4F4;--blush-2:#F5ECEC}
button{font:inherit;color:inherit}
ul,ol{list-style:none}
.ic{width:1em;height:1em;fill:currentColor;flex:none;display:inline-block}
h1,h2,h3{font-family:'Clash Display','Manrope',sans-serif;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
h2{font-size:clamp(1.9rem,4.8vw,3.1rem);line-height:1.08}
h2 em,h1 em,h3 em{font-style:normal;color:var(--brand-light)}
a:focus-visible,button:focus-visible{outline:3px solid var(--brand-light);outline-offset:3px}
/* comparsa allo scroll (js/appartamento.js aggiunge .in) */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}}

.sc-sec{padding:clamp(70px,9vw,112px) 0}
.sc-blush{background:var(--blush,#F8F4F4)}
.sc-head{max-width:62ch;margin:0 auto clamp(40px,5vw,64px);text-align:center}
.sc-head h2{margin:0 0 16px}
.sc-head p{font-size:1.08rem;color:var(--muted)}
.sc-head-left{text-align:left;margin:0 0 30px}
.sc-sub-h{font-size:1.5rem;margin:clamp(48px,6vw,80px) 0 26px;text-align:left}



/* ───────── Da vedere: schede grandi ───────── */
.sc-feat{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center;padding:clamp(20px,3vw,36px) 0}
.sc-feat.flip{grid-template-columns:1fr 1.1fr}
.sc-feat.flip .sc-feat-ph{order:2}
.sc-feat-ph{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;background:#e8e0e0}
.sc-feat-ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.sc-feat:hover .sc-feat-ph img{transform:scale(1.04)}
.sc-feat-tx h3{font-size:clamp(1.8rem,3.2vw,2.6rem);line-height:1.1;margin-bottom:16px}
.sc-feat-tx h3 em{font-style:normal;color:var(--brand-light)}
.sc-feat-tx>p{font-size:1.06rem;color:rgba(17,17,17,.82);max-width:50ch}
.sc-facts{list-style:none;margin-top:22px;display:grid;gap:10px}
.sc-facts li{display:flex;gap:12px;font-size:.95rem;font-weight:500;color:var(--ink)}
.sc-facts li::before{content:"✽";color:var(--brand-light);flex:none}

/* ───────── E ancora ───────── */
.sc-more{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sc-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 26px 28px;
  transition:transform .3s,box-shadow .3s,border-color .3s;
}
.sc-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(17,17,17,.08);border-color:rgba(115,15,45,.25)}
.sc-card h3{font-size:1.2rem;margin-bottom:8px}
.sc-card p{font-size:.96rem;color:var(--muted);line-height:1.6}


/* ───────── A tavola ───────── */
.sc-food{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 22px}
.sc-dish-ph{
  position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;background:#e8e0e0;margin-bottom:18px;
}
.sc-dish-ph img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.sc-dish:hover .sc-dish-ph img{transform:scale(1.04)}
.sc-dish-ph.is-empty{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  background:repeating-linear-gradient(135deg,#efe6e6 0 14px,#f5eded 14px 28px);
  border:1.5px dashed rgba(115,15,45,.28);color:var(--brand-light);
}
.sc-dish-ph.is-empty .ic{font-size:2rem}
.sc-dish-ph.is-empty span{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.sc-dish h3{font-size:1.3rem;margin-bottom:6px}
.sc-dish p{color:var(--muted);font-size:1rem;max-width:46ch}
.sc-credits{margin-top:26px;font-size:.8rem;color:var(--muted)}
.sc-credits a{text-decoration:underline;text-underline-offset:2px}


/* ───────── Dintorni ───────── */
.sc-around{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(32px,6vw,88px);align-items:stretch}
/* la foto copre in altezza tutta l'area testuale; la didascalia sta sotto, a filo con l'ultima riga */
.sc-around-ph{position:relative;min-height:340px}
.sc-around-ph img{position:absolute;left:0;top:0;width:100%;height:calc(100% - 38px);object-fit:cover;object-position:42% center;border-radius:var(--radius);background:#e8e0e0}
.sc-around-ph figcaption{position:absolute;left:0;bottom:0;font-size:.88rem;line-height:1.2;color:var(--muted)}
.sc-cities{list-style:none}
.sc-city{padding:20px 0;border-top:1px solid var(--line)}
.sc-city:last-child{border-bottom:1px solid var(--line)}
.sc-city-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:4px}
.sc-city h3{font-size:1.3rem}
.sc-km{font-size:.82rem;font-weight:700;letter-spacing:.06em;color:var(--brand);background:var(--blush,#F8F4F4);padding:5px 12px;border-radius:999px;white-space:nowrap}
.sc-city p{font-size:.98rem;color:var(--muted);max-width:38ch}   /* resta sotto il titolo, non arriva sotto il tag dei km */
.sc-note-dark{margin:16px 0 0;font-size:.86rem;color:var(--muted)}

/* ───────── Come arrivare ───────── */
.sc-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sc-how-card{background:#fff;border-radius:var(--radius);padding:30px 28px 32px;border:1px solid var(--line)}
.sc-how-card .ic{font-size:1.9rem;color:var(--brand-light);margin-bottom:16px;display:block}
.sc-how-card h3{font-size:1.25rem;margin-bottom:8px}
.sc-how-card p{font-size:.98rem;color:var(--muted)}
.sc-how-card a{color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* ───────── Responsive ───────── */
@media(max-width:1000px){
  .sc-more,.sc-bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sc-around{grid-template-columns:1fr}
  .sc-around-ph{min-height:0;height:min(420px,70vw)}
  .sc-how{grid-template-columns:1fr}
}
@media(max-width:760px){
  .sc-feat,.sc-feat.flip{grid-template-columns:1fr;gap:22px;padding:18px 0}
  .sc-feat.flip .sc-feat-ph{order:0}
}
@media(max-width:560px){
  .sc-more,.sc-bento{grid-template-columns:1fr}
}

/* ───────── Contatti ───────── */
/* 3 card bianche a cavallo tra hero e sezione successiva (metà sopra, metà sotto) */
.ct-over{position:relative;z-index:5;margin:-64px 0 -64px}
.ct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ct-card{
  display:flex;align-items:center;gap:20px;padding:34px 32px;border-radius:var(--radius);
  background:#fff;box-shadow:0 18px 50px rgba(17,17,17,.16);
  transition:transform .25s;
}
.ct-card:hover{transform:translateY(-3px)}
.ct-card .ic{font-size:2.1rem;color:var(--brand-light);flex:none}
.ct-card small{display:block;font-size:.78rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);line-height:1.3;margin-bottom:4px}
.ct-card strong{display:block;font-family:'Clash Display',sans-serif;font-weight:500;font-size:1.5rem;line-height:1.2;color:var(--ink)}

/* dove siamo: a "S" — mappa + testo, poi testo + mappa */
.ct-row{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(28px,5vw,72px);align-items:center;margin-top:clamp(28px,4vw,48px)}
.ct-row.flip{grid-template-columns:1fr 1.25fr}
.ct-row.flip .ct-map{order:2}
.ct-row > *{min-width:0}
.ct-map{
  width:100%;min-width:0;position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:16/10;min-height:320px;
  background:#efe9e9;border:1px solid var(--line);
}
.ct-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ct-tx h3{font-size:1.6rem;margin-bottom:8px}
.ct-tx p{color:var(--ink);font-size:1.05rem}
.ct-tx .ct-dist{color:var(--muted);font-size:.98rem;margin:4px 0 22px}
@media(max-width:900px){
  .ct-row,.ct-row.flip{grid-template-columns:1fr}
  .ct-row.flip .ct-map{order:0}
  .sc-food{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){.sc-food{grid-template-columns:1fr}}

/* sezione "Come arrivare": sfondo borgogna */
.sc-burg{background:var(--brand)}
.sc-burg .sc-head h2{color:#fff}
.sc-burg .sc-head h2 em{color:var(--pink)}
@media(max-width:900px){
  .ct-over{margin:-48px 0 0}
  .ct-grid{grid-template-columns:1fr;gap:12px}
}

/* "E ancora": card bianche su sfondo borgogna, con il fiore ✽ del sito */
.sc-burg .sc-more{gap:18px}
.sc-burg .sc-card{
  background:#fff;border:0;padding:30px 28px 32px;
}
.sc-burg .sc-card::before{content:"✽";display:block;font-size:1.5rem;line-height:1;color:var(--brand-light);margin-bottom:16px}
.sc-burg .sc-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,.22)}
.sc-burg .sc-card h3{color:var(--ink);font-size:1.3rem}
.sc-burg .sc-card p{color:var(--muted)}
.sc-burg .sc-head p{color:rgba(250,250,248,.8)}
.sc-head h2{text-wrap:balance}
#e-ancora .sc-head{max-width:820px}

/* Contatti: "Dove siamo" più in basso rispetto alle card in overlay */
#dove-siamo{padding-top:clamp(120px,13vw,170px)}

/* "Come arrivare": marchio del logo come filigrana opacizzata */
#come-arrivare{position:relative;overflow:hidden}
#come-arrivare::before{
  /* marchio grande, a destra, che sborda a destra e in basso (nessun margine) */
  content:"";position:absolute;right:-12%;bottom:-20%;width:min(980px,92vw);aspect-ratio:31/20.7;pointer-events:none;
  opacity:.08;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='10 10.3 31 20.7'%3E%3Cpath fill='%23FAFAF8' d='M24.8515 10.5755L10.1451 19.0277C10.0549 19.0797 10 19.1749 10 19.2782V30.7778H14.3661V21.7895C14.3661 21.6862 14.4217 21.5911 14.5113 21.5391L25.3364 15.3154C25.4266 15.2634 25.5371 15.2634 25.6266 15.3154L36.4517 21.5391C36.5419 21.5911 36.5969 21.6862 36.5969 21.7895V30.7778H40.963V19.2782C40.963 19.1749 40.9074 19.0797 40.8178 19.0277L26.1115 10.5755C25.7222 10.3514 25.2414 10.3514 24.8515 10.5755Z'/%3E%3Cpath fill='%23FAFAF8' d='M27.5038 30.7778H23.4958L23.468 23.6596L25.1349 22.7131C25.3499 22.5916 25.6131 22.5916 25.828 22.7117L27.4767 23.6434L27.5038 30.7778Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}
#come-arrivare > .container{position:relative;z-index:1}

/* "E ancora": bento — due card larghe (foto + due luoghi) e due singole */
.sc-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sc-burg .sc-wide{grid-column:span 2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;padding:18px;align-items:stretch}
.sc-burg .sc-wide.flip{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.sc-burg .sc-wide.flip .sc-ph{order:2}
.sc-burg .sc-wide::before{display:none}
.sc-wide-tx{display:flex;flex-direction:column;justify-content:flex-start;padding:12px 10px 12px 6px}   /* testo in alto, come nelle schede piccole */
.sc-ent + .sc-ent{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.sc-ent::before{content:"✽";display:block;font-size:1.3rem;line-height:1;color:var(--brand-light);margin-bottom:12px}
.sc-burg .sc-wide-tx .sc-ent::before{font-size:1.5rem;margin-bottom:16px}   /* fiore identico alle schede piccole */
.sc-burg .sc-ent h3{color:var(--ink);font-size:1.3rem;margin-bottom:6px}
.sc-burg .sc-ent p{color:var(--muted);font-size:.96rem;line-height:1.6}
.sc-ph{position:relative;margin:0;min-height:260px;border-radius:calc(var(--radius) - 4px);overflow:hidden;background:#efe6e6}
.sc-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sc-ph.is-empty{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:16px;
  background:repeating-linear-gradient(135deg,#efe6e6 0 14px,#f5eded 14px 28px);
  border:1.5px dashed rgba(115,15,45,.28);color:var(--brand-light);
}
.sc-ph.is-empty .ic{font-size:2rem}
.sc-ph.is-empty span{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:1000px){
  .sc-burg .sc-wide,.sc-burg .sc-wide.flip{grid-column:1 / -1}
}
@media(max-width:760px){
  .sc-burg .sc-wide,.sc-burg .sc-wide.flip{grid-template-columns:1fr;gap:18px}
  .sc-burg .sc-wide.flip .sc-ph{order:0}
  .sc-ph{min-height:200px}
}

/* ───────── Alloggi per aziende (pagina testuale) ───────── */
.az-prose{max-width:820px}
.az-prose h2{margin:0 0 20px}
.az-prose h2 em{color:var(--brand-light)}
.az-prose h3{font-size:1.2rem;margin:26px 0 8px}
.az-prose p{font-size:1.06rem;line-height:1.75;color:var(--muted);margin-bottom:16px}
.az-prose p a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.az-list{list-style:none;display:grid;gap:12px;margin-top:6px}
.az-list li{display:flex;gap:12px;font-size:1.04rem;line-height:1.6;color:var(--ink)}
.az-list li::before{content:"✽";color:var(--brand-light);flex:none}
.az-steps{list-style:none;counter-reset:az;display:grid;gap:18px}
.az-steps li{counter-increment:az;position:relative;padding-left:52px;font-size:1.06rem;line-height:1.7;color:var(--muted)}
.az-steps li::before{content:counter(az);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700}
.az-steps strong{display:block;color:var(--ink);font-size:1.12rem}
/* banner "richiedi un preventivo": stesso impianto del banner di prenotazione */
.cta-avail .quote-form{
  display:grid;gap:16px;background:#F8F4F4;border-radius:var(--radius);padding:28px 30px;align-self:stretch;align-content:space-between;
}
.quote-alt{margin:0;text-align:center;font-size:.92rem;color:var(--muted)}
.quote-alt a{color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.cta-quote .cs-left h2{margin-bottom:18px}
.cta-quote .cd-sub{font-size:1.08rem;line-height:1.6;color:var(--muted);max-width:42ch}
.quote-form .btn{width:100%;height:56px;justify-content:center;margin:0}
.quote-form .btn .arr{width:18px;height:18px;flex:none}
@media(max-width:900px){.cta-quote .cta-box.cta-split{grid-template-columns:1fr}}

/* bento "E ancora": colonne su tablet e mobile (dopo la regola base, che altrimenti vince) */
@media(max-width:1000px){.sc-bento{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sc-bento{grid-template-columns:1fr}}
