/* ================================================================
   GicapriceScuola — Design system condiviso
   Turchese #0e8c99 + Corallo #ff6f5e · font Quicksand · stile kawaii
   Usato da: contatti, chi-siamo, faq, istruzioni (e pagine future)
   ================================================================ */
:root{
  --turch:#0e8c99; --turch-d:#0b7a85; --turch-l:#e7f6f2;
  --corallo:#f5850e; --corallo-d:#db7209; --corallo-vivo:#ffffff; --tint:#fff3e0;
  --dark:#1f3350; --testo:#20242e; --muted:#5a7089;
  --line:#eef1f5; --bg2:#f6f7f9;
  --sky1:#ffffff; --sky2:#e4f3fb; --sky3:#d3ecf8;
}
body{background:#eef0f2;}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Quicksand',sans-serif;font-weight:600;color:var(--testo);background:#fff;overflow-x:clip;}
h1,h2,h3{font-weight:700;letter-spacing:-.01em;line-height:1.12;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
.container{max-width:1040px;margin:0 auto;}
.sez{padding:clamp(42px,6vw,72px) 5%;}

/* ---- HEADER unico sticky: barra spedizione (pill bianche) + barra verde (menu) ---- */
.topbar{position:sticky;top:0;z-index:60;}
.util{background:#fff;display:flex;flex-wrap:wrap;gap:4px 0;justify-content:center;align-items:center;padding:7px 12px;border-bottom:1px solid #e6eef0;}
.util .up{color:var(--turch-d);font-weight:700;font-size:.78rem;padding:2px 18px;white-space:nowrap;position:relative;}
.util .up + .up::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:13px;background:#d7e3e6;}
.util .up b{color:var(--corallo-d);}

/* ---- BARRA VERDE (menu): logo · ricerca larga · link · azioni ---- */
.catbar{background:var(--turch);display:flex;align-items:center;gap:10px;padding:9px clamp(12px,3vw,40px);position:relative;overflow:hidden;box-shadow:0 4px 14px rgba(14,140,153,.18);}
.catbar::after{content:"";position:absolute;left:0;top:0;bottom:0;width:130px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shine 7s linear infinite;pointer-events:none;}
@keyframes shine{0%{transform:translateX(-160px)}55%,100%{transform:translateX(1900px)}}
.catbar .logo-cat{font-size:1.5rem;font-weight:700;color:#fff;white-space:nowrap;flex-shrink:0;position:relative;z-index:1;letter-spacing:-.01em;}
.catbar .logo-cat b{color:var(--corallo-vivo);}
.catbar .apri-cat{display:none;background:rgba(255,255,255,.14);color:#fff;border:1.5px solid rgba(255,255,255,.4);border-radius:999px;font-family:inherit;font-weight:700;font-size:1.1rem;padding:6px 14px;cursor:pointer;flex-shrink:0;position:relative;z-index:1;}
@keyframes pulseCat{0%,100%{box-shadow:0 0 0 0 rgba(255,111,94,.6)}50%{box-shadow:0 0 0 10px rgba(255,111,94,0)}}
.catbar .cerca-cat{flex:1;min-width:120px;background:#fff;border-radius:999px;display:flex;align-items:center;gap:8px;padding:9px 18px;cursor:pointer;position:relative;z-index:1;box-shadow:0 3px 10px rgba(0,0,0,.14);}
.catbar .cerca-cat .lente{font-size:1.05rem;flex-shrink:0;}
.catbar .cerca-cat .cerca-ph{flex:1;color:#8aa0b8;font-weight:600;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.catbar .cat-links{display:flex;align-items:center;gap:0;position:relative;z-index:1;flex-shrink:0;}
.catbar .cl{color:#fff;font-weight:600;font-size:.88rem;padding:7px 8px;white-space:nowrap;opacity:.92;transition:.15s;}
.catbar .cl:hover{opacity:1;color:#ffe0d8;}
.catbar .cl.act{opacity:1;color:#fff;font-weight:700;}
.catbar .cat-actions{display:flex;align-items:center;gap:10px;position:relative;z-index:1;flex-shrink:0;}
.crea-eti{background:var(--corallo);color:#fff;font-weight:700;font-size:.92rem;border-radius:999px;padding:9px 18px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;box-shadow:0 5px 16px rgba(255,111,94,.45);animation:pulseCat 2.3s ease-in-out infinite;transition:.16s;}
.crea-eti:hover{background:#fff;color:var(--corallo-d);transform:translateY(-2px) scale(1.04);animation:none;}
.cart-btn2{background:rgba(255,255,255,.15);color:#fff;border:1.5px solid rgba(255,255,255,.5);border-radius:999px;padding:9px 14px;font-family:inherit;font-weight:700;font-size:.9rem;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;transition:.15s;}
.cart-btn2:hover{background:#fff;color:var(--turch);}
.cart-btn2 .badge{background:var(--corallo);color:#fff;border-radius:999px;min-width:20px;height:20px;font-size:.72rem;display:flex;align-items:center;justify-content:center;padding:0 5px;margin-left:2px;}
@media(max-width:820px){
  .catbar{flex-wrap:wrap;padding-bottom:8px;}
  .catbar .apri-cat{display:inline-flex;align-items:center;order:1;margin-left:auto;}
  .catbar .logo-cat{order:0;}
  .catbar .cerca-cat{order:2;flex:1 0 100%;margin:4px 0;}
  .catbar .cat-links{order:3;flex:1 0 100%;justify-content:center;flex-wrap:wrap;gap:2px;}
  .catbar .cat-links .cl{padding:8px 10px;}
  .catbar .cat-actions{order:4;width:100%;padding:6px 0 0;justify-content:center;border-top:1px solid rgba(255,255,255,.16);}
  .crea-eti{flex:1;justify-content:center;}
}
@media(prefers-reduced-motion:reduce){.crea-eti,.catbar::after{animation:none;}}

/* ---- HERO di pagina ---- */
.page-hero{position:relative;overflow:hidden;text-align:center;padding:clamp(48px,7vw,72px) 6% clamp(42px,6vw,60px);
  background:linear-gradient(180deg,var(--sky1),var(--sky2));}
.page-hero .occhiello{display:inline-block;background:#fff;border:2px solid var(--turch);color:var(--turch-d);
  font-weight:700;font-size:.78rem;letter-spacing:1px;padding:6px 16px;border-radius:999px;margin-bottom:16px;}
.page-hero h1{font-size:clamp(2rem,4.6vw,3rem);color:var(--dark);}
.page-hero h1 .c{color:var(--corallo);}
.page-hero p{margin:14px auto 0;max-width:660px;font-size:clamp(1.02rem,1.5vw,1.18rem);color:var(--muted);line-height:1.55;}
.page-hero .deco{position:absolute;pointer-events:none;opacity:.9;animation:hsFloat 6s ease-in-out infinite;}
@keyframes hsFloat{0%,100%{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-14px) rotate(var(--r,0deg))}}

/* ---- titoli sezione ---- */
.sec-title{text-align:center;font-size:clamp(1.7rem,3vw,2.1rem);color:var(--dark);margin-bottom:8px;}
.sec-title .c{color:var(--corallo);}
.sec-sub{text-align:center;font-weight:600;color:var(--muted);max-width:680px;margin:0 auto 38px;line-height:1.5;}

/* ---- bottoni ---- */
.btn{display:inline-flex;align-items:center;gap:9px;background:var(--corallo);color:#fff;font-weight:700;font-size:1.02rem;
  padding:14px 30px;border-radius:999px;border:none;cursor:pointer;font-family:inherit;
  box-shadow:0 12px 26px rgba(255,111,94,.38);transition:transform .18s,box-shadow .18s;}
.btn:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(255,111,94,.48);}
.btn-line{background:#fff;color:var(--turch);border:2px solid var(--turch);box-shadow:none;}
.btn-line:hover{background:var(--turch);color:#fff;}

/* ---- card morbida ---- */
.card-soft{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;
  box-shadow:0 6px 20px rgba(20,40,60,.05);transition:transform .18s,box-shadow .18s;}
.card-soft:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(20,50,70,.1);}

/* ---- CTA finale ---- */
.cta-finale{text-align:center;}
.cta-finale h2{font-size:clamp(1.7rem,3vw,2.1rem);color:var(--dark);margin-bottom:10px;}
.cta-finale p{font-weight:600;color:var(--muted);margin-bottom:24px;}

/* ---- FOOTER ---- */
.site-foot{background:var(--turch);color:#cfeae7;padding:44px 6% 26px;text-align:center;line-height:1.7;margin-top:10px;}
.site-foot .lg{font-size:1.35rem;font-weight:700;color:#fff;margin-bottom:10px;}
.site-foot .lg b{color:#ffd9c2;}
.site-foot a{color:#eafffb;font-weight:700;}
.site-foot .flinks{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;margin:14px 0 6px;font-weight:600;}
.site-foot .flinks a{color:#dff6f2;font-weight:600;}
.site-foot .flinks a:hover{color:#fff;}
.site-foot .fine{border-top:1px solid rgba(255,255,255,.2);padding-top:18px;margin-top:18px;font-size:.82rem;font-weight:600;color:#bfe0dc;}

/* ---- sezione a fondo turchese ---- */
.band-turch{background:var(--turch);color:#fff;}
.band-turch .sec-title{color:#fff;}
.band-turch .sec-sub{color:#bfe6e2;}

/* ---- animazione scroll reveal ---- */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.9,.3,1);}
.reveal.in{opacity:1;transform:none;}
.reveal.d1{transition-delay:.08s;} .reveal.d2{transition-delay:.16s;} .reveal.d3{transition-delay:.24s;}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;} .page-hero .deco{animation:none;}}
