/* Mobile/tablet responsive rules extracted from style.css */

@media (max-width: 1100px) {
  .product-grid-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1024px) {
  .hero-grid,
  .detail-layout,
  .cart-layout,
  .checkout-layout,
  .form-shell,
  .split-panel,
  .product-grid {
    grid-template-columns: 1fr;
  }

  .hero-meta,
  .mini-feature-grid,
  .form-grid {
    grid-template-columns: 1fr 1fr;
  }

  .cart-summary,
  .checkout-summary {
    position: static;
  }

  .compact-hero-grid { grid-template-columns: 1fr; }

  .utility-strip {
    flex-direction: column;
    align-items: flex-start;
  }

  .simple-page-head {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .simple-page-summary { min-width: 0; }

  .compact-actions,
  .summary-actions {
    justify-content: flex-start;
  }

  .upload-preview-layout { grid-template-columns: 1fr; }
  .upload-preview-side { position: static; }
}

@media (max-width: 900px) {
  .triple-form-grid { grid-template-columns: 1fr; }
  .flow-card { flex-basis: 130px; }
}

@media (max-width: 768px) {
  .product-grid-four { grid-template-columns: 1fr; }
  .cart-summary-sticky { position: static; }
  .compact-cart-section { padding-top: 24px; }
}

@media (max-width: 760px) {
  .container { width: min(100% - 24px, 1120px); }
  .section-block { padding: 54px 0; }

  .nav-toggle {
    display: inline-grid;
    place-items: center;
  }

  .site-nav {
    position: absolute;
    top: 74px;
    left: 12px;
    right: 12px;
    display: none;
    flex-direction: column;
    background: rgba(255,255,255,0.95);
    padding: 14px;
    border-radius: 20px;
    box-shadow: var(--shadow);
  }

  .site-nav.is-open { display: flex; }

  .compact-nav {
    position: static;
    display: flex;
    flex-direction: row;
    background: transparent;
    padding: 0;
    box-shadow: none;
  }

  .hero-copy h1 { font-size: 2.4rem; }

  .hero-meta,
  .mini-feature-grid,
  .form-grid {
    grid-template-columns: 1fr;
  }

  .device-stage { min-height: 360px; }

  .device-card {
    width: 170px;
    padding: 12px;
  }

  .card-a { top: 46px; left: 16px; }
  .card-b { top: 122px; right: 18px; }
  .card-c { bottom: 22px; left: 76px; }

  .action-bar,
  .cta-band-inner,
  .cart-item,
  .cart-item-top,
  .cart-controls,
  .button-row,
  .hero-actions {
    align-items: stretch;
  }

  .button-row,
  .hero-actions,
  .cta-band-inner {
    flex-direction: column;
  }

  .cart-item { grid-template-columns: 1fr; }

  .detail-list div,
  .summary-list div {
    flex-direction: column;
  }

  .detail-list dd,
  .summary-list dd {
    text-align: left;
    max-width: none;
  }

  .page-hero-extended {
    padding-top: 30px;
    padding-bottom: 38px;
  }

  .hero-stack-preview { min-height: 300px; }

  .hero-stack-card {
    width: 160px;
    padding: 12px;
  }

  .stack-one { top: 36px; left: 16px; }
  .stack-two { top: 96px; right: 16px; }
  .stack-three { bottom: 18px; left: 70px; }

  .utility-strip { padding: 22px; }

  .always-open-nav {
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
  }

  .first-section-tight { padding-top: 18px; }

  .simple-page-head { padding: 24px 20px; }

  .upload-target-card { grid-template-columns: 1fr; }

  .empty-cart-actions,
  .detail-bottom-actions,
  .upload-form-actions-centered {
    justify-content: center;
  }

  .detail-bottom-actions .btn,
  .upload-priority-button,
  .upload-secondary-button {
    width: 100%;
  }

  .postal-inline-group {
    flex-direction: column;
    align-items: stretch;
  }

  .clean-card-preview { max-width: 100%; }

  .slot-qr-lefttop {
    left: 6.5%;
    top: 16.5%;
    width: 11.8%;
  }

  .slot-logo-rightbottom {
    right: 7%;
    bottom: 12%;
    width: 13.8%;
  }
}

@media (max-width: 720px) {
  .cart-badge {
    min-width: 18px;
    height: 18px;
    font-size: 0.7rem;
  }
}

@media (max-width: 640px) {
  html, body { overflow-x: hidden; }
  body { line-height: 1.55; }
  .container { width: min(100% - 20px, 1120px); }
  .site-header { backdrop-filter: blur(14px); }
  .nav-wrap { min-height: 64px; gap: 12px; }
  .brand-logo { width: 132px; }
  .site-nav {
    top: 66px;
    left: 10px;
    right: 10px;
    gap: 10px;
    padding: 12px;
    border-radius: 18px;
  }
  .site-nav a, .nav-logout-btn {
    width: 100%;
    min-height: 46px;
    justify-content: center;
  }
  .nav-inline-form { width: 100%; }
  .hero-section { padding: 24px 0 40px; }
  .hero-copy h1, .hero-title {
    font-size: clamp(2rem, 10vw, 2.9rem);
    line-height: 1.02;
    letter-spacing: -0.05em;
    margin-bottom: 14px;
  }
  .hero-text, .section-copy, .detail-description, .signup-intro p, .section-head p {
    font-size: 0.98rem;
  }
  .hero-actions .btn,
  .button-row .btn,
  .compact-actions .btn,
  .empty-cart-actions .btn,
  .button-stack .btn,
  .product-card-order-form .btn {
    width: 100%;
  }
  .hero-flow-stage {
    gap: 12px;
    padding: 16px;
    border-radius: 28px;
  }
  .flow-row { border-radius: 20px; }
  .flow-card {
    flex-basis: 118px;
    padding: 10px;
    border-radius: 18px;
  }
  .flow-card img { border-radius: 12px; }
  .flow-delay-2 { display: none; }
  .section-block { padding: 42px 0; }
  .simple-page-top { padding-bottom: 14px; }
  .first-section-tight { padding-top: 14px; }
  .simple-page-head,
  .slim-page-head,
  .card-panel,
  .product-card,
  .form-panel,
  .wide-panel,
  .cart-summary,
  .checkout-summary,
  .summary-panel,
  .success-shell {
    border-radius: 24px;
  }
  .simple-page-head,
  .form-panel,
  .wide-panel,
  .cart-summary,
  .checkout-summary,
  .summary-panel,
  .success-shell {
    padding: 22px 18px;
  }
  .simple-page-head h1,
  .page-hero h1,
  .detail-panel h1,
  .section-head h1,
  .section-head h2,
  .signup-intro h1,
  .success-shell h1 {
    font-size: clamp(2rem, 9vw, 2.5rem);
    margin-bottom: 12px;
  }
  .product-grid, .product-grid-four { gap: 18px; }
  .product-card-image {
    min-height: 210px;
    padding: 18px 14px;
  }
  .tall-image { min-height: 270px; }
  .product-card-body { padding: 20px 18px; }
  .product-card h2, .product-card h3 {
    font-size: 1.12rem;
    margin-bottom: 8px;
  }
  .product-card-desc {
    min-height: 0;
    font-size: 0.96rem;
  }
  .product-card-action-stack { gap: 14px; }
  .price-text, .detail-price { font-size: 1.45rem; }
  .svg-display-stack { gap: 10px; }
  .svg-card-face { width: min(100%, 240px); border-radius: 18px; }
  .product-card-image-stack.tall-image .svg-card-face { width: min(100%, 220px); }
  .product-card-image-blank::before { width: min(100%, 240px); border-radius: 18px; font-size: 0.9rem; }
  .bottom-cart-cta-wrap {
    position: sticky;
    bottom: 10px;
    z-index: 12;
    padding-bottom: max(8px, env(safe-area-inset-bottom));
    margin-top: 20px;
  }
  .bottom-cart-cta {
    width: 100%;
    min-width: 0;
    box-shadow: 0 14px 30px rgba(22,35,59,0.22);
  }
  .cart-layout { gap: 18px; }
  .cart-item {
    gap: 14px;
    padding: 16px;
  }
  .cart-item-image {
    min-height: 128px;
    padding: 12px;
  }
  .cart-item-body h2 {
    margin: 0;
    font-size: 1.4rem;
    line-height: 1.2;
  }
  .cart-update-form,
  .cart-controls,
  .cart-item-upload-head {
    align-items: stretch;
  }
  .cart-update-form .btn,
  .cart-item-upload-box .btn {
    width: 100%;
  }
  .modern-qty-box {
    width: 100%;
    justify-content: space-between;
  }
  .qty-button {
    width: 44px;
    height: 44px;
  }
  .qty-input {
    width: 56px;
    font-size: 1rem;
  }
  .cart-subtotal {
    justify-content: flex-start;
    text-align: left;
    font-size: 1rem;
  }
  .cart-svg-display-stack .svg-card-face { width: min(100%, 148px); }
}

@media (max-width: 480px) {
  .container { width: min(100% - 16px, 1120px); }
  .nav-wrap { min-height: 60px; }
  .brand-logo { width: 118px; }
  .site-nav { top: 62px; left: 8px; right: 8px; }
  .nav-toggle { width: 40px; height: 40px; }
  .hero-section { padding: 18px 0 34px; }
  .hero-copy h1, .hero-title { font-size: clamp(1.8rem, 10.6vw, 2.5rem); }
  .hero-text, .section-copy { font-size: 0.94rem; }
  .hero-flow-stage { padding: 14px; border-radius: 24px; }
  .flow-card { flex-basis: 104px; padding: 8px; }
  .simple-page-head,
  .form-panel,
  .wide-panel,
  .cart-summary,
  .checkout-summary,
  .summary-panel,
  .success-shell,
  .product-card { border-radius: 20px; }
  .simple-page-head,
  .form-panel,
  .wide-panel,
  .cart-summary,
  .checkout-summary,
  .summary-panel,
  .success-shell { padding: 18px 16px; }
  .product-card-image { min-height: 190px; padding: 14px 12px; }
  .tall-image { min-height: 248px; }
  .product-card-body { padding: 18px 16px 0; }
  .product-card h2, .product-card h3 { font-size: 1.04rem; }
  .svg-card-face { width: min(100%, 210px); border-radius: 16px; }
  .product-card-image-stack.tall-image .svg-card-face { width: min(100%, 196px); }
  .product-card-image-blank::before { width: min(100%, 210px); border-radius: 16px; font-size: 0.84rem; }
  .cart-item { padding: 14px; }
  .cart-item-body h2 { font-size: 1.2rem; }
  .cart-summary h2, .checkout-summary h2 { font-size: 1.5rem; }
  .cart-svg-display-stack .svg-card-face { width: min(100%, 132px); }
  .upload-status-inline { min-height: 38px; padding: 0 12px; font-size: 0.85rem; }
}

@media (max-width: 1180px) {
  .detail-trust-grid { grid-template-columns: 1fr; }
}

@media (max-width: 860px) {
  .trust-grid, .detail-trust-grid { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

@media (max-width: 640px) {
  .site-footer {
    margin-top: 72px;
    padding: 40px 0 20px;
  }

  .footer-logo {
    width: 148px;
  }

  .footer-copy,
  .footer-note-list,
  .footer-bottom p {
    font-size: 0.92rem;
  }
}

@media (max-width: 1200px) {
    .lp-usecase-grid.lp-usecase-grid-polished {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .lp-usecase-grid.lp-usecase-grid-polished {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}

@media (max-width: 900px){
  .home-lp-c .hero-actions{
    margin-bottom: 34px;
  }

  .home-lp-c .lp-mini-points,
  .home-lp-c .lp-mini-points-polished,
  .home-lp-c .lp-mini-points-horizontal{
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px){
  .home-lp-c .lp-copy-c-refined .hero-text{
    margin-bottom: 26px;
  }

  .home-lp-c .hero-actions{
    gap: 14px;
    margin-bottom: 28px;
  }

  .home-lp-c .lp-mini-points,
  .home-lp-c .lp-mini-points-polished,
  .home-lp-c .lp-mini-points-horizontal{
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .home-lp-c .lp-mini-point{
    padding: 16px 16px;
  }
}

@media (max-width: 640px){
  .home-lp-c .lp-mini-point{
    padding: 20px 16px;
  }
}

@media (max-width: 1180px){
  .home-lp-c .lp-shell-c-refined,
  .home-lp-c .lp-shell-c,
  .home-lp-c .lp-shell{
    grid-template-columns:minmax(0, 1fr) minmax(340px, 470px);
    column-gap:30px;
  }

  .home-lp-c .lp-hero-visual-polished,
  .home-lp-c .hero-top-slider{
    max-width:560px;
    margin-top:18px;
  }

  .home-lp-c .hero-top-slide{
    flex-basis:380px;
  }

  .home-lp-c .lp-mini-points-horizontal{
    gap:18px;
    margin-top:28px;
  }

  @keyframes heroTopSliderScroll {
    from { transform: translateX(0); }
    to { transform: translateX(calc(-398px * 6)); }
  }
}

@media (max-width: 900px){
  .home-lp-c .lp-shell-c-refined,
  .home-lp-c .lp-shell-c,
  .home-lp-c .lp-shell{
    grid-template-columns:1fr;
    row-gap:24px;
  }

  .home-lp-c .lp-hero-visual-polished{
    justify-self:center;
    margin-top:0;
    padding-top:0;
    max-width:520px;
  }

  .home-lp-c .lp-mini-points-horizontal{
    grid-template-columns:1fr 1fr;
    margin-top:18px;
  }
}

@media (max-width: 640px){
  .home-lp-c .lp-copy-c-refined .hero-text{
    margin-bottom:26px;
  }

  .home-lp-c .hero-actions{
    gap:14px;
  }

  .home-lp-c .lp-hero-visual-polished,
  .home-lp-c .hero-top-slider{
    max-width:100%;
  }

  .home-lp-c .hero-top-slider-track{
    gap:11px;
  }

  .home-lp-c .hero-top-slide{
    flex-basis:240px;
  }

  .home-lp-c .lp-mini-points-horizontal{
    grid-template-columns:1fr;
    gap:14px;
    margin-top:12px;
  }

  @keyframes heroTopSliderScroll {
    from { transform: translateX(0); }
    to { transform: translateX(calc(-251px * 6)); }
  }
}

@media (max-width: 1024px) {
  .support-page-head,
  .support-contact-form {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .site-nav a,
  .nav-logout-btn {
    width: 100%;
    justify-content: center;
  }

  .support-head-actions {
    justify-content: stretch;
  }

  .support-head-actions .btn {
    width: 100%;
  }

  .footer-inline-form {
    width: 100%;
  }

  .footer-link-button {
    width: 100%;
    text-align: left;
  }

  .faq-item {
    padding: 22px 18px;
  }

  .upload-preview-summary {
    gap: 12px;
  }
}

@media (max-width: 768px) {
  .confirm-actions-centered {
    flex-direction: column;
  }

  .confirm-actions-centered .inline-form,
  .confirm-actions-centered .btn {
    width: 100%;
  }

  .faq-item-clean {
    padding: 20px 18px;
  }

  .faq-item-clean h2 {
    font-size: 1.15rem;
  }
}

@media (max-width: 1024px) {
  .orders-page-head {
    grid-template-columns: 1fr;
    align-items: start;
  }
}

@media (max-width: 760px) {
  .orders-content-panel {
    padding: 18px;
  }

  .orders-head-actions {
    width: 100%;
    justify-content: stretch;
  }

  .orders-head-actions .btn {
    width: 100%;
  }
}

@media (max-width: 760px) {
  .orders-history-head,
  .orders-history-payment {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .orders-history-topcell-center,
  .orders-history-topcell-right {
    align-items: flex-start;
    text-align: left;
  }

  .orders-history-order-meta {
    justify-content: flex-start;
  }

  .orders-history-order-meta-between {
    justify-content: flex-start;
  }

  .btn-receipt-inline {
    margin-left: 0;
  }

  .orders-history-receipt-note {
    margin-left: 0;
    text-align: left;
  }

  .orders-history-detail-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .orders-history-line {
    grid-template-columns: 1fr;
    gap: 2px;
  }
}

@media (max-width: 960px){.admin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.admin-detail-grid{grid-template-columns:1fr;}.admin-order-row,.admin-order-row-detailed{grid-template-columns:repeat(2,minmax(0,1fr));}.admin-orders-panel{padding:22px;}}

@media (max-width: 640px){.admin-kpi-grid,.admin-order-row,.admin-order-row-detailed{grid-template-columns:1fr;}.admin-auth-card{padding:24px;}.admin-item-head{flex-direction:column;align-items:flex-start;}.admin-filter-bar,.admin-filter-actions{align-items:stretch;}.btn-admin-compact{width:100%;}.admin-filter-item{width:100%;}}

@media (max-width: 1024px) {
  .lp-template-download-panel {
    margin-top: 56px;
  }

  .lp-template-download-panel h2 {
    padding: 22px 22px 10px;
    font-size: clamp(1.58rem, 5.3vw, 2.25rem);
  }

  .lp-template-download-bottom {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 10px 22px 18px;
  }

  .lp-template-download-button {
    min-width: 0;
    width: 100%;
    min-height: 50px;
    font-size: 0.96rem;
  }

  .detail-template-section,
  .upload-template-panel {
    padding: 22px 20px 22px;
  }
}

@media (max-width: 760px) {
  .lp-template-download-section {
    padding-top: 54px;
    padding-bottom: 0;
  }

  .template-download-grid {
    grid-template-columns: 1fr;
  }

  .template-download-card {
    min-height: 70px;
    padding: 12px 14px;
  }

  .template-app-icon {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
  }

  .detail-template-head h2,
  .upload-template-head h3 {
    font-size: 1.2rem;
  }
}

@media (max-width: 767px) {
  .warranty-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 860px) {
  .admin-history-filter-bar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .warranty-request-panel {
    padding: 22px;
    border-radius: 24px;
  }

  .warranty-request-form,
  .admin-status-bottom-row {
    grid-template-columns: 1fr;
  }

  .admin-status-submit-wrap .btn {
    width: 100%;
  }
}

@media (max-width: 860px) {
  .receipt-guest-form {
    grid-template-columns: 1fr;
  }
}

/* --- mobile hero heading adjustment --- */
@media (max-width: 640px) {
  .home-lp-c .lp-copy-c-refined h1,
  .home-lp-c .hero-copy h1,
  .home-lp-c .hero-title,
  .home-lp-c .page-hero h1 {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 0 18px;
    text-align: left;
    font-size: clamp(1.32rem, 6.4vw, 1.9rem);
    line-height: 1.16;
    letter-spacing: -0.03em;
    word-break: keep-all;
    overflow-wrap: normal;
    white-space: normal;
    text-wrap: balance;

  }

  .home-lp-c .lp-copy-c-refined,
  .home-lp-c .hero-copy {
    min-width: 0;
  }

  .home-lp-c .lp-copy-c-refined h1 .hero-title-break,
  .home-lp-c .hero-copy h1 .hero-title-break,
  .home-lp-c .hero-title .hero-title-break,
  .home-lp-c .page-hero h1 .hero-title-break {
    display: block;
  }

  .home-lp-c .lp-copy-c-refined h1 .hero-line-2,
  .home-lp-c .hero-copy h1 .hero-line-2,
  .home-lp-c .hero-title .hero-line-2,
  .home-lp-c .page-hero h1 .hero-line-2 {
    display: block;
    white-space: nowrap;
  }


  .home-lp-c .lp-copy-c-refined h1 .hero-title-break,
  .home-lp-c .hero-copy h1 .hero-title-break,
  .home-lp-c .hero-title .hero-title-break,
  .home-lp-c .page-hero h1 .hero-title-break {
    display: block;
  }

}

@media (max-width: 480px) {
  .home-lp-c .lp-copy-c-refined h1,
  .home-lp-c .hero-copy h1,
  .home-lp-c .hero-title,
  .home-lp-c .page-hero h1 {
    font-size: clamp(1.56rem, 8vw, 2.1rem);
    line-height: 1.18;
    letter-spacing: -0.028em;
  }
}


/* ===== Hero visual switch for PC / mobile ===== */
.lp-hero-visual-mobile-only{display:none !important;}
.lp-hero-visual-desktop-only{display:grid !important;}

@media (max-width: 640px){
  .lp-hero-visual-mobile-only{
    display:grid !important;
    order:-1;
    width:100%;
    margin-top:-10px;
    margin-bottom:8px;
  }

  .lp-hero-visual-desktop-only{
    display:none !important;
  }

  .lp-hero-visual-mobile-only .hero-top-slider{
    width:100%;
    margin:0;
  }

  .lp-hero-visual-mobile-only .hero-top-slide img{
    width:100%;
    height:auto;
    object-fit:cover;
  }
}

@media (max-width: 640px) {
  .home-lp-c .hero-section.lp-hero.lp-hero-c.lp-hero-c-compact {
    padding-top: 22px !important;
  }

  .home-lp-c .hero-text,
  .home-lp-c .lp-copy-c-refined .hero-text {
    display: none !important;
  }
}

@media (max-width: 1024px) {
  .page-hero-extended-inner,
  .hero-split,
  .detail-main-grid,
  .mypage-grid,
  .orders-layout,
  .receipt-request-layout {
    grid-template-columns: 1fr;
  }

  .detail-side,
  .mypage-side,
  .orders-side {
    position: static;
  }
}

@media (max-width: 640px) {
  .product-card,
  .card-panel,
  .cart-summary,
  .checkout-summary,
  .upload-form-panel,
  .upload-preview-side,
  .mypage-card,
  .order-history-card {
    border-radius: 20px;
  }

  .product-card-copy,
  .cart-item-body,
  .checkout-summary,
  .mypage-order-detail,
  .order-history-body {
    min-width: 0;
  }

  .cart-item h2,
  .order-history-title,
  .mypage-order-title,
  .detail-copy h1 {
    word-break: break-word;
  }

  .cart-sub-desc,
  .order-history-meta,
  .mypage-order-meta,
  .summary-list dd,
  .detail-list dd {
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .upload-preview-frame,
  .clean-card-preview,
  .original-preview-card,
  .original-card-preview {
    min-height: auto;
  }

  .upload-preview-frame {
    padding: 12px;
  }

  .template-download-grid,
  .support-card-grid,
  .feature-grid,
  .mini-feature-grid,
  .lp-card-grid,
  .product-grid-four,
  .orders-grid {
    grid-template-columns: 1fr;
  }

  .quantity-control,
  .cart-controls,
  .summary-actions,
  .compact-actions,
  .detail-bottom-actions {
    width: 100%;
  }

  .quantity-control > *,
  .cart-controls .btn,
  .summary-actions .btn,
  .compact-actions .btn,
  .detail-bottom-actions .btn {
    width: 100%;
  }

  .hero-text br,
  .section-copy br {
    display: none;
  }
}

@media (max-width: 430px) {
  .hero-copy h1,
  .hero-title {
    font-size: clamp(1.8rem, 9vw, 2.35rem);
  }

  .simple-page-head,
  .utility-strip,
  .card-panel,
  .cart-item,
  .checkout-summary,
  .upload-form-panel,
  .upload-preview-side,
  .mypage-card,
  .order-history-card {
    padding-left: 16px;
    padding-right: 16px;
  }

  .device-stage,
  .hero-stack-preview {
    min-height: 250px;
  }

  .device-card,
  .hero-stack-card {
    width: 140px;
  }
}


@media (max-width: 760px) {
  .container { width: 88%; max-width: none; }

  body.nav-open {
    overflow: hidden;
  }

  body.nav-open::before {
    content: '';
    position: fixed;
    inset: 0;
    background: rgba(22, 35, 59, 0.18);
    z-index: 134;
  }

  .site-header {
    position: sticky;
    top: 0;
    z-index: 148;
    transition: transform .24s ease, opacity .24s ease;
    will-change: transform, opacity;
  }

  .site-header.is-scrolling-down {
    transform: translateY(calc(-100% - 8px));
    opacity: 0;
  }

  .nav-wrap {
    position: relative;
    justify-content: flex-start;
    padding-right: 56px;
  }

  .brand-mark,
  .brand-mark-image {
    margin: 0;
  }

  .nav-toggle {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    z-index: 151;
    font-size: 0;
  }

  .nav-toggle::before,
  .nav-toggle::after {
    content: '';
    position: absolute;
    left: 50%;
    width: 18px;
    height: 2.4px;
    background: #16233B;
    border-radius: 999px;
    transform: translateX(-50%);
    transition: transform .22s ease, top .22s ease, opacity .18s ease, box-shadow .18s ease;
  }

  .nav-toggle::before {
    top: 17px;
    box-shadow: 0 6px 0 #16233B;
  }

  .nav-toggle::after {
    top: 29px;
  }

  .nav-toggle.is-open::before {
    top: 23px;
    box-shadow: none;
    transform: translateX(-50%) rotate(45deg);
  }

  .nav-toggle.is-open::after {
    top: 23px;
    transform: translateX(-50%) rotate(-45deg);
  }

  .site-nav {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: auto;
    width: min(84vw, 344px);
    min-height: 100dvh;
    height: 100dvh;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 10px;
    padding: 78px 22px 126px;
    border-radius: 0;
    background: rgba(255,255,255,0.985);
    box-shadow: -20px 0 48px rgba(22,35,59,0.16);
    transform: translate3d(108%, 0, 0);
    transition: transform .28s ease;
    z-index: 150;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .site-nav.is-open {
    transform: translate3d(0, 0, 0);
  }

  .site-nav a,
  .nav-logout-btn {
    display: inline-flex;
    align-items: center;
    width: 100%;
    min-height: 48px;
    justify-content: flex-start;
    font-size: 0.88rem;
    font-weight: 400;
    line-height: 1.35;
    padding: 0 14px;
    border-radius: 999px;
    box-sizing: border-box;
  }

  .site-nav .nav-cart-link {
    min-height: 48px;
    margin-bottom: 10px;
  }

  .site-nav .nav-cart-link .nav-cart-icon {
    display: none;
  }

  .site-nav .cta-login,
  .site-nav .cta-signup {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 64px;
    padding: 0 18px;
    line-height: 1;
    border-radius: 999px;
    font-weight: 500;
  }

  .hero-copy h1,
  .hero-title {
    font-size: clamp(1.76rem, 7.25vw, 2.12rem);
    line-height: 1.12;
  }

  .hero-actions {
    gap: 12px;
    padding-bottom: 92px;
  }

  .hero-actions .btn,
  .button-row .btn,
  .compact-actions .btn,
  .empty-cart-actions .btn,
  .button-stack .btn,
  .product-card-order-form .btn {
    width: 100%;
    font-size: 14px;
  }

  .home-login-button {
    display: inline-flex;
  }

  .home-mobile-sticky-cta {
    position: fixed;
    left: 6%;
    width: calc(100vw - 12%);
    max-width: calc(100vw - 12%);
    right: auto;
    bottom: calc(22px + env(safe-area-inset-bottom));
    z-index: 145;
    margin: 0;
    min-height: 60px;
    padding: 0 18px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 22px rgba(22,35,59,0.14);
    box-sizing: border-box;
  }

  .home-mobile-sticky-cta::before {
    content: none;
  }

  .site-footer {
    padding-bottom: 126px;
  }

  .footer-brand {
    text-align: center;
  }

  .footer-logo-link {
    display: inline-flex;
    justify-content: center;
    width: 100%;
  }

  .footer-logo {
    margin-inline: auto;
  }

  .footer-copy {
    display: none;
  }

  .footer-heading,
  .footer-links a,
  .footer-link-button,
  .footer-bottom p {
    font-size: 0.9rem;
    font-weight: 400;
  }
}

@media (max-width: 640px) {
  .container { width: 88%; }
  .site-header { backdrop-filter: blur(14px); }
  .brand-logo { width: 132px; }

  .site-nav {
    width: min(86vw, 324px);
    min-height: 100dvh;
    height: 100dvh;
    padding: 74px 22px 122px;
  }

  .hero-copy h1,
  .hero-title {
    font-size: clamp(1.66rem, 6.95vw, 1.96rem);
  }
}

@media (max-width: 480px) {
  .container { width: 88%; }
  .nav-wrap { min-height: 60px; }
  .brand-logo { width: 124px; }
  .nav-toggle { width: 44px; height: 44px; }

  .nav-toggle::before {
    top: 15px;
  }

  .nav-toggle::after {
    top: 27px;
  }

  .nav-toggle.is-open::before,
  .nav-toggle.is-open::after {
    top: 21px;
  }

  .hero-copy h1,
  .hero-title {
    font-size: clamp(1.56rem, 6.7vw, 1.82rem);
  }

  .home-mobile-sticky-cta {
    bottom: calc(20px + env(safe-area-inset-bottom));
    min-height: 58px;
    left: 6%;
    width: calc(100vw - 12%);
    max-width: calc(100vw - 12%);
    right: auto;
  }

  .home-mobile-sticky-cta::before {
    content: none;
  }
}


@media (max-width: 760px) {
  .site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
  }

  .site-shell {
    padding-top: 60px;
  }

  .nav-toggle::before {
    top: 15px;
  }

  .nav-toggle::after {
    top: 27px;
  }

  .nav-toggle.is-open::before,
  .nav-toggle.is-open::after {
    top: 21px;
  }

  .home-desktop-products-cta {
    display: none !important;
  }

  .home-login-button {
    display: inline-flex !important;
    min-height: 60px;
    border-radius: 999px;
  }

  .home-mobile-fixed-cta {
    position: fixed;
    left: 6%;
    right: 6%;
    bottom: calc(18px + env(safe-area-inset-bottom));
    width: auto;
    min-height: 62px;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    z-index: 146;
    box-sizing: border-box;
    box-shadow: 0 10px 22px rgba(22,35,59,0.14);
  }

  .site-footer {
    padding-bottom: 118px;
  }

  .home-lp-c .hero-actions {
    gap: 10px;
    padding-bottom: 0;
  }

  .home-lp-c .lp-copy-c-refined h1,
  .home-lp-c .hero-copy h1,
  .home-lp-c .hero-title,
  .home-lp-c .page-hero h1 {
    margin-bottom: 28px !important;
  }

  .home-lp-c .hero-top-slider,
  .home-lp-c .lp-hero-visual-mobile-only .hero-top-slider {
    max-width: 100%;
  }

  .home-lp-c .hero-top-slider-track {
    gap: 12px;
  }

  .home-lp-c .hero-top-slide {
    flex-basis: 274px;
  }

  .mobile-copy,
  .page-hero h1,
  .page-hero .section-title,
  .page-title,
  .catalog-page h1,
  .product-list-page h1,
  .faq-page h1,
  .contact-page h1,
  .mypage-page h1,
  .login-page h1,
  .register-page h1 {
    font-size: 24px !important;
    line-height: 1.18 !important;
    letter-spacing: -0.03em;
  }

  .home-lp-c .lp-usecase-panel h2 .mobile-copy,
  .home-lp-c .lp-template-download-panel h2 .mobile-copy,
  .home-lp-c .lp-usecase-panel p .mobile-copy {
    display: inline;
  }

  .home-lp-c .lp-usecase-panel h2 .desktop-copy,
  .home-lp-c .lp-template-download-panel h2 .desktop-copy,
  .home-lp-c .lp-usecase-panel p .desktop-copy {
    display: none;
  }

  .home-lp-c .lp-template-download-panel h2 {
    font-size: clamp(1.5rem, 6.2vw, 1.9rem);
    line-height: 1.22;
  }

  .home-lp-c .lp-template-download-bottom p {
    font-size: 0.98rem;
  }

  .product-card h2,
  .product-card h3 {
    font-size: 1.18rem;
    line-height: 1.2;
  }

  .product-title-split {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 0.16em;
    white-space: nowrap;
    flex-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .product-title-split .product-title-brand,
  .product-title-split span:last-child {
    display: inline;
    margin: 0;
  }

  .product-card-body {
    min-width: 0;
  }

  .product-card-desc {
    min-height: auto;
    line-height: 1.6;
  }
}

@media (min-width: 761px) {
  .home-mobile-fixed-cta,
  .mobile-copy {
    display: none !important;
  }
}


@media (max-width: 640px) {
  .home-lp-c .lp-shell-c-refined {
    row-gap: 0;
  }

  .home-lp-c .hero-top-slider {
    margin-top: 0;
  }

  .home-lp-c .hero-actions {
    gap: 8px;
  }
}


@media (max-width: 760px) {
  .home-lp-c .lp-hero-visual-mobile-only {
    margin-top: 18px;
    margin-bottom: 34px;
  }

  .home-lp-c .lp-copy-c-refined h1,
  .home-lp-c .hero-copy h1,
  .home-lp-c .hero-title,
  .home-lp-c .page-hero h1 {
    margin-top: 4px;
    margin-bottom: 38px !important;
    font-size: clamp(2rem, 9vw, 2.55rem);
    line-height: 1.16;
  }

  .home-lp-c .hero-actions .btn,
  .home-lp-c .home-login-button,
  .home-lp-c a.btn.btn-amazon {
    min-height: 62px;
  }

  .home-lp-c .hero-actions {
    gap: 8px;
  }

  .home-lp-c .lp-usecase-panel h2 .mobile-copy {
    display: inline;
  }

  .home-lp-c .muted-section .section-head h2 {
    font-size: clamp(1.9rem, 7.4vw, 2.35rem);
    line-height: 1.18;
  }

  .home-lp-c .lp-usecase-panel > .center-head > p:last-child {
    display: none;
  }

  .home-lp-c .lineup-head {
    margin-bottom: 14px;
  }

  .home-lp-c .lineup-head h2 {
    margin-bottom: 12px;
    font-size: 24px;
    line-height: 1.18;
  }

  .home-lp-c .lineup-head > p:last-child {
    display: none;
  }

  .home-lp-c .muted-section .section-head {
    row-gap: 8px;
  }

  .home-lp-c .muted-section .product-card-desc,
  .home-lp-c .muted-section .product-card-kicker {
    display: none;
  }

  .home-lp-c .muted-section .product-card-footer .text-link {
    display: inline-flex;
    align-items: center;
    margin-left: auto;
  }

  .home-lp-c .muted-section .product-card-body {
    padding-top: 18px;
  }

  .home-lp-c .muted-section .product-card h3,
  .home-lp-c .muted-section .product-card h2 {
    margin-bottom: 10px;
  }

  .home-lp-c .muted-section .product-card-footer {
    justify-content: space-between;
  }

  .home-lp-c .lp-template-download-section {
    padding-top: 28px;
  }

  .home-lp-c .lp-template-download-panel {
    margin-top: 28px;
  }

  .home-lp-c .lp-template-download-bottom p {
    font-size: 0.98rem;
    line-height: 1.9;
  }
}

@media (max-width: 640px) {
  .home-lp-c .hero-actions .btn,
  .home-lp-c .home-login-button,
  .home-lp-c a.btn.btn-amazon {
    min-height: 60px;
  }

  .home-lp-c .lp-hero-visual-mobile-only {
    margin-bottom: 24px;
  }

  .home-lp-c .lp-copy-c-refined h1,
  .home-lp-c .hero-copy h1,
  .home-lp-c .hero-title,
  .home-lp-c .page-hero h1 {
    margin-bottom: 36px !important;
  }
}

@media (min-width: 761px) {
  .home-lp-c .hero-actions .home-login-button {
    display: none !important;
  }
}

@media (max-width: 760px) {
  .home-lp-c .hero-top-slider,
  .home-lp-c .lp-hero-visual-mobile-only .hero-top-slider {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0.18) 4%,
      rgba(0,0,0,0.48) 8%,
      rgba(0,0,0,0.82) 12%,
      rgba(0,0,0,1) 16%,
      rgba(0,0,0,1) 84%,
      rgba(0,0,0,0.82) 88%,
      rgba(0,0,0,0.48) 92%,
      rgba(0,0,0,0.18) 96%,
      rgba(0,0,0,0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0.18) 4%,
      rgba(0,0,0,0.48) 8%,
      rgba(0,0,0,0.82) 12%,
      rgba(0,0,0,1) 16%,
      rgba(0,0,0,1) 84%,
      rgba(0,0,0,0.82) 88%,
      rgba(0,0,0,0.48) 92%,
      rgba(0,0,0,0.18) 96%,
      rgba(0,0,0,0) 100%
    );
  }
}


/* ===== 2026-04-11 mobile consistency fixes ===== */
@media (max-width: 760px) {
  .home-lp-c .lp-copy-c-refined h1,
  .home-lp-c .hero-copy h1,
  .home-lp-c .hero-title,
  .home-lp-c .page-hero h1 {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 0 18px;
    text-align: left;
    font-size: clamp(1.14rem, 5.8vw, 1.62rem) !important;
    line-height: 1.18 !important;
    letter-spacing: -0.028em;
    white-space: normal;
    overflow-wrap: normal;
    word-break: keep-all;
    text-wrap: unset;
  }

  .home-lp-c .lp-copy-c-refined h1 .hero-line-1,
  .home-lp-c .lp-copy-c-refined h1 .hero-line-2,
  .home-lp-c .hero-copy h1 .hero-line-1,
  .home-lp-c .hero-copy h1 .hero-line-2,
  .home-lp-c .hero-title .hero-line-1,
  .home-lp-c .hero-title .hero-line-2,
  .home-lp-c .page-hero h1 .hero-line-1,
  .home-lp-c .page-hero h1 .hero-line-2 {
    display: block;
    white-space: nowrap;
  }

  .home-lp-c .hero-top-slider,
  .home-lp-c .lp-hero-visual-mobile-only {
    margin-bottom: 28px !important;
  }

  .home-lp-c .muted-section .section-head h2,
  .home-lp-c .lineup-head h2 {
    font-size: 24px !important;
    line-height: 1.18 !important;
    margin-bottom: 12px !important;
  }

  .mobile-copy,
  .page-hero h1,
  .page-hero .section-title,
  .page-title,
  .catalog-page h1,
  .product-list-page h1,
  .faq-page h1,
  .contact-page h1,
  .mypage-page h1,
  .login-page h1,
  .register-page h1 {
    font-size: 24px !important;
    line-height: 1.18 !important;
    letter-spacing: -0.03em;
  }

  .home-lp-c .hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px !important;
  }

  .home-lp-c .hero-actions .btn,
  .home-lp-c .home-login-button,
  .home-lp-c .home-mobile-fixed-cta,
  .home-lp-c .product-card .btn,
  .home-lp-c .product-card .text-link,
  .btn,
  .btn-outline,
  .btn-dark,
  .btn-primary {
    min-height: 58px !important;
    border-radius: 999px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
}

@media (max-width: 480px) {
  .home-lp-c .lp-copy-c-refined h1,
  .home-lp-c .hero-copy h1,
  .home-lp-c .hero-title,
  .home-lp-c .page-hero h1 {
    font-size: clamp(1.08rem, 5.5vw, 1.42rem) !important;
  }
}


@media (max-width: 760px) {
  .home-lp-c .lp-copy-c-refined h1,
  .home-lp-c .hero-copy h1,
  .home-lp-c .hero-title,
  .home-lp-c .page-hero h1 {
    font-size: clamp(1.3rem, 6.7vw, 1.92rem) !important;
    line-height: 1.16 !important;
    letter-spacing: -0.028em;
  }

  .home-lp-c .lp-copy-c-refined h1 .hero-line-1,
  .home-lp-c .lp-copy-c-refined h1 .hero-line-2,
  .home-lp-c .hero-copy h1 .hero-line-1,
  .home-lp-c .hero-copy h1 .hero-line-2,
  .home-lp-c .hero-title .hero-line-1,
  .home-lp-c .hero-title .hero-line-2,
  .home-lp-c .page-hero h1 .hero-line-1,
  .home-lp-c .page-hero h1 .hero-line-2 {
    display: block !important;
    white-space: nowrap !important;
  }

  .simple-page-head h1,
  .support-page-head h1,
  .product-page-head h1,
  .page-hero h1,
  .page-title,
  .section-head h1,
  .section-head h2,
  h1.mobile-copy,
  h2.mobile-copy {
    font-size: 24px !important;
    line-height: 1.18 !important;
    letter-spacing: -0.03em !important;
  }
}



@media (max-width: 760px) {
  body[data-page-type="product_list"] .product-grid.product-grid-four {
    --product-card-width: 84%;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: var(--product-card-width);
    grid-template-columns: none;
    gap: 14px;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
    padding-inline: 0;
    width: 100%;
    margin-inline: 0;
    scroll-padding-inline: calc((100% - var(--product-card-width)) / 2);
  }

  body[data-page-type="product_list"] .product-grid.product-grid-four::before,
  body[data-page-type="product_list"] .product-grid.product-grid-four::after {
    content: "";
    display: block;
    width: calc((100% - var(--product-card-width)) / 2);
  }

  body[data-page-type="product_list"] .product-grid.product-grid-four > * {
    min-width: 0;
    scroll-snap-align: center;
  }

  body[data-page-type="product_list"] .product-grid.product-grid-four::-webkit-scrollbar {
    display: none;
  }

  body[data-page-type="product_list"] .product-card {
    min-height: 100%;
  }

  body[data-page-type="product_list"] .product-card-image {
    padding: 14px 16px 10px;
    min-height: 208px;
  }

  body[data-page-type="product_list"] .product-card-image-stack {
    gap: 8px;
  }

  body[data-page-type="product_list"] .product-card-image-stack img {
    max-width: 100%;
  }

  body[data-page-type="product_list"] .product-card-image-stack.tall-image {
    min-height: 0;
  }

  body[data-page-type="product_list"] .product-card-body {
    padding-top: 18px;
    padding-bottom: 18px;
  }

  body[data-page-type="product_list"] .product-card-order-form {
    gap: 12px;
  }

  body[data-page-type="product_list"] .product-card-inline-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
  }

  body[data-page-type="product_list"] .product-card-detail-link {
    width: 100%;
    min-height: 48px;
    padding: 0 18px;
  }

  body[data-page-type="product_list"] .product-card-inline-qty {
    width: auto;
    min-width: 132px;
    justify-content: flex-end;
  }

  body[data-page-type="product_list"] .product-card-inline-qty .qty-box,
  body[data-page-type="product_list"] .product-card-inline-qty.modern-qty-box,
  body[data-page-type="product_list"] .product-card-inline-qty {
    width: auto;
  }

  body[data-page-type="product_list"] .product-card-inline-qty .qty-button {
    width: 40px;
    min-width: 40px;
    height: 44px;
  }

  body[data-page-type="product_list"] .product-card-inline-qty .qty-input {
    width: 44px;
    height: 44px;
  }

  body[data-page-type="product_list"] .bottom-cart-cta-wrap {
    display: none;
  }
}



@media (max-width: 760px) {
  body[data-page-type="product_list"] .product-grid.product-grid-four {
    --product-card-width: 84%;
    position: relative;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: var(--product-card-width);
    grid-template-columns: none;
    gap: 14px;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
    padding-inline: 0;
    width: 100%;
    margin-inline: 0;
    scroll-padding-inline: calc((100% - var(--product-card-width)) / 2);
    scrollbar-width: none;
  }

  body[data-page-type="product_list"] .product-grid.product-grid-four::before,
  body[data-page-type="product_list"] .product-grid.product-grid-four::after {
    content: "";
    display: block;
    width: calc((100% - var(--product-card-width)) / 2);
    flex: 0 0 auto;
  }

  body[data-page-type="product_list"] .product-grid.product-grid-four > * {
    min-width: 0;
    scroll-snap-align: center;
  }

  body[data-page-type="product_list"] .product-grid.product-grid-four::-webkit-scrollbar {
    display: none;
  }

  body[data-page-type="product_list"] .product-title-split {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    line-height: 1.12;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
  }

  body[data-page-type="product_list"] .product-title-split .product-title-brand,
  body[data-page-type="product_list"] .product-title-split .product-title-type {
    display: block;
    white-space: normal;
  }

  body[data-page-type="product_list"] .product-card h2.product-title-split,
  body[data-page-type="product_list"] .product-card h3.product-title-split {
    font-size: 0.98rem;
    margin-bottom: 10px;
  }

  body[data-page-type="product_list"] .product-card-body {
    padding: 18px 20px 20px;
  }

  body[data-page-type="product_list"] .product-card-detail-link {
    width: auto;
    min-width: 0;
    min-height: 44px;
    padding: 0 20px;
    white-space: nowrap;
  }

  body[data-page-type="product_list"] .product-grid-carousel-shell {
    position: relative;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide {
    position: absolute;
    top: 180px;
    left: 0;
    right: 0;
    z-index: 5;
    pointer-events: none;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow {
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: rgba(255,255,255,0.92);
    border: 1px solid rgba(22,35,59,0.12);
    box-shadow: 0 8px 18px rgba(22,35,59,0.12);
    color: #16233b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    opacity: 0;
    transition: opacity 0.18s ease;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow.is-visible {
    opacity: 1;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow.is-left {
    left: 10px;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow.is-right {
    right: 10px;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_list"] .product-card h2.product-title-split,
  body[data-page-type="product_list"] .product-card h3.product-title-split {
    font-size: 1.08rem;
    line-height: 1.16;
  }

  body[data-page-type="product_list"] .product-grid-carousel-shell {
    position: relative;
    overflow: visible;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide {
    position: absolute;
    top: 214px;
    left: 0;
    right: 0;
    z-index: 20;
    pointer-events: none;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow {
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: rgba(255,255,255,0.96);
    border: 1px solid rgba(22,35,59,0.14);
    box-shadow: 0 10px 22px rgba(22,35,59,0.16);
    color: #16233b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 19px;
    font-weight: 700;
    opacity: 0;
    transition: opacity 0.18s ease;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow.is-visible {
    opacity: 1;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow.is-left {
    left: 8px;
  }

  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow.is-right {
    right: 8px;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_list"] .product-grid-scroll-guide,
  body[data-page-type="product_list"] .product-grid-scroll-guide-arrow {
    display: none !important;
  }

  body[data-page-type="product_list"] .product-grid-scroll-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 12px auto 0;
    width: 100%;
  }

  body[data-page-type="product_list"] .product-grid-scroll-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: rgba(22,35,59,0.18);
    transition: transform 0.18s ease, background-color 0.18s ease, width 0.18s ease;
  }

  body[data-page-type="product_list"] .product-grid-scroll-dot.is-active {
    width: 20px;
    background: #16233b;
  }
}


@media (max-width: 760px) {
  .hero-desktop-break {
    display: none;
  }

  body[data-page-type="product_detail"] .detail-main-image {
    display: none;
  }

  body[data-page-type="product_detail"] .detail-image.card-panel {
    padding: 18px;
  }

  body[data-page-type="product_detail"] .detail-image-gallery,
  body[data-page-type="product_detail"] .detail-thumb-grid {
    gap: 12px;
  }

  body[data-page-type="product_detail"] .detail-thumb-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page-type="product_detail"] .detail-thumb-grid-single {
    grid-template-columns: 1fr;
  }

  body[data-page-type="product_detail"] .detail-thumb-card {
    padding: 12px;
    gap: 8px;
    border-radius: 20px;
  }

  body[data-page-type="product_detail"] .detail-thumb-link {
    display: block;
    border-radius: 16px;
    overflow: hidden;
  }

  body[data-page-type="product_detail"] .detail-thumb-link img {
    width: 100%;
    display: block;
    border-radius: 16px;
  }

  body[data-page-type="product_detail"] .detail-panel h1 {
    font-size: 24px !important;
    line-height: 1.18 !important;
    margin-bottom: 12px;
  }

  body[data-page-type="product_detail"] .mini-feature-grid {
    display: none !important;
  }

  body[data-page-type="product_detail"] .purchase-box {
    padding: 18px;
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(22,35,59,0.10);
  }

  body[data-page-type="product_detail"] .product-detail-order-stack {
    gap: 14px;
  }

  body[data-page-type="product_detail"] .form-field.compact-field {
    margin-bottom: 0;
  }

  body[data-page-type="product_detail"] .form-field.compact-field > label {
    display: block;
    margin-bottom: 10px;
    font-size: 0.98rem;
    font-weight: 700;
    color: #16233b;
  }

  body[data-page-type="product_detail"] .detail-qty-box.modern-qty-box,
  body[data-page-type="product_detail"] .detail-qty-box {
    width: 100%;
    justify-content: space-between;
    padding: 10px;
    border-radius: 999px;
    background: #eef1f6;
    border: 1px solid rgba(22,35,59,0.08);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.65);
  }

  body[data-page-type="product_detail"] .detail-qty-box .qty-button {
    width: 54px;
    min-width: 54px;
    height: 54px;
    border-radius: 999px;
    font-size: 1.5rem;
    box-shadow: 0 6px 16px rgba(22,35,59,0.10);
  }

  body[data-page-type="product_detail"] .detail-qty-box .qty-input {
    flex: 1;
    min-width: 0;
    width: auto;
    height: 54px;
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    color: #16233b;
    background: transparent;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_detail"] .detail-layout,
  body[data-page-type="product_detail"] .detail-image.card-panel,
  body[data-page-type="product_detail"] .detail-panel,
  body[data-page-type="product_detail"] .purchase-box,
  body[data-page-type="product_detail"] .detail-assurance,
  body[data-page-type="product_detail"] .detail-trust-grid,
  body[data-page-type="product_detail"] .trust-card,
  body[data-page-type="product_detail"] .detail-thumb-grid,
  body[data-page-type="product_detail"] .detail-thumb-card,
  body[data-page-type="product_detail"] .detail-thumb-link,
  body[data-page-type="product_detail"] .detail-thumb-link img,
  body[data-page-type="product_detail"] .detail-description,
  body[data-page-type="product_detail"] .detail-price {
    min-width: 0;
    box-sizing: border-box;
  }

  body[data-page-type="product_detail"] .detail-image.card-panel,
  body[data-page-type="product_detail"] .purchase-box,
  body[data-page-type="product_detail"] .detail-assurance,
  body[data-page-type="product_detail"] .trust-card {
    overflow: hidden;
  }

  body[data-page-type="product_detail"] .detail-thumb-grid {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }

  body[data-page-type="product_detail"] .detail-thumb-grid-single {
    grid-template-columns: 1fr;
  }

  body[data-page-type="product_detail"] .detail-thumb-card {
    width: 100%;
  }

  body[data-page-type="product_detail"] .detail-thumb-link img {
    max-width: 100%;
    height: auto;
  }

  body[data-page-type="product_detail"] .detail-panel h1,
  body[data-page-type="product_detail"] .detail-description,
  body[data-page-type="product_detail"] .detail-assurance h2,
  body[data-page-type="product_detail"] .trust-card h3,
  body[data-page-type="product_detail"] .trust-card p {
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  body[data-page-type="product_detail"] .detail-trust-grid,
  body[data-page-type="product_detail"] .trust-grid.detail-trust-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  body[data-page-type="product_detail"] .purchase-box {
    width: 100%;
  }

  body[data-page-type="product_detail"] .detail-qty-box.modern-qty-box,
  body[data-page-type="product_detail"] .detail-qty-box {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 54px;
    align-items: center;
    gap: 10px;
    width: 100%;
    max-width: 100%;
  }

  body[data-page-type="product_detail"] .detail-qty-box .qty-button,
  body[data-page-type="product_detail"] .detail-qty-box .qty-input {
    min-width: 0;
  }

  body[data-page-type="product_detail"] .detail-qty-box .qty-input {
    width: 100%;
    max-width: 100%;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_detail"] .detail-thumb-card {
    align-content: start;
    justify-items: stretch;
  }

  body[data-page-type="product_detail"] .detail-thumb-label {
    display: block;
    width: 100%;
    text-align: center;
    margin: 0 auto 8px;
  }

  body[data-page-type="product_detail"] .detail-title-split {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    line-height: 1.08;
    margin: 0 0 12px;
  }

  body[data-page-type="product_detail"] .detail-title-brand,
  body[data-page-type="product_detail"] .detail-title-type {
    display: block;
    white-space: normal;
  }

  body[data-page-type="product_detail"] .detail-image-modal {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(22,35,59,0.82);
    z-index: 220;
  }

  body[data-page-type="product_detail"] .detail-image-modal.is-open {
    display: flex;
  }

  body[data-page-type="product_detail"] .detail-image-modal-dialog {
    width: min(100%, 520px);
    max-height: calc(100vh - 88px);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body[data-page-type="product_detail"] .detail-image-modal-img {
    display: block;
    width: 100%;
    height: auto;
    max-height: calc(100vh - 88px);
    object-fit: contain;
    border-radius: 18px;
    box-shadow: 0 18px 48px rgba(0,0,0,0.26);
    background: #fff;
  }

  body[data-page-type="product_detail"] .detail-image-modal-close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 46px;
    height: 46px;
    border: none;
    border-radius: 999px;
    background: rgba(255,255,255,0.96);
    color: #16233b;
    font-size: 1.7rem;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 24px rgba(22,35,59,0.18);
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_detail"] .detail-thumb-card.detail-thumb-card-link {
    padding: 0;
    overflow: hidden;
  }

  body[data-page-type="product_detail"] .detail-thumb-link {
    display: grid;
    gap: 8px;
    width: 100%;
    height: 100%;
    padding: 12px;
    text-decoration: none;
    color: inherit;
    border-radius: 20px;
  }

  body[data-page-type="product_detail"] .detail-thumb-label {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-align: center;
    margin: 0;
  }

  body[data-page-type="product_detail"] .detail-image-modal.is-visible {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body[data-page-type="product_detail"] .detail-image-modal-dialog {
    position: relative;
    width: min(88vw, 420px);
    max-width: 88vw;
  }

  body[data-page-type="product_detail"] .detail-image-modal-close {
    position: absolute;
    top: -18px;
    right: -6px;
    width: 56px;
    height: 56px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    padding: 0;
    font-size: 2rem;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion {
    overflow: hidden;
  }

  body[data-page-type="product_detail"] .detail-assurance-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    cursor: pointer;
    list-style: none;
    margin: 0;
    padding: 4px 0 0;
  }

  body[data-page-type="product_detail"] .detail-assurance-summary::-webkit-details-marker {
    display: none;
  }

  body[data-page-type="product_detail"] .detail-assurance-summary > span:first-child {
    font-size: 1.45rem;
    font-weight: 700;
    color: #16233b;
    line-height: 1.15;
  }

  body[data-page-type="product_detail"] .detail-assurance-summary-icon {
    position: relative;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
  }

  body[data-page-type="product_detail"] .detail-assurance-summary-icon::before,
  body[data-page-type="product_detail"] .detail-assurance-summary-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 2px;
    border-radius: 999px;
    background: #16233b;
    transform: translate(-50%, -50%);
    transition: transform .18s ease, opacity .18s ease;
  }

  body[data-page-type="product_detail"] .detail-assurance-summary-icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion[open] .detail-assurance-summary-icon::after {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(90deg) scaleX(0.2);
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion .detail-trust-grid {
    margin-top: 14px;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_detail"] .detail-image-modal-dialog {
    position: relative;
    width: min(88vw, 420px);
    max-width: 88vw;
    overflow: visible;
  }

  body[data-page-type="product_detail"] .detail-image-modal-close {
    top: 12px;
    right: 12px;
    width: 52px;
    height: 52px;
    z-index: 3;
    font-size: 1.9rem;
  }

  body[data-page-type="product_detail"] .detail-image-modal-img {
    display: block;
    width: 100%;
    border-radius: 24px;
  }

  body[data-page-type="product_detail"] .detail-assurance-stack {
    display: grid;
    gap: 14px;
  }

  body[data-page-type="product_detail"] .detail-assurance-static .trust-card {
    margin: 0;
  }

  body[data-page-type="product_detail"] .detail-assurance-static .detail-trust-grid,
  body[data-page-type="product_detail"] .detail-assurance-static .trust-grid {
    margin-top: 0;
  }

  body[data-page-type="product_detail"] .detail-order-inline {
    display: grid;
    grid-template-columns: 108px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    width: 100%;
  }

  body[data-page-type="product_detail"] .detail-qty-box.modern-qty-box,
  body[data-page-type="product_detail"] .detail-qty-box {
    display: block;
    width: 100%;
    padding: 0;
    background: transparent;
    border: none;
    box-shadow: none;
  }

  body[data-page-type="product_detail"] .detail-qty-box .qty-button {
    display: none !important;
  }

  body[data-page-type="product_detail"] .detail-qty-box .qty-input {
    width: 100%;
    max-width: 100%;
    height: 56px;
    border: 1px solid rgba(22,35,59,0.10);
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 6px 18px rgba(22,35,59,0.06);
  }

  body[data-page-type="product_detail"] .detail-inline-submit {
    width: 100%;
    min-height: 56px;
    border-radius: 18px;
    white-space: nowrap;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_detail"] .detail-image-modal-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    padding: 0;
    font-size: 1.8rem;
  }

  body[data-page-type="product_detail"] .detail-order-inline {
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 12px;
  }

  body[data-page-type="product_detail"] .detail-qty-box .qty-input {
    height: 54px;
    font-size: 1.25rem;
  }

  body[data-page-type="product_detail"] .detail-inline-submit {
    min-height: 54px;
  }

  body[data-page-type="product_detail"] .detail-assurance-standard .detail-trust-grid {
    display: none;
  }

  body[data-page-type="product_detail"] .detail-assurance-standard {
    overflow: hidden;
  }

  body[data-page-type="product_detail"] .detail-assurance-standard h2 {
    margin: 0;
    font-size: 1.45rem;
    line-height: 1.15;
  }

  body[data-page-type="product_detail"] .detail-assurance-standard {
    padding: 24px 16px 28px;
    border-radius: 28px;
  }

  body[data-page-type="product_detail"] .detail-assurance-static {
    padding: 0;
    background: transparent;
    border: none;
    box-shadow: none;
  }

  body[data-page-type="product_detail"] .detail-assurance-static .trust-card {
    margin: 0;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_detail"] .detail-assurance-standard {
    display: none;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile {
    display: block;
    overflow: hidden;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-trust-grid {
    margin-top: 14px;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-assurance-summary > span:first-child {
    font-size: 1.2rem;
    font-weight: 700;
    color: #a16207;
    line-height: 1.15;
  }

  body[data-page-type="product_detail"] .detail-image-modal-close {
    align-items: flex-start;
    justify-content: center;
    padding-top: 6px;
  }

  body[data-page-type="product_detail"] .detail-image-modal-img {
    border-radius: 0;
  }

  body[data-page-type="product_detail"] .detail-order-inline {
    grid-template-columns: 84px minmax(0, 1fr);
    gap: 14px;
  }

  body[data-page-type="product_detail"] .detail-qty-box .qty-input {
    font-size: 1.15rem;
  }

  body[data-page-type="product_detail"] .purchase-box,
  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile,
  body[data-page-type="product_detail"] .detail-assurance-static {
    margin-top: 28px;
  }

  body[data-page-type="product_detail"] .detail-assurance-static {
    padding: 0;
    background: transparent;
    border: none;
    box-shadow: none;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_detail"] .detail-image-modal-close {
    padding-top: 8px;
  }

  body[data-page-type="product_detail"] .detail-image-modal-img {
    border-radius: 24px;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile {
    display: block;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-assurance-summary > span:first-child {
    font-size: 1.45rem;
    line-height: 1.15;
    color: #16233b;
    font-weight: 700;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-trust-card-mobile {
    margin-top: 14px;
    padding: 22px 18px;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-trust-card-mobile h2 {
    margin: 0 0 18px;
    font-size: 1.7rem;
    line-height: 1.15;
    color: #16233b;
    letter-spacing: -0.03em;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-trust-card-mobile .trust-list {
    display: grid;
    gap: 18px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-trust-card-mobile .trust-list li {
    display: grid;
    gap: 6px;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-trust-card-mobile .trust-list strong {
    font-size: 1rem;
    color: #16233b;
  }

  body[data-page-type="product_detail"] .detail-assurance-accordion-mobile .detail-trust-card-mobile .trust-list span {
    color: #667085;
    font-size: 0.98rem;
    line-height: 1.55;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_list"] .product-card-meta-row .product-card-detail-link,
  body[data-page-type="product_list"] .product-card-meta-row .product-card-detail-link-desktop,
  body[data-page-type="product_list"] .product-card-meta-row .btn,
  body[data-page-type="product_list"] .product-card-meta-row a {
    display: none !important;
  }

  body[data-page-type="product_list"] .product-card-inline-actions {
    grid-template-columns: minmax(0, 1fr) 72px;
    gap: 12px;
  }

  body[data-page-type="product_list"] .product-card-inline-qty .qty-button {
    display: none !important;
  }

  body[data-page-type="product_list"] .product-card-inline-qty,
  body[data-page-type="product_list"] .product-card-inline-qty .qty-box,
  body[data-page-type="product_list"] .product-card-inline-qty.modern-qty-box {
    min-width: 0;
    width: 72px;
    justify-content: center;
  }

  body[data-page-type="product_list"] .product-card-inline-qty .qty-input {
    width: 72px;
    max-width: 72px;
  }

  body[data-page-type="product_list"] .product-card-detail-link-mobile {
    width: 100%;
    min-height: 48px;
    white-space: nowrap;
  }

  body[data-page-type="product_detail"] .detail-assurance-standard {
    display: none !important;
  }

  body[data-page-type="product_detail"] .detail-assurance-mobile-card {
    display: block;
  }

  body[data-page-type="product_detail"] .detail-assurance-stack {
    display: flex;
    flex-direction: column;
    gap: 28px;
  }

  body[data-page-type="product_detail"] .detail-assurance-static {
    order: 1;
  }

  body[data-page-type="product_detail"] .detail-assurance-mobile-card {
    order: 2;
    padding: 0;
    background: transparent;
    border: none;
    box-shadow: none;
    margin-top: 0;
  }

  body[data-page-type="product_detail"] .detail-assurance-mobile-card .detail-trust-card-mobile {
    margin: 0;
    padding: 22px 18px;
  }

  body[data-page-type="product_detail"] .detail-bottom-actions {
    margin-top: 28px;
  }

  body[data-page-type="product_detail"] .detail-order-inline {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    width: 100%;
  }

  body[data-page-type="product_detail"] .detail-order-inline .detail-inline-submit {
    width: 100%;
  }
}


@media (max-width: 760px) {
  .cart-mobile-title-wrap {
    display: block;
    margin-bottom: 18px;
  }

  .cart-mobile-title {
    margin: 0;
    font-size: 24px;
    line-height: 1.18;
    letter-spacing: -0.03em;
    color: #16233b;
  }
}

@media (min-width: 761px) {
  .cart-mobile-title-wrap {
    display: none !important;
  }
}


@media (max-width: 760px) {
  .cart-mobile-title-wrap {
    display: block;
    margin-bottom: 18px;
  }

  .cart-mobile-title {
    margin: 0;
    font-size: 24px;
    line-height: 1.18;
    letter-spacing: -0.03em;
    color: #16233b;
  }

  body[data-page-type="cart"] .cart-controls {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  body[data-page-type="cart"] .cart-update-form {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 12px;
    width: 100%;
    align-items: center;
  }

  body[data-page-type="cart"] .cart-update-form .qty-box,
  body[data-page-type="cart"] .cart-update-form .modern-qty-box {
    width: 96px;
    min-width: 96px;
    justify-content: center;
  }

  body[data-page-type="cart"] .cart-update-form .qty-button {
    display: none !important;
  }

  body[data-page-type="cart"] .cart-update-form .qty-input {
    width: 96px;
    max-width: 96px;
    height: 52px;
    font-size: 1.15rem;
  }

  body[data-page-type="cart"] .cart-update-form .btn,
  body[data-page-type="cart"] .cart-update-form button[type="submit"] {
    width: 100%;
    min-height: 52px;
    white-space: nowrap;
  }

  body[data-page-type="cart"] .cart-controls .inline-form {
    display: flex;
    justify-content: flex-end;
    width: 100%;
  }

  body[data-page-type="cart"] .cart-controls .text-button,
  body[data-page-type="cart"] .cart-controls .danger-text {
    margin-left: auto;
    text-align: right;
  }

  body[data-page-type="cart"] .cart-subtotal {
    justify-content: flex-end !important;
    text-align: right !important;
    font-size: 1rem;
  }
}

@media (min-width: 761px) {
  .cart-mobile-title-wrap {
    display: none !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="cart"] .section-block {
    padding-top: 20px;
    padding-bottom: 42px;
  }

  body[data-page-type="cart"] .cart-mobile-title-wrap {
    margin-top: 10px;
    margin-bottom: 8px;
  }

  body[data-page-type="cart"] .cart-mobile-title {
    margin: 0;
    padding-top: 2px;
  }

  body[data-page-type="cart"] .cart-item-top strong,
  body[data-page-type="cart"] .cart-item-top .price-text,
  body[data-page-type="cart"] .cart-item-price,
  body[data-page-type="cart"] .cart-price {
    display: block;
    width: 100%;
    text-align: right !important;
    justify-content: flex-end !important;
    margin-top: 8px;
  }

  body[data-page-type="cart"] .cart-update-form {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-top: 10px;
  }

  body[data-page-type="cart"] .cart-update-form .qty-box,
  body[data-page-type="cart"] .cart-update-form .modern-qty-box {
    width: 96px;
    min-width: 96px;
    min-height: 48px;
    height: 48px;
    padding: 0;
  }

  body[data-page-type="cart"] .cart-update-form .qty-button {
    display: none !important;
  }

  body[data-page-type="cart"] .cart-update-form .qty-input {
    width: 96px;
    max-width: 96px;
    min-height: 48px;
    height: 48px;
    font-size: 1.15rem;
    line-height: 48px;
    padding: 0;
  }

  body[data-page-type="cart"] .cart-update-form .btn,
  body[data-page-type="cart"] .cart-update-form button[type="submit"] {
    min-height: 48px;
    height: 48px;
    width: 100%;
  }

  body[data-page-type="cart"] .cart-controls .inline-form {
    display: flex;
    justify-content: flex-end;
    width: 100%;
  }

  body[data-page-type="cart"] .cart-controls .text-button,
  body[data-page-type="cart"] .cart-controls .danger-text {
    margin-left: auto;
    text-align: right;
  }

  body[data-page-type="cart"] .cart-subtotal {
    width: 100%;
    justify-content: flex-end !important;
    text-align: right !important;
    margin-top: 10px;
    font-size: 1rem;
  }

  body[data-page-type="cart"] .cart-summary .summary-list div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
  }

  body[data-page-type="cart"] .cart-summary .summary-list dt {
    text-align: left;
  }

  body[data-page-type="cart"] .cart-summary .summary-list dd {
    margin-left: 0;
    text-align: right !important;
    justify-self: end;
  }

  body[data-page-type="cart"] .cart-summary .upload-status-card.is-complete {
    display: none !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="cart"] .cart-mobile-title-wrap {
    margin-top: 4px;
    margin-bottom: 6px;
  }

  body[data-page-type="cart"] .section-block {
    padding-top: 14px;
    padding-bottom: 42px;
  }

  body[data-page-type="cart"] .cart-item-image,
  body[data-page-type="cart"] .cart-item-image-stack,
  body[data-page-type="cart"] .cart-svg-display-stack,
  body[data-page-type="cart"] .cart-item-image-stack .svg-card-face {
    display: none !important;
  }

  body[data-page-type="cart"] .cart-item {
    grid-template-columns: 1fr;
  }

  body[data-page-type="cart"] .cart-summary {
    padding-top: 18px;
  }

  body[data-page-type="cart"] .cart-summary h2 {
    margin-top: 0;
  }

  body[data-page-type="cart"] .cart-next-step {
    color: #d11a2a !important;
  }

  body[data-page-type="cart"] .cart-item-upload-box.is-pending,
  body[data-page-type="cart"] .cart-item-upload-box:not(.is-complete) {
    position: relative;
    cursor: pointer;
  }

  body[data-page-type="cart"] .cart-item-upload-box.is-pending::after,
  body[data-page-type="cart"] .cart-item-upload-box:not(.is-complete)::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background: transparent;
  }
}


@media (max-width: 760px) {
  body[data-page-type="cart"] .cart-mobile-title {
    padding-top: 14px;
  }

  body[data-page-type="cart"] .section-block {
    padding-bottom: 0;
  }

  body[data-page-type="cart"] .cart-item-upload-box.is-pending::after,
  body[data-page-type="cart"] .cart-item-upload-box:not(.is-complete)::after {
    display: none;
  }
}


@media (max-width: 760px) {
  body[data-page-type="product_list"] .trust-section-top.no-top-gap {
    padding-bottom: 0 !important;
  }

  body[data-page-type="product_detail"] .section-block {
    padding-bottom: 0 !important;
  }

  body[data-page-type="upload_input"] .section-block {
    padding-bottom: 0 !important;
  }

  body[data-page-type="cart"] .price-text {
    margin-top: 4px !important;
  }

  body[data-page-type="upload_input"] .upload-target-card {
    display: none !important;
  }

  body[data-page-type="upload_input"] .upload-preview-toggle {
    position: fixed;
    top: 210px;
    right: 0;
    z-index: 80;
    width: 48px;
    min-height: 132px;
    border: none;
    border-radius: 14px 0 0 14px;
    background: #f5c84c;
    color: #16233b;
    font-weight: 700;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    letter-spacing: 0.06em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 28px rgba(22,35,59,0.18);
  }

  body[data-page-type="upload_input"] .upload-preview-side {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(86vw, 360px);
    z-index: 79;
    padding: 84px 16px 20px;
    background: rgba(255,255,255,0.98);
    box-shadow: -24px 0 48px rgba(22,35,59,0.18);
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform 0.28s ease;
  }

  body[data-page-type="upload_input"].is-upload-preview-open .upload-preview-side {
    transform: translateX(0);
  }

  body[data-page-type="upload_input"].is-upload-preview-open .upload-preview-toggle {
    right: min(86vw, 360px);
    border-radius: 14px 0 0 14px;
  }

  body[data-page-type="upload_input"] .upload-preview-summary {
    padding: 18px 14px;
  }

  body[data-page-type="upload_input"] .upload-preview-summary h2,
  body[data-page-type="upload_input"] .preview-helper,
  body[data-page-type="upload_input"] .upload-back-panel,
  body[data-page-type="upload_input"] .upload-template-panel {
    display: none !important;
  }

  body[data-page-type="upload_input"] .upload-preview-frame {
    margin: 0;
  }

  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    background: transparent;
    box-shadow: none;
    border: none;
    padding: 0;
  }

  body[data-page-type="upload_input"] .template-preview-card,
  body[data-page-type="upload_input"] .original-preview-card {
    border-radius: 0 !important;
    background: transparent;
    border: none;
    box-shadow: none;
  }

  body[data-page-type="upload_input"] .template-preview-base,
  body[data-page-type="upload_input"] .original-preview-image {
    border-radius: 0 !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="upload_input"] .upload-preview-toggle {
    top: 156px;
  }

  body[data-page-type="upload_input"] .upload-preview-side {
    top: 92px;
    bottom: 0;
    width: min(84vw, 340px);
    padding: 16px 14px 14px;
    background: transparent;
    box-shadow: none;
  }

  body[data-page-type="upload_input"].is-upload-preview-open .upload-preview-toggle {
    right: min(84vw, 340px);
  }

  body[data-page-type="upload_input"] .upload-preview-frame,
  body[data-page-type="upload_input"] .upload-preview-frame.upload-preview-frame-original {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  body[data-page-type="upload_input"] .upload-preview-drawer-panel,
  body[data-page-type="upload_input"] .upload-preview-summary {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  body[data-page-type="upload_input"] .original-preview-card,
  body[data-page-type="upload_input"] .original-card-preview,
  body[data-page-type="upload_input"] .template-preview-card,
  body[data-page-type="upload_input"] .clean-card-preview {
    padding: 0;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder {
    padding: 0;
    min-height: auto;
    border: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    gap: 12px;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder strong,
  body[data-page-type="upload_input"] .original-preview-placeholder span {
    line-height: 1.55;
  }
}


@media (max-width: 760px) {
  body[data-page-type="upload_input"] .upload-preview-toggle {
    top: 138px;
  }

  body[data-page-type="upload_input"] .upload-preview-side {
    width: min(78vw, 312px);
    padding: 16px 12px 14px;
  }

  body[data-page-type="upload_input"].is-upload-preview-open .upload-preview-toggle {
    right: min(78vw, 312px);
  }

  body[data-page-type="upload_input"] .upload-preview-summary,
  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    background: #ffffff !important;
    border: 1px solid rgba(22,35,59,0.08) !important;
    box-shadow: 0 14px 34px rgba(22,35,59,0.14) !important;
    border-radius: 24px !important;
    padding: 14px !important;
  }

  body[data-page-type="upload_input"] .upload-preview-frame,
  body[data-page-type="upload_input"] .upload-preview-frame.upload-preview-frame-original {
    background: transparent !important;
  }

  body[data-page-type="upload_input"] .original-preview-card,
  body[data-page-type="upload_input"] .original-card-preview,
  body[data-page-type="upload_input"] .template-preview-card,
  body[data-page-type="upload_input"] .clean-card-preview {
    background: linear-gradient(180deg, #fbfbfd 0%, #eceef5 100%) !important;
    border: 1px solid rgba(22,35,59,0.10) !important;
    box-shadow: 0 20px 50px rgba(17,17,17,0.08) !important;
    border-radius: 18px !important;
    overflow: hidden;
  }

  body[data-page-type="upload_input"] .template-preview-base,
  body[data-page-type="upload_input"] .original-preview-image {
    border-radius: 18px !important;
  }

  body[data-page-type="upload_input"] input[type="file"] {
    direction: rtl;
    text-align: left;
  }

  body[data-page-type="upload_input"] input[type="file"]::file-selector-button {
    direction: ltr;
  }

  body[data-page-type="upload_input"] .upload-mobile-back-panel {
    display: block;
  }

  body[data-page-type="upload_input"] .upload-back-panel.upload-preview-extra-panel {
    display: none !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="upload_input"] .upload-preview-toggle {
    top: 154px;
  }

  body[data-page-type="upload_input"] .upload-preview-side {
    top: 154px;
    width: min(74vw, 288px);
    padding: 0;
    background: transparent;
    box-shadow: none;
  }

  body[data-page-type="upload_input"].is-upload-preview-open .upload-preview-toggle {
    right: calc(min(74vw, 288px) - 6px);
  }

  body[data-page-type="upload_input"] .upload-preview-summary,
  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    margin: 0;
    padding: 10px !important;
    background: #ffffff !important;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 160px;
    text-align: center;
    gap: 8px;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder strong {
    font-size: 1.05rem;
    line-height: 1.35;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder span {
    font-size: 0.92rem;
    line-height: 1.45;
  }

  body[data-page-type="upload_input"] .slot-qr-lefttop {
    left: 5.2%;
    top: 24.9%;
    width: 12.9%;
  }

  body[data-page-type="upload_input"] .slot-logo-rightbottom {
    right: 1.8%;
    bottom: 5.4%;
    width: 16%;
  }

  body[data-page-type="checkout_input"] .section-block {
    padding-bottom: 0 !important;
  }

  body[data-page-type="checkout_input"] .checkout-name-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
  }

  body[data-page-type="checkout_input"] .checkout-inline-label-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
  }

  body[data-page-type="checkout_input"] .checkout-inline-label-row .postal-auto-btn {
    min-height: 44px;
    white-space: nowrap;
    padding-inline: 16px;
  }

  body[data-page-type="checkout_input"] .postal-inline-group {
    display: block;
  }

  body[data-page-type="checkout_input"] .postal-inline-group .postal-auto-btn {
    display: none;
  }

  body[data-page-type="checkout_input"] .checkout-actions-centered {
    display: grid;
    gap: 14px;
    width: 100%;
  }

  body[data-page-type="checkout_input"] .checkout-actions-centered .btn {
    width: 100%;
    min-height: 56px;
    border-radius: 18px;
  }

  body[data-page-type="checkout_input"] .checkout-summary {
    margin-top: 16px;
  }
}


@media (max-width: 760px) {
  body[data-page-type="upload_input"] .upload-preview-side {
    width: min(74vw, 288px);
    background: #efc44a;
    box-shadow: none;
    border-radius: 0;
    padding: 10px;
  }

  body[data-page-type="upload_input"] .upload-preview-summary,
  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    background: #efc44a !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 10px !important;
  }

  body[data-page-type="upload_input"] .upload-preview-frame,
  body[data-page-type="upload_input"] .upload-preview-frame.upload-preview-frame-original {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
  }

  body[data-page-type="upload_input"] .original-preview-card,
  body[data-page-type="upload_input"] .original-card-preview,
  body[data-page-type="upload_input"] .template-preview-card,
  body[data-page-type="upload_input"] .clean-card-preview {
    border-radius: 18px !important;
    overflow: hidden;
  }

  body[data-page-type="checkout_input"] .checkout-inline-label-row {
    display: none !important;
  }

  body[data-page-type="checkout_input"] .checkout-postal-mobile-row,
  body[data-page-type="checkout_input"] .postal-inline-group.checkout-postal-mobile-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
  }

  body[data-page-type="checkout_input"] .checkout-postal-mobile-row .js-postal-code {
    min-width: 0;
  }

  body[data-page-type="checkout_input"] .checkout-postal-mobile-row .postal-auto-btn {
    display: inline-flex !important;
    min-height: 44px;
    white-space: nowrap;
    padding-inline: 16px;
  }
}


@media (max-width: 760px) {
  body[data-page-type="upload_input"] .upload-preview-side {
    top: 166px;
    bottom: auto;
    width: min(72vw, 276px);
    max-height: calc(100vh - 176px);
    overflow-y: auto;
    padding: 10px;
  }

  body[data-page-type="upload_input"] .upload-preview-toggle {
    top: 166px;
  }

  body[data-page-type="upload_input"].is-upload-preview-open .upload-preview-toggle {
    right: calc(min(72vw, 276px) - 6px);
  }

  body[data-page-type="upload_input"] .upload-preview-summary,
  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    padding: 8px !important;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder {
    min-height: 148px;
    padding: 14px;
    gap: 6px;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder strong {
    font-size: 1rem;
    line-height: 1.3;
    word-break: keep-all;
    overflow-wrap: normal;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder span {
    font-size: 0.86rem;
    line-height: 1.4;
  }

  body[data-page-type="upload_input"] .slot-qr-lefttop {
    left: 5.65%;
    top: 25.2%;
    width: 12.75%;
  }

  body[data-page-type="upload_input"] .slot-logo-rightbottom {
    right: 1.45%;
    bottom: 5.65%;
    width: 16.1%;
  }

  body[data-page-type="checkout_input"] .checkout-actions-centered {
    display: grid;
    gap: 14px;
    width: 100%;
  }

  body[data-page-type="checkout_input"] .checkout-actions-centered .btn {
    width: 100%;
    min-height: 56px;
    border-radius: 18px;
  }
}


@media (max-width: 760px) {
  body[data-page-type="upload_input"] .upload-preview-side {
    top: 166px;
    width: min(72vw, 276px);
    max-height: none;
    overflow: visible;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  body[data-page-type="upload_input"] .upload-preview-toggle {
    top: 166px;
  }

  body[data-page-type="upload_input"].is-upload-preview-open .upload-preview-toggle {
    right: calc(min(72vw, 276px) - 6px);
  }

  body[data-page-type="upload_input"] .upload-preview-summary,
  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    background: #efc44a !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 8px !important;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder {
    min-height: 148px;
    padding: 14px 12px;
    gap: 6px;
    align-content: center;
    justify-items: center;
    text-align: center;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder strong {
    font-size: 1rem;
    line-height: 1.32;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: anywhere;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder span {
    font-size: 0.84rem;
    line-height: 1.42;
    white-space: normal;
  }

  body[data-page-type="upload_input"] .slot-qr-lefttop {
    left: 5.5%;
    top: 25.15%;
    width: 12.85%;
  }

  body[data-page-type="upload_input"] .slot-logo-rightbottom {
    right: 1.35%;
    bottom: 5.8%;
    width: 16.1%;
  }

  body[data-page-type="checkout_input"] .checkout-actions-centered {
    display: grid !important;
    width: 100% !important;
    gap: 14px;
  }

  body[data-page-type="checkout_input"] .checkout-actions-centered .btn {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 56px;
    justify-content: center;
    align-items: center;
  }

  body[data-page-type="checkout_confirm"] .section-block.no-top-gap.narrow-wrap {
    padding-bottom: 0 !important;
  }

  body[data-page-type="checkout_confirm"] .compact-summary div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
  }

  body[data-page-type="checkout_confirm"] .compact-summary dt {
    text-align: left;
  }

  body[data-page-type="checkout_confirm"] .compact-summary dd {
    margin-left: 0;
    text-align: right !important;
    justify-self: end;
  }

  body[data-page-type="checkout_confirm"] .confirm-items .mini-cart-item p {
    margin: 0 0 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(22,35,59,0.12);
  }
}


@media (max-width: 760px) {
  body[data-page-type="upload_input"] .upload-preview-side {
    top: 166px;
    width: auto !important;
    max-width: none !important;
    background: transparent !important;
    padding: 0 !important;
    overflow: visible !important;
    box-shadow: none !important;
  }

  body[data-page-type="upload_input"] .upload-preview-toggle {
    top: 176px;
    right: 0;
    box-shadow: none !important;
  }

  body[data-page-type="upload_input"].is-upload-preview-open .upload-preview-toggle {
    right: 286px;
  }

  body[data-page-type="upload_input"] .upload-preview-summary,
  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    width: 286px;
    margin: 0;
    padding: 10px !important;
    background: #efc44a !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder {
    min-height: 148px;
    padding: 12px 10px;
    gap: 6px;
    align-content: center;
    justify-items: center;
    text-align: center;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder strong {
    font-size: 0.98rem;
    line-height: 1.32;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  body[data-page-type="upload_input"] .original-preview-placeholder span {
    font-size: 0.82rem;
    line-height: 1.4;
    white-space: normal;
  }

  body[data-page-type="upload_input"] .slot-qr-lefttop {
    left: 5.7%;
    top: 25.35%;
    width: 12.7%;
  }

  body[data-page-type="upload_input"] .slot-logo-rightbottom {
    right: 1.15%;
    bottom: 5.95%;
    width: 16.1%;
  }

  body[data-page-type="checkout_input"] .form-actions.checkout-actions-centered.full-width-actions {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 14px;
    width: 100% !important;
  }

  body[data-page-type="checkout_input"] .form-actions.checkout-actions-centered.full-width-actions .btn {
    width: 100% !important;
    max-width: none !important;
    min-height: 56px;
    display: flex !important;
    align-items: center;
    justify-content: center;
  }

  body[data-page-type="checkout_confirm"] .confirm-page-title-wrap {
    margin-top: 2px;
    margin-bottom: 12px;
  }

  body[data-page-type="checkout_confirm"] .section-block.no-top-gap.narrow-wrap {
    padding-bottom: 0 !important;
  }

  body[data-page-type="checkout_confirm"] .confirm-shell {
    gap: 12px;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .detail-list,
  body[data-page-type="checkout_confirm"] .summary-panel .summary-list {
    gap: 6px;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .detail-list div,
  body[data-page-type="checkout_confirm"] .summary-panel .summary-list div {
    padding-bottom: 6px;
  }
}


@media (max-width: 760px) {
  body[data-page-type="upload_input"] .upload-preview-toggle,
  body[data-page-type="upload_input"] .upload-preview-side,
  body[data-page-type="upload_input"] .upload-preview-summary,
  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    background: #F5C84C !important;
  }

  body[data-page-type="upload_input"] .upload-preview-summary,
  body[data-page-type="upload_input"] .upload-preview-drawer-panel {
    box-shadow: none !important;
  }

  body[data-page-type="checkout_input"] .checkout-summary {
    margin-top: 0 !important;
  }

  body[data-page-type="checkout_input"] .checkout-summary .summary-list {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body[data-page-type="checkout_input"] .checkout-summary .summary-list div {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center;
    gap: 12px;
  }

  body[data-page-type="checkout_input"] .checkout-summary .summary-list dt {
    text-align: left;
  }

  body[data-page-type="checkout_input"] .checkout-summary .summary-list dd {
    margin-left: 0;
    text-align: right !important;
    justify-self: end;
  }

  body[data-page-type="checkout_input"] .form-actions.checkout-actions-centered.full-width-actions {
    width: 100% !important;
    max-width: none !important;
    margin-top: 0 !important;
  }

  body[data-page-type="checkout_input"] .form-actions.checkout-actions-centered.full-width-actions .btn {
    width: 100% !important;
    max-width: none !important;
    min-width: 100% !important;
  }

  body[data-page-type="checkout_confirm"] .confirm-page-title-wrap {
    margin-top: 4px;
    margin-bottom: 10px;
  }

  body[data-page-type="checkout_confirm"] .confirm-page-title {
    font-size: 24px !important;
    line-height: 1.18;
  }

  body[data-page-type="checkout_confirm"] .confirm-shell {
    gap: 10px !important;
  }

  body[data-page-type="checkout_confirm"] .summary-panel {
    margin-top: 0 !important;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .detail-list {
    gap: 4px;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .detail-list div {
    display: block !important;
    padding-bottom: 8px !important;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .detail-list dt {
    display: block;
    margin: 0 0 4px;
    text-align: left;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .detail-list dd {
    display: block;
    margin: 0;
    max-width: none;
    text-align: left !important;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .summary-list {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .summary-list div {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center;
    gap: 12px;
    padding-bottom: 8px !important;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .summary-list dt {
    text-align: left;
  }

  body[data-page-type="checkout_confirm"] .summary-panel .summary-list dd {
    margin-left: 0;
    text-align: right !important;
    justify-self: end;
  }

  body[data-page-type="checkout_confirm"] .checkout-upload-item h4 {
    margin: 0 0 20px !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="checkout_input"] .checkout-summary h2 {
    margin: 0 0 12px !important;
  }

  body[data-page-type="checkout_confirm"] .confirm-page-title-wrap {
    display: block;
    margin-top: 0 !important;
    margin-bottom: 8px !important;
  }

  body[data-page-type="checkout_confirm"] .confirm-page-title {
    margin: 0;
    padding-top: 14px;
    font-size: 24px !important;
    line-height: 1.18;
    letter-spacing: -0.03em;
    color: #16233b;
  }
}


@media (max-width: 760px) {
  body[data-page-type="checkout_confirm"] .summary-panel h2 {
    margin: 0 0 12px !important;
  }

  body[data-page-type="checkout_confirm"] .confirm-page-title-wrap {
    display: block;
    margin-top: 0 !important;
    margin-bottom: 8px !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="checkout_confirm"] .section-block.no-top-gap.narrow-wrap {
    padding: 14px 0 0 !important;
  }

  body[data-page-type="checkout_complete"] .section-block.narrow-wrap {
    padding-bottom: 0 !important;
  }

  body[data-page-type="mypage"] .section-block {
    padding-bottom: 0 !important;
  }

  body[data-page-type="mypage"] .mypage-name-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
  }

  body[data-page-type="mypage"] .mypage-postal-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
  }

  body[data-page-type="mypage"] .mypage-postal-row .js-postal-code {
    min-width: 0;
  }

  body[data-page-type="mypage"] .mypage-postal-row .postal-auto-btn {
    display: inline-flex !important;
    min-height: 44px;
    white-space: nowrap;
    padding-inline: 16px;
  }

  body[data-page-type="mypage"] .mypage-menu-toggle {
    position: fixed;
    top: 168px;
    right: 0;
    z-index: 80;
    width: 48px;
    min-height: 132px;
    border: none;
    border-radius: 14px 0 0 14px;
    background: #F5C84C;
    color: #16233b;
    font-weight: 700;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    letter-spacing: 0.06em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 28px rgba(22,35,59,0.18);
  }

  body[data-page-type="mypage"] .mypage-side-menu {
    position: fixed;
    top: 168px;
    right: 0;
    width: min(78vw, 312px);
    z-index: 79;
    padding: 14px;
    background: #ffffff;
    box-shadow: -24px 0 48px rgba(22,35,59,0.18);
    border-radius: 24px 0 0 24px;
    transform: translateX(100%);
    transition: transform 0.28s ease;
    max-height: calc(100vh - 180px);
    overflow-y: auto;
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-side-menu {
    transform: translateX(0);
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-toggle {
    right: min(78vw, 312px);
  }

  body[data-page-type="mypage"] .nav-inline-form {
    width: 100%;
    display: flex;
  }

  body[data-page-type="mypage"] .nav-inline-form .nav-logout-btn,
  body .nav-inline-form .nav-logout-btn {
    width: 100%;
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center !important;
    text-align: center;
    border-radius: 999px;
  }
}


@media (max-width: 760px) {
  body[data-page-type="signup"] .section-block.form-page,
  body[data-page-type="login"] .section-block.form-page,
  body[data-page-type="forgot-password"] .section-block.form-page {
    padding-bottom: 0 !important;
  }

  body[data-page-type="signup"] .signup-input-actions,
  body[data-page-type="forgot-password"] .auth-login-actions {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 14px;
    width: 100%;
  }

  body[data-page-type="signup"] .signup-input-actions .btn,
  body[data-page-type="forgot-password"] .auth-login-actions .btn {
    width: 100% !important;
    max-width: none !important;
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body[data-page-type="mypage"] .section-block {
    padding-bottom: 0 !important;
  }

  body[data-page-type="mypage"] .mypage-menu-toggle {
    top: 96px;
    right: 16px;
    width: auto;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 999px;
    writing-mode: horizontal-tb;
    text-orientation: mixed;
    letter-spacing: 0;
    box-shadow: 0 12px 28px rgba(22,35,59,0.12);
  }

  body[data-page-type="mypage"] .mypage-side-menu {
    top: 92px;
    left: 16px;
    right: 16px;
    width: auto;
    max-height: calc(100vh - 112px);
    border-radius: 24px;
    transform: translateY(-120%);
    box-shadow: 0 18px 40px rgba(22,35,59,0.16);
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-side-menu {
    transform: translateY(0);
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-toggle {
    right: 16px;
    top: 102px;
  }

  body[data-page-type="mypage"] .nav-inline-form,
  body[data-page-type="mypage"] .nav-inline-form .nav-logout-btn {
    width: 100%;
  }

  body[data-page-type="mypage"] .nav-inline-form .nav-logout-btn {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center !important;
    border-radius: 999px;
  }

  body[data-page-type="checkout_confirm"] .section-block.no-top-gap.narrow-wrap {
    padding: 14px 0 0 !important;
  }

  body[data-page-type="checkout_complete"] .section-block.narrow-wrap {
    padding-bottom: 0 !important;
  }

  body[data-page-type="mypage_orders"] .section-block.first-section-tight,
  body[data-page-type="mypage_warranty"] .section-block.first-section-tight,
  body[data-page-type="home"] .section-block.first-section-tight,
  body .support-page-wrap:first-child,
  body .faq-page-wrap:first-child {
    padding-bottom: 0 !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-head {
    grid-template-columns: 1fr !important;
    gap: 10px;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell,
  body[data-page-type="mypage_orders"] .orders-history-topcell-center {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    text-align: left;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-center {
    align-items: center;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell .orders-history-value,
  body[data-page-type="mypage_orders"] .orders-history-topcell .orders-status-badge {
    justify-self: end;
    text-align: right;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-box {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 12px;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-label {
    align-self: center;
  }

  body[data-page-type="mypage_orders"] .orders-history-order-meta.orders-history-order-meta-between {
    justify-content: flex-end;
    align-items: flex-end;
    text-align: right;
  }

  body[data-page-type="mypage_orders"] .orders-history-order-meta.orders-history-order-meta-between .orders-history-value,
  body[data-page-type="mypage_orders"] .orders-history-order-meta.orders-history-order-meta-between .btn-receipt-inline,
  body[data-page-type="mypage_orders"] .orders-history-order-meta.orders-history-order-meta-between .orders-history-receipt-note {
    margin-left: 0;
  }

  body[data-page-type="mypage_orders"] .orders-history-receipt-note {
    text-align: right;
  }
}

@media (max-width: 760px) {
  body .section-block.form-page:first-of-type {
    padding-bottom: 0 !important;
  }

  body .section-block.first-section-tight:has(.support-page-wrap),
  body .section-block.first-section-tight:has(.faq-page-wrap) {
    padding-bottom: 0 !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="mypage"] .mypage-login-settings {
    margin-top: 24px;
  }

  body[data-page-type="mypage"] .mypage-login-settings > .section-head h2,
  body[data-page-type="mypage"] .mypage-side-menu h2 {
    margin: 0 0 12px !important;
  }

  body[data-page-type="mypage"] .mypage-menu-toggle {
    top: 82px !important;
    right: 24px !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    font-size: 0.95rem !important;
    border-radius: 18px !important;
  }

  body[data-page-type="mypage"] .mypage-side-menu {
    top: 86px !important;
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
    max-height: calc(100vh - 100px) !important;
    transform: translateY(-120%);
    overflow-y: auto;
  }

  body[data-page-type="mypage"] .mypage-menu-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(22,35,59,0.28);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.22s ease;
    z-index: 78;
  }

  body[data-page-type="mypage"].is-mypage-menu-open {
    overflow: hidden;
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-backdrop {
    opacity: 1;
    pointer-events: auto;
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-toggle {
    top: 94px !important;
    right: 24px !important;
  }

  body[data-page-type="mypage"].is-mypage-menu-open main,
  body[data-page-type="mypage"].is-mypage-menu-open .site-header {
    pointer-events: none;
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-side-menu,
  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-toggle,
  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-backdrop {
    pointer-events: auto;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-box {
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-meta.orders-history-order-meta-between {
    display: flex !important;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
    text-align: right;
  }

  body[data-page-type="mypage_orders"] .orders-history-payment .orders-history-topcell {
    display: block !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-payment .orders-history-topcell .orders-history-label,
  body[data-page-type="mypage_orders"] .orders-history-payment .orders-history-topcell .orders-history-value,
  body[data-page-type="mypage_orders"] .orders-history-payment .orders-history-topcell .orders-history-payment-note {
    display: block;
    text-align: left !important;
    justify-self: auto;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    word-break: normal;
  }

  body[data-page-type="mypage_orders"] .orders-history-payment .orders-history-topcell .orders-history-value {
    margin-top: 6px;
  }

  body[data-page-type="mypage_orders"] .orders-history-payment .orders-history-topcell .orders-history-payment-note {
    margin-top: 8px;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center;
    gap: 12px;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell,
  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell.orders-history-topcell-center {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center;
    gap: 12px;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-value,
  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-status-badge {
    justify-self: end;
    text-align: right;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="mypage"] .mypage-menu-toggle {
    top: 84px !important;
    right: 18px !important;
    width: 132px !important;
    min-width: 132px !important;
    height: 72px !important;
    min-height: 72px !important;
    padding: 0 16px !important;
    border-radius: 16px !important;
    background: #5aa9b6 !important;
    color: #ffffff !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    box-shadow: 0 12px 28px rgba(22,35,59,0.16) !important;
    border: none !important;
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-toggle {
    top: 92px !important;
    right: 18px !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 12px !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-label {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    word-break: keep-all !important;
    white-space: nowrap !important;
    align-self: center !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-box {
    display: contents !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-meta.orders-history-order-meta-between {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 8px !important;
    min-width: 0;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-value,
  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-receipt-note {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    word-break: normal !important;
    white-space: normal !important;
    text-align: right !important;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell .orders-history-label {
    text-align: left !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    white-space: nowrap !important;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell .orders-history-value,
  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell .orders-status-badge {
    justify-self: end !important;
    text-align: right !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    white-space: nowrap !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="mypage"] .mypage-menu-toggle {
    top: 92px !important;
    right: 24px !important;
    width: 108px !important;
    min-width: 108px !important;
    height: 60px !important;
    min-height: 60px !important;
    padding: 0 14px !important;
    border-radius: 14px !important;
    background: #1c2d6b !important;
    color: #ffffff !important;
    font-size: 0.96rem !important;
    font-weight: 700 !important;
    box-shadow: 0 10px 24px rgba(28,45,107,0.18) !important;
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-toggle {
    top: 92px !important;
    right: 24px !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-label {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    word-break: keep-all !important;
    white-space: nowrap !important;
    align-self: center !important;
    margin: 0 !important;
    line-height: 1.35 !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-box {
    display: contents !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-meta.orders-history-order-meta-between {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 6px !important;
    min-width: 0;
    margin-top: 0 !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-value {
    margin: 0 !important;
    line-height: 1.25 !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-receipt-note {
    margin: 0 !important;
    line-height: 1.35 !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="mypage"] .mypage-login-settings {
    margin-top: 18px !important;
    padding: 22px 18px !important;
    border-radius: 24px !important;
  }

  body[data-page-type="mypage"] .mypage-menu-toggle {
    top: 94px !important;
    right: 24px !important;
    width: 92px !important;
    min-width: 92px !important;
    height: 52px !important;
    min-height: 52px !important;
    padding: 0 10px !important;
    border-radius: 12px !important;
    background: #1c2d6b !important;
    color: #ffffff !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    box-shadow: 0 10px 24px rgba(28,45,107,0.18) !important;
  }

  body[data-page-type="mypage"].is-mypage-menu-open .mypage-menu-toggle {
    top: 94px !important;
    right: 24px !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order {
    display: block !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-meta.orders-history-order-meta-between {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    align-items: stretch !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-line {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-line .orders-history-label,
  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-line .orders-history-value {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    white-space: nowrap !important;
    margin: 0 !important;
    line-height: 1.3 !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-line .orders-history-value {
    justify-self: end !important;
    text-align: right !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .btn-receipt-inline,
  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-receipt-note {
    margin-left: 0 !important;
    text-align: left !important;
    justify-self: start !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell .orders-history-label {
    text-align: left !important;
    white-space: nowrap !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
  }

  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell .orders-history-value,
  body[data-page-type="mypage_warranty"] .warranty-history-head .orders-history-topcell .orders-status-badge {
    justify-self: end !important;
    text-align: right !important;
    white-space: nowrap !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
  }
}


@media (max-width: 760px) {
  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-line {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-line .orders-history-label {
    justify-self: start !important;
    text-align: left !important;
  }

  body[data-page-type="mypage_orders"] .orders-history-topcell-order .orders-history-order-line .orders-history-value {
    justify-self: end !important;
    text-align: right !important;
  }
}
