:root{--ink:#15140f;--paper:#f5f0e5;--gold:#d3ad60;--line:rgba(255,255,255,.24);--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN","Noto Sans JP",Arial,sans-serif;--header:72px;--footer:36px}
*{box-sizing:border-box}html,body{height:100%;margin:0}html{background:var(--ink)}body{color:white;font-family:var(--sans);font-size:16px;line-height:1.65;overflow:hidden}button,a{font:inherit;color:inherit}button{cursor:pointer}.skip-link{position:fixed;z-index:100;left:1rem;top:-5rem;background:white;color:#111;padding:.6rem 1rem}.skip-link:focus{top:1rem}.app-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:var(--header);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,3.5rem);border-bottom:1px solid rgba(255,255,255,.22);background:linear-gradient(180deg,rgba(9,9,7,.55),transparent)}.brand{display:flex;align-items:center;gap:.72rem;border:0;background:transparent;padding:0;text-align:left}.brand-seal{display:grid;place-items:center;width:2.45rem;height:2.45rem;border:1px solid currentColor;border-radius:50%;font:500 1rem/1 var(--serif)}.brand b,.brand small{display:block}.brand b{font:600 .78rem/1.1 var(--serif);letter-spacing:.17em}.brand small{margin-top:.25rem;font-size:.58rem;letter-spacing:.14em;opacity:.7}.header-actions{display:flex;align-items:center;gap:1.4rem}.soundless-guide{padding:.35rem .7rem;border:1px solid rgba(255,255,255,.38);background:rgba(0,0,0,.12);font-size:.68rem;letter-spacing:.12em}.lang-switch{display:flex;align-items:center;gap:.4rem}.lang-switch button{padding:.25rem;border:0;background:transparent;font-size:.75rem;opacity:.55}.lang-switch button.is-active{opacity:1;color:var(--gold);text-decoration:underline;text-underline-offset:.3rem}.lang-switch span{opacity:.35}.app-footer{position:fixed;z-index:40;bottom:0;left:0;width:100%;height:var(--footer);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,3.5rem);background:#0b0b09;color:#8f897e;font-size:.62rem;letter-spacing:.08em}.view{position:fixed;inset:0;display:none;overflow:auto;opacity:0}.view.is-active{display:block;animation:viewIn .38s ease forwards}@keyframes viewIn{to{opacity:1}}.back-button{position:absolute;z-index:20;top:calc(var(--header) + 1.2rem);left:clamp(1rem,4vw,3.5rem);display:flex;align-items:center;gap:.7rem;padding:.45rem .75rem;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.18);backdrop-filter:blur(8px);font-size:.77rem}.back-button span:first-child{font-size:1.1rem}.dark-back{color:var(--ink);border-color:rgba(30,27,20,.32);background:rgba(255,255,255,.45)}.eyebrow,.section-tag{margin:0;color:var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.22em}
.home-view{overflow:hidden;background:#17140f}.home-bg,.home-shade{position:absolute;inset:0;width:100%;height:100%}.home-bg{object-fit:cover;object-position:center}.home-shade{background:linear-gradient(90deg,rgba(12,11,8,.88) 0%,rgba(12,11,8,.65) 36%,rgba(12,11,8,.18) 72%),linear-gradient(0deg,rgba(8,8,6,.7),transparent 45%)}.home-content{position:relative;z-index:2;height:calc(100% - var(--footer));display:grid;grid-template-columns:minmax(330px,.82fr) minmax(460px,1.18fr);grid-template-rows:1fr auto;gap:1.5rem clamp(2rem,5vw,5rem);padding:calc(var(--header) + clamp(2rem,6vh,5rem)) clamp(1rem,5vw,5rem) clamp(1.25rem,4vh,2.5rem)}.home-intro{align-self:center;max-width:650px}.home-intro h1{margin:.8rem 0 1.3rem;font:500 clamp(3.3rem,6.6vw,7.2rem)/1.08 var(--serif);letter-spacing:.025em}.home-lead{max-width:520px;margin:0;color:#e1d8c8;font-family:var(--serif);font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.9}.scent-choices{align-self:center;display:grid;border-top:1px solid var(--line)}.scent-choice{position:relative;display:grid;grid-template-columns:2.2rem 5.2rem 1fr 2rem;align-items:center;gap:1.2rem;min-height:clamp(115px,15vh,155px);padding:1rem 1.3rem;border:0;border-bottom:1px solid var(--line);background:rgba(10,9,7,.22);color:white;text-align:left;backdrop-filter:blur(3px);transition:background .22s,transform .22s}.scent-choice:hover,.scent-choice:focus-visible{background:rgba(245,240,229,.94);color:var(--ink);transform:translateX(-8px)}.choice-no{align-self:start;padding-top:.5rem;font-size:.65rem;letter-spacing:.12em;opacity:.65}.choice-kanji{font:400 clamp(3.2rem,5.2vw,5rem)/1 var(--serif)}.choice-copy b,.choice-copy small{display:block}.choice-copy b{font:500 clamp(1.3rem,2.4vw,2.2rem)/1 var(--serif);letter-spacing:.12em}.choice-copy small{margin-top:.6rem;font-size:.82rem}.enter-mark{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid currentColor;border-radius:50%;font-size:1.1rem}.sakura-choice:hover,.sakura-choice:focus-visible{box-shadow:inset 4px 0 #a85669}.hinoki-choice:hover,.hinoki-choice:focus-visible{box-shadow:inset 4px 0 #477c63}.yuzu-choice:hover,.yuzu-choice:focus-visible{box-shadow:inset 4px 0 #caa312}.home-tools{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:rgba(8,8,6,.42);backdrop-filter:blur(9px)}.home-tools button{display:grid;grid-template-columns:2rem 1fr;grid-template-rows:auto auto;gap:0 .8rem;padding:.9rem 1.2rem;border:0;border-right:1px solid var(--line);background:transparent;text-align:left}.home-tools button:last-child{border-right:0}.home-tools button:hover,.home-tools button:focus-visible{background:rgba(255,255,255,.12)}.home-tools span{grid-row:1/3;color:var(--gold);font-size:.66rem}.home-tools b{font:500 1rem/1.4 var(--serif)}.home-tools small{color:#bfb7a9;font-size:.7rem}.home-footnote{position:absolute;z-index:3;right:1rem;bottom:calc(var(--footer) + 1rem);margin:0;font-size:.58rem;letter-spacing:.2em;writing-mode:vertical-rl;opacity:.65}
.scent-view{overflow:hidden;background:#111}.scent-backdrop{position:absolute;inset:0}.scent-backdrop img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.scent-backdrop div{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,8,.93) 0%,rgba(10,10,8,.85) 39%,rgba(10,10,8,.42) 62%,rgba(10,10,8,.55)),linear-gradient(0deg,rgba(0,0,0,.65),transparent 45%)}.scent-layout{position:relative;z-index:2;height:calc(100% - var(--footer));display:grid;grid-template-columns:minmax(310px,.76fr) minmax(520px,1.24fr);gap:clamp(2rem,5vw,5rem);padding:calc(var(--header) + 4.5rem) clamp(1rem,5vw,5rem) 2rem}.scent-story{position:relative;align-self:center;max-width:590px}.scent-story>p:first-child{margin:0 0 1rem;color:var(--gold);font-size:.7rem;letter-spacing:.18em}.scent-symbol{position:absolute;right:0;top:-2rem;color:var(--accent,#b75f72);font:400 clamp(7rem,15vw,14rem)/1 var(--serif);opacity:.3}.scent-story h2{position:relative;margin:0;font:500 clamp(3.5rem,7vw,7rem)/1 var(--serif);letter-spacing:.08em}.scent-quote{position:relative;margin:1.5rem 0 1rem;padding-left:1rem;border-left:2px solid var(--accent,#b75f72);font:500 clamp(1.05rem,1.7vw,1.35rem)/1.8 var(--serif)}.scent-description{position:relative;max-width:530px;margin:0;color:#c8c0b3;font-size:.92rem}.scent-switcher{display:flex;gap:.45rem;margin-top:2rem}.scent-switcher button{padding:.45rem .7rem;border:1px solid rgba(255,255,255,.25);background:transparent;font-size:.65rem;letter-spacing:.1em;opacity:.55}.scent-switcher button.is-active{border-color:var(--accent,#b75f72);color:white;opacity:1}.scent-explore{align-self:center;min-height:min(620px,72vh);padding:1.3rem clamp(1.2rem,3vw,2.5rem) 1.8rem;background:rgba(245,240,229,.96);color:var(--ink);box-shadow:0 28px 70px rgba(0,0,0,.25)}.panel-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #c9bea9}.panel-tabs button{padding:.8rem .4rem;border:0;border-bottom:3px solid transparent;background:transparent;font-size:.8rem}.panel-tabs button.is-active{border-color:var(--accent,#b75f72);font-weight:700}.panel-body{padding-top:1.2rem}.content-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem}.content-head p{margin:0;color:#766c5d;font-size:.76rem}.content-head h3{margin:0;font:500 clamp(1.6rem,2.4vw,2.3rem)/1.35 var(--serif)}.place-list{display:grid;gap:.6rem}.place-item{display:grid;grid-template-columns:2rem 1.15fr 1fr auto;align-items:center;gap:1rem;padding:.85rem 0;border-bottom:1px solid #d6cbb9}.place-item>span{color:var(--accent,#b75f72);font-size:.68rem}.place-item h4{margin:0;font:500 1.05rem/1.35 var(--serif)}.place-item h4 small{display:block;margin-top:.15rem;color:#8b8173;font:italic .7rem/1.3 Georgia,serif}.place-item p{margin:0;color:#5f584e;font-size:.76rem}.place-item a{padding:.45rem .7rem;border:1px solid #b9ad98;text-decoration:none;font-size:.7rem;white-space:nowrap}.culture-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.culture-item{min-height:245px;padding:1rem;border:1px solid #d4c9b7;background:#eee7da}.culture-item>span{color:var(--accent,#b75f72);font-size:.65rem;letter-spacing:.12em}.culture-item h4{margin:2.2rem 0 .7rem;font:500 1.12rem/1.45 var(--serif)}.culture-item p{margin:0;color:#625b51;font-size:.75rem}.culture-item a{display:inline-block;margin-top:1rem;font-size:.72rem;text-underline-offset:.25rem}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.plan-card{padding:1.1rem;border:1px solid #d2c6b3}.plan-card span{color:var(--accent,#b75f72);font-size:.66rem;letter-spacing:.1em}.plan-card h4{margin:.7rem 0 .4rem;font:500 1.05rem/1.4 var(--serif)}.plan-card p{margin:0;color:#665e53;font-size:.76rem}.plan-card a{display:inline-block;margin-top:.8rem;font-size:.72rem;text-underline-offset:.25rem}
.quiz-view,.guide-view{background:var(--paper);color:var(--ink)}.quiz-shell{min-height:calc(100% - var(--footer));display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,8vw,8rem);align-items:center;padding:calc(var(--header) + 5rem) clamp(1rem,7vw,7rem) 4rem}.quiz-intro h2,.guide-shell h2,.shop-shell h2{margin:.8rem 0 1.2rem;font:500 clamp(2.7rem,5vw,5.4rem)/1.2 var(--serif)}.quiz-intro>p:last-child,.guide-shell header>p:last-child{max-width:430px;color:#6b6256}.quiz-progress{display:flex;align-items:center;gap:1rem;color:#7e725f;font-size:.72rem;letter-spacing:.1em}.quiz-progress>div{flex:1;height:2px;background:#cfc2ae}.quiz-progress i{display:block;width:33%;height:100%;background:var(--gold);transition:width .25s}.quiz-question{margin:2.2rem 0 1.4rem;font:500 clamp(1.5rem,2.6vw,2.3rem)/1.5 var(--serif)}.quiz-options{display:grid;gap:.65rem}.quiz-options button{min-height:62px;padding:.8rem 1.1rem;border:1px solid #c2b49d;background:white;text-align:left}.quiz-options button:hover,.quiz-options button:focus-visible{background:var(--ink);color:white}.quiz-result{position:relative;padding:2rem 2rem 2rem 10rem;border-left:3px solid var(--gold)}.quiz-result>div{position:absolute;left:1rem;top:3rem;color:var(--gold);font:400 6rem/1 var(--serif);opacity:.5}.quiz-result h3{margin:.5rem 0;font:500 clamp(3rem,7vw,6.5rem)/1 var(--serif);letter-spacing:.08em}.primary-action,.reset-action{min-height:48px;margin-top:1rem;padding:.7rem 1.1rem}.primary-action{border:1px solid var(--ink);background:var(--ink);color:white}.reset-action{border:0;background:transparent;text-decoration:underline;text-underline-offset:.25rem}.guide-shell{min-height:calc(100% - var(--footer));padding:calc(var(--header) + 5rem) clamp(1rem,6vw,6rem) 4rem}.guide-shell>header{display:flex;align-items:end;justify-content:space-between;gap:3rem}.guide-shell>header h2{max-width:650px}.season-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:2rem}.season-grid button{position:relative;min-height:270px;padding:1.3rem;border:1px solid #bfb19a;background:#fffdfa;text-align:left;overflow:hidden}.season-grid button::after{content:"";position:absolute;inset:auto -2rem -4rem auto;width:10rem;height:10rem;border-radius:50%;background:var(--season-color,#a85669);opacity:.12}.season-grid button:nth-child(2){--season-color:#477c63}.season-grid button:nth-child(3){--season-color:#caa312}.season-grid button:hover,.season-grid button:focus-visible{background:var(--ink);color:white}.season-grid span,.season-grid b,.season-grid small{display:block}.season-grid span{color:var(--gold);font-size:.66rem;letter-spacing:.12em}.season-grid b{margin:4rem 0 1rem;font:500 clamp(2.3rem,4vw,4.2rem)/1 var(--serif)}.season-grid small{letter-spacing:.15em}.guide-note{display:grid;grid-template-columns:7rem 1fr auto;align-items:center;gap:1.5rem;margin-top:1rem;padding:1rem;border-top:1px solid #c9bda9}.guide-note b{font-family:var(--serif)}.guide-note p{margin:0;color:#6a6257;font-size:.78rem}.guide-note a{font-size:.76rem;text-underline-offset:.25rem;white-space:nowrap}
.shop-view{overflow:hidden;background:#16120e}.shop-view>img,.shop-shade{position:absolute;inset:0;width:100%;height:100%}.shop-view>img{object-fit:cover}.shop-shade{background:linear-gradient(90deg,rgba(15,12,9,.95),rgba(15,12,9,.73) 60%,rgba(15,12,9,.4))}.shop-shell{position:relative;z-index:2;display:flex;min-height:calc(100% - var(--footer));max-width:850px;flex-direction:column;justify-content:center;padding:calc(var(--header) + 5rem) clamp(1rem,7vw,7rem) 4rem}.shop-seal{position:absolute;right:-10vw;top:50%;transform:translateY(-50%);color:var(--gold);font:400 clamp(8rem,18vw,17rem)/1 var(--serif);opacity:.22}.shop-shell>p:not(.section-tag){max-width:620px;color:#c9c0b3}.product-names{display:flex;gap:1.5rem;width:min(100%,580px);margin:1rem 0;padding:1rem 0;border-top:1px solid #655640;border-bottom:1px solid #655640;color:var(--gold);font-size:.75rem;letter-spacing:.13em}.shop-disabled{width:min(100%,420px);min-height:54px;border:1px solid #665842;background:#40372c;color:#c8bba8;cursor:not-allowed}.shop-shell small{margin-top:.65rem;color:#948a7d;font-size:.7rem}
html[lang=en] body{font-family:Arial,sans-serif}html[lang=en] .home-intro h1,html[lang=en] .scent-story h2,html[lang=en] .quiz-intro h2,html[lang=en] .guide-shell h2,html[lang=en] .shop-shell h2{font-family:Georgia,serif;letter-spacing:-.025em}html[lang=en] .home-intro h1{font-size:clamp(3rem,6.2vw,6.8rem);line-height:1.02}html[lang=en] .home-lead,html[lang=en] .scent-quote{font-family:Georgia,serif}html[lang=en] [data-i18n],html[lang=en] [data-i18n-html]{word-break:normal;overflow-wrap:anywhere}
@media(max-width:900px){body{overflow:auto}.app-footer{display:none}.view{position:absolute;min-height:100svh;overflow:visible}.home-view{position:fixed;overflow:auto}.home-content{height:auto;min-height:100svh;grid-template-columns:1fr;padding-top:calc(var(--header) + 3rem);padding-bottom:1.5rem}.home-intro{align-self:end}.home-intro h1{font-size:clamp(3rem,10vw,5.5rem)}.scent-choices{align-self:start}.scent-choice{min-height:105px}.home-tools{grid-column:auto}.home-footnote{display:none}.scent-view{position:fixed;overflow:auto}.scent-layout{height:auto;min-height:100svh;grid-template-columns:1fr;padding-top:calc(var(--header) + 5rem);padding-bottom:2rem}.scent-story{align-self:end;padding-top:4rem}.scent-explore{align-self:start;min-height:0}.quiz-shell{grid-template-columns:1fr;padding-top:calc(var(--header) + 6rem)}.guide-shell>header{display:block}.shop-shell{min-height:100svh}.shop-seal{right:0}}
@media(max-width:600px){:root{--header:64px}.app-header{background:rgba(12,11,9,.48);backdrop-filter:blur(8px)}.brand-seal{width:2.1rem;height:2.1rem}.brand b{font-size:.68rem}.brand small{font-size:.5rem}.soundless-guide{display:none}.header-actions{gap:.5rem}.lang-switch button{font-size:.7rem}.home-bg{object-position:58% center}.home-shade{background:linear-gradient(0deg,rgba(10,9,7,.95) 0%,rgba(10,9,7,.68) 55%,rgba(10,9,7,.28))}.home-content{display:block;padding:calc(var(--header) + 2.4rem) 1rem 1rem}.home-intro h1{font-size:clamp(3rem,15vw,4.5rem);line-height:1.08}.home-lead{font-size:.95rem;line-height:1.7}.scent-choices{margin-top:2rem}.scent-choice{grid-template-columns:1.7rem 3.6rem 1fr 1.8rem;gap:.65rem;min-height:82px;padding:.65rem .6rem;background:rgba(10,9,7,.48)}.choice-kanji{font-size:3rem}.choice-copy b{font-size:1.15rem}.choice-copy small{margin-top:.2rem;font-size:.7rem}.home-tools{margin-top:1rem;grid-template-columns:1fr}.home-tools button{min-height:58px;border-right:0;border-bottom:1px solid var(--line)}.home-tools button:last-child{border-bottom:0}.back-button{top:calc(var(--header) + .7rem)}.scent-layout{display:block;padding:calc(var(--header) + 4.5rem) 1rem 1.2rem}.scent-story{padding-top:2.5rem}.scent-symbol{font-size:7.5rem}.scent-story h2{font-size:3.4rem}.scent-quote{font-size:1rem}.scent-description{font-size:.85rem}.scent-switcher{margin:1.2rem 0}.scent-explore{padding:1rem}.place-item{grid-template-columns:1.5rem 1fr auto;gap:.55rem}.place-item p{grid-column:2/4}.place-item a{grid-column:2/4;justify-self:start}.culture-list{grid-template-columns:1fr}.culture-item{min-height:180px}.culture-item h4{margin-top:1.2rem}.plan-grid{grid-template-columns:1fr}.quiz-shell,.guide-shell{display:block;padding:calc(var(--header) + 6rem) 1rem 2rem}.quiz-stage{margin-top:2rem}.quiz-result{margin-top:2rem;padding:1rem;border-left:0}.quiz-result>div{position:static;font-size:5rem}.guide-shell>header h2{font-size:2.8rem}.season-grid{grid-template-columns:1fr}.season-grid button{min-height:165px}.season-grid b{margin:2rem 0 .6rem}.guide-note{grid-template-columns:1fr}.shop-shell{padding:calc(var(--header) + 5rem) 1rem 2rem}.shop-shell h2{font-size:3rem}.product-names{gap:.8rem;justify-content:space-between}}
.title-line{display:block;white-space:nowrap}.home-intro h1{font-size:clamp(3rem,5vw,4.5rem);line-height:1.12}.home-lead,.scent-description,.place-item p,.culture-item p,.quiz-intro>p:last-child,.guide-shell header>p:last-child,.shop-shell>p:not(.section-tag){text-wrap:pretty}.scent-quote,.content-head h3,.culture-item h4,.plan-card h4,.quiz-question{word-break:keep-all;text-wrap:balance}.choice-copy small,.home-tools b,.home-tools small{white-space:normal;text-wrap:balance}html[lang=en] .home-intro h1{font-size:clamp(2.7rem,4vw,4rem);line-height:1.16}
@media(max-width:900px){.home-intro h1{font-size:clamp(2.8rem,7vw,4rem)}html[lang=en] .home-intro h1{font-size:clamp(2.65rem,5.8vw,3.6rem)}}
@media(max-width:600px){.home-intro h1{font-size:clamp(2.6rem,12vw,3rem);line-height:1.16;margin-top:.65rem;margin-bottom:1rem}html[lang=en] .home-intro h1{font-size:clamp(2.45rem,10.8vw,2.75rem);line-height:1.16}.home-lead{max-width:22rem;font-size:.92rem;line-height:1.75;text-wrap:pretty}.eyebrow{font-size:.66rem;letter-spacing:.17em}.scent-quote,.content-head h3,.culture-item h4,.plan-card h4,.quiz-question{word-break:normal}}
.scent-story h2{font-size:clamp(3.5rem,6.3vw,6.5rem);letter-spacing:.06em}.shop-shell h2{font-size:clamp(2.8rem,4.5vw,4rem);line-height:1.15}
@media(max-width:600px){.scent-story h2{font-size:3.35rem}.shop-shell h2{font-size:2.2rem;line-height:1.18}}
@media(prefers-reduced-motion:reduce){.view.is-active{animation:none}.scent-choice,.quiz-progress i{transition:none}}

/* Photo-led travel experience */
.home-shade{background:linear-gradient(90deg,rgba(10,9,7,.9) 0%,rgba(10,9,7,.68) 38%,rgba(10,9,7,.2) 72%),linear-gradient(0deg,rgba(8,8,6,.8),transparent 56%)}
.scent-choice{isolation:isolate;overflow:hidden;background:#15130f;color:#fff}
.scent-choice::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,8,6,.88) 0%,rgba(8,8,6,.55) 58%,rgba(8,8,6,.18));transition:background .28s}
.choice-photo{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.82);transition:transform .7s ease,filter .35s ease}
.scent-choice:hover,.scent-choice:focus-visible{background:#15130f;color:#fff;transform:translateX(-8px)}
.scent-choice:hover::after,.scent-choice:focus-visible::after{background:linear-gradient(90deg,rgba(8,8,6,.8),rgba(8,8,6,.2))}
.scent-choice:hover .choice-photo,.scent-choice:focus-visible .choice-photo{transform:scale(1.065);filter:saturate(1.08)}
.choice-kanji{text-shadow:0 2px 24px rgba(0,0,0,.35)}
.enter-mark{background:rgba(0,0,0,.2);backdrop-filter:blur(4px)}
.scent-backdrop img{filter:saturate(.95);transform:scale(1.015)}
.scent-backdrop div{background:linear-gradient(90deg,rgba(8,9,7,.94) 0%,rgba(8,9,7,.86) 36%,rgba(8,9,7,.28) 72%),linear-gradient(0deg,rgba(0,0,0,.7),transparent 55%)}
.scent-explore{background:rgba(245,240,229,.93);backdrop-filter:blur(12px)}
.place-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.place-item{position:relative;isolation:isolate;display:flex;min-height:330px;align-items:flex-end;overflow:hidden;border:0;padding:1rem;color:white}
.place-item>img,.place-gradient{position:absolute;z-index:-2;inset:0;width:100%;height:100%}
.place-item>img{object-fit:cover;transition:transform .7s ease}
.place-gradient{z-index:-1;background:linear-gradient(0deg,rgba(10,10,8,.94) 0%,rgba(10,10,8,.48) 53%,rgba(10,10,8,.06) 100%)}
.place-item>span{position:absolute;top:.75rem;left:.75rem;padding:.3rem .45rem;background:rgba(9,9,7,.48);color:white;font-size:.62rem;letter-spacing:.11em;backdrop-filter:blur(5px)}
.place-copy{position:relative;width:100%}
.place-copy h4{margin:0 0 .45rem;color:white;font:500 clamp(1.2rem,1.7vw,1.65rem)/1.25 var(--serif)}
.place-copy p{display:-webkit-box;margin:0;color:#f2ede5;font-size:.7rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.place-copy small{display:block;margin-top:.45rem;color:#dfd4c5;font-size:.62rem}
.place-copy a{display:inline-block;margin-top:.65rem;padding:.38rem .55rem;border:1px solid rgba(255,255,255,.58);background:rgba(0,0,0,.12);color:white;text-decoration:none;font-size:.64rem}
.place-item:hover>img,.place-item:focus-within>img{transform:scale(1.055)}
.story-card{cursor:pointer;outline:0}.story-card:focus-visible{box-shadow:0 0 0 3px var(--accent,#b75f72)}
.internal-link{display:inline-block;margin-top:.65rem;padding:.38rem .55rem;border:1px solid rgba(255,255,255,.58);background:rgba(0,0,0,.12);color:white;font-size:.68rem;line-height:1.2}
.culture-list{gap:.75rem}
.culture-item{position:relative;isolation:isolate;display:flex;min-height:330px;align-items:flex-end;overflow:hidden;border:0;padding:1rem;color:white;background:#201e19}
.culture-item>img,.culture-gradient{position:absolute;z-index:-2;inset:0;width:100%;height:100%}
.culture-item>img{object-fit:cover;transition:transform .7s ease}
.culture-gradient{z-index:-1;background:linear-gradient(0deg,rgba(10,10,8,.96),rgba(10,10,8,.33) 68%,rgba(10,10,8,.05))}
.culture-item>span{position:absolute;top:.75rem;left:.75rem;padding:.3rem .45rem;background:rgba(9,9,7,.45);color:white;backdrop-filter:blur(5px)}
.culture-item h4{margin:0 0 .45rem;color:white;font-size:clamp(1.08rem,1.55vw,1.35rem)}
.culture-item p{display:-webkit-box;margin:0;color:#ece6dc;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.culture-item a{color:white}
.culture-item:hover>img,.culture-item:focus-within>img{transform:scale(1.055)}
.plan-grid{gap:.75rem}
.plan-card{position:relative;isolation:isolate;display:flex;min-height:330px;align-items:flex-end;overflow:hidden;border:0;padding:1.1rem;color:white}
.plan-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(8,8,6,.94),rgba(8,8,6,.15) 78%)}
.plan-card>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.plan-card:hover>img{transform:scale(1.055)}
.plan-card span{color:#f1cd78}.plan-card h4{color:white;font-size:1.25rem}.plan-card p{color:#eee6da}.plan-card a{color:white}
.quiz-film{display:grid;grid-template-columns:1.15fr .85fr 1fr;gap:.35rem;height:155px;margin-top:1.5rem;overflow:hidden}
.quiz-film img{width:100%;height:100%;object-fit:cover}.quiz-film img:nth-child(2){object-position:center}
.quiz-options button{position:relative;isolation:isolate;overflow:hidden;min-height:82px;padding:1rem 1.2rem;color:white;font-weight:700;text-shadow:0 1px 10px rgba(0,0,0,.85);background-position:center;background-size:cover}
.quiz-options button::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,8,6,.8),rgba(8,8,6,.18));transition:background .25s}
.quiz-options button[data-answer="sakura"]{background-image:url("./assets/travel/sakura-river.jpg")}
.quiz-options button[data-answer="hinoki"]{background-image:url("./assets/travel/hinoki-forest.jpg")}
.quiz-options button[data-answer="yuzu"]{background-image:url("./assets/travel/yuzu-orchard.jpg")}
.quiz-options button:hover::after,.quiz-options button:focus-visible::after{background:linear-gradient(90deg,rgba(8,8,6,.54),rgba(8,8,6,.03))}
.season-grid button{isolation:isolate;display:flex;min-height:330px;flex-direction:column;justify-content:flex-end;border:0;color:white;text-shadow:0 1px 14px rgba(0,0,0,.7)}
.season-grid button>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.season-grid button::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(8,8,6,.88),rgba(8,8,6,.08) 76%)}
.season-grid button::after{display:none}
.season-grid button:hover,.season-grid button:focus-visible{background:transparent;color:white}.season-grid button:hover>img,.season-grid button:focus-visible>img{transform:scale(1.055)}
.season-grid span{color:#f1cd78}.season-grid b{margin:0 0 .45rem}.season-grid small{color:white}
.guide-source{color:#7b6c54;font-size:.76rem;white-space:nowrap}

.story-view{overflow:auto;background:#111}
.story-visual{position:fixed;inset:0;overflow:hidden;background:#111}
.story-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.9);animation:storyZoom 12s ease-out both}
.story-visual div{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,5,.65),rgba(7,7,5,.2) 44%,rgba(7,7,5,.58)),linear-gradient(0deg,rgba(0,0,0,.5),transparent 55%)}
@keyframes storyZoom{from{transform:scale(1.045)}to{transform:scale(1)}}
.story-shell{position:relative;z-index:2;min-height:calc(100% - var(--footer));display:flex;justify-content:flex-end;padding:calc(var(--header) + 4rem) clamp(1rem,5vw,5rem) 4rem}
.story-sheet{width:min(660px,58vw);margin:0;padding:clamp(2rem,4vw,4rem);background:rgba(245,240,229,.96);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.38);backdrop-filter:blur(14px)}
.story-kicker{margin:0;color:#9b7436;font-size:.72rem;font-weight:700;letter-spacing:.18em}
.story-sheet h2{margin:.7rem 0 1rem;font:500 clamp(2.7rem,5vw,5rem)/1.08 var(--serif);text-wrap:balance;word-break:keep-all}
.story-lead{margin:0;color:#5e574c;font:500 1.05rem/1.9 var(--serif);text-wrap:pretty}
.story-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:2rem 0;border-top:1px solid #c8baa4;border-bottom:1px solid #c8baa4}
.story-facts>div{min-width:0;padding:1rem;border-right:1px solid #d7cab6}.story-facts>div:last-child{border-right:0}
.story-facts dt{color:#8b7350;font-size:.66rem;letter-spacing:.12em}.story-facts dd{margin:.35rem 0 0;font:500 .88rem/1.5 var(--serif);overflow-wrap:anywhere}
.story-chapters{display:grid}.story-chapters section{display:grid;grid-template-columns:2rem 1fr;gap:1rem;padding:1.2rem 0;border-bottom:1px solid #d8cdbb}.story-chapters section>span{color:#b18c4f;font-size:.7rem}.story-chapters h3{margin:0 0 .4rem;font:500 1.2rem/1.45 var(--serif)}.story-chapters p{margin:0;color:#665e53;font-size:.88rem;line-height:1.75;text-wrap:pretty}
.story-return{display:flex;align-items:center;gap:.65rem;margin-top:1.5rem;padding:.7rem 1rem;border:1px solid #8f806a;background:transparent;color:var(--ink)}

@media(max-height:760px) and (min-width:901px){.place-item,.culture-item,.plan-card{min-height:260px}.season-grid button{min-height:250px}.quiz-film{height:110px}}
@media(max-width:900px){.choice-photo{opacity:.9}.place-list,.culture-list,.plan-grid{display:grid;grid-auto-flow:column;grid-auto-columns:min(82vw,370px);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.55rem}.place-item,.culture-item,.plan-card{min-height:360px;scroll-snap-align:start}.scent-explore{overflow:hidden}.quiz-film{max-width:520px}}
@media(max-width:600px){.home-bg{object-position:31% center}.home-shade{background:linear-gradient(0deg,rgba(8,8,6,.96) 0%,rgba(8,8,6,.74) 62%,rgba(8,8,6,.34))}.scent-choice{min-height:100px}.choice-photo{object-position:65% center}.scent-choice::after{background:linear-gradient(90deg,rgba(8,8,6,.88),rgba(8,8,6,.36))}.scent-explore{padding:.85rem}.content-head{margin-bottom:.75rem}.content-head h3{font-size:1.4rem}.place-list,.culture-list,.plan-grid{grid-auto-columns:84vw}.place-item,.culture-item,.plan-card{min-height:330px}.quiz-film{height:120px}.quiz-options button{min-height:76px}.season-grid{display:grid;grid-auto-flow:column;grid-auto-columns:82vw;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.5rem}.season-grid button{min-height:360px;scroll-snap-align:start}.season-grid b{font-size:3rem}.guide-note{margin-top:.4rem}}
.story-view .back-button{position:fixed}
@media(max-width:900px){.story-visual{height:48svh}.story-visual div{background:linear-gradient(0deg,rgba(7,7,5,.72),rgba(7,7,5,.08))}.story-shell{display:block;min-height:100svh;padding:40svh 1rem 2rem}.story-sheet{width:100%;padding:2rem}.story-sheet h2{font-size:clamp(2.5rem,8vw,4rem)}}
@media(max-width:600px){.story-shell{padding:38svh 0 0}.story-sheet{padding:2rem 1rem 3rem}.story-sheet h2{font-size:2.5rem}.story-lead{font-size:1rem;line-height:1.8}.story-facts{grid-template-columns:1fr}.story-facts>div{padding:.8rem 0;border-right:0;border-bottom:1px solid #d7cab6}.story-facts>div:last-child{border-bottom:0}.story-chapters section{grid-template-columns:1.6rem 1fr;gap:.6rem}.story-chapters h3{font-size:1.08rem}.guide-source{white-space:normal}}
.place-list,.culture-list,.plan-grid,.season-grid{scrollbar-width:none;scrollbar-color:transparent transparent;-ms-overflow-style:none}
.place-list::-webkit-scrollbar,.culture-list::-webkit-scrollbar,.plan-grid::-webkit-scrollbar,.season-grid::-webkit-scrollbar{display:none;width:0;height:0;background:transparent}

/* Brighter photographic edition */
:root{--paper:#fffaf0}
.app-header{background:rgba(11,11,8,.34);backdrop-filter:blur(9px);text-shadow:0 1px 8px rgba(0,0,0,.55)}
.home-bg{filter:saturate(1.08) brightness(1.08)}
.home-shade{background:linear-gradient(90deg,rgba(10,9,7,.74) 0%,rgba(10,9,7,.48) 38%,rgba(10,9,7,.06) 76%),linear-gradient(0deg,rgba(8,8,6,.58),transparent 56%)}
.scent-choice::after{background:linear-gradient(90deg,rgba(8,8,6,.7) 0%,rgba(8,8,6,.34) 58%,rgba(8,8,6,.05))}
.choice-photo{filter:saturate(1.08) brightness(1.08)}
.scent-choice:hover .choice-photo,.scent-choice:focus-visible .choice-photo{filter:saturate(1.25) brightness(1.12)}
.scent-backdrop img{filter:saturate(1.08) brightness(1.1)}
.scent-backdrop div{background:linear-gradient(90deg,rgba(8,9,7,.78) 0%,rgba(8,9,7,.62) 36%,rgba(8,9,7,.12) 74%),linear-gradient(0deg,rgba(0,0,0,.44),transparent 58%)}
.scent-story{filter:drop-shadow(0 2px 12px rgba(0,0,0,.72))}.scent-description{color:#f4eee4}.scent-quote{color:white}
.scent-explore{background:rgba(255,250,240,.97)}
.scent-switcher button{opacity:.78;background:rgba(255,255,255,.07)}
.scent-switcher button[data-scent-mini="sakura"]{border-color:#d98b9c}.scent-switcher button[data-scent-mini="hinoki"]{border-color:#71a789}.scent-switcher button[data-scent-mini="yuzu"]{border-color:#e1c145}
.scent-switcher button.is-active{background:var(--accent);border-color:var(--accent);color:white;opacity:1}
.place-gradient{background:linear-gradient(0deg,rgba(10,10,8,.82) 0%,rgba(10,10,8,.28) 55%,rgba(10,10,8,0) 100%)}
.culture-gradient{background:linear-gradient(0deg,rgba(10,10,8,.84),rgba(10,10,8,.2) 68%,rgba(10,10,8,0))}
.story-visual img{filter:saturate(1.12) brightness(1.12)}
.story-visual div{background:linear-gradient(90deg,rgba(7,7,5,.35),rgba(7,7,5,.03) 48%,rgba(7,7,5,.28)),linear-gradient(0deg,rgba(0,0,0,.28),transparent 58%)}
.story-sheet{background:rgba(255,250,240,.97)}
.story-gallery{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:.45rem;height:145px;margin:1.5rem 0 0}
.story-gallery button{position:relative;overflow:hidden;padding:0;border:2px solid transparent;background:#ddd}
.story-gallery button::after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.08);transition:background .2s}
.story-gallery button:hover::after,.story-gallery button:focus-visible::after{background:transparent}
.story-gallery button.is-active{border-color:#c59643;box-shadow:0 0 0 2px rgba(197,150,67,.2)}
.story-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.story-gallery button:hover img{transform:scale(1.06)}
@media(max-width:600px){.home-bg{filter:saturate(1.06) brightness(1.12)}.home-shade{background:linear-gradient(0deg,rgba(8,8,6,.8) 0%,rgba(8,8,6,.48) 62%,rgba(8,8,6,.14))}.scent-choice::after{background:linear-gradient(90deg,rgba(8,8,6,.68),rgba(8,8,6,.18))}.scent-backdrop div{background:linear-gradient(0deg,rgba(7,7,5,.62),rgba(7,7,5,.12))}.story-visual div{background:linear-gradient(0deg,rgba(7,7,5,.35),rgba(7,7,5,.02))}.story-gallery{height:112px;margin-top:1.15rem}}
