
    @import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru:wght@400;500&family=Noto+Serif+TC:wght@500;600;700&family=Zen+Maru+Gothic:wght@400;500;700&display=swap');
    :root {
      --cream: #fff8ef;
      --milk: #fffdf8;
      --beige: #f4e7d7;
      --pink: #eec9c5;
      --rose: #c9847f;
      --green: #c9d9a8;
      --green-soft: #edf3dd;
      --brown: #4f3f35;
      --muted: #8a7666;
      --line: #f0dfcf;
      --white: #ffffff;
      --shadow: 0 18px 46px rgba(143, 101, 64, 0.13);
      --round: 28px;
    }

    * { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: var(--font-zh) !important;
      background: linear-gradient(180deg, var(--cream), #fff, #fff7f1);
      color: var(--brown);
      line-height: 1.75;
    }
    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    .container { width: min(1120px, calc(100% - 36px)); margin: 0 auto; }

    .topbar {
      position: sticky;
      top: 0;
      z-index: 30;
      background: rgba(255, 248, 239, 0.9);
      backdrop-filter: blur(16px);
      border-bottom: 1px solid var(--line);
    }
    .nav {
      height: 74px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
    }
    .brand { display: flex; align-items: center; gap: 12px; font-weight: 900; }
    .brand-mark {
      width: 46px;
      height: 46px;
      border-radius: 50%;
      display: grid;
      place-items: center;
      background: radial-gradient(circle at 35% 35%, #fff, var(--green-soft));
      border: 2px solid var(--green);
      box-shadow: 0 10px 24px rgba(143, 101, 64, 0.14);
      font-size: 23px;
      overflow: hidden;
    }
    .brand-mark img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 50%;
      display: block;
    }
    .brand small { display: block; color: var(--muted); font-weight: 500; font-size: 16px; margin-top: -4px; }
    .nav-links { display: flex; gap: 18px; color: var(--muted); font-size: 16px; }
    .nav-links a:hover { color: var(--rose); }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 44px;
      padding: 0 20px;
      border-radius: 999px;
      border: 1px solid transparent;
      cursor: pointer;
      font-weight: 800;
      transition: 0.2s ease;
      white-space: nowrap;
    }
    .btn:hover { transform: translateY(-2px); }
    .btn-primary { background: var(--brown); color: #fff; box-shadow: 0 12px 28px rgba(79, 63, 53, 0.18); }
    .btn-soft { background: #fff; color: var(--brown); border-color: var(--line); }
    .btn-green { background: var(--green); color: var(--brown); }
    .btn-full { width: 100%; }
    .cart-btn { position: relative; background: #fff; border-color: var(--line); }
    .cart-count {
      position: absolute;
      right: -6px;
      top: -8px;
      min-width: 22px;
      height: 22px;
      padding: 0 6px;
      border-radius: 999px;
      display: grid;
      place-items: center;
      background: var(--rose);
      color: #fff;
      font-size: 16px;
    }

    .hero { padding: 70px 0 38px; overflow: hidden; }
    .hero-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 48px; align-items: center; }
    .eyebrow {
      display: inline-flex;
      margin-bottom: 18px;
      padding: 8px 14px;
      border-radius: 999px;
      border: 1px solid var(--line);
      background: rgba(255, 255, 255, 0.78);
      color: var(--rose);
      font-weight: 900;
      font-size: 16px;
    }
    h1 { font-size: clamp(38px, 6vw, 68px); line-height: 1.08; letter-spacing: -0.04em; margin-bottom: 20px; }
    .hero p { color: var(--muted); font-size: 18px; max-width: 590px; margin-bottom: 24px; }
    .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 24px; }
    .trust-row { display: flex; flex-wrap: wrap; gap: 10px; color: var(--muted); font-size: 16px; }
    .trust-row span { background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 8px 12px; }
    .hero-card {
      min-height: 640px;
      border-radius: 42px;
      background: linear-gradient(145deg, #fff, #fff2df 44%, #edf3dd);
      box-shadow: var(--shadow);
      border: 1px solid rgba(255,255,255,0.75);
      position: relative;
      overflow: hidden;
      display: grid;
      place-items: center;
      padding: 28px;
    }
    .hero-card::before {
      content: "";
      position: absolute;
      inset: 22px;
      border-radius: 36px;
      border: 1px dashed rgba(201, 217, 168, 0.9);
    }
    .profile-logo {
      width: min(330px, 88%);
      aspect-ratio: 1;
      border-radius: 50%;
      background: #fff;
      border: 8px solid var(--green-soft);
      display: grid;
      place-items: center;
      position: relative;
      z-index: 1;
      box-shadow: 0 18px 42px rgba(143, 101, 64, 0.16);
      text-align: center;
      overflow: hidden;
    }
    .profile-logo img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 50%;
      display: block;
    }
    .hero-slider {
      width: min(430px, 88%);
      aspect-ratio: 4 / 5;
      height: auto;
      border-radius: 36px;
      overflow: hidden;
      background: #fffdf8;
      border: 8px solid var(--green-soft);
      box-shadow: 0 18px 42px rgba(143, 101, 64, 0.16);
      position: relative;
      z-index: 1;
      display: grid;
      place-items: center;
    }
    .hero-slider img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
      background: #fffdf8;
    }
    .hero-slider-dots {
      position: absolute;
      left: 50%;
      bottom: 16px;
      transform: translateX(-50%);
      display: flex;
      gap: 8px;
      z-index: 3;
      padding: 7px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,0.78);
      border: 1px solid rgba(255,255,255,0.9);
    }
    .hero-slider-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: rgba(79,63,53,0.28);
    }
    .hero-slider-dot.active { background: var(--brown); }
    .bubble {
      position: absolute;
      z-index: 2;
      background: rgba(255,255,255,0.88);
      border: 1px solid rgba(255,255,255,0.92);
      border-radius: 22px;
      padding: 14px 16px;
      box-shadow: var(--shadow);
      color: var(--muted);
      font-size: 16px;
    }
    .bubble strong { display: block; color: var(--brown); font-size: 16px; }
    .bubble.one { top: 30px; left: 28px; }
    .bubble.two { right: 28px; bottom: 70px; }

    section { padding: 66px 0; }
    .section-head {
      display: flex;
      justify-content: space-between;
      align-items: end;
      gap: 28px;
      margin-bottom: 30px;
    }
    .section-head h2 { font-size: clamp(30px, 4vw, 44px); line-height: 1.15; letter-spacing: -0.03em; }
    .section-head p { color: var(--muted); max-width: 520px; }

    .story-highlight { padding: 26px 0 40px; }
    .highlight-row {
      display: grid;
      grid-template-columns: repeat(8, 1fr);
      gap: 18px;
      align-items: start;
    }
    .highlight-item { text-align: center; color: var(--brown); font-size: 16px; font-weight: 800; }
    .highlight-circle {
      width: 82px;
      height: 82px;
      margin: 0 auto 8px;
      border-radius: 50%;
      background: linear-gradient(145deg, #fff, var(--green-soft));
      border: 3px solid #fff;
      outline: 2px solid var(--green);
      display: grid;
      place-items: center;
      box-shadow: 0 12px 26px rgba(143,101,64,0.12);
      font-size: 30px;
    }

    .announcement { padding-top: 32px; }
    .announcement-box {
      border-radius: 34px;
      padding: 34px;
      background: linear-gradient(135deg, #fff, #fff8ef 52%, #edf3dd);
      border: 1px solid var(--line);
      box-shadow: var(--shadow);
      display: grid;
      grid-template-columns: 0.95fr 1.05fr;
      gap: 28px;
      align-items: center;
    }
    .poster-card {
      min-height: 300px;
      border-radius: 28px;
      background: #f3ebe3;
      border: 1px solid #fff;
      display: grid;
      place-items: center;
      text-align: center;
      padding: 26px;
      position: relative;
      overflow: hidden;
    }
    .poster-card::after {
      content: "CRR";
      position: absolute;
      left: 28px;
      bottom: 12px;
      font-size: 88px;
      font-weight: 900;
      color: rgba(201,132,127,0.15);
      letter-spacing: -0.08em;
    }
    .poster-card .date { font-size: 30px; font-weight: 900; margin-bottom: 6px; }
    .poster-card .crr { display: inline-flex; padding: 4px 18px; border-radius: 999px; background: #d61f1f; color: #fff; font-size: 34px; font-weight: 900; margin: 8px 0; }
    .poster-card p { color: var(--muted); position: relative; z-index: 1; }
    .announcement h2 { font-size: clamp(30px, 4vw, 46px); line-height: 1.15; margin-bottom: 14px; }
    .announcement p { color: var(--muted); margin-bottom: 18px; }
    .mini-list { display: grid; gap: 10px; margin: 18px 0 22px; }
    .mini-list span { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 10px 14px; color: var(--muted); }

    .category-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
    .category-card, .product-card, .checkout-card, .info-card, .note-card {
      background: rgba(255,255,255,0.82);
      border: 1px solid var(--line);
      border-radius: var(--round);
      box-shadow: var(--shadow);
    }
    .category-card { padding: 24px; min-height: 170px; }
    .category-icon { width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center; background: var(--green-soft); font-size: 26px; margin-bottom: 16px; }
    .category-card h3 { margin-bottom: 6px; }
    .category-card p { color: var(--muted); font-size: 16px; }

    .products-wrap { background: rgba(255,255,255,0.55); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
    .product-card { overflow: hidden; background: #fff; display: flex; flex-direction: column; height: 100%; }
    .product-img {
      height: 230px;
      display: grid;
      place-items: center;
      position: relative;
      background: linear-gradient(145deg, #f4eee7, #fff6e8);
      font-size: 72px;
      overflow: hidden;
    }
    .product-img::before {
      content: "";
      width: 160px;
      height: 160px;
      position: absolute;
      border-radius: 50%;
      border: 1px dashed rgba(201,217,168,0.95);
      background: rgba(255,255,255,0.26);
    }
    .product-img span { position: relative; }
    .product-img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      position: absolute;
      inset: 0;
    }
    .product-img.has-photo::before { display: none; }
    .product-img.has-photo { cursor: pointer; }
    .tag {
      position: absolute;
      top: 16px;
      left: 16px;
      padding: 7px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,0.88);
      color: var(--rose);
      font-size: 16px;
      font-weight: 900;
      z-index: 2;
    }
    .product-body { padding: 22px; display: flex; flex-direction: column; flex: 1; }
    .product-body h3 { font-size: 20px; margin-bottom: 6px; }
    .product-body p { color: var(--muted); font-size: 16px; margin-bottom: 16px; }
    .product-actions { margin-top: auto; display: flex; flex-direction: column; gap: 10px; }
    .product-meta { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 16px; }
    .price { color: var(--rose); font-size: 22px; font-weight: 900; }
    .sizes { background: var(--cream); color: var(--muted); border-radius: 999px; padding: 6px 10px; font-size: 16px; }

    .lookbook-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .look-card {
      min-height: 260px;
      border-radius: 28px;
      padding: 22px;
      border: 1px solid var(--line);
      box-shadow: var(--shadow);
      background: #fff;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      overflow: hidden;
      position: relative;
    }
    .look-card::after {
      content: "♡";
      position: absolute;
      right: 18px;
      top: 8px;
      color: var(--green);
      font-size: 58px;
      opacity: 0.45;
    }
    .look-emoji { font-size: 64px; margin-bottom: 18px; }
    .look-card h3 { font-size: 22px; margin-bottom: 6px; }
    .look-card p { color: var(--muted); font-size: 16px; }


    .guide-photo {
      width: 100%;
      border-radius: 24px;
      overflow: hidden;
      border: 1px solid var(--line);
      background: var(--cream);
      box-shadow: 0 14px 32px rgba(143, 101, 64, 0.1);
      margin: 16px 0 18px;
    }
    .guide-photo img {
      width: 100%;
      display: block;
      object-fit: cover;
    }
    .model-size-note {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 8px 12px;
      border-radius: 999px;
      background: var(--green-soft);
      color: var(--brown);
      font-weight: 900;
      font-size: 16px;
      margin: 4px 0 10px;
    }

    .checkout-section { background: #fffaf5; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .checkout-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 24px; align-items: start; }
    .checkout-card { padding: 28px; background: #fff; }
    .checkout-card h3 { font-size: 24px; margin-bottom: 16px; }
    .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .form-group { display: grid; gap: 7px; margin-bottom: 14px; }
    .store-map-group .btn {
      width: 100%;
      min-height: 44px;
      border-radius: 16px;
    }
    .checkout-notice {
      margin-top: -2px;
    }
    .full { grid-column: 1 / -1; }
    label { font-weight: 900; font-size: 16px; }
    input, select, textarea {
      width: 100%;
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 12px 14px;
      background: #fffdf9;
      outline: none;
      color: var(--brown);
    }
    input:focus, select:focus, textarea:focus { border-color: var(--green); box-shadow: 0 0 0 4px rgba(201,217,168,0.28); }
    textarea { min-height: 92px; resize: vertical; }
    .summary-list { display: grid; gap: 12px; margin: 14px 0 18px; }
    .summary-empty {
      text-align: center;
      color: var(--muted);
      background: var(--cream);
      border: 1px dashed var(--line);
      border-radius: 18px;
      padding: 18px;
    }
    .summary-item {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 12px;
      background: var(--cream);
      border: 1px solid var(--line);
      border-radius: 18px;
      padding: 14px;
    }
    .summary-item small { display: block; color: var(--muted); }
    .summary-price { color: var(--rose); font-weight: 900; }
    .total-row { display: flex; justify-content: space-between; padding: 11px 0; border-bottom: 1px solid var(--line); color: var(--muted); }
    .total-row.final { border-bottom: none; color: var(--brown); font-size: 22px; font-weight: 900; padding-top: 16px; }
    .notice {
      margin: 14px 0;
      padding: 14px 16px;
      border-radius: 18px;
      background: rgba(201,217,168,0.27);
      color: var(--muted);
      font-size: 16px;
    }
    .order-output {
      display: none;
      margin-top: 18px;
      padding: 16px;
      border-radius: 18px;
      background: var(--cream);
      border: 1px solid var(--line);
      white-space: pre-wrap;
      font-size: 16px;
    }

    .info-grid { display: grid; grid-template-columns: 0.95fr 1.05fr; gap: 24px; }
    .info-card { padding: 30px; }
    .info-card h2 { font-size: 32px; line-height: 1.2; margin-bottom: 16px; }
    .info-card p { color: var(--muted); margin-bottom: 14px; }
    .steps { display: grid; gap: 14px; margin-top: 18px; }
    .step { display: grid; grid-template-columns: 42px 1fr; gap: 14px; padding: 16px; border-radius: 18px; background: var(--cream); border: 1px solid var(--line); }
    .step-num { width: 42px; height: 42px; border-radius: 50%; background: var(--green); color: var(--brown); display: grid; place-items: center; font-weight: 900; }
    .step span { color: var(--muted); font-size: 16px; }
    table { width: 100%; border-collapse: collapse; border-radius: 18px; overflow: hidden; background: #fff; margin-top: 16px; }
    th, td { padding: 13px 12px; text-align: left; border-bottom: 1px solid var(--line); }
    th { background: var(--green-soft); }

    .shopping-note-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .note-card { padding: 22px; background: #fff; }
    .note-card h3 { margin-bottom: 8px; }
    .note-card p { color: var(--muted); font-size: 16px; }

    .cta { padding: 84px 0; }
    .cta-box {
      border-radius: 38px;
      padding: 50px;
      background: linear-gradient(135deg, #4f3f35, #8a6252 65%, #c9847f);
      color: #fff;
      box-shadow: var(--shadow);
    }
    .cta-box h2 { font-size: clamp(32px, 5vw, 54px); line-height: 1.1; letter-spacing: -0.04em; margin-bottom: 16px; max-width: 760px; }
    .cta-box p { color: rgba(255,255,255,0.78); max-width: 620px; margin-bottom: 24px; }
    .cta-box .btn-primary { background: #fff; color: var(--brown); }

    .gallery-backdrop {
      position: fixed;
      inset: 0;
      z-index: 70;
      background: rgba(79,63,53,0.34);
      backdrop-filter: blur(5px);
      display: none;
      place-items: center;
      padding: 20px;
    }
    .gallery-backdrop.open { display: grid; }
    .gallery-modal {
      width: min(560px, calc(100vw - 48px));
      max-height: min(88vh, 760px);
      background: #fffdf9;
      border: 1px solid rgba(216, 205, 191, 0.9);
      border-radius: 24px;
      box-shadow: 0 22px 60px rgba(79,63,53,0.20);
      overflow: hidden;
      display: flex;
      flex-direction: column;
    }
    .gallery-header {
      padding: 12px 16px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      border-bottom: 1px solid rgba(216, 205, 191, 0.7);
      background: rgba(255,253,249,0.96);
      flex-shrink: 0;
    }
    .gallery-header h3 {
      font-size: 16px;
      line-height: 1.45;
      margin: 0;
      max-width: calc(100% - 96px);
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .gallery-image-wrap {
      height: min(44vh, 380px);
      min-height: 220px;
      background: linear-gradient(180deg, #fffaf3 0%, #fffdf9 100%);
      display: grid;
      place-items: center;
      position: relative;
      overflow: hidden;
      padding: 16px;
    }
    .gallery-image-wrap img {
      width: auto;
      height: auto;
      max-width: min(100%, 480px);
      max-height: 100%;
      display: block;
      border-radius: 18px;
      cursor: pointer;
      background: #fff;
      box-shadow: 0 10px 30px rgba(79,63,53,0.10);
    }
    .gallery-controls {
      display: grid;
      grid-template-columns: 96px 1fr 96px;
      align-items: center;
      gap: 12px;
      padding: 12px 16px 8px;
      border-top: 1px solid rgba(216, 205, 191, 0.7);
      background: #fffdf9;
      flex-shrink: 0;
    }
    .gallery-count {
      color: var(--muted);
      font-size: 16px;
      white-space: nowrap;
      text-align: center;
    }
    .gallery-thumbs {
      display: flex;
      gap: 8px;
      padding: 0 16px 14px;
      overflow-x: auto;
      background: #fffdf9;
      flex-shrink: 0;
      align-items: center;
      justify-content: center;
    }
    .gallery-thumb {
      width: 52px;
      height: 52px;
      border-radius: 12px;
      border: 1.5px solid transparent;
      overflow: hidden;
      background: #fff8ef;
      flex: 0 0 auto;
      cursor: pointer;
      padding: 0;
      box-shadow: 0 4px 12px rgba(79,63,53,0.06);
    }
    .gallery-thumb.active { border-color: var(--green); }
    .gallery-thumb img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .cart-backdrop { position: fixed; inset: 0; z-index: 40; background: rgba(79,63,53,0.28); display: none; }
    .cart-backdrop.open { display: block; }
    .cart-drawer {
      position: fixed;
      top: 0;
      right: 0;
      z-index: 50;
      width: min(420px, 92vw);
      height: 100vh;
      background: #fffdf8;
      border-left: 1px solid var(--line);
      box-shadow: -24px 0 60px rgba(79,63,53,0.18);
      transform: translateX(105%);
      transition: 0.28s ease;
      display: flex;
      flex-direction: column;
    }
    .cart-drawer.open { transform: translateX(0); }
    .cart-header { padding: 22px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; }
    .cart-body { padding: 18px; overflow: auto; flex: 1; }
    .cart-footer { padding: 18px; border-top: 1px solid var(--line); background: #fff; }
    .cart-item { display: grid; grid-template-columns: 52px 1fr; gap: 12px; padding: 14px; border: 1px solid var(--line); border-radius: 18px; background: #fff; margin-bottom: 12px; }
    .cart-emoji { width: 52px; height: 52px; border-radius: 18px; background: var(--green-soft); display: grid; place-items: center; font-size: 26px; overflow: hidden; }
    .cart-item h4 { font-size: 16px; line-height: 1.3; }
    .cart-item small { color: var(--muted); }
    .qty-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; }
    .qty-control { display: flex; align-items: center; gap: 8px; }
    .qty-control button { width: 30px; height: 30px; border-radius: 10px; border: 1px solid var(--line); background: var(--cream); cursor: pointer; font-weight: 900; }
    .remove-btn { border: none; background: transparent; color: var(--rose); cursor: pointer; font-weight: 900; }

    .float-ig {
      position: fixed;
      right: 18px;
      bottom: 18px;
      z-index: 35;
      background: var(--brown);
      color: #fff;
      border-radius: 999px;
      padding: 13px 18px;
      box-shadow: 0 16px 34px rgba(79,63,53,0.22);
      font-weight: 900;
      font-size: 16px;
    }

    footer { padding: 34px 0 46px; border-top: 1px solid var(--line); color: var(--muted); font-size: 16px; }
    .footer-row { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
    .footer-links { display: flex; gap: 16px; flex-wrap: wrap; }

    @media (max-width: 960px) {
      .nav-links { display: none; }
      .hero-grid, .announcement-box, .checkout-grid, .info-grid { grid-template-columns: 1fr; }
      .highlight-row { grid-template-columns: repeat(4, 1fr); }
      .category-grid, .product-grid, .lookbook-grid, .shopping-note-grid { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 640px) {
      .gallery-backdrop { padding: 10px; }
      .gallery-modal { width: calc(100vw - 18px); max-height: calc(100vh - 18px); border-radius: 22px; }
      .gallery-header { padding: 10px 12px; }
      .gallery-header h3 { font-size: 16px; max-width: calc(100% - 86px); }
      .gallery-image-wrap { height: min(38vh, 300px); min-height: 190px; padding: 10px; }
      .gallery-image-wrap img { max-width: 100%; max-height: 100%; }
      .gallery-controls { grid-template-columns: 82px 1fr 82px; padding: 10px 12px 8px; gap: 8px; }
      .gallery-controls .btn { min-height: 38px; padding: 0 12px; font-size: 16px; }
      .gallery-thumbs { padding: 0 12px 12px; justify-content: flex-start; }
      .gallery-thumb { width: 44px; height: 44px; border-radius: 10px; }

      .brand small { display: none; }
      .hero { padding-top: 50px; }
      .hero-card { min-height: 520px; }
      .bubble { font-size: 16px; padding: 10px 12px; }
      .section-head { display: block; }
      .section-head p { margin-top: 12px; }
      .highlight-row { grid-template-columns: repeat(4, 1fr); gap: 12px; }
      .highlight-circle { width: 64px; height: 64px; font-size: 24px; }
      .highlight-item { font-size: 16px; }
      .category-grid, .product-grid, .lookbook-grid, .form-grid, .shopping-note-grid { grid-template-columns: 1fr; }
      .checkout-card, .info-card, .note-card, .cta-box, .announcement-box { padding: 24px; border-radius: 26px; }
      .float-ig { left: 18px; right: 18px; text-align: center; justify-content: center; }
    }
  

    /* FurNest 質感改版：背景、字體、卡片與按鈕 */
    :root {
      --cream: #f8f5ef;
      --milk: #fffdf9;
      --beige: #efe4d6;
      --pink: #eedfd5;
      --rose: #b9897e;
      --green: #c8d4b3;
      --green-soft: #e8eedb;
      --sage-light: #f2f5ea;
      --brown: #5b4a40;
      --brown-deep: #463930;
      --muted: #8a786b;
      --muted-light: #aa9c91;
      --line: #e6dbce;
      --white: #fffdf9;
      --shadow: 0 18px 48px rgba(91, 74, 64, 0.10);
      --shadow-soft: 0 10px 28px rgba(91, 74, 64, 0.07);
      --round: 30px;
    }
    body {
      font-family: var(--font-zh) !important;
      background:
        radial-gradient(circle at 8% 8%, rgba(200, 212, 179, 0.18), transparent 26%),
        radial-gradient(circle at 90% 12%, rgba(238, 223, 213, 0.28), transparent 28%),
        linear-gradient(180deg, #f8f5ef 0%, #fffdf9 42%, #f4efe7 100%);
      color: var(--brown);
      line-height: 1.78;
      letter-spacing: 0.01em;
    }
    .topbar {
      background: rgba(255, 253, 249, 0.78);
      backdrop-filter: blur(18px);
      border-bottom: 1px solid rgba(230, 219, 206, 0.72);
      box-shadow: 0 8px 28px rgba(91, 74, 64, 0.04);
    }
    h1, .section-head h2, .info-card h2, .checkout-card h3, .cta-box h2 {
      font-family: var(--font-zh) !important;
      color: var(--brown-deep);
      letter-spacing: 0.01em;
    }
    h1 {
      font-size: clamp(38px, 6vw, 66px);
      line-height: 1.16;
      font-weight: 700;
    }
    .btn {
      min-height: 46px;
      padding: 0 22px;
      font-weight: 700;
      letter-spacing: 0.02em;
      transition: 0.24s ease;
    }
    .btn-primary { background: var(--brown-deep); color: #fff; box-shadow: 0 12px 26px rgba(91, 74, 64, 0.16); }
    .btn-soft { background: rgba(255, 253, 249, 0.88); color: var(--brown); border-color: var(--line); box-shadow: var(--shadow-soft); }
    .btn-green { background: var(--green); color: var(--brown-deep); box-shadow: 0 12px 26px rgba(200, 212, 179, 0.38); }
    .eyebrow {
      background: rgba(255, 253, 249, 0.78);
      color: var(--rose);
      font-weight: 700;
      font-size: 16px;
      letter-spacing: 0.04em;
      box-shadow: 0 8px 22px rgba(91, 74, 64, 0.04);
    }
    .hero-card {
      border-radius: 44px;
      background:
        linear-gradient(145deg, rgba(255, 253, 249, 0.96), rgba(248, 245, 239, 0.82) 48%, rgba(232, 238, 219, 0.82)),
        radial-gradient(circle at 18% 20%, rgba(238, 223, 213, 0.42), transparent 34%);
      box-shadow: var(--shadow);
      border: 1px solid rgba(255,255,255,0.88);
    }
    section { padding: 82px 0; }
    .trust-row span,
    .category-card,
    .product-card,
    .checkout-card,
    .info-card,
    .note-card,
    .look-card {
      background: rgba(255,253,249,0.86);
      border: 1px solid rgba(230, 219, 206, 0.78);
      box-shadow: var(--shadow-soft);
      backdrop-filter: blur(6px);
    }
    .category-card,
    .product-card { transition: 0.24s ease; }
    .category-card:hover,
    .product-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
    .products-wrap {
      background: linear-gradient(180deg, rgba(255,253,249,0.55), rgba(242,245,234,0.58));
      border-top: 1px solid rgba(230, 219, 206, 0.72);
      border-bottom: 1px solid rgba(230, 219, 206, 0.72);
    }
    .checkout-section {
      background: linear-gradient(180deg, #fffdf9, #f8f5ef);
      border-top: 1px solid rgba(230, 219, 206, 0.72);
      border-bottom: 1px solid rgba(230, 219, 206, 0.72);
    }
    input, select, textarea {
      border: 1px solid rgba(230, 219, 206, 0.95);
      background: #fffdf9;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.75);
    }
    .cta-box {
      border-radius: 40px;
      background:
        linear-gradient(135deg, rgba(70,57,48,0.98), rgba(111,91,78,0.96) 62%, rgba(185,137,126,0.92)),
        radial-gradient(circle at 85% 18%, rgba(255,255,255,0.16), transparent 28%);
      box-shadow: 0 22px 58px rgba(91, 74, 64, 0.18);
    }
    .cta-box h2 { color: #fff; }
    .float-ig {
      background: rgba(70, 57, 48, 0.94);
      backdrop-filter: blur(10px);
      border: 1px solid rgba(255,255,255,0.18);
    }


    /* FurNest 字體質感升級：日系圓體 + 溫柔襯線標題 */
    body {
      font-family: var(--font-zh) !important;
      line-height: 1.82;
      letter-spacing: 0.025em;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
    .brand {
      font-family: var(--font-zh) !important;
      font-weight: 700 !important;
      letter-spacing: 0.035em !important;
    }
    .brand small {
      font-weight: 400 !important;
      letter-spacing: 0.04em !important;
      color: var(--muted) !important;
    }
    .nav-links,
    .btn,
    input,
    select,
    textarea,
    label {
      font-family: var(--font-zh) !important;
      letter-spacing: 0.04em;
    }
    h1 {
      font-family: var(--font-zh) !important;
      font-size: clamp(38px, 6vw, 64px) !important;
      line-height: 1.22 !important;
      letter-spacing: 0.035em !important;
      font-weight: 600 !important;
      color: var(--brown-deep) !important;
    }
    .hero p {
      font-size: 17px !important;
      line-height: 1.95 !important;
      letter-spacing: 0.035em !important;
      color: var(--muted) !important;
      font-weight: 400 !important;
    }
    .section-head h2,
    .info-card h2,
    .checkout-card h3,
    .note-card h3,
    .cta-box h2 {
      font-family: var(--font-zh) !important;
      font-weight: 600 !important;
      letter-spacing: 0.035em !important;
      line-height: 1.28 !important;
    }
    .section-head h2 { font-size: clamp(30px, 4vw, 42px) !important; }
    .section-head p,
    .product-body p,
    .category-card p,
    .info-card p,
    .note-card p,
    .cta-box p {
      line-height: 1.88 !important;
      letter-spacing: 0.035em !important;
      font-weight: 400 !important;
    }
    .product-body h3,
    .category-card h3,
    .look-card h3 {
      font-family: var(--font-zh) !important;
      font-weight: 700 !important;
      letter-spacing: 0.04em !important;
      color: var(--brown-deep) !important;
    }
    .eyebrow {
      font-family: var(--font-zh) !important;
      font-weight: 500 !important;
      letter-spacing: 0.07em !important;
    }
    .btn {
      font-weight: 600 !important;
      letter-spacing: 0.045em !important;
    }


    /* Folder organized image blocks */
    .category-icon {
      overflow: hidden;
      background: var(--green-soft);
    }
    .category-icon img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 50%;
      display: block;
    }
    .poster-photo {
      padding: 0;
      overflow: hidden;
      background: #fffdf8;
    }
    .poster-photo::after {
      display: none;
    }
    .poster-photo img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }


    /* =============================
       FurNest 字體可愛質感版
       ============================= */
    body, input, select, textarea, button {
      font-family: var(--font-zh) !important;
      letter-spacing: 0.035em;
    }
    h1, h2, h3, .section-head h2, .checkout-card h3, .info-card h2, .note-card h3,
    .category-card h3, .look-card h3, .cart-header h3, .gallery-header h3, .cta-box h2 {
      font-family: var(--font-zh) !important;
      font-weight: 500 !important;
      letter-spacing: 0.06em !important;
    }
    .btn, label, .eyebrow, .nav-links, .brand, .price, .sizes, .tag {
      font-family: var(--font-zh) !important;
      letter-spacing: 0.045em;
    }
    .color-line {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      color: var(--muted);
      background: rgba(255, 253, 248, 0.72);
      border: 1px solid rgba(239, 220, 203, 0.86);
      border-radius: 999px;
      padding: 6px 11px;
      font-size: 16px;
      margin-bottom: 14px;
    }


    /* =============================
       商品詳細頁：點商品後顯示專屬商品頁
       ============================= */
    .product-card { cursor: pointer; }
    .product-detail-backdrop {
      position: fixed;
      inset: 0;
      z-index: 80;
      display: none;
      overflow-y: auto;
      padding: 28px 18px;
      background: rgba(79, 63, 53, 0.36);
      backdrop-filter: blur(6px);
    }
    .product-detail-backdrop.open { display: block; }
    .product-detail-modal {
      width: min(1120px, 100%);
      margin: 0 auto;
      background: #fffdf9;
      border: 1px solid rgba(239, 220, 203, 0.95);
      border-radius: 32px;
      box-shadow: 0 28px 80px rgba(79, 63, 53, 0.24);
      overflow: hidden;
    }
    .product-detail-top {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      padding: 18px 22px;
      border-bottom: 1px solid var(--line);
      background: rgba(255, 253, 249, 0.94);
    }
    .product-detail-top h3 {
      font-size: 18px;
      line-height: 1.45;
      margin: 0;
    }
    .product-detail-content {
      display: grid;
      grid-template-columns: 55fr 45fr;
      gap: 0;
    }
    .product-detail-gallery {
      padding: 22px;
      background: linear-gradient(180deg, #fff8ef 0%, #fffdf9 100%);
      border-right: 1px solid var(--line);
    }
    .product-detail-main-img {
      width: 100%;
      aspect-ratio: 4 / 3;
      border-radius: 24px;
      background: #fff;
      border: 1px solid var(--line);
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      box-shadow: 0 12px 32px rgba(79, 63, 53, 0.08);
      position: relative;
    }
    .product-detail-main-img img {
      display: block;
      width: 100%;
      height: 100%;
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
      object-position: center;
      background: #fff;
    }
    .product-detail-empty { font-size: 72px; }
    .product-detail-thumbs {
      display: flex;
      gap: 10px;
      overflow-x: auto;
      padding-top: 14px;
    }
    .product-detail-gallery-actions {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-top: 14px;
    }
    .product-detail-gallery-back-btn {
      flex: 0 0 auto;
      white-space: nowrap;
    }
    .product-detail-thumb {
      width: 64px;
      height: 64px;
      border-radius: 14px;
      border: 2px solid transparent;
      background: #fff;
      overflow: hidden;
      padding: 0;
      flex: 0 0 auto;
      cursor: pointer;
    }
    .product-detail-thumb.active {
      border-color: var(--green);
      box-shadow: 0 0 0 3px rgba(201, 217, 168, 0.34);
    }
    .product-detail-thumb img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
    .product-detail-info {
      padding: 30px 34px;
      display: flex;
      flex-direction: column;
      gap: 16px;
    }
    .product-detail-tag {
      align-self: flex-start;
      padding: 7px 13px;
      border-radius: 999px;
      background: rgba(255, 248, 239, 0.92);
      border: 1px solid var(--line);
      color: var(--rose);
      font-size: 16px;
      font-weight: 800;
    }
    .product-detail-title {
      font-size: clamp(22px, 2vw, 28px);
      line-height: 1.28;
      letter-spacing: -0.02em;
      margin: 0;
    }
    .product-detail-price {
      color: var(--rose);
      font-size: 28px;
      font-weight: 900;
    }
    .product-detail-desc {
      color: var(--muted);
      line-height: 1.95;
      white-space: pre-line;
    }
    .product-detail-meta {
      display: grid;
      gap: 10px;
      margin: 4px 0;
    }
    .product-detail-meta-row {
      padding: 12px 14px;
      border-radius: 18px;
      background: var(--cream);
      border: 1px solid var(--line);
      color: var(--muted);
    }
    .product-detail-meta-row strong {
      color: var(--brown-deep);
      margin-right: 8px;
    }

    /* 商品詳細頁：尺寸資訊換行顯示，避免擠成一整排 */
    #detailSizes {
      display: block;
      margin-top: 6px;
      white-space: pre-line;
      line-height: 1.85;
    }
    .product-detail-actions {
      display: grid;
      gap: 10px;
      margin-top: auto;
    }
    @media (max-width: 760px) {
      .product-detail-backdrop { padding: 10px; }
      .product-detail-modal { border-radius: 24px; }
      .product-detail-top { padding: 12px 14px; }
      .product-detail-top h3 { font-size: 16px; }
      .product-detail-content { grid-template-columns: 1fr; }
      .product-detail-gallery {
        border-right: none;
        border-bottom: 1px solid var(--line);
        padding: 14px;
      }
      .product-detail-gallery-actions {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        margin-top: 12px;
      }
      .product-detail-gallery-back-btn {
        align-self: flex-start;
      }
      .product-detail-main-img {
        border-radius: 20px;
        aspect-ratio: 1 / 1;
        min-height: 0;
      }

      .product-detail-main-img img{
        width:auto;
        height:auto;
        max-width:100%;
        max-height:100%;
      }
      .product-detail-info { padding: 20px; }
      .product-detail-title { font-size: 24px; line-height: 1.28; }
      .product-detail-thumb { width: 52px; height: 52px; }
    }


    /* 商品分類篩選 */
    .category-card { cursor: pointer; transition: 0.22s ease; }
    .category-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); }
    .category-card.active { border-color: var(--green) !important; box-shadow: 0 0 0 3px rgba(201,217,168,0.32), var(--shadow-soft) !important; }
    .product-filter-row { display: flex; flex-wrap: wrap; gap: 10px; margin: -10px 0 24px; }
    .filter-chip { border-radius: 999px; padding: 10px 16px; border: 1px solid var(--line); background: rgba(255,253,248,0.92); color: var(--muted); cursor: pointer; font-weight: 800; }
    .filter-chip.active { background: var(--green); color: var(--brown-deep); border-color: var(--green); }
    .product-pagination { display: flex; justify-content: center; align-items: center; gap: 10px; margin-top: 28px; }
    .page-info { color: var(--muted); font-weight: 800; padding: 0 8px; }

/* ===== FINAL SMALL CARD FIX ===== */

/* 毛孩穿搭靈感 */
#lookbook .lookbook-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:20px!important;
}

#lookbook .look-photo-card{
  border-radius:24px!important;
  overflow:hidden!important;
  background:#fffdf9!important;
  min-height:auto!important;
}

#lookbook .lookbook-slider{
  height:260px!important;
  overflow:hidden!important;
  background:#f8f5ef!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

#lookbook .lookbook-slider img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}

#lookbook .look-photo-card > div:not(.lookbook-slider){
  padding:14px 16px 18px!important;
}

#lookbook .look-photo-card h3{
  font-size:18px!important;
  margin:0 0 6px!important;
}

#lookbook .look-photo-card p{
  font-size: 16px!important;
  line-height:1.6!important;
  margin:0!important;
}

/* 購物須知 */
.shopping-note-card-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}

.shopping-note-card-grid .note-card{
  min-height:180px!important;
  border-radius:22px!important;
  padding:22px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  overflow:hidden!important;
}

.shopping-note-card-grid .note-image-card{
  padding:10px!important;
  background:#fffdf9!important;
}

.shopping-note-card-grid .note-image-card img{
  width:100%!important;
  height:100%!important;
  max-height:160px!important;
  object-fit:contain!important;
  display:block!important;
}

.shopping-note-card-grid .note-card h3{
  font-size:20px!important;
  margin-bottom:10px!important;
}

.shopping-note-card-grid .note-card p{
  font-size: 16px!important;
  line-height:1.8!important;
}

@media(max-width:900px){
  #lookbook .lookbook-grid,
  .shopping-note-card-grid{
    grid-template-columns:1fr 1fr!important;
  }
}

@media(max-width:640px){
  #lookbook .lookbook-grid,
  .shopping-note-card-grid{
    grid-template-columns:1fr!important;
  }

  #lookbook .lookbook-slider{
    height:220px!important;
  }
}


/* 商品說明保留 Google Sheets 換行 */
.product-body p,
.product-detail-desc,
.cart-item small,
.summary-item small {
  white-space: pre-line !important;
}


.hero-slider-dot{cursor:pointer!important;}
.hero-slider img{cursor:pointer!important;}
.notice:empty{display:none!important;}
.hero-slider-dot{cursor:pointer!important;}
.hero-slider img{cursor:pointer!important;}


/* FINAL AUDIT：商品區顯示修復 */
#productGrid:empty::after {
  content: "商品載入中...";
  color: var(--muted);
  display: block;
  padding: 20px 0;
}

/* 商品詳細頁：尺寸價格 / 款式價格選項 */
.product-option-group{display:grid;gap:8px;margin:2px 0 4px;}
.product-option-group label{color:var(--brown-deep);font-weight:800;font-size: 16px;}
.product-option-group select{width:100%;background:#fffdf9;border:1px solid var(--line);border-radius:16px;padding:12px 14px;color:var(--brown);}

    /* 過往連線小區塊 */
    .past-popup-section {
      padding: 46px 0 24px;
    }
    .past-popup-card {
      display: grid;
      grid-template-columns: 1.2fr 1fr auto;
      gap: 18px;
      align-items: center;
      padding: 24px;
      border-radius: 28px;
      background: rgba(255, 253, 248, 0.92);
      border: 1px solid var(--line);
      box-shadow: var(--shadow-soft);
    }
    .past-popup-card h2 {
      font-size: 28px;
      margin: 4px 0 6px;
    }
    .past-popup-card p {
      color: var(--muted);
      margin: 0;
      line-height: 1.8;
    }
    .past-popup-mini {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
    .past-popup-mini span {
      padding: 8px 12px;
      border-radius: 999px;
      background: var(--cream);
      border: 1px solid var(--line);
      color: var(--muted);
      font-weight: 700;
      font-size: 16px;
    }
    @media (max-width: 900px) {
      .past-popup-card {
        grid-template-columns: 1fr;
      }
    }


/* 商品標籤 */
.product-badges{
  position:absolute;
  top:12px;
  left:12px;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  z-index:3;
}
.product-badge{
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,0.92);
  border:1px solid var(--line);
  color:var(--brown-deep);
  font-size: 16px;
  font-weight:800;
  backdrop-filter: blur(10px);
}

/* 立即下單 */
.detail-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:14px;
}
.btn-buy-now{
  background:var(--brown-deep);
  color:#fff;
}
@media (max-width:640px){
  .detail-actions{
    grid-template-columns:1fr;
  }
}

/* FINAL QUICK NAV STABILITY */
.story-highlight {
  padding: 28px 0 34px;
  border-bottom: 1px solid var(--line);
  background: rgba(255, 253, 248, 0.48);
}
.story-highlight .highlight-row {
  justify-content: center;
  gap: clamp(22px, 5vw, 72px);
}
.story-highlight .highlight-item {
  min-width: 82px;
}
@media (max-width: 640px) {
  .story-highlight .highlight-row {
    justify-content: flex-start;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 6px;
  }
}




/* 結帳資訊右側提醒 */
.checkout-head{
  display:grid;
  grid-template-columns: minmax(180px, 0.45fr) minmax(420px, 1.55fr);
  gap:28px;
  align-items:stretch;
  margin-bottom:24px;
}
.checkout-head > div:first-child{
  align-self:start;
}
.checkout-process-note{
  margin:0;
  padding:18px 22px;
  border-radius:22px;
  background:linear-gradient(135deg,#f7f2ea 0%,#eef3de 100%);
  border:1px solid rgba(184,170,150,.28);
  color:#6b5a50;
  line-height:1.75;
  box-shadow:0 14px 30px rgba(88,72,61,.06);
}
.checkout-process-note h3{
  margin:0 0 8px;
  font-size:20px;
  color:#4e3d34;
}
.checkout-process-note p{
  margin:0 0 6px;
  font-size: 16px;
}
.contact-note{
  grid-column:1/-1;
  background:#eef3de;
  border-radius:18px;
  padding:12px 14px;
  color:#7f746b;
  font-size: 16px;
  line-height:1.7;
}
@media(max-width:760px){
  .checkout-head{
    grid-template-columns:1fr;
    gap:14px;
  }
}


/* HOME DECLUTTER */
.hero-badge-card,
.hero-floating-card,
.hero-phone-note,
.mockup-note,
.ig-mini-card,
.phone-caption {
  display: none !important;
}


/* SIMPLIFIED HOME QUICK NAV */
.story-highlight .highlight-row {
  justify-content: center;
  gap: clamp(28px, 7vw, 96px);
}
@media (max-width: 640px) {
  .story-highlight .highlight-row {
    justify-content: flex-start;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 6px;
  }
}


/* REMOVE QUICK ICONS FINAL */
.story-highlight,
.quick-nav-section {
  display: none !important;
}

/* HERO FEATURE CHIPS */
.hero-feature-chips{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:22px;
}
.hero-feature-chips span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:10px 15px;
  border-radius:999px;
  background:rgba(255,253,248,.92);
  border:1px solid var(--line);
  color:var(--muted);
  font-weight:700;
  box-shadow:0 10px 24px rgba(88,72,61,.06);
}
@media(max-width:640px){
  .hero-feature-chips{
    gap:8px;
    margin-top:18px;
  }
  .hero-feature-chips span{
    padding:9px 12px;
    font-size: 16px;
  }
}


/* MERGED CATEGORY FILTER */
.category-filter-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:22px 0 28px;
}
.category-filter{
  text-align:left;
  border:1px solid var(--line);
  background:rgba(255,253,248,.92);
  border-radius:22px;
  padding:15px 18px;
  color:var(--brown);
  cursor:pointer;
  transition:.2s ease;
  box-shadow:0 12px 28px rgba(88,72,61,.05);
}
.category-filter strong{
  display:block;
  font-size: 16px;
  color:var(--brown-deep);
  margin-bottom:6px;
}
.category-filter span{
  display:block;
  font-size: 16px;
  line-height:1.65;
  color:var(--muted);
}
.category-filter.active{
  background:#dfe9c8;
  border-color:#c7d9ae;
}
.category-filter.active strong{
  color:#4f6042;
}
@media(max-width:900px){
  .category-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .category-filter-row{
    display:flex;
    overflow-x:auto;
    gap:10px;
    padding-bottom:6px;
  }
  .category-filter{
    min-width:190px;
  }
}


/* FINAL HERO CHIPS FONT FIX */
.hero-feature-chips span,
.hero-feature-chips a,
.hero-feature-chips .chip,
.hero-feature-chips .tag,
.hero-feature-chips .pill{
  font-size: 16px!important;
  line-height:1.2 !important;
  font-weight:700 !important;
  min-height:40px;
  display:inline-flex;
  align-items:center;
}

/* FINAL CATEGORY DESCRIPTION FILTER */
.category-filter-row{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:22px 0 28px !important;
}
.category-filter{
  text-align:left !important;
  border:1px solid var(--line) !important;
  background:rgba(255,253,248,.94) !important;
  border-radius:22px !important;
  padding:15px 18px !important;
  color:var(--brown) !important;
  cursor:pointer !important;
  box-shadow:0 12px 28px rgba(88,72,61,.05) !important;
  min-height:88px !important;
}
.category-filter strong{
  display:block !important;
  font-size: 16px!important;
  color:var(--brown-deep) !important;
  margin-bottom:6px !important;
}
.category-filter span{
  display:block !important;
  font-size: 16px!important;
  line-height:1.65 !important;
  color:var(--muted) !important;
  white-space:normal !important;
}
.category-filter.active{
  background:#dfe9c8 !important;
  border-color:#c7d9ae !important;
}
.category-filter.active strong{
  color:#4f6042 !important;
}
@media(max-width:900px){
  .category-filter-row{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:640px){
  .category-filter-row{
    display:flex !important;
    overflow-x:auto !important;
    gap:10px !important;
    padding-bottom:6px !important;
  }
  .category-filter{
    min-width:210px !important;
  }
}


/* FINAL CATEGORY TITLE AND FILTER FIX */
.products-wrap .section-head h2{
  display:block !important;
}
.category-filter-row{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:22px 0 28px !important;
}
.category-filter{
  text-align:left !important;
  border:1px solid var(--line) !important;
  background:rgba(255,253,248,.94) !important;
  border-radius:22px !important;
  padding:15px 18px !important;
  color:var(--brown) !important;
  cursor:pointer !important;
  box-shadow:0 12px 28px rgba(88,72,61,.05) !important;
  min-height:88px !important;
}
.category-filter strong{
  display:block !important;
  font-size: 16px!important;
  color:var(--brown-deep) !important;
  margin-bottom:6px !important;
}
.category-filter span{
  display:block !important;
  font-size: 16px!important;
  line-height:1.65 !important;
  color:var(--muted) !important;
  white-space:normal !important;
}
.category-filter.active{
  background:#dfe9c8 !important;
  border-color:#c7d9ae !important;
}
.category-filter.active strong{
  color:#4f6042 !important;
}
@media(max-width:900px){
  .category-filter-row{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:640px){
  .category-filter-row{
    display:flex !important;
    overflow-x:auto !important;
    gap:10px !important;
    padding-bottom:6px !important;
  }
  .category-filter{
    min-width:210px !important;
  }
}


/* UNIFORM HERO CHIPS */
.hero-feature-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  align-items:center !important;
}

.hero-feature-chips > *,
.hero-feature-chips span,
.hero-feature-chips a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:42px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  border:1px solid #e4d9ca !important;
  background:rgba(255,253,248,.95) !important;
  color:#7b6657 !important;
  font-size: 16px!important;
  font-weight:700 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}

.hero-feature-chips > *:last-child{
  opacity:.72;
}


/* FINAL HERO CHIPS ONE ROW */
.hero-feature-chips{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  gap:10px !important;
  align-items:center !important;
  justify-content:flex-start !important;
  margin-top:22px !important;
  width:max-content !important;
  max-width:none !important;
}

.hero-feature-chips span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:42px !important;
  min-height:42px !important;
  padding:0 15px !important;
  border-radius:999px !important;
  border:1px solid #e4d9ca !important;
  background:rgba(255,253,248,.95) !important;
  color:#7b6657 !important;
  font-family: var(--font-zh) !important;
  font-size: 16px!important;
  font-weight:700 !important;
  line-height:42px !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
  opacity:1 !important;
  transform:none !important;
}

.hero-feature-chips span:last-child{
  font-size: 16px!important;
  opacity:1 !important;
}

@media(max-width:760px){
  .hero-feature-chips{
    overflow-x:auto !important;
    width:100% !important;
    max-width:100% !important;
    padding-bottom:4px !important;
  }
  .hero-feature-chips span{
    flex:0 0 auto !important;
    font-size: 16px!important;
    height:40px !important;
    line-height:40px !important;
    padding:0 13px !important;
  }
}


/* HERO ACTIONS ALIGN */
.hero-actions{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  flex-wrap:nowrap !important;
}
.hero-actions .btn{
  white-space:nowrap !important;
  padding-left:20px !important;
  padding-right:20px !important;
}
@media(max-width:760px){
  .hero-actions{
    flex-wrap:wrap !important;
  }
}


/* CART CHECKOUT BUTTON FIX */
.cart-checkout-btn{
  margin-top:14px !important;
}
.cart-footer{
  padding:18px 24px 24px;
  border-top:1px solid var(--line);
  background:rgba(255,253,248,.96);
}


/* WHITE BRAND HOME TRIAL */
:root{
  --page:#ffffff !important;
  --cream:#ffffff !important;
  --brown:#111827 !important;
  --brown-deep:#111827 !important;
  --muted:#111827 !important;
}
html, body{
  background:#ffffff !important;
  color:#111827 !important;
  font-family: var(--font-zh) !important;
}
body::before,
body::after{
  display:none !important;
}
.site-header,
header{
  background:#ffffff !important;
  border-bottom:0 !important;
  box-shadow:none !important;
}
.site-header .container,
header .container,
.navbar,
.nav-wrap{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
  padding:26px 20px 18px !important;
}
.brand,
.logo-wrap{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:16px !important;
}
.brand img,
.logo-wrap img,
.site-header img{
  width:96px !important;
  height:96px !important;
  border-radius:999px !important;
  object-fit:cover !important;
}
.brand strong,
.brand-title{
  font-size:30px !important;
  font-weight:900 !important;
  color:#111827 !important;
  letter-spacing:.02em !important;
}
.brand small,
.brand-subtitle{
  font-size:18px !important;
  color:#111827 !important;
}
nav,
.nav-links{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:34px !important;
}
nav a,
.nav-links a{
  color:#111827 !important;
  font-size:21px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  letter-spacing:.02em !important;
}
.cart-btn,
.cart-toggle{
  color:#111827 !important;
  border:1px solid #111827 !important;
  background:#ffffff !important;
  box-shadow:none !important;
}
.hero{
  background:#ffffff !important;
  padding:38px 0 34px !important;
  min-height:auto !important;
}
.hero-grid{
  display:block !important;
  text-align:center !important;
}
.brand-hero{
  display:grid !important;
  justify-items:center !important;
  gap:10px !important;
  margin:0 auto !important;
}
.brand-hero img{
  width:150px !important;
  height:150px !important;
  border-radius:999px !important;
  object-fit:cover !important;
}
.brand-hero-name{
  font-size:42px !important;
  font-weight:900 !important;
  color:#111827 !important;
  letter-spacing:.02em !important;
}
.brand-hero-subtitle{
  font-size:28px !important;
  font-weight:800 !important;
  color:#111827 !important;
  letter-spacing:.03em !important;
}
.eyebrow{
  color:#111827 !important;
  border-color:#111827 !important;
  background:#ffffff !important;
}
h1,h2,h3{
  color:#111827 !important;
}
.products-wrap,
section{
  background:#ffffff !important;
}
.btn,
.category-filter,
.product-card,
.look-card,
.checkout-card,
.info-card{
  background:#ffffff !important;
  color:#111827 !important;
  border-color:#d1d5db !important;
}
.category-filter.active{
  background:#111827 !important;
  color:#ffffff !important;
}
.category-filter.active strong,
.category-filter.active span{
  color:#ffffff !important;
}
@media(max-width:760px){
  .brand-hero img{
    width:118px !important;
    height:118px !important;
  }
  .brand-hero-name{
    font-size:34px !important;
  }
  .brand-hero-subtitle{
    font-size:23px !important;
  }
  nav,.nav-links{
    gap:18px !important;
  }
  nav a,.nav-links a{
    font-size:17px !important;
  }
}


/* REQUESTED WHITE HEADER / NAV / DROPDOWN */
.topbar{
  position:static !important;
  background:#ffffff !important;
}
.topbar .brand{
  display:none !important;
}
.topbar .container.nav{
  padding:0 !important;
  min-height:0 !important;
}
.hero-nav-links{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:34px !important;
  margin-top:26px !important;
}
.hero-nav-links a{
  color:#111827 !important;
  font-size:25px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  letter-spacing:.02em !important;
}
.brand-hero-subtitle{
  background:transparent !important;
}
.float-cart{
  position:fixed !important;
  right:28px !important;
  bottom:112px !important;
  z-index:999 !important;
  border:0 !important;
  border-radius:999px !important;
  padding:18px 34px !important;
  background:#5a4a40 !important;
  color:#ffffff !important;
  font-size:22px !important;
  font-weight:900 !important;
  box-shadow:0 14px 34px rgba(0,0,0,.16) !important;
  cursor:pointer !important;
}
.float-cart .cart-count{
  position:absolute !important;
  top:-8px !important;
  right:-8px !important;
  width:28px !important;
  height:28px !important;
  border-radius:999px !important;
  background:#b48a80 !important;
  color:#ffffff !important;
  display:grid !important;
  place-items:center !important;
  font-size: 16px!important;
}
.float-ig{
  right:28px !important;
  bottom:32px !important;
}
.category-filter-row,
.category-grid{
  display:none !important;
}
.category-select-wrap{
  margin:20px 0 28px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:14px !important;
}
.category-select-wrap label{
  color:#111827 !important;
  font-size:20px !important;
  font-weight:900 !important;
}
.category-select{
  min-width:280px !important;
  height:54px !important;
  border-radius:999px !important;
  border:2px solid #111827 !important;
  background:#ffffff !important;
  color:#111827 !important;
  font-size:18px !important;
  font-weight:800 !important;
  padding:0 22px !important;
}
@media(max-width:760px){
  .hero-nav-links{
    gap:18px !important;
  }
  .hero-nav-links a{
    font-size:18px !important;
  }
  .float-cart{
    right:18px !important;
    bottom:104px !important;
    font-size:18px !important;
    padding:15px 26px !important;
  }
  .category-select-wrap{
    flex-direction:column !important;
  }
}


/* FINAL 3-POINT LAYOUT UPDATE */
.topbar{
  display:none !important;
}
.hero{
  background:#ffffff !important;
  padding:64px 0 56px !important;
}
.hero-grid{
  display:grid !important;
  grid-template-columns:minmax(0,0.95fr) minmax(340px,0.85fr) !important;
  gap:52px !important;
  align-items:center !important;
  text-align:left !important;
}
.hero-left-brand{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
}
.hero-brand-logo{
  width:138px !important;
  height:138px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  margin-bottom:18px !important;
}
.brand-hero-name{
  font-size:60px !important;
  font-weight:900 !important;
  color:#111827 !important;
  letter-spacing:.02em !important;
  line-height:1.05 !important;
}
.brand-hero-subtitle{
  margin-top:18px !important;
  font-size:34px !important;
  font-weight:900 !important;
  color:#111827 !important;
  line-height:1.35 !important;
  background:transparent !important;
}
.hero-nav-links{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:22px 30px !important;
  margin-top:34px !important;
}
.hero-nav-links a{
  color:#111827 !important;
  font-size:23px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  letter-spacing:.02em !important;
}
.hero-card{
  display:block !important;
  background:#ffffff !important;
  border:1px solid #e5e7eb !important;
  border-radius:32px !important;
  padding:26px !important;
  box-shadow:0 20px 46px rgba(17,24,39,.08) !important;
}
.hero-slider{
  border-radius:24px !important;
  overflow:hidden !important;
}
.hero-slider img{
  width:100% !important;
  height:auto !important;
  max-height:520px !important;
  object-fit:contain !important;
  display:block !important;
  background:#ffffff !important;
}
.products-wrap{
  background:#ffffff !important;
}
.shop-layout{
  display:grid !important;
  grid-template-columns:210px minmax(0,1fr) !important;
  gap:34px !important;
  align-items:start !important;
}
.category-sidebar{
  position:sticky !important;
  top:24px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  align-self:start !important;
}
.sidebar-category{
  appearance:none !important;
  border:0 !important;
  border-bottom:2px solid #111827 !important;
  background:#ffffff !important;
  color:#111827 !important;
  padding:8px 0 !important;
  text-align:left !important;
  font-size:20px !important;
  font-weight:900 !important;
  cursor:pointer !important;
}
.sidebar-category.active{
  color:#9b6f67 !important;
}
.shop-products{
  min-width:0 !important;
}
.category-filter-row,
.category-select-wrap,
.category-grid{
  display:none !important;
}
.float-cart,
.float-ig{
  position:fixed !important;
  right:28px !important;
  z-index:999 !important;
  min-width:260px !important;
  height:64px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 30px !important;
  background:#5a4a40 !important;
  color:#ffffff !important;
  border:0 !important;
  box-shadow:0 14px 34px rgba(0,0,0,.16) !important;
  font-size:22px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-decoration:none !important;
  cursor:pointer !important;
}
.float-cart{
  bottom:112px !important;
}
.float-ig{
  bottom:32px !important;
}
.float-cart .cart-count{
  position:absolute !important;
  top:-9px !important;
  right:-9px !important;
  width:30px !important;
  height:30px !important;
  border-radius:999px !important;
  background:#b48a80 !important;
  color:#ffffff !important;
  display:grid !important;
  place-items:center !important;
  font-size: 16px!important;
  font-weight:900 !important;
}
@media(max-width:900px){
  .hero-grid{
    grid-template-columns:1fr !important;
    text-align:center !important;
  }
  .hero-left-brand{
    align-items:center !important;
  }
  .hero-nav-links{
    justify-content:center !important;
  }
  .shop-layout{
    grid-template-columns:1fr !important;
  }
  .category-sidebar{
    position:static !important;
    flex-direction:row !important;
    overflow-x:auto !important;
    gap:18px !important;
    padding-bottom:10px !important;
  }
  .sidebar-category{
    flex:0 0 auto !important;
    font-size:18px !important;
    white-space:nowrap !important;
  }
}
@media(max-width:640px){
  .hero{
    padding:48px 0 40px !important;
  }
  .hero-brand-logo{
    width:112px !important;
    height:112px !important;
  }
  .brand-hero-name{
    font-size:44px !important;
  }
  .brand-hero-subtitle{
    font-size:26px !important;
  }
  .hero-nav-links{
    gap:18px 24px !important;
  }
  .hero-nav-links a{
    font-size:20px !important;
  }
  .hero-card{
    padding:16px !important;
  }
  .float-cart,
  .float-ig{
    right:18px !important;
    min-width:220px !important;
    height:58px !important;
    font-size:19px !important;
  }
  .float-cart{
    bottom:102px !important;
  }
  .float-ig{
    bottom:28px !important;
  }
}


/* HERO SIZE + NAV FRAME REFINEMENT */
.hero-grid{
  grid-template-columns:minmax(0,1.12fr) minmax(280px,0.62fr) !important;
  gap:42px !important;
}
.hero-brand-logo{
  width:180px !important;
  height:180px !important;
}
.hero-card{
  max-width:420px !important;
  justify-self:center !important;
  padding:20px !important;
}
.hero-slider img{
  max-height:380px !important;
  object-fit:contain !important;
}
.hero-nav-links{
  flex-wrap:nowrap !important;
  gap:10px !important;
  width:100% !important;
  margin-top:30px !important;
  overflow-x:auto !important;
  padding:4px 0 8px !important;
}
.hero-nav-links a{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:46px !important;
  padding:0 18px !important;
  border:1.5px solid #111827 !important;
  border-radius:999px !important;
  background:#ffffff !important;
  color:#111827 !important;
  font-size:18px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
@media(max-width:900px){
  .hero-grid{
    grid-template-columns:1fr !important;
  }
  .hero-brand-logo{
    width:150px !important;
    height:150px !important;
  }
  .hero-card{
    max-width:360px !important;
  }
  .hero-slider img{
    max-height:330px !important;
  }
  .hero-nav-links{
    justify-content:flex-start !important;
  }
}
@media(max-width:640px){
  .hero-brand-logo{
    width:132px !important;
    height:132px !important;
  }
  .hero-card{
    max-width:300px !important;
    padding:14px !important;
  }
  .hero-slider img{
    max-height:280px !important;
  }
  .hero-nav-links a{
    height:42px !important;
    padding:0 15px !important;
    font-size:16px !important;
  }
}


/* LOGO CENTER REFINEMENT */
.hero-left-brand{
  align-items:center !important;
  text-align:center !important;
}
.hero-nav-links{
  justify-content:center !important;
}
.brand-hero-name,
.brand-hero-subtitle{
  text-align:center !important;
}
@media(min-width:901px){
  .hero-left-brand{
    justify-self:center !important;
  }
}


/* Hero image: one frame only */
.hero-card{
  width:100% !important;
  max-width:360px !important;
  height:auto !important;
  justify-self:center !important;
  padding:14px !important;
  border:1px solid #d9d9d9 !important;
  border-radius:28px !important;
  background:#ffffff !important;
  box-shadow:0 14px 34px rgba(17,24,39,.08) !important;
  outline:none !important;
  overflow:hidden !important;
}

/* remove decorative pseudo layers / nested borders */
.hero-card::before,
.hero-card::after,
.hero-slider::before,
.hero-slider::after{
  content:none !important;
  display:none !important;
}

.hero-slider{
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  outline:0 !important;
  background:#ffffff !important;
  border-radius:22px !important;
  overflow:hidden !important;
  box-shadow:none !important;
}

.hero-slider img{
  width:100% !important;
  height:auto !important;
  max-height:420px !important;
  object-fit:contain !important;
  object-position:center !important;
  display:block !important;
  margin:0 auto !important;
  border:0 !important;
  border-radius:18px !important;
  background:#ffffff !important;
  filter:none !important;
}

.hero-slider-dots{
  position:static !important;
  transform:none !important;
  margin:12px auto 0 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:8px !important;
  width:max-content !important;
  padding:8px 14px !important;
  background:#ffffff !important;
  border:1px solid #e5e7eb !important;
  border-radius:999px !important;
  box-shadow:none !important;
}

.hero-slider-dot{
  width:9px !important;
  height:9px !important;
  border-radius:999px !important;
  background:#c9c9c9 !important;
}

.hero-slider-dot.active{
  background:#111827 !important;
}

/* force remove any dashed green decorative frame inside hero */
.hero-card [style*="dashed"],
.hero-card .dashed,
.hero-card .decor,
.hero-card .frame,
.hero-card .phone-frame{
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
}

@media(max-width:900px){
  .hero{
    padding:42px 0 36px !important;
  }

  .hero-grid{
    grid-template-columns:1fr !important;
    gap:28px !important;
    max-width:100% !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .hero-left-brand{
    max-width:100% !important;
    overflow:hidden !important;
  }

  .hero-brand-logo{
    width:128px !important;
    height:128px !important;
  }

  .brand-hero-name{
    font-size:44px !important;
  }

  .brand-hero-subtitle{
    font-size:25px !important;
    max-width:92vw !important;
  }

  .hero-nav-links{
    flex-wrap:wrap !important;
    overflow:visible !important;
    gap:10px !important;
    max-width:92vw !important;
    margin:26px auto 0 !important;
    padding:0 !important;
  }

  .hero-nav-links a{
    font-size:16px !important;
    height:40px !important;
    padding:0 14px !important;
  }

  .hero-card{
    width:78vw !important;
    max-width:300px !important;
    padding:12px !important;
    border-radius:24px !important;
  }

  .hero-slider img{
    max-height:340px !important;
  }

  .float-cart,
  .float-ig{
    right:18px !important;
    min-width:0 !important;
    width:auto !important;
    height:54px !important;
    padding:0 28px !important;
    font-size:18px !important;
  }

  .float-cart{
    bottom:94px !important;
  }

  .float-ig{
    left:18px !important;
    right:18px !important;
    width:auto !important;
    bottom:24px !important;
  }
}

@media(max-width:480px){
  .hero-brand-logo{
    width:116px !important;
    height:116px !important;
  }

  .brand-hero-name{
    font-size:40px !important;
  }

  .brand-hero-subtitle{
    font-size:23px !important;
    white-space:normal !important;
  }

  .hero-nav-links{
    max-width:94vw !important;
    gap:9px !important;
  }

  .hero-nav-links a{
    font-size: 16px!important;
    height:38px !important;
    padding:0 12px !important;
  }

  .hero-card{
    width:74vw !important;
    max-width:280px !important;
  }

  .hero-slider img{
    max-height:315px !important;
  }
}


/* FINAL CHECKED CLEANUP - single hero frame, no gradient, small float buttons */
html, body{
  max-width:100% !important;
  overflow-x:hidden !important;
  background:#ffffff !important;
}
body::before, body::after{
  display:none !important;
  content:none !important;
}
.hero{
  background:#ffffff !important;
  background-image:none !important;
  padding:52px 0 48px !important;
  overflow:hidden !important;
}
.hero-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 320px !important;
  gap:42px !important;
  align-items:center !important;
  justify-items:center !important;
  max-width:1120px !important;
  margin:0 auto !important;
  width:100% !important;
}
.hero-left-brand{
  align-items:center !important;
  text-align:center !important;
  justify-self:center !important;
  width:100% !important;
  max-width:640px !important;
}
.hero-brand-logo{
  width:168px !important;
  height:168px !important;
  border-radius:999px !important;
  object-fit:cover !important;
}
.brand-hero-name{
  font-size:56px !important;
  line-height:1.05 !important;
  text-align:center !important;
  color:#111827 !important;
}
.brand-hero-subtitle{
  margin-top:18px !important;
  font-size:31px !important;
  line-height:1.35 !important;
  text-align:center !important;
  color:#111827 !important;
  background:transparent !important;
}
.hero-nav-links{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:14px 16px !important;
  max-width:760px !important;
  width:100% !important;
  margin:30px auto 0 !important;
  overflow:visible !important;
  padding:0 !important;
}
.hero-nav-links a{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:42px !important;
  padding:0 18px !important;
  border:1.5px solid #111827 !important;
  border-radius:999px !important;
  background:#ffffff !important;
  color:#111827 !important;
  font-size:17px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  text-decoration:none !important;
}
.hero-card{
  width:100% !important;
  max-width:320px !important;
  height:auto !important;
  justify-self:center !important;
  padding:10px !important;
  border:1px solid #d9d9d9 !important;
  border-radius:24px !important;
  background:#ffffff !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
  outline:none !important;
  overflow:hidden !important;
}
.hero-card::before, .hero-card::after,
.hero-slider::before, .hero-slider::after{
  content:none !important;
  display:none !important;
}
.hero-card *, .hero-slider, .hero-slider img{
  box-shadow:none !important;
  filter:none !important;
  background-image:none !important;
}
.hero-slider{
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  outline:0 !important;
  background:#ffffff !important;
  border-radius:18px !important;
  overflow:hidden !important;
}
.hero-slider img{
  width:100% !important;
  height:auto !important;
  max-height:400px !important;
  object-fit:contain !important;
  object-position:center !important;
  display:block !important;
  margin:0 auto !important;
  border:0 !important;
  border-radius:14px !important;
  background:#ffffff !important;
}
.hero-slider-dots{
  position:static !important;
  transform:none !important;
  margin:10px auto 0 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:8px !important;
  width:max-content !important;
  padding:8px 14px !important;
  background:#ffffff !important;
  border:1px solid #e5e7eb !important;
  border-radius:999px !important;
  box-shadow:none !important;
}
.hero-slider-dot{width:9px !important;height:9px !important;border-radius:999px !important;background:#c9c9c9 !important;}
.hero-slider-dot.active{background:#111827 !important;}
.float-cart, .float-ig{
  min-width:0 !important;
  width:auto !important;
  height:48px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  font-size: 16px!important;
  box-shadow:none !important;
}
.float-cart{bottom:84px !important;}
.float-ig{bottom:22px !important;}
.float-cart .cart-count{
  width:24px !important;height:24px !important;font-size: 16px!important;
}
@media(max-width:900px){
  .hero{padding:42px 0 36px !important;}
  .hero-grid{grid-template-columns:1fr !important; gap:24px !important; max-width:100% !important; padding-left:20px !important; padding-right:20px !important;}
  .hero-left-brand{max-width:100% !important; overflow:hidden !important;}
  .hero-brand-logo{width:116px !important;height:116px !important;}
  .brand-hero-name{font-size:40px !important;}
  .brand-hero-subtitle{font-size:23px !important; max-width:92vw !important; white-space:normal !important;}
  .hero-nav-links{max-width:92vw !important; gap:10px 10px !important; margin:24px auto 0 !important;}
  .hero-nav-links a{font-size: 16px!important;height:38px !important;padding:0 12px !important;}
  .hero-card{width:72vw !important; max-width:280px !important; padding:8px !important; border-radius:22px !important;}
  .hero-slider img{max-height:315px !important;}
  .float-cart, .float-ig{height:44px !important; padding:0 18px !important; font-size: 16px!important;}
  .float-cart{bottom:78px !important; right:18px !important;}
  .float-ig{left:18px !important; right:18px !important; width:auto !important; bottom:22px !important;}
}


/* 1. 導覽列固定兩行，不橫向捲動 */
.hero-nav-links{
  display:grid !important;
  grid-template-columns:repeat(3, max-content) !important;
  justify-content:center !important;
  align-items:center !important;
  gap:14px 18px !important;
  width:100% !important;
  max-width:760px !important;
  margin:28px auto 0 !important;
  padding:0 !important;
  overflow:visible !important;
}

.hero-nav-links a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:42px !important;
  padding:0 18px !important;
  border:1.5px solid #111827 !important;
  border-radius:999px !important;
  background:#ffffff !important;
  color:#111827 !important;
  font-size:17px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  text-decoration:none !important;
}

/* 2. Hero 圖片框只包圖片，不留大空白 */
.hero-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 300px !important;
  gap:42px !important;
  align-items:center !important;
  justify-items:center !important;
  width:100% !important;
  max-width:1080px !important;
  margin:0 auto !important;
}

.hero-card{
  width:300px !important;
  max-width:300px !important;
  height:auto !important;
  min-height:0 !important;
  padding:10px !important;
  margin:0 !important;
  border:1px solid #d9d9d9 !important;
  border-radius:22px !important;
  background:#ffffff !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

.hero-card::before,
.hero-card::after,
.hero-slider::before,
.hero-slider::after{
  display:none !important;
  content:none !important;
}

.hero-slider{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:16px !important;
  background:#ffffff !important;
  overflow:visible !important;
  box-shadow:none !important;
}

.hero-slider img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:360px !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:0 auto !important;
  padding:0 !important;
  border-radius:14px !important;
  background:#ffffff !important;
  box-shadow:none !important;
  filter:none !important;
}

/* dots 不要撐高整個框框 */
.hero-slider-dots{
  position:static !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:7px !important;
  width:max-content !important;
  margin:10px auto 0 !important;
  padding:7px 13px !important;
  border:1px solid #e5e7eb !important;
  border-radius:999px !important;
  background:#ffffff !important;
  box-shadow:none !important;
  transform:none !important;
}

/* 3. 浮動按鈕縮小約一半 */
.float-cart,
.float-ig{
  position:fixed !important;
  right:22px !important;
  z-index:999 !important;
  min-width:0 !important;
  width:auto !important;
  height:38px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  background:#5a4a40 !important;
  color:#ffffff !important;
  font-size: 16px!important;
  font-weight:900 !important;
  line-height:1 !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

.float-cart{
  bottom:72px !important;
}

.float-ig{
  bottom:24px !important;
}

.float-cart .cart-count{
  position:absolute !important;
  top:-7px !important;
  right:-7px !important;
  width:20px !important;
  height:20px !important;
  border-radius:999px !important;
  background:#b48a80 !important;
  color:#ffffff !important;
  font-size: 16px!important;
  display:grid !important;
  place-items:center !important;
}

/* 手機版 */
@media(max-width:900px){
  .hero{
    padding:38px 0 34px !important;
    overflow:hidden !important;
  }

  .hero-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
    max-width:100% !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .hero-left-brand{
    width:100% !important;
    max-width:100% !important;
    align-items:center !important;
    text-align:center !important;
  }

  .hero-nav-links{
    grid-template-columns:repeat(3, max-content) !important;
    gap:10px 10px !important;
    max-width:100% !important;
  }

  .hero-nav-links a{
    height:36px !important;
    padding:0 12px !important;
    font-size: 16px!important;
  }

  .hero-card{
    width:260px !important;
    max-width:260px !important;
    padding:8px !important;
    border-radius:20px !important;
  }

  .hero-slider img{
    max-height:315px !important;
  }

  .hero-slider-dots{
    margin-top:8px !important;
    padding:6px 12px !important;
  }

  .float-cart,
  .float-ig{
    right:16px !important;
    height:36px !important;
    padding:0 14px !important;
    font-size: 16px!important;
  }

  .float-cart{
    bottom:68px !important;
  }

  .float-ig{
    bottom:24px !important;
  }
}

@media(max-width:430px){
  .hero-nav-links{
    grid-template-columns:repeat(2, max-content) !important;
  }

  .hero-nav-links a{
    font-size: 16px!important;
    padding:0 14px !important;
  }

  .hero-card{
    width:250px !important;
    max-width:250px !important;
  }
}


/* Keep product/category area from becoming too heavy */
.sidebar-category,
.category-filter,
.category-select {
  color: #111827 !important;
}

@media (max-width: 900px) {
  .minimal-hero {
    padding: 46px 0 40px !important;
  }

  .minimal-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .minimal-hero-copy {
    order: 1 !important;
  }

  .minimal-hero-visual {
    order: 2 !important;
    width: min(100%, 420px) !important;
  }

  .minimal-hero-visual img {
    max-height: 460px !important;
  }

  .minimal-hero-nav {
    grid-template-columns: repeat(3, max-content) !important;
    gap: 14px 22px !important;
  }

  .minimal-floating-actions {
    right: 16px !important;
    bottom: 18px !important;
    gap: 8px !important;
  }

  .minimal-float-btn {
    height: 36px !important;
    min-width: 102px !important;
    font-size: 16px!important;
    padding: 0 13px !important;
  }
}

@media (max-width: 520px) {
  .minimal-hero-logo {
    width: 118px !important;
    height: 118px !important;
  }

  .minimal-brand-name {
    font-size: 42px !important;
  }

  .minimal-hero h1 {
    font-size: 24px !important;
  }

  .minimal-hero-nav {
    grid-template-columns: repeat(3, max-content) !important;
    gap: 13px 18px !important;
  }

  .minimal-hero-nav a {
    font-size: 16px !important;
  }

  .minimal-hero-visual {
    width: min(100%, 350px) !important;
  }

  .minimal-hero-visual img {
    max-height: 390px !important;
  }
}

@media (max-width: 390px) {
  .minimal-hero-nav {
    grid-template-columns: repeat(2, max-content) !important;
  }
}



/* SHOPPABLE KOREAN HOME */
html, body{
  background:#fff !important;
  color:#111827 !important;
  overflow-x:hidden !important;
}
body::before, body::after, .topbar{
  display:none !important;
}
.shoppable-hero{
  background:#fff !important;
  padding: clamp(42px, 6vw, 82px) 0 clamp(34px, 5vw, 64px) !important;
  border-bottom:1px solid rgba(17,24,39,.08) !important;
}
.shoppable-hero-grid{
  display:grid !important;
  grid-template-columns:minmax(320px,.82fr) minmax(520px,1.18fr) !important;
  gap:clamp(42px, 6vw, 90px) !important;
  align-items:center !important;
  max-width:1180px !important;
  margin:0 auto !important;
}
.shoppable-copy{
  text-align:left !important;
  display:block !important;
  min-width:0 !important;
}
.shoppable-logo{
  width:96px !important;
  height:96px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  display:block !important;
  margin-bottom:18px !important;
}
.shoppable-brand{
  color:#111827 !important;
  font-size:clamp(42px, 4.2vw, 64px) !important;
  font-weight:900 !important;
  letter-spacing:.02em !important;
  line-height:1 !important;
  margin-bottom:18px !important;
}
.shoppable-copy h1{
  margin:0 !important;
  color:#111827 !important;
  font-size:clamp(28px, 3vw, 42px) !important;
  line-height:1.22 !important;
  font-weight:900 !important;
  letter-spacing:.02em !important;
}
.shoppable-copy h1 span{
  display:block !important;
}
.shoppable-copy p{
  max-width:420px !important;
  margin:22px 0 0 !important;
  color:#6b625b !important;
  font-size:16px !important;
  line-height:1.9 !important;
  letter-spacing:.04em !important;
}
.hero-brand-copy{
  width:min(100%, 420px) !important;
  margin:18px 0 0 !important;
  display:grid !important;
  gap:4px !important;
  line-height:1.75 !important;
  letter-spacing:.045em !important;
}
.hero-brand-copy-main{
  display:block !important;
  color:#5f5650 !important;
  font-size: 16px!important;
  font-weight:400 !important;
}
.hero-brand-copy-sub{
  display:block !important;
  color:rgba(95,86,80,.62) !important;
  font-size: 16px!important;
  font-weight:400 !important;
}
.shoppable-nav{
  display:grid !important;
  grid-template-columns:repeat(3, max-content) !important;
  justify-content:start !important;
  gap:13px 24px !important;
  margin-top:32px !important;
}
.shoppable-nav a{
  color:#111827 !important;
  text-decoration:none !important;
  font-size: 16px!important;
  font-weight:900 !important;
  letter-spacing:.12em !important;
  line-height:1 !important;
  padding-bottom:5px !important;
  border-bottom:1px solid transparent !important;
}
.shoppable-nav a:hover{
  border-bottom-color:#111827 !important;
}
.shoppable-visual{
  position:relative !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 150px !important;
  gap:18px !important;
  align-items:end !important;
}
.hero-main-photo{
  background:#fff !important;
  overflow:hidden !important;
}
.hero-main-photo img{
  width:100% !important;
  height:520px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#fff !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
}
.hero-side-stack{
  display:grid !important;
  gap:18px !important;
}
.hero-side-stack img{
  width:150px !important;
  height:150px !important;
  object-fit:cover !important;
  display:block !important;
  background:#fff !important;
}
.shoppable-visual .minimal-hero-dots{
  grid-column:1 / -1 !important;
  display:flex !important;
  justify-content:center !important;
  gap:8px !important;
  margin:14px auto 0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.shoppable-visual .hero-slider-dot{
  width:7px !important;
  height:7px !important;
  border-radius:999px !important;
  background:#d1d5db !important;
}
.shoppable-visual .hero-slider-dot.active{
  background:#111827 !important;
}
.hero-card, .hero-slider, .hero-feature-chips, .hero-actions, .trust-row, .minimal-hero{
  display:none !important;
}
.shop-floating-actions{
  position:fixed !important;
  right:20px !important;
  bottom:20px !important;
  z-index:999 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  align-items:flex-end !important;
}
.shop-float-btn{
  position:relative !important;
  height:34px !important;
  min-width:78px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  border:1px solid rgba(90,74,64,.22) !important;
  background:#5a4a40 !important;
  color:#fff !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  text-decoration:none !important;
  font-size: 16px!important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:0 8px 20px rgba(17,24,39,.12) !important;
  cursor:pointer !important;
}
.shop-float-btn .cart-count{
  position:absolute !important;
  top:-7px !important;
  right:-7px !important;
  width:18px !important;
  height:18px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  background:#b48a80 !important;
  color:#fff !important;
  font-size: 16px!important;
  font-weight:900 !important;
}
.float-cart,.float-ig,.minimal-floating-actions{
  display:none !important;
}
@media(max-width:980px){
  .shoppable-hero-grid{
    grid-template-columns:1fr !important;
    gap:32px !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }
  .shoppable-copy{
    text-align:center !important;
  }
  .shoppable-logo{
    margin-left:auto !important;
    margin-right:auto !important;
    width:112px !important;
    height:112px !important;
  }
  .shoppable-copy p{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .hero-brand-copy{
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }
  .shoppable-nav{
    justify-content:center !important;
  }
  .shoppable-visual{
    grid-template-columns:1fr !important;
    max-width:420px !important;
    width:100% !important;
    margin:0 auto !important;
  }
  .hero-main-photo img{
    height:auto !important;
    max-height:430px !important;
    object-fit:contain !important;
  }
  .hero-side-stack{
    display:none !important;
  }
}
@media(max-width:520px){
  .shoppable-hero{
    padding:38px 0 34px !important;
  }
  .shoppable-brand{
    font-size:40px !important;
  }
  .shoppable-copy h1{
    font-size:25px !important;
  }
  .shoppable-copy p{
    font-size: 16px!important;
    line-height:1.75 !important;
  }
  .hero-brand-copy{
    margin-top:16px !important;
    gap:3px !important;
    line-height:1.72 !important;
  }
  .hero-brand-copy-main{
    font-size: 16px!important;
  }
  .hero-brand-copy-sub{
    font-size: 16px!important;
  }
  .shoppable-nav{
    grid-template-columns:repeat(3,max-content) !important;
    gap:12px 16px !important;
  }
  .shoppable-nav a{
    font-size: 16px!important;
  }
  .shop-floating-actions{
    right:14px !important;
    bottom:16px !important;
  }
  .shop-float-btn{
    height:32px !important;
    min-width:70px !important;
    font-size: 16px!important;
  }
}
@media(max-width:380px){
  .shoppable-nav{
    grid-template-columns:repeat(2,max-content) !important;
  }
}


/* INLINE ENGLISH SECTION TITLES */
.title-en{
  display:inline-block;
  margin-left:10px;
  font-size: 16px;
  font-weight:700;
  letter-spacing:.08em;
  color:#77706a;
  vertical-align:middle;
  text-transform:none;
}
@media(max-width:640px){
  .title-en{
    display:block;
    margin-left:0;
    margin-top:6px;
    font-size: 16px;
  }
}


/* NAV HOVER CHINESE */
.shoppable-nav a{
  min-width:86px;
  text-align:center;
}
.shoppable-nav a:hover{
  border-bottom-color:#111827 !important;
}
.shoppable-nav a:hover{
  font-size:0 !important;
}
.shoppable-nav a:hover::after{
  content:attr(data-label);
  font-size: 16px!important;
  font-weight:900 !important;
  letter-spacing:.04em !important;
  color:#111827 !important;
}
@media(max-width:520px){
  .shoppable-nav a:hover::after{
    font-size: 16px!important;
  }
}


/* COMPACT SHOP + IMAGE LIGHTBOX FINAL */
:root{
  --compact-gap: 18px;
}

section{
  padding-top: clamp(38px, 4.5vw, 62px) !important;
  padding-bottom: clamp(38px, 4.5vw, 62px) !important;
}

.section-head{
  margin-bottom: 22px !important;
}

.section-head h2{
  font-size: clamp(28px, 2.5vw, 38px) !important;
  line-height: 1.15 !important;
}

.title-en{
  font-size: 16px!important;
}

/* 精選分類：左側分類 + 右側商品，桌機一眼 8 個 */
.shop-layout{
  display:grid !important;
  grid-template-columns: 170px minmax(0, 1fr) !important;
  gap: 26px !important;
  align-items:start !important;
}

.category-sidebar{
  position:sticky !important;
  top: 20px !important;
  display:flex !important;
  flex-direction:column !important;
  gap: 8px !important;
}

.sidebar-category{
  font-size: 16px !important;
  font-weight: 900 !important;
  padding: 8px 0 !important;
  border:0 !important;
  border-bottom: 1.5px solid #111827 !important;
  background:transparent !important;
  text-align:left !important;
  color:#111827 !important;
  cursor:pointer !important;
}

.sidebar-category.active{
  color:#9b6f67 !important;
}

.product-grid,
#productGrid{
  display:grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items:start !important;
}

.product-card{
  border-radius: 18px !important;
  overflow:hidden !important;
  border: 1px solid #ece3d9 !important;
  background:#fff !important;
  box-shadow:none !important;
  min-height: 0 !important;
}

.product-card img,
.product-card .product-image,
.product-card .card-image{
  width:100% !important;
  height: 210px !important;
  object-fit: cover !important;
  display:block !important;
}

.product-card .product-body,
.product-card .card-body,
.product-card .product-content{
  padding: 14px 15px 16px !important;
}

.product-card h3,
.product-card .product-title{
  font-size: 16px !important;
  line-height: 1.45 !important;
  margin: 0 0 8px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.product-card p,
.product-card .product-desc,
.product-card .product-description{
  display:none !important;
}

.product-card .meta,
.product-card .product-meta,
.product-card .pill-row,
.product-card .product-options,
.product-card .option-row{
  display:none !important;
}

.product-card .price,
.product-card .product-price{
  font-size: 16px !important;
  font-weight:900 !important;
  margin-top: 6px !important;
}

.product-card .tag,
.product-card .badge,
.product-card .product-badge{
  font-size: 16px!important;
  padding: 5px 9px !important;
  border-radius: 999px !important;
}

/* 若原本商品卡內容不是標準 class，直接限制卡片內文字高度 */
.product-card > div:not(:first-child){
  padding: 14px 15px 16px !important;
}

.product-card > div:not(:first-child) > *:not(h3):not(.price):not(.product-price):not(button):not(.btn):not(.tag):not(.badge):not(.product-badge){
  display:none !important;
}

/* 穿搭/其他圖片卡也縮小 */
.lookbook-grid,
.look-grid{
  gap: 18px !important;
}

.look-card,
.info-card,
.checkout-card,
.notice-card{
  border-radius: 18px !important;
  padding: 18px !important;
  box-shadow:none !important;
}

.look-card img,
.lookbook-slider img{
  height: 260px !important;
  object-fit: cover !important;
}

.look-card h3{
  font-size:18px !important;
  margin: 12px 0 6px !important;
}

.look-card p{
  font-size: 16px!important;
  line-height:1.6 !important;
}

/* 說明/結帳區整體縮小 */
.guide-grid,
.note-grid,
.checkout-grid,
.info-grid{
  gap: 18px !important;
}

.checkout-card input,
.checkout-card select,
.checkout-card textarea,
.form-control{
  min-height: 42px !important;
  font-size: 16px!important;
}

.checkout-card label{
  font-size: 16px!important;
}

.cart-drawer,
.cart-panel{
  max-width: 420px !important;
}

.modal-content,
.product-modal-content{
  max-width: 760px !important;
}

/* 圖片點開放大 */
.image-lightbox{
  position:fixed;
  inset:0;
  z-index:5000;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(17,24,39,.78);
  padding:24px;
}

.image-lightbox.active{
  display:flex;
}

.image-lightbox img{
  max-width:min(94vw, 980px);
  max-height:90vh;
  object-fit:contain;
  border-radius:12px;
  background:#fff;
}

.image-lightbox-close{
  position:fixed;
  right:22px;
  top:18px;
  width:42px;
  height:42px;
  border-radius:999px;
  border:0;
  background:#fff;
  color:#111827;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}

body.lightbox-open{
  overflow:hidden;
}

/* 浮動按鈕保持小尺寸 */
.shop-floating-actions,
.minimal-floating-actions{
  right:20px !important;
  bottom:20px !important;
  gap:8px !important;
}

.shop-float-btn,
.minimal-float-btn,
.float-cart,
.float-ig{
  height:34px !important;
  min-width:78px !important;
  padding:0 12px !important;
  font-size: 16px!important;
}

/* 手機版：一眼看到更多，但不要太擠 */
@media(max-width:980px){
  .shop-layout{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  .category-sidebar{
    position:static !important;
    flex-direction:row !important;
    overflow-x:auto !important;
    gap:14px !important;
    padding-bottom:8px !important;
  }

  .sidebar-category{
    flex:0 0 auto !important;
    font-size: 16px!important;
    white-space:nowrap !important;
  }

  .product-grid,
  #productGrid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  .product-card img,
  .product-card .product-image,
  .product-card .card-image{
    height: 170px !important;
  }

  .product-card h3,
  .product-card .product-title{
    font-size: 16px!important;
    line-height:1.45 !important;
  }

  .look-card img,
  .lookbook-slider img{
    height: 220px !important;
  }
}

@media(max-width:520px){
  section{
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  .product-grid,
  #productGrid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .product-card{
    border-radius: 14px !important;
  }

  .product-card img,
  .product-card .product-image,
  .product-card .card-image{
    height: 145px !important;
  }

  .product-card .product-body,
  .product-card .card-body,
  .product-card .product-content,
  .product-card > div:not(:first-child){
    padding: 10px 11px 12px !important;
  }

  .product-card h3,
  .product-card .product-title{
    font-size: 16px!important;
    margin-bottom: 6px !important;
  }

  .product-card .price,
  .product-card .product-price{
    font-size: 16px!important;
  }

  .image-lightbox{
    padding:14px;
  }

  .image-lightbox-close{
    width:38px;
    height:38px;
    right:14px;
    top:14px;
  }
}


/* COMPACT GUIDE + CHECKOUT FINAL */

/* 全站段落再壓縮一點 */
section{
  padding-top:42px !important;
  padding-bottom:42px !important;
}

.container{
  max-width:1120px !important;
}

.section-head{
  margin-bottom:18px !important;
}

.section-head h2{
  font-size:32px !important;
}

/* 測量方式、模特尺寸：卡片與圖片縮小 */
#guide .info-grid,
#guide .guide-grid,
.guide-grid,
.info-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:start !important;
}

#guide .info-card,
#guide .guide-card,
.info-card,
.guide-card{
  padding:16px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#guide h2,
#guide h3,
.info-card h3,
.guide-card h3{
  font-size:24px !important;
  line-height:1.25 !important;
  margin-bottom:10px !important;
}

#guide p,
.info-card p,
.guide-card p{
  font-size: 16px!important;
  line-height:1.65 !important;
  margin-bottom:12px !important;
}

/* 圖片不要把版面撐爆，但點開可以看完整 */
#guide img,
.info-card img,
.guide-card img{
  width:100% !important;
  height:360px !important;
  object-fit:cover !important;
  object-position:top center !important;
  border-radius:14px !important;
  display:block !important;
  cursor:zoom-in !important;
}

/* 如果測量方式內是 figure 或 slider，也一起限制 */
#guide figure,
.info-card figure,
.guide-card figure{
  margin:0 !important;
  max-height:360px !important;
  overflow:hidden !important;
  border-radius:14px !important;
}

/* 結帳資訊：整體更密、更像後台表單而不是長頁 */
#checkout{
  padding-top:42px !important;
  padding-bottom:48px !important;
}

#checkout .checkout-grid,
.checkout-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 360px !important;
  gap:18px !important;
  align-items:start !important;
}

#checkout .checkout-card,
.checkout-card{
  padding:18px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#checkout h2,
#checkout h3,
.checkout-card h3{
  font-size:24px !important;
  line-height:1.25 !important;
  margin-bottom:14px !important;
}

#checkout label,
.checkout-card label{
  font-size: 16px!important;
  margin-bottom:5px !important;
}

#checkout input,
#checkout select,
#checkout textarea,
.checkout-card input,
.checkout-card select,
.checkout-card textarea{
  min-height:38px !important;
  height:38px !important;
  padding:8px 12px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout textarea,
.checkout-card textarea{
  min-height:68px !important;
  height:68px !important;
}

#checkout .form-row,
.checkout-card .form-row{
  gap:12px !important;
  margin-bottom:12px !important;
}

#checkout .field,
.checkout-card .field{
  margin-bottom:12px !important;
}

/* 表單提示文字縮短視覺高度 */
#checkout .notice,
#checkout .hint,
#checkout .help,
#checkout .store-note,
.checkout-card .notice,
.checkout-card .hint,
.checkout-card .help,
.checkout-card .store-note{
  padding:10px 12px !important;
  font-size: 16px!important;
  line-height:1.55 !important;
  border-radius:12px !important;
  margin:10px 0 14px !important;
}

/* 超商門市按鈕縮小 */
#checkout .store-buttons,
#checkout .store-map-buttons,
.checkout-card .store-buttons,
.checkout-card .store-map-buttons{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-bottom:10px !important;
}

#checkout .store-buttons a,
#checkout .store-buttons button,
#checkout .store-map-buttons a,
#checkout .store-map-buttons button,
.checkout-card .store-buttons a,
.checkout-card .store-buttons button{
  height:34px !important;
  padding:0 13px !important;
  font-size: 16px!important;
  border-radius:999px !important;
}

/* 訂單明細右側更精簡 */
#checkout .order-summary,
.checkout-card .order-summary{
  font-size: 16px!important;
}

#checkout .cart-summary,
#checkout .checkout-summary,
.checkout-summary,
.cart-summary{
  gap:10px !important;
}

#checkout .summary-row,
.checkout-card .summary-row{
  padding:8px 0 !important;
  font-size: 16px!important;
}

#checkout .total-row,
.checkout-card .total-row{
  font-size:18px !important;
  padding-top:10px !important;
}

#checkout .btn,
.checkout-card .btn{
  min-height:38px !important;
  height:38px !important;
  padding:0 14px !important;
  font-size: 16px!important;
  border-radius:999px !important;
}

/* 購物須知/過往連線等卡片也一起壓縮 */
#shopping-note .info-card,
#past-popup .info-card,
#past-popup .look-card,
#shopping-note .notice-card,
.notice-card{
  padding:16px !important;
  border-radius:18px !important;
}

#shopping-note p,
#past-popup p,
.notice-card p{
  font-size: 16px!important;
  line-height:1.65 !important;
}

#past-popup img,
#shopping-note img{
  max-height:260px !important;
  object-fit:cover !important;
  cursor:zoom-in !important;
}

/* 手機版：更短但仍可操作 */
@media(max-width:900px){
  section{
    padding-top:34px !important;
    padding-bottom:34px !important;
  }

  #guide .info-grid,
  #guide .guide-grid,
  .guide-grid,
  .info-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  #guide img,
  .info-card img,
  .guide-card img{
    height:300px !important;
  }

  #checkout .checkout-grid,
  .checkout-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  #checkout .checkout-card,
  .checkout-card{
    padding:15px !important;
  }

  #checkout input,
  #checkout select,
  #checkout textarea,
  .checkout-card input,
  .checkout-card select,
  .checkout-card textarea{
    min-height:36px !important;
    height:36px !important;
    font-size: 16px!important;
  }

  #checkout textarea,
  .checkout-card textarea{
    min-height:60px !important;
    height:60px !important;
  }
}

@media(max-width:520px){
  #guide img,
  .info-card img,
  .guide-card img{
    height:250px !important;
  }

  #checkout h2,
  #checkout h3,
  .checkout-card h3{
    font-size:21px !important;
  }

  .section-head h2{
    font-size:28px !important;
  }
}


/* UNIFIED IMAGE CARD + CHECKOUT BALANCE FIX */

/* guide + notice cards consistent */
.guide-grid,
.info-grid,
.notice-grid,
#guide .info-grid,
#shopping-note .notice-grid{
  align-items:stretch !important;
}

.info-card,
.guide-card,
.notice-card,
#guide .info-card,
#shopping-note .notice-card{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  height:100% !important;
  padding:16px !important;
  border-radius:20px !important;
}

/* unified image frame */
.guide-image-frame,
.notice-image-frame,
.info-image-frame{
  width:100% !important;
  height:320px !important;
  overflow:hidden !important;
  border-radius:16px !important;
  background:#f7f4ef !important;
  margin-top:10px !important;
}

#guide img,
#shopping-note img,
.info-card img,
.guide-card img,
.notice-card img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:top center !important;
  display:block !important;
  border-radius:16px !important;
  cursor:zoom-in !important;
}

/* shopping note layout rebalance */
#shopping-note .notice-grid,
.notice-grid{
  display:grid !important;
  grid-template-columns:1.1fr .9fr !important;
  gap:18px !important;
}

#shopping-note .notice-side,
.notice-side{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
}

#shopping-note .mini-note,
.notice-side .mini-note{
  min-height:120px !important;
  padding:16px !important;
  border-radius:18px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
}

#shopping-note .mini-note h4,
.notice-side .mini-note h4{
  font-size:18px !important;
  margin-bottom:10px !important;
  line-height:1.3 !important;
}

#shopping-note .mini-note p,
.notice-side .mini-note p{
  font-size: 16px!important;
  line-height:1.65 !important;
}

/* checkout truly compact */
#checkout .checkout-grid,
.checkout-grid{
  grid-template-columns:1fr 320px !important;
  gap:16px !important;
  align-items:start !important;
}

#checkout .checkout-card,
.checkout-card{
  padding:16px !important;
  border-radius:18px !important;
}

#checkout .checkout-form,
.checkout-form{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px 14px !important;
}

#checkout .checkout-form .full,
.checkout-form .full{
  grid-column:1 / -1 !important;
}

#checkout .field,
.checkout-card .field{
  margin-bottom:0 !important;
}

#checkout textarea,
.checkout-card textarea{
  min-height:56px !important;
  height:56px !important;
}

#checkout .summary-card,
.checkout-summary{
  position:sticky !important;
  top:16px !important;
}

#checkout .summary-row,
.checkout-card .summary-row{
  padding:6px 0 !important;
}

#checkout .btn,
.checkout-card .btn{
  height:36px !important;
  min-height:36px !important;
}

/* image lightbox stronger */
.image-lightbox{
  position:fixed !important;
  inset:0 !important;
  background:rgba(17,24,39,.82) !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  z-index:99999 !important;
  padding:24px !important;
}

.image-lightbox.active{
  display:flex !important;
}

.image-lightbox img{
  max-width:94vw !important;
  max-height:90vh !important;
  object-fit:contain !important;
  border-radius:14px !important;
  background:#fff !important;
}

.image-lightbox-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  width:42px !important;
  height:42px !important;
  border-radius:999px !important;
  border:0 !important;
  background:#fff !important;
  font-size:28px !important;
  cursor:pointer !important;
}

/* mobile */
@media(max-width:900px){

  .guide-image-frame,
  .notice-image-frame,
  .info-image-frame{
    height:240px !important;
  }

  #shopping-note .notice-grid,
  .notice-grid{
    grid-template-columns:1fr !important;
  }

  #shopping-note .notice-side,
  .notice-side{
    grid-template-columns:1fr 1fr !important;
  }

  #checkout .checkout-grid,
  .checkout-grid{
    grid-template-columns:1fr !important;
  }

  #checkout .checkout-form,
  .checkout-form{
    grid-template-columns:1fr !important;
  }

  #checkout .checkout-form .full,
  .checkout-form .full{
    grid-column:auto !important;
  }
}

@media(max-width:520px){

  .guide-image-frame,
  .notice-image-frame,
  .info-image-frame{
    height:200px !important;
  }

  #shopping-note .notice-side,
  .notice-side{
    grid-template-columns:1fr !important;
  }

  #shopping-note .mini-note,
  .notice-side .mini-note{
    min-height:auto !important;
  }
}


/* SMALL IMAGE FRAME WITH FULL IMAGE FIT */
#guide .info-card,
#guide .guide-card,
#shopping-note .notice-card,
.info-card,
.guide-card,
.notice-card{
  padding:16px !important;
  border-radius:18px !important;
}

/* 框框維持小尺寸，不讓圖片撐高卡片 */
#guide img,
#shopping-note img,
.info-card img,
.guide-card img,
.notice-card img{
  width:100% !important;
  height:220px !important;
  max-height:220px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#fbf7f1 !important;
  border-radius:14px !important;
  display:block !important;
  cursor:zoom-in !important;
}

/* 如果圖片外層有 figure / frame，也固定小高度 */
#guide figure,
#shopping-note figure,
.info-card figure,
.guide-card figure,
.notice-card figure,
.guide-image-frame,
.notice-image-frame,
.info-image-frame{
  width:100% !important;
  height:220px !important;
  max-height:220px !important;
  overflow:hidden !important;
  border-radius:14px !important;
  background:#fbf7f1 !important;
  margin:10px 0 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* 避免舊版設定把圖片再次放大 */
#guide figure img,
#shopping-note figure img,
.info-card figure img,
.guide-card figure img,
.notice-card figure img,
.guide-image-frame img,
.notice-image-frame img,
.info-image-frame img{
  width:100% !important;
  height:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
}

/* 購物須知圖片卡也維持圖2那種小框比例 */
#shopping-note .notice-grid,
.notice-grid{
  align-items:start !important;
}

#shopping-note .notice-card:first-child,
.notice-grid .notice-card:first-child{
  min-height:0 !important;
}

/* 手機版再小一點 */
@media(max-width:900px){
  #guide img,
  #shopping-note img,
  .info-card img,
  .guide-card img,
  .notice-card img,
  #guide figure,
  #shopping-note figure,
  .info-card figure,
  .guide-card figure,
  .notice-card figure,
  .guide-image-frame,
  .notice-image-frame,
  .info-image-frame{
    height:190px !important;
    max-height:190px !important;
  }
}

@media(max-width:520px){
  #guide img,
  #shopping-note img,
  .info-card img,
  .guide-card img,
  .notice-card img,
  #guide figure,
  #shopping-note figure,
  .info-card figure,
  .guide-card figure,
  .notice-card figure,
  .guide-image-frame,
  .notice-image-frame,
  .info-image-frame{
    height:165px !important;
    max-height:165px !important;
  }
}


/* NOTICE IMAGE FILL FRAME */
#shopping-note img,
.notice-card img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
}

#shopping-note .notice-card:first-child figure,
#shopping-note .notice-card:first-child .notice-image-frame,
.notice-card:first-child figure,
.notice-card:first-child .notice-image-frame{
  height:260px !important;
  max-height:260px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  background:#fbf7f1 !important;
}

#shopping-note .notice-card:first-child img,
.notice-card:first-child img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
}


/* GUIDE NOTICE CHECKOUT FINAL REBALANCE */

/* 1) 測量方式 / 實拍模特尺寸：橫向資訊卡 */
#guide .container{
  max-width:1040px !important;
}

#guide .guide-grid,
#guide .info-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:14px !important;
}

#guide .info-card,
#guide .guide-card{
  display:grid !important;
  grid-template-columns:260px minmax(0,1fr) !important;
  grid-template-areas:
    "title title"
    "text text"
    "image content" !important;
  column-gap:22px !important;
  row-gap:10px !important;
  align-items:start !important;
  padding:18px 20px !important;
  border-radius:24px !important;
  min-height:0 !important;
  height:auto !important;
  box-shadow:none !important;
}

#guide .info-card h3,
#guide .guide-card h3,
#guide .info-card h2,
#guide .guide-card h2{
  grid-area:title !important;
  margin:0 !important;
  font-size:28px !important;
  line-height:1.22 !important;
}

#guide .info-card > p,
#guide .guide-card > p{
  grid-area:text !important;
  margin:0 0 6px !important;
  font-size: 16px!important;
  line-height:1.65 !important;
}

/* 直式圖固定放左邊、小尺寸完整顯示 */
#guide .info-card img,
#guide .guide-card img{
  grid-area:image !important;
  width:100% !important;
  height:245px !important;
  max-height:245px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#fbf7f1 !important;
  border-radius:14px !important;
  cursor:zoom-in !important;
}

