:root{--ink:#4b3740;--deep:#b96579;--red:#98445a;--cream:#fff5f6;--yellow:#d5b15f;--paper:#fffbfa;--line:rgba(91,54,68,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Noto Sans JP",sans-serif;line-height:1.9}img{display:block;width:100%}a{color:inherit}.hero{background:var(--deep);color:#fff;min-height:100vh;overflow:hidden}.nav{height:82px;max-width:1240px;margin:auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.18)}.brand{text-decoration:none;font-family:"Shippori Mincho",serif;font-weight:700;letter-spacing:.14em}.brand span{font-family:"Noto Sans JP";font-size:.72rem;font-weight:400;letter-spacing:.08em;margin-left:10px}.nav-cta,.primary-button,.outline-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:700;letter-spacing:.04em;transition:.2s}.nav-cta{font-size:.85rem;padding:10px 18px;border:1px solid rgba(255,255,255,.55);border-radius:99px}.hero-grid{max-width:1240px;margin:auto;padding:72px 32px 90px;display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.eyebrow{margin:0 0 20px;font-size:.78rem;letter-spacing:.2em;font-weight:700;color:var(--yellow)}.eyebrow.dark{color:var(--red)}.date-chip{display:inline-block;margin:0 0 22px;padding:6px 13px;border:1px solid rgba(255,255,255,.35);font-size:.75rem;letter-spacing:.16em}.hero h1,.section h2,.sakadane-copy h2,.final-cta h2,.schedule-section h2{font-family:"Shippori Mincho",serif}.hero h1{font-size:clamp(2.25rem,4.2vw,4.4rem);line-height:1.36;letter-spacing:.02em;margin:0}.hero h1 span{display:block;font-family:"Noto Sans JP";font-size:clamp(1rem,1.8vw,1.45rem);color:var(--yellow);margin-bottom:13px;letter-spacing:.08em}.lead{font-size:1.1rem;margin:24px 0 14px}.bread-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.bread-tags span{padding:5px 12px;background:rgba(255,255,255,.11);border-radius:99px;font-size:.8rem}.primary-button{background:var(--red);color:#fff;padding:16px 27px;border-radius:3px;box-shadow:7px 7px 0 var(--yellow)}.primary-button span{margin-left:34px}.hero-photo{position:relative;margin:0}.hero-photo img{aspect-ratio:4/5;object-fit:cover;border-radius:220px 220px 6px 6px}.hero-photo figcaption{position:absolute;right:-24px;bottom:34px;background:var(--paper);color:var(--ink);padding:16px 22px;line-height:1.5;box-shadow:0 18px 35px rgba(0,0,0,.16);font-size:.85rem}.hero-photo figcaption strong{font-family:"Shippori Mincho";font-size:1rem;color:var(--red)}.section{max-width:1120px;margin:auto;padding:120px 32px}.intro{display:grid;grid-template-columns:80px 1fr 1.15fr;gap:46px}.section-number{font-family:"Shippori Mincho";font-size:3rem;color:var(--red);border-top:2px solid var(--red);padding-top:10px}.section h2,.sakadane-copy h2,.schedule-section h2,.final-cta h2{margin:0;font-size:clamp(2rem,3.5vw,3.55rem);line-height:1.45}.intro-body{padding-top:42px}.intro-body p:first-child{margin-top:0}.menu-section{padding-top:40px}.section-heading{margin-bottom:48px}.menu-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.menu-layout>img{aspect-ratio:1/1;object-fit:cover}.bread-list{list-style:none;padding:0;margin:0}.bread-list li{display:grid;grid-template-columns:52px 1fr;gap:16px;padding:24px 0;border-top:1px solid var(--line)}.bread-list li:last-child{border-bottom:1px solid var(--line)}.bread-list li>span{font-family:"Shippori Mincho";color:var(--red);font-weight:700}.bread-list strong{font-family:"Shippori Mincho";font-size:1.35rem}.bread-list p{font-size:.9rem;margin:4px 0 0}.sakadane-section{display:grid;grid-template-columns:1.08fr .92fr;background:var(--deep);color:#fff}.sakadane-photo img{height:100%;min-height:630px;object-fit:cover}.sakadane-copy{padding:90px clamp(32px,7vw,110px);align-self:center}.sakadane-copy p:not(.eyebrow){max-width:500px}.centered{text-align:center}.feature-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.feature-grid article{padding:26px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-grid span{color:var(--red);font-family:"Shippori Mincho"}.feature-grid h3{font-family:"Shippori Mincho";font-size:1.1rem;line-height:1.5}.feature-grid p{font-size:.82rem;line-height:1.7}.reassurance{text-align:center;font-family:"Shippori Mincho";font-size:1.15rem;margin-top:48px}.schedule-section{background:var(--red);color:#fff;padding:110px max(32px,calc((100% - 1120px)/2))}.light p:not(.eyebrow){opacity:.88}.schedule-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.schedule-grid article{background:#fff;color:var(--ink);padding:24px;text-align:center}.schedule-grid .day{margin:0;color:var(--red);font-weight:700;letter-spacing:.15em;font-size:.8rem}.schedule-grid strong{display:block;font-family:"Shippori Mincho";font-size:2.3rem}.schedule-grid span{font-size:.82rem;color:#677}.timezone{text-align:center;font-size:.85rem;margin:24px 0 0}.details{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.price-panel{background:#f4e8ce;padding:48px}.price-panel h2{font-size:2.2rem}.price{font-family:"Shippori Mincho";font-size:5rem;line-height:1;margin:30px 0}.price span{font-size:2rem}.info-panel>div{padding:22px 0;border-bottom:1px solid var(--line)}.info-panel h3{font-family:"Shippori Mincho";color:var(--red);font-size:1.25rem}.info-panel ul{padding-left:1.3em}.note{font-size:.8rem;margin-top:26px;color:#667}.final-cta{background:var(--deep);color:#fff;text-align:center;padding:115px 32px}.outline-button{margin-top:28px;padding:14px 28px;border:1px solid #fff}.outline-button:hover,.nav-cta:hover{background:#fff;color:var(--deep)}footer{background:#163836;color:#fff;padding:30px 32px;display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.06em}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:48px}.hero-photo{max-width:600px;margin:auto}.intro{grid-template-columns:60px 1fr}.intro-body{grid-column:2}.menu-layout,.sakadane-section,.details{grid-template-columns:1fr}.sakadane-photo img{min-height:440px}.feature-grid{grid-template-columns:repeat(2,1fr)}.schedule-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.nav{height:68px;padding:0 18px}.brand span{display:none}.nav-cta{font-size:.76rem}.hero-grid{padding:48px 20px 70px}.hero h1{font-size:2.15rem}.hero-photo img{aspect-ratio:1/1.18}.hero-photo figcaption{right:-4px;bottom:18px}.section{padding:82px 20px}.intro{display:block}.section-number{font-size:2rem;width:55px;margin-bottom:30px}.intro-body{padding-top:22px}.menu-section{padding-top:10px}.menu-layout{gap:28px}.sakadane-copy{padding:72px 24px}.sakadane-photo img{min-height:320px}.feature-grid{grid-template-columns:1fr 1fr}.feature-grid article{padding:20px 14px}.feature-grid article:last-child{grid-column:1/-1}.schedule-section{padding:82px 20px}.schedule-grid{grid-template-columns:1fr 1fr;gap:8px}.schedule-grid article{padding:18px 10px}.schedule-grid strong{font-size:1.8rem}.details{gap:35px}.price-panel{padding:34px}.price{font-size:4.2rem}footer{display:block;text-align:center}.hero-photo figcaption{font-size:.75rem}}

/* Soft pink and gold edition */
.hero{background:linear-gradient(135deg,#dfa9b5 0%,#c9798c 100%)}
.hero .eyebrow,.hero h1 span{color:#663443}
.primary-button{background:#fff;color:var(--red);box-shadow:7px 7px 0 var(--yellow)}
.bread-tags span{background:rgba(255,255,255,.18)}
.hero-photo img,.menu-layout>img{filter:brightness(1.13) contrast(.97) saturate(1.03)}
.sakadane-section{background:linear-gradient(135deg,#dfa9b5 0%,#c9798c 100%)}
.schedule-section{background:linear-gradient(135deg,#dfa9b5 0%,#c9798c 100%)}
.price-panel{background:#f9e7ea;border-top:4px solid var(--yellow)}
.final-cta{background:linear-gradient(135deg,#c9798c,#b96579)}
footer{background:#9f586b}
.rice-message{max-width:1050px;margin:0 auto 70px;padding:70px 40px;text-align:center;background:#f9e7ea;border-top:1px solid #ddbd72;border-bottom:1px solid #ddbd72;position:relative}
.rice-message:before{content:"RICE";position:absolute;top:-39px;left:50%;transform:translateX(-50%);font-family:"Shippori Mincho";font-size:4.8rem;letter-spacing:.18em;color:rgba(213,177,95,.16);pointer-events:none}
.rice-message h2{font-family:"Shippori Mincho",serif;margin:0 0 22px;font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.45}
.rice-message p:last-child{margin:0;font-size:1.05rem}
.profile{display:grid;grid-template-columns:.72fr 1.28fr;gap:72px;align-items:center}
.profile-photo{padding:18px;background:#f9e7ea;border:1px solid rgba(213,177,95,.65);box-shadow:22px 22px 0 rgba(213,177,95,.16)}
.profile-photo img{aspect-ratio:1/1;object-fit:cover}
.profile-copy h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:22px}
.profile-copy h3{font-family:"Shippori Mincho",serif;font-size:2rem;margin:4px 0 24px;color:var(--red)}
.profile-role{font-size:.86rem;letter-spacing:.08em;color:#8a6c77;margin-bottom:0}
.schedule-grid .two-sessions{padding-bottom:18px}.session-list{display:grid;gap:8px;margin-top:7px}.schedule-grid .session-list span{display:block;padding:8px 6px;background:#fff5f6;border:1px solid rgba(152,68,90,.15);line-height:1.45}.schedule-grid .session-list b{display:block;color:var(--red);font-size:.9rem;margin-bottom:2px}
.schedule-apply{text-align:center;margin-top:42px}.schedule-apply p{margin-bottom:17px}.form-button{display:inline-flex;align-items:center;justify-content:center;gap:35px;min-width:310px;padding:17px 27px;background:#fff;color:var(--red);border:2px solid var(--yellow);text-decoration:none;font-weight:700;letter-spacing:.06em;box-shadow:7px 7px 0 var(--yellow);transition:.2s}.form-button:hover{transform:translateY(-2px);box-shadow:9px 9px 0 var(--yellow)}
.schedule-grid article{display:flex;flex-direction:column}.date-form-button{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:20px;padding:11px 8px;background:linear-gradient(135deg,#f4d27e,#d7ad4d);color:#603041!important;border:1px solid #fff1bd;border-radius:3px;text-decoration:none;font-size:.88rem!important;font-weight:700;line-height:1.4;box-shadow:0 4px 0 #a46735;transition:transform .2s,box-shadow .2s}.date-form-button>span{color:#603041!important;font-size:1rem}.date-form-button:hover{transform:translateY(-2px);box-shadow:0 6px 0 #a46735}.date-form-button.sold-out{background:#f2e7e9;color:#8b5966!important;border-color:#d9bdc4;box-shadow:none;cursor:default}.date-form-button.sold-out:hover{transform:none;box-shadow:none}.session-list>div{display:grid;gap:7px}.two-sessions .date-form-button{margin-top:0}.fee-note{font-family:"Shippori Mincho",serif;font-size:1.45rem;font-weight:700;color:var(--red);line-height:1.6}
.schedule-time{display:block;margin-top:2px;color:var(--red)!important;font-size:1rem!important;font-weight:700}.schedule-place{display:block;margin-top:12px;min-height:78px;line-height:1.55!important}.schedule-place b{display:block;margin-bottom:3px;color:var(--ink);font-size:.9rem}.availability{display:inline-flex;align-self:center;justify-content:center;margin-top:13px;padding:4px 14px;border-radius:99px;font-size:.78rem!important;font-weight:700;letter-spacing:.08em}.availability.limited{background:#98445a;color:#fff!important}.availability+.date-form-button{margin-top:10px}.details.single{display:block;max-width:760px}.details.single .info-panel>div:first-child{padding-top:0}
.application-button{position:relative;display:inline-grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:34px;align-items:center;min-width:360px;padding:15px 22px 16px 28px;background:linear-gradient(135deg,#f4d27e,#d7ad4d);color:#603041;border:2px solid #fff1bd;border-radius:4px;text-decoration:none;box-shadow:0 7px 0 #7e354a,0 16px 28px rgba(78,31,47,.28);transition:transform .2s,box-shadow .2s}.application-button small{grid-column:1;font-size:.72rem;font-weight:600;letter-spacing:.1em}.application-button strong{grid-column:1;font-size:1.25rem;line-height:1.45;letter-spacing:.06em}.application-button>span{grid-column:2;grid-row:1/3;width:38px;height:38px;display:grid;place-items:center;background:#fff;color:var(--red);border-radius:50%;font-size:1.25rem}.application-button:hover{transform:translateY(-3px);box-shadow:0 10px 0 #7e354a,0 20px 34px rgba(78,31,47,.34)}.final-application{margin-top:30px}.schedule-apply .application-button{box-shadow:0 7px 0 #733044,0 16px 28px rgba(78,31,47,.3)}
@media(max-width:900px){.profile{grid-template-columns:1fr;gap:42px}.profile-photo{max-width:480px;margin:auto}}
@media(max-width:600px){.rice-message{margin:0 20px 60px;padding:58px 22px}.rice-message:before{font-size:3.2rem;top:-26px}.profile-photo{max-width:330px}.profile{gap:34px}.form-button{min-width:0;width:100%;gap:20px}.application-button{min-width:0;width:100%;padding:14px 16px 15px 20px}.application-button strong{font-size:1.12rem}}
