/* ============================================================
   ASTOR LANE — Responsive Rules
   Breakpoints: 1600 / 1440 / 1280 / 1024 / 820 / 768 / 480 / 414 / 375 / 360 / 320
   ============================================================ */

/* ----- Desktop scale-down (1600 / 1440) ----- */
@media (max-width:1600px){
  .grid-4{grid-template-columns:repeat(4,1fr);}
}
@media (max-width:1440px){
  .wrap{padding-inline:clamp(20px,3vw,48px);}
  .insta-grid{grid-template-columns:repeat(6,1fr);}
}

/* ----- Small laptop / large tablet (1280) ----- */
@media (max-width:1280px){
  .grid-4{grid-template-columns:repeat(3,1fr);}
  .feature-strip{grid-template-columns:repeat(2,1fr);}
  .mega-menu{min-width:560px;}
}

/* ----- Tablet landscape (1024) ----- */
@media (max-width:1024px){
  .main-nav{gap:22px;}
  .split{grid-template-columns:1fr;gap:36px;}
  .split .split-media{order:-1;}
  .footer-grid{grid-template-columns:1fr 1fr 1fr;}
  .footer-brand{grid-column:1/-1;}
  .hero{min-height:74vh;}
}

/* ----- Tablet portrait (820 / 768) ----- */
@media (max-width:820px){
  .main-nav,.header-actions .icon-btn.desktop-only{display:none;}
  .burger{display:flex;}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .insta-grid{grid-template-columns:repeat(4,1fr);}
  .section-head{flex-direction:column;align-items:flex-start;}
  .stat-row{gap:26px;}
}
@media (max-width:768px){
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .feature-strip{grid-template-columns:1fr;}
  .cta-banner-content h2{font-size:var(--step-3);}
}

/* ----- Mobile (480 and below covers 414/390/375/360/320) ----- */
@media (max-width:480px){
  .wrap{padding-inline:18px;}
  .header-row{padding-block:14px;}
  .logo{font-size:1.35rem;}
  .hero{min-height:78vh;align-items:flex-end;}
  .hero-content{padding-bottom:44px;}
  .hero-content h1{font-size:2.1rem;}
  .hero-actions{flex-direction:column;}
  .hero-actions .btn{width:100%;}
  .section{padding-block:44px;}
  .grid-4,.grid-3,.grid-2{grid-template-columns:repeat(2,1fr);gap:16px;}
  .split{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px;}
  .footer-brand{grid-column:1/-1;}
  .insta-grid{grid-template-columns:repeat(3,1fr);}
  .newsletter-form{flex-direction:column;gap:12px;border-bottom:none;}
  .newsletter-form input{border-bottom:1px solid rgba(255,255,255,.5);text-align:center;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .toolbar{flex-direction:column;align-items:flex-start;}
  .mini-cart,.mobile-nav{width:100%;}
  .search-panel{width:92vw;padding:20px;}
  .search-close{right:6vw;}
  .stat-row{flex-wrap:wrap;gap:20px 32px;}
}

/* ----- Very small (320-360) ----- */
@media (max-width:360px){
  .grid-4,.grid-3,.grid-2{grid-template-columns:1fr;}
  .insta-grid{grid-template-columns:repeat(2,1fr);}
  .hero-content h1{font-size:1.75rem;}
  .footer-grid{grid-template-columns:1fr;}
}

/* ----- Interior pages: large/medium ----- */
@media (max-width:1024px){
  .pdp-layout{grid-template-columns:1fr;gap:36px;}
  .cart-layout,.checkout-layout{grid-template-columns:1fr;gap:40px;}
  .order-summary{position:static;}
  .account-layout{grid-template-columns:1fr;}
  .account-nav{display:flex;overflow-x:auto;}
  .account-nav button{white-space:nowrap;border-bottom:none;border-right:1px solid var(--line);}
}

/* ----- Interior pages: tablet/mobile ----- */
@media (max-width:768px){
  .form-row{grid-template-columns:1fr;gap:0;}
  .page-hero{min-height:32vh;}
  .page-hero-content h1{font-size:var(--step-3);}
}

/* ----- Interior pages: mobile ----- */
@media (max-width:480px){
  .cart-row{grid-template-columns:64px 1fr;grid-template-areas:"img info" "img actions";row-gap:10px;}
  .cart-row img{grid-area:img;}
  .cart-row > div:nth-child(2){grid-area:info;}
  .cart-row .qty-stepper{grid-area:actions;}
  .cart-row .price{display:none;}
  .order-item-row{grid-template-columns:1fr auto;row-gap:8px;}
  .order-item-row > span:nth-child(3){display:none;}
  .checkout-steps{font-size:10px;flex-wrap:wrap;}
  .checkout-steps span{padding:0 10px 10px;}
  .job-row{flex-direction:column;align-items:flex-start;}
  .pdp-thumbs img{width:56px;}
  .pdp-actions{flex-direction:column;}
  .filter-bar{width:100%;}
  .filter-bar select{flex:1;}
  .promo-row{flex-direction:column;}
}

/* ----- No-scroll safety ----- */
html,body{overflow-x:hidden;}
img,video{max-width:100%;height:auto;}