/* 圖片後面的內容自動落右邊 */
#guide .info-card table,
#guide .guide-card table,
#guide .info-card ul,
#guide .guide-card ul,
#guide .info-card .size-table,
#guide .guide-card .size-table,
#guide .info-card .tips,
#guide .guide-card .tips,
#guide .info-card .note-list,
#guide .guide-card .note-list,
#guide .info-card .model-tips,
#guide .guide-card .model-tips,
#guide .info-card .info-list,
#guide .guide-card .info-list{
  grid-area:content !important;
  align-self:start !important;
}

#guide table{
  width:100% !important;
  font-size: 16px!important;
  border-collapse:collapse !important;
}

#guide th,
#guide td{
  padding:9px 10px !important;
}

#guide .info-card li,
#guide .guide-card li{
  font-size: 16px!important;
  line-height:1.55 !important;
}

/* 右側若是多個提示卡，縮小一點 */
#guide .info-card .mini-note,
#guide .guide-card .mini-note,
#guide .info-card article,
#guide .guide-card article{
  padding:12px 14px !important;
  border-radius:14px !important;
  min-height:0 !important;
}

/* 2) 購物須知：維持左圖右卡，但比例更齊 */
#shopping-note .container{
  max-width:1040px !important;
}

#shopping-note .notice-grid{
  display:grid !important;
  grid-template-columns: .9fr 1.1fr !important;
  gap:18px !important;
  align-items:start !important;
}

