
.magneti-plugin{display:block;width:100%;max-width:none;}
body.magneti-plugin-standalone{margin:0;background:#f4f1eb;overflow-x:hidden;}
body.magneti-plugin-standalone .magneti-plugin{min-height:100vh;}

.magneti-plugin *,.magneti-plugin *::before,.magneti-plugin *::after{box-sizing:border-box;margin:0;padding:0;}
.magneti-plugin{
  --bg:#f4f1eb;
  --white:#fff;
  --off:#f8f6f1;
  --border:#e4dfd5;
  --text:#17150e;
  --muted:#9a9388;
  --gold:#c8a76b;
  --gold-dk:#a5864a;
  --gold-lt:#f2e8d5;
  --green:#3d9e68;
  --navy:#1a2744;
  --safe-b:env(safe-area-inset-bottom,0px);
}
.magneti-plugin{
  font-family:'DM Sans',sans-serif;
  background:var(--bg);
  color:var(--text);
  -webkit-tap-highlight-color:transparent;
  overflow-x:hidden;
}

/* ── NOTIF ── */
.notif{
  position:fixed;top:62px;left:50%;
  transform:translateX(-50%) translateY(-14px);
  opacity:0;pointer-events:none;
  background:var(--text);color:#fff;
  padding:10px 20px;border-radius:12px;
  font-size:13px;font-weight:600;
  transition:all .3s cubic-bezier(.34,1.56,.64,1);
  z-index:9999;white-space:nowrap;
  box-shadow:0 4px 20px rgba(0,0,0,.2);
}
.notif.on{transform:translateX(-50%) translateY(0);opacity:1;}

/* ── SHARED MAGNET ELEMENTS ── */
.mag-s{
  width:var(--mw);height:var(--mh);
  border-radius:0;
  overflow:hidden;background:linear-gradient(180deg,#fffefc 0%,#f4edde 100%);position:relative;
  border:1px solid #ddd5c8;
  padding:7px;
  box-shadow:0 14px 28px rgba(33,27,17,.18),0 2px 0 rgba(255,255,255,.52) inset,0 -2px 0 rgba(0,0,0,.05) inset;
}
.mag-s canvas{width:100%;height:100%;display:block;}
.mag-s img{width:100%;height:100%;display:block;object-fit:cover;border:1px solid rgba(210,205,196,.42);background:#f0ece6;}
.mag-r{
  width:var(--mw);height:var(--mh);
  border-radius:0;
  background:linear-gradient(180deg,#fffdf8 0%,#f4edde 100%);position:relative;overflow:hidden;
  border:1px solid #d7cfbf;
  box-shadow:0 16px 34px rgba(33,27,17,.18),0 1px 0 rgba(255,255,255,.82) inset,0 -2px 0 rgba(120,97,53,.06) inset;
}
.mag-r::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.18),transparent 38%,rgba(119,99,61,.05) 100%);pointer-events:none;z-index:2;}
.r-photo{
  position:absolute;
  top:calc(var(--mw)*0.073);
  left:calc(var(--mw)*0.073);
  right:calc(var(--mw)*0.073);
  height:calc(var(--mh)*0.735);
  border-radius:0;
  overflow:hidden;background:#ddd;
  box-shadow:0 0 0 1px rgba(84,71,45,.10);
}
.r-photo canvas{width:100%;height:100%;display:block;}
.r-photo img{width:100%;height:100%;display:block;object-fit:cover;}
.r-cap{
  position:absolute;bottom:0;left:0;right:0;
  height:calc(var(--mh)*0.255);
  background:linear-gradient(180deg,#fbf8f0 0%,#f1e9da 100%);
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  gap:2px;padding:4px 10px 7px;
}
.rc1{
  font-size:calc(var(--mw)*0.078);
  font-weight:700;color:#3b2b1d;
  text-align:center;
  max-width:100%;
  width:100%;
  overflow:hidden;
  text-overflow:clip;
  white-space:normal;
  word-break:break-word;
  overflow-wrap:anywhere;
  letter-spacing:.01em;
  line-height:1.04;
  font-family:'Caveat',cursive;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.rc2{
  font-size:calc(var(--mw)*0.05);
  color:#8c7c62;text-align:center;
  max-width:100%;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;
}
.mag-shine{
  position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.06) 18%,transparent 42%,rgba(0,0,0,.04) 100%);
  pointer-events:none;z-index:5;
  border-radius:inherit;
}
.mag-s::after,.mag-r::after{
  content:'';position:absolute;left:0;right:0;top:0;height:12%;
  background:linear-gradient(180deg,rgba(255,255,255,.22),transparent);
  pointer-events:none;z-index:4;
}

/* ════════════════════════════════════
   DESKTOP (768px+)
════════════════════════════════════ */
.desktop{display:none;}


/* ════════════════════════════════════
   MOBILE PAGE
════════════════════════════════════ */

.mobile-wrap{display:block;width:100%;max-width:100%;padding-bottom:16px;overflow-x:hidden;}

/* tier shared styles (mobile + desktop) */
.d-tier-info{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.d-tier-title{width:100%;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9a9388;margin-bottom:2px;}
.tier-row{display:flex;align-items:center;gap:6px;font-size:14px;background:#fff;border:1.5px solid #e4dfd5;border-radius:10px;padding:8px 14px;white-space:nowrap;flex:1 1 0;min-width:0;justify-content:center;}
.tier-qty{font-weight:800;color:#17150e;font-size:15px;}
.tier-price{color:#a5864a;font-weight:700;font-size:14px;}
.tier-pct{color:#3d9e68;font-weight:700;font-size:13px;}
.tier-row.tier-active{border-color:#c9971f;background:#fdf6e8;box-shadow:0 0 0 1px #c9971f;}
.m-tier-box{background:#f8f6f1;border:1px solid #e4dfd5;border-radius:12px;padding:10px 12px;margin-top:12px;}
.m-tier-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9a9388;margin-bottom:8px;}
.m-tier-grid{display:flex;gap:6px;}
.m-tier-cell{flex:1;text-align:center;background:#fff;border:1px solid #e4dfd5;border-radius:10px;padding:8px 4px;}
.m-tier-cell.tier-active{border-color:#c9971f;background:#fdf6e8;box-shadow:0 0 0 1px #c9971f;}
.m-tier-qty{font-size:12px;font-weight:700;color:#17150e;}
.m-tier-price{font-size:17px;font-weight:800;color:#a5864a;line-height:1.2;}
.m-tier-unit{font-size:9px;color:#9a9388;}
.m-tier-pct{font-size:11px;font-weight:700;color:#3d9e68;margin-top:2px;}

/* how it works steps */
.steps-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.step-card{text-align:center;background:linear-gradient(160deg,#fdfbf6 0%,#f5f0e6 100%);border:1.5px solid #e4dfd5;border-radius:14px;padding:18px 8px 14px;position:relative;box-shadow:0 2px 8px rgba(17,24,39,.04);transition:transform .15s,box-shadow .15s;}
.step-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(201,151,31,.12);}
.step-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#c9971f,#e2b84a);color:#fff;font-size:12px;font-weight:800;margin-bottom:6px;box-shadow:0 2px 6px rgba(201,151,31,.3);}
.step-icon{font-size:30px;margin-bottom:8px;line-height:1;}
.step-label{font-size:12px;font-weight:600;color:#17150e;line-height:1.35;}
.step-card h3{font-size:14px;font-weight:700;color:#17150e;line-height:1.25;margin:8px 0 6px;}
.step-card p{font-size:12px;line-height:1.5;color:#5f5a4f;margin:0;}
.step-card-title{font-size:15px;font-weight:700;color:#17150e;line-height:1.25;margin:8px 0 6px;}
.step-card-copy{font-size:13px;line-height:1.55;color:#5f5a4f;margin:0;}
.m-steps-box{background:#f8f6f1;border:1px solid #e4dfd5;border-radius:12px;padding:14px 12px;margin-bottom:12px;}
.m-steps-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9a9388;margin-bottom:12px;}

.desktop-only{display:none;}
.seo-mobile-only{display:block;}
.seo-hero-intro{font-size:13px;line-height:1.7;color:#5f5a4f;margin:10px 0 14px;}
.seo-hero-intro-mobile{margin-top:0;margin-bottom:12px;}
.seo-content{width:100%;max-width:100%;padding:12px 14px 36px;background:var(--bg);overflow-x:hidden;}
.seo-shell{width:100%;max-width:1200px;margin:0 auto;display:grid;gap:14px;}
.seo-section{width:100%;max-width:100%;min-width:0;background:var(--white);border:1px solid var(--border);border-radius:18px;padding:16px 14px;scroll-margin-top:80px;overflow:hidden;}
.seo-title{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:700;line-height:1.18;color:#17150e;margin-bottom:12px;max-width:100%;overflow-wrap:anywhere;text-align:center;}
.seo-section-intro,.seo-lead{font-size:14px;line-height:1.8;color:#3a352c;margin-bottom:16px;text-align:center;margin-left:auto;margin-right:auto;}
.seo-copy p{font-size:14.5px;line-height:1.85;color:#2d2a24;margin:0 0 14px;}
.seo-copy p:last-child{margin-bottom:0;}
.seo-steps{display:grid;grid-template-columns:1fr;gap:10px;}
.seo-benefit-grid,.seo-occasion-grid,.seo-faq-list{display:grid;grid-template-columns:1fr;gap:10px;}
.seo-benefit-card,.seo-occasion-card,.seo-faq-item,.seo-spec-box{background:var(--off);border:1px solid var(--border);border-radius:14px;padding:14px;}
.seo-benefit-card h3,.seo-occasion-card h3,.seo-faq-item h3,.seo-spec-box h3{font-size:15px;font-weight:700;color:#17150e;line-height:1.3;margin:0 0 8px;}
.seo-benefit-card p,.seo-occasion-card p,.seo-faq-item p,.seo-spec-box p{font-size:13px;line-height:1.7;color:#5f5a4f;margin:0;}
.seo-review-row{display:flex;gap:10px;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:0 1px 4px;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;}
.seo-review-row::-webkit-scrollbar{display:none;}
.seo-review-card{flex:0 0 min(220px,calc(100vw - 44px));width:min(220px,calc(100vw - 44px));max-width:100%;background:var(--off);border:1px solid var(--border);border-radius:14px;padding:12px;scroll-snap-align:start;}
.seo-review-stars{color:#f5a623;font-size:11px;margin-bottom:6px;}
.seo-review-text{font-size:12.5px;line-height:1.55;color:#2d2a24;margin:0 0 8px;font-style:italic;}
.seo-review-author{font-size:12px;font-weight:700;color:#17150e;}
.seo-review-date{font-size:10px;color:var(--muted);}
.seo-tier-box{background:#f8f6f1;border:1px solid #e4dfd5;border-radius:14px;padding:12px;}
.seo-tier-box .m-tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.seo-tier-box .m-tier-cell{min-width:0;max-width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 12px;min-height:72px;text-align:center;white-space:nowrap;}
.seo-tier-box .m-tier-qty{font-size:16px;font-weight:800;line-height:1.1;}
.seo-tier-box .m-tier-price{font-size:28px;line-height:1.02;}
.seo-tier-box .m-tier-unit{font-size:11px;}
.seo-tier-box .m-tier-pct{font-size:13px;}
.seo-spec-grid{display:grid;grid-template-columns:1fr;gap:10px;}
.seo-spec-icon{font-size:22px;margin-bottom:8px;}
.m-info,
.m-variants-section,
.m-cta,
.seo-shell > *,
.seo-steps > *,
.seo-benefit-grid > *,
.seo-occasion-grid > *,
.seo-faq-list > *,
.seo-spec-grid > *{
  min-width:0;
  max-width:100%;
}
.seo-section-intro,
.seo-lead,
.seo-copy p,
.seo-benefit-card p,
.seo-occasion-card p,
.seo-faq-item p,
.seo-spec-box p,
.seo-review-text,
.step-card-title,
.step-card-copy,
.step-card h3,
.step-card p{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.step-card{width:100%;max-width:100%;padding:18px 14px 16px;overflow:hidden;}

/* free shipping progress bar */
.free-ship-bar{background:#edf7f1;border:1px solid #c8e6d0;border-radius:10px;padding:6px 12px;margin-bottom:4px;}
.fs-text{font-size:12px;font-weight:600;color:#17150e;margin-bottom:6px;text-align:center;}
.fs-text b{color:#3d9e68;}
.fs-track{height:6px;background:#d4e8da;border-radius:3px;overflow:hidden;}
.fs-fill{height:100%;background:#3d9e68;border-radius:3px;transition:width .4s ease;width:0%;}
.free-ship-bar.done{background:linear-gradient(135deg,#d4f5df 0%,#fef9c3 50%,#fce7f3 100%);border-color:#8fd4a4;animation:fs-celebrate .6s ease;}
.free-ship-bar.done .fs-text{color:#15803d;font-weight:700;font-size:13px;}
.free-ship-bar.done .fs-fill{background:linear-gradient(90deg,#3d9e68,#c9971f,#e879a8);}
@keyframes fs-celebrate{0%{transform:scale(.97)}50%{transform:scale(1.03)}100%{transform:scale(1)}}
.co-fs{margin:0 0 12px 0;}

/* urgency bar */
.urgency-bar{background:#fef3cd;border:1px solid #f0d78c;border-radius:10px;padding:5px 10px;font-size:11px;font-weight:700;color:#856404;text-align:center;margin-bottom:6px;}

.m-hdr{
  background:rgba(255,255,255,.96);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
  height:50px;display:flex;align-items:center;
  justify-content:space-between;padding:0 16px;
  position:sticky;top:0;z-index:80;
}
.m-hdr .logo{font-size:20px;}
.m-hdr-logo{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;}
.m-hdr-logo em{color:var(--gold);font-style:normal;}
.m-cart{display:flex;align-items:center;gap:5px;background:var(--text);color:#fff;border:none;border-radius:20px;padding:7px 12px;font-size:13px;font-weight:600;font-family:'DM Sans',sans-serif;cursor:pointer;}
.m-cn{background:var(--gold);color:#fff;width:16px;height:16px;border-radius:50%;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;}

.m-gallery-wrap{position:relative;width:100%;max-width:100%;overflow:hidden;background:#f7f4ee;height:356px;border-bottom:1px solid var(--border);}
.m-gallery-wrap:before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:linear-gradient(180deg,#eef2f6 0%,#d7dce2 48%,#c7cdd5 100%);pointer-events:none;opacity:.28;}
.m-g-track{display:flex;width:400%;height:100%;transition:transform .28s cubic-bezier(.4,0,.2,1);will-change:transform;}
.m-g-slide{flex:0 0 25%;width:25%;position:relative;height:356px;display:flex;align-items:center;justify-content:center;padding:22px 16px 38px;box-sizing:border-box;overflow:hidden;}
.m-g-slide + .m-g-slide{border-left:1px solid #ece6db;}
.m-g-slide .m-mag-unit{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;z-index:3;}
#mSl0,#mSl1,#mSl2{background:transparent !important;}
#mSl0::before,#mSl1::before,#mSl2::before{content:'';position:absolute;left:14px;right:14px;top:10px;bottom:0;border-radius:28px 28px 0 0;border:1px solid #cfd5dc;background:linear-gradient(180deg,#eef2f6 0%,#d6dbe2 44%,#c7cdd5 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.92), inset 0 -26px 36px rgba(90,100,116,.09), inset -16px 0 22px rgba(255,255,255,.18), 0 8px 22px rgba(37,44,58,.06);z-index:0;}
#mSl0::after,#mSl1::after,#mSl2::after{content:'';position:absolute;right:26px;top:28px;bottom:28px;width:12px;border-radius:10px;background:linear-gradient(90deg,#f9fbfd 0%,#c4ccd5 24%,#909aa7 50%,#dfe6ed 78%,#fdfefe 100%);box-shadow:inset 1px 0 0 rgba(255,255,255,.82),inset -1px 0 0 rgba(124,136,151,.32),-2px 0 8px rgba(0,0,0,.08);z-index:1;}
#mSl0 .m-mag-unit,#mSl1 .m-mag-unit,#mSl2 .m-mag-unit{position:relative;left:-6px;z-index:3 !important;}
#mSl0 .m-mag-unit{left:-12px;}
#mSl0:before,#mSl1:before,#mSl2:before{background-image:linear-gradient(90deg,rgba(255,255,255,.32) 0,rgba(255,255,255,.06) 16%,rgba(0,0,0,.035) 28%,rgba(255,255,255,.05) 46%,rgba(255,255,255,.24) 62%,rgba(0,0,0,.045) 78%,rgba(255,255,255,.22) 100%),linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0) 24%,rgba(0,0,0,.03) 100%),linear-gradient(180deg,#eef2f6 0%,#d6dbe2 44%,#c7cdd5 100%);background-blend-mode:normal,normal,normal;}
#mSl0 .m-mag-unit,#mSl1 .m-mag-unit,#mSl2 .m-mag-unit,#mSl2 .m-scene-mini{filter:none !important;}

#mSl2 .m-scene-mini img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;border:0 !important;background:transparent !important;box-shadow:none !important;image-rendering:auto;}
#mSl2 .m-scene-mini{background:#fffefb !important;border:1px solid rgba(210,214,220,.72) !important;box-shadow:0 10px 22px rgba(0,0,0,.10) !important;padding:4px;overflow:hidden;}
#mSl2 .m-scene-mini.b{right:48px !important;top:54px !important;}
#mSl2 .m-scene-mini.c{right:48px !important;bottom:72px !important;}
#mSl2 .m-scene-mini img[src], #mSl2 .m-scene-mini img{mix-blend-mode:normal !important;opacity:1 !important;}

.m-dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:5px;z-index:10;}
.m-dot{width:6px;height:6px;border-radius:50%;background:rgba(23,21,14,.2);transition:all .2s;}
.m-dot.on{background:var(--navy);width:18px;border-radius:3px;}

.m-live-badge{display:none!important;}

.m-gallery-edit{position:absolute;bottom:12px;right:12px;z-index:10;background:#fff;border:1px solid var(--border);border-radius:20px;padding:5px 12px;font-size:11px;font-weight:700;cursor:pointer;color:var(--text);display:none;}

.m-gallery-arrow{display:none;position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.92);border:1px solid var(--border);font-size:20px;cursor:pointer;z-index:15;align-items:center;justify-content:center;color:var(--text);transition:all .15s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-family:'DM Sans',sans-serif;line-height:1;padding:0;}
.m-gallery-arrow:hover{background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.12);}
.m-ga-l{left:14px;}
.m-ga-r{right:14px;}






















#mSl2 .m-scene-mini.a{position:absolute;width:76px;height:94px;left:24px;top:70px;transform:rotate(-10deg);}
#mSl2 .m-scene-mini.b{position:absolute;width:68px;height:86px;right:48px;top:54px;transform:rotate(8deg);}
#mSl2 .m-scene-mini.c{position:absolute;width:64px;height:80px;right:48px;bottom:72px;transform:rotate(5deg);}
#mSl0 .mag-s,#mSl0 .mag-r{--mw:240px;--mh:300px;}
#mSl1 .mag-s,#mSl1 .mag-r{--mw:190px;--mh:238px;}
#mSl2 .mag-s,#mSl2 .mag-r{--mw:215px;--mh:269px;}
#mSl0 .mag-s,#mSl0 .mag-r,#mSl1 .mag-s,#mSl1 .mag-r,#mSl2 .mag-s,#mSl2 .mag-r{box-shadow:0 12px 28px rgba(0,0,0,.12);transform:none!important;filter:none!important;}
#mSl0 .m-ph,#mSl1 .m-ph,#mSl2 .m-ph{box-shadow:0 12px 28px rgba(0,0,0,.08);}

.m-ph{border-radius:calc(var(--mw)*0.055);background:linear-gradient(145deg,#f5f1eb,#e9e2d8);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(0,0,0,.22);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;}
.m-ph-icon{font-size:44px;opacity:.2;}

.m-info{background:var(--white);width:100%;max-width:100%;padding:16px 16px 0;overflow:hidden;}
.m-rating{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-bottom:8px;}
.m-stars{color:#f5a623;font-size:13px;}
.m-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:700;line-height:1.15;margin-bottom:6px;overflow-wrap:anywhere;}
.m-price-row{display:flex;align-items:baseline;gap:8px;margin-bottom:14px;}
.m-price{font-size:28px;font-weight:700;}
.m-price-old{font-size:14px;color:var(--muted);text-decoration:line-through;}
.m-price-save{font-size:11px;font-weight:700;color:var(--green);background:#edf7f1;padding:2px 7px;border-radius:20px;}
.m-badges{display:flex;gap:6px;flex-wrap:nowrap;padding-bottom:14px;border-bottom:1px solid var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.m-badges::-webkit-scrollbar{display:none;}
.m-badge{font-size:11px;font-weight:500;color:var(--muted);background:var(--off);border-radius:20px;padding:4px 9px;white-space:nowrap;flex-shrink:0;}
.m-badge.g{background:#edf7f1;color:var(--green);}
.m-badge.ship{font-weight:700;background:#edf7f1;color:var(--green);}

.m-variants-section{background:var(--white);width:100%;max-width:100%;padding:4px 16px 2px;overflow:hidden;}
.m-sec-lbl{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;}
.m-variants{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.m-vc{border:2px solid var(--border);border-radius:10px;padding:6px 10px 5px;cursor:pointer;background:var(--white);transition:all .15s;position:relative;-webkit-tap-highlight-color:transparent;}
.m-vc:active,.m-vc.on{border-color:var(--gold);background:var(--gold-lt);}
.m-vc-ck{position:absolute;top:6px;right:6px;width:15px;height:15px;border-radius:50%;background:var(--gold);color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;}
.m-vc.on .m-vc-ck{opacity:1;}
.m-vc-name{font-size:13px;font-weight:700;margin-bottom:0;line-height:1.1;}
.m-vc-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:0;}
.m-vc-desc{font-size:10px;color:var(--muted);margin:0;line-height:1;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.m-vc-price{font-size:11px;font-weight:700;color:var(--gold-dk);margin:0;white-space:nowrap;flex-shrink:0;}

.m-cta{background:var(--white);width:100%;max-width:100%;padding:4px 16px 0;overflow:hidden;}
.m-btn-pers{width:100%;height:56px;min-height:56px;padding:0 14px;border:none;border-radius:12px;background:#c9971f;color:#fff;font-size:16px;font-weight:700;font-family:'DM Sans',sans-serif;cursor:pointer;margin-bottom:8px;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .15s;position:relative;overflow:hidden;outline:none;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;box-shadow:0 8px 24px rgba(201,151,31,.32);}
.m-btn-pers::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.1);animation:pers-pulse 2s ease-in-out infinite;}
@keyframes pers-pulse{0%,100%{opacity:0;}50%{opacity:1;}}
.m-btn-pers.done{background:var(--muted);animation:none;}
.m-btn-pers.done::after{display:none;}
.m-btn-pers:hover,.m-btn-pers:focus,.m-btn-pers:active{background:#b8880f;color:#fff;outline:none;box-shadow:0 8px 24px rgba(201,151,31,.32);}
.m-btn-pers:active{transform:scale(.98);}
.m-btn-atc{width:100%;padding:16px;border:none;border-radius:12px;font-size:16px;font-weight:700;font-family:'DM Sans',sans-serif;cursor:pointer;margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .15s;}
.m-btn-atc.off{background:#d7d1c7;color:#8f877b;cursor:not-allowed;}
.m-btn-atc.on{background:#c9971f;color:#fff;box-shadow:0 8px 24px rgba(201,151,31,.32);}
.m-btn-atc.on:active{transform:scale(.98);}
.m-cta-hint{font-size:12px;color:var(--muted);text-align:center;padding-bottom:12px;}
.m-cta-hint strong{color:var(--navy);}
.m-trust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px;padding:12px 0 14px;border-top:1px solid var(--border);}
.m-ti{font-size:11px;color:var(--muted);text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;}
.m-ti-i{font-size:15px;}

.m-content{background:var(--white);margin-top:8px;padding:18px 16px 40px;}
.m-section-title{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;margin-bottom:14px;color:#17150e;letter-spacing:.01em;padding-bottom:8px;border-bottom:2px solid var(--gold);display:inline-block;}
.m-desc{font-size:14.5px;color:#2d2a24;line-height:1.8;margin-bottom:22px;}
.m-rev-scroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;margin-bottom:24px;}
.m-rev-scroll::-webkit-scrollbar{display:none;}
.m-rev-card{flex-shrink:0;width:200px;background:var(--off);border:1px solid var(--border);border-radius:10px;padding:10px;scroll-snap-align:start;}
.m-rev-stars{color:#f5a623;font-size:11px;margin-bottom:3px;}
.m-rev-text{font-size:12px;color:#2d2a24;line-height:1.45;margin-bottom:4px;font-style:italic;}
.m-rev-author{font-size:11px;font-weight:700;color:#17150e;}
.m-rev-date{font-size:9px;color:var(--muted);}

/* review avatar + ugc shared */
.rev-header{display:flex;align-items:center;gap:6px;margin-bottom:4px;}
.rev-avatar{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:#444;flex-shrink:0;}
.rev-ugc{width:100%;border-radius:6px;margin-top:6px;object-fit:contain;max-height:140px;}
.m-spec-g{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.m-spec-box{background:var(--off);border:1px solid var(--border);border-radius:10px;padding:12px 8px;text-align:center;}
.m-spec-i{font-size:18px;margin-bottom:3px;}
.m-spec-n{font-size:10px;color:var(--muted);margin-bottom:1px;}
.m-spec-v{font-size:11px;font-weight:700;}

/* ════════════════════════════════════
   MODAL EDITOR — FULLSCREEN
════════════════════════════════════ */
.modal-wrap{
  display:none;
  position:fixed;inset:0;z-index:200;
  background:var(--white);
  flex-direction:column;
  overflow:hidden;
}
.modal-wrap.open{display:flex;}

.mo-hdr{
  flex-shrink:0;height:48px;
  background:var(--white);border-bottom:1px solid var(--border);
  display:flex;align-items:center;
  justify-content:space-between;padding:0 14px;
}
.mo-close{width:32px;height:32px;border-radius:50%;background:var(--off);border:1.5px solid var(--border);font-size:14px;cursor:pointer;color:var(--muted);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.mo-center{flex:1;text-align:center;padding:0 8px;}
.mo-title{font-size:13px;font-weight:700;}
.mo-sub{font-size:11px;color:var(--muted);}
.mo-dots{display:flex;gap:5px;align-items:center;flex-shrink:0;}
.mo-dot{width:7px;height:7px;border-radius:50%;background:var(--border);transition:all .2s;}
.mo-dot.on{background:var(--gold);width:20px;border-radius:4px;}

.mo-preview{
  flex:1;min-height:0;position:relative;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  background:linear-gradient(155deg,#eeeadf,#e5e1d8);
}
.mo-preview.bg-upload{background:linear-gradient(155deg,#eeeadf,#e4e0d6);}
.mo-preview.bg-style{background:linear-gradient(155deg,#f0ece4,#e8e3da);}
.mo-preview.bg-text{background:linear-gradient(155deg,#edeae2,#e4dfd6);}
.mo-preview::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 25%,rgba(255,255,255,.3) 0%,transparent 60%);pointer-events:none;}

.mo-mag-wrap{touch-action:none;cursor:grab;position:relative;display:flex;align-items:center;justify-content:center;overflow:visible;z-index:1;}
.mo-mag-wrap:active{cursor:grabbing;}

/* FIX: no fixed size in CSS — computed by JS */
.mo-preview .mag-s,.mo-preview .mag-r{
  filter:drop-shadow(0 14px 40px rgba(0,0,0,.2)) drop-shadow(0 4px 10px rgba(0,0,0,.1));
}

/* v25: editor Classic should show the same white frame feel as gallery */
.mo-preview .mag-s{
  padding:7px !important;
  border:1px solid #ddd5c8 !important;
  background:linear-gradient(180deg,#fffefc 0%,#f4edde 100%) !important;
  box-shadow:0 14px 28px rgba(33,27,17,.18),0 2px 0 rgba(255,255,255,.52) inset,0 -2px 0 rgba(0,0,0,.05) inset !important;
}
.mo-preview .mag-s canvas,
.mo-preview .mag-s img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  border:1px solid rgba(210,205,196,.42) !important;
  margin:0 !important;
  background:#f0ece6 !important;
  object-fit:cover !important;
}
.mo-preview .mag-s .mag-shine{display:block !important;}
.mo-preview .mag-r{
  box-shadow:0 16px 34px rgba(33,27,17,.18),0 1px 0 rgba(255,255,255,.82) inset,0 -2px 0 rgba(120,97,53,.06) inset !important;
}

.mo-ph{border-radius:12px;background:linear-gradient(145deg,#dad6ce,#ccc8bf);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:rgba(0,0,0,.22);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;}
.mo-ph-icon{font-size:52px;opacity:.2;}

.mo-drag-hint{display:none !important;}
.mo-drag-hint.show{display:none !important;}

.mo-body{flex-shrink:0;}
.mo-pane{display:none;padding:10px 16px 4px;}
.mo-pane.on{display:block;}
.mo-classic-step3-note{font-size:12px;color:var(--muted);line-height:1.55;margin-top:8px;}
.mo-classic-text-card{background:var(--off);border:1px solid var(--border);border-radius:14px;padding:12px;}
.mo-classic-text-row{display:flex;gap:10px;align-items:center;}
.mo-classic-text-row .mo-tf{flex:1;}
.mo-classic-clear{height:42px;padding:0 14px;border-radius:12px;border:1px solid var(--border);background:var(--white);font-size:12px;font-weight:700;color:var(--text);cursor:pointer;white-space:nowrap;}

.mo-upload{display:flex;align-items:center;gap:12px;border:2px dashed var(--border);border-radius:14px;padding:12px 14px;cursor:pointer;background:var(--off);transition:all .15s;position:relative;}
.mo-upload:active{border-color:var(--gold);background:var(--gold-lt);}
.mo-upload input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;}
.mu-ico{font-size:26px;flex-shrink:0;}
.mu-info{flex:1;min-width:0;}
.mu-title{font-size:14px;font-weight:700;margin-bottom:1px;}
.mu-sub{font-size:11px;color:var(--muted);}
.mu-cta{background:var(--text);color:#fff;border-radius:8px;padding:7px 13px;font-size:12px;font-weight:700;white-space:nowrap;flex-shrink:0;pointer-events:none;}
.mo-rotate-wrap{margin-top:10px;background:var(--off);border:1px solid var(--border);border-radius:12px;padding:10px 12px;}
.mo-rotate-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;}
.mo-rotate-lbl{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.mo-rotate-val{font-size:12px;font-weight:700;color:var(--gold-dk);}
.mo-rotate-range{-webkit-appearance:none;width:100%;height:4px;background:var(--border);border-radius:999px;outline:none;}
.mo-rotate-range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--gold);box-shadow:0 2px 6px rgba(200,167,107,.45);}
.mo-rotate-actions{display:flex;justify-content:flex-end;margin-top:8px;}
.mo-rotate-reset{border:1.5px solid var(--border);background:var(--white);color:var(--text);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;font-family:'DM Sans',sans-serif;cursor:pointer;}
.mo-gesture-hint{
  position:absolute; left:50%; bottom:-44px; transform:translateX(-50%);
  pointer-events:none; z-index:8;
  opacity:0; transition:opacity .28s ease;
  display:flex; gap:8px; white-space:nowrap;
}
.mo-gesture-hint.show{opacity:1;}
.mo-gh-drag{
  background:rgba(255,255,255,.92); border:1px solid rgba(0,0,0,.06);
  border-radius:999px; padding:7px 12px; font-size:12px; font-weight:700; color:#5f5a4f;
  box-shadow:0 6px 16px rgba(0,0,0,.08); white-space:nowrap;
}
.mo-gh-drag::before{content:'↔ ↕'; margin-right:6px; color:var(--gold-dk);}
.mo-gh-rotate{
  position:absolute;
  right:-30px;
  top:-30px;
  width:58px;
  height:58px;
  border-radius:50%;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 10px 24px rgba(0,0,0,.14);
  display:none;
  align-items:center;
  justify-content:center;
  color:var(--gold-dk);
  font-size:26px;
  font-weight:700;
  z-index:90;
  cursor:grab;
  touch-action:none;
  pointer-events:auto;
}
.mo-gh-rotate.is-visible{
  display:flex !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.mo-gh-rotate:active{cursor:grabbing; transform:scale(.98);}
.mo-gh-rotate::after{
  content:'↻';
  transform:translateY(-1px);
}

.mo-gh-pinch{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(0,0,0,.06);
  border-radius:999px;
  padding:7px 10px;
  font-size:11px;
  font-weight:700;
  color:#5f5a4f;
  box-shadow:0 6px 16px rgba(0,0,0,.08);
  white-space:nowrap;
}
.mo-gh-pinch::before{content:'🖱️/🤏 ';}
.mo-rotate-circle{
  position:absolute; right:18px; top:18px; z-index:90;
  width:56px; height:56px; border-radius:50%;
  border:1px solid rgba(0,0,0,.08);
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 24px rgba(0,0,0,.14);
  display:none; align-items:center; justify-content:center;
  color:var(--gold-dk); cursor:grab; touch-action:none;
}
.mo-rotate-circle:active{cursor:grabbing; transform:scale(.98);}
.mo-rc-icon{font-size:26px; line-height:1; transform:translateY(-1px);}
.mo-rotate-handle{display:none !important;}
.mo-rotate-handle:active{display:none !important;}
.mo-rh-icon{display:none !important;}
.mo-rh-text{display:none !important;}



.mo-style-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.mo-sc{border:2px solid var(--border);border-radius:12px;padding:10px 8px;cursor:pointer;background:var(--white);display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;position:relative;transition:all .15s;-webkit-tap-highlight-color:transparent;}
.mo-sc:active,.mo-sc.on{border-color:var(--gold);background:var(--gold-lt);}
.mo-sc-ck{position:absolute;top:6px;right:6px;width:18px;height:18px;border-radius:50%;background:var(--gold);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;}
.mo-sc.on .mo-sc-ck{opacity:1;}
.mo-sc-ico{font-size:24px;}
.mo-sc-name{font-size:13px;font-weight:700;}
.mo-sc-desc{font-size:11px;color:var(--muted);line-height:1.3;}
.mo-sc-price{font-size:12px;font-weight:700;border-radius:20px;padding:2px 8px;margin-top:2px;}
.mo-sc-price.base{background:var(--off);color:var(--muted);}
.mo-sc-price.up{background:#edf7f1;color:var(--green);}

/* pane 3: text — COMPACT: one input + font row */
.mo-tf{
  display:block;width:100%;
  border:1.5px solid var(--border);border-radius:10px;
  padding:11px 12px;font-size:15px;
  font-family:'DM Sans',sans-serif;outline:none;
  background:var(--white);
  transition:border .15s;
}
.mo-tf:focus{border-color:var(--gold);}
.mo-font-lbl{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:6px 0 5px;}
.mo-font-row{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px;}
.mo-font-row::-webkit-scrollbar{display:none;}
.mo-fc{flex-shrink:0;padding:6px 12px;border:1.5px solid var(--border);border-radius:20px;font-size:12px;cursor:pointer;background:var(--white);font-family:'DM Sans',sans-serif;white-space:nowrap;transition:all .15s;}
.mo-fc.on{border-color:var(--gold);background:var(--gold-lt);color:var(--gold-dk);font-weight:700;}

/* FOOTER — horizontal layout */
.mo-foot{
  flex-shrink:0;
  padding:8px 16px calc(8px + var(--safe-b));
  background:var(--white);border-top:1px solid var(--border);
  display:flex;gap:10px;align-items:center;
}
.mo-btn-back{
  background:none;border:1.5px solid var(--border);
  border-radius:10px;padding:13px 16px;
  font-size:13px;font-weight:600;color:var(--muted);
  font-family:'DM Sans',sans-serif;cursor:pointer;
  flex-shrink:0;transition:all .15s;
  outline:none;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;
}
.mo-btn-back:hover,.mo-btn-back:focus,.mo-btn-back:active{border-color:var(--gold);color:var(--text);background:transparent;outline:none;box-shadow:none;}
.d-atc,.mo-btn,.mo-close,.m-cart,.d-cart-btn{outline:none;-webkit-tap-highlight-color:transparent;}
.d-atc:focus,.d-atc:active,.mo-btn:focus,.mo-btn:active,.mo-close:focus,.mo-close:active,.m-cart:focus,.m-cart:active,.d-cart-btn:focus,.d-cart-btn:active{outline:none;box-shadow:none;}
.mo-btn{
  flex:1;padding:14px;border:none;border-radius:12px;
  font-size:15px;font-weight:700;font-family:'DM Sans',sans-serif;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:6px;
  transition:transform .12s;
}
.mo-btn:active{transform:scale(.98);}
.mo-btn.dark{background:var(--text);color:#fff;}
.mo-btn.navy{background:var(--navy);color:#fff;}
.mo-btn.gold{background:#c9971f;color:#fff;box-shadow:0 8px 24px rgba(201,151,31,.32);}
.mo-btn.off{background:var(--border);color:var(--muted);cursor:not-allowed;}

/* === v11 visual polish overrides === */
/* v15: classic label + larger photo area */
.mag-s img{object-position:center center;transform:scale(1.04);transform-origin:center center;}
.d-gallery .mag-s{--mw:232px !important;--mh:290px !important;}
#dMs{--mw:232px !important;--mh:290px !important;}
#moMs{box-shadow:0 16px 32px rgba(33,27,17,.20),0 2px 0 rgba(255,255,255,.45) inset,0 -2px 0 rgba(0,0,0,.05) inset !important;}
#mSl0 .mag-s{--mw:236px !important;--mh:295px !important;transform:rotate(-2.6deg) translateY(2px) !important;}
#mSl1 .mag-s{--mw:198px !important;--mh:248px !important;transform:none !important;}
#mSl2 .mag-s{--mw:214px !important;--mh:268px !important;transform:rotate(5deg) translateY(4px) !important;}

.mag-s,.mag-r,.r-photo,.m-ph{border-radius:0 !important;}
.mag-s{
  background:#d8d4cd !important;
  border:1px solid rgba(61,48,29,.15) !important;
  box-shadow:0 14px 28px rgba(33,27,17,.18),0 2px 0 rgba(255,255,255,.45) inset,0 -2px 0 rgba(0,0,0,.05) inset !important;
}
.mag-r{
  background:linear-gradient(180deg,#fffef9 0%,#f6f1e7 100%) !important;
  border:1px solid #d7cfbf !important;
  box-shadow:0 16px 34px rgba(33,27,17,.18),0 1px 0 rgba(255,255,255,.82) inset,0 -2px 0 rgba(120,97,53,.06) inset !important;
}
.r-photo{
  box-shadow:0 0 0 1px rgba(84,71,45,.12),0 2px 8px rgba(0,0,0,.08) inset !important;
}
.r-cap{
  background:linear-gradient(180deg,#fbf8f0 0%,#f0e8d9 100%) !important;
  border-top:1px solid rgba(123,104,66,.16) !important;
}
.rc1{color:#2a2419 !important;letter-spacing:.01em;}
.rc2{color:#8c7c62 !important;}
.mag-shine{background:linear-gradient(135deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.06) 18%,transparent 42%,rgba(0,0,0,.04) 100%) !important;}
.mag-s::after,.mag-r::after{content:'';position:absolute;left:0;right:0;top:0;height:12%;background:linear-gradient(180deg,rgba(255,255,255,.22),transparent);pointer-events:none;z-index:4;}
.m-gallery-wrap{background:#f7f4ee !important;height:356px !important;}
.m-g-slide{height:356px !important;padding:22px 16px 38px !important;}
.m-g-slide .m-mag-unit{z-index:3 !important;}
#mSl0{background:linear-gradient(90deg,#cfd3d6 0%,#eef2f4 18%,#cad0d4 37%,#f2f5f7 58%,#c6ccd0 78%,#eef2f4 100%) !important;}
#mSl1{background:linear-gradient(90deg,#cfd3d6 0%,#eef2f4 18%,#cad0d4 37%,#f2f5f7 58%,#c6ccd0 78%,#eef2f4 100%) !important;border-radius:22px !important;box-shadow:inset 0 0 0 1px rgba(181,188,197,.75), inset 0 1px 0 rgba(255,255,255,.58) !important;}
#mSl2{background:linear-gradient(90deg,#cfd3d6 0%,#eef2f4 18%,#cad0d4 37%,#f2f5f7 58%,#c6ccd0 78%,#eef2f4 100%) !important;border-radius:22px !important;box-shadow:inset 0 0 0 1px rgba(181,188,197,.75), inset 0 1px 0 rgba(255,255,255,.58) !important;}
#mSl0 .mag-s,#mSl0 .mag-r{--mw:228px !important;--mh:285px !important;transform:rotate(-2.6deg) translateY(2px) !important;}
#mSl1 .mag-s,#mSl1 .mag-r{--mw:190px !important;--mh:238px !important;transform:none !important;}
#mSl2 .mag-s,#mSl2 .mag-r{--mw:206px !important;--mh:258px !important;transform:rotate(5deg) translateY(4px) !important;}
.m-scene-shadow{position:absolute;left:50%;transform:translateX(-50%);bottom:34px;width:170px;height:24px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.22) 0%,rgba(0,0,0,.08) 48%,rgba(0,0,0,0) 72%);filter:blur(6px);z-index:1;pointer-events:none;}
#mSl0 .m-scene-shadow{width:210px;bottom:42px;opacity:.75;}
#mSl1 .m-scene-shadow{width:160px;bottom:48px;opacity:.45;}
#mSl2 .m-scene-shadow{width:182px;bottom:46px;opacity:.52;}
/* v20: thicker classic frame on first 3 slides, aligned with slide 4 */
#mSl0 .mag-s,#mSl1 .mag-s,#mSl2 .mag-s{
  background:linear-gradient(180deg,#fffefc,#f3eee4) !important;
  padding:7px !important;
  box-sizing:border-box !important;
  border:1px solid #ddd5c8 !important;
  box-shadow:0 16px 30px rgba(24,22,16,.18),0 4px 10px rgba(24,22,16,.08),0 1px 0 rgba(255,255,255,.82) inset,0 -2px 0 rgba(120,97,53,.05) inset !important;
}
#mSl0 .mag-s img,#mSl1 .mag-s img,#mSl2 .mag-s img,
#mSl0 .mag-s canvas,#mSl1 .mag-s canvas,#mSl2 .mag-s canvas{
  width:100% !important;
  height:100% !important;
  display:block !important;
  background:#f0ece6 !important;
}
#mSl0 .mag-s img,#mSl1 .mag-s img,#mSl2 .mag-s img{
  object-fit:cover !important;
  border:1px solid rgba(210,205,196,.45) !important;
}

.m-scene-mini{position:absolute;background:linear-gradient(180deg,#fffef9 0%,#f2ebdf 100%);border:1px solid #ddd4c6;box-shadow:0 10px 20px rgba(20,16,10,.10);z-index:1;pointer-events:none;}
.m-scene-mini::after{content:'';position:absolute;left:10%;right:10%;top:10%;height:62%;background:linear-gradient(135deg,#dbc9a4,#b7c6d6 52%,#e6d6ae);opacity:.55;}
.m-scene-mini.a{width:88px;height:110px;left:26px;top:40px;transform:rotate(-10deg);}
.m-scene-mini.b{width:92px;height:115px;right:20px;top:54px;transform:rotate(9deg);}
.m-scene-mini.c{width:72px;height:90px;right:34px;bottom:56px;transform:rotate(-7deg);}
.hero-fridge{position:relative;width:100%;height:100%;border-radius:22px;overflow:hidden;border:1px solid #c9d0d8;background:
linear-gradient(180deg,rgba(255,255,255,.52),rgba(255,255,255,0) 22%),
linear-gradient(90deg,#eef2f6 0%,#cfd6df 18%,#edf1f5 36%,#c7cfd9 54%,#eff3f6 72%,#cad1da 100%);
box-shadow:inset 0 1px 0 rgba(255,255,255,.95), inset 0 -28px 40px rgba(90,100,116,.10), inset -18px 0 22px rgba(255,255,255,.18), 0 10px 30px rgba(37,44,58,.08);}
.hero-fridge:before{content:'';position:absolute;inset:0;background:
linear-gradient(90deg,rgba(255,255,255,.32) 0,rgba(255,255,255,.06) 16%,rgba(0,0,0,.035) 28%,rgba(255,255,255,.05) 46%,rgba(255,255,255,.24) 62%,rgba(0,0,0,.045) 78%,rgba(255,255,255,.22) 100%),
linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0) 24%,rgba(0,0,0,.03) 100%);
pointer-events:none;}
.hero-fridge:after{content:'';position:absolute;right:18px;top:20px;bottom:20px;width:12px;border-radius:10px;background:linear-gradient(90deg,#f9fbfd 0%,#c4ccd5 24%,#909aa7 50%,#dfe6ed 78%,#fdfefe 100%);box-shadow:inset 1px 0 0 rgba(255,255,255,.82),inset -1px 0 0 rgba(124,136,151,.32),-2px 0 8px rgba(0,0,0,.08);}
.hero-seam{position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,rgba(255,255,255,.45),rgba(125,135,148,.3),rgba(255,255,255,.45));opacity:.55;}
.hero-grid{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:16px;padding:24px 42px 38px 22px;box-sizing:border-box;}
.hero-mag{position:relative;box-shadow:0 16px 30px rgba(24,22,16,.20),0 4px 10px rgba(24,22,16,.10);border-radius:3px;overflow:hidden;background:#fff;}
.hero-mag.classic{width:118px;height:148px;padding:5px;box-sizing:border-box;background:linear-gradient(180deg,#fffefc,#f3eee4);border:1px solid #ddd5c8;transform:rotate(-4deg);}
.hero-mag.classic .hero-photo{width:100%;height:100%;display:block;object-fit:cover;object-position:center 28%;border:1px solid rgba(210,205,196,.45);background:#f0ece6;}
.hero-mag.retro{width:118px;height:148px;padding:6px 6px 0;box-sizing:border-box;background:linear-gradient(180deg,#fffdf8,#eee6d8);border:1px solid #ddd3c4;transform:rotate(3deg);display:flex;flex-direction:column;}
.hero-mag.retro .hero-photo{height:102px;display:block;object-fit:cover;object-position:center 20%;border:1px solid rgba(207,198,182,.52);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);background:#f0ece6;}
.hero-cap{height:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#53483b;background:linear-gradient(180deg,#f7f2ea,#efe7d8);border-top:1px solid rgba(214,204,189,.65);}
.hero-cap .l1{font-family:'Caveat',cursive;font-size:14px;font-weight:700;line-height:1;}
.hero-cap .l2{font-size:8px;letter-spacing:.08em;opacity:.8;line-height:1;}
.hero-labels{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:18px;padding-right:14px;box-sizing:border-box;}
.hero-chip{min-width:110px;text-align:center;background:rgba(255,255,255,.94);border:1px solid #ddd4c7;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:800;color:#3c3329;box-shadow:0 3px 8px rgba(0,0,0,.06);}
#mSl3 .m-mag-unit{width:100%;height:100%;}
.m-ph{background:linear-gradient(145deg,#f5f1eb,#e9e2d8) !important;box-shadow:0 12px 28px rgba(0,0,0,.08) !important;}


/* v31: fridge panel without visible top edge + clean mini magnets */
#mSl0::before,#mSl1::before,#mSl2::before{
  top:-26px !important;
  bottom:0 !important;
  border-top:none !important;
  border-radius:0 !important;
  box-shadow:inset 0 -26px 36px rgba(90,100,116,.09), inset -16px 0 22px rgba(255,255,255,.18), 0 8px 22px rgba(37,44,58,.06) !important;
}
#mSl0,#mSl1,#mSl2{
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
#mSl2 .m-scene-mini::after{content:none !important; display:none !important;}
#mSl2 .m-scene-mini, #mSl2 .m-scene-mini img{
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}
#mSl2 .m-scene-mini{
  background:#fffefb !important;
  border:1px solid rgba(210,214,220,.62) !important;
  box-shadow:0 10px 22px rgba(0,0,0,.10) !important;
}


.m-buy-row{display:flex;gap:8px;align-items:stretch;margin-top:12px;flex-wrap:nowrap}
.m-qty-wrap{flex:0 0 110px;height:56px;background:#fff;border:1.5px solid var(--border);border-radius:18px;padding:0 6px;box-shadow:0 6px 16px rgba(17,24,39,.04);transition:opacity .18s ease,filter .18s ease;display:flex;align-items:center;gap:4px}
.m-qty-wrap.is-disabled{opacity:.55;filter:grayscale(.08)}
.m-qty-label{flex:0 0 auto;font-size:14px;line-height:1;color:#6b7280;font-weight:800;margin:0}
.m-qty-control{flex:1 1 auto;display:grid;grid-template-columns:34px minmax(36px,1fr) 34px;align-items:stretch;border:1px solid rgba(17,24,39,.10);border-radius:12px;overflow:hidden;background:#fff;height:38px;min-height:38px}
.m-qty-btn{display:flex;align-items:center;justify-content:center;border:0;border-radius:0;background:#fff;color:#222;font-size:22px;font-weight:700;line-height:1;height:38px;padding:0;margin:0;-webkit-appearance:none;appearance:none;outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none}
.m-qty-btn:hover,.m-qty-btn:focus,.m-qty-btn:active{background:#fff;color:#222;outline:none;box-shadow:none}
.m-qty-btn:disabled{color:#b9c0c7;background:#fafbfc}
.m-qty-input{display:flex;align-items:center;justify-content:center;width:100%;height:38px;border-left:1px solid rgba(17,24,39,.08);border-right:1px solid rgba(17,24,39,.08);text-align:center;font-size:18px;font-weight:800;color:#111;background:#fff;padding:0;line-height:1;opacity:1;user-select:none}
.m-qty-wrap.is-disabled .m-qty-input{color:#6b7280;background:#fafbfc}
.m-btn-atc-row{flex:1 1 auto;display:flex;align-items:center;justify-content:center;gap:8px;height:56px;min-height:56px;padding:0 22px;border-radius:18px;font-size:16px;line-height:1.15;text-align:center;white-space:nowrap}
.m-btn-atc-row #mAtcPrice{display:none !important}
.m-btn-atc-row .m-btn-atc-text{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}



/* Classic text editor overlay */
.mo-mag-wrap{position:relative;}
.mo-text-layer{position:absolute;inset:0;pointer-events:none;z-index:8;}
.mo-text-item{position:absolute;display:flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:14px;text-align:center;line-height:1.15;font-weight:700;transform-origin:center center;pointer-events:auto;cursor:pointer;}
.mo-text-item .mo-text-item-inner{width:100%;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;}
.mo-textbox{
  position:absolute;
  left:10%; top:68%; width:80%; min-height:54px;
  display:none; align-items:center; justify-content:center;
  padding:10px 14px;
  border:2px dashed rgba(255,255,255,.95);
  background:rgba(0,0,0,.22);
  color:#ffffff;
  border-radius:14px;
  text-align:center;
  line-height:1.15;
  font-weight:700;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  transform-origin:center center;
  pointer-events:auto;
  touch-action:none;
  -webkit-tap-highlight-color:transparent;
}
.mo-textbox.active{display:flex;}
.mo-textbox:focus-within{
  border-color:var(--gold);
  background:rgba(46,35,19,.28);
  box-shadow:0 0 0 2px rgba(197,168,107,.22),0 16px 34px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08);
}
.mo-textbox-content{
  width:100%; outline:none; background:transparent; border:none;
  font:inherit; color:inherit; text-align:inherit; white-space:pre-wrap;
  word-break:break-word; overflow-wrap:anywhere;
  caret-color:#f2d8a2;
  -webkit-tap-highlight-color:transparent;
}
.mo-textbox-content:empty:before{content:attr(data-placeholder);opacity:.82;}
.mo-textbox-content::selection{background:rgba(200,167,107,.38);color:#fff;}
.mo-textbox-content::-moz-selection{background:rgba(200,167,107,.38);color:#fff;}
.mo-textbox-handle{
  position:absolute; width:28px; height:28px; border-radius:50%;
  border:none; background:var(--gold); color:#fff; font-size:14px; font-weight:700;
  display:flex; align-items:center; justify-content:center; box-shadow:0 6px 14px rgba(0,0,0,.18);
  -webkit-tap-highlight-color:transparent;
}
.mo-textbox-rotate{right:-14px; top:-14px; cursor:grab;}
.mo-textbox-delete{left:-14px; top:-14px; cursor:pointer; background:#fff; color:#8f7343;}
.mo-textbox-move{right:-14px; bottom:-14px; cursor:move; background:#fff; color:#8f7343; font-size:18px; touch-action:none;}
.mo-textbox-resize{left:-14px; bottom:-14px; cursor:nwse-resize; background:#fff; color:#8f7343; font-size:16px; touch-action:none;}
.mo-classic-editor{display:flex;flex-direction:column;gap:12px;}
.mo-classic-add{height:50px;border:1.5px dashed #ccb889;background:#fff;border-radius:14px;padding:0 16px;font:700 16px 'DM Sans',sans-serif;color:#4e3a1c;cursor:pointer;-webkit-appearance:none;appearance:none;outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent;transition:border-color .15s,box-shadow .15s,background .15s,color .15s;}
.mo-classic-add:hover,.mo-classic-add:focus,.mo-classic-add:active{background:#fff;border-color:var(--gold);color:#4e3a1c;outline:none;box-shadow:0 0 0 2px rgba(197,168,107,.12),0 8px 18px rgba(0,0,0,.06);}
.mo-classic-add.secondary{background:#f7f1e6;}
.mo-classic-toolbar{display:none;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:10px;align-items:end;}
.mo-classic-toolbar.on{display:grid;}
.mo-classic-field{display:flex;flex-direction:column;gap:6px;min-width:0;}
.mo-classic-label{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap;}
.mo-classic-select,.mo-classic-color,.mo-classic-range{
  width:100%; height:44px; border:1px solid var(--border); border-radius:12px; background:#fff;
  font:600 14px 'DM Sans',sans-serif; color:var(--text);
}
.mo-classic-select{padding:0 12px;}
.mo-classic-color{padding:6px;}
.mo-classic-range{padding:0 8px;}
.mo-classic-step3-note{font-size:12px;line-height:1.35;color:var(--muted);}
@media (max-width:520px){
  .seo-content{padding:12px 12px 28px;}
  .seo-section{padding:14px 12px;border-radius:16px;}
  .seo-title{font-size:26px;line-height:1.14;margin-bottom:14px;}
  .seo-section-intro,.seo-lead{font-size:15px;line-height:1.72;text-align:center;margin-left:auto;margin-right:auto;}
  .seo-copy p{font-size:15px;line-height:1.8;}
  .seo-benefit-card,.seo-occasion-card,.seo-faq-item,.seo-spec-box{padding:12px;}
  .seo-tier-box .m-tier-grid{grid-template-columns:1fr;}
  .seo-tier-box .m-tier-cell{gap:8px;min-height:64px;padding:12px 10px;}
  .seo-tier-box .m-tier-qty{font-size:15px;}
  .seo-tier-box .m-tier-price{font-size:24px;}
  .seo-tier-box .m-tier-unit{font-size:10px;}
  .seo-tier-box .m-tier-pct{font-size:12px;}
  .m-info,.m-variants-section,.m-cta{padding-left:14px;padding-right:14px;}
  .m-title{font-size:26px;line-height:1.12;}
  .hero-grid{gap:12px;padding:24px 28px 38px 18px;}
  .hero-labels{gap:10px;padding:0 12px;}
  .hero-chip{min-width:0;flex:1 1 0;padding:5px 8px;}
  .step-card h3,.step-card-title{font-size:17px;}
  .step-card p,.step-card-copy{font-size:14px;line-height:1.6;}
  .seo-benefit-card h3,.seo-occasion-card h3,.seo-faq-item h3,.seo-spec-box h3{font-size:17px;}
  .mo-classic-editor{gap:10px;}
  .mo-classic-toolbar{display:none;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) minmax(0,1fr);gap:8px;margin-top:8px;}
  .mo-classic-toolbar.on{display:grid;}
  .mo-classic-label{font-size:11px;}
  .mo-classic-select,.mo-classic-range{height:40px;font-size:13px;}
}
@media (max-width:380px){
  .m-variants{grid-template-columns:1fr;}
  .m-price-row{flex-wrap:wrap;}
  .m-gallery-wrap,.m-g-slide{height:336px;}
  .hero-grid{padding:22px 22px 40px 16px;}
  .hero-mag.classic,.hero-mag.retro{width:108px;height:136px;}
  .hero-mag.retro .hero-photo{height:94px;}
  .hero-cap{height:36px;}
  .hero-cap .l1{font-size:13px;}
  .hero-cap .l2{font-size:8px;}
  .mo-classic-toolbar{grid-template-columns:1fr;gap:8px;}
}

/* ════════════════════════════════════
   CHECKOUT OVERLAY
════════════════════════════════════ */
.checkout-overlay{
  display:none;position:fixed;inset:0;z-index:300;
  background:rgba(23,21,14,.55);backdrop-filter:blur(6px);
  align-items:flex-end;justify-content:center;
  -webkit-tap-highlight-color:transparent;
}
.checkout-overlay.open{display:flex;}


.checkout-panel{
  width:100%;max-width:520px;max-height:92vh;
  background:var(--white);
  border-radius:24px 24px 0 0;
  box-shadow:0 -8px 60px rgba(0,0,0,.25);
  display:flex;flex-direction:column;
  overflow:hidden;
  animation:coSlideUp .32s cubic-bezier(.22,1,.36,1);
}

@keyframes coSlideUp{from{transform:translateY(100%);}to{transform:translateY(0);}}
@keyframes coFadeIn{from{opacity:0;transform:scale(.96);}to{opacity:1;transform:scale(1);}}

.co-hdr{
  flex-shrink:0;display:flex;align-items:center;justify-content:space-between;
  padding:16px 20px 12px;border-bottom:1px solid var(--border);
}
.co-hdr-title{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;}
.co-hdr-close{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--border);
  background:var(--off);font-size:15px;cursor:pointer;color:var(--muted);
  display:flex;align-items:center;justify-content:center;transition:all .15s;}
.co-hdr-close:hover{border-color:var(--text);color:var(--text);}

.co-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0;}

/* Preview strip */
.co-preview{
  display:flex;align-items:center;gap:16px;
  padding:18px 20px;background:var(--off);
  border-bottom:1px solid var(--border);
}
.co-preview-mag{
  flex-shrink:0;width:80px;height:100px;
  border-radius:6px;overflow:hidden;
  background:linear-gradient(145deg,#f0ece4,#e8e3da);
  border:1px solid #ddd5c8;
  box-shadow:0 6px 16px rgba(0,0,0,.1);
  display:flex;align-items:center;justify-content:center;
}
.co-preview-mag img{width:100%;height:100%;object-fit:cover;}
.co-preview-mag canvas{width:100%;height:100%;display:block;}
.co-preview-info{flex:1;min-width:0;}
.co-preview-name{font-size:15px;font-weight:700;margin-bottom:2px;}
.co-preview-style{font-size:12px;color:var(--muted);}
.co-preview-edit{
  font-size:12px;color:var(--gold-dk);font-weight:700;
  background:none;border:none;cursor:pointer;padding:4px 0;
  font-family:'DM Sans',sans-serif;
}

/* Quantity selector */
.co-section{padding:16px 20px;}
.co-section+.co-section{border-top:1px solid var(--border);}
.co-sec-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;}

.co-qty-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.co-qty-card{
  border:2px solid var(--border);border-radius:12px;padding:12px;
  cursor:pointer;background:var(--white);transition:all .15s;
  position:relative;text-align:center;
}
.co-qty-card:hover{border-color:var(--gold);}
.co-qty-card.on{border-color:var(--gold);background:var(--gold-lt);}
.co-qty-card.on::after{
  content:'✓';position:absolute;top:6px;right:8px;
  width:18px;height:18px;border-radius:50%;
  background:var(--gold);color:#fff;font-size:10px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}
.co-qty-num{font-size:20px;font-weight:800;margin-bottom:2px;}
.co-qty-price{font-size:14px;font-weight:700;color:var(--gold-dk);}
.co-qty-per{font-size:11px;color:var(--muted);margin-top:1px;}
.co-qty-save{
  display:inline-block;margin-top:4px;
  font-size:10px;font-weight:700;color:var(--green);
  background:#edf7f1;padding:2px 7px;border-radius:20px;
}

/* Totals */
.co-totals{padding:14px 20px;background:var(--off);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.co-total-row{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-bottom:6px;}
.co-total-row:last-child{margin-bottom:0;}
.co-total-row.big{font-size:18px;font-weight:800;padding-top:6px;border-top:1px solid var(--border);margin-top:6px;}
.co-total-row .co-free{color:var(--green);font-weight:700;}
.co-total-label{color:var(--muted);}

/* Form */
.co-form{display:flex;flex-direction:column;gap:10px;}
.co-input{
  border:1.5px solid var(--border);border-radius:10px;
  padding:13px 14px;font-size:15px;font-family:'DM Sans',sans-serif;
  outline:none;width:100%;transition:border .15s;background:var(--white);
}
.co-input:focus{border-color:var(--gold);}
.co-input.error{border-color:#e53e3e;background:#fff5f5;}
.co-input-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.co-error-msg{font-size:11px;color:#e53e3e;font-weight:600;margin-top:-4px;display:none;}

/* Footer */
.co-footer{
  flex-shrink:0;padding:14px 20px;
  padding-bottom:calc(14px + var(--safe-b));
  border-top:1px solid var(--border);
  background:var(--white);
}
.co-submit{
  width:100%;padding:17px;border:none;border-radius:14px;
  background:#c9971f;color:#fff;
  font-size:17px;font-weight:800;font-family:'DM Sans',sans-serif;
  cursor:pointer;transition:all .2s;
  display:flex;align-items:center;justify-content:center;gap:8px;
  box-shadow:0 8px 24px rgba(201,151,31,.32);
}
.co-submit:hover{background:#b8880f;transform:translateY(-1px);box-shadow:0 8px 28px rgba(201,151,31,.4);}
.co-submit:active{transform:scale(.98);}
.co-submit.sending{background:var(--muted);cursor:wait;box-shadow:none;}
.co-pay-note{font-size:12px;color:var(--muted);text-align:center;margin-top:8px;}
.co-pay-note strong{color:var(--text);}

/* Success screen */
.co-success{
  display:none;flex-direction:column;align-items:center;justify-content:center;
  padding:40px 24px;text-align:center;min-height:340px;
}
.co-success.show{display:flex;}
.co-success-icon{font-size:56px;margin-bottom:16px;animation:coBounce .5s ease;}
@keyframes coBounce{0%{transform:scale(0);}60%{transform:scale(1.15);}100%{transform:scale(1);}}
.co-success-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:700;margin-bottom:8px;}
.co-success-msg{font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:24px;}
.co-success-btn{
  padding:14px 32px;border:none;border-radius:12px;
  background:var(--text);color:#fff;font-size:15px;font-weight:700;
  font-family:'DM Sans',sans-serif;cursor:pointer;
}
/* Cart items in checkout */
.co-cart-item{
  display:flex;align-items:center;gap:12px;
  padding:14px 20px;border-bottom:1px solid var(--border);
  position:relative;
}
.co-cart-thumb{
  flex-shrink:0;width:56px;height:70px;border-radius:6px;
  overflow:hidden;background:linear-gradient(145deg,#f0ece4,#e8e3da);
  border:1px solid #ddd5c8;box-shadow:0 3px 8px rgba(0,0,0,.08);
}
.co-cart-thumb canvas,.co-cart-thumb img{width:100%;height:100%;display:block;object-fit:cover;}
.co-cart-thumb.is-retro{background:#f7f1e6;}
.co-cart-thumb.is-retro img{object-fit:contain;padding:2px;background:#f7f1e6;}
.co-cart-info{flex:1;min-width:0;}
.co-cart-name{font-size:13px;font-weight:700;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.co-cart-style{font-size:11px;color:var(--muted);}
.co-cart-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0;}
.co-cart-price{font-size:14px;font-weight:800;}
.co-cart-qty{
  display:flex;align-items:center;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#fff;
}
.co-cart-qty button{
  width:28px;height:28px;border:0;background:#fff;color:#222;font-size:16px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
}
.co-cart-qty button:hover{background:var(--off);}
.co-cart-qty span{
  width:28px;text-align:center;font-size:13px;font-weight:800;
  border-left:1px solid var(--border);border-right:1px solid var(--border);
  line-height:28px;
}
.co-cart-del{
  position:absolute;top:6px;right:8px;
  width:22px;height:22px;border-radius:50%;border:none;
  background:var(--off);color:var(--muted);font-size:11px;
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:all .15s;
}
.co-cart-del:hover{background:#fee;color:#e53e3e;}

/* Add more button */
.co-add-more{
  width:100%;padding:12px;border:2px dashed var(--border);border-radius:12px;
  background:var(--off);font-size:14px;font-weight:700;color:var(--text);
  font-family:'DM Sans',sans-serif;cursor:pointer;transition:all .15s;
}
.co-add-more:hover{border-color:var(--gold);background:var(--gold-lt);color:var(--gold-dk);}

/* Cart empty state */
.co-cart-empty{
  padding:30px 20px;text-align:center;color:var(--muted);
}
.co-cart-empty-icon{font-size:40px;margin-bottom:8px;}
.co-cart-empty-text{font-size:14px;font-weight:600;margin-bottom:4px;}
.co-cart-empty-sub{font-size:12px;}

/* After add-to-cart confirmation toast */
.co-added-toast{
  position:fixed;bottom:100px;left:50%;transform:translateX(-50%);
  background:var(--text);color:#fff;padding:12px 20px;border-radius:14px;
  font-size:14px;font-weight:700;box-shadow:0 8px 30px rgba(0,0,0,.25);
  z-index:350;display:none;align-items:center;gap:10px;white-space:nowrap;
  animation:coToastIn .3s ease;
}
.co-added-toast.show{display:flex;}
@keyframes coToastIn{from{opacity:0;transform:translateX(-50%) translateY(20px);}to{opacity:1;transform:translateX(-50%) translateY(0);}}
.co-toast-btn{
  padding:7px 14px;border:none;border-radius:8px;
  background:var(--gold);color:#fff;font-size:12px;font-weight:700;
  font-family:'DM Sans',sans-serif;cursor:pointer;white-space:nowrap;
}

.mo-rotate-wrap{
  display:none !important;
}

/* Desktop modal — centered card like checkout panel */


/* ════════════════════════════════════
   STICKY CTA (mobile)
════════════════════════════════════ */
.m-sticky-cta{position:fixed;bottom:0;left:0;right:0;z-index:90;background:#fff;padding:10px 16px;box-shadow:0 -2px 12px rgba(0,0,0,.1);border-top:1px solid var(--border);display:none;}
.m-sticky-btn{width:100%;height:48px;border:none;border-radius:14px;font-size:15px;font-weight:700;font-family:'DM Sans',sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;background:#c9971f;color:#fff;box-shadow:0 4px 14px rgba(201,151,31,.3);transition:all .15s;}
.m-sticky-btn:active{transform:scale(.98);}
.m-sticky-cta.state-cart .m-sticky-btn{background:#c9971f;}


/* ════════════════════════════════════
   FOOTER
════════════════════════════════════ */
.mag-footer{background:#17150e;color:#b8b1a4;padding:40px 20px 24px;margin-top:40px;}
.mag-footer-inner{max-width:800px;margin:0 auto;text-align:center;}
.mag-footer-brand{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:700;color:#fff;margin-bottom:16px;}
.mag-footer-brand em{font-style:normal;color:var(--gold);}
.mag-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-bottom:18px;}
.mag-footer-links a{color:#b8b1a4;text-decoration:none;font-size:13px;transition:color .15s;}
.mag-footer-links a:hover{color:var(--gold);}
.mag-footer-info{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;font-size:12px;color:#7a7469;margin-bottom:16px;}
.mag-footer-copy{font-size:11px;color:#5a5549;}
@media(min-width:768px){
.magneti-plugin{overflow:auto;}
  .mobile-wrap{display:none!important;}
  .desktop{display:block;}

  .d-hdr{background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:0 40px;height:58px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;}
  .logo{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:700;}
  .logo em{color:var(--gold);font-style:normal;}
  .d-nav{display:flex;gap:24px;font-size:13px;}
  .d-nav a{color:var(--muted);text-decoration:none;cursor:pointer;}
  .d-nav a:hover{color:var(--text);}
  .d-cart-btn{display:flex;align-items:center;gap:6px;background:var(--text);color:#fff;border:none;border-radius:20px;padding:7px 14px;font-size:13px;font-weight:600;font-family:'DM Sans',sans-serif;cursor:pointer;}
  .d-cn{background:var(--gold);color:#fff;width:17px;height:17px;border-radius:50%;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;}

  .d-bc{padding:12px 40px;font-size:12px;color:var(--muted);}
  .d-bc span{color:var(--text);font-weight:500;}

  .d-product{max-width:1160px;margin:0 auto;padding:0 24px 32px;display:grid;grid-template-columns:1fr 420px;gap:40px;align-items:start;}

  .d-left{display:flex;flex-direction:column;gap:16px;max-width:520px;}
  .d-gallery{background:linear-gradient(145deg,#f0ece4,#e8e3da);border-radius:20px;border:1px solid var(--border);min-height:460px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:grab;}
  .d-gallery:active{cursor:grabbing;}
  .d-gallery::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 20%,rgba(255,255,255,.28) 0%,transparent 60%);pointer-events:none;}

  .d-live{position:absolute;top:12px;left:12px;z-index:5;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);border-radius:20px;padding:5px 11px;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:5px;}
  .d-live.on{color:var(--green);}
  .ldot{width:6px;height:6px;border-radius:50%;background:var(--muted);}
  .d-live.on .ldot{background:var(--green);animation:blink 1.4s infinite;}
  @keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}

  .d-ph{width:220px;height:275px;border-radius:8px;background:linear-gradient(145deg,#dad6ce,#ccc8bf);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(0,0,0,.22);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;}
  .d-ph-icon{font-size:52px;opacity:.2;}

  .d-gallery .mag-s,.d-gallery .mag-r{--mw:220px;--mh:275px;}

  .d-thumbs{display:flex;gap:8px;}
  .d-thumb{width:72px;height:72px;border-radius:8px;border:2px solid var(--border);background:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s;font-size:20px;overflow:hidden;}
  .d-thumb.on{border-color:var(--gold);}

  .d-right{display:flex;flex-direction:column;gap:12px;padding-top:4px;}
  .d-rating{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);}
  .d-stars{color:#f5a623;}
  .d-title{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:700;line-height:1.08;text-align:center;margin:0;width:100%;max-width:none;}
  .d-subtitle{font-size:14px;color:var(--gold-dk);font-weight:600;line-height:1.4;}
  .d-desc{font-size:14.5px;color:#2d2a24;line-height:1.8;}
  .d-price-row{display:flex;align-items:baseline;gap:10px;}
  .d-price{font-size:34px;font-weight:700;}
  .d-price-old{font-size:16px;color:var(--muted);text-decoration:line-through;}
  .d-save{font-size:12px;font-weight:700;color:var(--green);background:#edf7f1;padding:3px 8px;border-radius:20px;}
  .d-badges{display:flex;gap:8px;flex-wrap:nowrap;}
  .d-badge{font-size:13px;font-weight:500;color:var(--muted);background:var(--off);border-radius:20px;padding:5px 12px;white-space:nowrap;}
  .d-badge.g{background:#edf7f1;color:var(--green);}
  .d-badge.ship{font-weight:700;background:#edf7f1;color:var(--green);}
  /* tier styles moved to global scope */
  .d-cta-main,.m-cta-main{background:#c9971f !important;color:#fff !important;box-shadow:0 8px 24px rgba(201,151,31,.32) !important;}
  .d-cta-main{width:100%;margin-bottom:8px;}
  .d-cta-main:hover{background:#b8880f !important;}
  .m-cta-main::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.1);animation:pers-pulse 2s ease-in-out infinite;}
  .d-div{height:1px;background:var(--border);}
  .d-lbl{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;}

  .d-variants{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .d-vc{border:2px solid var(--border);border-radius:10px;padding:12px 14px;cursor:pointer;background:var(--white);transition:all .15s;}
  .d-vc:hover,.d-vc.on{border-color:var(--gold);background:var(--gold-lt);}
  .d-vc-name{font-size:14px;font-weight:600;margin-bottom:2px;}
  .d-vc-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;}
  .d-vc-desc{font-size:12px;color:var(--muted);margin:0;line-height:1.25;flex:1;min-width:0;}
  .d-vc-price{font-size:13px;font-weight:700;color:var(--gold-dk);margin:0;white-space:nowrap;flex-shrink:0;}

  .d-upload-zone{border:2px dashed var(--border);border-radius:12px;padding:22px;text-align:center;cursor:pointer;background:var(--off);transition:all .2s;position:relative;}
  .d-upload-zone:hover{border-color:var(--gold);background:var(--gold-lt);}
  .d-upload-zone input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;}
  .d-uz-icon{font-size:26px;margin-bottom:6px;}
  .d-uz-text{font-size:14px;font-weight:600;margin-bottom:3px;}
  .d-uz-sub{font-size:12px;color:var(--muted);}
  .d-uz-btn{display:inline-block;margin-top:10px;padding:9px 22px;background:var(--text);color:#fff;border-radius:8px;font-size:13px;font-weight:700;pointer-events:none;}

  .d-ctrl-group{display:flex;flex-direction:column;gap:12px;}
  .d-sl-row{display:flex;flex-direction:column;gap:6px;}
  .d-sl-lbl{font-size:12px;font-weight:500;color:var(--muted);display:flex;justify-content:space-between;}
  .d-sl-lbl em{color:var(--gold-dk);font-style:normal;font-weight:700;}
  input[type=range]{-webkit-appearance:none;width:100%;height:4px;background:var(--border);border-radius:2px;outline:none;}
  input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--gold);cursor:pointer;box-shadow:0 2px 6px rgba(200,167,107,.5);}

  .d-mini-row{display:flex;gap:8px;margin-top:4px;}
  .d-mini{flex:1;padding:9px;border:1.5px solid var(--border);border-radius:8px;background:var(--white);font-size:12px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;color:var(--text);transition:all .15s;}
  .d-mini:hover{border-color:var(--gold);color:var(--gold-dk);}

  .d-tf{border:1.5px solid var(--border);border-radius:8px;padding:11px 13px;font-size:14px;font-family:'DM Sans',sans-serif;outline:none;width:100%;transition:border .15s;background:var(--white);margin-bottom:8px;}
  .d-tf:focus{border-color:var(--gold);}
  .d-font-row{display:flex;gap:6px;flex-wrap:wrap;}
  .d-fc{padding:5px 11px;border:1.5px solid var(--border);border-radius:20px;font-size:12px;cursor:pointer;background:var(--white);transition:all .15s;}
  .d-fc.on{border-color:var(--gold);background:var(--gold-lt);color:var(--gold-dk);font-weight:700;}

  .d-buy-row{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:12px;margin-bottom:2px;}
  .d-qty-row{min-width:0;height:56px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;box-shadow:none;transition:opacity .18s ease,filter .18s ease;}
  .d-qty-row .d-lbl{display:none;}
  .d-qty-ctrl{width:112px;display:grid;grid-template-columns:36px minmax(40px,1fr) 36px;align-items:stretch;height:40px;border:1.5px solid rgba(17,24,39,.10);border-radius:14px;overflow:hidden;background:var(--white);box-shadow:0 5px 14px rgba(17,24,39,.04);}
  .d-qb{display:flex;align-items:center;justify-content:center;width:36px;height:40px;padding:0;margin:0;border:none;border-radius:0;background:var(--white);color:var(--text);font-size:18px;font-weight:700;line-height:1;cursor:pointer;transition:background .1s,color .1s;-webkit-appearance:none;appearance:none;outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;}
  .d-qb:hover,.d-qb:focus,.d-qb:active{background:var(--white);color:var(--text);outline:none;box-shadow:none;}
  .d-qv{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 4px;border-left:1px solid rgba(17,24,39,.08);border-right:1px solid rgba(17,24,39,.08);background:var(--white);color:var(--text);text-align:center;font-weight:700;font-size:14px;line-height:1;font-family:'DM Sans',sans-serif;user-select:none;}

  .d-atc{width:100%;min-width:0;height:56px;padding:0 22px;border:none;border-radius:18px;font-size:16px;font-weight:700;font-family:'DM Sans',sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .15s;}
  .d-atc.on{background:#c9971f;color:#fff;box-shadow:0 8px 24px rgba(201,151,31,.32);}
  .d-atc.on:hover,.d-atc.on:focus,.d-atc.on:active{background:#c9971f;color:#fff;box-shadow:0 8px 24px rgba(201,151,31,.32);outline:none;}
  .d-atc.on:active{transform:scale(.98);}
  .d-atc.off{background:#d7d1c7;color:#8f877b;cursor:not-allowed;}
  .d-atc-hint{grid-column:1 / -1;font-size:13px;color:var(--green);text-align:center;font-weight:600;margin-top:0;}
  .d-atc-hint strong{color:var(--green);}
  .d-cta-hint{font-size:13px;color:var(--muted);text-align:center;margin-top:6px;font-style:italic;}
  .d-trust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:6px;}
  .d-ti{font-size:14px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 14px;background:var(--off);border:1px solid var(--border);border-radius:12px;text-align:center;min-height:54px;}
  .d-side-note{margin-top:8px;padding:16px 18px;background:linear-gradient(180deg,#fbf8f2 0%,#f4efe5 100%);border:1px solid var(--border);border-radius:14px;text-align:center;box-shadow:0 4px 14px rgba(17,24,39,.04);}
  .d-side-note-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:700;line-height:1.12;color:#17150e;margin-bottom:8px;}
  .d-side-note p{font-size:14px;line-height:1.7;color:#5f5a4f;margin:0;}

  .d-tabs{margin-top:8px;}
  .d-tab-nav{display:flex;border-bottom:2px solid var(--border);margin-bottom:20px;}
  .d-tb{padding:11px 20px;font-size:13px;font-weight:500;color:var(--muted);background:none;border:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s;font-family:'DM Sans',sans-serif;}
  .d-tb.on{color:var(--text);border-bottom-color:var(--text);font-weight:700;}
  .d-tc{display:none;font-size:14px;color:var(--muted);line-height:1.8;}
  .d-tc.on{display:block;}
  .d-spec-g{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
  .d-sc{background:var(--white);border:1px solid var(--border);border-radius:10px;padding:14px;text-align:center;}
  .d-sc-i{font-size:22px;display:block;margin-bottom:4px;}
  .d-sc-n{font-size:11px;color:var(--muted);margin-bottom:2px;}
  .d-sc-v{font-size:13px;font-weight:700;}
  .d-rev-g{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
  .d-rc{background:var(--white);border:1px solid var(--border);border-radius:10px;padding:16px;}
  .d-rc-s{color:#f5a623;font-size:12px;margin-bottom:6px;}
  .d-rc-t{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:8px;}
  .d-rc-a{font-size:12px;font-weight:700;}

  /* Desktop: use mobile gallery instead of old d-gallery */
  .d-gallery,.d-thumbs{display:none!important;}
  #dGallerySlot{display:block;min-height:500px;}
  #dGallerySlot:empty{border-radius:20px;border:1px solid var(--border);background:linear-gradient(145deg,#f0ece4,#e8e3da);}
  #dGallerySlot:empty ~ #kako-funkcionise{opacity:0;transform:translateY(10px);pointer-events:none;}
  #dGallerySlot .m-gallery-wrap{height:500px!important;border-radius:20px;border:1px solid var(--border);overflow:hidden;}
  #dGallerySlot .m-g-slide{height:500px!important;padding:30px 24px 52px!important;}
  #dGallerySlot .m-dots{bottom:16px;}
  #dGallerySlot .m-gallery-arrow{display:flex!important;}
  #dGallerySlot .m-gallery-wrap{cursor:grab;}
  #dGallerySlot .m-gallery-wrap:active{cursor:grabbing;}
  #dGallerySlot .hero-mag.classic,#dGallerySlot .hero-mag.retro{width:140px!important;height:175px!important;}
  #dGallerySlot .hero-mag.retro .hero-photo{height:122px!important;}
  #dGallerySlot .hero-cap{height:40px!important;}
  #dGallerySlot .hero-cap .l1{font-size:16px!important;}
  #dGallerySlot .hero-cap .l2{font-size:9px!important;}
  #dGallerySlot .hero-grid{gap:22px!important;padding:28px 48px 44px 26px!important;}
  #dGallerySlot .m-scene-mini.a{width:100px!important;height:124px!important;left:30px!important;top:50px!important;}
  #dGallerySlot .m-scene-mini.b{width:104px!important;height:130px!important;right:26px!important;top:60px!important;}
  #dGallerySlot .m-scene-mini.c{width:84px!important;height:105px!important;right:40px!important;bottom:68px!important;}

  /* Sections below gallery */
  .d-section{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:20px;}
  .d-section-title{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;margin-bottom:14px;color:#17150e;letter-spacing:.01em;padding-bottom:8px;border-bottom:2px solid var(--gold);display:inline-block;}
  #kako-funkcionise .steps-row{gap:8px;}
  #kako-funkcionise .step-card{padding:14px 10px 12px;}
  #kako-funkcionise .step-num{width:28px;height:28px;font-size:13px;margin-bottom:5px;}
  #kako-funkcionise .step-icon{font-size:24px;margin-bottom:6px;}
  #kako-funkcionise .step-card-title{font-size:16px;line-height:1.2;margin:6px 0 4px;}
  #kako-funkcionise .step-card-copy{font-size:13px;line-height:1.55;}

  /* Spec grid — matches mobile m-spec style */
  .d-spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
  .d-spec-box{background:var(--off);border:1px solid var(--border);border-radius:10px;padding:12px 8px;text-align:center;}
  .d-spec-i{font-size:18px;margin-bottom:3px;}
  .d-spec-n{font-size:10px;color:var(--muted);margin-bottom:1px;}
  .d-spec-v{font-size:12px;font-weight:700;}

  /* Review scroll — horizontal like mobile */
  .d-rev-wrap{position:relative;display:flex;align-items:center;gap:10px;}
  .d-rev-scroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scroll-behavior:smooth;flex:1 1 auto;}
  .d-rev-scroll::-webkit-scrollbar{display:none;}
  .d-rev-card{flex-shrink:0;width:200px;background:var(--off);border:1px solid var(--border);border-radius:10px;padding:10px;scroll-snap-align:start;}
  .d-rev-nav{flex:0 0 36px;width:36px;height:36px;border-radius:999px;border:1px solid var(--border);background:var(--white);color:var(--text);display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 3px 10px rgba(0,0,0,.06);transition:all .15s;-webkit-appearance:none;appearance:none;outline:none;-webkit-tap-highlight-color:transparent;}
  .d-rev-nav:hover,.d-rev-nav:focus,.d-rev-nav:active{background:var(--white);border-color:var(--gold);color:var(--gold-dk);box-shadow:0 5px 14px rgba(0,0,0,.08);outline:none;}
  .d-rev-stars{color:#f5a623;font-size:11px;margin-bottom:3px;}
  .d-rev-text{font-size:12px;color:#2d2a24;line-height:1.45;margin-bottom:4px;font-style:italic;}
  .d-rev-author{font-size:11px;font-weight:700;color:#17150e;}
  .d-rev-date{font-size:9px;color:var(--muted);}
  .seo-content{padding:0 24px 48px;}
  .seo-shell{gap:18px;}
  .seo-section{padding:28px 30px;}
  .seo-title{font-size:38px;line-height:1.12;margin-bottom:16px;text-align:center;}
  .seo-section-intro,.seo-lead{font-size:18px;line-height:1.75;max-width:900px;text-align:center;margin-left:auto;margin-right:auto;}
  .seo-copy{max-width:940px;margin:0 auto;}
  .seo-copy p{max-width:none;font-size:17px;line-height:1.9;}
  .seo-steps{grid-template-columns:repeat(3,1fr);}
  .seo-benefit-grid,.seo-occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .seo-faq-list{grid-template-columns:repeat(2,minmax(0,1fr));}
  .seo-review-card{flex-basis:260px;}
  .seo-spec-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .seo-hero-intro{font-size:14px;max-width:560px;}
  .step-card h3,.step-card-title{font-size:20px;}
  .step-card p,.step-card-copy{font-size:15px;line-height:1.7;}
  .seo-benefit-card h3,.seo-occasion-card h3,.seo-faq-item h3,.seo-spec-box h3{font-size:21px;margin-bottom:10px;}
  .seo-benefit-card p,.seo-occasion-card p,.seo-faq-item p,.seo-spec-box p{font-size:15px;line-height:1.8;}
  .desktop-only{display:block;}
  .seo-mobile-only{display:none;}
.mobile-wrap{display:none!important;}
.checkout-overlay.open{align-items:center;}
.checkout-panel{
    border-radius:24px;
    max-height:88vh;
    box-shadow:0 24px 80px rgba(0,0,0,.3);
    animation:coFadeIn .28s ease;
  }
.modal-wrap.open{
    background:rgba(23,21,14,.5);
    backdrop-filter:blur(6px);
    align-items:center;
    justify-content:center;
    padding:24px;
  }
  .modal-wrap{
    flex-direction:column;
    align-items:center;
    justify-content:center;
  }
  .modal-wrap.open .mo-hdr,
  .modal-wrap.open .mo-preview,
  .modal-wrap.open .mo-body,
  .modal-wrap.open .mo-foot{
    max-width:600px;
    width:100%;
    margin:0 auto;
  }
  .modal-wrap.open .mo-hdr{
    border-radius:24px 24px 0 0;
  }
  .modal-wrap.open .mo-foot{
    border-radius:0 0 24px 24px;
    box-shadow:0 24px 80px rgba(0,0,0,.15);
  }
  .modal-wrap.open .mo-preview{
    min-height:360px;
    max-height:64vh;
    padding:44px 44px 58px 24px;
  }
  .modal-wrap.open .mo-body{
    background:var(--white);
    border-left:1px solid var(--border);
    border-right:1px solid var(--border);
  }
.m-sticky-cta{display:none!important;}
}
