/* Ada Negri 1.8.0 — mobile-first overrides */
@media (max-width: 700px) {
  html, body { width: 100%; max-width: 100%; overflow-x: clip !important; }
  *, *::before, *::after { min-width: 0; }
  :root { --an-container: calc(100% - 28px); }
  .an-wrap { width: var(--an-container) !important; max-width: none !important; margin-inline: auto !important; }

  /* Header */
  .an-site-header { position: sticky !important; top: 0 !important; background: rgba(255,253,249,.98) !important; backdrop-filter: blur(12px); }
  .admin-bar .an-site-header { top: 0 !important; }
  .an-nav { height: 76px !important; min-height: 76px !important; padding: 8px 14px !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; gap: 12px !important; }
  .an-brand, .an-brand a, .custom-logo-link { display: flex !important; align-items: center !important; }
  .an-brand img, .an-brand .custom-logo { width: 160px !important; max-width: 48vw !important; max-height: 50px !important; object-fit: contain !important; }
  .an-nav nav { display: none !important; }
  .an-menu-toggle { display: block !important; margin-left: auto !important; width: 46px !important; height: 46px !important; flex: 0 0 46px !important; border-radius: 14px !important; background: #eef4fb !important; border: 1px solid #dfe8f3 !important; box-shadow: none !important; }
  .an-menu-toggle span, .an-menu-toggle::before, .an-menu-toggle::after { position: absolute !important; left: 12px !important; width: 22px !important; height: 2px !important; margin: 0 !important; }
  .an-menu-toggle::before { top: 14px !important; }
  .an-menu-toggle span { top: 21px !important; }
  .an-menu-toggle::after { top: 28px !important; }
  .an-menu-toggle.is-open::before, .an-menu-toggle.is-open::after { top: 21px !important; }
  .an-mobile-panel { display: none !important; position: fixed !important; z-index: 110 !important; inset: 76px 0 0 !important; max-height: none !important; overflow-y: auto !important; background: rgba(255,253,249,.99) !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; }
  .an-mobile-panel.is-open { display: block !important; }
  .an-mobile-inner { width: 100% !important; padding: 14px 20px 24px !important; }
  .an-mobile-panel ul, .an-mobile-panel .an-main-menu, .an-mobile-panel .an-mobile-menu { display: block !important; list-style: none !important; margin: 0 !important; padding: 0 !important; }
  .an-mobile-panel li.menu-item-cta { display: none !important; }
  .an-mobile-panel a:not(.an-mobile-cta) { display: flex !important; align-items: center !important; min-height: 52px !important; padding: 11px 2px !important; border-bottom: 1px solid #edf0f4 !important; color: var(--an-blue) !important; font-size: 1rem !important; font-weight: 800 !important; }
  .an-mobile-cta, .an-mobile-cta:visited { display: flex !important; width: 100% !important; min-height: 52px !important; justify-content: center !important; align-items: center !important; margin: 18px 0 0 !important; padding: 0 16px !important; border-radius: 16px !important; background: var(--an-blue) !important; color: #fff !important; font-weight: 800 !important; }

  /* Hero — rebuilt for mobile, no floating decorative stickers */
  .an-hero-v15 { padding: 28px 0 26px !important; overflow: hidden !important; }
  .an-hero-grid { display: block !important; width: 100% !important; }
  .an-hero-copy { width: 100% !important; }
  .an-hero-shape-left { display: none !important; }
  .an-hero-shape-right { width: 76px !important; height: 76px !important; right: -32px !important; top: -18px !important; opacity: .9 !important; }
  .an-hero .an-eyebrow { font-size: .72rem !important; line-height: 1.4 !important; max-width: 26ch !important; }
  .an-hero h1 { width: 100% !important; max-width: 9ch !important; font-size: clamp(2.45rem, 11.5vw, 3.25rem) !important; line-height: .96 !important; letter-spacing: -.045em !important; margin: 10px 0 14px !important; }
  .an-hero-copy > p { width: 100% !important; max-width: none !important; font-size: .98rem !important; line-height: 1.5 !important; margin: 0 !important; display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 4 !important; overflow: hidden !important; }
  .an-hero-actions { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px !important; width: 100% !important; margin-top: 20px !important; }
  .an-hero-actions .an-btn { width: 100% !important; min-height: 50px !important; padding: 0 10px !important; border-radius: 17px !important; font-size: .88rem !important; line-height: 1.15 !important; text-align: center !important; }
  .an-hero-meta { display: none !important; }
  .an-hero-scene-desktop { display: none !important; }
  .an-hero-scene-mobile { display: block !important; width: 100% !important; margin-top: 18px !important; }
  .an-mobile-scene-inner { position: relative !important; width: 100% !important; aspect-ratio: 16 / 10 !important; overflow: hidden !important; border-radius: 24px !important; background: rgba(255,255,255,.055) !important; border: 1px solid rgba(255,255,255,.12) !important; }
  .an-mobile-school { position: absolute !important; width: 88% !important; height: auto !important; left: 50% !important; bottom: -2% !important; transform: translateX(-50%) !important; object-fit: contain !important; z-index: 1 !important; }
  .an-mobile-lorenzo { position: absolute !important; height: 73% !important; width: auto !important; max-width: 42% !important; right: 1% !important; bottom: 0 !important; object-fit: contain !important; z-index: 2 !important; filter: drop-shadow(0 12px 18px rgba(0,0,0,.15)) !important; }
  .an-scene-badge-v15, .an-scene-corner-icon { display: none !important; }

  /* Social */
  .an-social-band { margin-top: 0 !important; padding: 18px 0 20px !important; background: #fff !important; }
  .an-social-card { width: 100% !important; padding: 20px 18px !important; border-radius: 22px !important; display: block !important; }
  .an-social-copy h2 { font-size: 1.48rem !important; line-height: 1.05 !important; margin: 6px 0 14px !important; }
  .an-social-copy p { display: none !important; }
  .an-social-actions { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px !important; width: 100% !important; }
  .an-social-btn { width: 100% !important; min-height: 48px !important; padding: 0 10px !important; border-radius: 16px !important; font-size: .84rem !important; line-height: 1.15 !important; white-space: normal !important; }
  .an-social-btn img { width: 21px !important; height: 21px !important; flex: 0 0 21px !important; }

  /* Quick facts — no absolute overlap */
  .an-quick { padding: 0 0 8px !important; background: #fff !important; }
  .an-quick-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px !important; width: 100% !important; }
  .an-quick-item { position: relative !important; width: 100% !important; min-height: 126px !important; padding: 16px 12px 14px !important; border: 1px solid var(--an-line) !important; border-radius: 20px !important; background: #fff !important; overflow: hidden !important; }
  .an-quick-icon { position: static !important; width: 36px !important; height: 36px !important; margin: 0 0 10px !important; transform: none !important; object-fit: contain !important; }
  .an-quick-item strong { display: block !important; font-size: 1rem !important; line-height: 1.12 !important; margin: 0 0 5px !important; }
  .an-quick-item span { display: block !important; font-size: .8rem !important; line-height: 1.35 !important; margin: 0 !important; overflow-wrap: anywhere !important; }

  /* Main sections */
  .an-section { padding: 56px 0 !important; }
  .an-section-compact { padding: 48px 0 !important; }
  .an-section-head { display: block !important; margin-bottom: 26px !important; }
  .an-section-head h2, .an-page-hero h1 { font-size: 2.25rem !important; line-height: 1 !important; }
  .an-section-head p { margin-top: 12px !important; font-size: .94rem !important; }
  .an-features, .an-week, .an-post-grid, .an-cards-2 { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; overflow: visible !important; }
  .an-feature, .an-lesson { width: 100% !important; min-height: auto !important; padding: 20px !important; }
  .an-feature p, .an-lesson p { display: block !important; overflow: visible !important; }

  /* Notebook */
  .an-notebook-layout { display: block !important; }
  .an-notebook-scene { width: 100% !important; min-height: 0 !important; padding: 0 !important; }
  .an-circle-corner, .an-pencil, .an-clip { display: none !important; }
  .an-notebook-card { width: 100% !important; transform: none !important; padding: 22px 16px 18px !important; border-radius: 24px !important; }
  .an-notebook-card::before, .an-notebook-card::after { display: none !important; }
  .an-notebook-head { display: block !important; }
  .an-notebook-head h3 { font-size: 1.9rem !important; }
  .an-badge-day { margin-top: 12px !important; padding: 8px 12px !important; border-width: 2px !important; }
  .an-schedule-row { grid-template-columns: 58px 1fr !important; gap: 10px !important; padding: 10px 0 !important; }
  .an-schedule-row .time { font-size: .95rem !important; }
  .an-schedule-copy strong { font-size: .98rem !important; }
  .an-schedule-copy small { font-size: .82rem !important; }
  .an-notebook-side { display: none !important; }

  /* School section */
  .an-school-panel-noimage { display: block !important; }
  .an-school-graphic { padding: 14px !important; border-radius: 22px !important; }
  .an-school-badge-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px !important; }
  .an-school-badge { min-height: 0 !important; padding: 14px !important; border-radius: 18px !important; }
  .an-school-badge img { width: 34px !important; height: 34px !important; margin-bottom: 7px !important; }
  .an-school-badge strong { font-size: .98rem !important; margin-bottom: 4px !important; }
  .an-school-badge span { font-size: .78rem !important; line-height: 1.35 !important; }
  .an-school-copy { padding: 22px 2px 0 !important; border-radius: 0 !important; background: transparent !important; color: var(--an-blue) !important; }
  .an-school-copy .an-eyebrow { color: var(--an-green) !important; }
  .an-school-copy h2 { color: var(--an-blue) !important; font-size: 2.05rem !important; line-height: .98 !important; max-width: 10ch !important; margin: 8px 0 14px !important; }
  .an-school-copy p { color: #4d5d74 !important; font-size: .92rem !important; line-height: 1.5 !important; }
  .an-factlist { grid-template-columns: 1fr 1fr !important; gap: 9px !important; }
  .an-fact { min-height: 92px !important; padding: 13px !important; border-radius: 16px !important; background: var(--an-blue) !important; }
  .an-fact strong { font-size: 1.25rem !important; }
  .an-fact span { font-size: .72rem !important; color: #d9e5f4 !important; }

  /* Primavera + CTA */
  .an-split { display: block !important; border-radius: 24px !important; }
  .an-split-copy { padding: 28px 22px !important; }
  .an-split-copy h2 { font-size: 2rem !important; }
  .an-split-mascot { display: none !important; }
  .an-cta { padding: 28px 22px !important; grid-template-columns: 1fr !important; border-radius: 24px !important; }
  .an-cta h2 { font-size: 2.15rem !important; }
  .an-cta .an-btn { width: 100% !important; }

  /* Internal pages */
  .an-page-hero { padding: 36px 0 28px !important; }
  .an-page-hero-grid { grid-template-columns: 1fr !important; }
  .an-page-mascot { height: 180px !important; }
  .an-page-mascot img { height: 210px !important; left: 50% !important; right: auto !important; bottom: -22px !important; transform: translateX(-50%) !important; }
  .an-content-grid, .an-contact-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .an-side-card { position: static !important; }
  .an-footer-grid { grid-template-columns: 1fr !important; gap: 22px !important; }
  .an-footer-grid > div:nth-child(2), .an-footer-grid > div:nth-child(3) { display: none !important; }
  .an-legal { display: block !important; }
}

@media (max-width: 430px) {
  :root { --an-container: calc(100% - 22px); }
  .an-brand img, .an-brand .custom-logo { width: 150px !important; }
  .an-hero h1 { max-width: none !important; font-size: clamp(2.3rem, 12vw, 3rem) !important; }
  .an-hero-actions { grid-template-columns: 1fr !important; gap: 8px !important; }
  .an-mobile-scene-inner { aspect-ratio: 4 / 3 !important; }
  .an-mobile-school { width: 95% !important; left: 48% !important; bottom: 0 !important; }
  .an-mobile-lorenzo { height: 67% !important; max-width: 41% !important; right: 0 !important; }
  .an-social-actions { grid-template-columns: 1fr !important; }
  .an-quick-grid { grid-template-columns: 1fr !important; }
  .an-quick-item { min-height: 0 !important; display: grid !important; grid-template-columns: 42px 1fr !important; column-gap: 12px !important; align-items: start !important; }
  .an-quick-icon { grid-row: 1 / span 2 !important; margin: 0 !important; }
  .an-quick-item strong { margin-top: 1px !important; }
  .an-school-badge-grid { grid-template-columns: 1fr !important; }
}

@media (max-width: 350px) {
  :root { --an-container: calc(100% - 18px); }
  .an-brand img, .an-brand .custom-logo { width: 142px !important; }
  .an-menu-toggle { width: 44px !important; height: 44px !important; flex-basis: 44px !important; }
  .an-mobile-scene-inner { aspect-ratio: 1.15 !important; }
  .an-mobile-school { width: 100% !important; left: 46% !important; }
  .an-mobile-lorenzo { height: 62% !important; right: -2% !important; }
}

/* v1.12.0 exact 16:9 page banners */
@media(max-width:700px){.an-page-banner{aspect-ratio:auto!important}.an-page-banner picture{height:auto!important}.an-page-banner img{height:auto!important;object-fit:contain!important;object-position:center!important}.an-page-banner:after,.an-page-banner-title{display:none!important}}


/* =========================================================
   ADA NEGRI 1.14.0 — FINAL MOBILE RELEASE OVERRIDES
   ========================================================= */
@media (max-width:700px){
  :root{--an-container:calc(100% - 22px)}
  body{overflow-x:hidden!important}
  .an-wrap{width:var(--an-container)!important;margin-inline:auto!important}

  /* Header */
  .an-site-header{position:sticky!important;top:0!important;background:#fffdf9!important;border-bottom:1px solid #eee5d8!important;backdrop-filter:none!important}
  .an-nav{height:76px!important;min-height:76px!important;padding:8px 12px!important}
  .an-brand img,.an-brand .custom-logo{width:154px!important;max-width:48vw!important;max-height:48px!important}
  .an-menu-toggle{width:46px!important;height:46px!important;flex-basis:46px!important}

  /* Home hero: image is the background, never a separate detached block */
  .an-home-hero{position:relative!important;display:flex!important;align-items:flex-start!important;min-height:740px!important;padding:0!important;overflow:hidden!important;background:#0b3677!important}
  .an-home-hero-art{position:absolute!important;inset:0!important;display:block!important;z-index:0!important;margin:0!important}
  .an-home-hero-art picture{display:block!important;width:100%!important;height:100%!important}
  .an-home-hero-art img{display:block!important;width:100%!important;height:100%!important;min-height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center bottom!important;border-radius:0!important}
  .an-home-hero-overlay{position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(180deg,rgba(8,46,113,.99) 0%,rgba(8,46,113,.97) 42%,rgba(8,46,113,.82) 60%,rgba(8,46,113,.50) 78%,rgba(8,46,113,.24) 100%)!important}
  .an-home-hero-inner{position:relative!important;z-index:2!important;width:100%!important;padding:34px 0 28px!important}
  .an-home-hero .an-hero-copy{width:100%!important;max-width:none!important;padding:0!important}
  .an-home-hero .an-eyebrow{font-size:.72rem!important;line-height:1.35!important;max-width:none!important;color:#9de2bc!important}
  .an-home-hero h1{font-size:clamp(2.65rem,13.5vw,3.55rem)!important;line-height:.96!important;max-width:9ch!important;margin:10px 0 14px!important}
  .an-home-hero .an-hero-copy>p{font-size:.96rem!important;line-height:1.48!important;display:-webkit-box!important;-webkit-line-clamp:4!important;-webkit-box-orient:vertical!important;overflow:hidden!important;color:#edf3fa!important}
  .an-home-hero .an-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:18px!important}
  .an-home-hero .an-hero-actions .an-btn{min-height:50px!important;width:100%!important;border-radius:17px!important;font-size:.9rem!important}
  .an-home-hero .an-hero-meta{display:none!important}

  /* Page banners */
  .an-page-banner{width:100%!important;aspect-ratio:auto!important;overflow:hidden!important;background:#0b3677!important}
  .an-page-banner picture{display:block!important;height:auto!important}
  .an-page-banner img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important;margin:0!important}
  .an-page-banner::after,.an-page-banner-title{display:none!important}

  /* Social and quick facts */
  .an-social-band{padding:18px 0 20px!important}
  .an-social-card{padding:20px 18px!important;border-radius:22px!important}
  .an-social-actions{grid-template-columns:1fr!important;gap:9px!important}
  .an-social-btn{min-height:48px!important}
  .an-quick-grid{grid-template-columns:1fr!important;gap:10px!important}
  .an-quick-item{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;column-gap:12px!important;min-height:0!important;padding:15px!important;align-items:start!important}
  .an-quick-icon{grid-row:1/span 2!important;position:static!important;width:36px!important;height:36px!important;margin:0!important}

  /* Sections */
  .an-section{padding:54px 0!important}
  .an-section-compact{padding:46px 0!important}
  .an-section-head{margin-bottom:24px!important}
  .an-section-head h2{font-size:2.2rem!important}
  .an-feature,.an-lesson,.an-rich-card,.an-season-card,.an-day-card{padding:20px!important;border-radius:20px!important}
  .an-rich-grid-3,.an-rich-grid-4,.an-season-grid,.an-day-grid{grid-template-columns:1fr!important}

  /* Notebook exactly centered, no decorative collisions */
  .an-section-notebook{padding:58px 0 52px!important}
  .an-notebook-layout{display:block!important}
  .an-notebook-scene{padding:0!important;min-height:0!important}
  .an-circle-corner,.an-pencil,.an-clip{display:none!important}
  .an-notebook-card{transform:none!important;width:100%!important;padding:22px 16px 18px 48px!important;border-radius:24px!important}
  .an-notebook-card::before{display:block!important;left:24px!important}
  .an-notebook-card::after{display:block!important;opacity:.25!important}
  .an-notebook-head{display:block!important}
  .an-notebook-head h3{font-size:1.95rem!important;line-height:.98!important}
  .an-badge-day{margin-top:12px!important;padding:8px 12px!important;border-width:2px!important;font-size:.78rem!important}
  .an-schedule-row{grid-template-columns:58px minmax(0,1fr)!important;gap:10px!important;padding:10px 0!important}
  .an-schedule-row .time{font-size:.92rem!important}
  .an-schedule-copy{padding-left:17px!important}
  .an-schedule-copy strong{font-size:.96rem!important}
  .an-schedule-copy small{display:none!important}
  .an-notebook-side{display:none!important}

  /* School/fact cards */
  .an-school-panel-noimage{display:block!important}
  .an-school-badge-grid{grid-template-columns:1fr!important}
  .an-school-copy{padding:22px 0 0!important;background:transparent!important;color:var(--an-blue)!important}
  .an-school-copy h2{color:var(--an-blue)!important;max-width:none!important}
  .an-school-copy p{color:#4d5d74!important}
  .an-factlist{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .an-fact{min-height:104px!important;padding:14px!important;border-radius:18px!important;background:var(--an-blue)!important}
  .an-fact strong{display:block!important;color:#fff!important;font-size:1.5rem!important;margin-bottom:7px!important}
  .an-fact span{display:block!important;color:#dbe6f5!important;font-size:.75rem!important;line-height:1.3!important}

  /* Internal content */
  .an-content-grid,.an-contact-grid,.an-split,.an-rich-cta-row,.an-school-panel{grid-template-columns:1fr!important;gap:24px!important}
  .an-side-card{position:static!important;padding:20px!important}
  .an-side-icon img{width:82px!important;height:auto!important}
  .an-side-mascot{height:auto!important;margin:0 0 10px!important}
  .an-side-mascot img{height:auto!important;max-height:210px!important;width:auto!important;max-width:100%!important;margin:auto!important}
  .an-split-mascot{display:none!important}
  .an-cta{grid-template-columns:1fr!important;padding:28px 22px!important}
  .an-cta .an-btn{width:100%!important}

  /* Footer */
  .an-footer{padding-top:78px!important}
  .an-footer-art{filter:blur(10px)!important;opacity:.60!important;width:1200px!important;transform:translateX(-50%) scale(1.08)!important}
  .an-footer-grid{grid-template-columns:1fr!important;gap:18px!important;padding:26px 22px 20px!important;border-radius:24px!important;background:rgba(4,23,53,.78)!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important}
  .an-footer-grid>div:nth-child(2),.an-footer-grid>div:nth-child(3){display:none!important}
  .an-footer .an-brand img{width:165px!important;max-width:60vw!important}
  .an-footer-badges{display:none!important}
  .an-footer-info{gap:9px!important}
  .an-footer-info li{grid-template-columns:34px minmax(0,1fr)!important;gap:10px!important}
  .an-footer-info img{width:30px!important;height:30px!important}
  .an-legal{display:block!important;margin-top:30px!important;padding-top:18px!important;font-size:.75rem!important}
  .an-footer-legal-menu{margin-top:10px!important}
}

@media (max-width:430px){
  :root{--an-container:calc(100% - 20px)}
  .an-brand img,.an-brand .custom-logo{width:148px!important}
  .an-home-hero{min-height:735px!important}
  .an-home-hero h1{font-size:clamp(2.5rem,13vw,3.25rem)!important}
  .an-home-hero-art img{object-position:center bottom!important}
  .an-factlist{grid-template-columns:1fr 1fr!important}
}

@media (max-width:350px){
  :root{--an-container:calc(100% - 18px)}
  .an-brand img,.an-brand .custom-logo{width:140px!important}
  .an-home-hero{min-height:720px!important}
  .an-home-hero h1{font-size:2.35rem!important}
  .an-factlist{grid-template-columns:1fr!important}
}

/* v1.15.2: mobile menu CTA legibility */
@media (max-width: 980px){
  .an-mobile-panel .an-mobile-cta,
  .an-mobile-panel .an-mobile-cta:link,
  .an-mobile-panel .an-mobile-cta:visited,
  .an-mobile-panel .an-mobile-cta:hover,
  .an-mobile-panel .an-mobile-cta:focus,
  .an-mobile-panel .an-mobile-cta:active{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:56px!important;
    padding:13px 20px!important;
    margin:18px 0 8px!important;
    border:0!important;
    border-radius:999px!important;
    background:#0a2f68!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font-family:var(--an-display)!important;
    font-size:1rem!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-align:center!important;
    opacity:1!important;
    visibility:visible!important;
    text-shadow:none!important;
  }
  .an-mobile-panel .an-mobile-cta span{
    display:inline!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    opacity:1!important;
    visibility:visible!important;
  }
}

/* v1.15.3: final mobile readability / centering fix */
@media (max-width: 767px){
  .an-hero,
  .an-home-hero,
  .an-home-hero-final{overflow:visible!important}

  .an-home-hero-final .an-hero-copy,
  .an-home-hero .an-hero-copy,
  .an-hero-copy{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    overflow:visible!important;
  }

  .an-home-hero-final h1,
  .an-home-hero h1,
  .an-hero h1{
    max-width:none!important;
    font-size:clamp(2.2rem,11.6vw,3.15rem)!important;
    line-height:.95!important;
    letter-spacing:-.045em!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }

  .an-home-hero-final .an-hero-copy>p,
  .an-home-hero .an-hero-copy>p,
  .an-hero-copy>p{
    width:100%!important;
    max-width:none!important;
    display:block!important;
    -webkit-line-clamp:unset!important;
    line-clamp:unset!important;
    -webkit-box-orient:initial!important;
    overflow:visible!important;
    text-overflow:clip!important;
    max-height:none!important;
    height:auto!important;
    white-space:normal!important;
    margin:0 0 18px!important;
    font-size:1rem!important;
    line-height:1.55!important;
  }

  .an-home-hero-final .an-hero-actions,
  .an-home-hero .an-hero-actions,
  .an-hero-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .an-home-hero-final .an-hero-actions .an-btn,
  .an-home-hero .an-hero-actions .an-btn,
  .an-hero-actions .an-btn,
  .an-spring-copy .an-btn,
  .an-side-card .an-btn,
  .an-mobile-panel .an-mobile-cta{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-height:64px!important;
    height:auto!important;
    padding:16px 18px!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    line-height:1.2!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }

  .an-home-hero-final .an-hero-actions .an-btn span,
  .an-home-hero .an-hero-actions .an-btn span,
  .an-hero-actions .an-btn span,
  .an-spring-copy .an-btn span,
  .an-side-card .an-btn span,
  .an-mobile-panel .an-mobile-cta span{
    display:block!important;
    width:100%!important;
    text-align:center!important;
    white-space:normal!important;
  }

  .an-factlist{grid-template-columns:1fr!important;gap:12px!important}
  .an-fact{
    min-height:118px!important;
    padding:18px 16px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .an-fact strong,
  .an-fact span{
    display:block!important;
    width:100%!important;
    text-align:center!important;
  }
  .an-fact strong{font-size:2rem!important;line-height:1!important;margin:0 0 8px!important}
  .an-fact span{font-size:.92rem!important;line-height:1.35!important}
}

/* v1.16.0 clean release mobile safeguards */
@media (max-width:700px){
  .an-home-clean-hero{padding:36px 0 26px!important;overflow:visible!important}
  .an-home-clean-grid{display:grid!important;grid-template-columns:1fr!important;gap:20px!important}
  .an-home-clean-copy{width:100%!important;min-width:0!important}
  .an-home-clean-copy h1{font-size:clamp(2.5rem,12vw,3.45rem)!important;line-height:.96!important;max-width:none!important;margin:10px 0 16px!important}
  .an-home-clean-copy p{display:block!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;overflow:visible!important;max-height:none!important;width:100%!important;max-width:none!important;font-size:1rem!important;line-height:1.55!important}
  .an-home-clean-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important}
  .an-home-clean-actions .an-btn{display:flex!important;width:100%!important;min-height:58px!important;padding:14px 18px!important;text-align:center!important;justify-content:center!important;white-space:normal!important}
  .an-home-clean-media{width:100%!important;aspect-ratio:4/3!important;border-radius:24px!important;overflow:hidden!important}
  .an-home-clean-media picture,.an-home-clean-media img{display:block!important;width:100%!important;height:100%!important}
  .an-home-clean-media img{object-fit:cover!important;object-position:center!important}

  .an-page-clean-hero{padding:28px 0 26px!important}
  .an-page-clean-grid{display:grid!important;grid-template-columns:1fr!important;gap:18px!important}
  .an-page-clean-copy{width:100%!important;min-width:0!important;text-align:left!important}
  .an-page-clean-copy h1{font-size:clamp(2.3rem,10.8vw,3rem)!important;line-height:.98!important;margin:8px 0 12px!important}
  .an-page-clean-copy p{font-size:.98rem!important;line-height:1.5!important;max-width:none!important}
  .an-page-clean-media{width:100%!important;height:240px!important;padding:12px!important;border-radius:24px!important}
  .an-page-clean-scene .an-page-clean-media{padding:0!important}

  .an-spring-panel{display:block!important;border-radius:26px!important;overflow:hidden!important}
  .an-spring-copy{padding:26px 22px 22px!important}
  .an-spring-copy h2{font-size:2.2rem!important;line-height:1!important;max-width:none!important}
  .an-spring-copy p{font-size:.96rem!important;line-height:1.5!important}
  .an-spring-copy .an-btn{display:flex!important;width:100%!important;min-height:58px!important;padding:14px 18px!important;text-align:center!important;justify-content:center!important;white-space:normal!important}
  .an-spring-art{min-height:230px!important}
  .an-spring-art picture,.an-spring-art img{display:block!important;width:100%!important;height:100%!important}
  .an-spring-art img{object-fit:cover!important;object-position:center!important}

  .an-factlist{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .an-fact{min-height:104px!important;padding:14px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important}
  .an-fact strong,.an-fact span{width:100%!important;text-align:center!important}
  .an-fact strong{font-size:1.5rem!important;margin:0 0 6px!important}
  .an-fact span{font-size:.76rem!important;line-height:1.3!important}
}

@media (max-width:380px){
  .an-factlist{grid-template-columns:1fr!important}
  .an-page-clean-media{height:220px!important}
}

/* v1.17.1 — definitive mobile logo override (must remain last) */
@media (max-width: 980px){
  body .an-site-header .an-nav{min-height:94px!important;height:auto!important;padding:10px 0!important;gap:10px!important}
  body .an-site-header .an-brand{flex:1 1 auto!important;min-width:0!important;max-width:none!important}
  body .an-site-header .an-brand>a,
  body .an-site-header .an-brand>.custom-logo-link{display:flex!important;align-items:center!important;width:100%!important;min-width:0!important}
  body .an-site-header .an-brand img,
  body .an-site-header .an-brand .custom-logo{display:block!important;width:min(100%,278px)!important;max-width:none!important;max-height:78px!important;height:auto!important;object-fit:contain!important;object-position:left center!important}
  body .an-site-header .an-menu-toggle{flex:0 0 52px!important;width:52px!important;height:52px!important;margin-left:auto!important}
}
@media (max-width:430px){
  body .an-site-header .an-nav{min-height:92px!important;padding:9px 0!important}
  body .an-site-header .an-brand img,
  body .an-site-header .an-brand .custom-logo{width:min(100%,265px)!important;max-width:none!important;max-height:74px!important}
  body .an-site-header .an-menu-toggle{flex-basis:50px!important;width:50px!important;height:50px!important}
}
@media (max-width:370px){
  body .an-site-header .an-brand img,
  body .an-site-header .an-brand .custom-logo{width:min(100%,235px)!important;max-height:68px!important}
  body .an-site-header .an-menu-toggle{flex-basis:46px!important;width:46px!important;height:46px!important}
}

/* v1.17.2 — logo fills the mobile header width */
@media (max-width: 700px){
  body .an-site-header{
    padding:0!important;
  }
  body .an-site-header .an-wrap.an-nav{
    width:100%!important;
    max-width:none!important;
    min-height:116px!important;
    height:auto!important;
    padding:10px 12px!important;
    margin:0!important;
    gap:8px!important;
    display:flex!important;
    align-items:center!important;
  }
  body .an-site-header .an-brand{
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
  }
  body .an-site-header .an-brand>a,
  body .an-site-header .an-brand>.custom-logo-link{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  body .an-site-header .an-brand img,
  body .an-site-header .an-brand .custom-logo{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    height:auto!important;
    object-fit:contain!important;
    object-position:left center!important;
    margin:0!important;
  }
  body .an-site-header .an-menu-toggle{
    flex:0 0 58px!important;
    width:58px!important;
    height:58px!important;
    margin:0!important;
    border-radius:18px!important;
  }
}
@media (max-width: 430px){
  body .an-site-header .an-wrap.an-nav{
    min-height:112px!important;
    padding:9px 10px!important;
    gap:7px!important;
  }
  body .an-site-header .an-menu-toggle{
    flex-basis:56px!important;
    width:56px!important;
    height:56px!important;
  }
}
@media (max-width: 360px){
  body .an-site-header .an-wrap.an-nav{
    min-height:104px!important;
    padding:8px!important;
  }
  body .an-site-header .an-menu-toggle{
    flex-basis:52px!important;
    width:52px!important;
    height:52px!important;
  }
}

/* v1.18.0 – final hamburger geometry */
@media (max-width:980px){
  body .an-site-header .an-menu-toggle span,
  body .an-site-header .an-menu-toggle::before,
  body .an-site-header .an-menu-toggle::after{
    content:""!important;position:absolute!important;left:50%!important;width:28px!important;height:3px!important;margin:0!important;border-radius:999px!important;background:currentColor!important;transform:translateX(-50%)!important;transform-origin:center!important;
  }
  body .an-site-header .an-menu-toggle::before{top:calc(50% - 10px)!important}
  body .an-site-header .an-menu-toggle span{top:calc(50% - 1.5px)!important}
  body .an-site-header .an-menu-toggle::after{top:calc(50% + 7px)!important}
  body .an-site-header .an-menu-toggle.is-open::before{top:calc(50% - 1.5px)!important;transform:translateX(-50%) rotate(45deg)!important}
  body .an-site-header .an-menu-toggle.is-open span{opacity:0!important}
  body .an-site-header .an-menu-toggle.is-open::after{top:calc(50% - 1.5px)!important;transform:translateX(-50%) rotate(-45deg)!important}
}


/* =========================================================
   ADA NEGRI 1.19.4 — VISIBLE MOBILE RAINBOW BUTTONS
   iOS-safe animated rainbow border for the mobile/tablet drawer.
   Uses layered backgrounds rather than CSS masks, so the effect
   remains visible in Safari touch mode without relying on :hover.
   ========================================================= */
@keyframes anMobileRainbowFlow{
  0%{background-position:0 0,0% 50%}
  100%{background-position:0 0,300% 50%}
}
@keyframes anMobileRainbowPulse{
  0%,100%{box-shadow:0 7px 18px rgba(15,34,68,.055)}
  50%{box-shadow:0 9px 23px rgba(28,97,189,.13)}
}

@media (max-width:1320px){
  body .an-mobile-panel .an-mobile-menu>li{
    margin:7px 0!important;
  }

  body .an-mobile-panel .an-mobile-menu>li>a:not(.an-mobile-cta){
    position:relative!important;
    min-height:58px!important;
    padding:12px 14px!important;
    border:2px solid transparent!important;
    border-radius:18px!important;
    border-bottom:2px solid transparent!important;
    background:
      linear-gradient(#fffdf9,#fffdf9) padding-box,
      linear-gradient(90deg,
        #ef3340 0%,
        #ff7a00 14%,
        #ffd21c 28%,
        #43c64b 42%,
        #14a5e5 57%,
        #4e63d8 71%,
        #8f44cf 85%,
        #ef3340 100%) border-box!important;
    background-size:100% 100%,300% 100%!important;
    background-position:0 0,0% 50%!important;
    animation:anMobileRainbowFlow 4.6s linear infinite,anMobileRainbowPulse 2.2s ease-in-out infinite!important;
    box-shadow:0 7px 18px rgba(15,34,68,.055)!important;
    transition:transform .12s ease,filter .12s ease!important;
    -webkit-tap-highlight-color:transparent!important;
  }

  body .an-mobile-panel .an-mobile-menu>li>a:not(.an-mobile-cta):active,
  body .an-mobile-panel .an-mobile-menu>li>a:not(.an-mobile-cta):focus-visible{
    transform:scale(.985)!important;
    filter:saturate(1.22) brightness(1.02)!important;
  }

  body .an-mobile-panel .an-mobile-cta,
  body .an-mobile-panel .an-mobile-cta:link,
  body .an-mobile-panel .an-mobile-cta:visited{
    position:relative!important;
    margin-top:14px!important;
    border:3px solid transparent!important;
    border-radius:999px!important;
    background:
      linear-gradient(#0a2f68,#0a2f68) padding-box,
      linear-gradient(90deg,
        #ef3340 0%,
        #ff7a00 14%,
        #ffd21c 28%,
        #43c64b 42%,
        #14a5e5 57%,
        #4e63d8 71%,
        #8f44cf 85%,
        #ef3340 100%) border-box!important;
    background-size:100% 100%,300% 100%!important;
    background-position:0 0,0% 50%!important;
    animation:anMobileRainbowFlow 4.1s linear infinite!important;
    box-shadow:0 12px 26px rgba(11,59,120,.18)!important;
    -webkit-tap-highlight-color:transparent!important;
  }

  body .an-mobile-panel .an-mobile-cta:active,
  body .an-mobile-panel .an-mobile-cta:focus-visible{
    transform:scale(.985)!important;
    filter:saturate(1.2) brightness(1.04)!important;
  }
}

@media (prefers-reduced-motion:reduce){
  body .an-mobile-panel .an-mobile-menu>li>a:not(.an-mobile-cta),
  body .an-mobile-panel .an-mobile-cta{
    animation:none!important;
    background-position:0 0,50% 50%!important;
  }
}


/* =========================================================
   ADA NEGRI 1.19.5 — REAL ROTATING RAINBOW BORDER ON TOUCH
   The gradient itself physically rotates with transform, which is
   reliable on iOS/Safari and does not depend on hover or animated
   background-position support.
   ========================================================= */
@keyframes anMobileRainbowSpin1195{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes anMobileRainbowGlow1195{
  0%,100%{box-shadow:0 8px 18px rgba(13,50,105,.07)}
  50%{box-shadow:0 10px 26px rgba(22,102,205,.18)}
}

@media (max-width:1320px){
  /* Every drawer row becomes a clipped rainbow frame. */
  body .an-mobile-panel .an-mobile-menu>li{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
    border-radius:20px!important;
    padding:2.5px!important;
    margin:8px 0!important;
    background:#fffdf9!important;
    box-shadow:0 8px 18px rgba(13,50,105,.07)!important;
    animation:anMobileRainbowGlow1195 2.4s ease-in-out infinite!important;
  }
  body .an-mobile-panel .an-mobile-menu>li::before{
    content:""!important;
    position:absolute!important;
    pointer-events:none!important;
    z-index:0!important;
    left:50%!important;
    top:50%!important;
    width:145%!important;
    aspect-ratio:1/1!important;
    border-radius:50%!important;
    background:conic-gradient(
      from 0deg,
      #ef3340 0deg,
      #ff7a00 45deg,
      #ffd21c 90deg,
      #43c64b 135deg,
      #14a5e5 180deg,
      #4e63d8 225deg,
      #8f44cf 270deg,
      #ed4d8f 315deg,
      #ef3340 360deg
    )!important;
    animation:anMobileRainbowSpin1195 2.15s linear infinite!important;
    will-change:transform!important;
  }
  body .an-mobile-panel .an-mobile-menu>li>a,
  body .an-mobile-panel .an-mobile-menu>li>a:not(.an-mobile-cta){
    position:relative!important;
    z-index:2!important;
    width:100%!important;
    min-height:58px!important;
    margin:0!important;
    padding:12px 14px!important;
    border:0!important;
    border-radius:17px!important;
    background:#fffdf9!important;
    background-image:none!important;
    box-shadow:none!important;
    animation:none!important;
  }
  body .an-mobile-panel .an-mobile-menu>li>a:active{
    transform:scale(.988)!important;
  }

  /* Standalone bottom CTA: rotating gradient + solid blue inner plate. */
  body .an-mobile-panel .an-mobile-cta,
  body .an-mobile-panel .an-mobile-cta:link,
  body .an-mobile-panel .an-mobile-cta:visited{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
    min-height:64px!important;
    margin:16px 0 8px!important;
    padding:3px!important;
    border:0!important;
    border-radius:999px!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:0 12px 28px rgba(11,59,120,.18)!important;
    animation:none!important;
  }
  body .an-mobile-panel .an-mobile-cta::before{
    content:""!important;
    position:absolute!important;
    pointer-events:none!important;
    z-index:0!important;
    left:50%!important;
    top:50%!important;
    width:145%!important;
    aspect-ratio:1/1!important;
    border-radius:50%!important;
    background:conic-gradient(
      #ef3340,
      #ff7a00,
      #ffd21c,
      #43c64b,
      #14a5e5,
      #4e63d8,
      #8f44cf,
      #ed4d8f,
      #ef3340
    )!important;
    animation:anMobileRainbowSpin1195 1.9s linear infinite!important;
    will-change:transform!important;
  }
  body .an-mobile-panel .an-mobile-cta::after{
    content:""!important;
    position:absolute!important;
    pointer-events:none!important;
    z-index:1!important;
    inset:3px!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#0953c0,#0b3b78)!important;
  }
  body .an-mobile-panel .an-mobile-cta span{
    position:relative!important;
    z-index:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:58px!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
  body .an-mobile-panel .an-mobile-cta:active{
    transform:scale(.988)!important;
  }
}

/* Respect iOS/OS accessibility settings: keep the rainbow visible, but static. */
@media (prefers-reduced-motion:reduce){
  body .an-mobile-panel .an-mobile-menu>li,
  body .an-mobile-panel .an-mobile-menu>li::before,
  body .an-mobile-panel .an-mobile-cta::before{
    animation:none!important;
  }
  body .an-mobile-panel .an-mobile-menu>li::before,
  body .an-mobile-panel .an-mobile-cta::before{
    transform:translate(-50%,-50%) rotate(35deg)!important;
  }
}