#shopping-note .notice-card{
  padding:16px !important;
  border-radius:20px !important;
  min-height:0 !important;
  box-shadow:none !important;
}

#shopping-note .notice-card:first-child{
  height:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

#shopping-note .notice-card:first-child img{
  width:100% !important;
  height:260px !important;
  max-height:260px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#fbf7f1 !important;
  border-radius:14px !important;
  cursor:zoom-in !important;
}

#shopping-note .notice-side{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}

#shopping-note .mini-note,
#shopping-note .notice-side > *{
  min-height:112px !important;
  padding:15px 16px !important;
  border-radius:18px !important;
}

#shopping-note .mini-note h4,
#shopping-note .notice-side h3,
#shopping-note .notice-side h4{
  font-size:18px !important;
  line-height:1.3 !important;
  margin-bottom:8px !important;
}

#shopping-note .mini-note p,
#shopping-note .notice-side p{
  font-size: 16px!important;
  line-height:1.6 !important;
}

/* 3) 結帳：右側變成提醒 + 訂單明細，不再比例怪 */
#checkout .container{
  max-width:1040px !important;
}

#checkout .checkout-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 360px !important;
  gap:18px !important;
  align-items:start !important;
}

/* 下單小提醒移到右側視覺：CSS 讓它像右欄第一張卡 */
#checkout .checkout-reminder,
#checkout .order-reminder,
#checkout .notice-box,
#checkout .checkout-note,
#checkout .reminder-card{
  max-width:none !important;
  width:100% !important;
  margin:0 0 14px !important;
  padding:16px !important;
  border-radius:18px !important;
  font-size: 16px!important;
  line-height:1.65 !important;
}

