/* =====================================================================
   GO FAR ENGLISH SCHOOL — stili dedicati alla pagina della scuola di inglese
   Si appoggia a style.css (design system GO FAR) e lo estende:
   header/footer propri, hero fotografico, sezioni Helen Doron / Adulti /
   Cambridge, card "presto in arrivo".
   ===================================================================== */

.theme-english{--tema:#1f9bcf;--tema-deep:#0d3b66}

/* Ancore: compensa l'header fisso */
.theme-english section[id]{scroll-margin-top:96px}

/* =====================================================================
   HEADER DEDICATO
   ===================================================================== */
.english-header .brand{gap:14px}
.brand-tag{display:flex;flex-direction:column;line-height:1.15;padding-left:14px;
  border-left:2px solid rgba(255,255,255,.35)}
.brand-tag b{font-size:.98rem;font-weight:800;letter-spacing:.5px;color:#fff}
.brand-tag small{font-size:.68rem;font-weight:600;letter-spacing:2.2px;text-transform:uppercase;color:#9fe3ff}
.site-header:not(.transparent) .brand-tag,
.site-header.transparent.scrolled .brand-tag{border-left-color:var(--grigio-2)}
.site-header:not(.transparent) .brand-tag b,
.site-header.transparent.scrolled .brand-tag b{color:var(--blu)}
.site-header:not(.transparent) .brand-tag small,
.site-header.transparent.scrolled .brand-tag small{color:var(--azzurro)}

/* Bottone "Torna a GO FAR" */
.main-nav a.btn-back{display:inline-flex;align-items:center;gap:8px;line-height:1;white-space:nowrap;
  padding:10px 20px;border-radius:40px;font-size:.9rem;font-weight:700;
  border:1.5px solid rgba(255,255,255,.55);color:#fff}
.main-nav a.btn-back svg{width:15px;height:15px;transition:transform .3s var(--ease)}
.main-nav a.btn-back:hover svg{transform:translateX(-4px)}
.site-header.transparent.scrolled .main-nav a.btn-back,
.site-header:not(.transparent) .main-nav a.btn-back{border-color:var(--azzurro);color:var(--azzurro)!important}
.main-nav a.btn-back::after{display:none}
/* nav della scuola: contatti in azzurro */
.english-header .main-nav a.btn-nav{background:var(--azzurro);box-shadow:0 8px 20px rgba(31,155,207,.35)}
.english-header .main-nav a.btn-nav:hover{box-shadow:0 12px 26px rgba(31,155,207,.5)}
@media (max-width:760px){
  .main-nav a.btn-back{border-color:rgba(255,255,255,.55);color:#fff!important}
  .brand-tag small{display:none}
}
@media (max-width:520px){
  .brand-tag{padding-left:10px}
  .brand-tag b{font-size:.85rem}
}

/* =====================================================================
   HERO FOTOGRAFICO (Londra)
   ===================================================================== */
.hero-school{position:relative;color:#fff;overflow:hidden;
  padding:clamp(150px,18vh,190px) 24px clamp(80px,10vh,120px)}
.hero-school .hero-photo{position:absolute;inset:0;z-index:-2}
.hero-school .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 65%}
.hero-school::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(112deg,rgba(8,37,68,.95) 0%,rgba(13,59,102,.88) 42%,rgba(13,59,102,.55) 70%,rgba(31,155,207,.35) 100%)}
.hero-school-inner{max-width:var(--maxw);margin:0 auto;padding:0 4px}
.hero-school .eyebrow{display:inline-block;letter-spacing:3px;font-size:.78rem;font-weight:700;
  padding:7px 16px;border:1px solid rgba(255,255,255,.35);border-radius:40px;margin-bottom:22px;
  opacity:0;animation:fadeUp .8s var(--ease) .1s forwards}
.hero-school h1{max-width:760px;font-size:clamp(2.2rem,5.4vw,3.8rem);font-weight:800;line-height:1.06;
  letter-spacing:-1px;opacity:0;animation:fadeUp .9s var(--ease) .25s forwards}
.hero-school h1 .accent{color:var(--arancio)}
.hero-school p.lead{margin:20px 0 0;max-width:640px;font-size:clamp(1.02rem,2vw,1.18rem);color:#dbe9f5;
  opacity:0;animation:fadeUp .9s var(--ease) .4s forwards}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;
  opacity:0;animation:fadeUp .9s var(--ease) .55s forwards}
.hero-badges span{display:inline-flex;align-items:center;gap:9px;padding:9px 16px;border-radius:30px;
  font-size:.85rem;font-weight:600;color:#eaf4fc;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(6px)}
.hero-badges span svg{width:16px;height:16px;flex:0 0 16px;stroke:var(--arancio)}
.hero-school .hero-cta{margin-top:34px;justify-content:flex-start;
  opacity:0;animation:fadeUp .9s var(--ease) .7s forwards}
@media (max-width:760px){
  .hero-school{text-align:center}
  .hero-school h1,.hero-school p.lead{margin-left:auto;margin-right:auto}
  .hero-badges,.hero-school .hero-cta{justify-content:center}
}

/* =====================================================================
   SEZIONI SCUOLA
   ===================================================================== */
/* etichetta di sezione (kicker centrato) */
.kicker-c{display:block;text-align:center;letter-spacing:3px;font-size:.78rem;font-weight:700;
  color:var(--tema);text-transform:uppercase;margin-bottom:10px}

/* Box in evidenza (Master Franchise) */
.hl-box{display:flex;gap:16px;align-items:flex-start;margin-top:22px;
  background:color-mix(in srgb,var(--tema) 8%,#fff);
  border:1px solid color-mix(in srgb,var(--tema) 25%,#fff);
  border-left:5px solid var(--tema);border-radius:14px;padding:18px 20px}
.hl-box svg{width:26px;height:26px;flex:0 0 26px;stroke:var(--tema);margin-top:2px}
.hl-box strong{color:var(--blu)}
.hl-box p{margin:0!important;font-size:.98rem}

/* Foto con cornice nelle sezioni split */
.photo-frame{position:relative;border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}
.photo-frame img{width:100%;height:100%;min-height:340px;object-fit:cover;display:block}
.photo-frame figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 18px;color:#fff;
  font-size:.88rem;font-weight:600;background:linear-gradient(to top,rgba(5,22,44,.8),transparent)}
.photo-stack{position:relative}
.photo-stack .ps-badge{position:absolute;z-index:2;top:-16px;right:-8px;background:#fff;color:var(--blu);
  font-weight:700;font-size:.85rem;padding:10px 18px;border-radius:40px;box-shadow:var(--shadow);
  display:inline-flex;align-items:center;gap:8px}
.photo-stack .ps-badge svg{width:16px;height:16px;stroke:var(--arancio)}

/* =====================================================================
   CARD "PRESTO IN ARRIVO"
   ===================================================================== */
.soon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.soon-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);
  aspect-ratio:4/5;display:flex;align-items:flex-end;isolation:isolate;
  transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.soon-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-hover)}
.soon-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;
  transition:transform .7s var(--ease)}
