@font-face{font-family:BrandSerif;src:url(assets/serif.woff) format("woff");font-display:swap}@font-face{font-family:BrandSans;src:url(assets/sans.woff) format("woff");font-display:swap}@font-face{font-family:Display;src:url(assets/display.woff) format("woff");font-display:swap}
/* Calm interactions preserve the document's original dimensions. */
.button,.site-header{transition:background-color .25s,border-color .25s}
.site-header.is-scrolled{border-bottom-color:var(--ink)}
.text-link{position:relative;min-height:44px}
.text-link::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}
@media(hover:hover){.text-link:hover::after{transform:scaleX(1)}.button:hover svg,.text-link:hover svg{transform:translateX(4px)}}
.button:active,.text-link:active{opacity:.72}
.button svg{transition:transform .25s}
summary{min-height:44px}
.photo-pause-wide,.steam-photo{overflow:hidden}
@keyframes menu-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes calm-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(prefers-reduced-motion:no-preference){
 #mobile-menu[open]{animation:menu-enter .3s both}
 #mobile-menu[open]::backdrop{animation:menu-enter .3s both}
 #mobile-menu[open] nav a{animation:menu-enter .3s both}
 #mobile-menu nav a:nth-child(2){animation-delay:.04s}#mobile-menu nav a:nth-child(3){animation-delay:.08s}#mobile-menu nav a:nth-child(4){animation-delay:.12s}#mobile-menu nav a:nth-child(5){animation-delay:.16s}
 .motion-scroll-line::after{content:"";width:48px;height:1px;background:currentColor;transform-origin:left;animation:calm-line .9s .55s both}
}
/* Warm Gray palette sampled from the supplied reference. Keep legacy token names for saved editor layouts. */
:root{--paper:#f2f0ec;--ink:#444440;--muted:#5a5752;--green:#242424;--mist:#d6d4ce;--line:#97938d;--bronze:#605d58;--white:#fff;--serif:BrandSerif,"Yu Mincho",serif;--sans:BrandSans,"Hiragino Kaku Gothic ProN",sans-serif;--display:Display,Georgia,serif;--gutter:64px;--max:1320px;--header:88px}
*{box-sizing:border-box;letter-spacing:0}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.95 var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--bronze);outline-offset:6px}img{display:block;max-width:100%;height:auto}p{margin:0 0 24px}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.55;margin:0 0 30px;text-wrap:pretty}h1{font-size:60px}h2{font-size:40px}h3{font-size:23px;margin-bottom:18px}em{font-style:normal;color:var(--green)}svg{width:20px;height:20px;flex:none;stroke-width:1.3}small,.note{font-size:12px;color:var(--muted);line-height:1.8}.wrap{width:min(calc(100% - var(--gutter)*2),var(--max));margin-inline:auto}.measure{max-width:690px}.eyebrow{font:12px/1.5 var(--sans);color:var(--muted);margin:0 0 28px}.text-link{display:inline-flex;align-items:center;gap:44px;border-bottom:1px solid var(--ink);padding:12px 0;margin-top:10px;font-size:14px}.text-link svg,.next-link svg{transition:transform .25s}a:hover svg{transform:translate(3px,-3px)}.button{background:var(--green);color:var(--white);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 24px;margin-top:28px}.button:hover{background:var(--ink)}.skip{position:fixed;z-index:100;top:-100px;left:16px;padding:12px;background:var(--white)}.skip:focus{top:10px}
.site-header{height:var(--header);padding:0 36px;display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:30}.brand{font:30px/1 var(--display)}.desktop-nav{display:flex;align-items:center;gap:24px;margin:auto}.desktop-nav a{font-size:12px;white-space:nowrap}.desktop-nav a[aria-current]{border-bottom:1px solid var(--ink)}.shop-link{font-size:12px;display:flex;gap:16px;align-items:center}.menu-trigger,.menu-close{border:0;background:none;padding:12px;display:none;min-height:44px}.menu-close{display:block}dialog{padding:30px;border:0;background:var(--paper);color:var(--ink);width:min(560px,100%);max-width:100%;max-height:100dvh;margin:0 0 0 auto;height:100dvh}dialog::backdrop{background:#15271e80}.menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:38px}dialog nav{display:grid}dialog nav a{padding:16px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:22px}dialog>p{margin-top:40px;font-size:11px}
.hero{height:min(780px,calc(100svh - 136px));min-height:620px;position:relative;overflow:hidden}.hero-bg{position:absolute;width:100%;height:100%;object-fit:cover;filter:saturate(.45);z-index:0}.hero-top{position:absolute;top:38px;left:4.5%;right:4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #6f766e55;padding-bottom:20px}.hero-top h1{font:78px/1 var(--display);margin:0}.hero-top p{font-size:11px;line-height:1.8;margin:0}.hero-copy{position:absolute;z-index:2;left:6%;top:210px;max-width:44%}.hero-copy>p:first-child{font:23px/1.5 var(--serif);margin-bottom:10px}.hero-copy h2{font-size:35px;white-space:nowrap;margin-bottom:22px}.hero-copy strong{font:600 96px/1.25 var(--serif);display:inline-block;margin-right:8px}.hero-small{font-size:14px}.hero-product{position:absolute;width:48%;max-width:780px;right:4%;bottom:12%;height:auto}.hero-scroll{position:absolute;bottom:24px;left:6%;display:flex;align-items:center;gap:28px;font-size:12px}.opening{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-block:105px}.opening>div{max-width:760px}.opening h2{font-size:44px}.opening p{line-height:2.1}.feature-product{background:var(--mist);padding-block:76px}.feature-grid{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:90px}.product-stage{padding:55px 0}.inline-facts{display:flex;gap:45px;margin:30px 0;color:var(--green);font-size:12px}.inline-facts b{font:55px/1 var(--display);margin-right:8px}.chapter{padding-block:105px}.section-heading{margin-bottom:55px}.choice-list>a{display:grid;grid-template-columns:65px 1fr 24px;gap:32px;align-items:center;padding:30px 0;border-top:1px solid var(--line)}.choice-list>a:last-child{border-bottom:1px solid var(--line)}.choice-no{font:40px/1 var(--display);color:var(--bronze)}.choice-list h3{margin:0 0 8px}.choice-list p{margin:0;color:var(--muted)}.choice-list>a:hover{color:var(--green);background:var(--mist)}
.life-banner{position:relative;height:650px;background:var(--green);color:var(--white);overflow:hidden}.life-banner>img{position:absolute;right:0;top:0;width:55%;height:100%;object-fit:cover;object-position:65% center}.life-caption{position:relative;padding:125px 6%;width:53%}.life-caption .eyebrow,.life-banner small{color:#d8e0d9}.life-caption h2{font-size:34px}.life-caption .text-link{border-color:var(--white)}.life-banner>small{position:absolute;right:20px;bottom:14px;background:#263f35cc;padding:2px 8px}.reading{padding-block:105px}.reading-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:50px}.reading-grid>a{position:relative;border-bottom:1px solid var(--line);padding-bottom:30px}.reading-grid>a>svg{position:absolute;right:0;bottom:35px}.reading-grid h3{margin-top:28px}.reading-grid p{padding-right:40px}.type-visual{background:var(--mist);display:flex;flex-direction:column;justify-content:center;align-items:center;height:240px;font:90px/1.1 var(--display);color:var(--green)}.type-visual>span{font-size:26px;margin-top:15px}.type-visual.italic{font-size:58px;font-style:italic;background:#e9e6e1;color:var(--bronze)}.home-help{display:grid;grid-template-columns:1fr 1.5fr;gap:70px;padding-bottom:100px}.next{border-top:1px solid var(--line);padding-block:58px 72px}.next-link{font:32px/1.5 var(--serif);display:flex;justify-content:space-between;align-items:center;gap:24px}.next-link svg{width:32px;height:32px}
footer{background:var(--green);color:var(--white);padding:65px 0 20px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.footer-brand{font:56px/1 var(--display)}.footer-grid p{font-size:12px;line-height:2.2;margin-top:24px;color:#d2dcd4}.footer-grid nav{display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:13px}.footer-bottom{display:flex;gap:30px;justify-content:space-between;align-items:center;border-top:1px solid #ffffff45;margin-top:40px;padding-top:24px}.footer-bottom p,.footer-bottom small{font-size:11px;margin:0;color:#d2dcd4}.crumbs{font-size:11px;color:var(--muted);padding-top:24px;display:flex;gap:10px}.page-intro{padding-block:68px 70px}.page-intro .lede{max-width:720px;font-size:17px;line-height:2}.page-intro h1{margin-bottom:32px}.jump{display:flex;gap:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:18px;font-size:13px}.jump a:hover{text-decoration:underline}
.product-details{display:grid;grid-template-columns:1.15fr 1fr;gap:90px;padding-bottom:80px;align-items:start}.product-show{background:var(--mist);padding:80px 35px 30px;position:sticky;top:115px}.product-show>span{font-size:10px;display:block;text-align:center;margin-top:55px}.specs{margin:36px 0}.specs>div{display:grid;grid-template-columns:100px 1fr;gap:15px;border-top:1px solid var(--line);padding:14px 0;font-size:13px}.specs>div:last-child{border-bottom:1px solid var(--line)}.specs dt{color:var(--muted)}.specs dd{margin:0}.daily-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:80px}.stick-stage{background:var(--mist);display:grid;place-items:center;padding:50px}.stick-stage img{height:420px;width:auto;object-fit:contain}.numbered article{display:flex;gap:24px;border-top:1px solid var(--line);padding:26px 0}.numbered article>span{font:30px/1.5 var(--display);color:var(--bronze)}.numbered p{margin:0}.choice-band{background:var(--green);color:var(--white);padding-block:90px}.choice-band .eyebrow{color:#d2dcd4}.three-text{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:50px}.three-text article{border-top:1px solid var(--line);padding-top:26px}.three-text h3{font-size:23px}.three-text p{font-size:14px}.short-copy p{max-width:760px}.comparison{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:65px 0 26px}.comparison article{border-top:1px solid var(--line);padding:35px 20px 20px;text-align:center}.sample{display:block;width:100px;height:100px;border-radius:50%;margin:0 auto 30px;border:1px solid #a4a797}.sample.white{background:#ede9dd}.sample.red{background:#93644c}.sample.black{background:#2a3029}.comparison h3{font-size:28px}.comparison h3 span{display:block;font:12px/1.6 var(--sans);color:var(--muted);margin-top:8px}.comparison p{font-size:14px}.ingredient-section{background:var(--mist);padding-block:90px}.compound-line{display:flex;align-items:center;gap:50px;padding:40px 0;border-block:1px solid var(--line);margin:45px 0}.compound-line>span:first-child{font-family:var(--serif);font-size:24px}.process{display:grid;justify-items:center;gap:8px}.process svg{width:65px;height:35px}.compound-line strong{font:78px/1.1 var(--display)}.compound-line strong span{font-size:30px;display:block;margin-top:10px}.compound-list article{display:grid;grid-template-columns:200px 1fr;gap:50px;border-top:1px solid var(--line);padding:38px 0}.compound-list article>span{font:64px/1.3 var(--display);color:var(--green)}.compound-list p{max-width:650px}.reading-note{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding-bottom:100px}.reading-note h2{font-size:32px}.answer a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.origin{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-block:90px}.number-art{background:var(--mist);min-height:480px;display:flex;flex-direction:column;align-items:center;justify-content:center}.number-art b{font:360px/.95 var(--display);color:var(--green)}.number-art span{font-size:11px}.steam-section{background:var(--mist)}.steam-photo{height:340px;overflow:hidden;position:relative}.steam-photo img{width:100%;height:100%;object-fit:cover;object-position:center 40%;filter:saturate(.4)}.steam-photo small{position:absolute;bottom:12px;right:20px;background:var(--paper);padding:4px 10px}.steam-copy{padding-block:65px 85px}.steam-copy>p{max-width:740px}.steam-copy strong{font-size:66px;font-weight:500}.cycles{display:grid;grid-template-columns:repeat(9,1fr);gap:12px;margin:50px 0}.cycles>span{aspect-ratio:1;border:1px solid #89998c;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.cycles b{font:36px/1 var(--display)}.cycles small{font-size:10px;margin-top:8px}.story-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;padding:20px 0 80px}.story-mark{font:120px/.95 var(--display);background:var(--mist);padding:80px 45px;height:460px;position:sticky;top:115px}.story-mark em{font-style:italic}.story-mark>span{display:block;font-size:28px;margin-top:80px}.story-body article{padding-bottom:58px;margin-bottom:45px;border-bottom:1px solid var(--line)}.story-body h2{font-size:32px}.statement{text-align:center;padding-block:30px 100px}.statement>p{font:40px/1.8 var(--serif)}.statement>span{font:26px/1.4 var(--display);font-style:italic;color:var(--bronze)}
.support-layout{display:grid;grid-template-columns:240px 1fr;gap:80px;padding-block:65px 100px}.support-layout>aside{align-self:start;position:sticky;top:120px;display:grid;gap:16px;font-size:13px}.support-layout>aside p{font-family:var(--serif);font-size:22px}.support-layout section{padding-bottom:65px;scroll-margin-top:110px}.support-layout h2{font-size:28px}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:21px 0;font-size:15px}summary::-webkit-details-marker{display:none}summary svg{transition:transform .2s}details[open] summary svg{transform:rotate(45deg)}.answer{padding:0 25px 20px 0;color:var(--muted);font-size:14px}.answer p:last-child{margin:0}.purchase-route{background:var(--mist);padding:30px;margin:30px 0}.purchase-route>span{font-size:12px;display:block;margin-bottom:20px}.store-slot{padding:25px 0}.connection-note{font-size:12px;border-left:2px solid var(--bronze);padding-left:18px;color:var(--muted)}.reveal-ready{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.reveal-ready.visible{opacity:1;transform:none}
@media(min-width:1700px){.hero{height:850px;max-height:calc(100svh - 140px)}.hero-top h1{font-size:100px}.hero-copy{top:260px}.hero-product{right:9%;bottom:10%}}
@media(max-width:1199px){:root{--gutter:40px}.site-header{gap:20px;padding-inline:24px}.desktop-nav{gap:14px}.desktop-nav a{font-size:11px}.hero-copy strong{font-size:76px}.hero-copy h2{font-size:28px}.hero-top h1{font-size:65px}.feature-grid,.product-details,.origin,.story-layout{gap:50px}.life-caption h2{font-size:29px}.three-text{gap:28px}.cycles small{font-size:9px}}
@media(max-width:1023px){:root{--header:74px;--gutter:32px}.desktop-nav{display:none}.shop-link{margin-left:auto}.menu-trigger{display:block}.hero{min-height:580px;height:640px}.hero-copy{top:205px}.hero-copy>p:first-child{font-size:20px}.hero-copy h2{font-size:23px}.hero-copy strong{font-size:65px}.hero-top p{font-size:10px}.hero-product{width:46%;right:3%;bottom:20%}.hero-small{font-size:12px}.opening{grid-template-columns:1fr 3fr;gap:30px}.opening h2{font-size:36px}.feature-grid{gap:40px}h2{font-size:32px}.life-banner{height:540px}.life-caption{padding:95px 5%}.life-caption h2{font-size:25px}.life-caption p{font-size:13px}.reading-note{gap:35px}.support-layout{grid-template-columns:180px 1fr;gap:40px}.story-mark{font-size:90px;height:390px;padding:60px 30px}.number-art b{font-size:280px}.number-art{min-height:400px}.cycles{gap:6px}.cycles small{font-size:8px}.type-visual.italic{font-size:46px}}
@media(max-width:767px){:root{--gutter:24px;--header:70px}body{font-size:14px}.site-header{padding-inline:20px;gap:15px}.brand{font-size:25px}.shop-link{font-size:10px;gap:8px}.shop-link svg{width:15px}.menu-trigger{padding:8px}.hero{height:740px;min-height:0;max-height:none}.hero-bg{object-position:65% center}.hero-top{top:26px;left:24px;right:24px;padding-bottom:18px}.hero-top h1{font-size:48px}.hero-top p{display:none}.hero-copy{top:129px;left:24px;right:24px;max-width:none}.hero-copy>p:first-child{font-size:19px}.hero-copy h2{font-size:23px;margin-bottom:15px}.hero-copy strong{font-size:70px}.hero-small{font-size:13px}.hero-copy .text-link{margin-top:0;font-size:13px}.hero-product{width:80%;max-width:430px;bottom:62px;right:6%}.hero-scroll{left:24px;bottom:18px;font-size:11px}.opening{display:block;padding-block:68px}.opening h2{font-size:30px}.opening .eyebrow{margin-bottom:28px}.opening p br{display:none}h1{font-size:36px}h2{font-size:29px}h3{font-size:21px}.feature-product{padding-block:40px 60px}.feature-grid{grid-template-columns:1fr;gap:24px}.product-stage{padding:15px 0 20px}.feature-grid h2{font-size:32px}.inline-facts{margin:24px 0}.chapter{padding-block:64px}.section-heading{margin-bottom:30px}.choice-list>a{grid-template-columns:35px 1fr 20px;gap:14px;padding:25px 0}.choice-no{font-size:28px}.choice-list h3{font-size:20px}.choice-list p{font-size:12px}.life-banner{height:auto;display:flex;flex-direction:column}.life-banner>img{position:static;width:100%;height:370px;object-position:65% 40%}.life-caption{width:100%;padding:45px 24px 60px}.life-caption h2{font-size:28px}.life-caption p{font-size:14px}.life-banner>small{top:340px;bottom:auto;right:15px}.reading{padding-block:64px}.reading-grid{grid-template-columns:1fr;gap:40px;margin-top:35px}.type-visual{height:210px;font-size:85px}.type-visual.italic{font-size:52px}.home-help{grid-template-columns:1fr;gap:20px;padding-bottom:65px}.next{padding-block:35px 50px}.next-link{font-size:25px}.next-link svg{width:24px;height:24px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-brand{font-size:45px}.footer-grid nav{font-size:12px;gap:20px}.footer-bottom{flex-wrap:wrap;gap:16px}.footer-bottom p{flex-basis:100%}.footer-bottom a{margin-left:auto}.page-intro{padding-block:45px 36px}.page-intro .lede{font-size:15px}.page-intro .eyebrow{margin-bottom:20px}.jump{gap:12px 24px;flex-wrap:wrap;font-size:12px}.product-details{grid-template-columns:1fr;gap:35px;padding-bottom:20px}.product-show{position:static;padding:45px 20px 25px}.product-show>span{margin-top:25px}.daily-grid{grid-template-columns:1fr;gap:30px}.stick-stage{padding:30px}.stick-stage img{height:270px}.three-text{grid-template-columns:1fr;gap:15px;margin-top:35px}.choice-band{padding-block:60px}.comparison{gap:10px;margin-top:35px}.comparison article{padding:25px 0 10px}.sample{width:65px;height:65px;margin-bottom:20px}.comparison h3{font-size:24px}.comparison p{font-size:12px;text-align:left;line-height:1.8}.comparison small{font-size:10px}.ingredient-section{padding-block:60px}.compound-line{gap:18px;flex-wrap:wrap;padding-block:25px}.compound-line>span:first-child{font-size:18px}.process svg{width:40px}.compound-line strong{font-size:60px}.compound-line strong span{font-size:24px}.compound-list article{grid-template-columns:1fr;gap:18px;padding:30px 0}.compound-list article>span{font-size:54px}.compound-list h3{font-size:22px}.reading-note{grid-template-columns:1fr;gap:20px;padding-bottom:60px}.reading-note h2{font-size:27px}.origin{grid-template-columns:1fr;gap:35px;padding-block:40px 65px}.number-art{min-height:320px}.number-art b{font-size:250px}.steam-photo{height:260px}.steam-photo small{font-size:9px;left:14px;right:auto;max-width:90%}.steam-copy{padding-block:40px 65px}.steam-copy strong{font-size:48px}.cycles{grid-template-columns:repeat(3,1fr);gap:18px;max-width:360px;margin:35px auto}.cycles b{font-size:32px}.cycles small{font-size:10px}.story-layout{grid-template-columns:1fr;gap:40px;padding-bottom:30px}.story-mark{position:static;height:310px;font-size:90px;padding:35px}.story-mark>span{margin-top:35px;font-size:25px}.story-body article{margin-bottom:30px;padding-bottom:30px}.story-body h2{font-size:28px}.statement{padding-bottom:60px}.statement>p{font-size:29px}.support-layout{display:block;padding-block:40px}.support-layout>aside{display:none}.support-layout h2{font-size:25px}.support-layout section{padding-bottom:45px}.purchase-route{padding:24px}summary{font-size:14px;line-height:1.7;padding:20px 0}.answer{padding-right:0}}
@media(max-width:359px){:root{--gutter:20px}.hero-copy strong{font-size:60px}.hero-copy h2{font-size:21px}.hero-product{bottom:85px}.hero{height:720px}.type-visual.italic{font-size:44px}.compound-line{gap:12px}.compound-line>span:first-child{font-size:15px}.compound-line strong{font-size:47px}.shop-link{font-size:9px}.site-header{padding-inline:16px;gap:8px}.brand{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.reveal-ready{opacity:1;transform:none}}
/* Leave the next chapter visible beneath the opening photograph. */
.morning-photo{margin:0;position:relative;background:var(--mist)}.morning-photo img{width:100%;height:570px;object-fit:cover;object-position:center 35%}.morning-photo figcaption{padding:26px var(--gutter);font:25px/1.7 var(--serif);display:flex;justify-content:space-between;align-items:center;gap:20px}.morning-photo small{font-family:var(--sans);font-size:10px}
@media(max-width:767px){.morning-photo img{height:400px;object-position:65% center}.morning-photo figcaption{font-size:20px;display:block}.morning-photo small{display:block;margin-top:12px}}
@media(min-width:1024px){.hero{height:min(780px,calc(100svh - 240px));min-height:580px}.opening{padding-top:75px}}
@media(min-width:1700px){.hero{height:min(850px,calc(100svh - 240px));max-height:none}}
@media(max-width:767px) and (min-height:800px){.hero{height:calc(100svh - 155px);max-height:740px}.opening{padding-top:50px}}

.photo-comparison .ginseng-photo{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;margin-bottom:28px}
.photo-comparison .white-photo{object-position:left center}
.photo-comparison .red-photo{object-position:center}
.photo-comparison .black-photo{object-position:right center}
@media(max-width:767px){.photo-comparison .ginseng-photo{margin-bottom:20px}.photo-comparison h3{font-size:22px}}
/* Home-specific layout; the editor can still select every photo and paragraph. */
.home-jump{display:flex;flex-wrap:wrap;gap:14px 32px;padding-block:24px;border-bottom:1px solid var(--line);font-size:13px}
.home-jump a:hover{text-decoration:underline}
.home-band{background:var(--mist)}
/* 文章は写真の上。2枚の写真は下ぞろえにして高さをそろえる（2026-11-12） */
.everyday-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;align-items:end}
.everyday-grid figure>figcaption:first-child{padding-block:0 28px}
.everyday-grid figure{margin:0}
.everyday-grid img{width:100%;aspect-ratio:3/2;object-fit:cover}
.everyday-grid figcaption{padding-block:28px 10px}
.everyday-grid h3{font-size:28px}
.everyday-grid .eyebrow{margin-bottom:14px}
@media(min-width:768px){
 /* PC：左＝「忙しくても…」＋女性の写真／右＝「仕事も趣味も…」＋男性の写真。
    小見出し・見出し・本文・写真をそれぞれ同じ段に置き、行数が違っても段差が出ないようにする。 */
 #for-you{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px;row-gap:0;align-items:start}
 #for-you>figure[data-added-image]{grid-column:1/-1}
 #for-you .section-heading,#for-you .everyday-grid,
 #for-you .everyday-grid>figure:last-child,#for-you .everyday-grid figcaption{display:contents}
 #for-you .section-heading>.eyebrow{grid-column:1;grid-row:2}
 #for-you .section-heading>h2{grid-column:1;grid-row:3}
 #for-you .section-heading>p:not(.eyebrow){grid-column:1;grid-row:4}
 #for-you .everyday-grid>figure:first-child{grid-column:1;grid-row:5}
 #for-you .everyday-grid figcaption>.eyebrow{grid-column:2;grid-row:2}
 #for-you .everyday-grid figcaption>h3{grid-column:2;grid-row:3}
 #for-you .everyday-grid figcaption>p:not(.eyebrow){grid-column:2;grid-row:4}
 #for-you .everyday-grid>figure:last-child>img{grid-column:2;grid-row:5}
 #for-you .home-bridge{grid-column:1/-1;grid-row:6}
 /* 左の小見出しは編集画面由来の空行を持っているので、ここでは1行に戻す */
 #for-you .section-heading .eyebrow{white-space:normal!important}
 /* 左右で同じ大きさ・同じ間隔にそろえる */
 #for-you .section-heading .eyebrow,#for-you .everyday-grid .eyebrow{margin-bottom:14px}
 #for-you .section-heading>h2,#for-you .everyday-grid h3{font-size:24px;margin-bottom:24px}
 #for-you .section-heading>p:not(.eyebrow),
 #for-you .everyday-grid figcaption>p:not(.eyebrow){font-size:17px;line-height:2;margin-bottom:36px;max-width:none}
 .section-heading p:not(.eyebrow){max-width:720px;font-size:17px;line-height:2}
 .everyday-grid h3{font-size:24px}}
@media(min-width:1100px){#for-you .section-heading>h2,#for-you .everyday-grid h3{font-size:28px}}
@media(min-width:1400px){#for-you .section-heading>h2,#for-you .everyday-grid h3{font-size:32px}}
.home-bridge{border-top:1px solid var(--line);padding-top:40px;margin-top:40px}
.home-bridge h3{font-size:32px}
.home-reasons,.home-research,.home-purchase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-block:40px}
.home-reasons article,.home-research article,.home-purchase article{border-top:1px solid var(--line);padding-top:28px}
.reason-number{font-family:var(--display);font-size:88px;line-height:1.2;color:var(--green);margin-bottom:24px}
.reason-number span{font-family:var(--sans);font-size:12px}
.home-research h3{font-size:24px}
.home-refresh .comparison{margin-bottom:24px}
.home-refresh .feature-grid{gap:60px}
.home-refresh .note{max-width:900px}
@media(max-width:1023px){.home-reasons,.home-research,.home-purchase{gap:24px}.everyday-grid h3{font-size:24px}}
@media(max-width:767px){
 .home-jump{gap:12px 24px}
 .everyday-grid,.home-reasons,.home-research,.home-purchase{grid-template-columns:1fr;gap:24px}
 .everyday-grid img{aspect-ratio:3/2}
 .everyday-grid figcaption{padding-top:22px}
 .home-bridge{margin-top:25px;padding-top:28px}
 .home-bridge h3{font-size:25px}
 .home-reasons,.home-research,.home-purchase{margin-block:28px}
 .reason-number{font-size:64px;margin-bottom:16px}
 .home-refresh .feature-grid{gap:24px}
}

/* One numbered circle represents a complete steaming and drying cycle. */
.process-nine{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:10px;margin-block:32px}
.process-nine span{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--green);border-radius:50%;font-family:var(--display);font-size:24px;color:var(--green)}
@media(max-width:767px){.process-nine{grid-template-columns:repeat(3,minmax(0,1fr));max-width:300px;gap:16px}}
/* Legacy room composites remain available in the editor's saved history. */
.editorial-scene{margin-block:20px 50px}
.scene-stage{position:relative;aspect-ratio:3/2;overflow:hidden}
.scene-room{width:100%;height:100%;object-fit:cover}
.scene-pack{position:absolute;width:39%;height:auto;right:18%;bottom:17%;filter:drop-shadow(0 12px 10px #0003)}
.editorial-scene figcaption{display:flex;justify-content:space-between;gap:24px;padding-block:20px;font-family:var(--serif);font-size:24px}
.editorial-scene figcaption small{font-family:var(--sans);max-width:360px}
.editorial-copy{max-width:850px}
.editorial-copy p{max-width:720px}
.editorial-copy h3{margin-top:42px}
.detail-pair{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.detail-stick{max-height:480px;max-width:100%;width:auto;margin:auto}
.plain-spec{display:grid;grid-template-columns:220px 1fr;max-width:900px;margin-top:40px}
.plain-spec dt,.plain-spec dd{margin:0;padding:18px 0;border-top:1px solid var(--line)}
.plain-spec dt{color:var(--muted)}
.editorial-photo{margin-block:0}
.editorial-photo>img{width:100%;max-height:580px;object-fit:cover}
.editorial-photo figcaption{font-size:12px;color:var(--muted);padding-top:12px}
.scene-caption{padding-block:28px}
@media(max-width:767px){
 .editorial-scene{margin-block:10px 36px}
 .editorial-scene figcaption{display:block;font-size:21px}
 .editorial-scene figcaption small{display:block;margin-top:12px}
 .detail-pair{grid-template-columns:1fr;gap:35px}
 .detail-stick{max-height:300px}
 .plain-spec{grid-template-columns:110px 1fr;font-size:13px}
 .plain-spec dt,.plain-spec dd{padding:15px 0}
 .scene-pack{width:44%;right:15%}
}

/* Supplied photographs: keep products intact and let picture-only pauses breathe. */
.supplied-photo{width:100%;height:auto}
.photo-pause{margin-block:0 56px}
.photo-pause>img{width:100%;height:auto}
.photo-pause-wide{margin-inline:0}
.photo-pause-wide>img{max-height:820px;object-fit:cover;object-position:center 62%}
.photo-pause figcaption,.photo-diptych figcaption{padding-block:20px;font:24px/1.7 var(--serif)}
.photo-pause-wide figcaption{padding-inline:var(--gutter)}
.photo-pause figcaption small,.photo-diptych figcaption small{font-family:var(--sans)}
.photo-diptych{margin-block:36px 72px}
.photo-diptych>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}
.photo-diptych img{aspect-ratio:1;object-fit:cover}
.photo-diptych img:first-child{aspect-ratio:4/5}
.photo-copy-pair{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:70px;align-items:center}
.photo-copy-pair>figure,.spec-with-photo>figure{margin:0}
.photo-copy-pair>div{min-width:0}
.photo-product-stage{padding:0}
.photo-product-stage img,.howto-photo{aspect-ratio:4/5;object-fit:cover;object-position:54% center}
.home-research .reading-photo{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;margin-bottom:28px}
.photo-root{max-width:850px}
.brand-emblem{max-width:960px}
.brand-emblem>img{max-height:620px;object-fit:contain}
.craft-finish>div{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
.craft-finish img:first-child{aspect-ratio:3/2}
.spec-with-photo{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:70px;align-items:center}
.spec-with-photo .plain-spec{grid-template-columns:130px 1fr;margin:0}
.spec-with-photo img{max-height:600px;object-fit:contain}
.support-photo{max-width:1000px}
.support-photo>img{max-height:420px;object-fit:cover;object-position:center 47%}
.hero-photographic .hero-bg{height:100%;filter:none;object-position:center 65%}
.hero-photographic::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#f8f8f3c9 0%,#f8f8f352 30%,transparent 56%)}
.hero-photographic .hero-top{z-index:2}
.hero-photographic .hero-scroll{z-index:2}
@media(min-width:768px){
 .hero-photographic .hero-copy{top:190px;max-width:42%}
 .hero-photographic .hero-copy strong{font-size:76px}
 .hero-photographic .hero-copy h2{font-size:28px}
 .hero-photographic .hero-small{max-width:360px}
}
@media(min-width:1700px){.hero-photographic .hero-copy{top:220px}}
@media(min-width:768px) and (max-width:1023px){
 .hero-photographic .hero-copy{max-width:45%;left:4%}
 .hero-photographic .hero-copy strong{font-size:62px}
 .hero-photographic .hero-copy h2{font-size:23px}
}
@media(max-width:767px){
 .photo-pause{margin-bottom:32px}
 .photo-pause-wide>img{aspect-ratio:4/3;object-fit:cover;object-position:66% center}
 .photo-pause figcaption,.photo-diptych figcaption{font-size:20px}
 .photo-diptych{margin-block:28px 44px}
 .photo-diptych>div,.craft-finish>div{gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .photo-diptych img,.photo-diptych img:first-child{aspect-ratio:auto;height:auto}
 .photo-copy-pair,.spec-with-photo{grid-template-columns:1fr;gap:30px}
 .photo-product-stage img,.howto-photo{aspect-ratio:3/2;object-position:center}
 .spec-with-photo>figure{max-width:300px;margin-inline:auto}
 .spec-with-photo .plain-spec{grid-template-columns:110px 1fr}
 .support-photo>img{height:auto;max-height:none}
 /* A separate image area keeps the mobile copy clear without cropping the pack. */
 .hero.hero-photographic{height:680px;max-height:none;min-height:0;background:var(--paper)}
 .hero-photographic::before{display:none}
 .hero-photographic .hero-bg{top:auto;bottom:0;height:310px;object-position:65% center}
 .hero-photographic .hero-copy{top:120px}
 .hero-photographic .hero-copy strong{font-size:62px}
 .hero-photographic .hero-copy h2{font-size:23px;margin-bottom:12px}
 .hero-photographic .hero-small{font-size:12px;margin-bottom:8px}
 .hero-photographic .hero-scroll{bottom:12px;padding:4px 8px;background:var(--paper)}
}
/* Neutral surfaces also replace legacy green tints outside the shared tokens. */
dialog::backdrop{background:#24242480}
.hero-top{border-bottom-color:var(--line)}
.life-caption .eyebrow,.life-banner small,.footer-grid p,.footer-bottom p,.footer-bottom small,.choice-band .eyebrow{color:var(--mist)}
.life-banner>small{background:#242424cc}
.type-visual.italic{background:var(--mist);color:var(--ink)}
.cycles>span{border-color:var(--line)}
.hero-photographic::before{background:linear-gradient(90deg,#f2f0ecc9 0%,#f2f0ec52 30%,transparent 56%)}
/* Photo hierarchy: immersive scene, explanatory pair, then quiet detail. */
:root{--editorial-gap:80px;--editorial-space:112px}
.chapter{padding-block:var(--editorial-space)}
.page-intro{padding-bottom:64px}
.photo-pause{margin-bottom:0}
.photo-pause-wide{max-width:1600px;margin-inline:auto}
.photo-pause-wide>img{aspect-ratio:2/1;max-height:640px;object-position:center 62%}
.photo-pause-wide:has(figcaption){display:grid;grid-template-columns:3fr 2fr;align-items:center;background:var(--paper)}
.photo-pause-wide:has(figcaption)>img{aspect-ratio:4/3;height:100%;max-height:600px}
.photo-pause-wide figcaption{padding:48px 16%;font-size:27px;line-height:1.9;max-width:470px}
.photo-diptych{max-width:1080px;margin-block:40px 96px}
.photo-diptych>div{grid-template-columns:1.25fr 1fr;gap:12%;align-items:end}
.photo-diptych img:first-child{aspect-ratio:4/5}
.photo-diptych img:nth-child(2){aspect-ratio:1;margin-bottom:20%}
.photo-diptych figcaption{font-size:22px;padding-top:28px}
.feature-product .feature-grid{gap:var(--editorial-gap);padding-block:0;align-items:center}
.photo-product-stage img{aspect-ratio:1;object-position:58% center}
.feature-product{padding-block:56px}
.photo-copy-pair{gap:var(--editorial-gap);grid-template-columns:1.2fr 1fr}
.photo-copy-pair>div{max-width:480px}
.photo-copy-pair>figure img{aspect-ratio:1;object-fit:cover}
.home-research .reading-photo{aspect-ratio:4/3;margin-bottom:24px}
.editorial-opening{display:grid;grid-template-columns:1fr 1.2fr;max-width:1600px;margin:0 auto 48px;align-items:center}
.editorial-opening .page-intro{width:auto;margin:0;padding:64px;max-width:620px}
.editorial-opening .product-opening{width:100%;margin:0;max-width:none}
.editorial-opening .product-opening>img{aspect-ratio:1;object-fit:cover;object-position:65% center}
.editorial-opening figcaption{font-size:15px;padding:16px 0}
.story-composition{display:grid;grid-template-columns:1fr 1.15fr;gap:var(--editorial-gap);align-items:center;padding-block:0 96px}
.story-composition .brand-emblem{width:100%;margin:0}
.story-composition .brand-emblem>img{aspect-ratio:1;object-fit:cover;max-height:none}
.story-composition figcaption{font-size:18px;line-height:1.7;padding-top:20px}
.story-composition .editorial-copy{width:100%;padding:0;margin:0}
.spec-with-photo{grid-template-columns:.7fr 1.3fr;gap:var(--editorial-gap)}
.spec-with-photo img{max-height:480px;width:100%;object-fit:contain}
.photo-root{max-width:680px;margin-block:0 24px}
.craft-finish{max-width:1120px;margin-block:0 64px}
.craft-finish>div{grid-template-columns:1.4fr 1fr;gap:12%}
.craft-finish img:first-child{aspect-ratio:3/2}
.craft-finish img:nth-child(2){aspect-ratio:4/5;margin-bottom:0}
@media(min-width:1024px){
 .home-research{gap:48px}
 .detail-pair{gap:80px}
 .howto-photo{aspect-ratio:1;object-position:58% center}
}
@media(min-width:768px) and (max-width:1023px){
 :root{--editorial-gap:40px;--editorial-space:80px}
 .editorial-opening .page-intro{padding:40px 32px}
 .editorial-opening h1{font-size:44px}
 .photo-pause-wide figcaption{padding:32px;font-size:23px}
}
@media(max-width:767px){
 :root{--editorial-gap:28px;--editorial-space:64px}
 .page-intro{padding-bottom:36px}
 .editorial-opening,.story-composition{display:block;margin-bottom:32px}
 .editorial-opening .page-intro{padding:40px 24px 28px}
 .editorial-opening .product-opening>img{aspect-ratio:4/3;object-position:center}
 .editorial-opening figcaption{padding:16px 24px;font-size:14px}
 .photo-pause-wide:has(figcaption){display:block}
 .photo-pause-wide>img,.photo-pause-wide:has(figcaption)>img{aspect-ratio:4/3;height:auto}
 .photo-pause-wide figcaption{padding:24px;font-size:21px;max-width:none}
 .photo-diptych{margin-block:24px 48px}
 .photo-diptych>div,.craft-finish>div{grid-template-columns:1.15fr 1fr;gap:16px}
 .photo-diptych img:first-child{aspect-ratio:4/5;object-fit:cover}
 .photo-diptych img:nth-child(2){aspect-ratio:1;margin-bottom:20%}
 .photo-diptych figcaption{font-size:18px;padding-top:20px}
 .photo-copy-pair,.spec-with-photo{grid-template-columns:1fr;gap:28px}
 .photo-copy-pair>figure img{aspect-ratio:3/2}
 .feature-product{padding-block:32px}
 .photo-product-stage img,.howto-photo{aspect-ratio:3/2}
 .story-composition{padding-bottom:32px}
 .story-composition .brand-emblem{max-width:280px;margin:0 0 40px}
 .story-composition .editorial-copy{padding:0}
 .spec-with-photo>figure{max-width:220px}
 .spec-with-photo img{max-height:290px}
 .photo-root{width:calc(100% - 48px);margin-bottom:0}
 .craft-finish{margin-bottom:32px}
}
/* Research qualifications stay legible; use and storage guidance is unchanged. */
#research .note,#research-topics .note,#ingredients .note,.home-bridge .note{
 font-size:11px!important;
 line-height:1.8;
 color:var(--muted);
}
/* Keep the complete film visible, including on narrow screens. */
.hero.hero-film{height:auto;min-height:0;max-height:none;background:var(--paper)}
.hero-film-stage{position:relative;width:100%;aspect-ratio:16/9;background:var(--mist);overflow:hidden}
.hero-film-video{display:block;width:100%;height:100%;object-fit:contain}
.hero-film-toggle{position:absolute;right:24px;bottom:20px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff80;background:#242424cc;color:#fff;cursor:pointer}
.hero-film-toggle svg{width:18px;height:18px}
.hero-film-bottom{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px 4.5%}
.hero-film-bottom h1{font:38px/1 var(--display);margin:0 0 12px}
.hero-film-bottom p{font-size:13px;line-height:1.9;margin:0}
.hero-film-links{display:flex;align-items:center;gap:32px;flex-shrink:0}
.hero-film-links .text-link{margin:0;min-height:44px}
.hero-film-links .button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px}
@media(max-width:767px){
 .hero-film-stage{max-height:none}
 .hero-film-toggle{right:12px;bottom:12px}
 .hero-film-bottom{display:block;padding:24px}
 .hero-film-bottom h1{font-size:32px}
 .hero-film-bottom p{font-size:12px}
 .hero-film-links{margin-top:20px;gap:12px;flex-wrap:wrap;justify-content:space-between}
 .hero-film-links a{font-size:12px}
}

/* ── モーション（2026-10-25追加） ───────────────────────────────
   方針：動きは装飾ではなく目線の誘導。1要素1回・ゆっくり・跳ねない。
   「過剰演出は禁止」（CODEX_BRIEF_LP_COMPLETE.md §6-2）に合わせ、
   既存のフェードを整えた上で、入場・現在地・ページ送りだけを足す。 */
.motion-line{display:inline-block}

/* スクロールすると地の紙が透けて、ヘッダーが浮いているように見せる */
.site-header{transition:background-color .35s,border-color .35s,backdrop-filter .35s}
.site-header.is-scrolled{background:color-mix(in srgb,var(--paper) 82%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px)}
@supports not (backdrop-filter:blur(1px)){.site-header.is-scrolled{background:var(--paper)}}

/* 目次は、いま読んでいる章の下に線を引く */
.home-jump a,.jump a{position:relative;transition:color .3s}
.home-jump a::after,.jump a::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .55s cubic-bezier(0.22,1,0.36,1)}
.home-jump a:hover::after,.jump a:hover::after,.home-jump a[data-current]::after,.jump a[data-current]::after{transform:scaleX(1);transform-origin:left}
.home-jump a[data-current],.jump a[data-current]{color:var(--green)}

/* テキストリンクは、罫線がもう一本引かれて応える */
.text-link{position:relative}
.text-link::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .55s cubic-bezier(0.22,1,0.36,1)}
.text-link:hover::after,.text-link:focus-visible::after{transform:scaleX(1);transform-origin:left}
.button{transition:background-color .3s}

/* FAQの＋は回りながら×になる（開閉のアニメーションはsite.js側） */
summary svg{transition:transform .35s cubic-bezier(0.22,1,0.36,1)}

/* ページ送りは、紙を差し替えるような短い溶暗 */
@view-transition{navigation:auto}
::view-transition-old(root){animation:paper-fade .26s linear both}
::view-transition-new(root){animation:paper-fade .34s linear reverse both}
@keyframes paper-fade{to{opacity:0}}

@media(prefers-reduced-motion:reduce){
 @view-transition{navigation:none}
 .motion-line{clip-path:none!important}
 .home-jump a::after,.jump a::after,.text-link::after{transition:none}
}

/* ── 慣性スクロール（Lenis）2026-11-08 ──────────────────────────
   参考4サイト（imayo / wedding.s-tmro / open-rise / shijima-atami）が
   4つとも採用していた。サイトが「文書」ではなく「作品」に感じられる土台。
   ライブラリ側が html に .lenis / .lenis-smooth を付ける。 */
html.lenis,html.lenis body{height:auto}
/* Every programmatic scroll goes through window.scrollToTarget, so the browser's own
   smooth scrolling is turned off wholesale rather than only while Lenis is mid-glide. */
html.lenis{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}
.lenis.lenis-smooth iframe{pointer-events:none}

/* ── 章の切り替え（.home-bridge）の演出案・2026-11-08 ────────────
   ?bridge=a|b|c|d で4案を切り替えるための支え。
   パラメータ無しでは data-bridge が付かないので、公開時の見た目は不変。 */
.motion-char{display:inline-block}
[data-bridge] .home-bridge{position:relative}
/* 案A：罫線を自分で引くので、本来のborderは透明にして二重線を避ける */
[data-bridge="a"] .home-bridge{border-top-color:transparent}
.bridge-rule{position:absolute;left:0;top:-1px;width:100%;height:1px;background:var(--line);transform-origin:left}


/* ── 九蒸九曝の9回（2026-11-08） ─────────────────────────────────
   .cycles（上の repeat(9,1fr)）は既に書かれていて、どのページでも使われていなかった
   部品。新しく作らず、貼り付く枠（.journey-visual）の中でそのまま使う。 */
.journey-visual .cycles{margin:18px 0 0;gap:8px}
.journey-visual .cycles b{font-size:22px}
.journey-visual .cycles small{font-size:9px;margin-top:4px;letter-spacing:.08em}
.cycles>span{color:var(--muted);
 transition:background-color .55s cubic-bezier(0.22,1,0.36,1),border-color .55s,color .55s}
/* 数字と枠は濃いまま。地の色だけが一段ずつ深くなるので、何回目の円でも数字が読める。 */
.cycles>span.is-done{border-color:var(--green);color:var(--green);
 background:color-mix(in srgb,var(--green) calc(var(--fill,0) * 100%),transparent)}
@supports not (background:color-mix(in srgb,#000 10%,transparent)){
 .cycles>span.is-done{background:var(--mist)}
}
/* スマホでも9個を一列に保つ。3列に折り返すと「9」が一目で分からなくなる。 */
@media(max-width:767px){
 .journey-visual .cycles{grid-template-columns:repeat(9,1fr);gap:5px;max-width:none;margin:10px 0 0}
 .journey-visual .cycles b{font-size:14px}
 .journey-visual .cycles small{display:none}
}
@media(prefers-reduced-motion:reduce){.cycles>span{transition:none}}
/* 9個の円を足した分、貼り付く列が背高になる。写真の上限を下げて列全体を画面に収める。
   実測：窓の高さ652px以上で、写真・円・ナビが全部見えたまま貼り付く（元は674px以上）。 */
.journey-visual.has-cycles .journey-images{max-height:50vh}
.journey-visual.has-cycles .cycles{margin-top:14px}

/* ── 章の切り替わり：蒸気で覆う（2026-11-08） ──────────────────
   「雲」ではなく蒸気。この商品は蒸して作る。覆った先の章がまさにその話。
   走路（.veil-runway）と蒸気の層は site.js が足す。軽減設定では作られないので、
   演出が出ないときにページが間延びすることはない。 */
.veil-runway{height:92vh;pointer-events:none}
.chapter-veil{position:fixed;inset:0;z-index:90;pointer-events:none;overflow:hidden}
.veil-wash{position:absolute;inset:0;opacity:0;
 background:linear-gradient(180deg,#fbfaf8 0%,var(--paper) 55%,#efece6 100%)}
/* 層は画面より一回り大きく取る。上下に抜けるときに端が覗かないように。 */
.veil-layer{position:absolute;left:-25%;right:-25%;top:-30%;bottom:-30%;opacity:0;
 background:url(assets/steam-v2.webp) center/cover no-repeat;will-change:transform,opacity}
.veil-layer-0{filter:blur(26px) brightness(1.18);scale:1.4}
.veil-layer-1{filter:blur(14px) brightness(1.12);scale:1.18}
.veil-layer-2{filter:blur(6px) brightness(1.06);scale:1.02}
@media(max-width:767px){
 .veil-runway{height:80svh}
 /* スマホは層を2枚に減らす。全画面のぼかしを3枚重ねると実機で落ちる。 */
 .veil-layer-2{display:none}
 .veil-layer-0{filter:blur(18px) brightness(1.18)}
}

/* 切り替わりの見出しを、スマホでも2行に保つ。
   2026-11-12 改訂：この見出しには編集画面で付いた inline の font-size:24px があり、
   ここで font-size を指定しても上書きされず、375pxで「んか？」が3行目に落ちていた。
   字を小さくするのではなく、palt（約物の幅を詰める組版）で収める。
   実測：2行目「「黒参」を知ってみませんか？」が 336px → 290px（使える幅327px）。
   font-feature-settings は inline で指定されていないので、!important は要らない。
   2つ目の切り替わり（Rg3…）は文字数が違うので対象外。 */
@media(max-width:767px){
 #for-you .home-bridge h3{font-feature-settings:"palt" 1}
}
/* 320pxなど特に狭い端末では palt だけでは足りない（290px > 使える幅272px）。
   ここだけは inline を上書きして字も詰める。360px以上では編集画面の指定が生きる。 */
@media(max-width:359px){
 #for-you .home-bridge h3{font-size:min(24px,calc((100vw - 48px) / 12.4))!important}
}

/* 章へ飛んだときの着地を全セクションで揃える。
   .craft-journey だけ scroll-margin-top:100px が別に入っていて、
   scroll-padding-top(110px) と足されて210pxになり、ひとつ前の章の見出しが
   画面の上に残っていた（実測）。他と同じ110pxに合わせる。 */
section.craft-journey{scroll-margin-top:0}

/* ── エキスの場面（2026-11-08） ───────────────────────────────
   画面いっぱいに貼り付き、スクロールした分だけエキスが落ちていく。
   中身は32枚の連番画像で、site.js がスクロール量に合わせて描き替える。
   .pour-scene の高さが、そのまま「落ちきるまでのスクロール量」になる。 */
.pour-scene{position:relative;height:240vh;width:100%;background:var(--paper);
 margin-bottom:120px}
.pour-stage{position:sticky;top:0;height:100svh;overflow:hidden}
.pour-canvas{display:block;width:100%;height:100%;object-fit:cover}
/* 軽減設定では走路を作らず、ふつうの横長の絵として置く。 */
.pour-scene.is-static{height:auto;margin-bottom:96px}
.pour-scene.is-static .pour-stage{position:static;height:auto}
.pour-scene.is-static .pour-canvas{height:auto;aspect-ratio:16/9}
@media(max-width:767px){
 .pour-scene{height:200vh;margin-bottom:72px}
 .pour-scene.is-static{margin-bottom:56px}
}

/* ── 診断の修正（2026-11-08） ─────────────────────────────────
   スマホでタップ領域が44pxに満たないリンクが10種類あった（実測）。
   ヘッダーの「ご購入について」は93×20px。主要導線なのに高さ20px。
   見た目は一切変えず、当たり判定だけを広げる。
   ::after は下線の演出で使っているので ::before を使う。 */
@media(max-width:1023px){
 .site-header a,.footer-grid nav a,.footer-bottom a{position:relative}
 .site-header a::before,.footer-grid nav a::before,.footer-bottom a::before{
  content:"";position:absolute;left:-10px;right:-10px;top:50%;height:44px;
  transform:translateY(-50%);pointer-events:auto}
 .menu-trigger{min-width:44px;min-height:44px}
}

/* 法務・会社情報ページの定義リスト */
.legal-list{display:grid;grid-template-columns:200px 1fr;gap:0;margin:0;border-top:1px solid var(--line)}
.legal-list dt{padding:22px 0;font-size:14px;color:var(--muted);border-bottom:1px solid var(--line)}
.legal-list dd{padding:22px 0;margin:0;font-size:15px;line-height:1.95;border-bottom:1px solid var(--line)}
@media(max-width:767px){
 .legal-list{grid-template-columns:1fr}
 .legal-list dt{padding:20px 0 4px;border-bottom:0;font-size:12px}
 .legal-list dd{padding:0 0 20px;font-size:14px}
}

/* ===== 公開準備（2026-11-09 追加）===== */
/* 404の選択リスト：見出し階層を h2 に直したため、見た目を元の h3 相当に保つ */
.choice-list h2{font:500 23px/1.55 var(--serif);margin:0 0 8px}
@media(max-width:767px){.choice-list h2{font-size:20px}}

/* Cookie同意バナー（GA4の測定IDを入れたときだけ表示される） */
.consent{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:9999;
 width:min(680px,calc(100vw - 32px));background:var(--paper);color:var(--ink);
 border:1px solid var(--line);box-shadow:0 18px 48px rgba(36,36,36,.18);
 padding:24px 26px;display:grid;gap:18px;font-size:13px;line-height:1.9}
.consent p{margin:0}
.consent a{text-decoration:underline;text-underline-offset:3px}
.consent-actions{display:flex;gap:12px;flex-wrap:wrap}
.consent button{font:inherit;font-size:13px;letter-spacing:.04em;padding:12px 26px;cursor:pointer;
 background:var(--green);color:var(--white);border:1px solid var(--green)}
.consent button.ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.consent button:hover{opacity:.86}
.consent button:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:767px){.consent{left:16px;right:16px;bottom:16px;transform:none;width:auto;padding:20px}
 .consent-actions{display:grid}}
@media(prefers-reduced-motion:no-preference){.consent{animation:consent-in .4s cubic-bezier(.22,1,.36,1)}}
@keyframes consent-in{from{opacity:0;transform:translate(-50%,14px)}to{opacity:1}}
@media(max-width:767px){@keyframes consent-in{from{opacity:0;transform:translateY(14px)}to{opacity:1}}}