/* 若小提醒目前是在 checkout-grid 前面，避免佔一整排太大 */
#checkout > .container > .checkout-reminder,
#checkout > .container > .order-reminder,
#checkout > .container > .notice-box,
#checkout > .container > .checkout-note,
#checkout > .container > .reminder-card{
  max-width:1040px !important;
}

/* 表單卡片壓縮 */
#checkout .checkout-card{
  padding:17px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#checkout .checkout-card h3{
  font-size:22px !important;
  margin-bottom:14px !important;
}

#checkout .checkout-form,
#checkout form{
  gap:10px 12px !important;
}

#checkout label{
  font-size: 16px!important;
  margin-bottom:5px !important;
}

#checkout input,
#checkout select,
#checkout textarea{
  height:36px !important;
  min-height:36px !important;
  padding:8px 11px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout textarea{
  height:58px !important;
  min-height:58px !important;
}

#checkout .field{
  margin-bottom:10px !important;
}

#checkout .hint,
#checkout .help,
#checkout .store-note{
  padding:10px 12px !important;
  font-size: 16px!important;
  line-height:1.5 !important;
  border-radius:12px !important;
  margin:10px 0 12px !important;
}

/* 訂單明細右欄 */
#checkout .summary-card,
#checkout .order-summary,
#checkout .checkout-summary,
#checkout .cart-summary{
  font-size: 16px!important;
}

#checkout .summary-row{
  padding:7px 0 !important;
}

#checkout .total-row{
  font-size:18px !important;
  padding-top:10px !important;
}

#checkout .btn{
  height:36px !important;
  min-height:36px !important;
  padding:0 14px !important;
  font-size: 16px!important;
  border-radius:999px !important;
}

/* 圖片放大功能 */
.image-lightbox{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(17,24,39,.82) !important;
  padding:24px !important;
}

.image-lightbox.active{
  display:flex !important;
}

.image-lightbox img{
  max-width:94vw !important;
  max-height:90vh !important;
  object-fit:contain !important;
  border-radius:14px !important;
  background:#fff !important;
}

.image-lightbox-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  width:42px !important;
  height:42px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#fff !important;
  font-size:28px !important;
  cursor:pointer !important;
}

/* RWD */
@media(max-width:900px){
  #guide .info-card,
  #guide .guide-card{
    grid-template-columns:150px minmax(0,1fr) !important;
    column-gap:14px !important;
    padding:15px !important;
  }

  #guide .info-card img,
  #guide .guide-card img{
    height:210px !important;
    max-height:210px !important;
  }

  #shopping-note .notice-grid,
  #checkout .checkout-grid{
    grid-template-columns:1fr !important;
  }

  #shopping-note .notice-card:first-child img{
    height:210px !important;
    max-height:210px !important;
  }
}

@media(max-width:560px){
  #guide .info-card,
  #guide .guide-card{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "title"
      "text"
      "image"
      "content" !important;
  }

  #guide .info-card img,
  #guide .guide-card img{
    height:190px !important;
    max-height:190px !important;
  }

  #shopping-note .notice-side{
    grid-template-columns:1fr !important;
  }

  #shopping-note .notice-card:first-child img{
    height:190px !important;
    max-height:190px !important;
  }
}


/* RECHECKED GUIDE / NOTICE / CHECKOUT STRUCTURE */

/* guide deterministic compact rows */
.guide-compact-stack{
  max-width:1040px !important;
  display:grid !important;
  gap:14px !important;
}

.guide-row-card{
  border:1px solid #d6dbe3 !important;
  border-radius:24px !important;
  padding:18px 20px !important;
  background:#fff !important;
  box-shadow:none !important;
}

.guide-row-head{
  margin-bottom:14px !important;
}

.guide-row-head h2{
  margin:0 0 8px !important;
  font-size:28px !important;
  line-height:1.2 !important;
}

.guide-row-head p{
  margin:0 !important;
  font-size: 16px!important;
  line-height:1.65 !important;
}

.inline-reminder{
  display:inline-block !important;
  margin-left:12px !important;
  padding:5px 12px !important;
  border-radius:999px !important;
  background:#edf4df !important;
  font-size: 16px!important;
  font-weight:900 !important;
  vertical-align:middle !important;
}

.guide-row-body{
  display:grid !important;
  grid-template-columns:260px minmax(0,1fr) !important;
  gap:22px !important;
  align-items:start !important;
}

.guide-thumb{
  width:260px !important;
  height:220px !important;
  border-radius:16px !important;
  background:#fbf7f1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}

.guide-thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  cursor:zoom-in !important;
}

.guide-main-content{
  min-width:0 !important;
}

.guide-main-content table{
  width:100% !important;
  border-collapse:collapse !important;
  font-size: 16px!important;
}

.guide-main-content th{
  background:#e8efd9 !important;
  padding:10px 12px !important;
  text-align:left !important;
}

.guide-main-content td{
  padding:10px 12px !important;
  border-bottom:1px solid #eadfce !important;
}

.guide-tips-grid{
  display:grid !important;
  gap:12px !important;
}

.guide-tips-grid .step{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  padding:13px 16px !important;
  border:1px solid #eadfce !important;
  border-radius:16px !important;
  background:#fff !important;
}

.guide-tips-grid .step-num{
  width:34px !important;
  height:34px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#cbd9b6 !important;
  font-weight:900 !important;
  flex:0 0 auto !important;
}

/* shopping note: keep left image/right cards, make image fit its large frame */
#shopping-note .shopping-magazine-layout{
  display:grid !important;
  grid-template-columns:.9fr 1.1fr !important;
  gap:18px !important;
  align-items:stretch !important;
}

#shopping-note .shopping-main-image{
  height:100% !important;
  min-height:360px !important;
  padding:16px !important;
  border:1px solid #eadfce !important;
  border-radius:20px !important;
  background:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}

#shopping-note .shopping-main-image img{
  width:100% !important;
  height:100% !important;
  max-height:330px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#fbf7f1 !important;
  border-radius:14px !important;
  cursor:zoom-in !important;
}

#shopping-note .shopping-cards{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}

#shopping-note .note-card{
  padding:16px !important;
  min-height:112px !important;
  border-radius:18px !important;
}

#shopping-note .note-card h3{
  font-size:18px !important;
  margin:0 0 8px !important;
}

#shopping-note .note-card p{
  font-size: 16px!important;
  line-height:1.6 !important;
}

/* checkout: note belongs to right side, balanced two-column */
#checkout .checkout-head{
  margin-bottom:16px !important;
}

#checkout .checkout-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 380px !important;
  gap:18px !important;
  align-items:start !important;
}

#checkout .checkout-side-card{
  display:block !important;
  position:sticky !important;
  top:18px !important;
}

#checkout .checkout-side-note{
  margin:0 0 14px !important;
  padding:14px 15px !important;
  border-radius:16px !important;
  background:#f2f8e8 !important;
  border:1px solid #dbe8c9 !important;
}

#checkout .checkout-side-note h3{
  font-size:18px !important;
  margin:0 0 8px !important;
}

#checkout .checkout-side-note p{
  font-size: 16px!important;
  line-height:1.6 !important;
  margin:0 0 6px !important;
}

#checkout .checkout-card{
  padding:17px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#checkout .form-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px 14px !important;
}

#checkout .form-group{
  margin:0 !important;
}

#checkout .form-group.full{
  grid-column:1 / -1 !important;
}

#checkout input,
#checkout select{
  height:36px !important;
  min-height:36px !important;
  padding:8px 11px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout textarea{
  height:58px !important;
  min-height:58px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout label{
  font-size: 16px!important;
  margin-bottom:5px !important;
}

#checkout .notice{
  padding:10px 12px !important;
  font-size: 16px!important;
  line-height:1.5 !important;
  border-radius:12px !important;
}

#checkout .btn{
  height:36px !important;
  min-height:36px !important;
  padding:0 14px !important;
  font-size: 16px!important;
  border-radius:999px !important;
}

#checkout .summary-list{
  max-height:180px !important;
  overflow:auto !important;
}

#checkout .total-row{
  padding:7px 0 !important;
  font-size: 16px!important;
}

#checkout .total-row.final{
  font-size:17px !important;
}

/* make image zoom reliable */
.image-lightbox{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(17,24,39,.82) !important;
  padding:24px !important;
}

.image-lightbox.active{
  display:flex !important;
}

.image-lightbox img{
  max-width:94vw !important;
  max-height:90vh !important;
  object-fit:contain !important;
  border-radius:14px !important;
  background:#fff !important;
}

.image-lightbox-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  width:42px !important;
  height:42px !important;
  border-radius:999px !important;
  border:0 !important;
  background:#fff !important;
  font-size:28px !important;
}

/* responsive */
@media(max-width:900px){
  .guide-row-body{
    grid-template-columns:180px minmax(0,1fr) !important;
    gap:14px !important;
  }

  .guide-thumb{
    width:180px !important;
    height:200px !important;
  }

  #shopping-note .shopping-magazine-layout,
  #checkout .checkout-grid{
    grid-template-columns:1fr !important;
  }

  #checkout .checkout-side-card{
    position:static !important;
  }
}

@media(max-width:560px){
  .guide-row-body{
    grid-template-columns:1fr !important;
  }

  .guide-thumb{
    width:100% !important;
    height:190px !important;
  }

  #shopping-note .shopping-cards{
    grid-template-columns:1fr !important;
  }

  #checkout .form-grid{
    grid-template-columns:1fr !important;
  }

  #shopping-note .shopping-main-image{
    min-height:260px !important;
  }

  #shopping-note .shopping-main-image img{
    max-height:240px !important;
  }
}


/* FINAL BALANCE: GUIDE HEIGHT, NO IMAGE INNER FRAME, CHECKOUT 50/50 */

/* Guide cards: same height, image without inner frame */
.guide-compact-stack{
  max-width:1040px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:16px !important;
}

.guide-row-card{
  height:330px !important;
  min-height:330px !important;
  max-height:330px !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-rows:auto 1fr !important;
  border:1px solid #d6dbe3 !important;
  border-radius:24px !important;
  padding:18px 20px !important;
  background:#fff !important;
  box-shadow:none !important;
}

.guide-row-head{
  margin-bottom:12px !important;
}

.guide-row-head h2{
  margin:0 0 8px !important;
  font-size:27px !important;
  line-height:1.2 !important;
}

.guide-row-head p{
  margin:0 !important;
  font-size: 16px!important;
  line-height:1.55 !important;
}

.inline-reminder{
  display:inline-block !important;
  margin-left:12px !important;
  padding:5px 12px !important;
  border-radius:999px !important;
  background:#edf4df !important;
  font-size: 16px!important;
  font-weight:900 !important;
  vertical-align:middle !important;
}

.guide-row-body{
  display:grid !important;
  grid-template-columns:260px minmax(0,1fr) !important;
  gap:22px !important;
  align-items:start !important;
  min-height:0 !important;
}

.guide-thumb{
  width:260px !important;
  height:210px !important;
  border-radius:0 !important;
  background:transparent !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
}

.guide-thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:0 !important;
  background:transparent !important;
  cursor:zoom-in !important;
}

.guide-main-content{
  min-width:0 !important;
}

.guide-main-content table{
  width:100% !important;
  border-collapse:collapse !important;
  font-size: 16px!important;
}

.guide-main-content th{
  background:#e8efd9 !important;
  padding:9px 12px !important;
  text-align:left !important;
}

.guide-main-content td{
  padding:9px 12px !important;
  border-bottom:1px solid #eadfce !important;
}

.guide-tips-grid{
  display:grid !important;
  gap:10px !important;
}

.guide-tips-grid .step{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  padding:11px 14px !important;
  border:1px solid #eadfce !important;
  border-radius:16px !important;
  background:#fff !important;
}

.guide-tips-grid .step-num{
  width:32px !important;
  height:32px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#cbd9b6 !important;
  font-weight:900 !important;
  flex:0 0 auto !important;
}

/* Shopping note image: no inner frame, fill left card visually */
#shopping-note .shopping-magazine-layout{
  display:grid !important;
  grid-template-columns:.9fr 1.1fr !important;
  gap:18px !important;
  align-items:stretch !important;
}

#shopping-note .shopping-main-image{
  min-height:340px !important;
  padding:0 !important;
  border:1px solid #eadfce !important;
  border-radius:20px !important;
  background:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}

#shopping-note .shopping-main-image img{
  width:100% !important;
  height:100% !important;
  max-height:340px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
  border-radius:0 !important;
  cursor:zoom-in !important;
}

#shopping-note .shopping-cards{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}

#shopping-note .note-card{
  min-height:104px !important;
  padding:15px 16px !important;
  border-radius:18px !important;
}

/* Checkout: exact 50/50 columns; note only in right column */
#checkout .checkout-head{
  margin-bottom:16px !important;
}

#checkout .checkout-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  align-items:start !important;
}

#checkout .checkout-side-card{
  display:block !important;
  position:sticky !important;
  top:18px !important;
}

#checkout .checkout-side-note{
  margin:0 0 14px !important;
  padding:14px 15px !important;
  border-radius:16px !important;
  background:#f2f8e8 !important;
  border:1px solid #dbe8c9 !important;
}

#checkout .checkout-side-note h3{
  font-size:18px !important;
  margin:0 0 8px !important;
}

#checkout .checkout-side-note p{
  font-size: 16px!important;
  line-height:1.6 !important;
  margin:0 0 6px !important;
}

#checkout .checkout-card{
  padding:17px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#checkout .form-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px 14px !important;
}

#checkout .form-group.full{
  grid-column:1 / -1 !important;
}

#checkout .form-group{
  margin:0 !important;
}

#checkout input,
#checkout select{
  height:36px !important;
  min-height:36px !important;
  padding:8px 11px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout textarea{
  height:58px !important;
  min-height:58px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout label{
  font-size: 16px!important;
  margin-bottom:5px !important;
}

#checkout .notice{
  padding:10px 12px !important;
  font-size: 16px!important;
  line-height:1.5 !important;
  border-radius:12px !important;
}

#checkout .btn{
  height:36px !important;
  min-height:36px !important;
  padding:0 14px !important;
  font-size: 16px!important;
  border-radius:999px !important;
}

#checkout .summary-list{
  max-height:170px !important;
  overflow:auto !important;
}

#checkout .total-row{
  padding:7px 0 !important;
  font-size: 16px!important;
}

#checkout .total-row.final{
  font-size:17px !important;
}

/* responsive */
@media(max-width:900px){
  .guide-row-card{
    height:auto !important;
    max-height:none !important;
  }
  .guide-row-body{
    grid-template-columns:180px minmax(0,1fr) !important;
    gap:14px !important;
  }
  .guide-thumb{
    width:180px !important;
    height:190px !important;
  }
  #shopping-note .shopping-magazine-layout,
  #checkout .checkout-grid{
    grid-template-columns:1fr !important;
  }
  #checkout .checkout-side-card{
    position:static !important;
  }
}

@media(max-width:560px){
  .guide-row-body{
    grid-template-columns:1fr !important;
  }
  .guide-thumb{
    width:100% !important;
    height:180px !important;
  }
  #shopping-note .shopping-cards{
    grid-template-columns:1fr !important;
  }
  #checkout .form-grid{
    grid-template-columns:1fr !important;
  }
}


/* FINAL FULL WEBSITE FIX */

/* Guide: same-height cards, no image frame, no text overflow */
.guide-final-stack{
  max-width:1040px !important;
  display:grid !important;
  gap:16px !important;
}

.guide-final-card{
  min-height:330px !important;
  display:grid !important;
  grid-template-rows:auto 1fr !important;
  padding:20px 22px !important;
  border:1px solid #d8d8d8 !important;
  border-radius:24px !important;
  background:#ffffff !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.guide-final-head{
  margin-bottom:14px !important;
}

.guide-final-head h2{
  margin:0 0 8px !important;
  font-size:26px !important;
  line-height:1.25 !important;
  color:#111827 !important;
}

.guide-final-head p{
  margin:0 !important;
  font-size: 16px!important;
  line-height:1.6 !important;
  color:#6b625b !important;
}

.guide-inline-note{
  display:inline-block !important;
  margin-left:10px !important;
  padding:4px 11px !important;
  border-radius:999px !important;
  background:#eef4df !important;
  color:#5b6848 !important;
  font-size: 16px!important;
  font-weight:800 !important;
  vertical-align:middle !important;
}

.guide-final-body{
  display:grid !important;
  grid-template-columns:250px minmax(0,1fr) !important;
  gap:22px !important;
  align-items:start !important;
}

.guide-final-img{
  width:250px !important;
  height:210px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.guide-final-img img{
  max-width:100% !important;
  max-height:100% !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  cursor:zoom-in !important;
}

.guide-final-content{
  min-width:0 !important;
  align-self:start !important;
}

.guide-final-content table{
  width:100% !important;
  border-collapse:collapse !important;
  font-size: 16px!important;
}

.guide-final-content th{
  background:#e8efd9 !important;
  padding:9px 10px !important;
  text-align:left !important;
}

.guide-final-content td{
  padding:9px 10px !important;
  border-bottom:1px solid #eadfce !important;
}

.guide-final-steps{
  display:grid !important;
  gap:10px !important;
}

.guide-final-steps .step{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  padding:11px 14px !important;
  border:1px solid #eadfce !important;
  border-radius:16px !important;
  background:#fff !important;
  font-size: 16px!important;
  line-height:1.55 !important;
}

.guide-final-steps .step-num{
  width:32px !important;
  height:32px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#cbd9b6 !important;
  font-weight:900 !important;
  flex:0 0 auto !important;
}

/* Shopping note: left image/right info, no extra image frame */
#shopping-note .shopping-magazine-layout{
  display:grid !important;
  grid-template-columns:.9fr 1.1fr !important;
  gap:18px !important;
  align-items:stretch !important;
}

#shopping-note .shopping-main-image{
  min-height:330px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
}

#shopping-note .shopping-main-image img{
  max-width:100% !important;
  max-height:330px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  cursor:zoom-in !important;
}

#shopping-note .shopping-cards{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}

#shopping-note .note-card{
  min-height:104px !important;
  padding:15px 16px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#shopping-note .note-card h3{
  font-size:18px !important;
  margin:0 0 8px !important;
  line-height:1.3 !important;
}

#shopping-note .note-card p{
  font-size: 16px!important;
  line-height:1.6 !important;
  margin:0 !important;
}

/* Checkout: 50/50 layout, note only on right above summary */
#checkout .checkout-head{
  margin-bottom:16px !important;
}

#checkout .checkout-head .checkout-process-note{
  display:none !important;
}

#checkout .checkout-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  align-items:start !important;
}

#checkout .checkout-card{
  padding:17px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#checkout .checkout-side-card{
  position:sticky !important;
  top:18px !important;
}

#checkout .checkout-side-note{
  display:block !important;
  margin:0 0 14px !important;
  padding:14px 15px !important;
  border-radius:16px !important;
  background:#f2f8e8 !important;
  border:1px solid #dbe8c9 !important;
}

#checkout .checkout-side-note h3{
  font-size:18px !important;
  margin:0 0 8px !important;
  line-height:1.35 !important;
}

#checkout .checkout-side-note p{
  font-size: 16px!important;
  line-height:1.6 !important;
  margin:0 0 6px !important;
}

#checkout .form-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px 14px !important;
}

#checkout .form-group{
  margin:0 !important;
}

#checkout .form-group.full{
  grid-column:1 / -1 !important;
}

#checkout label{
  font-size: 16px!important;
  margin-bottom:5px !important;
}

#checkout input,
#checkout select{
  height:36px !important;
  min-height:36px !important;
  padding:8px 11px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout textarea{
  height:58px !important;
  min-height:58px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout .notice{
  padding:10px 12px !important;
  font-size: 16px!important;
  line-height:1.5 !important;
  border-radius:12px !important;
}

#checkout .btn{
  height:36px !important;
  min-height:36px !important;
  padding:0 14px !important;
  font-size: 16px!important;
  border-radius:999px !important;
}

#checkout .summary-list{
  max-height:170px !important;
  overflow:auto !important;
}

#checkout .total-row{
  padding:7px 0 !important;
  font-size: 16px!important;
}

#checkout .total-row.final{
  font-size:17px !important;
}

/* Lightbox */
.image-lightbox{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(17,24,39,.82) !important;
  padding:24px !important;
}

.image-lightbox.active{
  display:flex !important;
}

.image-lightbox img{
  max-width:94vw !important;
  max-height:90vh !important;
  object-fit:contain !important;
  border-radius:14px !important;
  background:#fff !important;
}

.image-lightbox-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  width:42px !important;
  height:42px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#fff !important;
  font-size:28px !important;
  cursor:pointer !important;
}

/* Responsive */
@media(max-width:900px){
  .guide-final-body{
    grid-template-columns:180px minmax(0,1fr) !important;
    gap:14px !important;
  }

  .guide-final-img{
    width:180px !important;
    height:190px !important;
  }

  #shopping-note .shopping-magazine-layout,
  #checkout .checkout-grid{
    grid-template-columns:1fr !important;
  }

  #checkout .checkout-side-card{
    position:static !important;
  }
}

@media(max-width:560px){
  .guide-final-body{
    grid-template-columns:1fr !important;
  }

  .guide-final-img{
    width:100% !important;
    height:180px !important;
  }

  #shopping-note .shopping-cards,
  #checkout .form-grid{
    grid-template-columns:1fr !important;
  }

  #shopping-note .shopping-main-image{
    min-height:220px !important;
  }

  #shopping-note .shopping-main-image img{
    max-height:220px !important;
  }
}


/* TRUE FINAL VISUAL FIX */

/* keep original font feeling, prevent text clipping */
.guide-final-section,
#shopping-note,
#checkout{
  font-family: var(--font-zh) !important;
}

.guide-final-stack{
  max-width:1040px !important;
  display:grid !important;
  gap:16px !important;
}

.guide-final-card{
  display:grid !important;
  grid-template-rows:auto 1fr !important;
  min-height:315px !important;
  height:auto !important;
  overflow:visible !important;
  padding:20px 22px !important;
  border:1px solid #d8d8d8 !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:none !important;
}

.guide-final-head{
  margin-bottom:14px !important;
}

.guide-final-head h2{
  margin:0 0 8px !important;
  font-size:26px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  color:#111827 !important;
}

.guide-final-head p{
  margin:0 !important;
  font-size: 16px!important;
  line-height:1.6 !important;
  color:#6b625b !important;
}

.guide-inline-note{
  display:inline-block !important;
  margin-left:10px !important;
  padding:4px 11px !important;
  border-radius:999px !important;
  background:#eef4df !important;
  color:#5b6848 !important;
  font-size: 16px!important;
  font-weight:800 !important;
  vertical-align:middle !important;
}

.guide-final-body{
  display:grid !important;
  grid-template-columns:245px minmax(0,1fr) !important;
  gap:22px !important;
  align-items:start !important;
  min-height:0 !important;
}

.guide-final-img,
.no-image-frame{
  width:245px !important;
  height:210px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:0 !important;
}

.guide-final-img img,
.no-image-frame img{
  max-width:100% !important;
  max-height:100% !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
  border:0 !important;
  outline:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  cursor:zoom-in !important;
}

.guide-final-content{
  min-width:0 !important;
}

.guide-size-table{
  width:100% !important;
  border-collapse:collapse !important;
  font-size: 16px!important;
}

.guide-size-table th{
  background:#e8efd9 !important;
  padding:9px 10px !important;
  text-align:left !important;
}

.guide-size-table td{
  padding:9px 10px !important;
  border-bottom:1px solid #eadfce !important;
}

.guide-final-steps{
  display:grid !important;
  gap:10px !important;
}

.guide-final-steps .step{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  padding:11px 14px !important;
  border:1px solid #eadfce !important;
  border-radius:16px !important;
  background:#fff !important;
  font-size: 16px!important;
  line-height:1.55 !important;
}

.guide-final-steps .step-num{
  width:32px !important;
  height:32px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#cbd9b6 !important;
  font-weight:900 !important;
  flex:0 0 auto !important;
}

/* shopping note: left image no frame, right cards */
#shopping-note .shopping-magazine-layout{
  display:grid !important;
  grid-template-columns:.9fr 1.1fr !important;
  gap:18px !important;
  align-items:stretch !important;
}

#shopping-note .shopping-main-image{
  min-height:320px !important;
  padding:0 !important;
  border:0 !important;
  outline:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
}

#shopping-note .shopping-main-image img{
  max-width:100% !important;
  max-height:320px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
  border:0 !important;
  outline:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  cursor:zoom-in !important;
}

#shopping-note .shopping-cards{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}

