:root{--ink:#111;--dk:#282828;--ye:#E5FF00;--bl:#133EFF;--re:#FF3C02;--gr:#02C157;--pk:#FF85CE;--sk:#6DCBFE;--mute:#8a8a8a;--line:#e3e3e3}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font:500 16px/1.95 "Noto Sans JP",system-ui,sans-serif;letter-spacing:.04em;-webkit-text-size-adjust:100%;overflow-x:hidden}
h1,h2,h3,.logo,.lab,.pill,.more,.gtb,.big2,.gn b,.ft-nav b,.mtf,.flt button{font-family:"Poppins","Zen Kaku Gothic New","Noto Sans JP",sans-serif}
img{max-width:100%;height:auto;display:block}a{color:inherit}
#bar{position:fixed;left:0;top:0;height:3px;width:0;background:var(--bl);z-index:60}
/* header */
.hd{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:18px clamp(16px,3vw,40px);mix-blend-mode:normal;pointer-events:none}
.hd>*{pointer-events:auto}
.logo{font:400 30px/1 "Bebas Neue",sans-serif;letter-spacing:.04em;text-decoration:none;color:var(--ink);position:relative;z-index:62}.logo span{color:var(--re)}
.burger{width:52px;height:52px;border-radius:50%;background:#000;display:grid;place-content:center;gap:6px;cursor:pointer;position:relative;z-index:62}
.burger i{display:block;width:20px;height:2px;background:#fff;transition:.3s}
#mn:checked~.burger i:first-child{transform:translateY(4px) rotate(45deg)}#mn:checked~.burger i:last-child{transform:translateY(-4px) rotate(-45deg)}
#mn:checked~.burger{background:var(--ye)}#mn:checked~.burger i{background:#000}
.gn{position:fixed;inset:0;background:var(--dk);z-index:61;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:0 clamp(24px,8vw,120px);opacity:0;visibility:hidden;transition:.35s}
#mn:checked~.gn{opacity:1;visibility:visible}#mn:checked~.logo{color:#fff}
.gn a{text-decoration:none;color:#fff;display:flex;align-items:baseline;gap:18px}.gn b{font-size:clamp(34px,7vw,72px);line-height:1.2;font-weight:700;letter-spacing:-.02em}.gn small{font-size:13px;color:var(--mute)}.gn a:hover b{color:var(--ye)}
/* hero */
.hero{min-height:100svh;padding:120px clamp(16px,3vw,40px) 40px;display:flex;flex-direction:column;justify-content:center;position:relative}
.hero h1{font-size:clamp(46px,10.5vw,170px);line-height:1;margin:0 0 22px;font-weight:700;letter-spacing:-.045em;text-align:center}
.sub{text-align:center;font-weight:700;font-size:clamp(14px,1.6vw,18px);margin:0 0 clamp(28px,5vw,60px)}
.blks{display:flex;gap:clamp(4px,.8vw,10px);max-width:1400px;margin:0 auto;width:100%}
.blk{flex:1;aspect-ratio:1/1.25;background:#000;border-radius:clamp(14px,2.4vw,36px);position:relative;overflow:hidden}
.blk i{position:absolute;width:46%;aspect-ratio:1;border-radius:50%}
.sd{text-align:center;color:var(--mute);font:500 13px "Poppins";margin:36px 0 0}
.sd:after{content:"";display:block;width:1px;height:36px;background:var(--mute);margin:8px auto 0;animation:ln 1.8s infinite}
@keyframes ln{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
/* sections */
.sec{padding:clamp(80px,12vw,160px) clamp(16px,3vw,40px)}.dk{background:var(--dk);color:#fff}.in1{max-width:1160px;margin:0 auto}.in2{max-width:820px;margin:0 auto}.ctr{text-align:center}
.lab{font-size:15px;font-weight:600;margin:0 0 36px;color:#fff}.lab.k{color:var(--ink)}
.big{font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;font-weight:900;font-size:clamp(24px,4.2vw,52px);line-height:1.5;margin:0 0 32px;letter-spacing:.02em}.big.s{font-size:clamp(22px,3.2vw,38px)}
.txt{max-width:640px;margin:0 auto 40px;color:#b9b9b9;text-align:left}
.more{display:inline-flex;align-items:center;gap:14px;text-decoration:none;font-weight:600;font-size:17px;color:#fff}.more.k{color:var(--ink)}
.more i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ye);color:#000;font-style:normal;font-size:20px;transition:.25s}.more:hover i{transform:translateX(6px)}
.hl{background:linear-gradient(transparent 62%,rgba(229,255,0,.55) 0);font-weight:700;color:inherit}.dk .hl{background:linear-gradient(transparent 62%,rgba(229,255,0,.32) 0)}
/* stat card */
.cs{padding-top:0}.card{max-width:980px;margin:0 auto;background:#fff;color:var(--ink);border-radius:32px;padding:clamp(28px,5vw,64px);text-align:center}
.big2{font-size:clamp(34px,6vw,76px);font-weight:600;margin:0 0 6px;letter-spacing:-.03em}.q{font-size:14px;font-weight:700;margin:0 0 30px}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 auto 34px;max-width:760px}.gal img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;box-shadow:0 14px 24px -12px rgba(0,0,0,.45)}.gal img:nth-child(2){transform:translateY(-14px) scale(1.06)}
.mtf{color:var(--mute);font-size:14px;margin:0}.rot{position:relative;height:1.5em;font:700 clamp(26px,4.4vw,48px)/1.5 "Zen Kaku Gothic New";margin:0}
.rot span{position:absolute;inset:0;opacity:0;animation:rt 8s infinite}.rot span:nth-child(2){animation-delay:2s}.rot span:nth-child(3){animation-delay:4s}.rot span:nth-child(4){animation-delay:6s}
.rot:before{content:"(";position:absolute;left:4%;color:var(--mute)}.rot:after{content:")";position:absolute;right:4%;color:var(--mute)}
@keyframes rt{0%{opacity:0;transform:translateY(14px)}5%,22%{opacity:1;transform:none}27%,100%{opacity:0;transform:translateY(-14px)}}
/* message */
.msg{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,6vw,80px);align-items:center}.msg-i img{border-radius:36px;background:#3a3a3a;aspect-ratio:1;object-fit:cover}.msg p{color:#cfcfcf}
/* flow */
.flow{overflow:hidden;padding-bottom:clamp(80px,10vw,140px)}.circles{display:flex;justify-content:center;padding:20px 0;overflow-x:auto;scrollbar-width:none}
.cr{flex:0 0 clamp(190px,24vw,300px);aspect-ratio:1;border:1px dashed rgba(255,255,255,.55);border-radius:50%;margin-left:clamp(-60px,-5vw,-30px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.cr:first-child{margin-left:0}.cr small{font:500 11px "Poppins";color:#aaa}.cr b{font:700 clamp(15px,1.8vw,20px) "Zen Kaku Gothic New"}
/* marquee */
.mq{background:var(--dk);color:#fff;overflow:hidden;padding:20px 0 60px;white-space:nowrap}.mqt{display:inline-flex;animation:mqa 26s linear infinite}
.mqt span{font:700 clamp(54px,11vw,170px)/1.1 "Poppins";letter-spacing:-.04em;padding-right:.5em}@keyframes mqa{to{transform:translateX(-33.333%)}}
/* next event */
.nx{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,5vw,64px);align-items:center;background:#333;border-radius:32px;padding:clamp(18px,3vw,36px)}
.nx-i img{border-radius:22px;width:100%;aspect-ratio:4/3;object-fit:cover}.nx h2{font:900 clamp(20px,2.6vw,30px)/1.5 "Zen Kaku Gothic New";margin:12px 0 18px}
dl{display:grid;grid-template-columns:auto 1fr;gap:8px 20px;margin:0 0 28px;font-size:15px}dt{color:var(--ye);font-weight:700}dd{margin:0;line-height:1.8;color:#e6e6e6}
.pill{display:inline-block;padding:1px 14px;border-radius:99px;background:#000;color:#fff;font-size:12px;font-weight:600;line-height:1.9;letter-spacing:.02em}.pill.y{background:var(--ye);color:#000}
/* news */
.flt{display:flex;gap:18px;margin:0 0 20px;flex-wrap:wrap}.flt button{all:unset;cursor:pointer;font:700 clamp(18px,2.4vw,26px) "Poppins";color:#c4c4c4;transition:.2s}.flt button.on,.flt button:hover{color:#000}.flt i{font-style:normal}
.nl a{display:grid;grid-template-columns:110px 96px 1fr 24px;gap:14px;align-items:center;padding:24px 4px;border-bottom:1px solid var(--line);text-decoration:none;transition:.25s}
.nl a:hover{padding-left:16px;background:#f7f7f7}.nl time{font:500 13px "Poppins"}.nt{font-weight:700;line-height:1.7}.nl em{font-style:normal;opacity:.4}.nl .pill{text-align:center;justify-self:start}
.nl a:last-child{border-bottom:1px solid var(--line)}.more.k{margin-top:36px}
/* contact */
.gt{text-align:left}.gt h2{font:900 clamp(26px,4.4vw,52px)/1.5 "Zen Kaku Gothic New";margin:0 0 14px}.gt p{color:#b9b9b9;margin:0 0 30px}
.gtb{display:inline-flex;align-items:center;gap:16px;background:var(--dk);border:1px solid #666;color:#fff;border-radius:99px;padding:12px 14px 12px 34px;font-size:clamp(22px,3.4vw,38px);font-weight:600;text-decoration:none;transition:.25s}
.gt .gtb,.gtc .gtb{background:#000}.gtb i{display:block;width:68px;height:44px;border-radius:99px;background:var(--ye);position:relative}.gtb i:after{content:"→";position:absolute;inset:0;display:grid;place-items:center;color:#000;font-style:normal;font-size:20px}
.gtb:hover{border-color:var(--ye)}.gtc{border-radius:32px;padding:clamp(28px,6vw,64px);text-align:center}.gtc h2{font:900 clamp(22px,3.6vw,38px)/1.5 "Zen Kaku Gothic New";margin:0 0 10px}.mail{font:600 clamp(18px,3.6vw,30px) "Poppins";margin:6px 0 28px}.mail a{color:var(--ye)}.note{font-size:13px;color:#aaa;margin:22px 0 0}
/* page header + article */
.ph{padding:clamp(130px,16vw,200px) clamp(16px,3vw,40px) 30px;max-width:1160px;margin:0 auto}.ph h1{font:900 clamp(30px,6vw,76px)/1.35 "Zen Kaku Gothic New";margin:0;letter-spacing:.01em}.ph .pt{font-size:clamp(24px,4.4vw,52px)}.meta{margin:0 0 14px;font:500 13px "Poppins"}
.wh2{padding-top:30px}.art{padding-top:30px}.article{font-size:16.5px;overflow-wrap:anywhere}.article h2{font:900 clamp(22px,3vw,30px)/1.5 "Zen Kaku Gothic New";margin:2em 0 .7em;padding-left:14px;border-left:6px solid var(--ye)}.article h3{font-size:20px;margin:1.8em 0 .5em}
.article img{border-radius:16px;margin:1.2em auto}.article figure{margin:1.5em 0}.article p{margin:1.1em 0}.article a{text-decoration-color:var(--bl)}.article ul,.article ol{padding-left:1.4em}
.article pre{white-space:pre-wrap;font:inherit;margin:1.4em 0;padding:22px 24px;background:#f5f5f2;border-radius:18px;line-height:1.95;overflow-wrap:anywhere}
.article iframe{width:100%;height:360px;border:0;border-radius:18px;margin:1em 0}.article table{border-collapse:collapse;width:100%}.article td,.article th{border:1px solid var(--line);padding:8px 12px}
.article .wp-block-columns{display:grid;gap:24px}.article .wp-block-column{min-width:0}
.article .vk_button_link,.article .wp-block-button__link{display:inline-block;background:#000;color:#fff!important;padding:12px 28px;border-radius:99px;text-decoration:none;font-weight:700}
.article .more{margin-top:40px}
/* footer */
.ft{background:#fff;overflow:hidden}.ft-top{padding:clamp(60px,9vw,110px) clamp(16px,3vw,40px) 40px;max-width:1160px;margin:0 auto}.ft-nav{display:grid;gap:14px}
.ft-nav a,.gn a{text-decoration:none}.ft-nav b{display:block;font-size:clamp(26px,4vw,40px);line-height:1.2;font-weight:700;letter-spacing:-.02em}.ft-nav small{color:var(--mute);font-size:12px}.ft-nav a:hover b{color:var(--bl)}
.tick{background:var(--dk);color:#fff;overflow:hidden;white-space:nowrap;padding:14px 0}.tk{display:inline-flex;animation:mqa 30s linear infinite}.tk span{font:700 clamp(20px,3vw,34px) "Poppins";padding-right:2em}
.wm{position:relative;padding:clamp(24px,5vw,60px) clamp(16px,3vw,40px);max-width:1400px;margin:0 auto}.wmt{font:400 clamp(110px,26vw,380px)/.82 "Bebas Neue",sans-serif;letter-spacing:.01em;color:#000;position:relative;z-index:1}
.dots{position:absolute;inset:0;z-index:2;pointer-events:none}.dot{position:absolute;width:clamp(24px,5vw,60px);aspect-ratio:1;border-radius:50%;animation:fl 6s ease-in-out infinite}@keyframes fl{50%{transform:translateY(-22px)}}
.ft-b{display:flex;gap:30px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;padding:10px clamp(16px,3vw,40px) 32px;max-width:1400px;margin:0 auto;font-size:13px;color:#555}.ft-b p{margin:0}.ft-logo{font:700 16px "Poppins";color:#000;margin-bottom:4px!important}.ft-b a{color:#000}
/* reveal */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .8s,transform .8s}.js .rv.in{opacity:1;transform:none}
@media(max-width:820px){.msg,.nx{grid-template-columns:1fr}.nl a{grid-template-columns:90px 1fr 20px;row-gap:4px}.nl .pill{grid-column:2;grid-row:1}.nl .nt{grid-column:1/-1;grid-row:2}.nl em{grid-column:3;grid-row:1}.gal{gap:8px}.circles{justify-content:flex-start;padding-left:16px}}
@media(max-width:540px){dl{grid-template-columns:1fr;gap:2px}dt{margin-top:8px}.gtb{font-size:20px;padding-left:22px}.hero h1{letter-spacing:-.035em}}
@media(prefers-reduced-motion:reduce){*{animation:none!important}.js .rv{opacity:1;transform:none}}
/* top v2 */
.hero2{position:relative;height:100svh;min-height:560px;color:#fff;overflow:hidden;background:#000}
.slides,.sl{position:absolute;inset:0}.sl{opacity:0;transition:opacity 1.4s}.sl.on{opacity:1}.sl img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 7s ease-out}.sl.on img{transform:scale(1)}
.sl:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.05) 40%,rgba(0,0,0,.6));z-index:1}
.tx{position:absolute;z-index:2;left:clamp(16px,5vw,80px);top:clamp(110px,22vh,220px);max-width:640px;text-shadow:0 2px 14px rgba(0,0,0,.55)}
.tx h2{font:900 clamp(22px,3.4vw,44px)/1.45 "Zen Kaku Gothic New";margin:0 0 12px}.tx p{margin:0;font-weight:700;font-size:clamp(13px,1.5vw,18px)}
.hv-t{position:absolute;z-index:3;left:clamp(16px,5vw,80px);right:16px;bottom:clamp(60px,11vh,110px)}
.kicker{font:600 14px "Poppins";letter-spacing:.3em;margin:0 0 6px;color:var(--ye)}
.jpw{font:900 clamp(48px,12.5vw,200px)/1.05 "Zen Kaku Gothic New","Noto Sans JP";margin:0;letter-spacing:-.01em;text-shadow:0 6px 30px rgba(0,0,0,.5)}
.tagl{margin:10px 0 0;font-weight:700;font-size:clamp(13px,1.6vw,19px)}
.sdots{position:absolute;z-index:3;right:clamp(16px,3vw,40px);bottom:clamp(60px,11vh,110px);display:flex;gap:10px}
.sd{all:unset;cursor:pointer;width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.45)}.sd.on{background:var(--ye)}
.scr{position:absolute;z-index:3;left:50%;bottom:14px;transform:translateX(-50%);margin:0;font:500 12px "Poppins";opacity:.85}
.hd .logo{transition:color .3s}
.intro{padding:clamp(70px,10vw,130px) clamp(16px,3vw,40px)}.intro .en{font:700 clamp(40px,8.5vw,128px)/1.02 "Poppins";letter-spacing:-.045em;text-align:center;margin:0 0 clamp(28px,4vw,56px)}
.prs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.pr{position:relative;display:block;color:#fff;background:#333;border-radius:28px;padding:34px 28px 38px}
.pr b{font:600 13px "Poppins";color:var(--ye)}.pr h3{font:900 clamp(22px,2.4vw,28px)/1.4 "Zen Kaku Gothic New";margin:6px 0 12px}.pr p{margin:0;color:#c9c9c9;font-size:14.5px;line-height:1.9}.pr i{position:absolute;right:22px;bottom:18px;width:40px;height:40px;border-radius:50%;background:var(--ye);color:#000;display:grid;place-items:center;font-style:normal}
.ab{padding-top:0}
.bn{position:relative;display:block;height:clamp(200px,28vw,340px);overflow:hidden;color:#fff;text-decoration:none;margin:0}.bn img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s}.bn:hover img{transform:scale(1.06)}
.bn:before{content:"";position:absolute;inset:0;background:rgba(40,60,30,.55);z-index:1}.bn span{position:absolute;z-index:2;left:clamp(16px,5vw,80px);top:50%;transform:translateY(-50%);font:900 clamp(26px,5vw,60px)/1.3 "Zen Kaku Gothic New"}.bn em{display:block;font:600 14px "Poppins";font-style:normal;letter-spacing:.2em;color:var(--ye);margin-bottom:4px}
.bn i{position:absolute;z-index:2;right:clamp(16px,5vw,80px);top:50%;transform:translateY(-50%);width:64px;height:64px;border-radius:50%;background:var(--ye);color:#000;display:grid;place-items:center;font-style:normal;font-size:26px}
.rg{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.rg .card{display:block;text-decoration:none;color:inherit}.rg .th{aspect-ratio:16/10;overflow:hidden;border-radius:18px;background:#eee}.rg .th img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.rg .card:hover img{transform:scale(1.05)}
.rg .cb{padding:12px 4px}.rg .cb h3{font:700 15px/1.7 "Zen Kaku Gothic New","Noto Sans JP";margin:8px 0 0}.rg .cb time{font:500 12px "Poppins";margin-left:8px;color:var(--mute)}.rg .tag{display:inline-block;background:#000;color:#fff;border-radius:99px;font:600 11px "Poppins";padding:0 12px}.rg .ph{display:grid;place-items:center;height:100%}
.hd .logo{mix-blend-mode:normal}
@media(max-width:820px){.prs,.rg{grid-template-columns:1fr}.tx{top:100px}.sdots{bottom:auto;top:84px;right:16px}}
.rg .card{max-width:none;margin:0;padding:0;background:none;border-radius:0;text-align:left;color:inherit}
.rg .card:hover{transform:none}
/* subdued marquee */
.mq{padding:18px 0;border-top:1px solid #3d3d3d;border-bottom:1px solid #3d3d3d}
.mqt{animation-duration:40s}
.mqt span{font:500 clamp(14px,1.6vw,20px)/1.6 "Poppins";letter-spacing:.14em;color:#8a8a8a;padding-right:3em}
/* marquee: a bit larger */
.mq{padding:26px 0}
.mqt span{font:600 clamp(24px,3.6vw,48px)/1.4 "Poppins";letter-spacing:.06em;color:#9a9a9a;padding-right:2.4em}
/* hero: about 2/3 size */
.hero2{height:67svh;min-height:420px}
.tx{top:clamp(84px,15vh,150px);max-width:480px}
.tx h2{font-size:clamp(18px,2.4vw,30px);margin-bottom:8px}.tx p{font-size:clamp(12px,1.1vw,14px)}
.hv-t{bottom:clamp(40px,7vh,70px)}
.kicker{font-size:12px}
.jpw{font-size:clamp(34px,8.4vw,132px)}
.tagl{font-size:clamp(12px,1.1vw,14px);margin-top:6px}
.sdots{bottom:clamp(40px,7vh,70px)}.sd{width:10px;height:10px}
@media(max-width:820px){.hero2{height:62svh}.tx{top:84px}}
/* calm footer */
.ft{background:#f3f2ee;color:#444;border-top:1px solid #e1dfd8}
.ft-top{max-width:1160px;padding:48px clamp(16px,3vw,40px) 24px}
.ft-nav{display:flex;flex-wrap:wrap;gap:8px 32px}
.ft-nav a{font:500 14px/1.8 "Noto Sans JP",sans-serif;color:#333;letter-spacing:.08em}
.ft-nav a:hover{color:#1f4d3a;text-decoration:underline}
.ft-b{max-width:1160px;border-top:1px solid #dcdad2;padding:24px clamp(16px,3vw,40px) 36px;align-items:flex-start;color:#666}
.ft-logo{font:700 16px "Zen Kaku Gothic New","Noto Sans JP",sans-serif;color:#222;letter-spacing:.08em}
.ft-b a{color:#444}.copy{font-size:12px;color:#888}
/* contact: calm, like current site */
.ctc{background:#f3f2ee;padding:clamp(60px,8vw,100px) clamp(16px,3vw,40px)}
.ctc h2{font:900 clamp(22px,3vw,30px)/1.5 "Zen Kaku Gothic New","Noto Sans JP",sans-serif;margin:0 0 10px;color:#222}.ctc p{margin:0 0 26px;color:#555}
.btn2{display:inline-block;background:#37532d;color:#fff;border:0;border-radius:4px;padding:14px 40px;font:700 15px "Noto Sans JP",sans-serif;letter-spacing:.1em;text-decoration:none;cursor:pointer;transition:.2s}.btn2:hover{background:#2a4023}
.sm{font-size:13.5px;color:#555}
.cf{margin-top:32px}.cf label{display:block;font-weight:700;font-size:15px;margin:0 0 22px}.cf em{color:#c0392b;font-style:normal}
.cf input,.cf textarea{display:block;width:100%;margin-top:8px;padding:12px 14px;border:1px solid rgba(0,0,0,.25);border-radius:3px;background:#fff;font:400 16px "Noto Sans JP",sans-serif;color:#333}
.cf input:focus,.cf textarea:focus{outline:2px solid #37532d33;border-color:#37532d}.cf .btn2{margin:6px 0 20px}
/* mobile fixes */
.hd:has(#mn:checked) .logo{color:#fff}
.bn span{right:96px}
@media(max-width:820px){.bn span{font-size:clamp(20px,6vw,30px);right:88px}.bn i{width:52px;height:52px}}
/* admin gear + dynamic posts */
.ft{position:relative}.gear{position:absolute;right:14px;bottom:12px;color:#8a8a84;opacity:.35;line-height:0;padding:6px;transition:opacity .2s}.gear:hover{opacity:.9}
.evd{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;background:#f3f2ee;padding:18px 20px;border-radius:6px;margin:0 0 24px;font-size:15px}.evd dt{font-weight:700;color:#37532d}.evd dd{margin:0}
.pill.closed{background:#b3361f}
@media(max-width:540px){.evd{grid-template-columns:1fr}}
/* light theme (white base, soft pink) */
:root{--ink:#2b2523;--dk:#fbf4ef;--ye:#ee8c9a;--bl:#ee8c9a;--mute:#8d817c;--line:#eadfd9;--rose:#c85a6e}
.dk{background:var(--dk);color:var(--ink)}#about.dk,#about{background:#fff}
.lab{color:var(--ink)}.txt{color:#6b5f5a}
.more{color:var(--ink)}.more i{background:var(--ye);color:#fff}
.hl,.dk .hl{background:linear-gradient(transparent 62%,rgba(246,170,182,.5) 0)}
.msg-i img{background:#f1e6e0}.msg p{color:#4a3f3b}
.pr{background:#fff;color:var(--ink);border:1px solid #f0e3dc;box-shadow:0 10px 28px -16px rgba(120,70,60,.35)}
.pr b{color:var(--rose)}.pr p{color:#5b4f4a}
.nx{background:#fff;border:1px solid #f0e3dc;box-shadow:0 10px 28px -16px rgba(120,70,60,.35)}
dt{color:var(--rose)}dd{color:#443a36}
.pill{background:#5a4a45;color:#fff}.pill.y{background:#f6b7c0;color:#5a2a33}.pill.closed{background:#b3361f;color:#fff}
.mq{background:#fff;border-color:var(--line)}.mqt span{color:#dcc3bb}
.tick{background:#fbf4ef;color:#c9aaa0}
.burger{background:#4a3a36}#mn:checked~.burger{background:var(--ye)}#mn:checked~.burger i{background:#fff}
.gn{background:#fbf4ef}.gn a{color:var(--ink)}.gn a:hover b{color:var(--rose)}.gn small{color:var(--mute)}
#mn:checked~.logo,.hd:has(#mn:checked) .logo{color:var(--ink)}
.bn:before{background:rgba(70,40,40,.42)}.bn em{color:#fff}.bn i{background:var(--ye);color:#fff}
.kicker{color:#fff}.sd.on{background:#fff}
.btn2{background:var(--rose)}.btn2:hover{background:#b44a5e}
.cf input:focus,.cf textarea:focus{outline-color:#c85a6e33;border-color:var(--rose)}
.ft{background:#fbf4ef;border-top-color:var(--line)}.ft-b{border-top-color:var(--line)}.ft-nav a:hover{color:var(--rose)}
.ctc{background:#fbf4ef}.evd{background:#fbf4ef}.evd dt{color:var(--rose)}
.rg .th{background:#f4ebe6}.rg .tag{background:#5a4a45}
.article pre{background:#fbf4ef}.article .vk_button_link,.article .wp-block-button__link{background:var(--rose)}
.tagl .wo{display:inline-block;background:#fff;color:var(--rose);border-radius:99px;padding:0 14px;margin-right:10px;font-weight:700;text-shadow:none;line-height:1.9}
/* portrait: do not crop the head */
.msg-i img{aspect-ratio:563/750;object-fit:contain;object-position:center top;width:100%;max-width:440px;margin:0 auto;background:#fff}
/* mobile hero: show the whole photo, put the copy below it */
@media(max-width:820px){
.hero2{--ih:calc(100vw*.488);height:auto;min-height:0;background:#fff;color:var(--ink);overflow:hidden;padding-top:72px}
.slides{position:relative;inset:auto;height:calc(var(--ih) + 124px)}
.sl img{height:var(--ih);width:100%;object-fit:cover;transform:none!important;transition:none}
.sl:before{bottom:auto;height:var(--ih);background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,0) 45%,rgba(0,0,0,.55))}
.tx{top:calc(var(--ih) + 16px);left:16px;right:16px;max-width:none;color:var(--ink);text-shadow:none}
.tx h2{font-size:19px;margin:0 0 6px}.tx p{font-size:13px;font-weight:500;color:#5b4f4a;line-height:1.8}
.hv-t{top:calc(72px + var(--ih) - 74px);bottom:auto;left:16px;right:16px}
.jpw{font-size:clamp(30px,9.4vw,44px)}.kicker{font-size:10px;margin-bottom:2px}
.sdots{top:calc(72px + var(--ih) - 24px);bottom:auto;right:16px}
.scr{display:none}
}
.sd:after{content:none!important}
@media(max-width:820px){.hv-t{color:#fff}.jpw{text-shadow:0 2px 12px rgba(0,0,0,.6)}.kicker{color:#fff}}
/* desktop: move slide copy away from faces (bottom-right, above the dots) */
@media(min-width:821px){
.tx{top:auto;left:auto;right:clamp(16px,3vw,40px);bottom:calc(clamp(40px,7vh,70px) + 34px);max-width:min(400px,30vw);text-align:right}
.tx h2{font-size:clamp(16px,1.7vw,24px);margin-bottom:6px}.tx p{font-size:clamp(11px,.95vw,13px);line-height:1.8}
}
