/* Testata e piè di pagina comuni del sito Panterarosa BilinGreen® School.
   Tutte le classi hanno il prefisso pr- per non interferire con lo stile delle singole pagine. */
@font-face{font-family:"Mulish";font-style:normal;font-display:swap;font-weight:200 1000;src:url(../fonts/mulish-var.woff2) format("woff2")}
@font-face{font-family:"Fraunces";font-style:normal;font-display:swap;font-weight:100 900;src:url(../fonts/fraunces-var.woff2) format("woff2")}
@font-face{font-family:"Fraunces";font-style:italic;font-display:swap;font-weight:100 900;src:url(../fonts/fraunces-var-italic.woff2) format("woff2")}

.pr-hd,.pr-hd *,.pr-ft,.pr-ft *,.pr-skip{box-sizing:border-box;margin:0;padding:0;letter-spacing:normal;text-transform:none;text-shadow:none}
.pr-hd,.pr-ft{font-family:"Mulish",system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-align:left}
.pr-hd ul,.pr-ft ul{list-style:none}
.pr-hd a,.pr-ft a{text-decoration:none;color:inherit;border:0;background:none}
.pr-hd img,.pr-ft img{display:block;max-width:100%;height:auto}
.pr-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* salta al contenuto */
.pr-skip{position:fixed;left:12px;top:-60px;z-index:10000;background:#173d29;color:#fff;font:700 15px/1 "Mulish",system-ui,sans-serif;padding:14px 18px;border-radius:10px;transition:top .2s}
.pr-skip:focus{top:12px;outline:3px solid #f4c430;outline-offset:2px}

/* TESTATA */
.pr-hd{position:sticky;top:0;z-index:900;background:rgba(251,246,239,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid #ece2d8;color:#2b2326}
.pr-hd__in{max-width:1200px;margin:0 auto;padding:0 24px;height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.pr-brand{display:inline-flex;align-items:center;min-height:44px;flex:none}
.pr-brand img{height:42px;width:auto}
.pr-nav{display:flex;align-items:center;gap:14px}
.pr-mark{display:none}
.pr-nav ul{display:flex;align-items:center;gap:4px}
.pr-nav li a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;white-space:nowrap;font-size:15px;font-weight:600;color:#3c3236;border-radius:10px;transition:color .2s,background .2s}
.pr-nav li a:hover{color:#9c1448;background:#fbeef4}
.pr-nav li a[aria-current="page"]{color:#9c1448;box-shadow:inset 0 -2px 0 #c2185b;border-radius:0}
.pr-hd .pr-cta{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;background:#c2185b;color:#fff!important;font-weight:800;font-size:14.5px;white-space:nowrap;box-shadow:0 8px 20px -10px rgba(194,24,91,.65);transition:transform .2s,background .2s}
.pr-hd .pr-cta:hover{background:#9c1448;transform:translateY(-1px)}
.pr-hd .pr-cta svg{width:16px;height:16px}
.pr-burger{display:none;width:46px;height:46px;border:0;border-radius:12px;background:#fbeef4;color:#9c1448;cursor:pointer;align-items:center;justify-content:center;flex:none}
.pr-burger span.pr-l{display:block;width:20px;height:2px;background:currentColor;border-radius:2px;position:relative}
.pr-burger span.pr-l::before,.pr-burger span.pr-l::after{content:"";position:absolute;left:0;width:20px;height:2px;background:currentColor;border-radius:2px;transition:transform .25s}
.pr-burger span.pr-l::before{top:-6px}.pr-burger span.pr-l::after{top:6px}
.pr-burger[aria-expanded="true"] span.pr-l{background:transparent}
.pr-burger[aria-expanded="true"] span.pr-l::before{transform:translateY(6px) rotate(45deg)}
.pr-burger[aria-expanded="true"] span.pr-l::after{transform:translateY(-6px) rotate(-45deg)}
.pr-hd :focus-visible,.pr-ft :focus-visible{outline:3px solid #c2185b;outline-offset:3px;border-radius:8px}

@media (max-width:1180px){
  .pr-burger{display:inline-flex}
  .pr-nav{position:absolute;left:0;right:0;top:72px;flex-direction:column;align-items:stretch;gap:14px;padding:14px 20px 22px;background:#fbf6ef;border-bottom:1px solid #ece2d8;box-shadow:0 20px 40px -24px rgba(43,35,38,.35);visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility 0s .2s;max-height:calc(100vh - 72px);overflow:auto}
  .pr-nav.pr-open{visibility:visible;opacity:1;transform:none;transition:opacity .2s,transform .2s}
  .pr-nav ul{flex-direction:column;align-items:stretch;gap:2px}
  .pr-nav li a{width:100%;font-size:17px;padding:0 12px;min-height:48px}
  .pr-nav li a[aria-current="page"]{box-shadow:inset 3px 0 0 #c2185b;background:#fbeef4}
  .pr-mark{display:inline-flex;align-items:center;margin-left:.7em;--r:.3em;--pk1:#e0739b;--pk2:#c2185b;--gr1:#5fa271;--gr2:#2f6b4f}
  .pr-mark .pz{position:relative;display:inline-flex;font-family:"Fraunces",Georgia,serif;font-weight:600;font-size:10px;line-height:1;color:#fff;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}
  .pr-mark .pz__pc{position:relative;z-index:0;display:inline-flex;align-items:center;height:1.9em;padding:0 .56em .05em}
  .pr-mark .pz__pc::before{content:"";position:absolute;inset:0;z-index:-1}
  .pr-mark .pz__pc--b{padding-right:.5em}
  .pr-mark .pz__pc--b::before{background:linear-gradient(180deg,var(--pk1),var(--pk2));border-radius:.42em 0 0 .42em}
  .pr-mark .pz__pc--b::after{content:"";position:absolute;z-index:-1;top:50%;right:calc(var(--r) * -1.6);width:calc(var(--r) * 2);height:calc(var(--r) * 2);margin-top:calc(var(--r) * -1);border-radius:50%;background:#d4507f}
  .pr-mark .pz__pc--g{padding-left:calc(var(--r) * 1.6 + .42em)}
  .pr-mark .pz__pc--g::before{background:linear-gradient(180deg,var(--gr1),var(--gr2));border-radius:0 .42em .42em 0;-webkit-mask:radial-gradient(circle var(--r) at calc(var(--r) * .6) 50%,#0000 calc(100% - .6px),#000 100%);mask:radial-gradient(circle var(--r) at calc(var(--r) * .6) 50%,#0000 calc(100% - .6px),#000 100%)}
  .pr-hd .pr-cta{justify-content:center;min-height:50px;font-size:16px}
}
@media (max-width:420px){.pr-hd__in{padding:0 16px}.pr-brand img{height:34px}}

/* PIÈ DI PAGINA */
.pr-ft{background:#173d29;color:#e9efe6;font-size:15px;line-height:1.6}
.pr-ft__in{max-width:1200px;margin:0 auto;padding:56px 24px 28px}
.pr-ft__grid{display:grid;grid-template-columns:1.3fr 1fr 1.3fr;gap:36px}
.pr-ft .pr-ft__logo{display:inline-block;background:#fbf6ef;border-radius:14px;padding:10px 14px}
.pr-ft__logo img{height:40px;width:auto}
.pr-ft__claim{margin-top:14px;color:#c9d6c4;max-width:34ch}
.pr-ft__h{font-family:"Fraunces",Georgia,serif;font-size:18px;font-weight:500;color:#fff;margin-bottom:10px}
.pr-ft__col li{margin:2px 0}
.pr-ft__col a{display:inline-flex;align-items:center;min-height:36px;color:#e9efe6;text-decoration:underline;text-decoration-color:rgba(233,239,230,.35);text-underline-offset:3px}
.pr-ft__col a:hover{color:#fff;text-decoration-color:#fff}
.pr-ft__legal{margin-top:40px;padding-top:20px;border-top:1px solid rgba(233,239,230,.18);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:13.5px;color:#c9d6c4}
.pr-ft__legal a{color:#e9efe6;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:32px}
.pr-ft__legal ul{display:flex;gap:16px}
@media (max-width:820px){.pr-ft__grid{grid-template-columns:1fr;gap:28px}.pr-ft__in{padding:44px 20px 26px}}
@media (prefers-reduced-motion:reduce){.pr-hd *,.pr-skip,.pr-nav{transition:none!important}}
@media print{.pr-hd,.pr-ft,.pr-skip{display:none}}

/* la testata resta in alto anche nelle pagine che bloccano lo scorrimento orizzontale */
html,body{overflow-x:clip!important}
/* i pannelli aperti (lettore del Journal, lettore del contratto) stanno sopra la testata */
.reader.open,.modal.open{z-index:1000!important}

/* Experiences: le icone si muovono e reagiscono a passaggio del mouse, tocco e clic */
.exp-logo{transition:transform .5s cubic-bezier(.34,1.56,.64,1),filter .4s;animation:expFloat 4.6s ease-in-out infinite;transform-origin:50% 60%}
.exp-card:nth-child(2) .exp-logo{animation-delay:-1.1s}
.exp-card:nth-child(3) .exp-logo{animation-delay:-2.2s}
.exp-card:nth-child(4) .exp-logo{animation-delay:-3.3s}
@keyframes expFloat{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-7px) rotate(-1.6deg)}65%{transform:translateY(3px) rotate(1.2deg)}}
.exp-card:hover .exp-logo,.exp-card:focus-within .exp-logo{transform:scale(1.09) rotate(-3deg);filter:drop-shadow(0 14px 18px rgba(43,35,38,.18))}
.exp-card:active .exp-logo{transform:scale(.92) rotate(4deg);transition-duration:.12s}
@media (prefers-reduced-motion:reduce){.exp-logo{animation:none}}

/* Home, card Nido: i due loghi sopra la foto, come nella pagina Nido */
.path-media .path-logos{position:absolute;z-index:3;top:6cqi;right:6cqi;display:flex;flex-direction:column;align-items:center;gap:3cqi;width:22cqi;max-width:160px;pointer-events:none}
.path-media .path-logos img{position:static;inset:auto;transform:none;width:100%;height:auto;object-fit:contain;transition:none;filter:drop-shadow(0 10px 16px rgba(20,30,20,.35))}

/* Home, foto d'intestazione: l'intera foto resta visibile; i bordi del riquadro riprendono lo sfondo sfocato */
.hero .hero-photo{background:#2d3d2a url(../img/home-hero.jpg) center/cover no-repeat}
.hero .hero-photo img{object-fit:contain;object-position:50% 50%}