#shopping-note .note-card{
  min-height:104px !important;
  padding:15px 16px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#shopping-note .note-card h3{
  font-size:18px !important;
  margin:0 0 8px !important;
  line-height:1.3 !important;
}

#shopping-note .note-card p{
  font-size: 16px!important;
  line-height:1.6 !important;
  margin:0 !important;
}

/* checkout 50/50 with note on right */
#checkout .checkout-head{
  margin-bottom:16px !important;
}

#checkout .checkout-head .checkout-process-note{
  display:none !important;
}

#checkout .checkout-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  align-items:start !important;
}

#checkout .checkout-card{
  padding:17px !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

#checkout .checkout-side-card{
  position:sticky !important;
  top:18px !important;
}

#checkout .checkout-side-note{
  display:block !important;
  margin:0 0 14px !important;
  padding:14px 15px !important;
  border-radius:16px !important;
  background:#f2f8e8 !important;
  border:1px solid #dbe8c9 !important;
}

#checkout .checkout-side-note h3{
  font-size:18px !important;
  margin:0 0 8px !important;
  line-height:1.35 !important;
}

#checkout .checkout-side-note p{
  font-size: 16px!important;
  line-height:1.6 !important;
  margin:0 0 6px !important;
}

#checkout .form-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px 14px !important;
}

#checkout .form-group{
  margin:0 !important;
}

#checkout .form-group.full{
  grid-column:1 / -1 !important;
}

#checkout label{
  font-size: 16px!important;
  margin-bottom:5px !important;
}

#checkout input,
#checkout select{
  height:36px !important;
  min-height:36px !important;
  padding:8px 11px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout textarea{
  height:58px !important;
  min-height:58px !important;
  font-size: 16px!important;
  border-radius:12px !important;
}

#checkout .notice{
  padding:10px 12px !important;
  font-size: 16px!important;
  line-height:1.5 !important;
  border-radius:12px !important;
}

#checkout .btn{
  height:36px !important;
  min-height:36px !important;
  padding:0 14px !important;
  font-size: 16px!important;
  border-radius:999px !important;
}

#checkout .summary-list{
  max-height:170px !important;
  overflow:auto !important;
}

#checkout .total-row{
  padding:7px 0 !important;
  font-size: 16px!important;
}

#checkout .total-row.final{
  font-size:17px !important;
}

/* reliable lightbox */
.image-lightbox{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(17,24,39,.82) !important;
  padding:24px !important;
}

.image-lightbox.active{
  display:flex !important;
}

.image-lightbox img{
  max-width:94vw !important;
  max-height:90vh !important;
  object-fit:contain !important;
  border-radius:14px !important;
  background:#fff !important;
}

.image-lightbox-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  width:42px !important;
  height:42px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#fff !important;
  font-size:28px !important;
  cursor:pointer !important;
}

@media(max-width:900px){
  .guide-final-body{
    grid-template-columns:180px minmax(0,1fr) !important;
    gap:14px !important;
  }

  .guide-final-img{
    width:180px !important;
    height:190px !important;
  }

  #shopping-note .shopping-magazine-layout,
  #checkout .checkout-grid{
    grid-template-columns:1fr !important;
  }

  #checkout .checkout-side-card{
    position:static !important;
  }
}

@media(max-width:560px){
  .guide-final-body{
    grid-template-columns:1fr !important;
  }

  .guide-final-img{
    width:100% !important;
    height:180px !important;
  }

  #shopping-note .shopping-cards,
  #checkout .form-grid{
    grid-template-columns:1fr !important;
  }

  #shopping-note .shopping-main-image{
    min-height:220px !important;
  }

  #shopping-note .shopping-main-image img{
    max-height:220px !important;
  }
}


/* REMOVE GUIDE OUTER CARD FRAME */
.guide-final-stack{
  max-width:1040px !important;
  display:grid !important;
  gap:34px !important;
}

.guide-final-card{
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  min-height:0 !important;
  height:auto !important;
  overflow:visible !important;
}

.guide-final-head{
  margin-bottom:18px !important;
}

.guide-final-head h2{
  margin:0 0 8px !important;
}

.guide-final-body{
  display:grid !important;
  grid-template-columns:245px minmax(0,1fr) !important;
  gap:28px !important;
  align-items:start !important;
}

.guide-final-img,
.no-image-frame{
  width:245px !important;
  height:210px !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  overflow:visible !important;
}

.guide-final-img img,
.no-image-frame img{
  max-width:100% !important;
  max-height:100% !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

@media(max-width:900px){
  .guide-final-body{
    grid-template-columns:180px minmax(0,1fr) !important;
    gap:16px !important;
  }

  .guide-final-img,
  .no-image-frame{
    width:180px !important;
    height:190px !important;
  }
}

@media(max-width:560px){
  .guide-final-body{
    grid-template-columns:1fr !important;
  }

  .guide-final-img,
  .no-image-frame{
    width:100% !important;
    height:180px !important;
  }
}


/* REMOVE GUIDE IMAGE INNER FRAMES COMPLETELY */
#guide .guide-final-img,
#guide .no-image-frame,
#guide .guide-final-img::before,
#guide .guide-final-img::after,
#guide .no-image-frame::before,
#guide .no-image-frame::after{
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;
  margin:0 !important;
}

#guide .guide-final-img{
  display:block !important;
  width:245px !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
}

#guide .guide-final-img img,
#guide .no-image-frame img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:245px !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 auto !important;
  cursor:zoom-in !important;
}

@media(max-width:900px){
  #guide .guide-final-img{
    width:180px !important;
  }

  #guide .guide-final-img img,
  #guide .no-image-frame img{
    max-width:180px !important;
  }
}

@media(max-width:560px){
  #guide .guide-final-img{
    width:100% !important;
  }

  #guide .guide-final-img img,
  #guide .no-image-frame img{
    max-width:220px !important;
  }
}


/* UNIFIED GUIDE / NOTE IMAGE HEIGHT */
#guide .guide-final-img,
#shopping-note .shopping-note-image,
#shopping-note .note-image-wrap{
  height:440px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}

#guide .guide-final-img img,
#shopping-note .shopping-note-image img,
#shopping-note .note-image-wrap img{
  width:auto !important;
  height:100% !important;
  max-height:440px !important;
  object-fit:contain !important;
  object-position:center !important;
}

@media(max-width:900px){
  #guide .guide-final-img,
  #shopping-note .shopping-note-image,
  #shopping-note .note-image-wrap{
    height:340px !important;
  }

  #guide .guide-final-img img,
  #shopping-note .shopping-note-image img,
  #shopping-note .note-image-wrap img{
    max-height:340px !important;
  }
}

@media(max-width:560px){
  #guide .guide-final-img,
  #shopping-note .shopping-note-image,
  #shopping-note .note-image-wrap{
    height:280px !important;
  }

  #guide .guide-final-img img,
  #shopping-note .shopping-note-image img,
  #shopping-note .note-image-wrap img{
    max-height:280px !important;
  }
}


/* GLOBAL SECTION ALIGNMENT */
:root{
  --furnest-page-width: 1180px;
  --furnest-page-pad: 24px;
}

/* 統一每一頁/每一區塊左右邊界 */
.container,
.hero .container,
.shoppable-hero .container,
.products-wrap .container,
#products .container,
#lookbook .container,
#past-popup .container,
#guide .container,
#shopping-note .container,
#checkout .container,
footer .container{
  width: min(var(--furnest-page-width), calc(100% - (var(--furnest-page-pad) * 2))) !important;
  max-width: var(--furnest-page-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 避免先前各區塊自訂 max-width 造成不齊 */
.guide-final-stack,
#shopping-note .container,
#checkout .container,
#guide .container,
#past-popup .container{
  max-width: var(--furnest-page-width) !important;
}

/* 過往連線內卡、測量方式、購物須知、結帳都吃滿同一容器 */
#past-popup .past-card,
#past-popup .popup-card,
#past-popup .info-card,
.guide-final-stack,
#shopping-note .shopping-magazine-layout,
#checkout .checkout-grid{
  width: 100% !important;
}

/* 讓測量方式卡片與其他大區塊同一寬度 */
.guide-final-card{
  width: 100% !important;
  box-sizing: border-box !important;
}

/* 商品區也對齊同一條線 */
.shop-layout,
.product-grid,
#productGrid{
  box-sizing: border-box !important;
}

/* 手機和平板左右留白一致 */
@media(max-width:900px){
  :root{
    --furnest-page-pad: 20px;
  }
}

@media(max-width:520px){
  :root{
    --furnest-page-pad: 16px;
  }
}


/* RATIO ALIGNMENT FINAL CHECKED */
/* 測量方式、實拍模特尺寸：圖片 25% / 文字 75% */
#guide .guide-final-body{
  display:grid !important;
  grid-template-columns:25% 75% !important;
  gap:24px !important;
  align-items:start !important;
}

#guide .guide-final-img,
#guide .no-image-frame{
  width:100% !important;
  justify-self:start !important;
  align-self:start !important;
  display:flex !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
}

#guide .guide-final-img img,
#guide .no-image-frame img{
  width:100% !important;
  max-width:260px !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:left top !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

#guide .guide-final-content{
  width:100% !important;
  min-width:0 !important;
}

/* 購物須知：圖片 30% / 文字 70% */
#shopping-note .shopping-magazine-layout{
  display:grid !important;
  grid-template-columns:30% 70% !important;
  gap:24px !important;
  align-items:start !important;
}

#shopping-note .shopping-main-image{
  justify-self:start !important;
  align-self:start !important;
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  display:flex !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  overflow:visible !important;
}

#shopping-note .shopping-main-image img{
  width:100% !important;
  max-width:320px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:left top !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

#shopping-note .shopping-cards{
  width:100% !important;
  min-width:0 !important;
}

/* 防止比例加上 gap 後爆版 */
#guide .guide-final-body > *,
#shopping-note .shopping-magazine-layout > *{
  min-width:0 !important;
  box-sizing:border-box !important;
}

/* 平板以下回單欄，避免太擠 */
@media(max-width:900px){
  #guide .guide-final-body,
  #shopping-note .shopping-magazine-layout{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  #guide .guide-final-img img,
  #shopping-note .shopping-main-image img{
    max-width:260px !important;
  }
}

@media(max-width:520px){
  #guide .guide-final-img img,
  #shopping-note .shopping-main-image img{
    max-width:220px !important;
  }
}


/* UNIFORM THREE SECTION IMAGE WIDTH */
#guide .guide-final-img,
#guide .no-image-frame,
#shopping-note .shopping-main-image{
  width:260px !important;
  max-width:260px !important;
  justify-self:start !important;
  align-self:start !important;
  display:flex !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
}

#guide .guide-final-img img,
#guide .no-image-frame img,
#shopping-note .shopping-main-image img{
  width:260px !important;
  max-width:260px !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:left top !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* 讓右側文字區從同一位置開始，不被圖片寬度影響 */
#guide .guide-final-body{
  grid-template-columns:260px minmax(0,1fr) !important;
  gap:28px !important;
}

#shopping-note .shopping-magazine-layout{
  grid-template-columns:260px minmax(0,1fr) !important;
  gap:28px !important;
}

/* 手機版維持可閱讀，不硬塞 */
@media(max-width:900px){
  #guide .guide-final-body,
  #shopping-note .shopping-magazine-layout{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  #guide .guide-final-img,
  #guide .no-image-frame,
  #shopping-note .shopping-main-image{
    width:240px !important;
    max-width:240px !important;
  }

  #guide .guide-final-img img,
  #guide .no-image-frame img,
  #shopping-note .shopping-main-image img{
    width:240px !important;
    max-width:240px !important;
  }
}

@media(max-width:520px){
  #guide .guide-final-img,
  #guide .no-image-frame,
  #shopping-note .shopping-main-image{
    width:220px !important;
    max-width:220px !important;
  }

  #guide .guide-final-img img,
  #guide .no-image-frame img,
  #shopping-note .shopping-main-image img{
    width:220px !important;
    max-width:220px !important;
  }
}


/* CHECKOUT NOTE BUTTON SPACING */
#checkout textarea,
#checkout .form-group textarea{
  margin-bottom: 12px !important;
}

#checkout .checkout-card button[type="submit"],
#checkoutForm button[type="submit"]{
  margin-top: 14px !important;
}


/* REMOVE NON-LINK DISPLAY FRAMES */
/* 上方三張展示卡：拿掉卡片外框，只保留圖片與文字 */
.look-card,
.inspiration-card,
.story-card{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  overflow:visible !important;
}

.look-card img,
.inspiration-card img,
.story-card img{
  border-radius:0 !important;
  box-shadow:none !important;
}

/* 過往連線紀錄：拿掉整區大外框 */
#past-popup .past-card,
#past-popup .popup-card,
#past-popup .info-card,
#past-popup .past-popup-card,
#past-popup .connect-card,
#past-popup .archive-card,
#past-popup .card,
#past-popup article{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* 過往連線內的內容容器也不要外框 */
#past-popup .container > div,
#past-popup .past-content,
#past-popup .popup-content{
  box-shadow:none !important;
}

/* 只有可點擊的連結 / 按鈕保留框框 */
#past-popup a,
#past-popup button,
.look-card a,
.inspiration-card a,
.story-card a{
  border:1px solid #d9cdbf !important;
  border-radius:999px !important;
  background:#fff !important;
  box-shadow:0 8px 18px rgba(17,24,39,.04) !important;
}

/* 小標籤保留膠囊，但不保留大卡片感 */
#past-popup .tag,
#past-popup .badge,
#past-popup .pill{
  border:1px solid #eadfce !important;
  border-radius:999px !important;
  background:#fff !important;
  box-shadow:none !important;
}


/* FONT UPDATE: Manrope + Noto Sans TC */
html,
body{
  font-family: var(--font-zh) !important;
  font-weight:400 !important;
  color:#1f2933 !important;
}

*{
  font-family: var(--font-zh) !important;
}

p,
li,
td,
input,
select,
textarea,
button,
a,
label{
  font-weight:400 !important;
  letter-spacing:.01em !important;
}

/* FurNest 品牌字重改 600 */
.minimal-brand-name,
.shoppable-brand,
.brand-name,
.brand-hero-name,
.logo-text,
.site-title,
h1{
  font-family: var(--font-zh) !important;
  font-weight:600 !important;
  letter-spacing:.02em !important;
}

/* 中文標題不要太粗 */
h2,
h3,
.section-head h2,
.guide-final-head h2,
#shopping-note h2,
#checkout h2,
.product-card h3,
.note-card h3{
  font-weight:600 !important;
  letter-spacing:.03em !important;
}

/* 導覽與按鈕稍微保留清楚度，但不要 900 */
.shoppable-nav a,
.minimal-hero-nav a,
.btn,
button,
.shop-float-btn,
.minimal-float-btn{
  font-weight:600 !important;
}

/* 表格標題不要太黑 */
th,
strong{
  font-weight:600 !important;
}

/* 內文柔和 */
p,
.product-card p,
.note-card p,
.guide-final-head p,
#shopping-note .note-card p,
#checkout .checkout-side-note p{
  color:#4f4a45 !important;
  line-height:1.75 !important;
}

/* 商品價格/重要數字保留清楚 */
.price,
.product-price,
.total-row strong{
  font-weight:600 !important;
}


/* NAV ITEMS FONT WEIGHT 600 */
.shoppable-nav a,
.minimal-hero-nav a,
.category-nav a,
.category-pill,
.category-link,
.quick-link,
.quick-nav a{
  font-weight:600 !important;
  letter-spacing:.01em !important;
}


/* REFINE NAV TYPOGRAPHY */
.shoppable-nav a,
.minimal-hero-nav a,
.category-nav a,
.category-pill,
.category-link,
.quick-link,
.quick-nav a{
  font-weight:500 !important;
  letter-spacing:.08em !important;
  line-height:1.5 !important;
}

/* 中文英文上下排列 */
.category-link,
.quick-link{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:4px !important;
}

.category-link small,
.quick-link small,
.category-en{
  display:block !important;
  font-size: 16px!important;
  font-weight:500 !important;
  letter-spacing:.12em !important;
  opacity:.7 !important;
}


/* UNIFY CATEGORY TYPOGRAPHY */
.shoppable-nav a,
.minimal-hero-nav a,
.category-nav a,
.category-pill,
.category-link,
.quick-link,
.quick-nav a,
.category-sidebar a,
.category-item,
.filter-item,
.section-nav a{
  font-size:16px !important;
  font-weight:500 !important;
  letter-spacing:.06em !important;
  line-height:1.5 !important;
}

/* 英文副標統一 */
.category-link small,
.quick-link small,
.category-en,
.section-nav small,
.category-sidebar small{
  font-size: 16px!important;
  font-weight:500 !important;
  letter-spacing:.12em !important;
  line-height:1.4 !important;
  opacity:.72 !important;
}

/* 中文英文上下排列 */
.category-link,
.quick-link{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:4px !important;
}


/* FORCE UNIFY SIX SECTION HEADINGS */
/* 精選分類 / 穿搭靈感 / 過往連線 / 測量方式 / 購物須知 / 結帳資訊 */
#products .section-head h2,
#lookbook .section-head h2,
#past-popup .section-head h2,
#guide h2,
#shopping-note .section-head h2,
#checkout .section-head h2,
#checkout h2{
  font-family: var(--font-zh) !important;
  font-size:28px !important;
  font-weight:500 !important;
  line-height:1.25 !important;
  letter-spacing:.06em !important;
  color:#111827 !important;
  margin:0 0 16px !important;
  text-align:left !important;
}

/* 避免測量方式內第二個 h2 被其他 guide-final-head 規則蓋掉 */
#guide .guide-final-head h2,
#guide .guide-final-card h2{
  font-family: var(--font-zh) !important;
  font-size:28px !important;
  font-weight:500 !important;
  line-height:1.25 !important;
  letter-spacing:.06em !important;
  color:#111827 !important;
  margin:0 0 10px !important;
  text-align:left !important;
}

/* 英文副標統一，避免有些太高、有些太小 */
#products .title-en,
#lookbook .title-en,
#past-popup .title-en,
#guide .title-en,
#shopping-note .title-en,
#checkout .title-en{
  display:inline-block !important;
  margin-left:10px !important;
  font-family: var(--font-zh) !important;
  font-size: 16px!important;
  font-weight:500 !important;
  line-height:1.3 !important;
  letter-spacing:.08em !important;
  color:#7b716a !important;
  vertical-align:middle !important;
  opacity:.9 !important;
}

/* 手機版也保持一致，只是略小 */
@media(max-width:640px){
  #products .section-head h2,
  #lookbook .section-head h2,
  #past-popup .section-head h2,
  #guide h2,
  #shopping-note .section-head h2,
  #checkout .section-head h2,
  #checkout h2,
  #guide .guide-final-head h2,
  #guide .guide-final-card h2{
    font-size:24px !important;
    line-height:1.3 !important;
    letter-spacing:.055em !important;
  }

  #products .title-en,
  #lookbook .title-en,
  #past-popup .title-en,
  #guide .title-en,
  #shopping-note .title-en,
  #checkout .title-en{
    font-size: 16px!important;
    margin-left:8px !important;
  }
}


/* STABLE WEBFONT: NO LOCAL FONT DEPENDENCY */
html,
body,
*{
  font-family: var(--font-zh) !important;
}

/* 中文區塊統一使用可網路載入的 Noto Sans TC */
h1,h2,h3,h4,h5,h6,
p,li,a,button,input,select,textarea,label,td,th,
.section-head h2,
.guide-final-head h2,
#shopping-note h2,
#checkout h2{
  font-family: var(--font-zh) !important;
}

/* 保持韓系選物感：不要太粗 */
h2,
.section-head h2,
.guide-final-head h2,
#shopping-note .section-head h2,
#checkout .section-head h2{
  font-weight:500 !important;
  letter-spacing:.055em !important;
}

p,li,td,label,input,select,textarea{
  font-weight:400 !important;
}

/* FurNest 保持 600 */
.minimal-brand-name,
.shoppable-brand,
.brand-name,
.brand-hero-name,
.logo-text,
.site-title{
  font-weight:600 !important;
}


/* PAST POPUP LEFT ALIGNMENT FIX */
#past-popup{
  padding-left:0 !important;
  padding-right:0 !important;
}

#past-popup .container{
  width:min(var(--furnest-page-width, 1180px), calc(100% - 48px)) !important;
  max-width:var(--furnest-page-width, 1180px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

/* 過往連線標題與內文不要再有內縮 */
#past-popup .section-head,
#past-popup .section-head > div,
#past-popup h2,
#past-popup p{
  margin-left:0 !important;
  padding-left:0 !important;
  text-align:left !important;
}

/* 過往連線內容區如果是卡片/橫排，也從同一條線開始 */
#past-popup .past-card,
#past-popup .popup-card,
#past-popup .past-content,
#past-popup .popup-content,
#past-popup .past-popup-card,
#past-popup .connect-card,
#past-popup .archive-card{
  margin-left:0 !important;
  padding-left:0 !important;
}

/* 右側按鈕/標籤不影響左側標題起點 */
#past-popup .section-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:24px !important;
}

@media(max-width:640px){
  #past-popup .container{
    width:calc(100% - 32px) !important;
  }

  #past-popup .section-head{
    display:block !important;
  }
}


/* CLEAR TEXT RENDERING FIX */
html,
body{
  font-family: var(--font-zh) !important;
  font-weight:400 !important;
  -webkit-font-smoothing:auto !important;
  text-rendering:optimizeLegibility !important;
}

/* 避免 scale / zoom 造成文字模糊 */
body,
section,
.container,
.checkout-section,
.checkout-card,
.product-card,
.info-card,
.note-card,
.guide-final-card{
  transform:none !important;
  zoom:1 !important;
}

/* 中文主標題：清楚但不要厚重 */
h1,h2,h3,h4,h5,h6,
.section-head h2,
.guide-final-head h2,
#shopping-note .section-head h2,
#checkout .section-head h2{
  font-family: var(--font-zh) !important;
  font-weight:600 !important;
  letter-spacing:.025em !important;
  color:#111827 !important;
}

/* 內文字避免太淡太細 */
p,li,td,th,label,input,select,textarea,
.note-card p,
.checkout-card p,
.guide-final-head p{
  font-family: var(--font-zh) !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  color:#27313f !important;
}

/* 英文小字與品牌英文才用 Manrope */
.title-en,
.shoppable-nav a,
.minimal-hero-nav a,
.category-en,
small,
.minimal-brand-name,
.shoppable-brand,
.brand-name,
.site-title{
  font-family: var(--font-zh) !important;
}

/* FurNest 維持 600 */
.minimal-brand-name,
.shoppable-brand,
.brand-name,
.site-title{
  font-weight:600 !important;
}

/* 六個區塊大標題統一清楚版本 */
#products .section-head h2,
#lookbook .section-head h2,
#past-popup .section-head h2,
#guide h2,
#shopping-note .section-head h2,
#checkout .section-head h2{
  font-size:28px !important;
  font-weight:600 !important;
  letter-spacing:.025em !important;
  line-height:1.3 !important;
}

/* 英文副標不要灰到看起來糊 */
.title-en{
  font-size: 16px!important;
  font-weight:600 !important;
  letter-spacing:.06em !important;
  color:#6f665f !important;
  opacity:1 !important;
}

/* 表單文字稍微提高對比 */
#checkout input,
#checkout select,
#checkout textarea{
  color:#27313f !important;
  font-size: 16px!important;
  font-weight:400 !important;
}

#checkout input::placeholder,
#checkout textarea::placeholder{
  color:#8b817a !important;
  opacity:1 !important;
}

/* 按鈕文字清晰 */
button,
.btn,
a.btn{
  font-weight:600 !important;
  letter-spacing:.02em !important;
}


/* REMOVE NON-LINK PAST POPUP TAG FRAMES */
/* 過往連線裡沒有 href 的純標籤不留框 */
#past-popup .tag,
#past-popup .badge,
#past-popup .pill,
#past-popup span,
#past-popup .meta,
#past-popup .chip{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
}

/* 只有真正連結/按鈕保留框 */
#past-popup a,
#past-popup button{
  border:1px solid #d9cdbf !important;
  border-radius:999px !important;
  background:#fff !important;
  box-shadow:0 8px 18px rgba(17,24,39,.04) !important;
  padding:10px 18px !important;
}


/* TEXT SIZE & CLARITY FIX */

/* 全站內文提高 */
body,
p,
li,
td,
label,
input,
select,
textarea{
  font-size: 16px!important;
  line-height:1.75 !important;
}

/* 表單 label 更清楚 */
#checkout label,
#checkout .field-label,
#checkout .checkout-label{
  font-size: 16px!important;
  font-weight:600 !important;
  color:#1f2933 !important;
  letter-spacing:.01em !important;
}

/* placeholder 不要太淡 */
input::placeholder,
textarea::placeholder{
  font-size: 16px!important;
  color:#7a746f !important;
  opacity:1 !important;
}

/* input/select/textarea */
input,
select,
textarea{
  font-size: 16px!important;
  font-weight:400 !important;
  color:#27313f !important;
}

/* 按鈕文字 */
button,
.btn,
a.btn,
.shop-btn,
.checkout-btn{
  font-size: 16px!important;
  font-weight:600 !important;
  letter-spacing:.015em !important;
}

/* 商品說明區 */
.product-card p,
.note-card p,
.checkout-side-note p,
.guide-final-head p{
  font-size: 16px!important;
  line-height:1.8 !important;
}

/* 過往連線說明 */
#past-popup p{
  font-size: 16px!important;
}

/* 英文副標不要太小 */
.title-en{
  font-size: 16px!important;
  letter-spacing:.05em !important;
}

/* 手機版避免過小 */
@media(max-width:640px){
  body,
  p,
  li,
  td,
  label,
  input,
  select,
  textarea{
    font-size: 16px!important;
  }

  .title-en{
    font-size: 16px!important;
  }

  button,
  .btn{
    font-size: 16px!important;
  }
}


/* FINAL FONT CLEANUP - SINGLE SOURCE OF TRUTH */
:root{
  --font-zh: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
  --font-en: "Manrope", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

/* 中文預設：全站所有中文與一般文字都使用同一套 */
html,
body,
body *{
  font-family: var(--font-zh) !important;
}

/* 英文專用：品牌字、英文副標、英文導覽 */
.title-en,
[class*="en"],
.shoppable-brand,
.minimal-brand-name,
.brand-name,
.site-title,
.logo-text,
.shoppable-nav a,
.minimal-hero-nav a{
  font-family: var(--font-en) !important;
}

/* 避免舊樣式造成粗細不一致 */
h1,h2,h3,h4,h5,h6,
.section-head h2,
.guide-final-head h2,
#shopping-note .section-head h2,
#checkout .section-head h2{
  font-weight:600 !important;
}

p,li,td,th,label,input,select,textarea{
  font-weight:400 !important;
}

/* 英文副標統一 */
.title-en{
  font-size: 16px!important;
  font-weight:600 !important;
  letter-spacing:.06em !important;
  color:#6f665f !important;
}

/* FurNest 品牌字統一 */
.shoppable-brand,
.minimal-brand-name,
.brand-name,
.site-title,
.logo-text{
  font-weight:600 !important;
  letter-spacing:.02em !important;
}

/* 導覽統一 */
.shoppable-nav a,
.minimal-hero-nav a{
  font-weight:500 !important;
  letter-spacing:.06em !important;
}


/* Past popup tags vertical layout */
#past-popup .tag-group,
#past-popup .popup-tags,
#past-popup .past-tags{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:10px !important;
}

/* individual text tags */
#past-popup .tag,
#past-popup .badge,
#past-popup .pill,
#past-popup .chip{
  display:block !important;
  width:auto !important;
  margin:0 !important;
  line-height:1.4 !important;
}


/* MIN FONT SIZE 16PX */
/* 所有主要可讀文字最低 16px */
body,
p,
li,
td,
th,
label,
input,
select,
textarea,
button,
a,
.btn,
.tag,
.badge,
.pill,
.chip,
.title-en,
.note-card p,
.checkout-side-note p,
.guide-final-head p,
.product-card p,
.product-card h3,
#past-popup p,
#shopping-note p,
#checkout p,
#checkout label,
#checkout input,
#checkout select,
#checkout textarea,
#checkout button,
#checkout .btn{
  font-size:16px !important;
}

/* 英文副標也不要小於 16 */
.title-en{
  font-size:16px !important;
  line-height:1.4 !important;
}

/* 表單 placeholder 也提升 */
input::placeholder,
textarea::placeholder{
  font-size:16px !important;
}

/* 過往連線三個小標籤 */
#past-popup .tag,
#past-popup .badge,
#past-popup .pill,
#past-popup .chip,
#past-popup span,
#past-popup a,
#past-popup button{
  font-size:16px !important;
}

/* 小提醒區 */
.checkout-side-note p,
.guide-inline-note,
.inline-reminder{
  font-size:16px !important;
}

/* 手機版也維持不低於 16 */
@media(max-width:640px){
  body,
  p,
  li,
  td,
  th,
  label,
  input,
  select,
  textarea,
  button,
  a,
  .btn,
  .tag,
  .badge,
  .pill,
  .chip,
  .title-en{
    font-size:16px !important;
  }
}


/* FORCE ALL REMAINING SMALL TEXT TO 16PX */
/* 英文副標：Size guide / Model size / Shopping note / Checkout */
.title-en,
.section-head .title-en,
.guide-final-head .title-en,
.guide-final-card .title-en,
#guide .title-en,
#products .title-en,
#lookbook .title-en,
#past-popup .title-en,
#shopping-note .title-en,
#checkout .title-en{
  font-size:16px !important;
  line-height:1.45 !important;
  font-weight:500 !important;
}

/* 測量方式 / 模特尺寸標題下面的說明文字 */
.guide-final-head p,
.guide-final-card p,
#guide .guide-final-head p,
#guide .guide-final-card p,
#guide p,
#shopping-note p,
#past-popup p,
#checkout p{
  font-size:16px !important;
  line-height:1.8 !important;
}

/* 步驟卡內小標題：胸圍最重要 / 背長看版型 / 體重輔助判斷 */
.guide-final-steps strong,
.guide-final-steps span,
.guide-final-steps .step,
.guide-final-steps .step div,
.guide-final-steps .step strong,
.guide-final-steps .step span,
#guide .step strong,
#guide .step span,
#guide .step div{
  font-size:16px !important;
  line-height:1.75 !important;
}

/* 表格與標籤、提示膠囊 */
.guide-size-table,
.guide-size-table th,
.guide-size-table td,
#guide table,
#guide th,
#guide td,
.guide-inline-note,
.inline-reminder{
  font-size:16px !important;
  line-height:1.65 !important;
}

/* 表單/按鈕/小字統一 */
#checkout label,
#checkout input,
#checkout select,
#checkout textarea,
#checkout button,
#checkout .btn,
#checkout .notice,
#checkout .checkout-side-note,
#checkout .checkout-side-note p,
#checkout .total-row,
#checkout .summary-list,
#checkout .summary-list *{
  font-size:16px !important;
  line-height:1.7 !important;
}

/* 商品卡與說明卡小字 */
.product-card p,
.product-card h3,
.note-card p,
.note-card h3,
#shopping-note .note-card p,
#shopping-note .note-card h3{
  font-size:16px !important;
  line-height:1.7 !important;
}

/* 過往連線純標籤 */
#past-popup .tag,
#past-popup .badge,
#past-popup .pill,
#past-popup .chip,
#past-popup span,
#past-popup a,
#past-popup button{
  font-size:16px !important;
  line-height:1.55 !important;
}

/* placeholder */
input::placeholder,
textarea::placeholder{
  font-size:16px !important;
}


/* HERO RAINCOAT IMAGE FIT */
.hero-main-photo img,
#heroSliderImage{
  object-fit:cover !important;
  object-position:center !important;
}

/* SEO safe additions: visible small copy only, no layout structure changes */
.section-seo-text {
  max-width: none;
  margin-top: 8px;
  color: #6b625b;
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: .02em;
  white-space: nowrap;
}

@media (max-width: 520px) {
  .section-seo-text {
    font-size: 16px;
    line-height: 1.8;
    white-space: normal;
  }
}