.soon-card:hover img{transform:scale(1.07)}
.soon-card::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(to top,rgba(5,22,44,.88) 0%,rgba(5,22,44,.25) 55%,rgba(5,22,44,.1) 100%)}
.soon-card .soon-tag{position:absolute;top:16px;left:16px;display:inline-flex;align-items:center;gap:7px;
  background:var(--arancio);color:#fff;font-size:.74rem;font-weight:800;letter-spacing:1.5px;
  text-transform:uppercase;padding:7px 14px;border-radius:30px;box-shadow:0 8px 20px rgba(255,140,26,.4)}
.soon-card .soon-tag svg{width:13px;height:13px;stroke:#fff}
.soon-body{padding:24px 22px;color:#fff}
.soon-body h3{font-size:1.35rem;font-weight:800;letter-spacing:-.3px;margin-bottom:6px}
.soon-body p{font-size:.93rem;color:#dbe9f5;line-height:1.5}
@media (max-width:980px){.soon-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.soon-grid{grid-template-columns:1fr}.soon-card{aspect-ratio:16/10}}

/* =====================================================================
   FOOTER DEDICATO
   ===================================================================== */
.english-footer .foot-brand p{max-width:300px}
.foot-cred{margin-top:14px;display:flex;flex-direction:column;gap:8px}
.foot-cred span{display:flex;gap:9px;align-items:flex-start;font-size:.85rem;color:#a9c2da}
.foot-cred span svg{width:15px;height:15px;flex:0 0 15px;margin-top:4px;stroke:var(--arancio)}
.foot-back{display:inline-flex!important;align-items:center;gap:8px;margin-top:16px;width:fit-content;
  border:1.5px solid rgba(255,255,255,.35);border-radius:40px;padding:9px 18px!important;
  font-weight:700;font-size:.88rem;color:#fff!important}
.foot-back svg{width:14px;height:14px;stroke:currentColor}
.foot-back:hover{border-color:var(--arancio);padding-left:18px!important}
