
  * { box-sizing: border-box; margin:0; padding:0; }
  html, body { background:#f7f1e6; font-family: Georgia, serif; color:#2b2622; scroll-behavior:smooth; }
  img { display:block; width:100%; height:100%; object-fit:cover; }
  a { text-decoration:none; }
  .ph { display:flex; align-items:center; justify-content:center; font-size:34px; color:#fff; }

  .view { display:none; }
  .view.active { display:block; }

  .topnav { display:flex; align-items:center; justify-content:space-between; padding:20px 40px; flex-wrap:wrap; gap:14px; background:#f7f1e6; position:sticky; top:0; z-index:50; border-bottom:1px solid #e6dcc6; }
  .brand { font-size:19px; letter-spacing:2.5px; background:linear-gradient(120deg,#b8862f,#e6c878,#a6813f); -webkit-background-clip:text; background-clip:text; color:transparent; cursor:pointer; border:none; text-transform:uppercase; }
  .navlinks { display:flex; gap:6px; flex-wrap:wrap; }
  .navlinks a { border:1px solid #c9b998; color:#5c5348; padding:8px 16px; border-radius:999px; font-size:11.5px; letter-spacing:0.5px; transition:all 0.25s; cursor:pointer; }
  .navlinks a:hover, .navlinks a.active { background:#2b2622; color:#f7f1e6; border-color:#2b2622; }

  .hero { min-height:88vh; display:flex; flex-direction:column; align-items:center; justify-content:center; position:relative; perspective:1400px; padding:50px 16px 60px; overflow:hidden; }
  .glow { position:absolute; border-radius:50%; filter:blur(70px); opacity:0.45; pointer-events:none; }
  .hero .glow1 { width:420px; height:420px; background:#f0c9c9; top:-140px; right:-120px; }
  .hero .glow2 { width:340px; height:340px; background:#e8dcb8; bottom:-100px; left:-100px; }
  .eyebrow { letter-spacing:5px; font-size:11px; color:#a6813f; margin-bottom:16px; text-transform:uppercase; z-index:3; position:relative; }
  h1.wordmark { font-size:clamp(42px,8vw,70px); letter-spacing:4px; font-weight:400; background:linear-gradient(120deg,#b8862f,#e6c878,#a6813f); -webkit-background-clip:text; background-clip:text; color:transparent; margin-bottom:8px; z-index:3; text-align:center; position:relative; text-transform:uppercase; }
  .hairline { width:70px; height:1px; background:#b8862f; margin:0 auto 20px; z-index:3; position:relative; }
  p.tagline { font-size:14.5px; color:#5c5348; max-width:420px; text-align:center; line-height:1.8; margin:0 auto 46px; z-index:3; position:relative; }

  .stage { position:relative; width:100%; max-width:680px; height:300px; margin:0 auto 42px; z-index:2; transition:transform 0.12s ease-out; }
  .piece {
    position:absolute; top:50%; left:50%; width:170px; height:170px; border-radius:22px;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px;
    cursor:pointer; box-shadow:0 20px 40px rgba(43,38,34,0.22), inset 0 1px 0 rgba(255,255,255,0.4);
    overflow:hidden; opacity:0; animation: pieceFadeIn 0.9s ease forwards;
    transition: transform 0.35s cubic-bezier(.2,.8,.2,1), box-shadow 0.35s;
    pointer-events:auto;
  }
  .piece img { position:absolute; inset:0; opacity:0.9; }
  .piece .tint { position:absolute; inset:0; background:rgba(43,38,34,0.28); }
  .piece .icon { font-size:34px; z-index:2; }
  .piece .label { font-size:11px; letter-spacing:1.5px; text-transform:uppercase; color:#fffdf9; opacity:0.95; text-align:center; z-index:2; text-shadow:0 1px 4px rgba(0,0,0,0.4); }
  .piece:hover { box-shadow:0 30px 60px rgba(184,134,47,0.35), inset 0 1px 0 rgba(255,255,255,0.5); }

  @keyframes pieceFadeIn { from { opacity:0; } to { opacity:1; } }

  #p1 { background:linear-gradient(160deg,#8a99a6,#5c6b78); animation-delay:0.05s; z-index:2;
        transform: translate(-50%,-50%) translateX(-185px) translateY(26px) scale(0.84); }
  #p2 { background:linear-gradient(160deg,#f0d7d9,#e8b4bc); animation-delay:0.2s; z-index:3;
        transform: translate(-50%,-50%) translateY(-16px) scale(1.14); }
  #p3 { background:linear-gradient(160deg,#c9895a,#8a5a34); animation-delay:0.35s; z-index:2;
        transform: translate(-50%,-50%) translateX(185px) translateY(26px) scale(0.84); }

  #p1:hover { z-index:20; transform: translate(-50%,-50%) translateX(-185px) translateY(6px) scale(1.02); }
  #p2:hover { z-index:20; transform: translate(-50%,-50%) translateY(-34px) scale(1.3); }
  #p3:hover { z-index:20; transform: translate(-50%,-50%) translateX(185px) translateY(6px) scale(1.02); }

  .cta { z-index:3; position:relative; padding:14px 36px; background:#2b2622; border:1px solid #2b2622; color:#f7f1e6; border-radius:999px; font-size:12px; letter-spacing:2px; cursor:pointer; display:inline-block; margin:0 auto; transition:all 0.3s; }
  .cta:hover { background:transparent; color:#2b2622; }
  .cta-wrap { text-align:center; z-index:3; position:relative; }
  .scroll-cue { text-align:center; margin-top:22px; font-size:10px; letter-spacing:2px; color:#a6813f; opacity:0.7; }


  .info-panel { position:fixed; bottom:24px; left:50%; transform:translateX(-50%) translateY(20px); background:#2b2622; border:1px solid #b8862f; padding:12px 22px; border-radius:12px; font-size:12.5px; color:#f7f1e6; opacity:0; pointer-events:none; transition:all 0.3s; text-align:center; max-width:300px; z-index:60; }
  .info-panel.show { opacity:1; transform:translateX(-50%) translateY(0); }

  .cat-hero { position:relative; padding:70px 20px 60px; text-align:center; overflow:hidden; }
  .cat-hero .glow1 { width:360px; height:360px; top:-120px; right:-100px; }
  .cat-eyebrow { letter-spacing:4px; font-size:11px; color:#a6813f; text-transform:uppercase; margin-bottom:14px; z-index:2; position:relative; }
  .cat-hero h1 { font-size:clamp(32px,6vw,48px); font-weight:400; margin-bottom:14px; z-index:2; position:relative; }
  .cat-hero p { font-size:14.5px; color:#5c5348; max-width:480px; margin:0 auto; line-height:1.8; z-index:2; position:relative; }

  .gallery { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; max-width:1100px; margin:0 auto; padding:0 20px 20px; }
  @media (max-width:800px){ .gallery{ grid-template-columns:repeat(2,1fr);} }
  .gallery .g-item { border-radius:14px; overflow:hidden; height:220px; box-shadow:0 12px 30px rgba(43,38,34,0.12); transition:transform 0.3s; }
  .gallery .g-item:hover { transform:translateY(-6px); }
  .gallery .g-item.tall { grid-row:span 2; height:100%; }
  .note { text-align:center; font-size:11px; color:#a99d86; padding-bottom:20px; font-family:Arial, sans-serif; }

  .story { background:#2b2622; color:#f7f1e6; padding:90px 20px; display:flex; justify-content:center; gap:50px; flex-wrap:wrap; align-items:center; }
  .story-photo { width:280px; height:340px; border-radius:18px; overflow:hidden; box-shadow:0 30px 60px rgba(0,0,0,0.4); }
  .story-text { max-width:420px; }
  .story-eyebrow { letter-spacing:4px; font-size:11px; color:#d9b872; text-transform:uppercase; margin-bottom:14px; }
  .story-text h2 { font-size:26px; font-weight:400; margin-bottom:18px; }
  .story-text p { font-size:14px; line-height:1.9; color:#d9cdb8; margin-bottom:16px; }
  .story-text .quote { font-style:italic; color:#e6c878; border-left:2px solid #b8862f; padding-left:16px; margin:20px 0; }

  .products { max-width:1100px; margin:0 auto; padding:90px 20px; }
  .section-head { text-align:center; margin-bottom:46px; }
  .section-eyebrow { letter-spacing:4px; font-size:11px; color:#a6813f; text-transform:uppercase; margin-bottom:12px; }
  .section-head h2 { font-size:28px; font-weight:400; }
  .prod-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
  @media (max-width:800px){ .prod-grid{ grid-template-columns:1fr 1fr;} }
  @media (max-width:520px){ .prod-grid{ grid-template-columns:1fr;} }
  .p-card { background:#fffdf9; border-radius:16px; overflow:hidden; box-shadow:0 10px 26px rgba(43,38,34,0.08); transition:transform 0.3s, box-shadow 0.3s; }
  .p-card:hover { transform:translateY(-8px); box-shadow:0 22px 40px rgba(43,38,34,0.16); }
  .p-photo { height:200px; }
  .p-body { padding:18px; }
  .p-body h3 { font-size:14.5px; margin-bottom:6px; }
  .p-body .price { font-size:13px; color:#a6813f; margin-bottom:14px; }
  .p-actions { display:flex; gap:8px; }
  .p-actions button { flex:1; padding:10px; border-radius:999px; font-size:11px; letter-spacing:0.5px; cursor:pointer; border:1px solid #2b2622; background:#2b2622; color:#f7f1e6; }
  .p-actions button.secondary { background:transparent; color:#2b2622; }

  .custom-cta { text-align:center; padding:80px 20px; background:#efe6d4; }
  .custom-cta h2 { font-size:26px; font-weight:400; margin-bottom:14px; }
  .custom-cta p { font-size:13.5px; color:#5c5348; max-width:420px; margin:0 auto 26px; line-height:1.7; }
  .custom-buttons { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
  .custom-buttons a { padding:12px 26px; border-radius:999px; font-size:12px; letter-spacing:1px; cursor:pointer; }
  .custom-buttons .primary { background:#2b2622; color:#f7f1e6; }

  footer { background:#efe6d4; padding:40px 20px; text-align:center; border-top:1px solid #e0d5b8; }
  footer .fmark { font-size:16px; letter-spacing:2.5px; color:#a6813f; margin-bottom:10px; text-transform:uppercase; }
  footer .flinks { display:flex; gap:18px; justify-content:center; margin-bottom:14px; flex-wrap:wrap; }
  footer .flinks a { font-size:12px; color:#5c5348; }
  footer .flinks a:hover { color:#2b2622; }
  footer .fcopy { font-size:11px; color:#a99d86; }

  /* ===== NAV ACTIONS (account + cart) ===== */
  .nav-actions { display:flex; gap:8px; align-items:center; }
  .icon-btn { border:1px solid #c9b998; background:transparent; color:#5c5348; padding:8px 14px; border-radius:999px; font-size:11.5px; font-family:Georgia,serif; letter-spacing:0.5px; cursor:pointer; transition:all 0.25s; position:relative; }
  .icon-btn:hover { background:#2b2622; color:#f7f1e6; border-color:#2b2622; }
  .cart-count { position:absolute; top:-6px; right:-6px; background:#b8862f; color:#fff; font-size:10px; min-width:18px; height:18px; border-radius:999px; display:flex; align-items:center; justify-content:center; padding:0 4px; font-family:Arial,sans-serif; }
  .cart-count.hidden { display:none; }

  /* ===== MOBILE NAV ===== */
  .hamburger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:8px; }
  .hamburger span { width:22px; height:2px; background:#2b2622; border-radius:2px; }
  @media (max-width:860px) {
    .navlinks { display:none; }
    .topnav .nav-actions .icon-btn:not(#accountBtn):not(.cart-btn) { display:none; }
    .hamburger { display:flex; }
    .mobile-panel { display:none; flex-direction:column; gap:4px; padding:14px 20px 18px; background:#f7f1e6; border-bottom:1px solid #e6dcc6; }
    .mobile-panel.open { display:flex; }
    .mobile-panel a { padding:12px 16px; border-radius:10px; color:#5c5348; font-size:14px; border-bottom:1px solid #eee2cc; }
    .mobile-panel a.active { background:#2b2622; color:#f7f1e6; border-radius:10px; }
  }
  @media (min-width:861px) { .mobile-panel { display:none !important; } }

  /* ===== MODAL (auth) ===== */
  .overlay { position:fixed; inset:0; background:rgba(30,22,14,0.55); backdrop-filter:blur(3px); opacity:0; pointer-events:none; transition:opacity 0.25s; z-index:100; }
  .overlay.show { opacity:1; pointer-events:auto; }
  .modal { position:fixed; top:50%; left:50%; transform:translate(-50%,-46%); width:calc(100% - 40px); max-width:420px; background:#fffdf9; border-radius:20px; padding:34px 30px; box-shadow:0 40px 80px rgba(43,38,34,0.35); opacity:0; pointer-events:none; transition:all 0.3s cubic-bezier(.2,.8,.2,1); z-index:101; max-height:90vh; overflow-y:auto; }
  .modal.show { opacity:1; pointer-events:auto; transform:translate(-50%,-50%); }
  .modal h2 { font-size:24px; font-weight:400; margin-bottom:8px; text-align:center; }
  .modal .sub { font-size:12.5px; color:#8a7f6c; text-align:center; margin-bottom:24px; line-height:1.6; }
  .modal .close { position:absolute; top:16px; right:20px; font-size:20px; color:#a99d86; cursor:pointer; background:none; border:none; line-height:1; }
  .tabs { display:flex; gap:6px; margin-bottom:22px; }
  .tabs button { flex:1; padding:10px; border-radius:999px; border:1px solid #c9b998; background:transparent; color:#5c5348; font-family:Georgia,serif; font-size:12px; cursor:pointer; transition:all 0.2s; }
  .tabs button.active { background:#2b2622; color:#f7f1e6; border-color:#2b2622; }

  .field { margin-bottom:16px; }
  .field label { display:block; font-size:11px; letter-spacing:1px; text-transform:uppercase; color:#a6813f; margin-bottom:7px; }
  .field input, .field textarea, .field select {
    width:100%; padding:12px 14px; border:1px solid #ddd0b8; border-radius:10px;
    font-family:Georgia,serif; font-size:13.5px; background:#fffdf9; color:#2b2622; resize:vertical;
  }
  .field input:focus, .field textarea:focus, .field select:focus { outline:none; border-color:#b8862f; }
  .field .hint { font-size:11px; color:#a99d86; margin-top:5px; font-family:Arial,sans-serif; }
  .field.error input, .field.error textarea { border-color:#c0563f; }
  .field .err-msg { font-size:11px; color:#c0563f; margin-top:5px; display:none; font-family:Arial,sans-serif; }
  .field.error .err-msg { display:block; }

  .btn-primary { width:100%; padding:13px; border-radius:999px; border:1px solid #2b2622; background:#2b2622; color:#f7f1e6; font-family:Georgia,serif; font-size:12.5px; letter-spacing:1.5px; cursor:pointer; transition:all 0.25s; }
  .btn-primary:hover { background:transparent; color:#2b2622; }
  .btn-ghost { width:100%; padding:13px; border-radius:999px; border:1px solid #c9b998; background:transparent; color:#5c5348; font-family:Georgia,serif; font-size:12.5px; letter-spacing:1px; cursor:pointer; margin-top:10px; }

  /* ===== CART DRAWER ===== */
  .drawer { position:fixed; top:0; right:0; height:100%; width:calc(100% - 40px); max-width:400px; background:#fffdf9; box-shadow:-20px 0 60px rgba(43,38,34,0.25); transform:translateX(100%); transition:transform 0.35s cubic-bezier(.2,.8,.2,1); z-index:101; display:flex; flex-direction:column; }
  .drawer.show { transform:translateX(0); }
  .drawer-head { padding:24px 24px 18px; border-bottom:1px solid #eee2cc; display:flex; justify-content:space-between; align-items:center; }
  .drawer-head h2 { font-size:20px; font-weight:400; }
  .drawer-body { flex:1; overflow-y:auto; padding:18px 24px; }
  .drawer-foot { padding:20px 24px 26px; border-top:1px solid #eee2cc; background:#faf5ea; }
  .cart-empty { text-align:center; color:#a99d86; font-size:13px; padding:50px 10px; line-height:1.7; }
  .cart-item { display:flex; gap:12px; padding:14px 0; border-bottom:1px solid #f0e7d5; align-items:center; }
  .cart-item .ci-thumb { width:56px; height:56px; border-radius:10px; overflow:hidden; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:22px; }
  .cart-item .ci-info { flex:1; min-width:0; }
  .cart-item .ci-info h4 { font-size:13px; font-weight:400; margin-bottom:3px; }
  .cart-item .ci-info .ci-price { font-size:12px; color:#a6813f; }
  .qty { display:flex; align-items:center; gap:8px; }
  .qty button { width:24px; height:24px; border-radius:6px; border:1px solid #ddd0b8; background:#fff; cursor:pointer; font-size:13px; color:#5c5348; line-height:1; }
  .qty span { font-size:12.5px; min-width:16px; text-align:center; }
  .ci-remove { background:none; border:none; color:#c0a98a; cursor:pointer; font-size:16px; padding:4px; }
  .cart-total { display:flex; justify-content:space-between; margin-bottom:8px; font-size:14px; }
  .cart-total.grand { font-size:17px; color:#2b2622; margin-bottom:16px; padding-top:10px; border-top:1px solid #e6d9be; }
  .ship-note { font-size:11px; color:#a99d86; margin-bottom:14px; line-height:1.6; font-family:Arial,sans-serif; }

  /* ===== TOAST ===== */
  .toast { position:fixed; bottom:26px; left:50%; transform:translateX(-50%) translateY(24px); background:#2b2622; color:#f7f1e6; padding:13px 24px; border-radius:12px; font-size:13px; opacity:0; pointer-events:none; transition:all 0.3s; z-index:200; border:1px solid #b8862f; text-align:center; max-width:340px; }
  .toast.show { opacity:1; transform:translateX(-50%) translateY(0); }

  /* ===== CUSTOM ORDER FORM ===== */
  .form-wrap { max-width:620px; margin:0 auto; padding:0 20px 90px; }
  .form-card { background:#fffdf9; border-radius:20px; padding:36px 32px; box-shadow:0 14px 36px rgba(43,38,34,0.1); }
  .form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
  @media (max-width:560px){ .form-row{ grid-template-columns:1fr; } }
  .filedrop { border:1.5px dashed #d3c2a2; border-radius:12px; padding:26px 16px; text-align:center; cursor:pointer; transition:all 0.2s; background:#fdfaf3; }
  .filedrop:hover { border-color:#b8862f; background:#faf5ea; }
  .filedrop .fd-icon { font-size:26px; margin-bottom:8px; }
  .filedrop .fd-text { font-size:12.5px; color:#8a7f6c; line-height:1.6; }
  .file-list { margin-top:12px; display:flex; flex-direction:column; gap:8px; }
  .file-chip { display:flex; align-items:center; gap:10px; background:#f4ecdd; padding:9px 12px; border-radius:9px; font-size:12px; color:#5c5348; }
  .file-chip .fc-name { flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .file-chip button { background:none; border:none; color:#b09878; cursor:pointer; font-size:14px; }

  .success-box { text-align:center; padding:40px 20px; }
  .success-box .s-icon { font-size:44px; margin-bottom:16px; }
  .success-box h3 { font-size:22px; font-weight:400; margin-bottom:12px; }
  .success-box p { font-size:13.5px; color:#5c5348; line-height:1.8; max-width:400px; margin:0 auto 22px; }

  .gift-box { border:1px solid #e6dcc6; border-radius:12px; padding:14px 16px; margin:4px 0 18px; background:#fdfaf3; }
  .gift-toggle { display:flex; gap:10px; align-items:flex-start; cursor:pointer; font-size:13px; color:#2b2622; line-height:1.5; }
  .gift-toggle input { width:auto; margin-top:3px; accent-color:#a6813f; }
  .gift-fields { display:none; margin-top:16px; }
  .gift-on .gift-fields { display:block; }
  .cart-gift { margin:10px 0 4px; font-size:12.5px; }
  .order-summary { background:#fdfaf3; border:1px solid #e6dcc6; border-radius:12px; padding:14px 16px; margin-bottom:18px; font-size:13px; color:#5c5348; line-height:1.8; }
  .order-summary .os-head { font-size:11px; letter-spacing:1px; text-transform:uppercase; color:#a6813f; margin-bottom:6px; }
  .form-fail { display:none; background:#fbecea; border:1px solid #e9c3bb; color:#8a3b2c; border-radius:12px; padding:14px 16px; margin-top:16px; font-size:13px; line-height:1.6; }
  .form-fail a { color:inherit; text-decoration:underline; }
  .backend-note { background:#fdf6e6; border:1px solid #ecdcb4; border-radius:12px; padding:16px 18px; margin-top:26px; font-size:12px; color:#7a6a4f; line-height:1.7; font-family:Arial,sans-serif; }
  .backend-note strong { color:#5c4e34; }

  /* ===== PRODUCT DETAIL PAGE ===== */
  .pdp { max-width:1100px; margin:0 auto; padding:30px 20px 70px; }
  .crumb { font-size:11.5px; color:#a99d86; margin-bottom:24px; letter-spacing:0.5px; }
  .crumb span { cursor:pointer; }
  .crumb span:hover { color:#2b2622; }
  .pdp-top { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
  @media (max-width:860px){ .pdp-top{ grid-template-columns:1fr; gap:32px; } }

  .pdp-main { border-radius:18px; overflow:hidden; height:440px; box-shadow:0 20px 44px rgba(43,38,34,0.14); background:#fff; display:flex; align-items:center; justify-content:center; font-size:78px; }
  @media (max-width:860px){ .pdp-main{ height:340px; } }
  .pdp-thumbs { display:flex; gap:10px; margin-top:12px; flex-wrap:wrap; }
  .pdp-thumb { width:74px; height:74px; border-radius:11px; overflow:hidden; cursor:pointer; border:2px solid transparent; transition:all 0.2s; display:flex; align-items:center; justify-content:center; font-size:26px; background:#f3ead9; }
  .pdp-thumb:hover { transform:translateY(-3px); }
  .pdp-thumb.active { border-color:#b8862f; }

  .pdp-cat { letter-spacing:4px; font-size:11px; color:#a6813f; text-transform:uppercase; margin-bottom:12px; }
  .pdp-info h1 { font-size:32px; font-weight:400; margin-bottom:12px; line-height:1.25; }
  .pdp-price { font-size:24px; color:#a6813f; margin-bottom:6px; }
  .pdp-stock { font-size:12px; color:#5c8a5c; margin-bottom:20px; }
  .pdp-stock.low { color:#c08040; }
  .pdp-desc { font-size:14px; line-height:1.9; color:#5c5348; margin-bottom:24px; }

  .rating-row { display:flex; align-items:center; gap:10px; margin-bottom:18px; }
  .stars { color:#d4a437; font-size:15px; letter-spacing:2px; }
  .rating-row .rcount { font-size:12px; color:#8a7f6c; }

  .pdp-highlights { list-style:none; margin-bottom:26px; }
  .pdp-highlights li { font-size:13.5px; color:#5c5348; padding:8px 0 8px 26px; position:relative; line-height:1.6; border-bottom:1px solid #f2e9d8; }
  .pdp-highlights li:before { content:"✓"; position:absolute; left:0; color:#b8862f; font-size:13px; }

  .pdp-buy { display:flex; gap:12px; align-items:center; margin-bottom:16px; flex-wrap:wrap; }
  .qty-picker { display:flex; align-items:center; gap:0; border:1px solid #ddd0b8; border-radius:999px; overflow:hidden; }
  .qty-picker button { width:40px; height:44px; border:none; background:#fffdf9; cursor:pointer; font-size:16px; color:#5c5348; }
  .qty-picker button:hover { background:#f3ead9; }
  .qty-picker span { min-width:38px; text-align:center; font-size:14px; }
  .pdp-buy .btn-primary { flex:1; min-width:190px; width:auto; }

  .pdp-ship { font-size:11.5px; color:#a99d86; line-height:1.7; font-family:Arial,sans-serif; }

  /* specs */
  .pdp-section { margin-top:64px; }
  .pdp-section h2 { font-size:22px; font-weight:400; margin-bottom:22px; }
  .spec-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 40px; }
  @media (max-width:700px){ .spec-grid{ grid-template-columns:1fr; } }
  .spec-row { display:flex; justify-content:space-between; gap:16px; padding:13px 0; border-bottom:1px solid #eee2cc; font-size:13.5px; }
  .spec-row .sk { color:#8a7f6c; }
  .spec-row .sv { color:#2b2622; text-align:right; }

  .care-box { background:#fdf9f0; border-radius:14px; padding:24px 26px; margin-top:26px; }
  .care-box h3 { font-size:15px; font-weight:400; margin-bottom:12px; color:#a6813f; letter-spacing:1px; text-transform:uppercase; }
  .care-box ul { list-style:none; }
  .care-box li { font-size:13px; color:#5c5348; padding:6px 0 6px 20px; position:relative; line-height:1.6; }
  .care-box li:before { content:"·"; position:absolute; left:6px; color:#b8862f; font-size:20px; line-height:1; }

  /* video */
  .video-box { background:#2b2622; border-radius:16px; height:260px; display:flex; flex-direction:column; align-items:center; justify-content:center; color:#d9cdb8; gap:10px; cursor:pointer; }
  .video-box .vb-play { width:54px; height:54px; border-radius:50%; border:1.5px solid #d9b872; display:flex; align-items:center; justify-content:center; font-size:18px; color:#e6c878; }
  .video-box .vb-text { font-size:12.5px; letter-spacing:1px; }

  /* reviews */
  .rev-summary { display:flex; gap:36px; align-items:center; flex-wrap:wrap; padding:24px 0 28px; border-bottom:1px solid #eee2cc; margin-bottom:8px; }
  .rev-big { text-align:center; }
  .rev-big .rb-num { font-size:42px; color:#2b2622; line-height:1; margin-bottom:6px; }
  .rev-big .rb-count { font-size:11.5px; color:#a99d86; margin-top:6px; }
  .rev-bars { flex:1; min-width:220px; }
  .rev-bar { display:flex; align-items:center; gap:10px; margin-bottom:6px; font-size:11.5px; color:#8a7f6c; }
  .rev-bar .rb-track { flex:1; height:6px; background:#eee2cc; border-radius:999px; overflow:hidden; }
  .rev-bar .rb-fill { height:100%; background:#d4a437; }

  .review { padding:22px 0; border-bottom:1px solid #f2e9d8; }
  .rev-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; flex-wrap:wrap; gap:8px; }
  .rev-head .rv-name { font-size:14px; }
  .rev-head .rv-date { font-size:11.5px; color:#a99d86; }
  .review .rv-stars { color:#d4a437; font-size:13px; letter-spacing:2px; margin-bottom:8px; }
  .review p { font-size:13.5px; color:#5c5348; line-height:1.8; }
  .rev-verified { font-size:10.5px; color:#5c8a5c; margin-left:8px; }

  .star-input { display:flex; gap:5px; font-size:24px; color:#ddd0b8; cursor:pointer; margin-bottom:6px; }
  .star-input span:hover, .star-input span.on { color:#d4a437; }

  /* ===== BADGES ON PRODUCT CARDS ===== */
  .p-card { position:relative; }
  .badges { position:absolute; top:10px; left:10px; display:flex; gap:5px; flex-wrap:wrap; z-index:5; }
  .badge { font-size:9.5px; letter-spacing:0.8px; text-transform:uppercase; padding:4px 9px; border-radius:999px; font-family:Arial,sans-serif; color:#fff; }
  .badge.new  { background:#5c8a5c; }
  .badge.best { background:#b8862f; }
  .badge.feat { background:#2b2622; }
  .badge.sold { background:#a05050; }

  /* ===== ADMIN ===== */
  .admin-wrap { max-width:1000px; margin:0 auto; padding:0 20px 90px; }
  .admin-bar { display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; background:#2b2622; color:#f7f1e6; padding:16px 22px; border-radius:14px; margin-bottom:26px; }
  .admin-bar .ab-title { font-size:15px; letter-spacing:1px; }
  .admin-bar .ab-user { font-size:11.5px; color:#d9b872; }
  .admin-bar button { padding:9px 18px; border-radius:999px; border:1px solid #d9b872; background:transparent; color:#e6c878; font-family:Georgia,serif; font-size:11.5px; cursor:pointer; }
  .admin-bar button:hover { background:#d9b872; color:#2b2622; }
  .admin-bar button.solid { background:#d9b872; color:#2b2622; }

  .admin-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:26px; }
  @media (max-width:700px){ .admin-stats{ grid-template-columns:1fr 1fr; } }
  .stat { background:#fffdf9; border-radius:12px; padding:18px; text-align:center; box-shadow:0 8px 20px rgba(43,38,34,0.07); }
  .stat .sn { font-size:24px; color:#2b2622; margin-bottom:4px; }
  .stat .sl { font-size:10.5px; letter-spacing:1px; text-transform:uppercase; color:#a6813f; }

  .admin-row { display:flex; align-items:center; gap:14px; background:#fffdf9; border-radius:12px; padding:12px 16px; margin-bottom:10px; box-shadow:0 6px 16px rgba(43,38,34,0.06); flex-wrap:wrap; }
  .ar-thumb { width:52px; height:52px; border-radius:9px; overflow:hidden; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:20px; background:#f3ead9; }
  .ar-info { flex:1; min-width:150px; }
  .ar-info h4 { font-size:13.5px; font-weight:400; margin-bottom:3px; }
  .ar-meta { font-size:11px; color:#a99d86; }
  .ar-badges { display:flex; gap:4px; flex-wrap:wrap; margin-top:5px; }
  .ar-actions { display:flex; gap:5px; flex-wrap:wrap; }
  .ar-actions button { padding:7px 12px; border-radius:8px; border:1px solid #ddd0b8; background:#fff; color:#5c5348; font-size:11px; cursor:pointer; font-family:Georgia,serif; }
  .ar-actions button:hover { background:#f3ead9; }
  .ar-actions button.danger { color:#a05050; border-color:#e0c0c0; }
  .ar-actions button.danger:hover { background:#f8ecec; }

  .admin-section-head { display:flex; justify-content:space-between; align-items:center; margin:30px 0 14px; flex-wrap:wrap; gap:10px; }
  .admin-section-head h3 { font-size:17px; font-weight:400; }
  .admin-section-head .cat-label { font-size:11px; letter-spacing:2px; text-transform:uppercase; color:#a6813f; }

  .chk-row { display:flex; gap:18px; flex-wrap:wrap; }
  .chk { display:flex; align-items:center; gap:7px; font-size:13px; color:#5c5348; cursor:pointer; }
  .chk input { width:auto; }

  .login-card { max-width:400px; margin:40px auto; }

  /* ===== COMING SOON ===== */
  .soon-tag {
    position:absolute; top:12px; left:50%; transform:translateX(-50%);
    background:rgba(255,253,249,0.92); color:#5c5348; font-family:Arial,sans-serif;
    font-size:8.5px; letter-spacing:1px; text-transform:uppercase;
    padding:4px 10px; border-radius:999px; z-index:3; white-space:nowrap;
  }
  .soon-wrap { max-width:620px; margin:0 auto; padding:10px 20px 90px; }
  .soon-card { background:#fffdf9; border-radius:20px; padding:48px 36px; text-align:center; box-shadow:0 14px 36px rgba(43,38,34,0.1); }
  .soon-icon { font-size:52px; margin-bottom:14px; }
  .soon-label { display:inline-block; background:#2b2622; color:#e6c878; font-family:Arial,sans-serif; font-size:10px; letter-spacing:2px; text-transform:uppercase; padding:6px 16px; border-radius:999px; margin-bottom:20px; }
  .soon-card h2 { font-size:24px; font-weight:400; margin-bottom:14px; }
  .soon-card p { font-size:14px; color:#5c5348; line-height:1.9; max-width:420px; margin:0 auto 28px; }
  .soon-form { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
  .soon-form input { padding:13px 18px; border-radius:999px; border:1px solid #ddd0b8; font-family:Georgia,serif; font-size:13.5px; width:260px; background:#fffdf9; }
  .soon-form input:focus { outline:none; border-color:#b8862f; }
  .soon-done { font-size:14px; color:#5c8a5c; padding:14px; }
  .soon-alt { margin-top:26px; font-size:13px; color:#8a7f6c; line-height:1.8; }
  .soon-alt a { color:#a6813f; cursor:pointer; text-decoration:underline; }

  /* ===== PHILOSOPHY BAND ===== */
  .philosophy { background:#2b2622; color:#f7f1e6; padding:82px 20px; }
  .phil-inner { max-width:1000px; margin:0 auto; text-align:center; }
  .phil-lead { font-size:clamp(22px,3.4vw,32px); font-weight:400; line-height:1.55; margin-bottom:24px; color:#f9ecdb; }
  .phil-body { font-size:14.5px; line-height:2; color:#c9bda8; max-width:560px; margin:0 auto; }
  .phil-body em { color:#e6c878; font-style:italic; }

  @media (max-width:820px){ .phil-grid{ grid-template-columns:1fr; gap:18px; } }

  .phil-close { margin-top:34px; font-size:11px; letter-spacing:2px; text-transform:uppercase; font-style:normal; font-size:17px; font-style:italic; color:#e6c878; letter-spacing:0.5px; }

  /* ---- marketing sections ---- */
  .home-sec { max-width:1000px; margin:0 auto; padding:72px 20px; text-align:center; }
  .sec-eyebrow { letter-spacing:4px; font-size:11px; color:#a6813f; text-transform:uppercase; margin-bottom:14px; }
  .home-sec h2 { font-size:clamp(22px,3.2vw,30px); font-weight:400; line-height:1.4; margin-bottom:16px; }
  .sec-lead { font-size:14.5px; line-height:1.9; color:#5c5348; max-width:640px; margin:0 auto 34px; }
  .what-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; text-align:left; }
  @media (max-width:760px){ .what-grid{ grid-template-columns:1fr; } }
  .what-card { display:block; background:#fffdf9; border-radius:16px; padding:24px; box-shadow:0 10px 26px rgba(43,38,34,0.08); color:inherit; transition:transform .3s; cursor:pointer; }
  .what-card:hover { transform:translateY(-5px); }
  .what-card h3 { font-size:16px; font-weight:400; margin-bottom:8px; color:#2b2622; }
  .what-card p { font-size:13px; line-height:1.7; color:#5c5348; }
  .moments { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; text-align:left; margin-top:34px; }
  @media (max-width:860px){ .moments{ grid-template-columns:1fr; } }
  .moment { border-top:1px solid #b8862f; padding-top:16px; }
  .m-when { font-size:17px; color:#2b2622; margin-bottom:10px; }
  .moment p { font-size:13.5px; line-height:1.9; color:#5c5348; }
  .moments-wrap { background:#efe6d4; }
  .faq { max-width:720px; margin:30px auto 0; text-align:left; }
  .faq details { border-bottom:1px solid #e0d5b8; padding:16px 4px; }
  .faq summary { cursor:pointer; font-size:15px; color:#2b2622; list-style:none; }
  .faq summary::-webkit-details-marker { display:none; }
  .faq summary:after { content:"+"; float:right; color:#b8862f; }
  .faq details[open] summary:after { content:"–"; }
  .faq p { font-size:13.5px; line-height:1.9; color:#5c5348; margin-top:10px; }
  .scarce { max-width:620px; margin:0 auto; font-size:14px; line-height:1.9; color:#5c5348; text-align:center; padding:0 20px 70px; }
  .no-reviews { font-size:13.5px; color:#8a7f6c; line-height:1.8; margin-bottom:8px; }

  .snav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:14px 22px;background:#f7f1e6;border-bottom:1px solid #e6dcc6;position:sticky;top:0;z-index:50}
  .snav .brand{font-size:19px;letter-spacing:2.5px;background:linear-gradient(120deg,#b8862f,#e6c878,#a6813f);-webkit-background-clip:text;background-clip:text;color:transparent}
  .snav .links{display:flex;gap:6px;flex-wrap:wrap}
  .snav .links a{border:1px solid #c9b998;color:#5c5348;padding:7px 14px;border-radius:999px;font-size:11.5px}
  .snav .links a:hover,.snav .links a.on{background:#2b2622;color:#f7f1e6;border-color:#2b2622}
  .swrap{max-width:1100px;margin:0 auto;padding:36px 20px 70px}
  .crumb a{color:#a99d86}.crumb a:hover{color:#2b2622}
  .btnlink{display:inline-block;padding:13px 30px;border-radius:999px;border:1px solid #2b2622;background:#2b2622;color:#f7f1e6;font-size:12px;letter-spacing:1px}
  .btnlink:hover{background:transparent;color:#2b2622}
  .prose{max-width:680px;margin:0 auto;font-size:14.5px;line-height:2;color:#5c5348}
  .prose h2{font-size:24px;font-weight:400;color:#2b2622;margin:42px 0 12px}
  .prose p{margin-bottom:16px}
  .p-card{display:block;color:inherit}
  .prose a{color:#a6813f;border-bottom:1px solid #e0d5b8}
  .prose a:hover{color:#2b2622}
