/**
 * Template "Ceste Regali" (Natale 2026).
 * Caricato solo su templates/template-ceste-regali.php.
 * Tutti i selettori sono confinati in .mdc-ceste per non interferire con Bootstrap 3,
 * che il tema carica globalmente: dove serve, le sue regole vengono neutralizzate.
 */

/* Base pagina: Bootstrap imposta html a 10px e romperebbe le unità rem */
html{font-size:100%;scroll-behavior:smooth}
body{margin:0;background:#F8F3E1}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mdc-ceste *{transition:none!important}}
html.mdc-modal-open{overflow:hidden}

.mdc-ceste{
  --bordeaux:#6E1410;
  --banner:#6b2d38;
  --rosso:#C4473A;
  --crema:#F8F3E1;
  --crema-2:#EFE6CC;
  --kraft:#B8895A;
  --inchiostro:#1C1917;
  --grigio:#5B5450;
  --bianco:#FFFDF7;
  --serif:"Fraunces", Georgia, "Times New Roman", serif;
  --sans:"Fira Sans Condensed", "Arial Narrow", Arial, sans-serif;
  --w:1120px;
  background:var(--crema);color:var(--inchiostro);font-family:var(--sans);font-size:1.125rem;line-height:1.5
}
.mdc-ceste *{box-sizing:border-box}
.mdc-ceste img{max-width:100%;height:auto;display:block}
.mdc-ceste a{color:var(--bordeaux)}
.mdc-ceste a:hover,.mdc-ceste a:focus{color:var(--bordeaux)}
.mdc-ceste :focus-visible{outline:3px solid var(--rosso);outline-offset:3px}
.mdc-ceste p{margin:1em 0}
.mdc-ceste ul{margin:1em 0}
.mdc-ceste .wrap{max-width:var(--w);margin:0 auto;padding:0 20px}
.mdc-ceste h1,.mdc-ceste h2,.mdc-ceste h3{font-family:var(--serif);font-weight:400;line-height:1.08;margin:0;letter-spacing:-.01em;color:inherit}
.mdc-ceste h1{font-size:2em}
.mdc-ceste h2{font-size:clamp(2rem,4.5vw,3rem)}
.mdc-ceste h3{font-size:1.17em}
.mdc-ceste .lead{font-size:1.25rem;max-width:62ch;color:var(--grigio);font-weight:400;line-height:1.5}

/* BANDA LOGHI (header) */
.mdc-ceste-band img{width:100%;height:auto;display:block}

/* HERO */
.mdc-ceste .hero{background:var(--banner);color:var(--crema);padding:56px 0 40px;overflow:hidden}
.mdc-ceste .hero-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:center}
.mdc-ceste .hero h1{font-size:clamp(2.6rem,6vw,4.6rem)}
.mdc-ceste .hero p{font-size:1.25rem;max-width:44ch;margin:20px 0 28px;color:#F1E3D6}
.mdc-ceste .hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.mdc-ceste .btn{display:inline-flex;align-items:center;gap:8px;font:700 1.1rem/1 var(--sans);padding:15px 22px;border-radius:6px;text-decoration:none;border:2px solid transparent;cursor:pointer;margin:0;white-space:normal;text-align:center;box-shadow:none;background-image:none}
.mdc-ceste .btn:focus{outline:0}
.mdc-ceste .btn:focus-visible{outline:3px solid var(--rosso);outline-offset:3px}
.mdc-ceste .btn-primary{background:var(--crema);color:var(--bordeaux);border-color:transparent}
.mdc-ceste .btn-primary:hover,.mdc-ceste .btn-primary:focus,.mdc-ceste .btn-primary:active{background:#fff;color:var(--bordeaux);border-color:transparent;box-shadow:none;text-decoration:none}
.mdc-ceste .btn-ghost{background:transparent;border-color:rgba(248,243,225,.5);color:var(--crema)}
.mdc-ceste .btn-ghost:hover,.mdc-ceste .btn-ghost:focus,.mdc-ceste .btn-ghost:active{background:transparent;border-color:var(--crema);color:var(--crema);box-shadow:none;text-decoration:none}
.mdc-ceste .hero-img{filter:drop-shadow(0 24px 30px rgba(0,0,0,.35))}

/* DEADLINE */
.mdc-ceste .deadline{background:var(--bianco);border-bottom:1px solid var(--crema-2);padding:72px 0 44px}
.mdc-ceste .deadline-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 40px;align-items:baseline;margin-bottom:28px}
.mdc-ceste .countdown{font-weight:700;font-size:1.2rem;color:var(--rosso)}
/* Nota sotto il titolo degli sconti: limita l'offerta alle confezioni standard */
.mdc-ceste .deadline-title h2{margin-bottom:0}
.mdc-ceste .deadline-note{margin:6px 0 0;font-size:1rem;color:var(--grigio)}
.mdc-ceste .track{display:grid;grid-template-columns:3fr 1fr 2fr;position:relative;margin-top:34px}
.mdc-ceste .s1{border-radius:6px 0 0 6px}
.mdc-ceste .s3{border-radius:0 6px 6px 0}
.mdc-ceste .seg{padding:16px 18px 18px;min-height:112px;display:flex;flex-direction:column;justify-content:space-between}
.mdc-ceste .seg b{font-size:clamp(2rem,4vw,2.8rem);line-height:1;font-weight:800}
.mdc-ceste .seg span{font-size:1rem}
.mdc-ceste .s1{background:var(--rosso);color:#fff}
.mdc-ceste .s2{background:#E3A79E;color:var(--inchiostro)}
.mdc-ceste .s3{background:var(--crema-2);color:var(--grigio)}
.mdc-ceste .seg.past{opacity:.35}
.mdc-ceste .today{position:absolute;top:-8px;bottom:0;width:3px;background:var(--inchiostro);left:0}
.mdc-ceste .today::after{content:"oggi";font-style:normal;position:absolute;top:-24px;left:-12px;font-size:.9rem;font-weight:700}
.mdc-ceste .extra{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px 28px;font-size:1.05rem;color:var(--grigio)}
.mdc-ceste .extra strong{color:var(--inchiostro)}

/* CASSETTE */
.mdc-ceste section{padding:72px 0}
.mdc-ceste .ceste-section{padding-top:0}
.mdc-ceste .intro-cassette{display:grid;grid-template-columns:1fr 1fr;gap:20px 48px;align-items:end;margin-bottom:36px}
.mdc-ceste .perks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mdc-ceste .perks li{padding-left:28px;position:relative}
.mdc-ceste .perks li::before{content:"";position:absolute;left:0;top:.55em;width:14px;height:8px;border-left:3px solid var(--rosso);border-bottom:3px solid var(--rosso);transform:rotate(-45deg)}
.mdc-ceste .ladder{display:grid;gap:14px}
.mdc-ceste .box{display:grid;grid-template-columns:280px 1fr auto;gap:8px 32px;align-items:center;background:var(--bianco);border:1px solid var(--crema-2);border-radius:10px;padding:18px 24px 18px 18px}
.mdc-ceste .box img{width:100%;aspect-ratio:16/10;object-fit:contain}
.mdc-ceste .box h3{font-size:1.9rem}
.mdc-ceste .box .desc{margin:6px 0 10px;color:var(--grigio);max-width:56ch}
.mdc-ceste .price{text-align:right;min-width:150px}
.mdc-ceste .price .list{font:800 2rem/1 var(--sans)}
.mdc-ceste .price .disc{display:block;margin-top:6px;font-size:1rem;color:var(--rosso);font-weight:700}
.mdc-ceste .price .disc:empty{display:none}
.mdc-ceste details summary{cursor:pointer;font-weight:700;color:var(--bordeaux);list-style:none;display:inline-flex;align-items:center;gap:6px}
.mdc-ceste details summary::-webkit-details-marker{display:none}
.mdc-ceste details summary::before{content:"+";display:inline-grid;place-items:center;width:22px;height:22px;border:2px solid currentColor;border-radius:50%;font-size:1rem;line-height:1}
.mdc-ceste details[open] summary::before{content:"–"}
.mdc-ceste details ul{margin:12px 0 4px;padding-left:20px;columns:2;column-gap:32px;font-size:1rem}
.mdc-ceste details li{break-inside:avoid;margin-bottom:4px}
.mdc-ceste details li em{color:var(--grigio)}

/* CONFEZIONI */
.mdc-ceste .conf{background:var(--bianco);border-top:1px solid var(--crema-2)}
.mdc-ceste .mdc-lead{font-size:1.25rem;max-width:62ch;color:var(--grigio)}
.mdc-ceste .mdc-conf-head{display:grid;grid-template-columns:1fr 1.2fr;gap:12px 48px;align-items:end;margin-bottom:28px}
.mdc-ceste .mdc-conf-head .mdc-lead{margin:0}
.mdc-ceste .mdc-conf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.mdc-ceste .mdc-conf-card{background:#fff;border:1px solid #EFE6CC;border-radius:10px;padding:16px 18px 18px}
.mdc-ceste .mdc-conf-img{height:150px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.mdc-ceste .mdc-conf-img img{max-height:150px;width:auto;max-width:100%;object-fit:contain}
.mdc-ceste .mdc-conf-card h3{font-family:var(--sans);font-weight:700;font-size:19px;line-height:1.2;margin:0;letter-spacing:0}
.mdc-ceste .mdc-conf-card p{margin:0;font-size:16px;color:#5B5450;line-height:1.4}
.mdc-ceste .mdc-conf-card .mdc-conf-price{font-weight:800;font-size:20px;color:#6E1410;margin:4px 0 6px}
@media (max-width:860px){
  .mdc-ceste .mdc-conf-head{grid-template-columns:1fr}
  .mdc-ceste .mdc-conf-grid{grid-template-columns:1fr 1fr}
  .mdc-ceste .mdc-conf-img{height:120px}
  .mdc-ceste .mdc-conf-img img{max-height:120px}
}
@media (max-width:480px){.mdc-ceste .mdc-conf-grid{grid-template-columns:1fr}}

/* SERVIZI */
.mdc-ceste .serv{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px 40px;margin-top:32px}
.mdc-ceste .serv h3{font-family:var(--sans);font-weight:700;font-size:1.25rem;margin-bottom:6px;letter-spacing:0}
.mdc-ceste .serv p{margin:0;color:var(--grigio)}
.mdc-ceste .mdc-fisco{margin-top:28px;padding:24px 28px;border-left:5px solid var(--rosso);background:var(--bianco);border-radius:0 8px 8px 0;max-width:820px}
.mdc-ceste .mdc-fisco h3{font-family:var(--sans);font-weight:700;font-size:1.3rem;margin-bottom:6px;letter-spacing:0}
.mdc-ceste .mdc-fisco p{margin:0}

/* CESTE */
.mdc-ceste .ceste{display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center;background:var(--bianco);border:1px solid var(--crema-2);border-radius:10px;padding:28px}
.mdc-ceste .ceste img{width:240px}
.mdc-ceste .ceste h2{font-size:2rem;margin-bottom:8px}
.mdc-ceste .ceste p{margin:0;color:var(--grigio)}

/* CONTATTI */
.mdc-ceste .contatti{background:var(--banner);color:var(--crema)}
.mdc-ceste .contatti h2{color:#fff}
.mdc-ceste .contatti p{margin:16px 0 0;color:#F1E3D6;max-width:none}
.mdc-ceste .c-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:28px}
.mdc-ceste .c-item{display:block;padding:22px;border:2px solid rgba(248,243,225,.35);border-radius:8px;color:var(--crema);text-decoration:none}
.mdc-ceste .c-item:hover,.mdc-ceste .c-item:focus{border-color:var(--crema);color:var(--crema);text-decoration:none}
.mdc-ceste .c-item b{display:block;font-size:1.4rem;color:#fff}
.mdc-ceste .c-item span{font-size:1rem;color:#E9D7C8}
.mdc-ceste .contatti .disclaimer{font-size:.9rem;color:#D8BDB0;margin:32px 0 0}

/* FOOTER LEGALE */
.mdc-ceste-footer{background:#000;color:#fff;text-align:center;padding:18px 20px}
.mdc-ceste .mdc-ceste-footer p{margin:0;font-size:.95rem}
.mdc-ceste .mdc-ceste-footer a,.mdc-ceste .mdc-ceste-footer a:hover,.mdc-ceste .mdc-ceste-footer a:focus{color:#fff}

/* MODALE MODULO */
.mdc-ceste .mdc-modal{width:min(720px,92vw);max-width:none;max-height:90vh;padding:0;border:0;border-radius:10px;background:var(--bianco);color:var(--inchiostro);box-shadow:0 24px 60px rgba(0,0,0,.35);overflow:hidden}
.mdc-ceste .mdc-modal[open]{display:flex;flex-direction:column}
.mdc-ceste .mdc-modal::backdrop{background:rgba(28,25,23,.6)}
.mdc-ceste .mdc-modal__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px 14px 24px;border-bottom:1px solid var(--crema-2)}
.mdc-ceste .mdc-modal__title{font-size:1.6rem}
.mdc-ceste .mdc-modal__close{flex:none;display:grid;place-items:center;width:40px;height:40px;padding:0;border:2px solid transparent;border-radius:50%;background:transparent;color:var(--bordeaux);font-size:2rem;line-height:1;cursor:pointer}
.mdc-ceste .mdc-modal__close:hover{border-color:currentColor}
.mdc-ceste .mdc-modal__body{flex:1 1 auto;overflow:auto;-webkit-overflow-scrolling:touch}
.mdc-ceste .mdc-modal__frame{display:block;width:100%;height:60vh;min-height:240px;border:0;background:var(--bianco)}
/* Caricamento del modulo: iframe nascosto e indicatore al centro */
.mdc-ceste .mdc-modal__body{position:relative}
.mdc-ceste .mdc-modal.is-loading .mdc-modal__frame{visibility:hidden}
.mdc-ceste .mdc-modal.is-loading .mdc-modal__body::after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border:4px solid var(--crema-2);border-top-color:var(--banner);border-radius:50%;animation:mdc-spin .8s linear infinite}
@keyframes mdc-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.mdc-ceste .mdc-modal.is-loading .mdc-modal__body::after{animation-duration:2.4s}}

/* BARRA MOBILE */
.mdc-ceste .mbar{display:none}
@media (max-width:860px){
  .mdc-ceste .hero-grid,.mdc-ceste .intro-cassette{grid-template-columns:1fr}
  .mdc-ceste .box{grid-template-columns:1fr;padding:16px}
  .mdc-ceste .box img{max-width:420px;margin:0 auto}
  .mdc-ceste .price{text-align:left;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
  .mdc-ceste .price .disc{display:inline;margin:0}
  .mdc-ceste .price .disc:empty{display:none}
  .mdc-ceste details ul{columns:1}
  .mdc-ceste .track{grid-template-columns:1fr}
  .mdc-ceste .seg{min-height:auto;flex-direction:row;align-items:baseline;gap:16px}
  .mdc-ceste .today{display:none}
  .mdc-ceste .ceste{grid-template-columns:1fr}
  .mdc-ceste .mbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:20;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:var(--banner);box-shadow:0 -4px 16px rgba(0,0,0,.2)}
  .mdc-ceste .mbar--single{grid-template-columns:1fr}
  .mdc-ceste .mbar a{justify-content:center;padding:13px}
  .mdc-ceste .mdc-modal{width:100vw;max-height:100vh;height:100%;border-radius:0}
  .mdc-ceste .mdc-modal__frame{height:calc(100vh - 70px)}
  body{padding-bottom:76px}
}
