@charset "UTF-8";

@media (max-width:1240px){
  .nav-cta .btn{padding:.52rem .95rem;font-size:.79rem}
}

@media (max-width:1120px){
  .brand-sub{display:none}
  .primary a{padding:.6rem .42rem}
  .nav-cta .btn{padding:.5rem .8rem;font-size:.78rem}
}

@media (max-width:1000px){
  .g4{grid-template-columns:repeat(2,1fr)}
  .tiles{grid-template-columns:repeat(3,1fr)}
  .foot-cols{grid-template-columns:1fr 1fr}
  .deflist div{grid-template-columns:190px 1fr;gap:1rem}
}

@media (max-width:1060px){
  .nav-toggle{
    display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:46px;height:46px;padding:0 10px;background:#fff;
    border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;
  }
  .nav-toggle .bar{display:block;height:2.5px;background:var(--primary);width:100%;border-radius:2px}

  .nav-close{
    display:block;position:absolute;top:14px;right:16px;
    width:46px;height:46px;font-size:2rem;line-height:1;border-radius:var(--r-sm);
    background:#fff;border:1px solid var(--line);color:var(--ink);cursor:pointer;
  }

  .primary{
    position:fixed;inset:0;background:#fff;
    transform:translateX(100%);transition:transform .24s ease;
    overflow-y:auto;-webkit-overflow-scrolling:touch;
    padding:5rem 1.2rem 3rem;z-index:120;
  }
  .primary.open{transform:none}
  .primary ul{flex-direction:column;align-items:stretch;gap:0;max-width:460px;margin:0 auto}
  .primary li{border-bottom:1px solid var(--line-soft)}
  .primary a{
    padding:1rem .8rem;font-size:1.02rem;text-align:center;border-radius:0;
    min-height:48px;display:flex;align-items:center;justify-content:center;
  }
  .nav-cta{margin:1.3rem 0 0;border-bottom:0}
  .nav-cta-2{margin:.7rem 0 0}
  .nav-cta a,.nav-cta .btn{padding:1rem 1.2rem;border-radius:var(--r);font-size:1.02rem}
  .cta-more{display:inline}
}

@media (max-width:900px){
  :root{--head-h:66px}

  .util-note{display:none}
  .util-inner{justify-content:center}

  .subbar ul{gap:.3rem 1rem;font-size:.78rem}
  .hero-grid,.split,.split-wide,.split-narrow{grid-template-columns:1fr}
  .hero-media{order:-1}
  .g3{grid-template-columns:repeat(2,1fr)}
  .band-inner{flex-direction:column;align-items:flex-start}
}

@media (max-width:640px){
  :root{--gap:1rem}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .field-row{grid-template-columns:1fr;gap:0}
  .tiles{grid-template-columns:repeat(2,1fr)}
  .foot-cols{grid-template-columns:1fr;gap:1.9rem}
  .foot-base-inner{flex-direction:column;align-items:flex-start}
  .hero-facts{grid-template-columns:1fr}
  .hero-actions .btn,.band-actions .btn{width:100%}
  .deflist div{grid-template-columns:1fr;gap:.15rem;padding:.75rem 0}
  .dtable{font-size:.85rem}
  .dtable th,.dtable td{padding:.55rem .6rem}
  .util{font-size:.75rem}
  .util-links{gap:.9rem}
  .numbered li{padding-left:2.7rem}
  .numbered li::before{width:1.9rem;height:1.9rem;font-size:.85rem}
}

@media (max-width:400px){
  .brand-name{font-size:1rem}
  .brand-mark{width:54px;height:36px}
  h1{font-size:1.65rem}
}

@media (max-height:520px) and (orientation:landscape){
  :root{--head-h:56px;--util-h:32px}
  .primary{padding:4rem 1.2rem 2rem}
  .primary a{padding:.62rem .8rem;min-height:42px;font-size:.94rem}
  .nav-close{top:8px;right:12px;width:40px;height:40px;font-size:1.7rem}
  .hero{padding:1.9rem 0}
  section{padding:1.9rem 0}
}

@media print{
  .util,.site-head,.subbar,.primary,.band,.site-foot,.nav-toggle,.to-top{display:none}
  body{padding-top:0;font-size:12pt;color:#000}
  .panel{box-shadow:none;border:1px solid #999}
  a{color:#000;text-decoration:underline}
}

@media (max-width:640px){
  .foot-links a,.foot-legal a,.foot-addr a{
    display:inline-block;padding:.42rem 0;min-height:40px;line-height:1.55;
  }
  .util-links a{display:inline-flex;align-items:center;min-height:38px;padding:0 .2rem}
  .subbar ul{padding:.2rem 0}
  .subbar a{display:inline-block;padding:.5rem 0;min-height:38px}
  .crumb a,.crumb span{display:inline-block;padding:.45rem 0;min-height:36px}
  .brand{min-height:44px}
  .faq-q{padding-top:1.15rem}
  .more-link a{display:inline-block;padding:.4rem 0;min-height:40px}
  .deflist dd a{display:inline-block;padding:.3rem 0;min-height:36px}
}

@media (max-width:480px){
  .to-top{padding:.5rem .7rem;font-size:.7rem;letter-spacing:.06em}
}
