/* ==========================================================================
   Regal Paws USA — Responsive rules (tablet + mobile)
   Load AFTER style.css and shop.css.
   ========================================================================== */

/* Guard against horizontal overflow without breaking the sticky header
   (overflow-x:hidden on html/body would turn body into the scroll container). */
img{height:auto;}
.hero, .newsletter, .announce{max-width:100%;}
/* Mobile-only search lives inside the hamburger menu; hidden on desktop */
.nav-search--mobile{display:none;}

/* ---------- Large tablet / small desktop ---------- */
@media (max-width:1080px){
  .pd-inner{gap:44px;}
}

@media (max-width:980px){
  .grid, .shop-grid{grid-template-columns:repeat(2,1fr);}
  .foot-grid{grid-template-columns:1fr 1fr 1fr;}
  .cart-inner{grid-template-columns:1fr; gap:36px;}
  .checkout-inner{grid-template-columns:1fr; gap:40px;}
  .summary{position:static;}
}

/* ---------- Tablet ---------- */
@media (max-width:900px){
  .pd-inner{grid-template-columns:1fr; gap:36px;}
  .pd-extra{grid-template-columns:1fr; gap:40px;}
  .related > .sec-head{margin-bottom:28px;}
  .contact-grid{grid-template-columns:1fr; gap:36px;}
}

@media (max-width:860px){
  .nav-links{display:none;}
  .nav-toggle{display:flex;}
  .sec-banner{grid-template-columns:1fr;}
  .trust-grid{grid-template-columns:repeat(2,1fr);}
  /* Mobile dropdown menu */
  .nav-links.open{
    display:flex; flex-direction:column; gap:0;
    position:absolute; top:100%; left:0; right:0;
    background:var(--paper); border-bottom:1px solid var(--line);
    box-shadow:0 18px 40px -28px rgba(17,17,16,.5); padding:8px 32px 20px;
  }
  .nav-links.open a{padding:14px 0; border-bottom:1px solid var(--line);}
  .nav-links.open a:last-child{border-bottom:none;}
}

@media (max-width:820px){
  .feature-strip{grid-template-columns:1fr; margin-top:-60px;}
  .feature-card{border-right:1px solid var(--line) !important; border-bottom:none;}
  .feature-card:last-child{border-bottom:1px solid var(--line) !important;}
}

/* ---------- Small tablet / large phone ---------- */
@media (max-width:780px){
  .foot-grid{grid-template-columns:1fr 1fr;}
  .shop-toolbar{flex-direction:column; align-items:stretch;}
  .shop-controls{justify-content:space-between;}
  .checkout-inner .summary{order:-1;}
}

@media (max-width:760px){
  .announce-links{display:none;}
  .announce{justify-content:center;}
}

@media (max-width:720px){
  /* Hide the redundant category strip on mobile (same links live in the
     hamburger menu and the collection sections right below). */
  .cat-strip{display:none;}
  /* Give each homepage collection clear breathing room */
  .section{padding-top:56px;}
  .sec-banner{margin-bottom:32px; gap:28px;}
  .sec-head{width:100%;}
}

/* ---------- Phone ---------- */
@media (max-width:640px){
  .nav-search{display:none;}
  /* Reveal the in-menu search when the hamburger menu is open */
  .nav-links.open .nav-search--mobile{
    display:flex; width:100%; margin-top:14px; min-width:0;
  }
  nav{height:70px;}
  .wrap, .shop, .product-detail, .cart-page, .checkout-page{padding-left:20px; padding-right:20px;}
  .announce{padding:10px 20px; font-size:11px;}
  .hero{padding:96px 20px 120px;}
  /* Hide hero feature list + secondary CTA on mobile */
  .hero-features{display:none;}
  .hero-cta .btn-ghost{display:none;}
  .section{padding:64px 20px 30px;}
  .page-hero{padding:40px 20px;}
  .form-grid{grid-template-columns:1fr;}
  .order-meta{grid-template-columns:1fr;}
  .pd-buy{flex-direction:column;}
  .pd-buy .qty{width:100%; justify-content:space-between;}
  .pd-buy .btn{width:100%;}
  /* Larger, easier tap targets */
  .card-add{padding:11px 16px;}
  .pill{padding:11px 18px;}
  .btn{padding:15px 28px;}
  .success-actions .btn, .empty-state .btn{width:100%;}
}

/* ---------- Small phone ---------- */
@media (max-width:480px){
  /* Declutter the announcement bar */
  .announce-right .social-icons{display:none;}
  .announce{justify-content:center; text-align:center;}
  .logo-text{font-size:19px;}
  .logo-mark{width:34px; height:34px;}
  .nav-right{gap:6px;}
  .hero h1{font-size:28px;}
  .trust-grid{grid-template-columns:1fr; gap:24px;}
  .pd-extra{gap:32px;}
  .summary, .order-card{padding:24px 20px;}
  .success-actions{flex-direction:column;}
}

@media (max-width:520px){
  .grid, .shop-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr;}
  .gallery-thumbs{grid-template-columns:repeat(4,1fr);}
  .cart-row{grid-template-columns:72px 1fr; grid-template-areas:'media info' 'right right'; gap:14px;}
  .cart-row .ci-media{width:72px; height:72px; grid-area:media;}
  .cart-row .ci-info{grid-area:info;}
  .cart-row .ci-right{grid-area:right; flex-direction:row; justify-content:space-between; align-items:center; width:100%; border-top:1px solid var(--line); padding-top:14px;}
  .toast-stack{left:16px; right:16px; max-width:none;}
}