/* === MULTI-PAGE FURNEST ADDITIONS === */
body .topbar{
  position:sticky !important;
  top:0 !important;
  z-index:1000 !important;
  display:block !important;
  background:rgba(255,255,255,.94) !important;
  border-bottom:1px solid rgba(90,74,64,.12) !important;
  backdrop-filter:blur(14px) !important;
}
body .topbar .brand{
  display:flex !important;
  flex-shrink:0 !important;
  color:#5a4a40 !important;
}
body .topbar .container.nav{
  height:auto !important;
  min-height:72px !important;
  padding:10px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
}
.topbar .site-nav{
  display:flex !important;
  flex-wrap:wrap !important;
  grid-template-columns:none !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px 16px !important;
  margin-top:0 !important;
}
.topbar .site-nav a{
  min-width:auto !important;
  width:auto !important;
  padding:3px 0 5px !important;
  font-size: 16px!important;
  letter-spacing:.08em !important;
  white-space:nowrap !important;
  text-align:center !important;
}
.topbar .site-nav a:hover::after{
  font-size: 16px!important;
  letter-spacing:.04em !important;
}
.topbar .site-nav a[aria-current="page"]{
  border-bottom-color:#5a4a40 !important;
  color:#5a4a40 !important;
}
.page-main > section:first-child:not(.shoppable-hero):not(.product-page-section){
  padding-top:72px !important;
}
.page-hero-lite{
  padding:80px 0 42px !important;
  background:linear-gradient(180deg, rgba(255,248,239,.76), rgba(255,255,255,.55)) !important;
}
.page-hero-lite .container{
  display:grid !important;
  gap:14px !important;
}
.page-kicker{
  color:#b48a80 !important;
  font-size: 16px!important;
  font-weight:700 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
}
.page-hero-lite h1{
  margin:0 !important;
  font-size:34px !important;
  font-weight:500 !important;
  letter-spacing:.06em !important;
  color:#111827 !important;
}
.page-hero-lite p{
  max-width:760px !important;
  margin:0 !important;
  color:#5f5650 !important;
  line-height:1.9 !important;
}
.gateway-section,
.knowledge-section,
.home-knowledge-section{
  padding:72px 0 !important;
}
.gateway-grid,
.knowledge-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:18px !important;
}
.gateway-card,
.knowledge-card{
  display:flex !important;
  flex-direction:column !important;
  min-height:190px !important;
  padding:24px !important;
  border:1px solid var(--line) !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:var(--shadow) !important;
  border-radius:var(--round) !important;
  transition:transform .22s ease, box-shadow .22s ease !important;
}
.gateway-card:hover,
.knowledge-card:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 18px 38px rgba(90,74,64,.12) !important;
}
.gateway-card small,
.knowledge-card small{
  color:#b48a80 !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  margin-bottom:12px !important;
}
.gateway-card h3,
.knowledge-card h3{
  margin:0 0 8px !important;
  font-size:20px !important;
  font-weight:500 !important;
}
.gateway-card p,
.knowledge-card p{
  margin:0 !important;
  color:#5f5650 !important;
  line-height:1.8 !important;
}
.gateway-card .card-link,
.knowledge-card .card-link{
  margin-top:auto !important;
  padding-top:18px !important;
  color:#5a4a40 !important;
  font-weight:700 !important;
}
.hover-lang{
  cursor:default !important;
  display:inline-flex !important;
  align-items:baseline !important;
  gap:10px !important;
}
.hover-lang .lang-zh{ display:none !important; }
.hover-lang:hover .lang-en{ display:none !important; }
.hover-lang:hover .lang-zh{ display:inline !important; }
#knowledge .title-en,
#knowledge .section-head .title-en{
  display:inline-block !important;
  margin-left:10px !important;
  font-size: 16px!important;
  font-weight:500 !important;
  line-height:1.3 !important;
  letter-spacing:.08em !important;
  color:#7b716a !important;
  vertical-align:middle !important;
  opacity:.9 !important;
}
.knowledge-anchor-block{
  scroll-margin-top:110px !important;
}
.footer-links a[href="#products"],
.footer-links a[href="#guide"]{
  pointer-events:auto !important;
}
@media(max-width:980px){
  body .topbar .container.nav{ justify-content:center !important; }
  .topbar .site-nav{ justify-content:center !important; }
  .gateway-grid,.knowledge-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)) !important; }
}
@media(max-width:640px){
  body .topbar .container.nav{ min-height:64px !important; }
  .topbar .site-nav{ gap:8px 13px !important; }
  .topbar .site-nav a{ font-size: 16px!important; }
  .topbar .site-nav a:hover::after{ font-size: 16px!important; }
  .page-hero-lite{ padding:48px 0 30px !important; }
  .page-hero-lite h1{ font-size:28px !important; }
  .gateway-grid,.knowledge-grid{ grid-template-columns:1fr !important; }
  .gateway-section,.knowledge-section,.home-knowledge-section{ padding:46px 0 !important; }
}

/* === FURNEST CLEAN MULTIPAGE PASS === */
/* 精簡多頁後：只保留頂部導覽；首頁主視覺改成兩個重點按鈕 */
.hero-compact-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:28px !important;
}
.hero-compact-actions .btn{
  min-width:136px !important;
}

/* LOGO 不裁切：避免小圖被 object-cover 剪掉 */
.brand-mark{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.brand-mark img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  border-radius:50% !important;
  background:transparent !important;
}
.shoppable-logo{
  object-fit:contain !important;
  background:transparent !important;
  border-radius:50% !important;
}

/* 導覽列：預設英文，滑鼠過去才切換中文；避免 HOME首頁 同時出現 */
.topbar .site-nav a:hover{
  font-size:0 !important;
}
.topbar .site-nav a:hover::after{
  content:attr(data-label) !important;
  display:inline-block !important;
  font-size: 16px!important;
  font-weight:900 !important;
  letter-spacing:.04em !important;
  color:#111827 !important;
}

/* 商品列表頁不要顯示「商品載入中」區塊；只有單一商品網址才打開 */
.product-page-section{
  display:none !important;
}
body.product-route .product-page-section{
  display:block !important;
}
body.product-route .products-wrap{
  display:none !important;
}
body.product-route .product-page-section{
  padding-top:clamp(52px, 6vw, 86px) !important;
}

/* 拿掉重複頁首後，每一頁第一區塊保留舒服上距 */
.page-main > section:first-child:not(.shoppable-hero){
  padding-top:clamp(54px, 6vw, 86px) !important;
}
#lookbook .section-head,
#shopping-note .section-head,
#checkout .section-head,
.knowledge-section .section-head{
  margin-bottom:24px !important;
}
.products-title-row{
  margin-bottom:24px !important;
}

/* 手機版主視覺更精簡 */
@media(max-width:760px){
  .hero-compact-actions{
    margin-top:22px !important;
  }
  .hero-compact-actions .btn{
    width:100% !important;
  }
}

/* 單頁標題改為唯一 H1，但維持原本 H2 的視覺大小 */
.products-title-row h1,
#lookbook .section-head h1,
.past-popup-card h1,
.guide-final-head h1,
#shopping-note .section-head h1,
#checkout .section-head h1{
  margin:0 !important;
  font-size:clamp(28px, 3.2vw, 42px) !important;
  font-weight:600 !important;
  letter-spacing:.04em !important;
  line-height:1.25 !important;
  color:#111827 !important;
}
.products-title-row h1 .title-en,
#lookbook .section-head h1 .title-en,
.past-popup-card h1 .title-en,
.guide-final-head h1 .title-en,
#shopping-note .section-head h1 .title-en,
#checkout .section-head h1 .title-en{
  font-size: 16px!important;
  font-weight:400 !important;
  color:#8b817a !important;
  letter-spacing:.08em !important;
  margin-left:10px !important;
}

/* HOME 精簡版：首頁只保留品牌主視覺與精選商品 */
.shoppable-copy .hero-brand-story{
  max-width:480px !important;
  margin:18px 0 0 !important;
  color:#5f5650 !important;
  font-size: 16px!important;
  line-height:1.9 !important;
  letter-spacing:.045em !important;
}
.shoppable-copy .hero-brand-story-sub{
  margin-top:10px !important;
  color:rgba(95,86,80,.78) !important;
}
.home-featured-section{
  padding-top:64px !important;
}
.home-featured-grid{
  margin-top:22px !important;
}
.section-more-link{
  align-self:flex-end !important;
  color:#7b6f66 !important;
  text-decoration:none !important;
  font-size: 16px!important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  border-bottom:1px solid rgba(123,111,102,.35) !important;
  padding-bottom:5px !important;
}
.section-more-link:hover{
  color:#111827 !important;
  border-color:#111827 !important;
}
.home-featured-card .product-actions{
  margin-top:auto !important;
}
@media(max-width:900px){
  .shoppable-copy .hero-brand-story{
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }
  .section-more-link{
    display:inline-block !important;
    margin-top:14px !important;
  }
}


/* === HOME REFINEMENT 2026-05-15 === */
/* 1) Header：品牌放左邊，導覽列放右邊，避免上下重複與置中壓迫感 */
body .topbar .container.nav{
  width:min(1120px, calc(100% - 72px)) !important;
  max-width:1120px !important;
  min-height:68px !important;
  padding:8px 0 !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:28px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body .topbar .brand{
  min-width:220px !important;
  justify-content:flex-start !important;
  gap:10px !important;
  margin:0 !important;
}
body .topbar .brand-mark{
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
}
body .topbar .brand > span:not(.brand-mark){
  display:block !important;
  color:#5a4a40 !important;
  font-size: 16px!important;
  font-weight:600 !important;
  line-height:1.25 !important;
  letter-spacing:.02em !important;
}
body .topbar .brand small{
  display:block !important;
  margin-top:1px !important;
  font-size: 16px!important;
  line-height:1.3 !important;
  color:#111827 !important;
  font-weight:400 !important;
  letter-spacing:.08em !important;
}
body .topbar .site-nav{
  flex:1 1 auto !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:16px !important;
  margin:0 !important;
  overflow:visible !important;
}
body .topbar .site-nav a{
  font-size: 16px!important;
  line-height:1.2 !important;
  padding:5px 0 6px !important;
}

/* 2) Hero：回到比較像原先首頁的空氣感，圖片與文字都不要塞滿 */
.shoppable-hero{
  padding:clamp(54px, 6.2vw, 92px) 0 clamp(50px, 5.8vw, 84px) !important;
}
.shoppable-hero-grid{
  width:min(1120px, calc(100% - 72px)) !important;
  max-width:1120px !important;
  grid-template-columns:minmax(320px, 0.86fr) minmax(500px, 1.14fr) !important;
  gap:clamp(66px, 8vw, 112px) !important;
  align-items:center !important;
}
.shoppable-copy{
  max-width:440px !important;
}
.shoppable-logo{
  width:78px !important;
  height:78px !important;
  margin-bottom:16px !important;
}
.shoppable-brand{
  font-size:clamp(48px, 4.6vw, 58px) !important;
  line-height:1.02 !important;
  margin-bottom:16px !important;
}
.shoppable-copy h1{
  font-size:clamp(29px, 3vw, 38px) !important;
  line-height:1.3 !important;
  letter-spacing:.02em !important;
}
.shoppable-copy .hero-brand-story{
  max-width:430px !important;
  margin-top:20px !important;
  font-size: 16px!important;
  line-height:2 !important;
  letter-spacing:.045em !important;
}
.shoppable-copy .hero-brand-story-sub{
  margin-top:12px !important;
}
.shoppable-visual{
  grid-template-columns:minmax(0, 1fr) 128px !important;
  gap:28px !important;
  align-items:end !important;
}
.hero-main-photo img{
  height:430px !important;
  object-fit:contain !important;
  background:#fff !important;
}
.hero-side-stack{
  gap:18px !important;
}
.hero-side-stack img{
  width:128px !important;
  height:128px !important;
}
.shoppable-visual .minimal-hero-dots{
  margin-top:18px !important;
}

/* 3) HOME 精選商品：改回左側分類 + 右側商品卡片的版型 */
.home-featured-section{
  padding-top:clamp(54px, 5vw, 72px) !important;
}
.home-featured-layout{
  margin-top:22px !important;
  grid-template-columns:170px minmax(0, 1fr) !important;
  gap:26px !important;
}
.home-category-sidebar{
  top:92px !important;
}
.home-featured-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:18px !important;
  align-items:start !important;
}
.home-featured-card .product-actions,
.home-featured-card .product-meta,
.home-featured-card .product-page-link{
  display:none !important;
}
.home-featured-card .product-body{
  min-height:auto !important;
}

@media(max-width:1080px){
  body .topbar .container.nav{
    width:min(1120px, calc(100% - 40px)) !important;
    gap:20px !important;
  }
  body .topbar .brand{
    min-width:190px !important;
  }
  body .topbar .site-nav{
    gap:12px !important;
  }
  body .topbar .site-nav a{
    font-size: 16px!important;
  }
}

@media(max-width:980px){
  body .topbar .container.nav{
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    padding:10px 0 12px !important;
  }
  body .topbar .brand{
    min-width:0 !important;
    justify-content:center !important;
  }
  body .topbar .site-nav{
    width:100% !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:8px 14px !important;
  }
  .shoppable-hero-grid{
    width:min(720px, calc(100% - 40px)) !important;
    grid-template-columns:1fr !important;
    gap:36px !important;
  }
  .shoppable-copy{
    max-width:560px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }
  .shoppable-visual{
    max-width:520px !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .hero-main-photo img{
    height:auto !important;
    max-height:440px !important;
  }
  .home-featured-layout{
    grid-template-columns:1fr !important;
  }
  .home-category-sidebar{
    top:auto !important;
  }
  .home-featured-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width:640px){
  body .topbar .container.nav{
    width:min(1120px, calc(100% - 28px)) !important;
  }
  body .topbar .brand small{
    font-size: 16px!important;
    letter-spacing:.04em !important;
  }
  .shoppable-hero{
    padding:38px 0 38px !important;
  }
  .shoppable-hero-grid{
    width:min(100%, calc(100% - 32px)) !important;
  }
  .shoppable-logo{
    width:74px !important;
    height:74px !important;
  }
  .shoppable-brand{
    font-size:42px !important;
  }
  .shoppable-copy h1{
    font-size:27px !important;
  }
  .shoppable-copy .hero-brand-story{
    font-size: 16px!important;
    line-height:1.9 !important;
  }
  .home-featured-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }
}

/* === FINAL HOME UI PATCH 2026-05-15 ===
   依照討論：Header 採方案 A、首頁商品保留左分類、Hero 文字改為重要正文。 */

/* Header：品牌固定在左，導覽固定在右；不要在寬度還夠時變成上下置中 */
body .topbar{
  display:block !important;
  position:sticky !important;
  top:0 !important;
  z-index:1000 !important;
  background:rgba(255,255,255,.96) !important;
  border-bottom:1px solid rgba(17,24,39,.10) !important;
  backdrop-filter:blur(14px) !important;
}
body .topbar .container.nav{
  width:min(1180px, calc(100% - 56px)) !important;
  max-width:1180px !important;
  min-height:70px !important;
  height:auto !important;
  padding:8px 0 !important;
  margin:0 auto !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:22px !important;
}
body .topbar .brand{
  flex:0 0 auto !important;
  min-width:218px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  margin:0 !important;
  color:#111827 !important;
}
body .topbar .brand-mark{
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
body .topbar .brand-mark img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  border-radius:50% !important;
}
body .topbar .brand > span:not(.brand-mark){
  display:block !important;
  color:#111827 !important;
  font-size: 16px!important;
  font-weight:700 !important;
  line-height:1.25 !important;
  letter-spacing:.02em !important;
}
body .topbar .brand small{
  display:block !important;
  margin-top:1px !important;
  color:#111827 !important;
  font-size: 16px!important;
  line-height:1.35 !important;
  font-weight:500 !important;
  letter-spacing:.06em !important;
}
body .topbar .site-nav{
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:9px 15px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
}
body .topbar .site-nav a{
  min-width:auto !important;
  width:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:4px 0 6px !important;
  color:#111827 !important;
  font-size: 16px!important;
  line-height:1.2 !important;
  font-weight:700 !important;
  letter-spacing:.06em !important;
  white-space:nowrap !important;
  border-bottom:1px solid transparent !important;
}
body .topbar .site-nav a[aria-current="page"]{
  border-bottom-color:#111827 !important;
}
body .topbar .site-nav a:hover{
  font-size:0 !important;
  border-bottom-color:#111827 !important;
}
body .topbar .site-nav a:hover::after{
  content:attr(data-label) !important;
  display:inline-block !important;
  color:#111827 !important;
  font-size: 16px!important;
  font-weight:800 !important;
  letter-spacing:.03em !important;
  line-height:1.2 !important;
}

/* Hero：保留空氣感，但品牌故事是重要文字，不再做成灰色小字 */
.shoppable-hero{
  padding:clamp(62px, 6.4vw, 96px) 0 clamp(54px, 5.8vw, 86px) !important;
}
.shoppable-hero-grid{
  width:min(1120px, calc(100% - 72px)) !important;
  max-width:1120px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:minmax(330px, .88fr) minmax(500px, 1.12fr) !important;
  gap:clamp(66px, 7.6vw, 108px) !important;
  align-items:center !important;
}
.shoppable-copy{
  max-width:460px !important;
  text-align:left !important;
}
.shoppable-logo{
  width:80px !important;
  height:80px !important;
  margin-bottom:16px !important;
  object-fit:contain !important;
}
.shoppable-brand{
  color:#111827 !important;
  font-size:clamp(48px, 4.5vw, 58px) !important;
  line-height:1.03 !important;
  margin-bottom:16px !important;
}
.shoppable-copy h1{
  color:#111827 !important;
  font-size:clamp(30px, 3vw, 38px) !important;
  line-height:1.3 !important;
  letter-spacing:.02em !important;
}
.shoppable-copy .hero-brand-story,
.shoppable-copy .hero-brand-story-sub{
  max-width:455px !important;
  margin:20px 0 0 !important;
  color:#111827 !important;
  font-size:16px !important;
  line-height:1.95 !important;
  letter-spacing:.035em !important;
  font-weight:500 !important;
}
.shoppable-copy .hero-brand-story-sub{
  margin-top:10px !important;
  color:#1f2937 !important;
}
.shoppable-visual{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 128px !important;
  gap:28px !important;
  align-items:end !important;
}
.hero-main-photo img{
  width:100% !important;
  height:430px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#fff !important;
}
.hero-side-stack{
  display:grid !important;
  gap:18px !important;
}
.hero-side-stack img{
  width:128px !important;
  height:128px !important;
  object-fit:cover !important;
}

/* HOME 精選商品：維持圖 1 的左分類 + 右商品卡格式 */
.home-featured-section{
  padding-top:clamp(56px, 5vw, 74px) !important;
  padding-bottom:clamp(56px, 5vw, 74px) !important;
}
.home-featured-layout{
  display:grid !important;
  grid-template-columns:170px minmax(0,1fr) !important;
  gap:26px !important;
  align-items:start !important;
  margin-top:22px !important;
}
.home-category-sidebar{
  display:flex !important;
  position:sticky !important;
  top:94px !important;
  flex-direction:column !important;
  gap:8px !important;
  align-self:start !important;
  overflow:visible !important;
  padding:0 !important;
}
.home-sidebar-category{
  flex:0 0 auto !important;
  display:block !important;
  width:100% !important;
  color:#111827 !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1.5px solid #111827 !important;
  padding:8px 0 !important;
  text-align:left !important;
  font-size:16px !important;
  font-weight:900 !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}
.home-sidebar-category.active{
  color:#9b6f67 !important;
}
.home-featured-products{
  min-width:0 !important;
}

.home-featured-more{
  display:flex !important;
  justify-content:center !important;
  margin-top:28px !important;
}
.home-featured-more-btn{
  background:rgba(255,253,249,.92) !important;
  color:var(--brown) !important;
  border:1px solid var(--line) !important;
  border-radius:999px !important;
  box-shadow:0 10px 22px rgba(79,63,53,.08) !important;
  font-size:15px !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
  padding:0 22px !important;
}
.home-featured-more-btn:hover{
  background:#fffaf5 !important;
}
.home-featured-grid{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  gap:18px !important;
  margin-top:0 !important;
  align-items:start !important;
}
.home-featured-card .product-actions,
.home-featured-card .product-meta,
.home-featured-card .product-page-link{
  display:none !important;
}

@media(max-width:1080px){
  body .topbar .container.nav{
    width:min(1180px, calc(100% - 36px)) !important;
    gap:16px !important;
  }
  body .topbar .brand{
    min-width:188px !important;
  }
  body .topbar .site-nav{
    gap:8px 12px !important;
  }
  body .topbar .site-nav a,
  body .topbar .site-nav a:hover::after{
    font-size: 16px!important;
  }
}

@media(max-width:980px){
  body .topbar .container.nav{
    flex-direction:row !important;
    align-items:center !important;
    justify-content:space-between !important;
  }
  body .topbar .brand{
    min-width:170px !important;
  }
  body .topbar .site-nav{
    justify-content:flex-end !important;
  }
  .home-featured-grid{
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  }
  .shoppable-hero-grid{
    width:min(760px, calc(100% - 40px)) !important;
    grid-template-columns:1fr !important;
    gap:38px !important;
  }
  .shoppable-copy{
    max-width:620px !important;
    margin:0 auto !important;
    text-align:center !important;
  }
  .shoppable-copy .hero-brand-story,
  .shoppable-copy .hero-brand-story-sub{
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:left !important;
  }
  .shoppable-logo{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .shoppable-visual{
    max-width:520px !important;
    margin:0 auto !important;
    grid-template-columns:1fr !important;
  }
  .hero-main-photo img{
    height:auto !important;
    max-height:440px !important;
  }
  .hero-side-stack{
    display:none !important;
  }
}

@media(max-width:760px){
  body .topbar .container.nav{
    width:min(1180px, calc(100% - 28px)) !important;
    flex-direction:column !important;
    justify-content:center !important;
    gap:8px !important;
    padding:10px 0 12px !important;
  }
  body .topbar .brand{
    min-width:0 !important;
    justify-content:center !important;
  }
  body .topbar .site-nav{
    width:100% !important;
    justify-content:center !important;
    gap:8px 13px !important;
  }
  .home-featured-layout{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .home-category-sidebar{
    position:static !important;
    flex-direction:row !important;
    overflow-x:auto !important;
    gap:14px !important;
    padding-bottom:8px !important;
  }
  .home-sidebar-category{
    width:auto !important;
    font-size: 16px!important;
  }
  .home-featured-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:12px !important;
  }
}

@media(max-width:520px){
  .shoppable-hero{
    padding:38px 0 38px !important;
  }
  .shoppable-hero-grid{
    width:min(100%, calc(100% - 32px)) !important;
  }
  .shoppable-brand{
    font-size:42px !important;
  }
  .shoppable-copy h1{
    font-size:27px !important;
  }
  .shoppable-copy .hero-brand-story,
  .shoppable-copy .hero-brand-story-sub{
    font-size: 16px!important;
    line-height:1.85 !important;
    text-align:left !important;
  }
}


/* === HOME LAYOUT PATCH 2026-05-15 B ===
   本版修正：Header 留白比例、Hero 回到較大主圖比例、移除首頁看全部商品入口。 */

/* Header：品牌在左，導覽列在剩餘空間內置中，避免中間空白過大 */
body .topbar .container.nav{
  width:min(1180px, calc(100% - 48px)) !important;
  max-width:1180px !important;
  min-height:68px !important;
  padding:8px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:clamp(22px, 3vw, 38px) !important;
}
body .topbar .brand{
  flex:0 0 auto !important;
  min-width:0 !important;
  width:auto !important;
  gap:9px !important;
}
body .topbar .brand-mark{
  width:42px !important;
  height:42px !important;
  flex-basis:42px !important;
}
body .topbar .brand > span:not(.brand-mark){
  font-size: 16px!important;
  line-height:1.2 !important;
}
body .topbar .brand small{
  font-size: 16px!important;
  letter-spacing:.05em !important;
}
body .topbar .site-nav{
  flex:1 1 auto !important;
  min-width:0 !important;
  justify-content:center !important;
  gap:9px 15px !important;
}
body .topbar .site-nav a,
body .topbar .site-nav a:hover::after{
  font-size: 16px!important;
}

/* Hero：恢復較接近原先舒服的大圖比例，左右高度更平衡 */
.shoppable-hero{
  padding:clamp(58px, 5.6vw, 86px) 0 clamp(62px, 6vw, 92px) !important;
}
.shoppable-hero-grid{
  width:min(1130px, calc(100% - 70px)) !important;
  max-width:1130px !important;
  grid-template-columns:minmax(350px, .86fr) minmax(560px, 1.14fr) !important;
  gap:clamp(58px, 6.4vw, 88px) !important;
  align-items:center !important;
}
.shoppable-copy{
  max-width:438px !important;
  align-self:center !important;
}
.shoppable-logo{
  width:76px !important;
  height:76px !important;
  margin-bottom:14px !important;
}
.shoppable-brand{
  font-size:clamp(50px, 4.7vw, 62px) !important;
  margin-bottom:16px !important;
}
.shoppable-copy h1{
  font-size:clamp(31px, 3.05vw, 40px) !important;
  line-height:1.24 !important;
  margin-bottom:18px !important;
}
.shoppable-copy .hero-brand-story,
.shoppable-copy .hero-brand-story-sub{
  max-width:430px !important;
  margin-top:14px !important;
  color:#111827 !important;
  font-size: 16px!important;
  line-height:1.85 !important;
  font-weight:500 !important;
  letter-spacing:.035em !important;
}
.shoppable-copy .hero-brand-story-sub{
  margin-top:8px !important;
}
.shoppable-visual{
  grid-template-columns:minmax(380px, 430px) 122px !important;
  justify-content:center !important;
  align-items:end !important;
  gap:26px !important;
}
.hero-main-photo img{
  width:100% !important;
  height:500px !important;
  max-height:500px !important;
  object-fit:contain !important;
  object-position:center !important;
}
.hero-side-stack{
  gap:18px !important;
}
.hero-side-stack img{
  width:122px !important;
  height:122px !important;
}

/* 首頁精選商品：保留上方導覽列已有 SHOP，這裡不再重複放看全部商品 */
.section-more-link{
  display:none !important;
}
.home-featured-section .section-head.products-title-row{
  align-items:flex-start !important;
}

@media(max-width:1120px){
  body .topbar .container.nav{
    width:min(1180px, calc(100% - 34px)) !important;
    gap:18px !important;
  }
  body .topbar .site-nav{
    justify-content:center !important;
    gap:8px 11px !important;
  }
  body .topbar .site-nav a,
  body .topbar .site-nav a:hover::after{
    font-size: 16px!important;
  }
  .shoppable-hero-grid{
    width:min(1060px, calc(100% - 48px)) !important;
    grid-template-columns:minmax(320px, .82fr) minmax(500px, 1.18fr) !important;
    gap:46px !important;
  }
  .shoppable-visual{
    grid-template-columns:minmax(350px, 405px) 112px !important;
    gap:20px !important;
  }
  .hero-main-photo img{
    height:470px !important;
    max-height:470px !important;
  }
  .hero-side-stack img{
    width:112px !important;
    height:112px !important;
  }
}

@media(max-width:980px){
  body .topbar .container.nav{
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:8px 18px !important;
  }
  body .topbar .brand{
    justify-content:center !important;
  }
  body .topbar .site-nav{
    flex:0 1 100% !important;
    width:100% !important;
    justify-content:center !important;
  }
  .shoppable-hero-grid{
    width:min(760px, calc(100% - 40px)) !important;
    grid-template-columns:1fr !important;
    gap:40px !important;
  }
  .shoppable-copy{
    max-width:620px !important;
    margin:0 auto !important;
    text-align:center !important;
  }
  .shoppable-copy .hero-brand-story,
  .shoppable-copy .hero-brand-story-sub{
    max-width:560px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:left !important;
  }
  .shoppable-visual{
    max-width:520px !important;
    margin:0 auto !important;
    grid-template-columns:1fr !important;
  }
  .hero-main-photo img{
    width:100% !important;
    height:auto !important;
    max-height:520px !important;
  }
  .hero-side-stack{
    display:none !important;
  }
}

@media(max-width:760px){
  body .topbar .container.nav{
    width:min(1180px, calc(100% - 28px)) !important;
    flex-direction:column !important;
    gap:8px !important;
  }
  body .topbar .site-nav{
    gap:8px 13px !important;
  }
  .shoppable-copy .hero-brand-story,
  .shoppable-copy .hero-brand-story-sub{
    font-size: 16px!important;
    line-height:1.8 !important;
  }
}

/* === FINAL PATCH 2026-05-15 C: Header group centered + unified typography ===
   Fixes: 品牌與導覽距離過大、導覽列未視覺置中、首頁品牌介紹字體感不一致。 */
:root{
  --font-zh: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", "Helvetica Neue", Arial, sans-serif !important;
  --font-en: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", "Helvetica Neue", Arial, sans-serif !important;
}
body, button, input, select, textarea,
body .topbar,
body .topbar *,
.shoppable-hero,
.shoppable-hero *{
  font-family:var(--font-zh) !important;
}

/* Header：品牌＋導覽視為同一組，整組置中；不要再用 space-between 拉開 */
body .topbar{
  display:block !important;
  position:sticky !important;
  top:0 !important;
  z-index:1000 !important;
  background:rgba(255,255,255,.98) !important;
  border-bottom:1px solid rgba(17,24,39,.10) !important;
  backdrop-filter:blur(14px) !important;
}
body .topbar .container.nav{
  width:min(1120px, calc(100% - 36px)) !important;
  max-width:1120px !important;
  min-height:58px !important;
  height:auto !important;
  padding:6px 0 !important;
  margin:0 auto !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:30px !important;
}
body .topbar .brand{
  flex:0 0 auto !important;
  min-width:0 !important;
  width:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  margin:0 !important;
  color:#111827 !important;
  white-space:nowrap !important;
}
body .topbar .brand-mark{
  width:38px !important;
  height:38px !important;
  flex:0 0 38px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
body .topbar .brand-mark img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  border-radius:50% !important;
  display:block !important;
}
body .topbar .brand > span:not(.brand-mark){
  display:block !important;
  color:#111827 !important;
  font-size: 16px!important;
  font-weight:700 !important;
  line-height:1.18 !important;
  letter-spacing:.01em !important;
}
body .topbar .brand small{
  display:block !important;
  margin-top:0 !important;
  color:#111827 !important;
  font-size: 16px!important;
  line-height:1.24 !important;
  font-weight:500 !important;
  letter-spacing:.03em !important;
}
body .topbar .site-nav{
  flex:0 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:14px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
}
body .topbar .site-nav a{
  flex:0 0 auto !important;
  min-width:0 !important;
  width:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:4px 0 5px !important;
  color:#111827 !important;
  font-size: 16px!important;
  line-height:1.15 !important;
  font-weight:650 !important;
  letter-spacing:.045em !important;
  white-space:nowrap !important;
  border-bottom:1px solid transparent !important;
  text-decoration:none !important;
}
body .topbar .site-nav a[aria-current="page"]{
  border-bottom-color:#111827 !important;
}
body .topbar .site-nav a:hover{
  font-size:0 !important;
  border-bottom-color:#111827 !important;
}
body .topbar .site-nav a:hover::after{
  content:attr(data-label) !important;
  display:inline-block !important;
  color:#111827 !important;
  font-size: 16px!important;
  font-weight:700 !important;
  letter-spacing:.025em !important;
  line-height:1.15 !important;
}

/* Hero 文字：重要正文，與整站字體一致，不要像灰色備註 */
.shoppable-copy{
  color:#111827 !important;
}
.shoppable-brand{
  color:#111827 !important;
  font-family:var(--font-zh) !important;
  letter-spacing:.012em !important;
}
.shoppable-copy h1{
  color:#111827 !important;
  font-family:var(--font-zh) !important;
  letter-spacing:.012em !important;
}
.shoppable-copy .hero-brand-story,
.shoppable-copy .hero-brand-story-sub,
.shoppable-copy p.hero-brand-story,
.shoppable-copy p.hero-brand-story-sub{
  max-width:438px !important;
  margin-top:14px !important;
  color:#111827 !important;
  font-family:var(--font-zh) !important;
  font-size:16px !important;
  line-height:1.78 !important;
  font-weight:500 !important;
  letter-spacing:.012em !important;
}
.shoppable-copy .hero-brand-story-sub,
.shoppable-copy p.hero-brand-story-sub{
  margin-top:8px !important;
}

@media(max-width:1080px){
  body .topbar .container.nav{
    width:min(1120px, calc(100% - 28px)) !important;
    gap:20px !important;
  }
  body .topbar .site-nav{
    gap:10px !important;
  }
  body .topbar .site-nav a,
  body .topbar .site-nav a:hover::after{
    font-size: 16px!important;
  }
  body .topbar .brand > span:not(.brand-mark){
    font-size: 16px!important;
  }
  body .topbar .brand small{
    font-size: 16px!important;
  }
}
@media(max-width:900px){
  body .topbar .container.nav{
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:8px 18px !important;
    min-height:auto !important;
    padding:9px 0 11px !important;
  }
  body .topbar .site-nav{
    flex:0 1 100% !important;
    width:100% !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:8px 13px !important;
  }
}
@media(max-width:520px){
  .shoppable-copy .hero-brand-story,
  .shoppable-copy .hero-brand-story-sub,
  .shoppable-copy p.hero-brand-story,
  .shoppable-copy p.hero-brand-story-sub{
    font-size: 16px!important;
    line-height:1.78 !important;
    letter-spacing:.01em !important;
  }
}


/* ===== Readability floor: visible text should not be smaller than 16px ===== */
body,
button,
input,
select,
textarea,
label,
p,
li,
a,
span,
small,
.site-nav a,
.topbar .site-nav a,
.topbar .site-nav a:hover::after,
.shoppable-nav a,
.shoppable-nav a:hover::after,
.product-card .product-title,
.product-card p,
.category-link,
.category-en,
.title-en,
.kicker,
.section-subtitle,
.hero-brand-story,
.shoppable-copy .hero-brand-story,
.card p,
.note-card p,
.look-card p,
footer {
  font-size: 16px !important;
}


    /* CTA illustration swap: replace dark text block with pet illustration */
    .cta-illustration { padding: 64px 0 88px; }
    .cta-illustration-box {
      max-width: 820px;
      margin: 0 auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 22px;
      text-align: center;
    }
    .cta-illustration-img {
      width: min(100%, 760px);
      height: auto;
      display: block;
      object-fit: contain;
    }
    .cta-illustration-actions {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    .cta-illustration .btn-primary {
      background: var(--brown-deep);
      color: #fff;
    }
    .cta-illustration .btn-soft {
      background: #fff;
      border: 1px solid rgba(196,177,160,0.9);
      color: var(--brown-deep);
    }

    @media (max-width: 767px) {
      .cta-illustration { padding: 48px 0 64px; }
      .cta-illustration-box { gap: 18px; }
      .cta-illustration-img { width: min(100%, 560px); }
      .cta-illustration-actions { gap: 10px; }
      .cta-illustration-actions .btn { width: 100%; justify-content: center; }
    }

/* Footer refinement: brand copy on the left, three key links on one row */
footer {
  padding: 34px 0 44px !important;
}
footer .footer-brand-row {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 32px !important;
  flex-wrap: nowrap !important;
}
.footer-brand-copy {
  max-width: 650px !important;
  text-align: left !important;
  color: #111827 !important;
}
.footer-copyright {
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
  color: #111827 !important;
}
.footer-brand-copy p {
  margin: 8px 0 0 !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  letter-spacing: .02em !important;
  color: rgba(17,24,39,.72) !important;
}
.footer-primary-links {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 18px !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}
.footer-primary-links a {
  font-size: 16px !important;
  line-height: 1.5 !important;
  color: #111827 !important;
  text-decoration: none !important;
  border-bottom: 1px solid transparent !important;
  padding-bottom: 2px !important;
}
.footer-primary-links a:hover {
  border-bottom-color: #111827 !important;
}

/* Mobile proportion check/fix: prevent horizontal overflow without shrinking text below 16px */
html, body { max-width: 100% !important; overflow-x: hidden !important; }
img, video { max-width: 100%; height: auto; }

@media (max-width: 900px) {
  footer .footer-brand-row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 18px !important;
  }
  .footer-primary-links {
    width: 100% !important;
    justify-content: flex-start !important;
    gap: 18px !important;
  }
}

@media (max-width: 760px) {
  body .topbar .container.nav {
    width: 100% !important;
    max-width: none !important;
    padding: 10px 16px 12px !important;
    gap: 10px !important;
    box-sizing: border-box !important;
  }
  body .topbar .site-nav {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 18px !important;
    padding: 2px 0 5px !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  body .topbar .site-nav::-webkit-scrollbar { display: none; }
  body .topbar .site-nav a,
  body .topbar .site-nav a:hover::after {
    font-size: 16px !important;
    white-space: nowrap !important;
  }
  .container,
  .shoppable-hero .container,
  .product-page-section .container,
  footer .container {
    width: min(100% - 32px, 1180px) !important;
    max-width: calc(100% - 32px) !important;
  }
  .shoppable-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
  .shoppable-copy {
    max-width: 100% !important;
  }
  .shoppable-copy .hero-brand-story,
  .shoppable-copy .hero-brand-story-sub,
  .shoppable-copy p.hero-brand-story,
  .shoppable-copy p.hero-brand-story-sub {
    max-width: 100% !important;
    font-size: 16px !important;
  }
  .shoppable-visual {
    width: 100% !important;
    max-width: 100% !important;
  }
  .cta-illustration-img {
    width: 100% !important;
    max-width: 560px !important;
  }
}

@media (max-width: 520px) {
  footer {
    padding: 28px 0 36px !important;
  }
  .footer-brand-copy p {
    line-height: 1.72 !important;
  }
  .footer-primary-links {
    gap: 14px !important;
  }
  .footer-primary-links a {
    font-size: 16px !important;
  }
}

/* ===== 2026-05-16 requested 8-point refinement only ===== */
/* 1. 導覽列字體：桌機與手機都縮小，保留可點擊範圍 */
body .topbar .site-nav a,
body .topbar .site-nav a:hover::after {
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  font-weight: 500 !important;
  padding: 6px 10px !important;
  line-height: 1.5 !important;
  white-space: nowrap !important;
}

/* 2. 手機導覽列：保留左右滑，並加上淡出提示 */
@media (max-width: 760px) {
  body .topbar .site-nav {
    gap: 2px !important;
    padding: 2px 0 6px !important;
    mask-image: linear-gradient(90deg, transparent 0, #000 18px, #000 calc(100% - 28px), transparent 100%) !important;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 18px, #000 calc(100% - 28px), transparent 100%) !important;
  }

  body .topbar .site-nav a,
  body .topbar .site-nav a:hover::after {
    font-size: 11px !important;
    letter-spacing: 0.1em !important;
    padding: 6px 8px !important;
  }
}

/* 3. 結帳頁手機版：隱藏右下角 Cart / IG 浮動按鈕，避免遮住表單 */
@media (max-width: 760px) {
  body.checkout-page .shop-floating-actions,
  body:has(#checkout) .shop-floating-actions {
    display: none !important;
  }
}

/* 4. 結帳頁手機版：表單欄位高度加高，降低誤觸 */
@media (max-width: 760px) {
  #checkout input,
  #checkout select,
  #checkout textarea,
  #checkout .btn {
    min-height: 44px !important;
  }
}

/* 6. 手機版首頁大圖比例：稍微收斂高度，避免第一屏被圖片吃掉太多 */
@media (max-width: 520px) {
  .shoppable-visual .hero-main-photo img {
    max-height: 360px !important;
    object-fit: cover !important;
  }
}

/* 7. Footer 品牌介紹文字：桌機與平板盡量一行顯示，手機保留自然換行 */
@media (min-width: 761px) {
  .footer-brand-copy {
    max-width: none !important;
    flex: 1 1 auto !important;
  }

  .footer-brand-copy p {
    white-space: nowrap !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
  }
}

@media (max-width: 760px) {
  .footer-brand-copy p {
    white-space: normal !important;
  }
}

/* 8. 商品圖片標籤：字體縮小，位置改到圖片左下角 */
.product-img .tag,
.product-card .tag,
.product-card .badge,
.product-card .product-badge,
.product-badges {
  top: auto !important;
  left: 12px !important;
  bottom: 12px !important;
  right: auto !important;
}

.product-img .tag,
.product-card .tag,
.product-card .badge,
.product-card .product-badge {
  font-size: 12px !important;
  line-height: 1.35 !important;
  padding: 5px 9px !important;
  font-weight: 700 !important;
}

.product-badges {
  align-items: flex-end !important;
}


/* ===== 2026-05-16 JP/KR SELECT update ===== */
/* 導覽列：保留英文顯示、hover 顯示中文 */
body .topbar .site-nav a[href="past-popup.html"] {
  min-width: max-content !important;
}

/* 日韓連線頁：SEO 說明卡與主題卡片 */
#past-popup .jpkr-hero-card {
  grid-template-columns: minmax(0, 1.25fr) minmax(220px, .8fr) auto !important;
  gap: 22px !important;
  align-items: center !important;
  padding: 24px 0 18px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
#past-popup .jpkr-hero-copy p {
  max-width: 760px !important;
  color: #4f463f !important;
  line-height: 1.9 !important;
}
#past-popup .jpkr-mini {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  align-items: flex-start !important;
}
#past-popup .jpkr-mini span {
  display: inline-flex !important;
  width: auto !important;
  padding: 6px 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #4f463f !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
}
#past-popup .jpkr-select-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 22px 0 8px !important;
  padding: 0 !important;
}
#past-popup .jpkr-select-card {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid var(--line) !important;
  border-radius: 24px !important;
  background: #fffdf9 !important;
  box-shadow: var(--shadow-soft) !important;
  padding: 0 !important;
  min-height: auto !important;
}
#past-popup .jpkr-select-card-img {
  width: 100% !important;
  height: 260px !important;
  background: #f8f5ef !important;
  overflow: hidden !important;
}
#past-popup .jpkr-select-card-img img {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  cursor: default !important;
}
#past-popup .jpkr-select-card-body {
  padding: 16px 16px 18px !important;
}
#past-popup .jpkr-select-card-meta {
  margin-bottom: 8px !important;
  color: #8b817a !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  letter-spacing: .06em !important;
  font-weight: 500 !important;
}
#past-popup .jpkr-select-card h2 {
  margin: 0 0 8px !important;
  padding: 0 !important;
  font-size: 18px !important;
  line-height: 1.45 !important;
  letter-spacing: .02em !important;
  font-weight: 600 !important;
  color: #111827 !important;
}
#past-popup .jpkr-select-card-category {
  margin: 0 0 10px !important;
  color: #6f665f !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}
