/* PRESOURCES mobile-first refinements, desktop unchanged */
@media (max-width: 980px) {
  html,body{max-width:100%;overflow-x:clip}
  .container{max-width:100%}
  .nav{gap:12px}
  .mobile-toggle{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer}
  .mobile-menu.open{max-height:calc(100dvh - 68px);overflow-y:auto}
  img,svg,video,iframe{max-width:100%}
  .contact-grid,.about-grid,.allocation-wrap,.hero-grid{min-width:0}
}
@media (max-width: 700px) {
  .container{width:calc(100% - 36px)}
  .nav{height:68px}
  .brand{min-width:0}
  .brand-logo{max-width:min(56vw,225px);height:auto;object-fit:contain}
  h1,h2,h3,p,a{overflow-wrap:break-word}
  h2{font-size:clamp(1.7rem,7.4vw,2.45rem);line-height:1.16}
  h3{line-height:1.25}
  .section{padding-top:60px;padding-bottom:60px}
  .section-tight{padding-top:52px;padding-bottom:52px}
  .btn,button{max-width:100%}
  input,select,textarea{max-width:100%;min-width:0;font-size:16px}
  .cards-4,.cards-3,.process,.team,.split,.form-row,.mission-grid{grid-template-columns:minmax(0,1fr)}
  .card,.benefit,.step{min-width:0}
  table{max-width:100%}
  .allocation-wrap,.table-wrap,.table-container,[class*="table-wrap"],[class*="table-scroll"]{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .allocation-wrap table,table{font-size:.86rem}
  .allocation-wrap th,.allocation-wrap td,td,th{padding:10px 8px}
  .footer-grid{gap:28px}
}
/* A distinct, clean first screen on mobile: logo + slogan, explanation after scrolling */
@media (max-width: 700px) {
  body.mobile-landing .hero{
    min-height:calc(100svh - 68px);
    display:flex;align-items:center;
    padding:48px 0 80px;
    background:linear-gradient(153deg,#fff 10%,#f4f9fd 68%,#eaf8fb 100%);
  }
  body.mobile-landing .hero::before{width:350px;height:350px;right:-170px;top:-120px;pointer-events:none}
  body.mobile-landing .hero .container{width:calc(100% - 44px)}
  body.mobile-landing .hero-grid{display:block;width:100%}
  body.mobile-landing .hero-copy{max-width:100%}
  body.mobile-landing .hero-copy h1.hero-title-three-lines{
    color:#003D92;font-size:clamp(1.78rem,7.1vw,2.78rem)!important;
    line-height:1.22;letter-spacing:-.035em;margin:0;
    font-weight:600;max-width:100%;text-wrap:pretty;
  }
  body.mobile-landing .hero-title-three-lines span{
    display:block;white-space:normal;overflow-wrap:normal;word-break:normal;
    margin-bottom:.45em;
  }
  body.mobile-landing .hero-title-three-lines span:last-child{margin-bottom:0}
  body.mobile-landing .hero .lead,body.mobile-landing .hero .hero-cta{display:none!important}
  body.mobile-landing .mobile-hero-scroll{
    position:absolute;bottom:24px;left:0;right:0;text-align:center;
    color:#003D92;font-size:.76rem;font-weight:600;letter-spacing:.08em;
  }
  body.mobile-landing .mobile-hero-scroll::after{
    content:'⌄';display:block;font-size:1.75rem;font-weight:400;line-height:1;
  }
  body.mobile-landing .mobile-intro{display:block;padding:60px 0 62px;background:#fff}
  body.mobile-landing .mobile-intro .lead{font-size:1.05rem;line-height:1.75;margin:0 0 25px;color:#324A67}
  body.mobile-landing .mobile-intro .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px}
}
@media (max-width: 390px) {
  body.mobile-landing .hero-copy h1.hero-title-three-lines{font-size:clamp(1.65rem,7vw,1.9rem)!important}
}
@media (min-width: 701px) {
  body.mobile-landing .mobile-intro,body.mobile-landing .mobile-hero-scroll{display:none!important}
}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
