:root{--bg: #0f0c08;--bg-soft: #161209;--line: #3a2f1f;--line-soft: #261f14;--amber: #d4a24e;--amber-bright: #e9c37c;--amber-deep: #8f6a2e;--text: #e9e0cd;--text-soft: #bfb198;--muted: #8a7d64;--serif: "Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--sans: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;--roman: "EB Garamond", Georgia, serif}*{margin:0;padding:0;box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:2.05;font-weight:400;-webkit-font-smoothing:antialiased}body{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(1400px 700px at 85% -20%,rgba(212,162,78,.05),transparent 55%),radial-gradient(900px 500px at -10% 110%,rgba(212,162,78,.03),transparent 60%),var(--bg);position:relative}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:2147483647;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}main{flex:1;width:100%;max-width:1040px;margin:0 auto;padding:3.2rem 1.6rem 6rem}h1,h2,h3,h4{font-family:var(--serif);font-weight:600;letter-spacing:.05em;line-height:1.65;color:var(--text)}a{color:var(--amber-bright);text-decoration:none;transition:color .25s ease}a:hover{color:var(--amber)}img{max-width:100%;display:block}::selection{background:#d4a24e40}.site-header{background:#0f0c08e6;backdrop-filter:blur(10px);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line-soft)}.site-header:after{content:"";display:block;height:3px;border-top:1px solid var(--line);margin:0 auto;max-width:1040px;padding:0 1.6rem}.site-header-inner{max-width:1040px;margin:0 auto;padding:1.1rem 1.6rem .9rem;display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}.site-logo{font-family:var(--roman);font-size:1.35rem;letter-spacing:.22em;color:var(--text);text-transform:uppercase}.site-logo .logo-accent{color:var(--amber);font-style:italic;text-transform:none;letter-spacing:.1em}.site-nav{display:flex;gap:1.6rem;flex-wrap:wrap}.site-nav a{font-size:.8rem;letter-spacing:.14em;color:var(--text-soft);padding-bottom:.2em;border-bottom:1px solid transparent;transition:color .25s ease,border-color .25s ease}.site-nav a:hover,.site-nav a[aria-current=true]{color:var(--amber-bright);border-bottom-color:var(--amber-deep)}.site-footer{border-top:1px solid var(--line);padding:3rem 1.6rem 3.5rem;margin-top:5rem;text-align:center}.site-footer-inner{max-width:1040px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1.4rem}.footer-nav{display:flex;gap:1.6rem;flex-wrap:wrap;justify-content:center}.footer-nav a{font-size:.78rem;letter-spacing:.1em;color:var(--muted)}.footer-note{font-size:.74rem;color:var(--muted);line-height:2.1;max-width:40em}.kicker{display:inline-block;font-family:var(--roman);font-style:italic;font-size:.9rem;letter-spacing:.3em;color:var(--amber);margin-bottom:1rem}.page-title{font-size:2rem;margin-bottom:.8rem}.page-lead{color:var(--text-soft);font-size:.92rem;margin-bottom:3rem;max-width:42em}.breadcrumbs{font-size:.74rem;color:var(--muted);margin-bottom:2.4rem;letter-spacing:.06em}.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--amber)}.breadcrumbs .sep{margin:0 .6em;color:var(--line)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));column-gap:3.2rem;row-gap:0;align-items:start}.card{display:block;padding:1.7rem 0 1.9rem;border-top:1px solid var(--line);background:none}.card .card-category{display:block;font-family:var(--roman);font-style:italic;font-size:.78rem;letter-spacing:.24em;color:var(--amber-deep);margin-bottom:.7rem}.card h3{font-size:1.08rem;color:var(--text);margin-bottom:.6rem;transition:color .25s ease}.card:hover h3{color:var(--amber-bright)}.card p{font-size:.82rem;color:var(--text-soft);line-height:1.95}.card .card-meta{margin-top:.8rem;font-size:.73rem;color:var(--muted);letter-spacing:.05em}.article{max-width:700px}.article-header{margin-bottom:3rem}.article-title{font-size:1.75rem;margin-bottom:1.2rem}.article-summary{color:var(--text-soft);font-size:.94rem;padding-left:1.2em;border-left:1px solid var(--amber-deep)}.article-meta{margin-top:1.6rem;padding-top:1.1rem;border-top:1px solid var(--line-soft);font-size:.74rem;color:var(--muted);letter-spacing:.08em;display:flex;gap:1.6em;flex-wrap:wrap}.draft-tag{color:var(--amber)}.article-body p{margin-bottom:1.8em;color:var(--text)}.article-body h2{font-size:1.3rem;margin:3em 0 1.2em}.h2-no{display:block;font-family:var(--roman);font-style:italic;font-size:.85rem;letter-spacing:.3em;color:var(--amber);margin-bottom:.5em}.h2-no:after{content:"";display:inline-block;width:2.6em;height:1px;background:var(--amber-deep);vertical-align:middle;margin-left:1em}.article-figure{margin:2.4rem 0 2.8rem;background:var(--bg-soft);border:1px solid var(--line-soft);padding:1.6rem 1.4rem 1.2rem}.article-figure img{width:100%;height:auto}.article-figure figcaption{margin-top:1rem;padding-top:.8rem;border-top:1px solid var(--line-soft);font-size:.76rem;color:var(--muted);line-height:1.9}.point{margin:2.6rem 0;padding:1.7rem 1.9rem;background:linear-gradient(160deg,#d4a24e12,#d4a24e04);border-top:1px solid var(--amber-deep)}.point-label{display:block;font-family:var(--roman);font-style:italic;font-size:.82rem;letter-spacing:.32em;color:var(--amber);margin-bottom:.7rem}.point-heading{font-family:var(--serif);font-size:1.05rem;color:var(--text);margin-bottom:.7rem}.point-text{font-size:.88rem;color:var(--text-soft);line-height:2}.faq{margin-top:3.6rem}.faq-title{font-size:1.2rem;margin-bottom:1.4rem}.faq-item{border-top:1px solid var(--line-soft)}.faq-item:last-child{border-bottom:1px solid var(--line-soft)}.faq-item summary{cursor:pointer;list-style:none;padding:1.05em 2em 1.05em .2em;font-size:.92rem;color:var(--text);position:relative;transition:color .25s ease}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:before{content:"Q.";font-family:var(--roman);font-style:italic;color:var(--amber);margin-right:.8em}.faq-item summary:after{content:"+";position:absolute;right:.4em;top:50%;transform:translateY(-50%);color:var(--amber-deep);font-family:var(--roman);font-size:1.1rem;transition:transform .25s ease}.faq-item[open] summary:after{content:"−"}.faq-item summary:hover{color:var(--amber-bright)}.faq-item p{padding:.2em .2em 1.3em 2.2em;font-size:.86rem;color:var(--text-soft)}.spec-table{width:100%;border-collapse:collapse;margin:1.6rem 0 2.2rem;font-size:.9rem;border-top:1px solid var(--line)}.spec-table th,.spec-table td{text-align:left;padding:.85em .9em .85em .2em;border-bottom:1px solid var(--line-soft);vertical-align:top}.spec-table th{width:9.5em;color:var(--muted);font-weight:400;white-space:nowrap;font-size:.78rem;letter-spacing:.1em}.note-table th{width:5.5em;font-family:var(--serif);font-size:.86rem;color:var(--amber)}.note-disclaimer{font-size:.74rem;color:var(--muted);margin-top:-.8em}.serving-list{list-style:none;margin-bottom:1.8em}.serving-list li{padding:.7em .2em .7em 1.6em;border-top:1px solid var(--line-soft);font-size:.9rem;color:var(--text);position:relative}.serving-list li:last-child{border-bottom:1px solid var(--line-soft)}.serving-list li:before{content:"";position:absolute;left:.2em;top:1.35em;width:.55em;height:1px;background:var(--amber)}.tasting-placeholder{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:2.2rem 1rem;text-align:center;margin:2rem 0}.tasting-placeholder .tp-label{font-family:var(--serif);font-size:1.02rem;color:var(--text-soft);letter-spacing:.22em;margin-bottom:.5rem}.tasting-placeholder .tp-note{font-size:.76rem;color:var(--muted)}.sources{margin-top:3.4rem;padding-top:1.4rem;border-top:1px solid var(--line-soft)}.sources h2{font-family:var(--roman);font-style:italic;font-size:.85rem;letter-spacing:.28em;color:var(--muted);font-weight:500;margin:0 0 .8em}.sources ul{list-style:none}.sources li{font-size:.78rem;color:var(--muted);margin-bottom:.4em}.disputed-note{font-size:.8rem;color:var(--amber);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:.9em .2em;margin-bottom:2rem}.related{margin-top:3.4rem}.related h2{font-size:1.1rem;margin-bottom:1rem}.related ul{list-style:none}.related li a{display:flex;align-items:baseline;gap:1em;font-size:.9rem;color:var(--text-soft);padding:.7em .2em;border-top:1px solid var(--line-soft)}.related li:last-child a{border-bottom:1px solid var(--line-soft)}.related li a:hover{color:var(--amber-bright)}.related .rel-cat{font-family:var(--roman);font-style:italic;font-size:.72rem;letter-spacing:.14em;color:var(--amber-deep);white-space:nowrap}.cta{margin-top:4.5rem;padding:2.6rem 1rem 2.8rem;border-top:3px double var(--line);border-bottom:1px solid var(--line);text-align:center}.cta .cta-label{font-family:var(--roman);font-style:italic;font-size:.8rem;letter-spacing:.42em;color:var(--amber);margin-bottom:1.3rem}.cta .cta-lead{font-family:var(--serif);font-size:1.22rem;line-height:2;color:var(--text);margin-bottom:1rem}.cta .cta-body{font-size:.84rem;color:var(--text-soft);margin:0 auto 1.8rem;max-width:34em}.cta .cta-link{display:inline-block;font-size:.84rem;letter-spacing:.2em;color:var(--amber-bright);border:1px solid var(--amber-deep);padding:.75em 2.4em;transition:background .3s ease,color .3s ease}.cta .cta-link:hover{background:var(--amber);color:#171006}.hero{display:flex;align-items:stretch;justify-content:space-between;gap:3rem;padding:4.5rem 0 5rem}.hero-main{max-width:620px}.hero-kicker{font-family:var(--roman);font-style:italic;font-size:.88rem;letter-spacing:.34em;color:var(--amber);margin-bottom:2rem}.hero-kicker:after{content:"";display:inline-block;width:4em;height:1px;background:var(--amber-deep);vertical-align:middle;margin-left:1.4em}.hero-title{font-size:clamp(1.9rem,4.6vw,2.9rem);line-height:1.75;margin-bottom:1.8rem}.hero-lead{color:var(--text-soft);font-size:.92rem;max-width:36em}.hero-vertical{writing-mode:vertical-rl;font-family:var(--serif);font-size:1.02rem;letter-spacing:.42em;color:var(--amber);border-left:1px solid var(--line);padding-left:1.6rem;margin-top:.6rem;align-self:stretch;white-space:nowrap}.section-title{font-size:1.28rem;margin:4rem 0 .4rem;display:flex;align-items:baseline;gap:1.2em}.section-title .en{font-family:var(--roman);font-style:italic;font-size:.82rem;letter-spacing:.3em;color:var(--amber);font-weight:500}.future-note{margin-top:3.5rem;padding-top:1.2rem;border-top:1px solid var(--line-soft);font-size:.76rem;color:var(--muted);line-height:2.1}.glossary-list{list-style:none;max-width:760px}.glossary-list li{border-top:1px solid var(--line-soft)}.glossary-list li:last-child{border-bottom:1px solid var(--line-soft)}.glossary-list a{display:block;padding:1.25em .3em}.glossary-list .term{font-family:var(--serif);font-size:1.04rem;color:var(--text);transition:color .25s ease}.glossary-list a:hover .term{color:var(--amber-bright)}.glossary-list .reading{font-size:.74rem;color:var(--muted);margin-left:1.2em;letter-spacing:.1em}.glossary-list .def{font-size:.82rem;color:var(--text-soft);margin-top:.4em}@media(max-width:720px){main{padding:2.2rem 1.25rem 4.5rem}.hero{padding:3rem 0 3.4rem}.hero-vertical{display:none}.card-grid{column-gap:2rem}.cta{padding:2.2rem .4rem 2.4rem}}.course-progress{display:flex;align-items:center;gap:1rem;margin:.6rem 0 1.1rem}.course-progress-label{font-family:var(--roman);font-size:.95rem;letter-spacing:.08em;color:var(--amber);white-space:nowrap}.course-progress-total{color:var(--muted)}.course-progress-track{flex:1;height:1px;background:var(--line);position:relative;display:block}.course-progress-bar{position:absolute;left:0;top:-.5px;height:2px;background:var(--amber);display:block}.homework{margin:3rem 0;padding:1.6rem 1.8rem;border-top:1px solid var(--amber-deep);border-bottom:1px solid var(--amber-deep);background:linear-gradient(180deg,rgba(212,162,78,.06),transparent)}.homework-label{display:block;font-family:var(--roman);font-style:italic;font-size:.85rem;letter-spacing:.22em;color:var(--amber);margin-bottom:.6rem}.homework-label:before{content:"◇ "}.homework-text{font-family:var(--serif);font-size:1.02rem;line-height:2;color:var(--text)}.lesson-nav{margin:3.2rem 0 1rem}.lesson-teaser{font-family:var(--serif);color:var(--text-soft);font-size:.95rem;padding-left:1.1rem;border-left:1px solid var(--amber-deep);margin-bottom:1.4rem}.lesson-nav-row{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lesson-nav-link{display:flex;flex-direction:column;gap:.25rem;padding:1.2rem 1rem;text-decoration:none;transition:background .25s}.lesson-nav-link.next{text-align:right;border-left:1px solid var(--line)}a.lesson-nav-link:hover{background:#d4a24e0d}.lesson-nav-label{font-family:var(--roman);font-size:.78rem;letter-spacing:.14em;color:var(--muted)}.lesson-nav-title{font-family:var(--serif);font-size:.95rem;color:var(--amber-bright);line-height:1.7}.lesson-nav-link.coming .lesson-nav-title{color:var(--muted)}.course-hero{padding:3.2rem 0 2.4rem;border-bottom:1px solid var(--line);margin-bottom:2.5rem}.course-hero-title{font-family:var(--serif);font-weight:500;font-size:clamp(2rem,5vw,3rem);letter-spacing:.06em;margin:.4rem 0 1rem}.course-hero-sub{font-family:var(--roman);font-size:.45em;color:var(--amber);margin-left:1em;letter-spacing:.14em}.course-hero-lead{max-width:42em;color:var(--text-soft);margin-bottom:1.8rem}.course-start{display:inline-block;font-family:var(--serif);font-size:1.02rem;letter-spacing:.1em;color:var(--bg);background:var(--amber);padding:.85rem 2.2rem;text-decoration:none;transition:background .25s}.course-start:hover{background:var(--amber-bright)}.course-note{margin-top:1rem;font-size:.85rem;color:var(--muted)}.syllabus-chapter{margin-bottom:2.6rem}.syllabus-lead{color:var(--text-soft);font-size:.92rem;margin:-.6rem 0 1.2rem}.syllabus-list{list-style:none;border-top:1px solid var(--line-soft)}.syllabus-item{display:flex;gap:1.4rem;align-items:baseline;padding:1.05rem .4rem;border-bottom:1px solid var(--line-soft);text-decoration:none;transition:background .25s}.syllabus-item:hover{background:#d4a24e0a}.syllabus-no{font-family:var(--roman);font-style:italic;font-size:1.15rem;color:var(--amber);min-width:2.2rem}.syllabus-body{display:flex;flex-direction:column;gap:.2rem}.syllabus-title{font-family:var(--serif);font-size:1.02rem;color:var(--text);line-height:1.8}.syllabus-summary{font-size:.85rem;color:var(--muted);line-height:1.8}.syllabus-coming{color:var(--muted);font-size:.9rem;padding:.8rem .4rem;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.hero-course-cta{margin-top:2rem;display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}.hero-course-note{font-size:.85rem;color:var(--muted)}@media(max-width:640px){.lesson-nav-row{grid-template-columns:1fr}.lesson-nav-link.next{border-left:none;border-top:1px solid var(--line)}}