#past-popup .jpkr-status {
  display: inline-flex !important;
  width: auto !important;
  margin: 0 0 12px !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  background: #f8f5ef !important;
  border: 1px solid var(--line) !important;
  color: #4f463f !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}
#past-popup .jpkr-select-card p:last-child {
  margin: 0 !important;
  color: #4f463f !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

/* Lookbook 移除韓國代購後，兩張卡片在桌機維持漂亮比例 */
#lookbook .lookbook-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 820px !important;
}

@media (max-width: 900px) {
  #past-popup .jpkr-hero-card {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  #past-popup .jpkr-select-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  #past-popup .jpkr-select-grid,
  #lookbook .lookbook-grid {
    grid-template-columns: 1fr !important;
    max-width: none !important;
  }
  #past-popup .jpkr-select-card-img {
    height: 230px !important;
  }
  #past-popup .jpkr-select-card-meta,
  #past-popup .jpkr-select-card-category,
  #past-popup .jpkr-status,
  #past-popup .jpkr-select-card p:last-child {
    font-size: 16px !important;
  }
}

/* ===== 2026-05-16 JP/KR hero right-side layout trial ===== */
#past-popup .jpkr-hero-card {
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  gap: 26px !important;
  align-items: center !important;
}
#past-popup .jpkr-hero-copy p {
  max-width: none !important;
}
#past-popup .jpkr-mini {
  justify-self: end !important;
  min-width: 176px !important;
}
#past-popup .jpkr-mini span {
  font-size: 13px !important;
  line-height: 1.65 !important;
  letter-spacing: .04em !important;
  font-weight: 500 !important;
}
#past-popup .jpkr-hero-card > .btn,
#past-popup .jpkr-hero-card > .btn-soft {
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  white-space: nowrap !important;
  justify-self: end !important;
}

@media (max-width: 900px) {
  #past-popup .jpkr-hero-card {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  #past-popup .jpkr-mini {
    justify-self: start !important;
    min-width: 0 !important;
  }
  #past-popup .jpkr-mini span,
  #past-popup .jpkr-hero-card > .btn,
  #past-popup .jpkr-hero-card > .btn-soft {
    font-size: 13px !important;
  }
}


/* ===== 2026-05-16 content cards refinement: JP/KR, Lookbook, Pet Notes ===== */
/* JP/KR SELECT：右側標籤與 IG 按鈕集中成同一組 */
#past-popup .jpkr-hero-card{
  grid-template-columns:minmax(0, 1fr) auto !important;
  gap:32px !important;
  align-items:center !important;
}
#past-popup .jpkr-hero-aside{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:20px !important;
  justify-self:end !important;
  width:auto !important;
}
#past-popup .jpkr-hero-aside .jpkr-mini{
  justify-self:auto !important;
  min-width:0 !important;
  gap:9px !important;
  white-space:nowrap !important;
}
#past-popup .jpkr-hero-aside .jpkr-mini span{
  color:#9a7c63 !important;
  font-size:13px !important;
  line-height:1.7 !important;
  letter-spacing:.04em !important;
  font-weight:500 !important;
  padding:3px 0 !important;
}
#past-popup .jpkr-hero-aside .btn,
#past-popup .jpkr-hero-aside .btn-soft{
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:600 !important;
  letter-spacing:.04em !important;
  white-space:nowrap !important;
}

/* LOOKBOOK：新增頁面介紹文字，跟卡片保持同一個溫柔版面 */
#lookbook .lookbook-intro{
  max-width:820px !important;
  margin:12px 0 0 !important;
  color:#5f5650 !important;
  font-size:15px !important;
  line-height:1.9 !important;
  letter-spacing:.04em !important;
}

/* PET NOTES：改成跟 Lookbook 接近的圖片小卡入口 */
#knowledge .section-head h1{
  margin:0 !important;
  font-size:clamp(28px, 3.2vw, 42px) !important;
  font-weight:600 !important;
  letter-spacing:.04em !important;
  line-height:1.25 !important;
  color:#111827 !important;
}
#knowledge .section-head h1 .title-en{
  font-size:16px !important;
  font-weight:400 !important;
  color:#8b817a !important;
  letter-spacing:.08em !important;
  margin-left:10px !important;
}
#knowledge .pet-notes-intro{
  max-width:860px !important;
  margin-top:12px !important;
  color:#5f5650 !important;
  font-size:15px !important;
  line-height:1.9 !important;
  letter-spacing:.04em !important;
}
#knowledge .knowledge-photo-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:20px !important;
}
#knowledge .knowledge-photo-card{
  min-height:auto !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:24px !important;
  background:#fffdf9 !important;
  box-shadow:var(--shadow-soft) !important;
}
#knowledge .knowledge-photo-card:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 18px 38px rgba(90,74,64,.12) !important;
}
#knowledge .knowledge-card-img{
  width:100% !important;
  height:230px !important;
  overflow:hidden !important;
  background:#f8f5ef !important;
}
#knowledge .knowledge-card-img img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
#knowledge .knowledge-card-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
  padding:16px 16px 18px !important;
}
#knowledge .knowledge-photo-card small{
  margin:0 0 8px !important;
  color:#a58a72 !important;
  font-size:12px !important;
  line-height:1.4 !important;
  letter-spacing:.12em !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
}
#knowledge .knowledge-photo-card h3{
  margin:0 0 8px !important;
  color:#111827 !important;
  font-size:18px !important;
  line-height:1.45 !important;
  letter-spacing:.02em !important;
  font-weight:600 !important;
}
#knowledge .knowledge-photo-card p{
  margin:0 !important;
  color:#5f5650 !important;
  font-size:14px !important;
  line-height:1.75 !important;
}
#knowledge .knowledge-photo-card .card-link{
  margin-top:auto !important;
  padding-top:16px !important;
  color:#5a4a40 !important;
  font-size:14px !important;
  font-weight:600 !important;
  text-decoration:none !important;
}
@media (max-width: 980px){
  #past-popup .jpkr-hero-card{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  #past-popup .jpkr-hero-aside{
    justify-content:flex-start !important;
    justify-self:start !important;
    flex-wrap:wrap !important;
  }
  #knowledge .knowledge-photo-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px){
  #past-popup .jpkr-hero-aside{
    display:block !important;
  }
  #past-popup .jpkr-hero-aside .jpkr-mini{
    margin-bottom:12px !important;
    white-space:normal !important;
  }
  #knowledge .knowledge-photo-grid{
    grid-template-columns:1fr !important;
  }
  #knowledge .knowledge-card-img{
    height:220px !important;
  }
  #knowledge .section-head h1 .title-en,
  #lookbook .section-head h1 .title-en,
  #past-popup .past-popup-card h1 .title-en{
    display:inline-block !important;
    margin-top:4px !important;
  }
}


/* ===== 2026-05-16 unified page intro + nav order refinement ===== */
/* 導覽列保持同一套尺寸與 hover 中文顯示 */
body .topbar .site-nav a,
body .topbar .site-nav a:hover::after {
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  padding: 6px 10px !important;
  white-space: nowrap !important;
}

/* 主要頁面標題位置與字體大小統一 */
.page-main .section-head h1,
.page-main .products-title-row h1,
.page-main .past-popup-card h1,
.page-main .guide-final-head h1,
.page-main .checkout-head h1 {
  margin: 0 !important;
  font-size: clamp(32px, 3.35vw, 46px) !important;
  line-height: 1.18 !important;
  letter-spacing: .04em !important;
  font-weight: 600 !important;
  color: #111827 !important;
}

.page-main .section-head h1 .title-en,
.page-main .products-title-row h1 .title-en,
.page-main .past-popup-card h1 .title-en,
.page-main .guide-final-head h1 .title-en,
.page-main .checkout-head h1 .title-en {
  display: inline-block !important;
  margin-left: 14px !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
  letter-spacing: .08em !important;
  font-weight: 400 !important;
  color: #9b918a !important;
  vertical-align: middle !important;
}

/* JP/KR SELECT、Lookbook、Pet Notes：三頁使用一致的左文案＋右標籤版型 */
.furnest-page-intro,
#past-popup .furnest-page-intro,
#lookbook .furnest-page-intro,
#knowledge .furnest-page-intro {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 430px) !important;
  column-gap: 48px !important;
  row-gap: 16px !important;
  align-items: start !important;
  margin: 0 0 26px !important;
  padding: 22px 0 18px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.furnest-page-intro-copy,
#past-popup .furnest-page-intro-copy,
#lookbook .furnest-page-intro-copy,
#knowledge .furnest-page-intro-copy {
  min-width: 0 !important;
}

.furnest-page-intro-copy p,
#past-popup .furnest-page-intro-copy p,
#lookbook .lookbook-intro,
#knowledge .pet-notes-intro {
  max-width: none !important;
  margin: 12px 0 0 !important;
  color: #4f463f !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  letter-spacing: .04em !important;
}

.furnest-page-intro-aside,
#past-popup .furnest-page-intro-aside,
#lookbook .furnest-page-intro-aside,
#knowledge .furnest-page-intro-aside {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 20px !important;
  justify-self: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  padding-top: 6px !important;
}

.furnest-soft-tags,
#past-popup .furnest-soft-tags,
#lookbook .furnest-soft-tags,
#knowledge .furnest-soft-tags {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 9px !important;
  min-width: 188px !important;
  white-space: nowrap !important;
}

.furnest-soft-tags span,
#past-popup .furnest-soft-tags span,
#lookbook .furnest-soft-tags span,
#knowledge .furnest-soft-tags span {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  padding: 3px 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #9a7c63 !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
  letter-spacing: .04em !important;
  font-weight: 500 !important;
  text-align: left !important;
}

.furnest-intro-button,
#past-popup .furnest-page-intro-aside .btn,
#past-popup .furnest-page-intro-aside .btn-soft {
  flex: 0 0 auto !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  letter-spacing: .04em !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

/* 沒有右側標籤的頁面，也統一標題區下方空間 */
#products .section-head,
#shopping-note .section-head,
#checkout .section-head,
#guide .guide-final-head {
  margin-bottom: 26px !important;
}

@media (max-width: 980px) {
  .furnest-page-intro,
  #past-popup .furnest-page-intro,
  #lookbook .furnest-page-intro,
  #knowledge .furnest-page-intro {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
    padding: 18px 0 16px !important;
  }

  .furnest-page-intro-aside,
  #past-popup .furnest-page-intro-aside,
  #lookbook .furnest-page-intro-aside,
  #knowledge .furnest-page-intro-aside {
    justify-content: flex-start !important;
    align-items: flex-start !important;
    flex-wrap: wrap !important;
    padding-top: 0 !important;
  }

  .furnest-soft-tags,
  #past-popup .furnest-soft-tags,
  #lookbook .furnest-soft-tags,
  #knowledge .furnest-soft-tags {
    min-width: 0 !important;
    white-space: normal !important;
  }
}

@media (max-width: 760px) {
  body .topbar .site-nav {
    gap: 2px !important;
    padding: 2px 0 6px !important;
  }

  body .topbar .site-nav a,
  body .topbar .site-nav a:hover::after {
    font-size: 11px !important;
    letter-spacing: .1em !important;
    padding: 6px 8px !important;
  }

  .page-main .section-head h1,
  .page-main .products-title-row h1,
  .page-main .past-popup-card h1,
  .page-main .guide-final-head h1,
  .page-main .checkout-head h1 {
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1.22 !important;
  }

  .page-main .section-head h1 .title-en,
  .page-main .products-title-row h1 .title-en,
  .page-main .past-popup-card h1 .title-en,
  .page-main .guide-final-head h1 .title-en,
  .page-main .checkout-head h1 .title-en {
    margin-left: 8px !important;
    font-size: 14px !important;
  }

  .furnest-page-intro-copy p,
  #past-popup .furnest-page-intro-copy p,
  #lookbook .lookbook-intro,
  #knowledge .pet-notes-intro {
    font-size: 14px !important;
    line-height: 1.85 !important;
  }

  .furnest-page-intro-aside,
  #past-popup .furnest-page-intro-aside,
  #lookbook .furnest-page-intro-aside,
  #knowledge .furnest-page-intro-aside {
    display: block !important;
  }

  .furnest-soft-tags,
  #past-popup .furnest-soft-tags,
  #lookbook .furnest-soft-tags,
  #knowledge .furnest-soft-tags {
    gap: 6px !important;
    margin-bottom: 12px !important;
  }

  .furnest-soft-tags span,
  #past-popup .furnest-soft-tags span,
  #lookbook .furnest-soft-tags span,
  #knowledge .furnest-soft-tags span {
    font-size: 13px !important;
    line-height: 1.65 !important;
  }
}

/* 2026-05-16 refined: JP/KR、Lookbook、Pet Notes intro blocks use full-width text + subtle inline tags */
#past-popup .furnest-page-intro,
#lookbook .furnest-page-intro,
#knowledge .furnest-page-intro {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 30px !important;
  padding: 22px 0 18px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#past-popup .furnest-page-intro-copy,
#lookbook .furnest-page-intro-copy,
#knowledge .furnest-page-intro-copy {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

#past-popup .furnest-page-intro-copy p,
#lookbook .lookbook-intro,
#knowledge .pet-notes-intro {
  width: 100% !important;
  max-width: none !important;
  margin: 14px 0 0 !important;
  color: #4f463f !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  letter-spacing: .04em !important;
  overflow-wrap: anywhere !important;
}

#past-popup .furnest-inline-tags,
#lookbook .furnest-inline-tags,
#knowledge .furnest-inline-tags {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

#past-popup .furnest-inline-tags span,
#lookbook .furnest-inline-tags span,
#knowledge .furnest-inline-tags span {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #9a7c63 !important;
  font-size: 12px !important;
  line-height: 1.8 !important;
  letter-spacing: .04em !important;
  font-weight: 400 !important;
  text-align: left !important;
}

#past-popup .furnest-intro-button {
  display: inline-flex !important;
  width: auto !important;
  margin: 18px 0 0 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  letter-spacing: .04em !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

@media (max-width: 980px) {
  #past-popup .furnest-inline-tags,
  #lookbook .furnest-inline-tags,
  #knowledge .furnest-inline-tags {
    flex-wrap: wrap !important;
    row-gap: 6px !important;
    white-space: normal !important;
  }
}

@media (max-width: 760px) {
  #past-popup .furnest-page-intro,
  #lookbook .furnest-page-intro,
  #knowledge .furnest-page-intro {
    margin-bottom: 24px !important;
    padding: 18px 0 16px !important;
  }

  #past-popup .furnest-page-intro-copy p,
  #lookbook .lookbook-intro,
  #knowledge .pet-notes-intro {
    font-size: 14px !important;
    line-height: 1.85 !important;
  }

  #past-popup .furnest-inline-tags span,
  #lookbook .furnest-inline-tags span,
  #knowledge .furnest-inline-tags span {
    font-size: 12px !important;
    line-height: 1.7 !important;
  }
}

/* Ensure intro descriptions wrap inside the full container width */
#past-popup .furnest-page-intro-copy p,
#lookbook .lookbook-intro,
#knowledge .pet-notes-intro {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}


/* 2026-05-16 checkout simplification + JP/KR tag action alignment */
#past-popup .jpkr-tag-action-row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 14px 22px !important;
  width: 100% !important;
  margin: 14px 0 0 !important;
}
#past-popup .jpkr-tag-action-row .furnest-inline-tags {
  width: auto !important;
  margin: 0 !important;
  flex: 0 1 auto !important;
}
#past-popup .jpkr-tag-action-row .furnest-intro-button {
  margin: 0 !important;
  flex: 0 0 auto !important;
  align-self: center !important;
}
@media (max-width: 760px) {
  #past-popup .jpkr-tag-action-row {
    align-items: flex-start !important;
    gap: 10px 14px !important;
  }
  #past-popup .jpkr-tag-action-row .furnest-inline-tags {
    width: 100% !important;
  }
}

/* Checkout page: simpler top flow and lighter form grouping */
.checkout-head {
  display: block !important;
  margin-bottom: 24px !important;
}
.checkout-intro-text {
  max-width: 980px !important;
  margin: 14px 0 0 !important;
  color: #4f463f !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  letter-spacing: .04em !important;
}
.checkout-steps {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  max-width: 980px !important;
  margin: 18px 0 0 !important;
}
.checkout-step {
  padding: 12px 14px !important;
  border: 1px solid rgba(230, 219, 206, .78) !important;
  border-radius: 18px !important;
  background: rgba(255, 253, 249, .72) !important;
  color: #5f5650 !important;
  box-shadow: none !important;
}
.checkout-step strong {
  display: block !important;
  margin-bottom: 4px !important;
  color: #a58a72 !important;
  font-size: 11px !important;
  letter-spacing: .13em !important;
  font-weight: 700 !important;
}
.checkout-step span {
  display: block !important;
  color: #111827 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
}
.checkout-form-section-title {
  margin: 4px 0 -2px !important;
  padding-top: 6px !important;
  color: #9a7c63 !important;
  font-size: 13px !important;
  letter-spacing: .08em !important;
  font-weight: 600 !important;
}
#checkout .checkout-notice .notice {
  padding: 12px 14px !important;
  border-radius: 16px !important;
  background: rgba(248,245,239,.82) !important;
  color: #6f665f !important;
  font-size: 13px !important;
  line-height: 1.75 !important;
}
#checkoutForm > h3,
.checkout-side-card > h3,
.checkout-side-note h3 {
  font-size: 18px !important;
  line-height: 1.45 !important;
  letter-spacing: .04em !important;
}
.checkout-side-note p {
  margin: 0 0 8px !important;
  color: #5f5650 !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
}
#checkoutForm .btn[type="submit"] {
  margin-top: 6px !important;
}
@media (max-width: 760px) {
  .checkout-intro-text {
    font-size: 14px !important;
    line-height: 1.85 !important;
  }
  .checkout-steps {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .checkout-step {
    padding: 11px 13px !important;
  }
}

/* 2026-05-16 CL3: sticky compact navigation only */
html {
  scroll-padding-top: 74px !important;
}
body .topbar {
  position: sticky !important;
  top: 0 !important;
  z-index: 3000 !important;
  background: rgba(255, 255, 255, .94) !important;
  border-bottom: 1px solid rgba(17, 24, 39, .08) !important;
  box-shadow: 0 8px 24px rgba(17, 24, 39, .035) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  backdrop-filter: blur(14px) !important;
}
body .topbar .container.nav {
  width: min(1180px, calc(100% - 48px)) !important;
  max-width: 1180px !important;
  min-height: 56px !important;
  padding: 5px 0 !important;
  gap: clamp(18px, 2.6vw, 34px) !important;
  align-items: center !important;
}
body .topbar .brand {
  gap: 8px !important;
}
body .topbar .brand-mark {
  width: 38px !important;
  height: 38px !important;
  flex: 0 0 38px !important;
  flex-basis: 38px !important;
}
body .topbar .brand > span:not(.brand-mark) {
  font-size: 15px !important;
  line-height: 1.16 !important;
  letter-spacing: .02em !important;
}
body .topbar .brand small {
  margin-top: 0 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  letter-spacing: .045em !important;
}
body .topbar .site-nav {
  gap: 8px 16px !important;
}
body .topbar .site-nav a,
body .topbar .site-nav a:hover::after {
  padding: 4px 0 5px !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  letter-spacing: .115em !important;
}
body .topbar .site-nav a:hover::after {
  font-weight: 700 !important;
  letter-spacing: .04em !important;
}

@media (max-width: 1080px) {
  body .topbar .container.nav {
    width: min(1180px, calc(100% - 34px)) !important;
    gap: 18px !important;
  }
  body .topbar .brand-mark {
    width: 36px !important;
    height: 36px !important;
    flex-basis: 36px !important;
  }
  body .topbar .brand > span:not(.brand-mark) {
    font-size: 14px !important;
  }
  body .topbar .brand small {
    font-size: 12px !important;
  }
  body .topbar .site-nav {
    gap: 7px 13px !important;
  }
  body .topbar .site-nav a,
  body .topbar .site-nav a:hover::after {
    font-size: 11.5px !important;
  }
}

@media (max-width: 760px) {
  html {
    scroll-padding-top: 86px !important;
  }
  body .topbar .container.nav {
    width: min(1180px, calc(100% - 24px)) !important;
    min-height: auto !important;
    padding: 6px 0 7px !important;
    gap: 5px !important;
    flex-direction: column !important;
    justify-content: center !important;
  }
  body .topbar .brand {
    justify-content: center !important;
    gap: 7px !important;
  }
  body .topbar .brand-mark {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    flex-basis: 34px !important;
  }
  body .topbar .brand > span:not(.brand-mark) {
    font-size: 14px !important;
    line-height: 1.12 !important;
  }
  body .topbar .brand small {
    font-size: 12px !important;
    line-height: 1.18 !important;
  }
  body .topbar .site-nav {
    width: 100% !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    padding: 2px 2px 4px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    mask-image: linear-gradient(90deg, transparent 0, #000 15px, #000 calc(100% - 22px), transparent 100%) !important;
  }
  body .topbar .site-nav::-webkit-scrollbar {
    display: none !important;
  }
  body .topbar .site-nav a,
  body .topbar .site-nav a:hover::after {
    flex: 0 0 auto !important;
    padding: 3px 0 4px !important;
    font-size: 11px !important;
    line-height: 1.18 !important;
    letter-spacing: .09em !important;
  }
}

@media (max-width: 520px) {
  html {
    scroll-padding-top: 82px !important;
  }
  body .topbar .brand-mark {
    width: 32px !important;
    height: 32px !important;
    flex-basis: 32px !important;
  }
  body .topbar .brand > span:not(.brand-mark) {
    font-size: 13px !important;
  }
  body .topbar .brand small {
    font-size: 11.5px !important;
  }
}

/* 2026-05-16 CL3B: force fixed compact navigation
   修正 sticky 在部分環境沒有固定的問題，改用 fixed 並補 body top spacing。 */
html {
  scroll-padding-top: 74px !important;
}
body {
  padding-top: 66px !important;
}
body .topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
  display: block !important;
  background: rgba(255, 255, 255, .94) !important;
  border-bottom: 1px solid rgba(17, 24, 39, .08) !important;
  box-shadow: 0 8px 24px rgba(17, 24, 39, .035) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  backdrop-filter: blur(14px) !important;
  transform: none !important;
}
body .topbar .container.nav {
  min-height: 56px !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}
@media (max-width: 760px) {
  html {
    scroll-padding-top: 88px !important;
  }
  body {
    padding-top: 86px !important;
  }
  body .topbar .container.nav {
    min-height: auto !important;
    padding-top: 6px !important;
    padding-bottom: 7px !important;
  }
}
@media (max-width: 520px) {
  html {
    scroll-padding-top: 84px !important;
  }
  body {
    padding-top: 82px !important;
  }
}


/* 2026-05-16 Pet Notes folder-based cards + shared CTA illustration refinement */
#knowledge .pet-notes-grid .summary-empty {
  grid-column: 1 / -1 !important;
  padding: 36px 24px !important;
  text-align: center !important;
  color: #8b7a6f !important;
  background: rgba(255,255,255,.78) !important;
  border: 1px solid rgba(196,177,160,.55) !important;
  border-radius: 24px !important;
}
#knowledge .pet-note-card-button {
  appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
  text-align: left !important;
}
.pet-note-modal-backdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10050 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 26px !important;
  background: rgba(36, 30, 26, .42) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  backdrop-filter: blur(8px) !important;
}
.pet-note-modal-backdrop.open {
  display: flex !important;
}
.pet-note-modal {
  width: min(900px, 100%) !important;
  max-height: 88vh !important;
  overflow: auto !important;
  border-radius: 30px !important;
  background: #fffdf9 !important;
  box-shadow: 0 28px 70px rgba(55, 43, 35, .22) !important;
  border: 1px solid rgba(196,177,160,.56) !important;
}
.pet-note-modal-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 20px 22px 16px !important;
  background: rgba(255,253,249,.96) !important;
  border-bottom: 1px solid rgba(196,177,160,.42) !important;
}
.pet-note-modal-header small {
  display: block !important;
  margin-bottom: 6px !important;
  color: #a58a72 !important;
  font-size: 12px !important;
  letter-spacing: .12em !important;
}
.pet-note-modal-header h2 {
  margin: 0 !important;
  color: #06152f !important;
  font-size: clamp(22px, 3vw, 30px) !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
}
.pet-note-modal-close {
  flex: 0 0 auto !important;
  width: 38px !important;
  height: 38px !important;
  border: 1px solid rgba(196,177,160,.75) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #5a4a40 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
.pet-note-modal-body {
  padding: 22px !important;
}
.pet-note-modal-desc {
  margin: 0 0 18px !important;
  color: #5f5650 !important;
  line-height: 1.8 !important;
}
.pet-note-image-list {
  display: grid !important;
  gap: 18px !important;
}
.pet-note-image-list img {
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  display: block !important;
  border-radius: 18px !important;
  border: 1px solid rgba(196,177,160,.32) !important;
  box-shadow: 0 14px 34px rgba(90,74,64,.09) !important;
  background: #fff !important;
  cursor: zoom-in !important;
}

/* Shared CTA: shrink pet illustration to about 80% and move buttons to the right on desktop */
.cta-illustration-box {
  width: min(980px, 100%) !important;
  max-width: 980px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 58%) minmax(220px, 1fr) !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(28px, 6vw, 72px) !important;
  text-align: left !important;
}
.cta-illustration-img {
  width: 80% !important;
  max-width: 520px !important;
  justify-self: center !important;
}
.cta-illustration-actions {
  justify-self: start !important;
  align-self: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 12px !important;
}
.cta-illustration-actions .btn {
  white-space: nowrap !important;
}
@media (max-width: 760px) {
  .cta-illustration-box {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 18px !important;
    text-align: center !important;
  }
  .cta-illustration-img {
    width: min(92%, 520px) !important;
    max-width: 520px !important;
  }
  .cta-illustration-actions {
    width: 100% !important;
    align-items: center !important;
    justify-self: center !important;
    flex-direction: row !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
  }
  .cta-illustration-actions .btn {
    width: auto !important;
    min-width: 150px !important;
    justify-content: center !important;
  }
  .pet-note-modal-backdrop {
    padding: 14px !important;
  }
  .pet-note-modal {
    border-radius: 22px !important;
    max-height: 90vh !important;
  }
  .pet-note-modal-header {
    padding: 16px 16px 12px !important;
  }
  .pet-note-modal-body {
    padding: 16px !important;
  }
  .pet-note-image-list {
    gap: 14px !important;
  }
  .pet-note-image-list img {
    border-radius: 14px !important;
  }
}
#knowledge .pet-note-cover-button {
  appearance: none !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
  cursor: pointer !important;
  background: #f8f5ef !important;
  text-align: inherit !important;
}

