/*
 * RYME responsive layer
 * Mobile-first overrides for screens below 768px while preserving the desktop UI.
 */

/* Global overflow safety. */
html,body{max-width:100%;overflow-x:clip}
img,video,iframe,svg{max-width:100%}
input,select,textarea,button{max-width:100%}

/* Small tablet polish without changing the desktop composition. */
@media (min-width:768px) and (max-width:1024px){
  .container{width:min(100% - 40px,1200px)}
  .nav{gap:14px}
  .ryme-header-nav .menu{gap:18px!important}
  .hero{min-height:66vh}
  .hero h1{font-size:clamp(48px,7.2vw,72px)}
  .products,.products.woocommerce{grid-template-columns:repeat(3,minmax(0,1fr))}
  .product-page-grid{gap:34px;grid-template-columns:minmax(0,1fr) minmax(330px,.9fr)}
  .product-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ryme-footer-main{gap:6vw}
}

@media (max-width:767.98px){
  :root{--ryme-mobile-gutter:16px;--ryme-tap:46px}

  html{-webkit-text-size-adjust:100%;scroll-padding-top:72px}
  body{font-size:15px;line-height:1.55;overflow-x:hidden}
  body.admin-bar header{top:46px}
  body.ryme-mobile-nav-open{overflow:hidden}

  .container,
  .woocommerce-notices-wrapper,
  .wc-block-cart,
  .wc-block-checkout,
  .ryme-support,
  .ryme-account-page{width:min(100% - (var(--ryme-mobile-gutter) * 2),1200px)!important;max-width:100%!important}

  section{padding:46px 0}
  .page,.ryme-content{padding-top:32px;padding-bottom:58px}
  .ryme-site-main{min-width:0;width:100%}

  h1,h2,h3,p,a,span,button,label,td,th{overflow-wrap:anywhere}
  .btn,.iconbtn,button,input,select,textarea{font-size:16px}
  .btn{min-height:var(--ryme-tap);display:inline-flex;align-items:center;justify-content:center;padding:11px 16px}
  input.search,input.field,input.input-text,select.field,textarea.field{min-height:48px}

  /* Header: true mobile navigation instead of squeezing desktop nav. */
  header{backdrop-}
  header .nav{height:64px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;position:relative!important}
  .ryme-brand-link{justify-self:start;min-width:0;gap:9px}
  .ryme-brand-link img{width:38px!important;height:38px!important;border-radius:9px!important}
  .brand span{display:block!important;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;letter-spacing:1.5px}
  .ryme-actions{justify-self:end;gap:5px!important;min-width:0}
  .ryme-mobile-menu-toggle{display:inline-flex!important;order:-1}
  .ryme-action-link,.ryme-search-toggle,.ryme-mobile-menu-toggle,.theme-toggle,.ryme-cart-toggle{width:44px!important;min-width:44px!important;height:44px!important;padding:0!important;border-radius:12px!important}
  .theme-label,.ryme-account-label,.ryme-wishlist-label{display:none!important}
  .ryme-actions .badge-count{min-width:18px;height:18px;font-size:10px}

  .ryme-header-nav{
    display:block!important;position:fixed!important;left:var(--ryme-mobile-gutter)!important;right:var(--ryme-mobile-gutter)!important;
    top:calc(64px + env(safe-area-inset-top));max-height:calc(100dvh - 82px);overflow:auto;
    padding:10px!important;border:1px solid var(--line)!important;border-radius:18px!important;background:color-mix(in srgb,var(--panel) 96%,transparent)!important;
    box-shadow:0 22px 70px rgba(0,0,0,.38)!important;backdrop-z-index:210!important;
    opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px) scale(.985);transform-origin:top center;transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
  }
  body.admin-bar .ryme-header-nav{top:calc(110px + env(safe-area-inset-top))}
  .ryme-header-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .ryme-header-nav .menu{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:3px!important;width:100%!important}
  .ryme-header-nav .menu>li{width:100%!important}
  .ryme-header-nav .menu a{display:flex!important;align-items:center!important;min-height:46px!important;width:100%!important;padding:11px 12px!important;border-radius:12px!important;font-size:15px!important}
  .ryme-header-nav .menu a:hover,.ryme-header-nav .menu a:focus-visible{background:var(--panel2)!important;transform:none!important}
  .ryme-header-nav .sub-menu{position:static!important;display:block!important;min-width:0!important;margin:2px 0 6px 10px!important;padding:0 0 0 10px!important;border:0!important;border-left:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;transform:none!important}
  .ryme-header-nav .sub-menu a{font-size:14px!important;min-height:42px!important}

  .ryme-header-search{position:static!important}
  .ryme-search-popover{position:fixed!important;left:var(--ryme-mobile-gutter)!important;right:var(--ryme-mobile-gutter)!important;top:calc(70px + env(safe-area-inset-top))!important;width:auto!important;padding:12px!important;border-radius:16px!important;z-index:220!important}
  body.admin-bar .ryme-search-popover{top:calc(116px + env(safe-area-inset-top))!important}
  .ryme-search-form{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
  .ryme-search-form .search{width:100%!important;min-width:0!important}
  .ryme-search-form .btn{min-width:76px!important}

  /* Hero: intentionally re-composed for phones. */
  .hero{min-height:auto!important;padding:54px 0 48px!important;display:block!important;text-align:center!important}
  .ryme-hero-copy{width:100%;min-width:0}
  .hero .eyebrow{font-size:10px!important;letter-spacing:2.7px!important;line-height:1.4}
  .hero h1{font-size:clamp(38px,12vw,56px)!important;line-height:.98!important;letter-spacing:-2.2px!important;margin:16px 0!important}
  .hero p{max-width:34rem!important;font-size:16px!important;line-height:1.65!important;margin:0 auto 22px!important;padding:0 2px}
  .hero-proof{font-size:13px!important;line-height:1.65!important}
  .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:min(100%,420px)!important;margin:0 auto!important}
  .hero-actions .btn{width:100%!important;min-height:50px!important}
  .hero-art{margin:34px auto 0!important;gap:8px!important;width:100%!important;align-items:center!important;overflow:visible!important}
  .mini-poster{width:min(29vw,112px)!important;border-radius:11px!important}
  .mini-poster:nth-child(1){transform:rotateY(10deg) rotateZ(-4deg)!important}
  .mini-poster:nth-child(2){transform:translateY(-10px)!important}
  .mini-poster:nth-child(3){transform:rotateY(-10deg) rotateZ(4deg)!important}

  /* Section headers and content blocks. */
  .section-head,.product-related-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;margin-bottom:20px!important}
  .section-head h2,.product-related-head h2{font-size:28px!important;line-height:1.08!important}
  .section-head>.btn,.product-related-head>.btn{width:100%!important}
  .product-related-head p{text-align:left!important;max-width:none!important}

  /* Product grids: 2 columns on normal phones, 1 on narrow phones. */
  .products,.products.woocommerce{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .card{border-radius:15px!important;min-width:0!important}
  .card:hover{transform:none!important;box-shadow:none!important}
  .card-body{padding:12px!important}
  .card-title{font-size:14px!important;line-height:1.35!important;margin-bottom:6px!important}
  .price-row{gap:6px!important;margin-bottom:10px!important;font-size:13px!important;flex-wrap:wrap!important}
  .card-actions{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
  .card-actions .btn{width:100%!important;min-height:44px!important;padding:9px 8px!important;font-size:13px!important;white-space:normal!important;line-height:1.2!important}
  .ryme-wishlist-button{width:42px!important;height:42px!important;right:8px!important;top:8px!important}
  .sale-pill{left:8px!important;top:8px!important;padding:5px 8px!important;font-size:10px!important}
  .ribbon{grid-template-columns:1fr!important;gap:4px!important;padding:16px!important;border-radius:18px!important}
  .feature{padding:12px!important}

  /* Shop/archive controls. */
  .ryme-shop-head{display:block!important}
  .ryme-shop-head>div:first-child{margin-bottom:18px}
  .ryme-shop-head h1{font-size:36px!important;line-height:1.04!important}
  .ryme-shop-controls{width:100%!important;max-width:none!important;align-items:stretch!important}
  .ryme-shop-primary-controls{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;width:100%!important;gap:9px!important}
  .ryme-shop-primary-controls .search{width:100%!important;min-width:0!important}
  .ryme-filter-toggle{min-width:90px!important}
  .ryme-filter-panel{padding:15px!important;border-radius:16px!important}
  .ryme-filter-grid{grid-template-columns:1fr!important;gap:16px!important}
  .ryme-filter-field .field{width:100%!important}
  .ryme-filter-checks{gap:10px 18px!important}
  .ryme-filter-checks label{min-height:44px!important}
  .ryme-filter-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}
  .ryme-filter-actions .btn{width:100%!important;min-width:0!important}
  .shop-pagination-wrap{margin-top:26px!important;justify-content:center!important;text-align:center!important}
  .shop-pagination-status{width:100%!important}
  .shop-pagination,.shop-pagination .page-numbers{justify-content:center!important;gap:6px!important}
  .shop-page-btn,.shop-pagination a.page-numbers,.shop-pagination span.page-numbers{min-width:44px!important;height:44px!important;padding:0 10px!important}

  /* Product details: gallery first, details second, no sticky desktop behavior. */
  .product-page{padding-top:22px!important;padding-bottom:56px!important}
  .product-breadcrumb{display:flex!important;gap:6px!important;overflow-x:auto!important;white-space:nowrap!important;padding:2px 0 12px!important;font-size:12px!important;scrollbar-width:none}
  .product-breadcrumb::-webkit-scrollbar{display:none}
  .product-page-grid{display:grid!important;grid-template-columns:1fr!important;gap:28px!important;padding:0!important}
  .product-gallery{position:static!important;top:auto!important;width:100%!important;min-width:0!important}
  .product-main-image-wrap,.product-main-image{width:100%!important;max-width:100%!important}
  .product-gallery-thumbs{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important}
  .product-thumb-button{min-height:52px!important}
  .product-copy{padding-top:0!important;min-width:0!important}
  .product-copy h1{font-size:clamp(34px,10vw,48px)!important;line-height:1!important;letter-spacing:-1.8px!important;margin-bottom:14px!important}
  .product-page-price{font-size:18px!important}
  .product-option-block{padding:16px!important;border-radius:17px!important}
  .product-option-block form.cart:not(.variations_form),.product-option-block .woocommerce-variation-add-to-cart{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;gap:9px!important}
  .product-option-block .quantity .qty{width:78px!important;min-height:50px!important}
  .product-option-block .single_add_to_cart_button{width:100%!important;min-width:0!important}
  .product-option-block .ryme-buy-now{grid-column:1/-1!important;width:100%!important}
  .ryme-size-specs{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .ryme-size-spec-row{padding:11px!important}
  .product-info-strip{grid-template-columns:1fr!important;gap:0!important}
  .product-info-chip{padding:12px 0!important}
  .product-related-section{margin-top:52px!important;padding-top:28px!important}
  .product-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .product-related-copy{padding:11px!important}
  .product-related-title{font-size:13px!important}

  /* Cart drawer becomes a bottom sheet on phones. */
  .drawer.ryme-cart-drawer{left:0!important;right:0!important;top:auto!important;bottom:-105%!important;width:100%!important;max-width:none!important;height:min(82dvh,760px)!important;border-left:0!important;border-top:1px solid var(--line)!important;border-radius:22px 22px 0 0!important;transition:bottom .3s ease!important;box-shadow:0 -24px 70px rgba(0,0,0,.5)!important;padding-bottom:env(safe-area-inset-bottom)!important}
  .drawer.ryme-cart-drawer.open{bottom:0!important;right:0!important}
  .drawer-head{padding:16px 18px!important}
  .drawer-body,.ryme-cart-drawer .woocommerce-mini-cart{padding:14px 16px!important}
  .ryme-cart-drawer .woocommerce-mini-cart-item{min-width:0!important}
  .drawer-foot{padding:14px 16px calc(14px + env(safe-area-inset-bottom))!important}
  .close-x,.ryme-cart-close{width:44px!important;height:44px!important;min-width:44px!important}

  /* Full cart page. */
  .ryme-cart-page{padding:32px 0 58px!important}
  .ryme-cart-page>h1{font-size:34px!important;margin:8px 0 22px!important}
  .ryme-cart-layout{grid-template-columns:1fr!important;gap:16px!important}
  .ryme-cart-list,.ryme-cart-summary{padding:16px!important;border-radius:18px!important;min-width:0!important}
  .ryme-cart-row{grid-template-columns:72px minmax(0,1fr)!important;gap:12px!important;padding:14px 0!important}
  .ryme-cart-thumb img{width:72px!important;height:92px!important;border-radius:10px!important}
  .ryme-cart-meta{min-width:0!important}
  .ryme-cart-name{font-size:14px!important;line-height:1.35!important}
  .ryme-cart-qty{flex-wrap:wrap!important}
  .ryme-cart-qty button{width:38px!important;height:38px!important}
  .ryme-cart-line-total{grid-column:2!important;text-align:left!important;margin-top:2px!important}
  .ryme-cart-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .ryme-cart-actions-left,.ryme-cart-actions-right,.ryme-coupon{width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .ryme-coupon .field,.ryme-cart-actions .btn{width:100%!important}
  .ryme-cart-summary{position:static!important}

  /* Checkout. */
  .ryme-checkout-page{padding:32px 0 58px!important}
  .ryme-checkout-page>h1{font-size:34px!important;margin:8px 0 22px!important}
  .ryme-checkout-form{grid-template-columns:1fr!important;gap:16px!important}
  .ryme-checkout-details,.ryme-order-review{padding:17px!important;border-radius:18px!important;min-width:0!important}
  .ryme-checkout-details h2,.ryme-order-review h2{font-size:21px!important;margin-bottom:16px!important}
  .woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper{grid-template-columns:1fr!important;gap:0!important}
  .form-row,.form-row-first,.form-row-last,.form-row-wide{width:100%!important;float:none!important;grid-column:auto!important}
  .select2-container{width:100%!important;max-width:100%!important}
  .ryme-checkout-coupon-row{grid-template-columns:1fr!important}
  .ryme-checkout-coupon-button{width:100%!important}
  .ryme-order-review{position:static!important}
  .ryme-order-review table{table-layout:fixed!important;width:100%!important}
  .ryme-order-review th,.ryme-order-review td{white-space:normal!important;overflow-wrap:anywhere!important}
  #place_order{min-height:52px!important;font-size:16px!important}

  /* My account and authentication. */
  .ryme-account-page{min-height:auto!important;padding:32px 0 58px!important}
  .ryme-account-page>h1{font-size:34px!important;margin:8px 0 22px!important}
  body:not(.logged-in).woocommerce-account .ryme-site-main,
  body:not(.logged-in).woocommerce-account .ryme-account-page,
  body:not(.logged-in).woocommerce-account .woocommerce{display:block!important;min-height:0!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-wrap{width:100%!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-intro{margin-bottom:18px!important;padding:0 2px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-intro h2{font-size:25px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-intro p{font-size:14px!important;line-height:1.6!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-grid{display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:14px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-grid>.u-column1,
  body:not(.logged-in).woocommerce-account .ryme-auth-grid>.u-column2{width:100%!important;max-width:100%!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-panel{width:100%!important;max-width:100%!important;padding:18px!important;border-radius:18px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-panel h2{font-size:23px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-panel input.input-text{min-height:50px!important;font-size:16px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-panel .ryme-auth-submit{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;gap:10px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-panel .woocommerce-form-login__rememberme{min-height:44px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-panel button[name="login"],
  body:not(.logged-in).woocommerce-account .ryme-auth-panel button[name="register"]{width:100%!important;min-height:50px!important}
  body:not(.logged-in).woocommerce-account .ryme-auth-panel .lost_password{text-align:center!important;margin-top:12px!important}
  body.logged-in.woocommerce-account .ryme-account-page .woocommerce,
  .ryme-account-shell{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;width:100%!important}
  .woocommerce-MyAccount-navigation{padding:8px!important;border-radius:16px!important;overflow:hidden!important}
  .woocommerce-MyAccount-navigation ul{display:flex!important;gap:6px!important;overflow-x:auto!important;scroll-snap-type:x proximity;padding:0 0 4px!important;scrollbar-width:none}
  .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none}
  .woocommerce-MyAccount-navigation li{flex:0 0 auto!important;scroll-snap-align:start}
  .woocommerce-MyAccount-navigation a{min-height:44px!important;display:flex!important;align-items:center!important;white-space:nowrap!important;padding:10px 12px!important}
  .woocommerce-MyAccount-content{padding:17px!important;border-radius:18px!important;min-width:0!important}
  .ryme-account-shortcuts{grid-template-columns:1fr!important}
  .woocommerce-MyAccount-content table{width:100%!important;max-width:100%!important}

  /* Generic responsive tables. */
  body .woocommerce table.shop_table_responsive{width:100%!important;table-layout:auto!important}
  body .woocommerce table.shop_table_responsive thead{display:none!important}
  body .woocommerce table.shop_table_responsive tbody,body .woocommerce table.shop_table_responsive tr{display:block!important;width:100%!important}
  body .woocommerce table.shop_table_responsive tr{padding:9px 0!important;border-bottom:1px solid var(--line)!important}
  body .woocommerce table.shop_table_responsive td{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important;width:100%!important;padding:10px 0!important;text-align:right!important;white-space:normal!important}
  body .woocommerce table.shop_table_responsive td::before{flex:0 0 38%;text-align:left!important;color:var(--muted)!important;font-size:11px!important}

  /* Modal: card-style bottom sheet, easier to use with touch. */
  .modal{left:0!important;right:0!important;top:auto!important;bottom:0!important;transform:translateY(105%)!important;width:100%!important;max-width:none!important;max-height:88dvh!important;border-radius:22px 22px 0 0!important;border-left:0!important;border-right:0!important;overflow:auto!important}
  .modal.show{transform:translateY(0)!important}
  .modal-inner{padding:16px!important;padding-bottom:calc(16px + env(safe-area-inset-bottom))!important}
  .product-modal{grid-template-columns:1fr!important;gap:18px!important}
  .product-modal img{max-height:42dvh!important;object-fit:contain!important;background:var(--panel2)!important}
  .product-modal h2{font-size:28px!important}
  .finish-options{grid-template-columns:1fr!important}

  /* Footer: mobile information hierarchy. */
  .ryme-footer-main{display:grid!important;grid-template-columns:1fr!important;gap:30px!important;padding:38px 0 32px!important}
  .ryme-footer-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px 16px!important;width:100%!important}
  .ryme-footer-nav a{min-height:42px!important;display:flex!important;align-items:center!important;padding:7px 0!important}
  .ryme-footer-brand-logo img{width:44px!important;height:44px!important}
  .ryme-footer-wordmark{font-size:24px!important;letter-spacing:3px!important}
  .ryme-footer-brand-block p{font-size:14px!important;line-height:1.65!important}
  .ryme-footer-actions{justify-content:flex-start!important;gap:10px!important;margin-top:28px!important}
  .ryme-footer-actions .btn{flex:1 1 150px!important}
  .ryme-social-row{gap:8px!important}
  .ryme-social-row a{width:44px!important;height:44px!important;min-width:44px!important}
  .ryme-footer-bottom-line{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:7px!important;padding:16px 0 calc(20px + env(safe-area-inset-bottom))!important;line-height:1.5!important}

  /* Support page. */
  .ryme-support{padding:18px 0 58px!important}
  .ryme-support-hero{min-height:auto!important;padding:46px 18px!important;border-radius:20px!important}
  .ryme-support-hero h1{font-size:clamp(38px,12vw,54px)!important;line-height:1!important}
  .ryme-support-hero p{font-size:16px!important;line-height:1.6!important;margin-top:17px!important}
  .ryme-support-hero__button{width:100%!important;min-height:50px!important;margin-top:24px!important}
  .ryme-support-section{padding-top:48px!important}
  .ryme-support-section__head{display:block!important;margin-bottom:18px!important}
  .ryme-support-section__head>p{margin-top:10px!important}
  .ryme-support-options,.ryme-support-info-grid{grid-template-columns:1fr!important;gap:10px!important}
  .ryme-support-option{min-height:92px!important;padding:15px!important;border-radius:17px!important}
  .ryme-support-contact{grid-template-columns:1fr!important;gap:20px!important}
  .ryme-support-contact__intro{position:static!important}
  .ryme-support-form-wrap{padding:16px!important;border-radius:18px!important}
  .ryme-support-form__row{grid-template-columns:1fr!important;gap:14px!important}
  .ryme-support-field input,.ryme-support-field select,.ryme-support-field textarea{font-size:16px!important}
  .ryme-support-faq summary{min-height:64px!important;font-size:15px!important;padding:14px 2px!important}
  .ryme-support-faq__answer{padding:0 42px 18px 2px!important}
}

@media (max-width:374.98px){
  :root{--ryme-mobile-gutter:12px}
  .brand span{display:none!important}
  .ryme-actions{gap:3px!important}
  .ryme-action-link,.ryme-search-toggle,.ryme-mobile-menu-toggle,.theme-toggle,.ryme-cart-toggle{width:42px!important;min-width:42px!important;height:42px!important}
  .products,.products.woocommerce,.product-related-grid{grid-template-columns:1fr!important}
  .card-actions{grid-template-columns:1fr 1fr!important}
  .ryme-shop-primary-controls{grid-template-columns:1fr!important}
  .ryme-filter-toggle{width:100%!important}
  .ryme-size-specs{grid-template-columns:1fr!important}
  .ryme-footer-nav{grid-template-columns:1fr!important}
}

/* Landscape phones: reduce vertical chrome while keeping touch targets. */
@media (max-width:767.98px) and (orientation:landscape) and (max-height:500px){
  .hero{padding:34px 0!important}
  .hero h1{font-size:42px!important}
  .hero p{margin-bottom:16px!important}
  .hero-art{margin-top:22px!important}
  .mini-poster{width:min(18vw,92px)!important}
  .ryme-header-nav{max-height:calc(100dvh - 74px)!important}
  .drawer.ryme-cart-drawer{height:94dvh!important}
  .modal{max-height:94dvh!important}
}

@media (hover:none) and (pointer:coarse){
  .btn:hover,.iconbtn:hover,.card:hover,.product-related-card:hover,.ryme-support-option:hover{transform:none!important}
}

@media (prefers-reduced-motion:reduce){
  .ryme-header-nav,.drawer.ryme-cart-drawer,.modal{transition:none!important}
}

/* Mobile-only account shortcuts live inside the hamburger menu. */
.ryme-mobile-nav-actions{display:none}
@media (max-width:767.98px){
  .ryme-mobile-nav-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid var(--line)}
  .ryme-mobile-nav-actions>a{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:46px!important;padding:10px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:var(--panel2)!important;color:var(--text)!important;text-decoration:none!important;font-size:13px!important;font-weight:800!important}
  .ryme-mobile-nav-actions .badge-count{min-width:18px;height:18px;font-size:10px}
}
@media (max-width:520px){
  .brand span{display:none!important}
  .ryme-actions>.ryme-action-link{display:none!important}
}
@media (max-width:340px){
  .ryme-mobile-nav-actions{grid-template-columns:1fr}
}


/* v1.12.57 — Account addresses responsive */
@media(max-width:820px){
  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
}

@media(max-width:480px){
  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
    min-height:54px!important;
    padding:12px!important;
  }

  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3{
    font-size:17px!important;
  }

  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit{
    min-height:32px!important;
    padding:6px 8px!important;
    font-size:10.5px!important;
  }

  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address{
    min-height:0!important;
    padding:14px!important;
    font-size:13.5px!important;
  }
}



/* v1.12.63 — Keep address header/body in separate rows on the late mobile layer */
@media(max-width:480px){
  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-1,
  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-2{
    display:grid!important;
    grid-template-rows:auto auto!important;
    height:auto!important;
    min-height:0!important;
  }

  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
    position:relative!important;
    grid-row:1!important;
    min-height:56px!important;
    margin:0!important;
    padding:11px 13px!important;
    transform:none!important;
  }

  body.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address{
    position:relative!important;
    grid-row:2!important;
    clear:both!important;
    min-height:0!important;
    margin:0!important;
    padding:17px 15px 20px!important;
    transform:none!important;
  }
}


/* ==========================================================================
   RYME v1.12.76.28 — smooth scrolling and reveal motion
   ========================================================================== */
html{
  scroll-behavior:smooth;
  scroll-padding-top:90px;
}

[id]{
  scroll-margin-top:90px;
}

.ryme-scroll-reveal{
  opacity:0;
  transform:translateY(18px);
  transition:
    opacity .56s cubic-bezier(.2,.75,.25,1) var(--ryme-reveal-delay,0ms),
    transform .56s cubic-bezier(.2,.75,.25,1) var(--ryme-reveal-delay,0ms);
  will-change:opacity,transform;
}

.ryme-scroll-reveal.is-visible{
  opacity:1;
  transform:none;
}

.products .card.ryme-scroll-reveal{
  transform:translateY(14px) scale(.992);
}

.products .card.ryme-scroll-reveal.is-visible{
  transform:none;
}

@media(max-width:767.98px){
  html{
    scroll-padding-top:74px;
  }

  [id]{
    scroll-margin-top:74px;
  }

  .ryme-scroll-reveal{
    transform:translateY(12px);
    transition-duration:.48s;
  }
}

@media(prefers-reduced-motion:reduce){
  html{
    scroll-behavior:auto!important;
  }

  .ryme-scroll-reveal,
  .ryme-scroll-reveal.is-visible{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
  }
}
