/* Readable typography and fluid layouts at native browser zoom. */
body { font-size:16px; line-height:1.5; }
input,textarea,select { font-size:16px; }
input,textarea,select,button { max-width:100%; }
button,a,input,textarea,select { touch-action:manipulation; }
img { max-width:100%; }
.page-width,.retail-home,.catalog-page .page-width,.collection-directory { width:calc(100% - 64px); max-width:1680px; }
.header-main,.department-inner { width:100%; max-width:1744px; padding-inline:32px; }
.header-main { min-height:96px; height:auto; grid-template-columns:220px minmax(0,1fr) auto; gap:28px; }
.brand-logo { width:190px; }
.header-search { height:52px; min-width:0; }
.header-search input,.header-search select { font-size:16px; }
.header-tools { gap:24px; }
.account-nav small { font-size:13px; }
.account-nav b,.cart-button { font-size:16px; }
.department-inner { min-height:52px; height:auto; gap:26px; overflow-x:auto; }
.department-inner>a { min-height:48px; font-size:15px; white-space:nowrap; }
.nav-note { white-space:nowrap; }
.button,.promo-pill,.quick-add,.shelf-product-add,.checkout-button { min-height:46px; font-size:16px; padding:12px 18px; }
.ui-icon { width:21px; height:21px; flex-basis:21px; }
.motion-arrow { width:19px; height:19px; flex-basis:19px; }
.close-button { width:44px; height:44px; }
.moxi-intro { padding-block:40px 32px; }
.moxi-intro>p { max-width:400px; font-size:17px; }
.home-mosaic { grid-template-rows:minmax(340px,auto) 370px 220px; gap:24px; }
.membership-promo { padding:36px 42px; grid-template-columns:minmax(0,1.2fr) minmax(240px,1fr); min-height:340px; }
.membership-promo .membership-copy h2 { font-size:clamp(32px,3.2vw,46px); }
.membership-promo .membership-copy p { font-size:17px; }
.membership-promo .membership-copy>small { font-size:13px; }
.membership-promo .membership-copy .promo-overline { font-size:14px; }
.membership-promo .membership-copy .promo-pill { font-size:16px; min-height:46px; }
.membership-art { height:280px; }
.campaign-card { grid-template-rows:auto auto minmax(100px,1fr) auto; padding:22px; gap:10px; min-width:260px; }
.campaign-card h2 { font-size:28px; min-height:65px; }
.campaign-card small { font-size:15px; min-height:45px; }
.campaign-card>span { font-size:14px; grid-template-columns:minmax(0,1fr) 19px; min-height:38px; }
.shortcut-card { flex-basis:215px; padding:16px; }
.shortcut-card img { max-height:155px; }
.shortcut-card b { font-size:16px; }
.shelf-heading h2 { font-size:30px; }
.shelf-heading>a { font-size:15px; }
.campaign-wrap,.shortcut-wrap { grid-template-columns:minmax(0,1fr) 48px; }
.campaign-wrap .carousel-edge,.shortcut-wrap .carousel-edge,.merchandise-shelf .shelf-scroll-controls button { width:44px; height:44px; }
.discovery-card { padding:22px; }
.discovery-card h3 { font-size:17px; }
.discovery-card>span,.editorial-tile>b { font-size:15px; }
.shelf-product { flex-basis:270px; }
.shelf-product-image { height:230px; }
.shelf-product-title { font-size:16px; }
.shelf-product>strong { font-size:23px; }
.catalog-page .catalog-layout { grid-template-columns:250px minmax(0,1fr); gap:28px; }
.catalog-page .product-grid { grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:20px; }
.catalog-page .product-card { padding:16px; }
.catalog-page .product-title { font-size:17px; }
.catalog-page .product-price { font-size:25px; }
.catalog-page .product-category,.catalog-page .product-delivery { font-size:14px; }
.catalog-page .shop-department { font-size:15px; min-height:44px; white-space:normal; }
.catalog-page .shop-sidebar-title { font-size:16px; }
.catalog-page .sidebar-department-link { font-size:14px; }
.catalog-page .quick-add { font-size:16px; min-height:46px; }
.catalog-page .catalog-controls { flex-wrap:wrap; gap:12px; }
.catalog-search,.filter-control select { min-height:46px; }
.footer-column a,.footer-column button,.footer-email,.team-column p { font-size:15px; }
.footer-column>b { font-size:17px; }
.cart-drawer { width:min(620px,100%); max-width:100%; }
.cart-item { grid-template-columns:110px minmax(0,1fr); gap:18px; }
.cart-thumb { width:110px; height:120px; }
.cart-item h3 { font-size:17px; }
.cart-item-category,.cart-item-delivery,.cart-assurance,.checkout-security { font-size:14px; }
.cart-item-price,.cart-line-price { font-size:18px; }
.remove-item { font-size:14px; min-height:40px; }
.qty-control button { width:40px; height:40px; }
.qty-control output { width:28px; font-size:16px; }
.account-page .account-wrap { max-width:1500px; padding:36px 32px 64px; }
.account-page .auth-layout { max-width:1200px; gap:64px; }
.account-page .account-card { padding:32px; }
.account-page .account-card h2 { font-size:26px; }
.account-page .account-card p,.account-page .account-card label,.account-feature { font-size:16px; }
.account-page .account-card input { font-size:16px; min-height:48px; }
.account-page .account-grid .button { font-size:16px; }
.priority-panel p,.priority-perks span,.consent-label { font-size:16px; }
.priority-fine { font-size:14px!important; }
.account-page .field-note { font-size:14px!important; }
.account-page .priority-buy small { font-size:14px; }
.admin-top { min-height:84px; height:auto; padding-block:16px; }
.admin-logo { width:190px; height:44px; }
.admin-main { max-width:1744px; padding:36px 32px; }
.auth-card { max-width:600px; padding:40px 48px; margin:16px auto; }
.auth-card h1 { font-size:42px; }
.intro { font-size:17px; }
.auth-form,.product-form { gap:20px; }
.auth-form label,.product-form label,.settings-card label,.setup-box label { font-size:16px; }
.auth-form input,.product-form input,.product-form textarea,.settings-card input,.settings-card textarea,.setup-box input { width:100%; min-width:0; font-size:16px; min-height:48px; padding:13px 14px; }
.primary,.secondary { font-size:16px; min-height:46px; padding:12px 18px; }
.first-setup summary,.setup-box p,.auth-foot,.otpauth-note { font-size:15px; }
.setup-box p,.auth-foot { line-height:1.65; }
.app-panel { grid-template-columns:250px minmax(0,1fr); }
.side-link { font-size:16px; min-height:50px; }
.side-link .ui-icon { width:22px; height:22px; flex-basis:22px; }
.admin-content { padding:32px clamp(20px,3vw,48px) 48px; }
.settings-card { max-width:1100px; }
.product-row { grid-template-columns:64px minmax(140px,1fr) 90px 90px 100px 110px; gap:16px; padding-block:18px; }
.product-thumb { width:60px; height:68px; }
.product-meta strong,.product-row>span,.row-actions button { font-size:15px; }
.product-meta small { font-size:13px; overflow-wrap:anywhere; }
.status { font-size:13px!important; }
.fulfillment-form { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.fulfillment-form label,.fulfillment-form input,.fulfillment-form select { font-size:15px; }
.fulfillment-form input,.fulfillment-form select { min-height:46px; }
.content-head,.view-toolbar,.order-head { flex-wrap:wrap; }
.owner-badge { min-width:0; }
.owner-badge b { overflow-wrap:anywhere; }
.field-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.notice,.notice code { font-size:14px; }
@media(max-width:1100px) {
  .header-main { grid-template-columns:180px minmax(0,1fr) auto; gap:16px; }
  .brand-logo { width:170px; }
  .header-tools { gap:15px; }
  .home-mosaic { grid-template-rows:minmax(340px,auto) 370px 220px; }
  .campaign-card { flex-basis:270px; }
  .catalog-page .catalog-layout { grid-template-columns:220px minmax(0,1fr); gap:20px; }
  .app-panel { grid-template-columns:200px minmax(0,1fr); }
  .product-row { grid-template-columns:60px minmax(100px,1fr) 80px 90px; }
  .product-row .cost-cell { display:none; }
  .product-row .row-actions { grid-column:2/-1; justify-content:flex-start; }
}
@media(max-width:760px) {
  .page-width,.retail-home,.catalog-page .page-width,.collection-directory { width:calc(100% - 32px); }
  .header-main { padding:14px 16px; grid-template-columns:minmax(0,1fr) auto; gap:14px; min-height:128px; }
  .brand-logo { width:160px; }
  .header-tools { gap:14px; }
  .account-nav small { font-size:12px; }
  .account-nav b,.cart-button { font-size:14px; }
  .header-search { grid-column:1/-1; grid-row:2; height:50px; }
  .header-search select { max-width:100px; font-size:14px; }
  .department-inner { padding-inline:16px; gap:22px; }
  .department-inner>a { font-size:14px; }
  .moxi-intro { padding-block:28px; }
  .moxi-intro h1 { font-size:42px; }
  .moxi-intro>p { font-size:16px; max-width:100%; }
  .home-mosaic { grid-template-rows:auto 370px 220px; gap:20px; }
  .membership-promo { grid-template-columns:minmax(0,1fr); padding:26px; }
  .membership-art { display:none; }
  .membership-promo .membership-copy h2 { font-size:34px; }
  .membership-promo .membership-copy p { font-size:16px; }
  .campaign-card { flex-basis:260px; min-width:260px; }
  .shelf-heading h2 { font-size:26px; }
  .discovery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .discovery-card { padding:16px; }
  .discovery-card h3 { font-size:16px; }
  .discovery-card>div:first-child { grid-template-columns:minmax(0,1fr) 19px; gap:6px; }
  .catalog-page .catalog-layout { grid-template-columns:minmax(0,1fr); }
  .catalog-page .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .catalog-page .product-card { padding:12px; }
  .catalog-page .product-title { font-size:16px; }
  .catalog-page .shop-department { min-height:44px; }
  .catalog-page .catalog-banner { padding:24px; }
  .cart-item { grid-template-columns:84px minmax(0,1fr); gap:12px; }
  .cart-thumb { width:84px; height:100px; }
  .cart-item-top { flex-wrap:wrap; }
  .cart-item h3 { font-size:16px; }
  .cart-item-top .remove-item { margin-left:auto; }
  .account-page .account-wrap { padding:26px 16px 40px; }
  .account-page .auth-layout,.account-page .account-grid,.account-page .priority-panel { grid-template-columns:minmax(0,1fr); gap:24px; }
  .account-page .account-card { padding:24px; }
  .account-page .account-page-title { flex-wrap:wrap; }
  .account-page .account-page-title .button { font-size:15px; white-space:normal; }
  .priority-buy { padding:20px; }
  .admin-main { padding:24px 16px; }
  .admin-top { padding-inline:16px; }
  .auth-card { padding:28px 24px; }
  .auth-card h1 { font-size:36px; }
  .secure-label { font-size:0; }
  .app-panel { display:block; }
  .sidebar { border-right:0; border-bottom:1px solid var(--line); padding:10px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .sidebar-title,.sidebar-bottom { display:none; }
  .side-link { flex-direction:row; justify-content:flex-start; text-align:left; font-size:15px; padding:12px; gap:10px; }
  .admin-content { padding:24px 16px; }
  .stat-grid,.field-grid,.fulfillment-form { grid-template-columns:minmax(0,1fr); }
  .field-grid .wide { grid-column:auto; }
  .stat-grid article { min-width:0; }
  .welcome-card { gap:16px; flex-wrap:wrap; }
  .owner-badge { max-width:100%; }
  .owner-badge b { font-size:14px; }
  .product-row { grid-template-columns:54px minmax(0,1fr); gap:12px; }
  .product-row>span,.product-row .row-actions { grid-column:2; grid-row:auto; }
  .view-toolbar { gap:16px; }
  .view-toolbar .primary,.view-toolbar .secondary { font-size:15px; white-space:normal; }
  .settings-card { padding:18px; }
}
@media(max-width:420px) {
  .catalog-page .product-grid { grid-template-columns:minmax(0,1fr); }
  .catalog-page .product-image { aspect-ratio:4/3; }
  .header-tools { gap:9px; }
  .header-main .brand-logo { width:132px; }
  .header-tools .cart-button { gap:4px; }
  .header-tools .account-nav b { font-size:13px; }
  .cart-button>span:last-child { font-size:13px; }
  .cart-item { grid-template-columns:70px minmax(0,1fr); }
  .cart-thumb { width:70px; height:86px; }
  .account-page .priority-panel { padding:22px; }
}