/* 2026-05-16 Pet Notes modal: show one image at a time, no header overlap */
.pet-note-modal {
  width: min(920px, calc(100vw - 32px)) !important;
  max-height: 92vh !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}
.pet-note-modal-header {
  position: relative !important;
  top: auto !important;
  flex: 0 0 auto !important;
  background: #fffdf9 !important;
  z-index: 3 !important;
}
.pet-note-modal-body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 16px 22px 18px !important;
  display: flex !important;
  flex-direction: column !important;
}
.pet-note-modal-desc {
  flex: 0 0 auto !important;
  margin: 0 0 12px !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}
.pet-note-single-view {
  position: relative !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 56px !important;
}
.pet-note-image-frame {
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fffaf3 !important;
  border: 1px solid rgba(196,177,160,.32) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
}
.pet-note-image-frame img {
  display: block !important;
  max-width: 100% !important;
  max-height: calc(92vh - 190px) !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  cursor: zoom-in !important;
}
.pet-note-nav {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 2 !important;
  width: 40px !important;
  height: 40px !important;
  border: 1px solid rgba(196,177,160,.65) !important;
  border-radius: 999px !important;
  background: rgba(255,253,249,.92) !important;
  color: #6b584b !important;
  font-size: 30px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-shadow: 0 10px 24px rgba(90,74,64,.10) !important;
}
.pet-note-nav:disabled,
.pet-note-mobile-nav button:disabled {
  opacity: .32 !important;
  cursor: default !important;
}
.pet-note-nav-prev { left: 8px !important; }
.pet-note-nav-next { right: 8px !important; }
.pet-note-modal-footer {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  padding-top: 12px !important;
  color: #9a7c63 !important;
  font-size: 13px !important;
  letter-spacing: .06em !important;
}
.pet-note-mobile-nav {
  display: none !important;
  gap: 8px !important;
}
.pet-note-mobile-nav button {
  border: 1px solid rgba(196,177,160,.65) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #6b584b !important;
  padding: 7px 14px !important;
  font-size: 13px !important;
  cursor: pointer !important;
}
@media (max-width: 760px) {
  .pet-note-modal-backdrop {
    padding: 10px !important;
  }
  .pet-note-modal {
    width: calc(100vw - 20px) !important;
    max-height: 92vh !important;
  }
  .pet-note-modal-header {
    padding: 14px 14px 10px !important;
  }
  .pet-note-modal-header h2 {
    font-size: 22px !important;
  }
  .pet-note-modal-body {
    padding: 12px 12px 14px !important;
  }
  .pet-note-single-view {
    padding: 0 !important;
  }
  .pet-note-image-frame {
    border-radius: 16px !important;
  }
  .pet-note-image-frame img {
    max-height: calc(92vh - 190px) !important;
  }
  .pet-note-nav {
    display: none !important;
  }
  .pet-note-mobile-nav {
    display: flex !important;
  }
  .pet-note-modal-footer {
    justify-content: space-between !important;
  }
}


/* 2026-05-16 Pet Notes viewer option A: image-first, no title/header, no image frame */
.pet-note-image-modal {
  position: relative !important;
  width: min(980px, calc(100vw - 28px)) !important;
  max-height: 94vh !important;
  overflow: hidden !important;
  padding: clamp(10px, 1.4vw, 18px) 0 10px !important;
  border-radius: 30px !important;
  background: #fffdf9 !important;
}
.pet-note-image-modal .pet-note-modal-header,
.pet-note-image-modal .pet-note-modal-desc {
  display: none !important;
}
.pet-note-image-modal .pet-note-modal-close {
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  z-index: 8 !important;
  width: 38px !important;
  height: 38px !important;
  background: rgba(255,253,249,.94) !important;
  box-shadow: 0 10px 24px rgba(90,74,64,.10) !important;
}
.pet-note-image-modal .pet-note-modal-body {
  height: min(90vh, 920px) !important;
  padding: 10px clamp(18px, 4vw, 46px) 8px !important;
  overflow: hidden !important;
}
.pet-note-image-modal .pet-note-single-view {
  min-height: 0 !important;
  height: calc(100% - 42px) !important;
  padding: 0 54px !important;
}
.pet-note-image-modal .pet-note-image-frame {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.pet-note-image-modal .pet-note-image-frame img {
  max-width: 100% !important;
  max-height: calc(90vh - 70px) !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
.pet-note-image-modal .pet-note-modal-footer {
  min-height: 34px !important;
  padding-top: 8px !important;
}
@media (max-width: 760px) {
  .pet-note-image-modal {
    width: calc(100vw - 16px) !important;
    max-height: 94vh !important;
    border-radius: 22px !important;
    padding-top: 8px !important;
  }
  .pet-note-image-modal .pet-note-modal-close {
    top: 10px !important;
    right: 10px !important;
    width: 36px !important;
    height: 36px !important;
  }
  .pet-note-image-modal .pet-note-modal-body {
    height: 90vh !important;
    padding: 8px 10px 8px !important;
  }
  .pet-note-image-modal .pet-note-single-view {
    height: calc(100% - 48px) !important;
    padding: 0 !important;
  }
  .pet-note-image-modal .pet-note-image-frame img {
    max-width: 100% !important;
    max-height: calc(90vh - 74px) !important;
  }
  .pet-note-image-modal .pet-note-modal-footer {
    padding-top: 8px !important;
  }
}


/* 2026-05-17 NOTICE page only: warm important reminder banner */
#shopping-note .shopping-notice-alert{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  align-items:center !important;
  gap:14px !important;
  padding:18px 20px !important;
  min-height:92px !important;
  border:1px solid rgba(196,177,160,.78) !important;
  border-radius:22px !important;
  background:rgba(255,253,248,.88) !important;
  box-shadow:none !important;
  color:var(--brown) !important;
  font-family:var(--font-zh) !important;
}
#shopping-note .shopping-notice-alert-icon{
  width:44px !important;
  height:44px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  flex:0 0 auto !important;
  background:#f7ead8 !important;
  border:1px solid rgba(196,177,160,.45) !important;
  color:#6b584b !important;
  font-family:var(--font-zh) !important;
  font-size:21px !important;
  font-weight:600 !important;
  line-height:1 !important;
}
#shopping-note .shopping-notice-alert-copy h2{
  margin:0 0 4px !important;
  color:var(--brown-deep, var(--brown)) !important;
  font-family:var(--font-zh) !important;
  font-size:20px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
  letter-spacing:.045em !important;
}
#shopping-note .shopping-notice-alert-copy p{
  margin:0 !important;
  color:var(--brown) !important;
  font-family:var(--font-zh) !important;
  font-size:16px !important;
  line-height:1.75 !important;
  letter-spacing:.035em !important;
  font-weight:400 !important;
}
#shopping-note .shopping-cards .note-card{
  min-height:132px !important;
}
#shopping-note .shopping-cards .note-card p{
  font-size:16px !important;
  line-height:1.72 !important;
}
@media(max-width:900px){
  #shopping-note .shopping-notice-alert{
    min-height:auto !important;
    padding:16px 18px !important;
  }
}
@media(max-width:560px){
  #shopping-note .shopping-notice-alert{
    grid-template-columns:1fr !important;
    gap:8px !important;
    padding:16px !important;
  }
  #shopping-note .shopping-notice-alert-icon{
    width:38px !important;
    height:38px !important;
    font-size:18px !important;
  }
  #shopping-note .shopping-notice-alert-copy h2{
    font-size:18px !important;
  }
  #shopping-note .shopping-notice-alert-copy p{
    font-size:15px !important;
    line-height:1.72 !important;
  }
}

/* 2026-05-17 Pet Notes independent article pages */
#knowledge .pet-note-cover-link {
  color: inherit !important;
  text-decoration: none !important;
}
.pet-note-article-section {
  padding: 72px 0 84px !important;
  background: var(--cream, #fbf7ef) !important;
}
.pet-note-breadcrumb {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
  margin: 0 0 18px !important;
  color: #9a7c63 !important;
  font-size: 13px !important;
  letter-spacing: .04em !important;
}
.pet-note-breadcrumb a {
  color: #7a6454 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}
.pet-note-article-card {
  max-width: 980px !important;
  margin: 0 auto !important;
}
.pet-note-article-head {
  margin: 0 0 28px !important;
  padding: 0 !important;
}
.pet-note-article-head small {
  display: inline-block !important;
  margin: 0 0 10px !important;
  color: #a58a72 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}
.pet-note-article-head h1 {
  margin: 0 0 12px !important;
  color: #2f2822 !important;
  font-size: clamp(28px, 4vw, 42px) !important;
  line-height: 1.2 !important;
  letter-spacing: .04em !important;
}
.pet-note-article-head p {
  max-width: 880px !important;
  margin: 0 !important;
  color: #5f5650 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
}
.pet-note-article-tags {
  max-width: 980px !important;
  margin-top: 14px !important;
}
.pet-note-article-images {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 24px !important;
}
.pet-note-article-figure {
  margin: 0 !important;
}
.pet-note-article-figure img {
  display: block !important;
  width: min(100%, 860px) !important;
  margin: 0 auto !important;
  height: auto !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 44px rgba(90,74,64,.12) !important;
  cursor: zoom-in !important;
  background: #fffdf9 !important;
}
.pet-note-article-actions {
  display: flex !important;
  justify-content: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin: 34px 0 0 !important;
}
@media (max-width: 760px) {
  .pet-note-article-section {
    padding: 44px 0 58px !important;
  }
  .pet-note-article-head h1 {
    font-size: 26px !important;
  }
  .pet-note-article-head p {
    font-size: 14px !important;
    line-height: 1.8 !important;
  }
  .pet-note-article-images {
    gap: 16px !important;
  }
  .pet-note-article-figure img {
    width: 100% !important;
    border-radius: 18px !important;
  }
  .pet-note-article-actions .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* 2026-05-17 Pet Notes independent pages: compact gallery layout */
.pet-note-article-main .pet-note-article-card{
  max-width:1120px !important;
}

.pet-note-article-main .pet-note-article-head-split{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 230px !important;
  gap:28px !important;
  align-items:start !important;
  margin-bottom:30px !important;
}

.pet-note-article-main .pet-note-article-copy{
  min-width:0 !important;
}

.pet-note-article-main .pet-note-article-tags{
  width:100% !important;
  max-width:230px !important;
  min-width:0 !important;
  margin:26px 0 0 !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:8px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  white-space:normal !important;
}

.pet-note-article-main .pet-note-article-tags span{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#9a7c63 !important;
  font-size:12.5px !important;
  line-height:1.8 !important;
  letter-spacing:.04em !important;
  font-weight:500 !important;
  white-space:normal !important;
}

.pet-note-article-main .pet-note-article-images{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:18px !important;
  align-items:start !important;
}

.pet-note-article-main .pet-note-article-figure{
  margin:0 !important;
  padding:10px !important;
  border:1px solid rgba(198,171,145,.34) !important;
  border-radius:20px !important;
  background:#fffdf9 !important;
  box-shadow:0 10px 28px rgba(90,74,64,.08) !important;
}

.pet-note-article-main .pet-note-article-figure img{
  display:block !important;
  width:100% !important;
  height:420px !important;
  max-height:420px !important;
  margin:0 auto !important;
  object-fit:contain !important;
  border-radius:14px !important;
  box-shadow:none !important;
  cursor:zoom-in !important;
  background:#fffaf3 !important;
}

.article-gallery-lightbox .image-lightbox-nav{
  position:absolute !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:48px !important;
  height:48px !important;
  border:1px solid rgba(198,171,145,.42) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.94) !important;
  color:#6f5846 !important;
  font-size:34px !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  box-shadow:0 10px 24px rgba(0,0,0,.12) !important;
  z-index:100001 !important;
}

.article-gallery-lightbox .image-lightbox-prev{
  left:22px !important;
}

.article-gallery-lightbox .image-lightbox-next{
  right:22px !important;
}

.article-gallery-lightbox .image-lightbox-count{
  position:absolute !important;
  left:50% !important;
  bottom:18px !important;
  transform:translateX(-50%) !important;
  padding:6px 12px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.94) !important;
  color:#6f5846 !important;
  font-size:13px !important;
  letter-spacing:.04em !important;
  box-shadow:0 8px 20px rgba(0,0,0,.12) !important;
  z-index:100001 !important;
}

.article-gallery-lightbox img{
  max-width:min(92vw, 980px) !important;
  max-height:88vh !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
}

@media (max-width: 980px){
  .pet-note-article-main .pet-note-article-head-split{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .pet-note-article-main .pet-note-article-tags{
    max-width:none !important;
    margin:2px 0 0 !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    gap:6px 14px !important;
  }
  .pet-note-article-main .pet-note-article-images{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:14px !important;
  }
  .pet-note-article-main .pet-note-article-figure img{
    height:360px !important;
    max-height:360px !important;
  }
}

@media (max-width: 640px){
  .pet-note-article-main .pet-note-article-images{
    grid-template-columns:1fr !important;
  }
  .pet-note-article-main .pet-note-article-figure{
    padding:8px !important;
  }
  .pet-note-article-main .pet-note-article-figure img{
    height:auto !important;
    max-height:none !important;
    width:100% !important;
  }
  .article-gallery-lightbox{
    padding:18px 12px 56px !important;
  }
  .article-gallery-lightbox .image-lightbox-nav{
    width:42px !important;
    height:42px !important;
    font-size:30px !important;
  }
  .article-gallery-lightbox .image-lightbox-prev{
    left:10px !important;
  }
  .article-gallery-lightbox .image-lightbox-next{
    right:10px !important;
  }
  .article-gallery-lightbox img{
    max-width:94vw !important;
    max-height:82vh !important;
  }
}

/* HOME brand intro logo size adjustment only: keep navbar logo unchanged */
.shoppable-copy > .shoppable-logo{
  width:92px !important;
  height:92px !important;
  max-width:30% !important;
}

@media (max-width: 760px){
  .shoppable-copy > .shoppable-logo{
    width:86px !important;
    height:86px !important;
    max-width:30% !important;
  }
}


/* HOME middle brand logo: larger preview + clickable logo only */
.shoppable-copy > .shoppable-logo{
  width:184px !important;
  height:184px !important;
  max-width:30% !important;
  object-fit:contain !important;
  cursor:zoom-in !important;
}

@media (max-width: 760px){
  .shoppable-copy > .shoppable-logo{
    width:172px !important;
    height:172px !important;
    max-width:38% !important;
  }
}

@media (max-width: 480px){
  .shoppable-copy > .shoppable-logo{
    width:150px !important;
    height:150px !important;
    max-width:42% !important;
  }
}

/* HOME left brand intro vertical spacing refinement only
   Scope:首頁 HOME 左側品牌介紹區；不影響導覽列 Logo、右側輪播或其他頁面 */
@media (min-width: 981px){
  .shoppable-copy{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:14px !important;
  }
  .shoppable-copy > .shoppable-logo{
    margin:0 0 -34px 0 !important;
    flex:0 0 auto !important;
  }
  .shoppable-brand{
    margin:0 !important;
  }
  .shoppable-copy h1{
    margin:0 !important;
  }
  .shoppable-copy .hero-brand-story,
  .shoppable-copy .hero-brand-story-sub,
  .shoppable-copy p.hero-brand-story,
  .shoppable-copy p.hero-brand-story-sub{
    margin:0 !important;
    line-height:1.68 !important;
  }
}

@media (max-width: 980px){
  .shoppable-copy{
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
  }
  .shoppable-copy > .shoppable-logo{
    margin:0 auto -24px !important;
    flex:0 0 auto !important;
  }
  .shoppable-brand,
  .shoppable-copy h1,
  .shoppable-copy .hero-brand-story,
  .shoppable-copy .hero-brand-story-sub,
  .shoppable-copy p.hero-brand-story,
  .shoppable-copy p.hero-brand-story-sub{
    margin-top:0 !important;
    margin-bottom:0 !important;
  }
}

/* ===== Product detail mobile image ratio fix 2026-05-18 =====
   Scope: mobile/tablet product detail main image only.
   Keep desktop product detail, product cards, data logic and other pages unchanged. */
@media (max-width: 760px) {
  .product-detail-main-img {
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 58vh;
    border-radius: 20px;
  }

  .product-detail-main-img img {
    width: 100%;
    height: auto !important;
    max-height: 58vh;
    object-fit: contain !important;
  }
}

@media (min-width: 761px) and (max-width: 920px) {
  .product-detail-main-img {
    max-height: 60vh;
  }

  .product-detail-main-img img {
    object-fit: contain !important;
  }
}


/* ===== REAL mobile product gallery fix ===== */
@media (max-width: 760px){

  .product-detail-content,
  .product-detail-gallery,
  .product-detail-main-img{
    min-width:0;
  }

  .product-detail-gallery{
    overflow:hidden;
  }

  .product-detail-main-img{
    width:100%;
    overflow:hidden;
  }

  .product-detail-main-img img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
  }

}


/* ===== FINAL desktop + mobile stability fix ===== */

.product-detail-content,
.product-detail-gallery,
.product-detail-main-img{
  min-width:0;
}

.product-detail-content{
  grid-template-columns:minmax(0,1.08fr) minmax(320px,0.92fr);
}

.product-detail-gallery{
  overflow:hidden;
}

.product-detail-main-img{
  overflow:hidden;
}

.product-detail-main-img img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* ===== Mobile ===== */
@media (max-width:760px){

  .product-detail-content{
    grid-template-columns:1fr;
    gap:28px;
  }

  .product-detail-gallery{
    padding:14px;
    border-right:none;
    border-bottom:1px solid var(--line);
  }

  .product-detail-main-img{
    border-radius:20px;
  }

}


/* =========================================================
   FurNest R2 + Safari / Mobile Layout Stability Patch
   目標：保留原 layout，只補 overflow、grid shrink、圖片載入穩定性。
   ========================================================= */
html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

*, *::before, *::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
}

.product-detail-content,
.product-detail-gallery,
.product-detail-main-img,
.product-detail-info,
.product-page-content,
.product-page-gallery,
.product-page-info,
.shop-layout,
.shop-layout > *,
.product-grid,
#productGrid,
.product-card,
.product-img,
.hero-grid,
.hero-grid > *,
.lookbook-grid,
.look-card {
  min-width: 0 !important;
}

.product-detail-content {
  grid-template-columns: minmax(0, 55fr) minmax(0, 45fr) !important;
}

.product-detail-main-img {
  max-width: 100% !important;
  min-width: 0 !important;
}

.product-detail-main-img img,
#detailMainImage,
.product-page-main-img img,
#productPageImageWrap img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
}

.product-img img,
.product-card img {
  object-fit: cover !important;
  object-position: center !important;
}

.product-detail-thumbs,
.product-page-thumbs {
  max-width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.image-lightbox img {
  width: auto !important;
  height: auto !important;
  max-width: 94vw !important;
  max-height: 90vh !important;
  object-fit: contain !important;
}

@media (max-width: 760px) {
  .product-detail-backdrop {
    overflow-x: hidden !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .product-detail-modal,
  .product-detail-content,
  .product-detail-gallery,
  .product-detail-info,
  .product-detail-main-img {
    width: 100% !important;
    max-width: 100% !important;
  }

  .product-detail-content {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .product-detail-gallery,
  .product-detail-info {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .product-detail-main-img {
    aspect-ratio: 1 / 1 !important;
  }
}


/* FurNest Lookbook: 小模特兒登場 01-100 gallery */
#lookbook .lookbook-slider.lookbook-gallery {
  height: auto !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  padding: 12px !important;
  background: #f8f5ef !important;
}

#lookbook .lookbook-slider.lookbook-gallery img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  object-fit: cover !important;
  border-radius: 18px !important;
  display: block !important;
}

@media (max-width: 640px) {
  #lookbook .lookbook-slider.lookbook-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 10px !important;
  }
}


/* Lookbook 小模特兒登場：相簿式放大瀏覽 */
.image-lightbox .lookbook-lightbox-nav,
.image-lightbox .lookbook-lightbox-count{
  display:none;
}

.image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-nav{
  position:fixed;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border:1px solid rgba(198,171,145,.45);
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#6f5846;
  font-size:34px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(0,0,0,.14);
  z-index:5002;
}

.image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-prev{
  left:22px;
}

.image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-next{
  right:22px;
}

.image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-nav:disabled{
  opacity:.35;
  cursor:default;
}

.image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-count{
  position:fixed;
  left:50%;
  bottom:20px;
  transform:translateX(-50%);
  display:block;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#6f5846;
  font-size:13px;
  letter-spacing:.04em;
  box-shadow:0 8px 20px rgba(0,0,0,.12);
  z-index:5002;
}

@media (max-width: 640px){
  .image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-nav{
    width:42px;
    height:42px;
    font-size:30px;
  }
  .image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-prev{
    left:10px;
  }
  .image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-next{
    right:10px;
  }
  .image-lightbox.lookbook-daily-lightbox .lookbook-lightbox-count{
    bottom:14px;
  }
}


/* 商品獨立頁：預購標籤與返回按鈕移到商品圖片縮圖下方 */
.product-page-breadcrumb .product-page-back-btn{
  display:none !important;
}
.product-page-gallery-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:14px;
}
.product-page-gallery-actions .product-page-tag{
  margin:0;
}
.product-page-inline-back-btn{
  flex:0 0 auto;
}
@media (max-width:760px){
  .product-page-gallery-actions{
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
  }
  .product-page-inline-back-btn{
    align-self:flex-start;
  }
}

/* =========================================================
   FurNest SHOP 活動圖浮層
   目的：活動圖只像貼紙一樣浮在商品區右上角，不參與原本排版，
   不改動標題、說明文字、分類、商品卡片、grid 或分頁的位置。
   可調整變數：
   --shop-promo-width    圖片顯示寬度
   --shop-promo-offset-x 左右微調；0px = 右邊對齊商品區右側，負值往左，正值往右
   --shop-promo-offset-y 上下微調；0px = 底部對齊第一排商品卡片上緣，負值往上，正值往下
   ========================================================= */
:root {
  --shop-promo-width: clamp(380px, 35vw, 460px);
  --shop-promo-offset-x: 0px;
  --shop-promo-offset-y: 0px;

  /* 首頁精選商品區活動圖：預設和 SHOP 頁同位置邏輯，可獨立微調 */
  --home-promo-width: clamp(380px, 35vw, 460px);
  --home-promo-offset-x: 0px;
  --home-promo-offset-y: 0px;
}

.shop-promo-overlay {
  position: absolute !important;
  width: var(--shop-promo-width) !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 3 / 1;
  display: block !important;
  z-index: 30 !important;
  pointer-events: none !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
  filter: drop-shadow(0 12px 24px rgba(80, 58, 45, 0.12));
}

.shop-promo-overlay.is-hidden {
  display: none !important;
}

@media (max-width: 1180px) {
  .shop-promo-overlay {
    display: none !important;
  }
}



/* HOME HERO THUMBNAILS - 4 previews, desktop only.
   Only overrides the thumbnail stack; main hero, copy, product sections, and page layout stay unchanged. */
.hero-side-stack{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  width:var(--hero-thumb-stack-width, 128px) !important;
  gap:var(--hero-thumb-gap, 10px) !important;
  align-self:end !important;
}
.hero-side-stack img,
.hero-side-stack .hero-side-preview{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  height:auto !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:0 !important;
  opacity:.72 !important;
  transition:opacity .2s ease, transform .2s ease, box-shadow .2s ease !important;
}
.hero-side-stack .hero-side-preview.active{
  opacity:1 !important;
  box-shadow:0 0 0 2px rgba(17,24,39,.16) !important;
}
.hero-side-stack .hero-side-preview:hover{
  opacity:1 !important;
  transform:translateY(-1px) !important;
}
@media(max-width:1120px){
  .hero-side-stack{
    width:var(--hero-thumb-stack-width-md, 112px) !important;
    gap:var(--hero-thumb-gap-md, 8px) !important;
  }
}
@media(max-width:980px){
  .hero-side-stack{
    display:none !important;
  }
}


/* =========================================================
   手機版短版活動通知條
   桌機仍使用右上角貓狗活動圖；手機/小螢幕在精選商品說明文字
   與分類列中間顯示短版活動提醒。
   ========================================================= */
.mobile-promo-bar {
  display: none;
}

@media (max-width: 1180px) {
  .mobile-promo-bar {
    display: block;
    margin: 10px 0 14px;
  }

  .mobile-promo-bar-inner {
    width: 100%;
    min-height: 38px;
    padding: 8px 14px;
    border: 1px solid rgba(196, 143, 91, 0.32);
    border-radius: 999px;
    background: linear-gradient(90deg, #fff8ef 0%, #fff2df 55%, #f4eadb 100%);
    box-shadow: 0 6px 16px rgba(143, 101, 64, 0.08);
    color: var(--brown);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.35;
    text-align: center;
    letter-spacing: 0.02em;
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
  }
}

@media (max-width: 520px) {
  .mobile-promo-bar {
    margin: 8px 0 12px;
  }

  .mobile-promo-bar-inner {
    min-height: 36px;
    padding: 8px 12px;
    font-size: 13px;
    white-space: normal;
  }
}

/* =========================================================
   FurNest PRODUCTS PAGE - desktop compact product cards
   Scope: only /products list area (#products). 
   Goal: keep 4 columns, reduce card height/spacing so pagination is easier to see.
   Mobile, homepage featured grid, product detail modal, cart, promo overlays remain unchanged.
   ========================================================= */
@media (min-width: 901px) {
  #products {
    padding-top: clamp(44px, 4.6vw, 66px) !important;
    padding-bottom: clamp(32px, 3.6vw, 48px) !important;
  }

  #products .products-title-row {
    margin-bottom: 18px !important;
  }

  #products .section-seo-text {
    margin-top: 8px !important;
    line-height: 1.65 !important;
  }

  #products .shop-layout {
    gap: 24px !important;
  }

  #products .category-sidebar {
    gap: 6px !important;
  }

  #products .sidebar-category {
    padding: 7px 0 !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
  }

  #products #productGrid {
    gap: 14px 18px !important;
  }

  #products #productGrid .product-card {
    border-radius: 16px !important;
  }

  #products #productGrid .product-img,
  #products #productGrid .product-card img,
  #products #productGrid .product-card .product-image,
  #products #productGrid .product-card .card-image {
    height: 184px !important;
  }

  #products #productGrid .product-info,
  #products #productGrid .product-body,
  #products #productGrid .card-body,
  #products #productGrid .product-content,
  #products #productGrid .product-card > div:not(:first-child) {
    padding: 11px 13px 13px !important;
  }

  #products #productGrid .product-card h3,
  #products #productGrid .product-card .product-title {
    font-size: 15px !important;
    line-height: 1.38 !important;
    margin-bottom: 6px !important;
  }

  #products #productGrid .product-card .tag,
  #products #productGrid .product-card .badge,
  #products #productGrid .product-card .product-badge {
    font-size: 13px !important;
    padding: 4px 8px !important;
  }

  #products #productGrid .product-card .price,
  #products #productGrid .product-card .product-price {
    font-size: 15px !important;
    margin-top: 4px !important;
  }

  #products .product-pagination {
    margin-top: 18px !important;
  }
}

/* =========================================================
   FurNest HOME FEATURED PRODUCTS - desktop compact product cards
   Scope: only homepage featured products grid (#homeFeaturedGrid).
   Goal: make homepage product cards match /products compact desktop card size.
   Mobile, product page, detail modal, cart, checkout, hero, promo overlays remain unchanged.
   ========================================================= */
@media (min-width: 901px) {
  #homeFeaturedGrid {
    gap: 14px 18px !important;
  }

  #homeFeaturedGrid .product-card {
    border-radius: 16px !important;
  }

  #homeFeaturedGrid .product-img,
  #homeFeaturedGrid .product-card img,
  #homeFeaturedGrid .product-card .product-image,
  #homeFeaturedGrid .product-card .card-image {
    height: 184px !important;
  }

  #homeFeaturedGrid .product-info,
  #homeFeaturedGrid .product-body,
  #homeFeaturedGrid .card-body,
  #homeFeaturedGrid .product-content,
  #homeFeaturedGrid .product-card > div:not(:first-child) {
    padding: 11px 13px 13px !important;
  }

  #homeFeaturedGrid .product-card h3,
  #homeFeaturedGrid .product-card .product-title {
    font-size: 15px !important;
    line-height: 1.38 !important;
    margin-bottom: 6px !important;
  }

  #homeFeaturedGrid .product-card .tag,
  #homeFeaturedGrid .product-card .badge,
  #homeFeaturedGrid .product-card .product-badge {
    font-size: 13px !important;
    padding: 4px 8px !important;
  }

  #homeFeaturedGrid .product-card .price,
  #homeFeaturedGrid .product-card .product-price {
    font-size: 15px !important;
    margin-top: 4px !important;
  }

  .home-featured-more {
    margin-top: 18px !important;
  }
}

/* =========================================================
   FurNest PRODUCT DETAIL - desktop typography refinement
   Scope: shared product detail modal used by homepage featured products and /products.
   Goal: slightly reduce right-side text size so options are easier to see.
   Mobile, product cards, cart, checkout, hero, promo overlays remain unchanged.
   ========================================================= */
@media (min-width: 901px) {
  .product-detail-modal .product-detail-info {
    padding: 26px 32px !important;
    gap: 12px !important;
  }

  .product-detail-modal .product-detail-title {
    font-size: clamp(20px, 1.7vw, 25px) !important;
    line-height: 1.28 !important;
    letter-spacing: -0.01em !important;
  }

  .product-detail-modal .product-detail-price {
    font-size: 24px !important;
    line-height: 1.2 !important;
  }

  .product-detail-modal .product-detail-desc {
    font-size: 15px !important;
    line-height: 1.78 !important;
  }

  .product-detail-modal .product-option-group {
    gap: 6px !important;
    margin: 0 0 2px !important;
  }

  .product-detail-modal .product-option-group label {
    font-size: 15px !important;
    line-height: 1.35 !important;
  }

  .product-detail-modal .product-option-group select {
    font-size: 15px !important;
    padding: 10px 13px !important;
    border-radius: 15px !important;
  }

  .product-detail-modal .product-detail-actions {
    gap: 9px !important;
  }

  .product-detail-modal .product-detail-tag {
    font-size: 14px !important;
    padding: 6px 12px !important;
  }
}

