/* Product destinations: original SILKY colors, typography and photography. */
.product-page{--product-dock-height:150px;background:var(--cream)}
.product-page .product-header{height:88px}
.product-page .journal-mobile-nav{top:88px}
.product-page .product-header .desktop-nav{gap:28px}
.product-breadcrumb{max-width:1370px;margin:auto;padding:22px 6.3% 0;display:flex;gap:10px;flex-wrap:wrap;font-size:11px;line-height:1.8;color:var(--muted)}
.product-breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.product-hero{max-width:1370px;margin:0 auto;padding:28px 6.3% 62px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:65px;align-items:center}
.product-visual{margin:0;min-width:0;background:#eee5d9}
.product-visual>img{display:block;width:100%;height:500px;object-fit:contain}
.product-visual figcaption{padding:12px 0 0;background:var(--cream);font-size:10px;line-height:1.8;color:var(--muted)}
.product-visual figcaption a{text-decoration:underline;text-underline-offset:3px}
.product-hero-copy{min-width:0}
.product-eyebrow{font:500 10px/1.8 var(--sans);letter-spacing:1.8px;color:#98744f;margin:0 0 15px;text-transform:uppercase}
.product-page .product-hero h1{font:400 clamp(40px,4.2vw,61px)/1.08 var(--serif);letter-spacing:-1.2px;margin:0 0 20px;overflow-wrap:anywhere}
.product-official-name{font:400 15px/1.7 var(--sans);color:#6f5b4c;margin:0 0 20px}
.product-facts{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 19px}
.product-facts span{border:1px solid #cebaa1;padding:7px 12px;font:500 12px/1.6 var(--sans);color:#72583c}
.product-intro{font:400 15px/1.85 var(--sans);color:var(--muted);margin:0 0 22px;max-width:460px}
.product-price-note{font:500 11px/1.8 var(--sans);color:var(--muted);margin:0 0 10px}
.product-page .product-cta{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:56px;width:100%;max-width:440px;padding:16px 22px;white-space:normal;text-align:center;font:500 13px/1.7 var(--sans);letter-spacing:0;text-transform:none}
.product-cta>span{flex:none}
.product-cta-hint{font:400 11px/1.8 var(--sans);color:var(--muted);margin:10px 0 0}
.product-page a:focus-visible,.product-page button:focus-visible,.product-page summary:focus-visible{outline:2px solid #8a5d38;outline-offset:5px}
.product-section-title h2,.product-page .product-details h2,.product-closing h2,.product-other-section h2{font:400 clamp(33px,3.6vw,49px)/1.12 var(--serif);letter-spacing:-.7px;margin:0}
.product-points{background:#f1e8dd;padding:55px max(6.3%,calc((100vw - 1200px)/2));margin:0}
.product-points .product-section-title{max-width:670px}
.product-points ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin:35px 0 0;padding:0}
.product-point-number{font:500 11px/1.8 var(--sans);letter-spacing:1px;color:#98744f}
.product-points h3{font:500 28px/1.15 var(--serif);letter-spacing:-.3px;margin:15px 0}
.product-points p:not(.product-eyebrow){font:400 14px/1.85 var(--sans);color:#6f5b4c;margin:0}
.product-details{max-width:1370px;margin:auto;padding:75px 6.3%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:75px;scroll-margin-top:24px}
.product-routine ol{padding:0 0 0 24px;margin:25px 0}
.product-routine li{padding-left:8px;margin-bottom:17px;font:400 15px/1.9 var(--sans);color:#6f5b4c}
.product-routine li::marker{color:#98744f;font-size:13px}
.product-label-note{font:400 12px/1.9 var(--sans);color:var(--muted);margin:20px 0 0;padding-left:16px;border-left:1px solid #cdb89f}
.product-packaging dl{margin:25px 0 15px}
.product-packaging dl>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font:400 13px/1.8 var(--sans)}
.product-packaging dt{color:var(--muted)}
.product-packaging dd{margin:0;overflow-wrap:anywhere}
.product-page summary{padding:22px 0;font:500 15px/1.8 var(--sans);gap:20px;min-height:60px;text-transform:none;letter-spacing:0}
.product-page summary>span{flex:none}
.product-page details p{font:400 14px/1.9 var(--sans);padding:0 0 22px;max-width:680px;color:var(--muted)}
.product-page .product-text-link{display:inline-flex;gap:20px;font:500 13px/1.8 var(--sans);min-height:35px}
.product-buying{max-width:1370px;margin:auto;padding:0 6.3% 65px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:70px}
.product-buying .product-section-title h2{max-width:310px}
.product-closing{max-width:1140px;margin:0 auto;padding:50px 40px;text-align:center;background:#ede1d3}
.product-closing h2{max-width:720px;margin:0 auto 20px}
.product-closing>p:not(.product-eyebrow):not(.product-cta-hint){max-width:560px;font:400 15px/1.9 var(--sans);color:#6f5b4c;margin:0 auto 26px}
.product-message{max-width:560px;margin:28px auto 0;text-align:left}
.product-message summary{font-size:12px;padding:15px 0}
.product-message p{font-size:12px!important;padding-bottom:15px!important}
.product-message blockquote{margin:0 0 15px;padding:18px;background:#f7f0e7;font:400 14px/1.9 var(--sans);overflow-wrap:anywhere}
.product-copy{border:1px solid #ab8a65;padding:10px 15px;font-size:12px;min-height:44px}
.product-copy:hover{background:#f7f0e7}
.product-copy-status{margin-top:10px}
.product-copy[hidden]{display:none}
.product-reading{padding-top:65px;padding-bottom:60px}
.product-other-section{max-width:1140px;margin:auto;padding:0 6.3% 65px}
.product-other-section h2{font-size:35px}
.product-other-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin:25px 0}
.product-other{display:grid;grid-template-columns:1fr 20px;gap:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}
.product-other>span:first-child{font:500 10px/1.8 var(--sans);text-transform:uppercase;color:var(--muted);grid-column:1/-1}
.product-other strong{font:500 28px/1.2 var(--serif)}
.product-other:hover strong{color:#936546}
.product-sources{display:flex;gap:12px 25px;flex-wrap:wrap;margin-top:25px}
.product-sources a{font-size:10px;line-height:1.8;text-decoration:underline;text-underline-offset:3px;color:var(--muted)}
.product-dock{display:none}
html[lang="km"] .product-page .product-eyebrow{font:500 12px/1.9 'Noto Sans Khmer',sans-serif;letter-spacing:0}
html[lang="km"] .product-page .product-hero h1{font:500 clamp(29px,3.1vw,41px)/1.8 'Noto Serif Khmer',serif;letter-spacing:0}
html[lang="km"] .product-page .product-facts span{font-size:13px;line-height:1.9}
html[lang="km"] .product-page .product-intro{font:400 16px/1.95 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page .product-price-note,html[lang="km"] .product-page .product-cta-hint{font:400 12px/1.9 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page .product-cta{font:500 15px/1.9 'Noto Sans Khmer',sans-serif;letter-spacing:0}
html[lang="km"] .product-page .product-section-title h2,html[lang="km"] .product-page .product-details h2,html[lang="km"] .product-page .product-closing h2,html[lang="km"] .product-page .product-other-section h2{font:500 29px/1.85 'Noto Serif Khmer',serif;letter-spacing:0}
html[lang="km"] .product-page .product-points h3{font:500 22px/1.8 'Noto Serif Khmer',serif;letter-spacing:0}
html[lang="km"] .product-page .product-points p:not(.product-eyebrow),html[lang="km"] .product-page .product-routine li,html[lang="km"] .product-page details p{font:400 16px/1.95 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page .product-label-note{font:400 13px/1.95 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page .product-packaging dl>div{font:400 14px/1.9 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page summary{font:500 16px/1.9 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page .product-text-link{font:500 14px/1.9 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page .product-closing>p:not(.product-eyebrow):not(.product-cta-hint){font:400 16px/1.95 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page .product-message summary{font-size:14px}
html[lang="km"] .product-page .product-message blockquote{font:400 15px/1.95 'Noto Sans Khmer',sans-serif}
html[lang="km"] .product-page .product-other>span:first-child{font:500 12px/1.9 'Noto Sans Khmer',sans-serif}
@media(max-width:1050px){.product-hero{gap:35px}.product-visual>img{height:450px}.product-details{gap:40px}.product-points ol{gap:25px}.product-buying{gap:35px}}
@media(max-width:760px){
  html:has(.product-page){scroll-padding-bottom:170px}
  .product-page{padding-bottom:calc(var(--product-dock-height) + env(safe-area-inset-bottom,0px))}
  .product-page .product-header{height:78px}
  .product-page .journal-mobile-nav{top:78px}
  .product-breadcrumb{padding:18px 7% 0;font-size:10px;gap:7px}
  .product-hero{padding:24px 7% 42px;grid-template-columns:40% minmax(0,1fr);column-gap:18px;row-gap:18px;align-items:start}
  .product-visual{grid-column:1;grid-row:1/4;align-self:start}
  .product-visual>img{height:auto;aspect-ratio:3/4;object-fit:contain}
  .product-visual figcaption{font-size:9px;line-height:1.8;padding-top:8px}
  .product-hero-copy{display:contents}
  .product-hero .product-eyebrow{grid-column:2;grid-row:1;margin:0;font-size:9px;line-height:1.7}
  .product-page .product-hero h1{grid-column:2;grid-row:2;font-size:29px;line-height:1.09;letter-spacing:-.6px;margin:0}
  .product-official-name{grid-column:2;grid-row:3;font-size:12px;line-height:1.8;margin:0}
  .product-facts{grid-column:1/-1;grid-row:4;margin:0;gap:7px}
  .product-facts span{font-size:11px;padding:7px 10px}
  .product-hero-action{grid-column:1/-1;grid-row:5}
  .product-intro{grid-column:1/-1;grid-row:6;font-size:15px;line-height:1.85;margin:0}
  .product-price-note{font-size:11px;margin-bottom:9px}
  .product-page .product-cta{font-size:13px;min-height:54px;padding:14px 16px;max-width:none;gap:15px}
  .product-cta-hint{font-size:11px;margin-top:9px}
  .product-points{padding:40px 7%}
  .product-section-title h2,.product-page .product-details h2,.product-closing h2,.product-other-section h2{font-size:33px;line-height:1.18}
  .product-points ol{grid-template-columns:1fr;gap:27px;margin-top:30px}
  .product-points li{border-top:1px solid #d8c7b2;padding-top:20px}
  .product-points h3{font-size:27px;margin:10px 0 12px}
  .product-points p:not(.product-eyebrow){font-size:15px}
  .product-details{grid-template-columns:1fr;padding:45px 7%;gap:35px}
  .product-routine li{font-size:16px;padding-left:3px}
  .product-label-note{font-size:13px}
  .product-packaging dl>div{grid-template-columns:95px minmax(0,1fr);gap:15px;font-size:13px}
  .product-page summary{font-size:16px;line-height:1.8;padding:21px 0}
  .product-page details p{font-size:15px;line-height:1.9}
  .product-buying{grid-template-columns:1fr;padding:0 7% 45px;gap:24px}
  .product-closing{margin:0 7%;padding:35px 20px}
  .product-closing>p:not(.product-eyebrow):not(.product-cta-hint){font-size:15px}
  .product-message blockquote{font-size:14px;padding:14px}
  .product-reading{padding-top:45px;padding-bottom:45px}
  .product-other-section{padding:0 7% 45px}
  .product-other-grid{grid-template-columns:1fr;gap:0}
  .product-other+ .product-other{border-top:0}
  .product-other strong{font-size:27px}
  .product-dock{position:fixed;z-index:50;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:7px;background:#f9f4eef5;backdrop-filter:blur(12px);border-top:1px solid #d5c4af;box-shadow:0 -6px 22px #49372f0c;padding:10px 7% calc(10px + env(safe-area-inset-bottom,0px))}
  .product-dock>span{font:500 10px/1.6 var(--sans);color:#72583c}
  .product-dock .product-cta{min-height:48px;padding:11px 14px;font-size:12px}
  html[lang="km"] .product-page .product-hero h1{font-size:23px;line-height:1.8}
  html[lang="km"] .product-page .product-hero .product-eyebrow{font-size:10px;line-height:1.85}
  html[lang="km"] .product-page .product-facts span{font-size:12px}
  html[lang="km"] .product-page .product-cta{font-size:14px;line-height:1.9}
  html[lang="km"] .product-page .product-dock .product-cta{font-size:13px}
  html[lang="km"] .product-page .product-section-title h2,html[lang="km"] .product-page .product-details h2,html[lang="km"] .product-page .product-closing h2,html[lang="km"] .product-page .product-other-section h2{font-size:25px}
}
@media(max-width:380px){.product-hero{column-gap:14px}.product-page .product-hero h1{font-size:27px}html[lang="km"] .product-page .product-hero h1{font-size:21px}.product-page .product-cta{gap:10px}.product-header .header-actions{gap:10px}}
