/* MS001 editorial PDP only. Commerce state remains in native WooCommerce fields. */
body.marksake-pdp-v3-target .site-main,
body.marksake-pdp-v3-target .marksake-product-page { max-width: none; padding: 0; }
body.marksake-pdp-v3-target .ms-pdp { --ms-ink:#28211b; --ms-muted:#665c53; --ms-line:#d9d0c6; --ms-ivory:#fcfaf6; --ms-stone:#f2eee8; --ms-clay:#a76445; --ms-wide:1400px; --ms-standard:1180px; --ms-reading:790px; background:var(--ms-ivory); color:var(--ms-ink); overflow:hidden; }
.ms-pdp *, .ms-pdp *::before, .ms-pdp *::after { box-sizing:border-box; }
.ms-pdp__wide { width:min(calc(100% - 56px), var(--ms-wide)); margin-inline:auto; }
.ms-pdp__standard { width:min(calc(100% - 56px), var(--ms-standard)); margin-inline:auto; }
.ms-pdp__reading { width:min(calc(100% - 56px), var(--ms-reading)); margin-inline:auto; }
.ms-pdp__eyebrow { margin:0 0 14px; color:var(--ms-clay); font-size:11px; font-weight:700; letter-spacing:.16em; line-height:1.3; text-transform:uppercase; }
.ms-pdp h1,.ms-pdp h2,.ms-pdp h3 { color:var(--ms-ink); font-family:Georgia,"Times New Roman",serif; font-weight:400; }
.ms-pdp h2 { margin:0; font-size:clamp(37px,4.2vw,62px); letter-spacing:-.052em; line-height:.99; }
.ms-pdp__hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr); gap:clamp(40px,5vw,82px); align-items:start; padding:clamp(38px,6vw,90px) 0 clamp(90px,11vw,160px); }
.ms-pdp__gallery { min-width:0; position:sticky; top:24px; }
.ms-pdp__gallery .woocommerce-product-gallery { position:relative!important; display:block!important; float:none!important; width:100%!important; margin:0!important; }
.ms-pdp__gallery .woocommerce-product-gallery__wrapper { width:100%; overflow:hidden; background:#eee9e2; }
.ms-pdp__gallery .woocommerce-product-gallery__image { display:none!important; }
.ms-pdp__gallery .woocommerce-product-gallery:not(.has-ms-gallery-controls) .woocommerce-product-gallery__image:first-child,.ms-pdp__gallery .woocommerce-product-gallery.has-ms-gallery-controls .woocommerce-product-gallery__image.is-ms-gallery-active { display:block!important; }
.ms-pdp__gallery .woocommerce-product-gallery__image a { display:block; }
.ms-pdp__gallery .woocommerce-product-gallery__image img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.ms-pdp__gallery-thumbs { display:flex; gap:10px; margin:14px 0 0; padding:0; overflow-x:auto; scrollbar-width:thin; }
.ms-pdp__gallery-thumb { flex:0 0 70px; width:70px; height:70px; border:1px solid transparent; background:#eee9e2; padding:0; cursor:pointer; }
.ms-pdp__gallery-thumb[aria-pressed="true"] { border-color:var(--ms-ink); }
.ms-pdp__gallery-thumb:focus-visible { outline:2px solid var(--ms-clay); outline-offset:3px; }
.ms-pdp__gallery-thumb img { display:block; width:100%; height:100%; object-fit:cover; opacity:.68; transition:opacity .2s ease; }
.ms-pdp__gallery-thumb:hover img,.ms-pdp__gallery-thumb[aria-pressed="true"] img { opacity:1; }
.ms-pdp__gallery .flex-control-thumbs { display:none!important; }
.ms-pdp__gallery .woocommerce-product-gallery__trigger { border-radius:0; background:rgba(252,250,246,.92); color:var(--ms-ink); }
.ms-pdp__summary { min-width:0; padding-top:clamp(2px,1vw,16px); }
.ms-pdp__title { margin:0 0 20px; font-size:clamp(42px,4.2vw,68px); letter-spacing:-.06em; line-height:.95; }
.ms-pdp__price .price { display:block; margin:0 0 25px!important; color:var(--ms-clay)!important; font-size:20px!important; font-weight:600!important; }
.ms-pdp__definition { max-width:510px; margin:0; color:var(--ms-muted); font-size:17px; line-height:1.65; }
.ms-pdp__benefits { display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; margin:28px 0 34px; padding:22px 0; border-top:1px solid var(--ms-line); border-bottom:1px solid var(--ms-line); list-style:none; color:#51483f; font-size:13px; line-height:1.45; }
.ms-pdp__benefits li { position:relative; padding-left:16px; }
.ms-pdp__benefits li::before { position:absolute; left:0; color:var(--ms-clay); content:'•'; }
.ms-pdp__guided form.cart { margin:0!important; padding:0!important; border:0!important; }
.ms-pdp__guided .ms-guided-order { margin:0!important; padding:clamp(30px,3.2vw,42px)!important; box-shadow:0 16px 42px rgba(40,33,27,.07); }
.ms-pdp__guided .ms-guided-order__title { font-size:clamp(31px,3vw,43px); line-height:1.02; }
.ms-pdp__guided .ms-guided-order__intro { max-width:100%; font-size:15px; }
.ms-pdp__guided .ms-guided-order__progress { margin:34px 0 29px; }
.ms-pdp__guided .ms-guided-order__step { gap:10px; }
.ms-pdp__guided .ms-guided-order__step-dot { width:38px; height:38px; font-size:16px; }
.ms-pdp__guided .ms-guided-order__step-label { font-size:11px; }
.ms-pdp__guided .ms-guided-order__panel { padding:29px 0; }
.ms-pdp__guided .ms-guided-order__option { min-height:62px; }
.ms-pdp__guided .ms-guided-order__upload { min-height:142px; }
.ms-pdp__guided .ms-guided-order__footer { padding-top:26px; }
.ms-pdp__guided .ms-guided-order__next,.ms-pdp__guided .ms-guided-order__back { min-height:50px; padding-inline:22px; }
.ms-pdp__guided .single_add_to_cart_button { min-height:56px!important; width:100%; border-radius:0!important; background:var(--ms-ink)!important; color:#fff!important; font-size:11px!important; font-weight:700!important; letter-spacing:.15em!important; text-transform:uppercase!important; }
.ms-pdp__guided .single_add_to_cart_button:hover { background:#4b3f34!important; }
.ms-pdp__guided .single_add_to_cart_button:focus-visible,.ms-pdp__faq-item button:focus-visible,.ms-product-card a:focus-visible { outline:2px solid var(--ms-clay); outline-offset:4px; }
.ms-pdp__guided .quantity { display:none!important; }
.ms-pdp__guided .ppc-button-wrapper,.ms-pdp__guided .woocommerce-ppcp-button-container { margin-top:13px!important; opacity:.86; }
.ms-pdp__trust { display:grid; gap:0; margin-top:29px; border-top:1px solid var(--ms-line); }
.ms-pdp__trust p { display:grid; grid-template-columns:minmax(155px,.8fr) minmax(0,1.2fr); gap:18px; margin:0; padding:15px 0; border-bottom:1px solid var(--ms-line); font-size:12px; line-height:1.5; }
.ms-pdp__trust strong { font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
.ms-pdp__trust span { color:var(--ms-muted); }
.ms-pdp__intro { padding:0 0 clamp(92px,12vw,172px); }
.ms-pdp__intro h2 { margin-bottom:28px; }
.ms-pdp__intro > p:last-child { max-width:650px; margin:0; color:var(--ms-muted); font-size:clamp(17px,1.5vw,20px); line-height:1.65; }
.ms-pdp__split { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr); align-items:center; gap:clamp(40px,8vw,138px); padding:clamp(45px,7vw,106px); }
.ms-pdp__surface { background:var(--ms-stone); }
.ms-pdp__split--reverse { grid-template-columns:minmax(300px,.88fr) minmax(0,1.12fr); }
.ms-pdp__split--reverse .ms-pdp__visual { order:2; }
.ms-pdp__visual img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.ms-pdp__copy h2 { margin-bottom:25px; }
.ms-pdp__copy > p:not(.ms-pdp__eyebrow) { margin:0; color:var(--ms-muted); font-size:17px; line-height:1.7; }
.ms-pdp__copy .ms-pdp__small { margin-top:22px; color:var(--ms-ink); font-size:12px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.ms-pdp__proof { padding:clamp(95px,12vw,165px) 0; }
.ms-pdp__proof > h2 { max-width:690px; }
.ms-pdp__proof-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:55px; border-top:1px solid var(--ms-line); border-bottom:1px solid var(--ms-line); }
.ms-pdp__proof-grid p { display:grid; gap:10px; min-height:176px; margin:0; padding:27px 30px 25px 0; border-right:1px solid var(--ms-line); }
.ms-pdp__proof-grid p + p { padding-left:30px; }
.ms-pdp__proof-grid p:last-child { border-right:0; }
.ms-pdp__proof-grid span,.ms-pdp__how li span { color:var(--ms-clay); font:400 31px/1 Georgia,"Times New Roman",serif; }
.ms-pdp__proof-grid strong { font-size:15px; }
.ms-pdp__proof-grid em { color:var(--ms-muted); font-size:14px; font-style:normal; line-height:1.55; }
.ms-pdp__detail-visual { display:grid; grid-template-columns:1.34fr .66fr; align-items:stretch; margin-bottom:clamp(92px,12vw,172px); background:#ded8d0; }
.ms-pdp__detail-visual > div:first-child img { display:block; width:100%; height:100%; min-height:580px; object-fit:cover; }
.ms-pdp__detail-visual-copy { display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(34px,5vw,75px); }
.ms-pdp__detail-visual-copy > p:last-child { margin:0; color:#51483f; font:400 clamp(23px,2.4vw,34px)/1.18 Georgia,"Times New Roman",serif; letter-spacing:-.035em; }
.ms-pdp__moments { padding-bottom:clamp(92px,12vw,172px); }
.ms-pdp__moments > h2 { margin-bottom:50px; }
.ms-pdp__moment-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.ms-pdp__moment-grid article div { overflow:hidden; background:#eee9e2; }
.ms-pdp__moment-grid img { display:block; width:100%; aspect-ratio:1/1.05; object-fit:cover; transition:transform .45s ease; }
.ms-pdp__moment-grid article:hover img { transform:scale(1.02); }
.ms-pdp__moment-grid p { margin:18px 0 8px; color:var(--ms-clay); font-size:10px; font-weight:700; letter-spacing:.13em; }
.ms-pdp__moment-grid h3 { margin:0; font-size:25px; letter-spacing:-.035em; line-height:1.08; }
.ms-pdp__how { padding:clamp(48px,7vw,100px); margin-bottom:clamp(92px,12vw,172px); }
.ms-pdp__how > h2 { max-width:570px; }
.ms-pdp__how ol { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin:54px 0 0; padding:0; list-style:none; }
.ms-pdp__how li { display:grid; gap:14px; }
.ms-pdp__how li strong { max-width:140px; font-size:14px; line-height:1.35; }
.ms-pdp__details { padding-bottom:clamp(92px,12vw,172px); }
.ms-pdp__details > h2 { max-width:680px; margin-bottom:50px; }
.ms-pdp__details dl { display:grid; grid-template-columns:1fr 1fr; margin:0; border-top:1px solid var(--ms-line); }
.ms-pdp__details dl > div { display:grid; grid-template-columns:minmax(120px,.75fr) minmax(0,1.25fr); gap:20px; padding:17px 0; border-bottom:1px solid var(--ms-line); }
.ms-pdp__details dl > div:nth-child(odd) { padding-right:26px; }
.ms-pdp__details dl > div:nth-child(even) { padding-left:26px; border-left:1px solid var(--ms-line); }
.ms-pdp__details dt { color:var(--ms-muted); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.ms-pdp__details dd { margin:0; font-size:14px; line-height:1.5; }
.ms-pdp__for { padding:clamp(70px,9vw,132px) 0; border-top:1px solid var(--ms-line); }
.ms-pdp__for > h2 { max-width:760px; margin-bottom:54px; }
.ms-pdp__for > div { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.ms-pdp__for p { margin:0; }
.ms-pdp__for strong,.ms-pdp__for span { display:block; }
.ms-pdp__for strong { margin-bottom:12px; font-size:10px; letter-spacing:.13em; }
.ms-pdp__for span { color:var(--ms-muted); font-size:14px; line-height:1.55; }
.ms-pdp__faq { padding-bottom:clamp(92px,12vw,172px); }
.ms-pdp__faq > h2 { margin-bottom:45px; }
.ms-pdp__accordion { border-top:1px solid var(--ms-line); }
.ms-pdp__faq-item { border-bottom:1px solid var(--ms-line); }
.ms-pdp__faq-item h3 { margin:0; }
.ms-pdp__faq-item button { display:flex; width:100%; align-items:center; justify-content:space-between; gap:25px; padding:21px 0; border:0; background:none; color:var(--ms-ink); cursor:pointer; font:400 21px/1.2 Georgia,"Times New Roman",serif; text-align:left; }
.ms-pdp__faq-item button span:last-child { color:var(--ms-clay); font:300 27px/1 Arial,sans-serif; }
.ms-pdp__faq-item > div { max-width:730px; padding:0 0 24px; color:var(--ms-muted); font-size:15px; line-height:1.65; }
.ms-pdp__faq-item > div p { margin:0; }
.ms-pdp__related { padding:clamp(70px,9vw,132px) 0; border-top:1px solid var(--ms-line); }
.ms-pdp__related h2 { margin-bottom:48px; }
.ms-product-card-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:21px; }
.ms-product-card a { display:block; color:var(--ms-ink); text-decoration:none; }
.ms-product-card__image { display:block; overflow:hidden; background:#eee9e2; }
.ms-product-card__image img { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; transition:transform .35s ease; }
.ms-product-card a:hover img { transform:scale(1.018); }
.ms-product-card__title,.ms-product-card__price { display:block; }
.ms-product-card__title { margin-top:16px; font:400 21px/1.12 Georgia,"Times New Roman",serif; }
.ms-product-card__price { margin-top:8px; color:var(--ms-muted); font-size:13px; }
@media (max-width:1024px) { .ms-pdp__hero { grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr); gap:42px; } .ms-pdp__gallery-thumb { flex-basis:58px; width:58px; height:58px; } .ms-pdp__split { gap:50px; } .ms-pdp__detail-visual > div:first-child img { min-height:460px; } .ms-product-card-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:820px) { .ms-pdp__hero { display:block; padding-top:32px; } .ms-pdp__gallery { position:static; margin-bottom:40px; } .ms-pdp__summary { max-width:680px; } .ms-pdp__split,.ms-pdp__split--reverse { grid-template-columns:1fr; gap:34px; } .ms-pdp__split--reverse .ms-pdp__visual { order:0; } .ms-pdp__proof-grid { grid-template-columns:1fr; } .ms-pdp__proof-grid p,.ms-pdp__proof-grid p + p { min-height:0; padding:22px 0; border-right:0; border-bottom:1px solid var(--ms-line); } .ms-pdp__proof-grid p:last-child { border-bottom:0; } .ms-pdp__detail-visual { grid-template-columns:1fr; } .ms-pdp__detail-visual > div:first-child img { min-height:auto; aspect-ratio:4/3; } .ms-pdp__detail-visual-copy { min-height:260px; } .ms-pdp__how ol,.ms-pdp__for > div { grid-template-columns:1fr 1fr; row-gap:30px; } .ms-product-card-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px) { .ms-pdp__wide,.ms-pdp__standard,.ms-pdp__reading { width:calc(100% - 40px); } .ms-pdp__hero { padding-bottom:76px; } .ms-pdp__title { font-size:45px; } .ms-pdp__gallery-thumb { flex-basis:62px; width:62px; height:62px; } .ms-pdp__benefits { grid-template-columns:1fr; gap:8px; } .ms-pdp__trust p { grid-template-columns:1fr; gap:5px; } .ms-pdp__guided .ms-guided-order { padding:25px 18px!important; } .ms-pdp__guided .ms-guided-order__progress { margin:27px 0 23px; } .ms-pdp__guided .ms-guided-order__step-dot { width:35px; height:35px; } .ms-pdp__guided .ms-guided-order__option { min-height:59px; } .ms-pdp__intro { padding-bottom:88px; } .ms-pdp__split { width:100%; padding:54px 20px; } .ms-pdp__split:not(.ms-pdp__surface) { width:calc(100% - 40px); padding:0; } .ms-pdp__copy h2 { font-size:40px; } .ms-pdp__proof { padding:88px 0; } .ms-pdp__detail-visual { width:100%; margin-bottom:88px; } .ms-pdp__detail-visual-copy { min-height:0; padding:39px 20px 47px; } .ms-pdp__moments { padding-bottom:88px; } .ms-pdp__moments > h2 { margin-bottom:34px; } .ms-pdp__moment-grid { grid-template-columns:1fr; gap:34px; } .ms-pdp__moment-grid article { display:grid; grid-template-columns:116px 1fr; column-gap:16px; align-items:start; } .ms-pdp__moment-grid article div { grid-row:span 2; } .ms-pdp__moment-grid img { aspect-ratio:1/1; } .ms-pdp__moment-grid p { margin:5px 0 8px; } .ms-pdp__moment-grid h3 { font-size:22px; } .ms-pdp__how { width:100%; padding:54px 20px; margin-bottom:88px; } .ms-pdp__how ol { grid-template-columns:1fr 1fr; margin-top:38px; } .ms-pdp__details { padding-bottom:88px; } .ms-pdp__details > h2 { margin-bottom:34px; } .ms-pdp__details dl { grid-template-columns:1fr; } .ms-pdp__details dl > div,.ms-pdp__details dl > div:nth-child(odd),.ms-pdp__details dl > div:nth-child(even) { grid-template-columns:105px 1fr; padding:15px 0; border-left:0; } .ms-pdp__for { padding:70px 0; } .ms-pdp__for > h2 { margin-bottom:38px; } .ms-pdp__for > div { grid-template-columns:1fr 1fr; gap:32px 18px; } .ms-pdp__faq { padding-bottom:88px; } .ms-pdp__faq-item button { padding:18px 0; font-size:19px; } .ms-pdp__related { padding:70px 0; } .ms-pdp__related h2 { margin-bottom:34px; } .ms-product-card-grid { gap:30px 13px; } .ms-product-card__title { font-size:18px; } }
@media (prefers-reduced-motion:reduce) { .ms-pdp *, .ms-pdp *::before, .ms-pdp *::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }
/* r8 runtime guards: if another template filter wins, suppress default Woo below-fold UI on this product only. */
body.marksake-pdp-v3-target .woocommerce-tabs,
body.marksake-pdp-v3-target .woocommerce-Tabs-panel,
body.marksake-pdp-v3-target .related.products,
body.marksake-pdp-v3-target .product_meta { display:none!important; }
body.marksake-pdp-v3-target .ms-pdp--fallback-editorial { width:100%; max-width:none; padding-top:clamp(72px,9vw,120px); }
.ms-product-card-grid--count-1 { grid-template-columns:minmax(280px,420px); }
.ms-product-card-grid--count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:860px; }
.ms-product-card-grid--count-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:640px) {
  .ms-product-card-grid--count-1,.ms-product-card-grid--count-2,.ms-product-card-grid--count-3 { grid-template-columns:1fr; max-width:none; }
}

/* r10: preview is mounted INSIDE the exact visible dashed upload control.
 * No broad-wrapper absolute positioning: the preview can never escape the
 * Guided Order card or cover the page. */
.ms-pdp__guided .ms-pdp__upload-preview-host {
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.ms-pdp__guided .ms-pdp__upload-preview-host.has-ms-pdp-upload-preview {
  min-height:168px;
  border-color:#bcae9f;
  background:#f4f0ea;
}
.ms-pdp__guided .ms-pdp__upload-preview-host > .ms-pdp__upload-preview {
  position:absolute;
  inset:0;
  z-index:20;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  width:100%;
  height:100%;
  min-height:inherit;
  background:#f4f0ea;
  color:var(--ms-ink);
  cursor:default;
}
.ms-pdp__upload-preview-media {
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px 14px 8px;
  overflow:hidden;
}
.ms-pdp__upload-preview-image {
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:132px;
  object-fit:contain;
  border:1px solid rgba(40,33,27,.10);
  background:#fff;
  box-shadow:0 4px 14px rgba(40,33,27,.06);
}
.ms-pdp__upload-preview-actions {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:42px;
  padding:8px 12px;
  border-top:1px solid rgba(40,33,27,.12);
  background:rgba(252,250,246,.97);
}
.ms-pdp__upload-preview-change {
  flex:0 0 auto;
  min-height:30px;
  padding:7px 10px;
  border:1px solid var(--ms-ink);
  border-radius:0;
  background:transparent;
  color:var(--ms-ink);
  font-size:9px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1;
  text-transform:uppercase;
  cursor:pointer;
}
.ms-pdp__upload-preview-change:hover {
  background:var(--ms-ink);
  color:#fff;
}
.ms-pdp__upload-preview-change:focus-visible {
  outline:2px solid var(--ms-clay);
  outline-offset:2px;
}
.ms-pdp__upload-preview-name {
  min-width:0;
  overflow:hidden;
  color:var(--ms-muted);
  font-size:10px;
  line-height:1.25;
  text-align:right;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media (max-width:640px) {
  .ms-pdp__guided .ms-pdp__upload-preview-host.has-ms-pdp-upload-preview { min-height:154px; }
  .ms-pdp__upload-preview-media { padding:10px 10px 6px; }
  .ms-pdp__upload-preview-image { max-height:112px; }
  .ms-pdp__upload-preview-actions { min-height:40px; padding:7px 9px; gap:8px; }
  .ms-pdp__upload-preview-name { font-size:9px; }
}
