/* Tablet landscape + small desktop */
@media(max-width:1100px){
  .hero-content{grid-template-columns:1fr;padding:0 6vw 6vh}
  .hero-cards{display:grid;grid-template-columns:1fr 1fr;gap:1px}
  .about-grid,.eco-hosts,.eco-support-row{gap:2.5rem}
  .flag-card {width: calc(50% - 00.75rem);}
  .app-img img {max-height: 800px;}
  .cf-footer {padding: 3rem 0;}
  .spec-block {
    margin: 2rem auto 0;
    padding: 0 3.4vw;
  }
}

/* Tablet portrait (768-1000px) */
@media(max-width:1000px){
  .hero-content,.about-grid,.reg-grid,.faq-lay,.cf-contact-inner,.ft-top{grid-template-columns:1fr;gap:2.5rem}
  .hrow.r3,.ann-grid{grid-template-columns:1fr 1fr}
  .nav-links{display:none}
  .hero-content{padding:0 5vw 5vh}
  .about-bign{display:none}
  .app-inner{grid-template-columns:1fr}
  .spec-radios{grid-template-columns:1fr 1fr}
  .spec-grid{grid-template-columns:1fr}
  .doc-layout{grid-template-columns:1fr;gap:2.5rem}
  .si{padding:0 4vw}
  .about-sec,.spec-sec,.hosp-sec,.doc-sec,.reg-sec,.faq-sec,.ann-sec,.app-sec{padding:6rem 0}
  .eco-sec{padding:6rem 0}
  .umbrella-wrap{overflow-x:auto;padding:0 1rem}
  .hero-photo-panel{width:100%;position:relative;height:280px;margin-top:2rem}
  .hero-photo-panel::before{background:linear-gradient(to bottom,#0C3228 0%,rgba(12,50,40,0.3) 50%,rgba(12,50,40,0.1) 100%)}
  .doc-bg-img{display:none}
}

/* Mobile (max 767px) */
@media(max-width:767px){
  .spec-block {margin-top: 0;}
  .spec-grid {margin-top: 2.5rem;}
  .hero{min-height:auto;}
  .hero-h1{font-size:clamp(2.8rem,10vw,4.5rem)}
  .hero-content{grid-template-columns:1fr;padding:2rem 5vw 3rem;gap:2rem}
  .hero-cards{grid-template-columns:1fr;gap:1px}
  .hero-photo-panel{display:none}
  .hic{padding:1rem 1.2rem}

  .nav-logo {
    position: sticky;
    top: 0;
    z-index: 200;
    width: 100%;
    justify-content: space-between;
    height: 3rem;
  }
  #arusha-lang-select {font-size: 0.9rem !important;min-height: auto;padding: 8px 15px;}
  .nav-cta .btn-nav{display:none}
  
  .hero-overline {flex-direction: column;}
  .mq-strip{overflow:hidden}
  .mi-inner{padding:0 1.2rem}
  .mi-text .mi-value{font-size:0.78rem}

  .about-grid,.reg-grid,.faq-lay,.cf-contact-inner,.app-inner,.ft-top{grid-template-columns:1fr;gap:2rem}
  .ft-top{gap:1.5rem}
  .hrow.r3,.ann-grid,.spec-grid{grid-template-columns:1fr}
  
  .si{padding:0 5vw}
  .about-sec,.spec-sec,.doc-sec,.reg-sec,.faq-sec,.ann-sec,.app-sec,.eco-sec{padding:3rem 0}
  
  nav {gap:1rem;flex-direction: column-reverse;position:relative;height: auto;padding:10px 12px}
  .nav-logo-text{font-size:0.85rem}
  .nav-logo img{height:30px}
  .nav-logo-text img{height:45px !important;}
  .btn-nav{padding:7px 14px;font-size:0.65rem}
  .btn-nav-o{display:none}
  .astat-n {font-size: 2rem;}
  .astat {padding: 1rem 1.35rem;}
  .btn-appt {padding: 12px 34px;}

  .st{font-size:1.5rem}
  .scard{padding:2.5rem 1.8rem}
  
  .form-card{border-radius:0}
  .fb{padding:1.5rem}
  .fh{padding:1.5rem}
  .fg2{grid-template-columns:1fr}
  .spec-radios{grid-template-columns:1fr}
  .phone-wrap .cc-sel{min-width:110px;font-size:0.75rem}

  .doc-layout{grid-template-columns:1fr;gap:1.5rem;margin-top: 2rem;}
  .doc-list {gap: 10px;}
  .doc-panel{position:static;padding:1.5rem}
  .doc-bg-img{display:none}

  .umbrella-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:0 0.5rem}
  .umbrella-svg{min-width:520px}

  .ann-grid{grid-template-columns:1fr}
  .ann-card{padding:1.25rem}
  
  .cf-contact{padding:3rem 3.4vw}
  .cf-contact-inner.si {padding: 0;}
  .cf-card {padding: 1.5rem;}
  .footer-main{padding:3rem 5vw 2rem}
  .ft-bottom{flex-direction:column;align-items:flex-start;gap:0.5rem}
  
  .past-cta{margin-top:2rem}
  .btn-ol-lt{padding:12px 24px;font-size:0.68rem}

  .faq-lay{grid-template-columns:1fr;gap:2rem}
  .faq-side{padding-bottom:0}
  .app-feats{gap:8px}
  .app-img img {width: 100%;}
  
  /* Ticker bar mobile */
  .mq-strip{border-top:1px solid rgba(26,107,90,0.1);border-bottom:1px solid rgba(26,107,90,0.1)}
  .mission-banner{padding:1.2rem 1.4rem;gap:1rem}
  .mission-title{font-size:1.3rem}
  .flags-row{gap:1rem}
  .flag-card{width:100%}
  .flag-abbr{font-size:1rem}
  .flag-name{font-size:0.82rem}
  .mission-directions{padding:8px 14px;font-size:0.64rem}
  .event-card {padding: 1.5rem;}
  .bucket-scene{min-height:480px;padding:1rem 0 2rem}
  .orbit-card{width:108px;padding:10px 12px}
  .orbit-logo{height:36px}
  .orbit-abbr{font-size:1.2rem}
  .orbit-name{font-size:0.82rem}
  .bucket-svg{width:110px}
  .btn-nav,.btn-nav-o,.btn-primary,.btn-ghost,.btn-form,.cf-register-btn{min-height:44px;padding: 10px 34px;}
  .faq-q{padding: 0.85rem 1rem;}
  .faq-a {padding: 0 1rem 0.85rem;}
  .faq-qt {text-align: left;}
  .doc-item{padding: 1rem 1.25rem;gap: 0.75rem;}
  .doc-num {width: 35px;min-width: auto;}
  .doc-num ~ div {width: calc(100% - 43px);}
  .dp-title {font-size: 1.5rem;line-height: normal;}
  .atp-txt {padding: 0.5rem 1.5rem;}
  .spec-radio-label,.spl{min-height:72px}
  input,select,textarea{min-height:44px;font-size:16px!important}
  .cc-sel{min-height:44px;font-size:14px!important}
  .sex-lbl{min-height:44px}
  .flags-group-label {letter-spacing: normal;}
  .sir {margin-bottom: 1.5rem;}
  .sir.sir-a, .sir.sir-d {width: 70px;height: 70px;}
  .spec-h {font-size: 1.75rem;}
  .sbn {font-size: 6rem;top: 1rem;}
  .faq-side .st {font-size: 1.5rem;margin-bottom: 0.85rem;}
  .cf-heading {font-size: 1.5rem;}
  .atp-l {padding: 0 1rem;}
}

@media(max-width:600px){
  .umb-legend{grid-template-columns:1fr}
  .umb-svg{max-width:100%}
  .umbrella-svg{min-width:480px}
}

/* Small mobile (max 480px) */
@media(max-width:480px){
  .si{padding:0 4vw}
  .hero-h1{font-size:clamp(2.4rem,9vw,3.2rem)}
  .hero-sub{font-size:0.82rem}
  .nav-logo-text small{display:none}
  .spec-radios{grid-template-columns:repeat(3,1fr)}
  .scard{padding:2rem 1.4rem}
  .hic{gap:0.8rem;padding:0.9rem 1rem}
  .hic-val{font-size:0.95rem}
  .eco-intro p{font-size:0.82rem}
  .umb-legend{grid-template-columns:1fr}
  .umb-svg{max-width:100%;touch-action:none}
  .ann-grid{grid-template-columns:1fr}
  .ft-top{grid-template-columns:1fr}
  .fb-logo-box img{height:30px}
  .bucket-scene{min-height:400px}
  .orbit-card{width:90px;padding:8px 10px}
  .orbit-logo{height:30px}
  .orbit-abbr{font-size:1rem}
  .orbit-name{font-size:0.72rem}
  .bucket-svg{width:95px}
  .bl-item{font-size:0.72rem;padding:6px 12px}
  .flags-row{gap:0.8rem}
  .mission-banner{flex-direction:column;align-items:flex-start}
  .mission-directions{align-self:stretch;justify-content:center}
}

/* Touch device enhancements */
@media(hover:none){
  .doc-item:hover{transform:none}
  .eco-card:hover{transform:none}
  .hcard:hover{transform:none}
  .cf-item:hover{transform:none}
  .ann-card:hover{transform:none}
}