:root{--ink:#19251d;--cream:#fffaf1;--yellow:#ffd945;--blue:#78b9e7;--pink:#f087a0;--green:#3f7757;--line:rgba(25,37,29,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Noto Sans JP",sans-serif;line-height:1.75;overflow-x:hidden}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px;z-index:99}.header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;line-height:1.1}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--yellow);font-size:22px}.brand b{display:block;font-family:"Kiwi Maru",serif;font-size:20px}.brand small{font-size:10px;letter-spacing:.16em}.header nav{display:flex;align-items:center;gap:28px}.header nav a{font-size:13px;color:var(--ink);font-weight:700;text-decoration:none}.nav-cta{border:1.5px solid var(--ink);padding:11px 18px;border-radius:999px}.menu{display:none}.hero{min-height:calc(100vh - 92px);position:relative;display:grid;grid-template-columns:1fr .85fr;gap:5vw;padding:8vh 7vw 14vh;align-items:center}.hero-copy{z-index:2}.eyebrow,.section-label{font-size:11px;font-weight:900;letter-spacing:.17em}.hero h1,.section h2,.final-cta h2{font-family:"Kiwi Maru",serif;font-weight:500;line-height:1.18;letter-spacing:-.04em}.hero h1{font-size:clamp(48px,6.5vw,98px);margin:20px 0 28px}.hero h1 em,.lesson h2 em{font-style:normal;position:relative;z-index:1}.hero h1 em:after{content:"";position:absolute;z-index:-1;left:-.05em;right:-.05em;bottom:.08em;height:.23em;background:var(--yellow);transform:rotate(-2deg)}.lead{font-family:"Kiwi Maru",serif;font-size:clamp(17px,1.5vw,23px);line-height:2}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;text-decoration:none;border-radius:999px;padding:16px 24px;font-weight:800;transition:.25s}.button:hover{transform:translateY(-3px)}.primary{background:var(--ink);color:#fff;box-shadow:6px 6px 0 var(--yellow)}.text-link{color:var(--ink);font-weight:700}.hero-art{position:relative;display:grid;place-items:center}.paper{width:min(450px,38vw);aspect-ratio:.82;background:#fff;box-shadow:0 18px 50px rgba(60,40,0,.12);transform:rotate(3deg);position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.08)}.sun{position:absolute;width:52%;aspect-ratio:1;border-radius:50%;background:var(--yellow);left:24%;top:12%}.blue-shape{position:absolute;background:var(--blue);width:72%;height:34%;left:-11%;bottom:7%;border-radius:50% 40% 20% 50%;transform:rotate(21deg)}.pink-shape{position:absolute;background:var(--pink);width:54%;height:31%;right:-9%;bottom:18%;border-radius:25% 55% 45% 35%;transform:rotate(-18deg)}.star{position:absolute;right:9%;top:8%;font-size:68px}.crayon{position:absolute;left:12%;top:33%;font-family:"Kiwi Maru",serif;font-size:clamp(22px,3vw,43px);line-height:1.5;transform:rotate(-4deg)}.tape{position:absolute;width:100px;height:32px;background:rgba(226,214,184,.7)}.tape-a{top:-5px;left:12%;transform:rotate(-17deg)}.tape-b{bottom:0;right:5%;transform:rotate(-11deg)}.quick-facts{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;background:#fff;border-block:1px solid var(--line)}.quick-facts span{padding:19px 5vw;border-right:1px solid var(--line);font-size:13px}.quick-facts span:last-child{border:0}.quick-facts b{font-size:20px;margin-right:5px}.scribble{position:absolute;border:3px solid var(--pink);border-radius:50%;opacity:.45}.s1{width:120px;height:75px;left:-30px;top:14%;transform:rotate(25deg)}.s2{width:75px;height:130px;right:-20px;bottom:20%;border-color:var(--blue)}.marquee{overflow:hidden;background:var(--yellow);border-block:1px solid var(--ink);padding:12px 0;font-weight:900;letter-spacing:.12em;white-space:nowrap}.marquee div{width:max-content;animation:marquee 22s linear infinite}@keyframes marquee{to{transform:translateX(-33.333%)}}.section{padding:120px 7vw}.section-label{padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:60px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.section h2{font-size:clamp(44px,5vw,75px);margin:0}.body-copy{font-size:18px;max-width:600px}.body-copy p:first-child{font-weight:900;font-size:24px}.process{display:grid;grid-template-columns:repeat(4,1fr);margin-top:90px;border:1px solid var(--ink)}.process article{padding:28px;min-height:300px;border-right:1px solid var(--ink);display:flex;flex-direction:column}.process article:last-child{border:0}.process article>b{font-size:11px}.process-icon{font-family:"Kiwi Maru";font-size:56px;margin:auto 0 15px}.process h3{font-size:22px;margin:0}.process p{font-size:13px;margin-bottom:0}.process .accent{background:var(--yellow)}.lesson{background:var(--ink);color:#fff}.lesson .section-label{border-color:rgba(255,255,255,.25)}.lesson-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:8vw}.lesson-head p{font-size:17px}.lesson h2 em{color:var(--yellow)}.lesson-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:70px}.card{color:var(--ink);padding:24px;min-height:470px;display:flex;flex-direction:column;border-radius:2px}.card>span{font-size:10px;letter-spacing:.16em;font-weight:900}.card .art{margin:auto;align-self:center;font-size:100px;filter:drop-shadow(7px 8px 0 rgba(25,37,29,.15));transition:.3s}.card:hover .art{transform:rotate(8deg) scale(1.07)}.card h3{font-family:"Kiwi Maru";font-size:25px;margin:0}.card p{font-size:13px}.yellow{background:var(--yellow);transform:rotate(-1.5deg)}.blue{background:var(--blue);transform:translateY(18px) rotate(1deg)}.pink{background:var(--pink);transform:rotate(-.5deg)}.lesson-cta{margin-top:85px;padding-top:40px;border-top:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:space-between}.lesson-cta p{margin:0}.dark{background:var(--yellow);color:var(--ink)}.info h2{margin-bottom:60px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.info dl{margin:0}.info dl div{display:grid;grid-template-columns:140px 1fr;padding:22px 0;border-bottom:1px solid var(--line)}dt{font-size:12px;font-weight:900;letter-spacing:.12em}dd{margin:0;font-family:"Kiwi Maru";font-size:20px}.locations{display:grid;grid-template-columns:1fr 1fr;gap:15px}.locations article{border:1px solid var(--ink);padding:28px;min-height:190px}.locations article:first-child{background:var(--blue)}.locations article:nth-child(2){background:var(--pink)}.locations span{font-size:10px;font-weight:900;letter-spacing:.15em}.locations h3{font-family:"Kiwi Maru";font-size:28px;margin:38px 0 0}.locations p{margin:0;font-size:14px}.locations .note{grid-column:1/-1;font-size:12px}.final-cta{position:relative;overflow:hidden;background:var(--green);color:#fff;text-align:center;padding:130px 20px}.final-cta>p{font-size:11px;letter-spacing:.2em;font-weight:900}.final-cta h2{font-size:clamp(44px,6vw,82px);margin:25px 0 50px}.final-buttons{display:flex;justify-content:center;gap:14px;position:relative;z-index:2}.white{background:#fff;color:var(--ink)}.outline{border:1px solid #fff;color:#fff}.paint{position:absolute;border-radius:50%;filter:blur(1px);opacity:.9}.paint-1{width:260px;height:310px;background:var(--pink);left:-90px;top:-80px;transform:rotate(30deg)}.paint-2{width:340px;height:240px;background:var(--blue);right:-100px;bottom:-70px}footer{padding:55px 7vw;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:30px;border-top:1px solid var(--line)}footer p{font-size:12px}footer>div{display:flex;gap:15px}footer>div a{color:var(--ink);font-size:12px;font-weight:900}footer>small{grid-column:1/-1;font-size:9px;letter-spacing:.1em}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@media(max-width:800px){.header{height:74px}.header nav{position:absolute;top:74px;left:0;right:0;background:var(--cream);padding:28px 6vw;display:none;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--ink)}.header nav.open{display:flex}.menu{display:block;background:none;border:0;width:42px;height:42px}.menu span{display:block;width:26px;height:2px;background:var(--ink);margin:7px}.hero{min-height:auto;grid-template-columns:1fr;padding:70px 6vw 120px}.hero h1{font-size:50px}.hero-art{margin-top:30px}.paper{width:84vw;max-width:430px}.quick-facts{overflow-x:auto;justify-content:flex-start}.quick-facts span{min-width:max-content}.about-grid,.lesson-head,.info-grid{grid-template-columns:1fr}.section{padding:85px 6vw}.process{grid-template-columns:1fr 1fr}.process article:nth-child(2){border-right:0}.process article{border-bottom:1px solid var(--ink);min-height:250px}.process article:nth-child(3),.process article:nth-child(4){border-bottom:0}.lesson-cards{grid-template-columns:1fr}.card{min-height:390px;transform:none}.lesson-cta{align-items:flex-start;flex-direction:column;gap:25px}.locations{grid-template-columns:1fr}.locations .note{grid-column:auto}.final-buttons{flex-direction:column;align-items:center}footer{grid-template-columns:1fr}.footer-brand,footer p,footer>div,footer>small{grid-column:1}.brand b{font-size:17px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}.marquee div{animation:none}}
.dog-cutout{position:absolute;width:min(270px,24vw);right:-6%;bottom:-10%;z-index:4;filter:drop-shadow(0 18px 16px rgba(25,37,29,.2));transform:rotate(5deg)}
.booking{background:#f5eddd}.booking-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.booking-intro>p{font-size:17px}.mini-label{font-size:12px;font-weight:900;color:var(--green);letter-spacing:.08em}.booking-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;margin-top:55px}.open-lessons{display:flex;flex-direction:column;gap:12px}.lesson-option{width:100%;border:1px solid var(--ink);background:#fff;padding:14px;display:grid;grid-template-columns:74px 1fr auto;gap:18px;align-items:center;text-align:left;color:var(--ink);cursor:pointer;transition:.2s}.lesson-option:hover,.lesson-option.active{transform:translateX(7px);box-shadow:-7px 7px 0 var(--ink)}.lesson-option>span:nth-child(2){display:flex;flex-direction:column}.lesson-option b{font-family:"Kiwi Maru";font-size:18px}.lesson-option small{font-size:11px}.date-badge{display:grid;place-items:center;background:var(--yellow);height:68px;font-weight:900;line-height:1.15}.blue-badge{background:var(--blue)}.pink-badge{background:var(--pink)}.booking-panel{background:var(--ink);color:#fff;padding:34px;position:relative}.saved-pill{display:inline-block;background:var(--yellow);color:var(--ink);border-radius:999px;padding:5px 12px;font-size:11px;font-weight:900}.booking-panel h3{font-family:"Kiwi Maru";font-size:27px;margin:22px 0 0}.booking-panel>p{margin:2px 0 24px;font-size:13px}.booking-panel form{display:grid;gap:14px}.booking-panel label{display:grid;gap:5px;font-size:11px;font-weight:800}.booking-panel input{width:100%;border:1px solid rgba(255,255,255,.3);background:#fff;color:var(--ink);padding:13px 14px;border-radius:0;font:inherit}.booking-panel .remember{display:flex;align-items:center;gap:9px}.remember input{width:auto}.reserve-button{width:100%;border:0;background:var(--yellow);color:var(--ink);margin-top:8px;cursor:pointer}.booking-success{text-align:center;padding:42px 0}.booking-success>span{display:grid;place-items:center;width:60px;height:60px;margin:auto;border-radius:50%;background:var(--yellow);color:var(--ink);font-size:30px}.booking-success button{border:0;background:none;color:#fff;text-decoration:underline;cursor:pointer}.admin-demo{margin-top:35px;border:1px solid var(--ink);background:#fff}.admin-demo summary{padding:18px 22px;cursor:pointer;font-weight:800}.admin-demo summary span{background:var(--pink);padding:4px 8px;margin-right:9px}.admin-phone{max-width:520px;margin:0 auto 24px;border:1px solid var(--line);border-radius:22px;padding:22px;background:#fbfbfb}.admin-phone header{display:flex;justify-content:space-between;margin-bottom:12px}.admin-phone header span{font-size:12px}.admin-phone article{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:10px;padding:14px 0;border-top:1px solid var(--line)}.admin-phone article div{display:flex;flex-direction:column}.admin-phone article small{font-size:10px}.admin-phone em{font-style:normal;color:var(--green);font-size:10px;font-weight:900}.dot{width:9px;height:9px;border-radius:50%}.yellow-dot{background:var(--yellow)}.blue-dot{background:var(--blue)}.pink-dot{background:var(--pink)}
.booking-panel select{width:100%;border:1px solid rgba(255,255,255,.3);background:#fff;color:var(--ink);padding:13px 14px;border-radius:0;font:inherit}.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important}
@media(max-width:800px){.dog-cutout{width:48vw;right:-3%;bottom:-8%}.booking-intro,.booking-layout{grid-template-columns:1fr}.lesson-option{grid-template-columns:62px 1fr}.lesson-option>strong{grid-column:2}.booking-panel{padding:24px}.admin-phone{margin-inline:12px}.brand b{max-width:230px}}

/* 愛星わらべ palette: orange sunlight, yellow energy, and airy blue */
:root{--ink:#173749;--cream:#fff8ec;--yellow:#ffd84d;--blue:#7dcce4;--pink:#f47f3f;--green:#2b7580;--line:rgba(23,55,73,.18)}
.brand-mark{background:var(--pink);color:#fff}
.booking{background:#eaf8fb}
.lesson-option:hover,.lesson-option.active{box-shadow:-7px 7px 0 var(--pink)}
.final-cta{background:var(--pink)}
.final-cta .paint-1{background:var(--yellow)}
.final-cta .paint-2{background:var(--blue)}
.mini-label{color:var(--pink)}
.admin-demo summary span{background:var(--yellow)}
.admin-links{max-width:760px;margin:0 auto 24px;padding:24px;border:1px solid rgba(23,55,71,.16);border-radius:18px;background:rgba(255,255,255,.78)}.admin-links>p{margin:0 0 18px;font-size:13px;line-height:1.8}.admin-links>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-sheet-link{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid var(--ink);border-radius:999px;background:#fff;color:var(--ink);font-size:13px;font-weight:900;text-decoration:none}.admin-sheet-link.primary{background:var(--yellow)}.admin-sheet-link:hover{transform:translateY(-2px);box-shadow:0 5px 0 var(--ink)}.admin-links>small{display:block;margin-top:16px;color:rgba(23,55,71,.65);font-size:10px;line-height:1.7}

/* 2026 editorial collage refresh */
body{background:#fffaf0;color:#153747}.header{background:rgba(255,250,240,.9);border-bottom:1px solid rgba(21,55,71,.12);backdrop-filter:blur(12px)}
.brand-mark{border-radius:45% 55% 60% 40%;transform:rotate(-7deg)}
.hero{min-height:760px;padding-top:155px;background:radial-gradient(circle at 5% 15%,rgba(255,216,77,.48) 0 9%,transparent 9.3%),radial-gradient(circle at 94% 12%,rgba(125,204,228,.34) 0 12%,transparent 12.3%),#fffaf0;overflow:hidden}
.hero:after{content:"";position:absolute;width:440px;height:180px;background:#f47f3f;opacity:.14;border-radius:48% 52% 43% 57%/61% 38% 62% 39%;left:34%;bottom:7%;transform:rotate(-12deg)}
.hero-copy{position:relative;z-index:4;width:52%}.hero h1{font-size:clamp(52px,5.7vw,84px);line-height:1.08;letter-spacing:-.055em;white-space:nowrap}.hero h1 em{color:#f47f3f;text-decoration:none;position:relative}.hero h1 em:after{content:"";position:absolute;left:-3%;right:-6%;height:12px;bottom:2px;background:#ffd84d;z-index:-1;border-radius:70%;transform:rotate(-2deg)}
.eyebrow{color:#2b7580;font-weight:900;letter-spacing:.16em}.lead{font-size:clamp(15px,1.5vw,19px);line-height:2}.primary{background:#f47f3f;color:#fff;border-color:#f47f3f;box-shadow:8px 8px 0 #ffd84d}.primary:hover{box-shadow:3px 3px 0 #ffd84d;transform:translate(5px,5px)}
.hero-art{position:absolute;right:5vw;top:142px;width:min(43vw,570px);height:535px;z-index:3}.hero-photo-frame{position:absolute;inset:0 9% 5% 10%;overflow:hidden;border-radius:47% 53% 42% 58%/38% 47% 53% 62%;background:#7dcce4;box-shadow:18px 18px 0 #7dcce4;transform:rotate(2deg)}.hero-photo-frame img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.04) rotate(-2deg)}
.hero-sticker{position:absolute;right:-2%;top:4%;width:128px;height:128px;display:grid;place-items:center;text-align:center;background:#ffd84d;border:2px solid #173749;border-radius:50%;font-family:"Kiwi Maru";font-weight:700;line-height:1.45;transform:rotate(10deg);z-index:6}.hero-spark{position:absolute;color:#f47f3f;font-size:48px;z-index:5}.spark-a{left:0;top:4%;transform:rotate(-14deg)}.spark-b{right:3%;bottom:7%;color:#173749;font-size:34px}.dog-cutout{width:min(230px,19vw);right:auto;left:-11%;bottom:-1%;filter:drop-shadow(0 18px 10px rgba(23,55,71,.18));transform:rotate(-8deg)}
.quick-facts{z-index:5;border:1px solid #173749;background:#fff;box-shadow:8px 8px 0 #173749}.quick-facts span+span{border-left:1px dashed rgba(23,55,71,.35)}
.marquee{background:#ffd84d;color:#173749;border-block:2px solid #173749;transform:rotate(-1deg);position:relative;z-index:8}
.section{padding-top:115px;padding-bottom:115px}.section-label{color:#f47f3f;font-weight:900;letter-spacing:.16em}
.studio-story{display:grid;grid-template-columns:.78fr 1.22fr;gap:8vw;align-items:center;background:#eaf8fb;position:relative;overflow:hidden}.studio-story:before{content:"";position:absolute;width:290px;height:290px;border:42px solid rgba(255,216,77,.55);border-radius:47% 53% 42% 58%;left:-120px;bottom:-110px}.story-copy{position:relative;z-index:2}.story-kicker{font-family:"Kiwi Maru";font-weight:700;color:#2b7580}.story-copy h2{font-size:clamp(40px,5.2vw,78px);line-height:1.12;letter-spacing:-.045em;margin:22px 0 34px}.story-copy h2 em{font-style:normal;color:#f47f3f}.story-copy>p:last-child{line-height:2;max-width:520px}.story-gallery{min-height:660px;position:relative}.story-photo{position:absolute;margin:0;background:#fff;padding:10px 10px 40px;box-shadow:0 16px 35px rgba(23,55,71,.15)}.story-photo img{width:100%;height:100%;object-fit:cover;display:block}.story-photo figcaption{position:absolute;bottom:10px;left:15px;font-family:"Kiwi Maru";font-size:13px;font-weight:700}.photo-main{width:53%;height:66%;left:4%;top:4%;transform:rotate(-5deg)}.photo-main img{object-position:56% 74%}.photo-sub{width:42%;height:43%;right:1%;top:1%;transform:rotate(6deg)}.photo-sub img{object-position:50% 72%}.photo-table{width:48%;height:42%;right:7%;bottom:2%;transform:rotate(-2deg)}.photo-table img{object-position:46% 76%}.gallery-doodle{position:absolute;left:7%;bottom:4%;width:145px;height:145px;border:3px solid #f47f3f;border-radius:48% 52% 56% 44%;display:grid;place-items:center;text-align:center;color:#f47f3f;font-family:"Kiwi Maru";font-weight:700;transform:rotate(9deg)}
.about{background:#fffaf0}.about-grid h2,.lesson-head h2,.booking-intro h2,.info h2{font-size:clamp(44px,6vw,84px);letter-spacing:-.05em}.process{gap:18px;border:0}.process article{border:1px solid #173749!important;border-radius:90px 90px 20px 20px;min-height:330px;padding:36px 25px 28px;box-shadow:8px 8px 0 rgba(23,55,71,.12)}.process article:nth-child(1){background:#fff}.process article:nth-child(2){background:#ffd84d;transform:translateY(34px)}.process article:nth-child(3){background:#7dcce4}.process article:nth-child(4){background:#f47f3f;color:#fff;transform:translateY(34px)}.process article>b{font-size:12px}.process-icon{font-size:42px;margin-top:42px}
.lesson{background:#fff}.lesson-head em{color:#f47f3f}.lesson-cards{gap:22px}.card{border:1px solid #173749;border-radius:26px;min-height:520px;padding:24px;overflow:hidden;box-shadow:none}.card:nth-child(2){transform:translateY(35px)}.card-visual{height:270px;margin:30px -4px 22px;display:grid;place-items:center;overflow:hidden;border-radius:48% 52% 42% 58%/52% 39% 61% 48%}.card-visual img{width:100%;height:100%;object-fit:cover}.sculpture-visual{overflow:visible}.sculpture-visual img{object-fit:contain;filter:drop-shadow(0 12px 8px rgba(23,55,71,.18));transform:rotate(-7deg)}.photo-visual img{object-position:50% 72%;transform:scale(1.18)}.card.pink .photo-visual img{object-position:center}.card h3{font-size:25px}.lesson-cta{margin-top:95px;border-radius:28px;background:#eaf8fb;border:1px solid #173749}
.booking{position:relative;overflow:hidden}.booking:before{content:"BOOK A CLASS";position:absolute;top:88px;right:-15px;font-weight:900;font-size:clamp(70px,13vw,190px);letter-spacing:-.08em;color:rgba(125,204,228,.18);white-space:nowrap}.booking-intro,.booking-layout,.admin-demo{position:relative}.lesson-option{border-radius:18px;padding:12px;background:rgba(255,255,255,.92)}.lesson-option:hover,.lesson-option.active{transform:translate(5px,-3px);box-shadow:-7px 7px 0 #f47f3f}.date-badge{border-radius:13px}.booking-panel{border-radius:30px;box-shadow:14px 14px 0 #ffd84d}.booking-panel input,.booking-panel select{border-radius:10px}.reserve-button{border-radius:999px}.admin-demo{border-radius:20px;overflow:hidden}
.info{background:#fffaf0}.locations article{border-radius:26px}.final-cta{background:#f47f3f;overflow:hidden}.final-cta h2{font-size:clamp(48px,7vw,98px);letter-spacing:-.06em}.final-cta .paint{border-radius:42% 58% 68% 32%/42% 38% 62% 58%}
@media(max-width:980px){.hero{min-height:1040px}.hero-copy{max-width:620px;width:100%}.hero h1{white-space:normal}.hero-art{top:540px;right:6vw;width:72vw;height:430px}.dog-cutout{width:190px}.studio-story{grid-template-columns:1fr}.story-gallery{min-height:620px}.process{grid-template-columns:repeat(2,1fr)}.process article:nth-child(2),.process article:nth-child(4){transform:none}}
@media(max-width:620px){.hero{padding-top:120px;min-height:940px}.hero h1{font-size:50px}.hero-art{top:495px;right:5vw;width:90vw;height:360px}.hero-photo-frame{inset:0 4% 5% 7%}.hero-sticker{width:105px;height:105px;font-size:13px;right:-1%}.dog-cutout{width:145px;left:-4%;bottom:-8%}.quick-facts{left:5%;right:5%;bottom:25px}.quick-facts span{padding:12px 8px;font-size:11px}.studio-story{padding-top:85px}.story-gallery{min-height:500px}.photo-main{width:62%;height:60%;left:0}.photo-sub{width:44%;height:38%}.photo-table{width:60%;height:37%;right:0}.gallery-doodle{width:105px;height:105px;font-size:12px}.process{grid-template-columns:1fr 1fr;gap:10px}.process article{min-height:260px;border-radius:60px 60px 16px 16px;padding:24px 16px}.process-icon{margin-top:25px}.card:nth-child(2){transform:none}.card{min-height:480px}.lesson-option{grid-template-columns:58px 1fr;gap:12px}.booking-panel{box-shadow:8px 8px 0 #ffd84d}.section{padding-top:85px;padding-bottom:85px}}

/* student work gallery */
.works-showcase{padding:110px max(5vw,40px) 90px;background:#ffd84d;position:relative;overflow:hidden}.works-showcase:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:#7dcce4;right:-180px;top:-170px;opacity:.72}.works-copy{max-width:670px;position:relative;z-index:2}.works-copy h2{font-size:clamp(44px,6vw,86px);line-height:1.08;letter-spacing:-.055em;margin:20px 0}.works-copy h2 em{font-style:normal;color:#f47f3f}.works-copy p{max-width:560px;line-height:2}.works-stage{height:610px;max-width:1250px;margin:10px auto 0;position:relative}.work{position:absolute;object-fit:contain;filter:drop-shadow(0 20px 13px rgba(23,55,71,.2));transition:transform .3s}.work:hover{transform:translateY(-12px) rotate(3deg)!important}.work-clay{width:28%;left:-2%;bottom:6%;transform:rotate(-8deg)}.work-bird{width:31%;left:17%;bottom:24%;transform:rotate(6deg)}.work-ghosts{width:43%;left:35%;bottom:0;z-index:2;transform:rotate(-2deg)}.work-parfaits{width:35%;right:-1%;bottom:26%;transform:rotate(7deg)}.work-jar{width:25%;right:5%;top:-9%;transform:rotate(-5deg)}.works-note{position:absolute;left:4%;top:7%;width:155px;height:155px;background:#fff;border:2px solid #173749;border-radius:50%;display:grid;place-items:center;text-align:center;font-family:"Kiwi Maru";font-weight:700;line-height:1.55;transform:rotate(-8deg)}.material-strip{display:grid;grid-template-columns:1fr 1.35fr;gap:20px;max-width:1180px;margin:10px auto 0}.material-strip figure{height:300px;margin:0;position:relative;overflow:hidden;border:2px solid #173749;border-radius:28px;background:#fff}.material-strip img{width:100%;height:100%;object-fit:cover}.material-strip figcaption{position:absolute;left:16px;bottom:14px;background:#fff;padding:8px 15px;border-radius:999px;font-family:"Kiwi Maru";font-weight:700;border:1px solid #173749}

/* grouped booking cards */
.open-lessons{gap:20px}.booking-lesson-card{display:grid;grid-template-columns:190px 1fr;background:#fff;border:1px solid #173749;border-radius:24px;overflow:hidden;box-shadow:7px 7px 0 rgba(23,55,71,.11)}.booking-lesson-card>img{width:100%;height:100%;min-height:280px;object-fit:cover}.booking-card-body{padding:22px}.booking-kind{font-size:10px;font-weight:900;letter-spacing:.16em;color:#f47f3f}.booking-card-body h3{font-family:"Kiwi Maru";font-size:23px;margin:7px 0 5px}.booking-card-body>p{font-size:12px;line-height:1.7;margin:0 0 17px}.venue-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.venue-options.single{grid-template-columns:1fr}.venue-options .lesson-option{display:grid;grid-template-columns:1fr auto!important;gap:2px 10px!important;padding:12px 14px!important;border-radius:14px!important;box-shadow:none!important;transform:none!important;background:#eef9fc}.venue-options .lesson-option:nth-child(2){background:#fff7d6}.venue-options .lesson-option b{font-size:14px;font-family:"Noto Sans JP"}.venue-options .lesson-option span{font-size:12px}.venue-options .lesson-option em{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;font-size:11px;font-weight:900;color:#f47f3f}.venue-options .lesson-option.active{background:#f47f3f;color:#fff;border-color:#f47f3f}.venue-options .lesson-option.active em{color:#fff}.booking-layout{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:start}.booking-panel{position:sticky;top:105px}
@media(max-width:980px){.works-stage{height:540px}.booking-layout{grid-template-columns:1fr}.booking-panel{position:relative;top:auto}.booking-lesson-card{grid-template-columns:220px 1fr}}
@media(max-width:620px){.works-showcase{padding:80px 5vw 65px}.works-stage{height:430px;margin-top:35px}.work-clay{width:37%;left:-9%}.work-bird{width:42%;left:11%;bottom:27%}.work-ghosts{width:58%;left:25%}.work-parfaits{width:45%;right:-8%;bottom:29%}.work-jar{width:35%;right:-6%;top:-2%}.works-note{width:105px;height:105px;font-size:11px;left:0;top:2%}.material-strip{grid-template-columns:1fr;gap:12px}.material-strip figure{height:220px}.booking-lesson-card{grid-template-columns:1fr}.booking-lesson-card>img{height:190px;min-height:0}.booking-card-body{padding:18px}.venue-options{grid-template-columns:1fr}.venue-options .lesson-option{grid-template-columns:1fr auto!important}.booking-card-body h3{font-size:21px}}

/* four-step photo story */
.process article{min-height:440px;overflow:hidden;display:flex;flex-direction:column}.process article>b{position:relative;z-index:2}.process figure{height:190px;margin:18px -25px 20px;overflow:hidden;background:#fff}.process figure img{width:100%;height:100%;object-fit:cover;display:block}.process article:nth-child(1) figure img{object-position:50% 55%}.process article:nth-child(2) figure img{object-position:46% 58%}.process article:nth-child(3) figure img{object-position:52% 62%}.process .process-finished{background:rgba(255,255,255,.28);overflow:visible}.process .process-finished img{object-fit:contain;filter:drop-shadow(0 12px 8px rgba(23,55,71,.2));transform:scale(1.08) rotate(-3deg)}.process article h3{margin-top:0}.process article p{margin-bottom:0}
@media(max-width:620px){.process article{min-height:350px;padding-inline:14px}.process figure{height:135px;margin:14px -14px 16px}.process article h3{font-size:18px}.process article p{font-size:11px;line-height:1.6}}

/* Kase-inspired full-bleed first view: photography first, quiet white type */
.hero{display:block;min-height:calc(100svh - 92px);height:820px;padding:0;background:#173749;isolation:isolate}.hero:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(10,30,40,.7) 0%,rgba(10,30,40,.35) 48%,rgba(10,30,40,.08) 78%),linear-gradient(0deg,rgba(10,30,40,.55) 0%,transparent 38%)}.hero:after{display:none}.hero-art{position:absolute;inset:0;width:auto;height:auto;z-index:1}.hero-photo-frame{position:absolute;inset:0;border-radius:0;background:#173749;box-shadow:none;transform:none}.hero-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 58%;transform:none;filter:saturate(.92) contrast(1.03)}
.hero-copy{position:absolute;z-index:4;left:4vw;top:6%;width:min(710px,58vw);padding:42px 48px 44px;color:#fff;background:rgba(244,127,63,.95);border-radius:42% 58% 52% 48%/10% 16% 12% 18%;box-shadow:0 24px 70px rgba(10,30,40,.18);text-shadow:none}.hero .eyebrow{color:#fff;opacity:.9}.hero h1{font-size:clamp(55px,6.5vw,98px);line-height:1.05;letter-spacing:-.06em;white-space:normal;margin:16px 0 22px}.hero h1 em{color:#fff}.hero h1 em:after{height:7px;background:#ffd84d;bottom:-3px;z-index:-1}.hero .lead{font-size:clamp(14px,1.25vw,18px);line-height:1.85;max-width:520px}.hero .primary{background:#fff;color:#f47f3f;border-color:#fff;box-shadow:none}.hero .primary:hover{box-shadow:none;transform:translateY(-3px)}.hero .text-link{color:#fff;border-bottom:1px solid rgba(255,255,255,.65)}
.hero-sticker{right:4%;top:10%;width:116px;height:116px;border-color:#fff;background:#ffd84d;color:#173749}.hero-spark{color:#fff}.spark-a{left:54%;top:15%}.spark-b{right:5%;bottom:17%;color:#fff}.hero .dog-cutout{left:auto;right:3%;bottom:6%;width:min(210px,18vw);z-index:5;filter:drop-shadow(0 18px 12px rgba(0,0,0,.3));transform:rotate(5deg)}
.hero .quick-facts{left:7vw;right:auto;bottom:30px;border:1px solid rgba(255,255,255,.65);background:rgba(255,255,255,.13);color:#fff;box-shadow:none;backdrop-filter:blur(10px);border-radius:999px;overflow:hidden}.hero .quick-facts span{padding:12px 25px;border-right:1px solid rgba(255,255,255,.35)}.hero .quick-facts span+span{border-left:0}.hero .quick-facts b{font-size:16px}
@media(max-width:980px){.hero{min-height:calc(100svh - 74px);height:780px}.hero-copy{top:6%;width:76vw}.hero-art{inset:0}.hero h1{font-size:clamp(50px,8vw,76px)}.hero .dog-cutout{width:170px;right:2%;bottom:8%}}
@media(max-width:620px){.hero{padding:0;min-height:calc(100svh - 74px);height:760px}.hero:before{background:linear-gradient(180deg,rgba(10,30,40,.18) 0%,rgba(10,30,40,.06) 45%,rgba(10,30,40,.62) 100%)}.hero-photo-frame{inset:0}.hero-photo-frame img{object-position:56% center}.hero-copy{left:4vw;right:4vw;top:4%;width:auto;padding:27px 24px 30px;border-radius:34% 66% 38% 62%/9% 12% 10% 14%}.hero h1{font-size:clamp(40px,12vw,54px);line-height:1.08;margin-top:10px}.hero .lead{font-size:12px;line-height:1.7;max-width:330px}.hero-actions{margin-top:20px;gap:11px;align-items:flex-start;flex-direction:column}.hero .primary{padding:11px 17px;font-size:12px}.hero .text-link{font-size:12px}.hero-sticker{width:86px;height:86px;right:4%;top:54%;font-size:10px}.hero .dog-cutout{width:125px;right:-2%;bottom:10%}.hero .quick-facts{left:5vw;right:5vw;bottom:22px;border-radius:18px;justify-content:center}.hero .quick-facts span{padding:9px 8px;min-width:0;flex:1;text-align:center;font-size:9px}.hero .quick-facts b{font-size:13px;display:block;margin:0}.spark-a{display:none}.spark-b{right:4%;bottom:29%}}

/* refined first view: one photograph, two title bars, clean white information area */
.hero{height:880px;min-height:0;background:#fff;display:block}.hero:before,.hero:after{display:none}.hero-art{position:absolute;inset:0 0 250px;z-index:1}.hero-photo-frame{inset:0}.hero-photo-frame img{object-position:center 58%;filter:saturate(.95) contrast(1.03)}
.hero-title{position:absolute;z-index:5;left:6vw;top:7%;font-family:"M PLUS Rounded 1c","Kiwi Maru",sans-serif}.hero-title h1{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-family:inherit;font-size:clamp(48px,6.1vw,92px);font-weight:800;line-height:1;letter-spacing:-.055em}.hero-title h1 span{display:inline-block;background:#f47f3f;color:#fff;padding:.14em .32em .2em;box-shadow:8px 8px 0 rgba(255,216,77,.9)}.hero-title h1 span:nth-child(2){margin-left:1.05em}.hero-title h1 em{font-style:normal;color:#fff}.hero-title h1 em:after{display:none}
.hero-info{position:absolute;z-index:5;left:0;right:0;bottom:0;height:250px;background:#fff;color:#173749;padding:35px 7vw;display:grid;grid-template-columns:minmax(380px,1fr) auto;grid-template-rows:auto 1fr;column-gap:7vw;align-items:start}.hero-info .eyebrow{grid-column:1;color:#f47f3f;margin:0 0 10px}.hero-info .lead{grid-column:1;grid-row:2;margin:0;font-size:15px;line-height:1.75}.hero-info .hero-actions{grid-column:2;grid-row:1/3;margin:7px 0 0;align-self:center}.hero-info .primary{background:#f47f3f;color:#fff}.hero-info .text-link{color:#173749;border-bottom:1px solid #173749}
.hero .quick-facts{z-index:7;left:auto;right:7vw;bottom:30px;background:#fff8ec;color:#173749;border:1px solid #173749;box-shadow:5px 5px 0 #ffd84d;backdrop-filter:none}.hero .quick-facts span{border-color:rgba(23,55,73,.22)}
@media(max-width:980px){.hero{height:900px}.hero-art{inset:0 0 310px}.hero-title{top:6%}.hero-title h1{font-size:clamp(48px,8vw,74px)}.hero-info{height:310px;padding:28px 6vw 92px;grid-template-columns:1fr}.hero-info .hero-actions{grid-column:1;grid-row:3;margin-top:18px;align-self:start}.hero .quick-facts{left:6vw;right:6vw;bottom:22px}}
@media(max-width:620px){.hero{height:790px;min-height:0}.hero-art{inset:0 0 355px}.hero-photo-frame img{object-position:57% center}.hero-title{left:5vw;top:5%}.hero-title h1{font-size:clamp(34px,10.8vw,48px);gap:8px}.hero-title h1 span{box-shadow:5px 5px 0 rgba(255,216,77,.92);padding:.18em .3em .22em}.hero-title h1 span:nth-child(2){margin-left:.55em}.hero-info{height:355px;padding:25px 5vw 91px;display:block}.hero-info .eyebrow{font-size:8px;margin-bottom:8px}.hero-info .lead{font-size:12px;line-height:1.65}.hero-info .hero-actions{display:flex;flex-direction:row;align-items:center;gap:15px;margin-top:16px}.hero-info .primary{padding:11px 15px;font-size:11px}.hero-info .text-link{font-size:11px}.hero .quick-facts{left:5vw;right:5vw;bottom:18px;border-radius:12px}.hero .quick-facts span{padding:8px 5px;font-size:8px}.hero .quick-facts b{font-size:12px}}

/* softer Instagram-like type and watercolor title swashes */
.hero-title{font-family:"Zen Maru Gothic","Kiwi Maru",sans-serif}.hero-title h1{font-family:inherit;font-weight:900;letter-spacing:.025em;gap:10px}.hero-title h1 span{position:relative;isolation:isolate;background:none;box-shadow:none;padding:.14em .4em .2em}.hero-title h1 span:before{content:"";position:absolute;z-index:-1;inset:-.06em -.18em;background:radial-gradient(circle at 8% 38%,rgba(255,160,92,.98),transparent 26%),radial-gradient(circle at 73% 16%,rgba(238,105,46,.97),transparent 34%),radial-gradient(circle at 42% 88%,rgba(247,135,65,.98),transparent 42%),#f47f3f;clip-path:polygon(1% 12%,7% 5%,19% 8%,31% 3%,47% 8%,60% 4%,74% 9%,88% 5%,99% 12%,97% 34%,100% 55%,97% 78%,99% 91%,87% 96%,71% 92%,58% 98%,42% 93%,28% 97%,14% 92%,2% 96%,4% 72%,1% 52%,4% 31%);filter:drop-shadow(0 7px 10px rgba(105,55,25,.14))}.hero-title h1 span:nth-child(2):before{clip-path:polygon(2% 7%,15% 12%,28% 4%,44% 9%,58% 3%,73% 8%,88% 4%,98% 11%,96% 29%,99% 49%,97% 68%,100% 90%,87% 96%,70% 91%,55% 97%,39% 92%,23% 98%,8% 92%,1% 96%,4% 72%,1% 48%,5% 27%)}

/* balanced student gallery: every artwork gets its own space */
.works-showcase{padding:90px max(5vw,40px) 80px}.works-copy{max-width:820px}.works-copy h2{font-size:clamp(42px,5vw,70px);line-height:1.16;letter-spacing:-.035em}.works-stage{height:auto;max-width:1280px;margin:55px auto 35px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;align-items:stretch}.works-stage .work{position:static;width:100%;height:300px;padding:18px;object-fit:contain;background:rgba(255,255,255,.55);border:1px solid rgba(23,55,73,.38);border-radius:24px;filter:drop-shadow(0 10px 8px rgba(23,55,71,.12));transform:none!important}.works-stage .work:hover{transform:translateY(-7px)!important}.works-note{position:static;grid-column:2/5;grid-row:2;width:auto;height:auto;min-height:75px;border:1px solid #173749;border-radius:18px;background:#fff;padding:14px 25px;transform:none;font-size:14px}.material-strip{margin-top:25px}

/* tighten the lessons introduction and keep text clear of images */
.lesson.section{padding-top:88px}.lesson .section-label{margin-bottom:38px}.lesson-head{align-items:start}.lesson-head h2{font-size:clamp(44px,5.3vw,72px);line-height:1.12}.lesson-head p{max-width:520px;margin-top:10px}.lesson-cards{margin-top:45px;align-items:stretch}.lesson-cards .card{min-height:500px;transform:none}.lesson-cards .card-visual{height:245px;margin:24px 0 22px}.lesson-cards .card h3,.lesson-cards .card p{position:relative;z-index:2}.lesson-cta{margin-top:55px}

/* contrast fixes for light backgrounds */
.process article:nth-child(4){color:#173749}.final-cta .outline{background:rgba(23,55,73,.12);border-color:#fff}.saved-pill{color:#173749}
@media(max-width:980px){.works-stage{grid-template-columns:repeat(3,1fr)}.works-note{grid-column:1/-1;grid-row:auto}.lesson-head{gap:35px}}
@media(max-width:620px){.hero-title h1{letter-spacing:.01em}.hero-title h1 span{padding:.17em .33em .21em}.works-showcase{padding:70px 5vw 60px}.works-copy h2{font-size:40px}.works-stage{height:auto;grid-template-columns:1fr 1fr;gap:10px;margin-top:35px}.works-stage .work{height:205px;padding:10px;border-radius:16px}.works-note{grid-column:1/-1;min-height:62px}.lesson.section{padding-top:65px}.lesson .section-label{margin-bottom:28px}.lesson-head h2{font-size:44px}.lesson-cards{margin-top:32px}.lesson-cards .card{min-height:455px}.lesson-cards .card-visual{height:230px}}

/* friendlier class guide and clearer type */
body{font-size:17px}.header nav a{font-size:15px}.section-label,.eyebrow{font-size:13px}.body-copy,.lesson-head p,.booking-intro>p{font-size:18px}.card p,.booking-card-body>p,.locations p{font-size:15px}.button{font-size:16px}.info h2{margin-bottom:42px}.info-grid{gap:5vw}.class-details{display:grid;grid-template-columns:1fr 1fr;gap:16px}.info .class-details>div{display:flex;min-height:180px;padding:25px;flex-direction:column;justify-content:space-between;border:1.5px solid #173749;border-radius:28px;background:#fff;box-shadow:7px 7px 0 rgba(23,55,71,.1)}.info .class-details>div:nth-child(1){background:#fff2cc}.info .class-details>div:nth-child(2){background:#eaf8fb}.info .class-details>div:nth-child(3){background:#ffe7d9}.info .class-details>div:nth-child(4){background:#fff}.class-details dt{font-family:"Zen Maru Gothic","Noto Sans JP",sans-serif;font-size:15px;line-height:1.5;letter-spacing:.02em}.class-details dt span{display:inline-grid;width:36px;height:36px;margin-right:7px;place-items:center;border-radius:50%;background:#fff;font-size:20px}.class-details dd{font-family:"Zen Maru Gothic","Kiwi Maru",sans-serif;font-size:clamp(22px,2.2vw,31px);font-weight:900;line-height:1.4;color:#173749}.locations article{border-radius:28px}.locations h3{font-size:32px}.locations .note{font-size:14px}.marquee{display:none!important}
@media(max-width:620px){body{font-size:16px}.header nav a{font-size:16px}.section-label,.eyebrow{font-size:11px}.body-copy,.lesson-head p,.booking-intro>p{font-size:16px}.card p,.booking-card-body>p,.locations p{font-size:14px}.button{font-size:14px}.class-details{grid-template-columns:1fr;gap:13px}.info .class-details>div{min-height:145px;padding:21px 22px}.class-details dt{font-size:14px}.class-details dd{font-size:24px}.info-grid{gap:34px}.locations h3{font-size:29px}}

/* diagonal first-view lettering */
.hero-title{left:5.2vw;top:7.5%;width:min(800px,72vw);transform:rotate(-1.5deg);transform-origin:left top}.hero-title h1{gap:20px}.hero-title h1 span:first-child{transform:rotate(-2.2deg)}.hero-title h1 span:nth-child(2){margin-left:1.75em;transform:rotate(2.4deg)}.hero-title h1 span:first-child:before{inset:-.08em -.28em}.hero-title h1 span:nth-child(2):before{inset:-.08em -.3em}.hero-title h1 span:after{content:"";position:absolute;width:.22em;height:.22em;border-radius:50%;background:#ffd84d;right:-.42em;top:-.05em;box-shadow:.35em .25em 0 #7dcce4;z-index:2}
@media(max-width:980px){.hero-title{left:5vw;width:88vw;transform:rotate(-1deg)}.hero-title h1{gap:16px}.hero-title h1 span:nth-child(2){margin-left:1.25em}}
@media(max-width:620px){.hero-title{left:4vw;right:3vw;top:5.5%;width:auto;transform:rotate(-1deg)}.hero-title h1{gap:13px}.hero-title h1 span:first-child{transform:rotate(-2deg)}.hero-title h1 span:nth-child(2){margin-left:.9em;transform:rotate(2deg)}.hero-title h1 span:after{right:-.28em;top:-.02em}}

/* true vertical title: read from the right column to the left */
.hero-title{left:5vw;top:5%;width:auto;transform:none}.hero-title h1{display:flex;flex-direction:row-reverse;align-items:flex-start;gap:20px;font-size:clamp(42px,4.6vw,68px);line-height:1;letter-spacing:.05em}.hero-title h1 span{writing-mode:vertical-rl;text-orientation:mixed;padding:.34em .22em .42em}.hero-title h1 span:first-child{transform:rotate(1.6deg)}.hero-title h1 span:nth-child(2){margin:1.2em 0 0;transform:rotate(-1.8deg)}.hero-title h1 span:after{display:none!important}.hero-title h1 span:before{inset:-.12em -.1em}
@media(max-width:980px){.hero-title{left:5vw;top:5%;width:auto;transform:none}.hero-title h1{gap:15px;font-size:clamp(40px,6vw,58px)}.hero-title h1 span:nth-child(2){margin:1em 0 0}}
@media(max-width:620px){.hero-title{left:4vw;right:auto;top:4.5%;width:auto;transform:none}.hero-title h1{gap:9px;font-size:clamp(31px,8.3vw,39px);line-height:.98}.hero-title h1 span{padding:.3em .18em .36em}.hero-title h1 span:first-child{transform:rotate(1.2deg)}.hero-title h1 span:nth-child(2){margin:.7em 0 0;transform:rotate(-1.4deg)}}

/* rotating classroom photographs with real student artworks as the playful frame */
.hero-slideshow{isolation:isolate}.hero-slideshow .hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;opacity:0;transform:scale(1.035);transition:opacity 1.15s ease,transform 5.8s ease;filter:saturate(.95) contrast(1.03)}.hero-slideshow .hero-slide.is-active{opacity:1;transform:scale(1);z-index:1}.hero-work{position:absolute;z-index:6;object-fit:contain;pointer-events:none;filter:drop-shadow(0 11px 8px rgba(10,30,40,.24));animation:art-float 5.5s ease-in-out infinite}.hero-work-bird{width:150px;right:3%;top:8%;transform:rotate(8deg)}.hero-work-clay{width:135px;right:5%;bottom:31%;animation-delay:-1.8s}.hero-work-parfait{width:175px;left:46%;bottom:24%;animation-delay:-3.2s}@keyframes art-float{0%,100%{translate:0 0;rotate:-2deg}50%{translate:0 -9px;rotate:2deg}}
@media(prefers-reduced-motion:reduce){.hero-slideshow .hero-slide{transition:none;transform:none}.hero-work{animation:none}}
@media(max-width:980px){.hero-work-bird{width:125px}.hero-work-clay{width:110px;bottom:34%}.hero-work-parfait{width:145px;left:52%}}
@media(max-width:620px){.hero-work-bird{width:76px;right:1%;top:9%}.hero-work-clay{width:70px;right:3%;bottom:35%}.hero-work-parfait{width:92px;left:auto;right:12%;bottom:8%}}

/* calmer vertical title and static, larger artwork cutouts */
.hero-title h1{gap:34px}.hero-title h1 span:nth-child(2){margin-top:1.55em}.hero-title h1 span:before,.hero-title h1 span:nth-child(2):before{clip-path:none;border-radius:46% 54% 45% 55%/5% 7% 6% 8%;inset:-.12em -.04em;background:linear-gradient(100deg,rgba(255,156,87,.98),rgba(238,105,46,.98) 48%,rgba(247,135,65,.98));filter:drop-shadow(0 7px 10px rgba(105,55,25,.12))}.hero-work{animation:none!important}.hero-work-bird{width:190px;right:1.5%;top:5%;transform:rotate(8deg)}.hero-work-clay{width:175px;right:3%;bottom:30%;transform:rotate(-7deg)}.hero-work-parfait{width:225px;left:43%;bottom:22%;transform:rotate(5deg)}.hero-info .primary{font-size:18px;padding:17px 24px}.hero-info .text-link{font-size:17px;font-weight:900;padding:10px 3px}.hero-info .hero-actions{gap:27px}

/* desktop capsule menu inspired by the playful vertical reference */
@media(min-width:801px){.header{z-index:40}.header nav{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:40;display:flex;align-items:flex-end;gap:8px}.header nav a{display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;min-height:142px;width:48px;padding:15px 9px;border:2px solid #173749;border-radius:999px;background:rgba(255,255,255,.95);box-shadow:3px 4px 0 rgba(23,55,71,.13);font-family:"Zen Maru Gothic","Noto Sans JP",sans-serif;font-size:14px;letter-spacing:.04em;transition:transform .2s,background .2s}.header nav a:hover{transform:translateY(-5px);background:#fff2cc}.header nav .nav-cta{min-height:160px;background:#f47f3f;color:#fff;border-color:#173749;box-shadow:4px 5px 0 #ffd84d}}
@media(max-width:980px) and (min-width:801px){.header nav{right:9px;gap:5px}.header nav a{width:42px;min-height:128px;font-size:12px}.header nav .nav-cta{min-height:145px}.hero-title h1{gap:24px}.hero-work-bird{width:145px}.hero-work-clay{width:135px}.hero-work-parfait{width:175px}}
@media(max-width:800px){.header nav{transform:none}.hero-title h1{gap:14px}.hero-title h1 span:nth-child(2){margin-top:.9em}.hero-work-bird{width:92px;right:1%;top:7%}.hero-work-clay{width:88px;right:2%;bottom:34%}.hero-work-parfait{width:118px;left:auto;right:11%;bottom:8%}.hero-info .primary{font-size:14px;padding:14px 17px}.hero-info .text-link{font-size:14px}.hero-info .hero-actions{gap:18px}}

/* user-made hero lettering */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.hero-title{left:3.5vw;top:2.5%;width:min(430px,34vw);height:565px;transform:none}.hero-title-image{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 12px 12px rgba(62,35,15,.15))}

/* class features replace the former student-work gallery */
.features{background:#fff4da;position:relative;overflow:hidden}.features:before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:rgba(125,204,228,.55);right:-150px;top:-150px}.features>.section-label,.features-head,.feature-cards{position:relative;z-index:1}.features-head{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:end}.features-head h2{font-size:clamp(44px,6vw,82px);line-height:1.12;margin:0;font-family:"Zen Maru Gothic","Kiwi Maru",sans-serif}.features-head h2 em{font-style:normal;color:#f47f3f}.features-head p{font-size:18px;line-height:2;margin:0}.feature-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:60px}.feature-cards article{min-height:345px;padding:28px 24px;border:1.5px solid #173749;border-radius:80px 80px 24px 24px;background:#fff;box-shadow:7px 8px 0 rgba(23,55,71,.1)}.feature-cards article:nth-child(2){background:#eaf8fb}.feature-cards article:nth-child(3){background:#ffe2cf}.feature-cards article:nth-child(4){background:#ffd84d}.feature-cards b{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:#173749;color:#fff}.feature-cards h3{font-family:"Zen Maru Gothic","Kiwi Maru",sans-serif;font-size:23px;line-height:1.5;margin:32px 0 18px}.feature-cards p{font-size:14px;line-height:1.9;margin:0}

/* supplied orange watercolor behind the four-step story */
.about{background:#fffaf0}.about .process{padding:34px;gap:18px;border-radius:38px;background:linear-gradient(rgba(255,255,255,.12),rgba(255,255,255,.12)),url("assets/process-orange-watercolor.jpg") center/cover no-repeat}.about .process article,.about .process article:nth-child(1),.about .process article:nth-child(2),.about .process article:nth-child(3),.about .process article:nth-child(4){background:rgba(255,255,255,.9);color:#173749;transform:none;backdrop-filter:blur(2px)}.about .process article:nth-child(4){background:rgba(255,247,210,.93)}
@media(max-width:980px){.hero-title{width:365px;height:500px}.feature-cards{grid-template-columns:1fr 1fr}.feature-cards article{min-height:300px}}
@media(max-width:620px){.hero-title{left:2vw;top:2%;width:210px;height:330px}.features-head{grid-template-columns:1fr;gap:25px}.features-head h2{font-size:44px}.features-head p{font-size:16px}.feature-cards{grid-template-columns:1fr;gap:13px;margin-top:38px}.feature-cards article{min-height:260px;border-radius:58px 58px 20px 20px}.about .process{padding:13px;gap:10px;border-radius:24px}.about .process article{min-height:345px}}

/* handwritten review refinements */
.hero-info .lead{font-size:18px;line-height:1.9;font-weight:700}.hero-info{padding-bottom:38px}.hero-info .hero-actions{align-self:end}.features{padding-bottom:105px}.feature-cards{margin-top:42px}.feature-cards article{position:relative;padding-top:24px}.feature-visual{height:120px;margin:8px 0 4px;display:grid;place-items:center}.feature-visual img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 9px 7px rgba(23,55,71,.16))}.feature-cards h3{margin-top:14px}.about{position:relative;overflow:hidden}.about:before{content:"✦  ぐるぐる  ✦";position:absolute;right:5vw;top:105px;color:#f47f3f;font-family:"Zen Maru Gothic","Kiwi Maru",sans-serif;font-size:22px;font-weight:900;letter-spacing:.08em;transform:rotate(7deg);opacity:.75}.about-grid{position:relative;z-index:1}.about .process{margin-top:52px}.session-preview{grid-column:1/-1;display:block;margin-top:5px;padding-top:7px;border-top:1px dashed rgba(23,55,71,.28);font-size:11px;font-weight:900;color:#27734e}.venue-options .lesson-option.active .session-preview{color:#fff;border-top-color:rgba(255,255,255,.45)}.final-cta h2{line-height:1.25}.final-cta h2 span{display:block;white-space:nowrap}.final-cta>p{position:relative;z-index:2}
@media(max-width:980px){.hero-info .lead{font-size:17px}.feature-visual{height:135px}.about:before{top:88px;font-size:18px}}
@media(max-width:620px){.hero{height:735px}.hero-art{inset:0 0 315px}.hero-info{height:315px;padding:22px 5vw 24px}.hero-info .lead{font-size:14px;line-height:1.75}.hero-info .hero-actions{margin-top:14px}.features{padding-bottom:72px}.feature-cards article{display:grid;grid-template-columns:54px 110px 1fr;column-gap:12px;align-items:center;min-height:0;padding:20px;border-radius:28px}.feature-cards b{grid-column:1;grid-row:1}.feature-visual{grid-column:2;grid-row:1/3;width:110px;height:105px;margin:0}.feature-cards h3{grid-column:3;grid-row:1;margin:0;font-size:20px}.feature-cards p{grid-column:1/-1;grid-row:3;margin-top:12px}.about:before{right:4vw;top:76px;font-size:14px}.about .process{margin-top:32px}.final-cta{padding:95px 18px}.final-cta h2{font-size:clamp(36px,11vw,52px);letter-spacing:-.05em}.final-cta h2 span{margin-top:.18em}.session-preview{font-size:10px}}

/* live-looking availability supplied from the current booking list */
.session-preview{display:flex;flex-wrap:wrap;gap:5px}.session-preview span{display:inline-flex;gap:4px;padding:3px 7px;border-radius:999px;background:#e7f7ec;color:#27734e}.session-preview i{font-style:normal;color:#173749}.session-preview .is-full{background:#ededed;color:#777}.lesson-option.sold-out{opacity:.68;cursor:not-allowed}.lesson-option.sold-out em{color:#777}.venue-options .lesson-option.active .session-preview span{background:rgba(255,255,255,.2);color:#fff}.venue-options .lesson-option.active .session-preview i{color:#fff}

/* mobile polish from the annotated review */
.about-grid h2 span{color:#173749}.about-grid h2 em{font-style:normal;color:#f47f3f}.final-cta h2 span{display:block;white-space:nowrap}.final-cta .outline{background:#ffd84d;border:2px solid #173749;color:#173749;box-shadow:5px 6px 0 rgba(23,55,71,.35);font-weight:900}.final-cta .outline:hover{background:#fff3a9}.story-photo img{object-position:center}
@media(max-width:620px){.hero-info{text-align:center}.hero-info .eyebrow{text-align:center}.hero-info .lead{font-size:15px;line-height:1.8;text-align:center}.hero-info .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:15px}.hero-info .primary,.hero-info .text-link{min-height:48px;width:100%;padding:11px 13px;border:0;border-radius:999px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:13px}.hero-info .text-link{background:#fff0b8;color:#173749;box-shadow:inset 0 0 0 1px rgba(23,55,71,.22)}.studio-story{padding-top:62px}.story-gallery{min-height:520px}.gallery-doodle{display:none}.photo-main{width:58%;height:54%;left:0;top:6%}.photo-sub{width:48%;height:39%;right:0;top:0}.photo-table{width:58%;height:36%;right:1%;bottom:1%}.about{padding-top:62px}.about .section-label{margin-bottom:32px}.about-grid{gap:18px}.about-grid h2{font-size:43px;line-height:1.22}.about-grid .body-copy p:first-child{margin-top:4px}.about .process{margin-top:25px}.feature-cards article{display:flex;flex-direction:column;align-items:flex-start;padding:20px 22px 24px}.feature-cards b{position:absolute;left:18px;top:18px;z-index:2}.feature-visual{width:100%;height:165px;margin:0 0 12px}.feature-visual img{max-width:210px}.feature-cards h3{margin:0 0 10px;font-size:24px;line-height:1.45;text-align:left}.feature-cards p{margin:0;text-align:left}.final-cta h2{font-size:clamp(29px,8.1vw,39px);line-height:1.35;letter-spacing:-.045em}.final-cta h2 span+span{margin-top:.12em}.final-buttons{width:min(92%,390px);margin:auto}.final-buttons .button{width:100%;min-height:56px}.final-cta .outline{background:#ffd84d;color:#173749}}

/* latest layout notes */
.hero-title{left:auto;right:3.5vw}.features-head{text-align:center;display:block;max-width:900px;margin-inline:auto}.features-head p{max-width:700px;margin:24px auto 0}.feature-cards h3{text-align:center}.feature-visual{height:155px}.studio-story:before{display:none}.story-photo{transform:none;border-radius:18px}.admin-demo{border-color:rgba(23,55,71,.16);background:transparent}.admin-demo summary{padding:10px 4px;color:rgba(23,55,71,.55);font-size:11px;font-weight:500}.admin-demo summary span{background:transparent;padding:0;margin-right:5px}.admin-demo[open] summary{color:#173749}
@media(max-width:620px){.hero{height:690px}.hero-art{inset:0 0 290px}.hero-title{left:auto;right:1vw;top:1%;width:200px;height:315px}.hero-info{height:290px;padding:18px 5vw 18px}.hero-info .eyebrow{margin-bottom:5px}.hero-info .lead{font-size:14px;line-height:1.65}.hero-info .hero-actions{margin-top:10px}.studio-story{background:#eaf8fb}.story-gallery{min-height:470px}.photo-main{width:64%;height:48%;left:0;top:2%}.photo-sub{width:42%;height:36%;right:0;top:1%}.photo-table{width:57%;height:34%;right:2%;bottom:2%}.features-head h2{text-align:center}.feature-visual{height:205px}.feature-visual img{max-width:270px}.feature-cards h3{width:100%;font-size:clamp(16px,4.65vw,20px);white-space:nowrap;text-align:center}.admin-demo{margin-top:22px}.admin-links{padding:18px 14px}.admin-links>div{grid-template-columns:1fr}.admin-sheet-link{font-size:12px}}

.final-cta h2{position:relative;z-index:4}.final-cta .final-buttons{position:relative;z-index:5;width:fit-content;margin-left:auto;margin-right:auto;align-items:center}.final-cta .paint{z-index:1}.final-cta>p{z-index:4}.final-cta .button{text-align:center}
.illustration-lesson{box-shadow:7px 7px 0 rgba(240,135,160,.35)}.illustration-lesson .booking-kind{color:#d34f77}.illustration-lesson .lesson-option{background:#ffe8ef}
@media(max-width:620px){.final-cta .final-buttons{width:min(92%,390px);align-items:stretch}.final-cta .button{justify-content:center}}

/* latest layout refinements */
.hero-title{right:.6vw;top:4.2%}
.hero-info .hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:min(390px,32vw)}
.hero-info .hero-actions .primary,.hero-info .hero-actions .text-link{width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;padding:13px 22px;border-radius:999px;text-decoration:none}
.hero-info .hero-actions .text-link{background:#fff0b8;box-shadow:inset 0 0 0 1px rgba(23,55,71,.2)}
.features-head{text-align:left;max-width:none;margin-inline:0}
.features-head p{margin:24px 0 0;max-width:700px}
.about:before{display:none!important;content:none!important}
.feature-cards article:nth-child(1) .feature-visual img,.feature-cards article:nth-child(2) .feature-visual img,.feature-cards article:nth-child(4) .feature-visual img{transform:scale(1.2)}

.selected-bookings{display:grid;gap:9px}.selected-booking{position:relative;display:grid;gap:5px;padding:13px 54px 13px 13px;border-radius:14px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22)}.selected-booking b{font-size:14px}.selected-booking small{font-size:11px;color:#d9edf4}.selected-booking label{margin-top:4px;grid-column:1/-1}.remove-booking{position:absolute;right:9px;top:9px;display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:22px;line-height:1;cursor:pointer}.remove-booking span{position:absolute;top:38px;font-size:8px;letter-spacing:.04em}.remove-booking:hover{background:#fff;color:#173749}.empty-selection{padding:14px;border:1px dashed rgba(255,255,255,.45);border-radius:12px;font-size:13px}.siblings{display:grid;gap:10px}.sibling-row{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:14px;border:1px solid rgba(255,255,255,.3);border-radius:14px}.sibling-row legend{padding:0 7px;font-size:12px;font-weight:900}.remove-sibling{position:absolute;right:10px;top:-13px;border:0;border-radius:999px;background:#fff;color:#173749;padding:4px 9px;font-size:10px;cursor:pointer}.add-sibling{width:100%;padding:12px;border:1px dashed rgba(255,255,255,.55);border-radius:12px;background:transparent;color:#fff;font:inherit;font-size:13px;font-weight:900;cursor:pointer}.add-sibling:hover{background:rgba(255,255,255,.1)}
.trial-price{display:flex;align-items:center;gap:9px;width:fit-content;margin:10px 0 14px;padding:9px 14px;border:2px solid #173749;border-radius:999px;background:#ffd84d;color:#173749;font-size:18px;line-height:1;box-shadow:4px 4px 0 rgba(23,55,71,.18)}.trial-price small{padding:5px 8px;border-radius:999px;background:#fff;font-size:10px;letter-spacing:.03em}.lesson-belongings{margin:3px 0 15px;padding:12px 14px;border-radius:15px;background:#fff5f8;border:1px dashed #d34f77}.lesson-belongings>b{font-size:13px;color:#b63f65}.lesson-belongings ul{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 5px;padding:0;list-style:none}.lesson-belongings li{padding:4px 9px;border-radius:999px;background:#fff;border:1px solid rgba(211,79,119,.32);font-size:11px;font-weight:800}.lesson-belongings small{font-size:10px;line-height:1.5;color:#59636a}.class-details dd small{display:block;margin-top:7px;font-family:"Noto Sans JP",sans-serif;font-size:12px;font-weight:700;line-height:1.5;color:#d45f2e;white-space:normal}
@media(max-width:620px){.trial-price{font-size:17px}.illustration-lesson .booking-card-body h3 br{display:none}.lesson-belongings li{font-size:10px}}

/* parent-facing reservation list */
.my-bookings{background:#fffaf0}.my-bookings-head{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.my-bookings-head h2{font-size:clamp(44px,6vw,84px);letter-spacing:-.05em}.my-bookings-head>p{font-size:18px}.next-booking{margin-top:48px;padding:34px;border:1.5px solid #173749;border-radius:32px;background:#ffd84d;box-shadow:10px 10px 0 #173749}.next-booking>span{font-size:11px;font-weight:900;letter-spacing:.18em;color:#f47f3f}.next-booking>p{margin:10px 0 0;font-size:18px}.next-booking>p b{font-family:"Zen Maru Gothic";font-size:34px}.next-booking h3{margin:5px 0 25px;font-family:"Kiwi Maru";font-size:clamp(27px,4vw,48px)}.next-booking dl{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.next-booking dl div{padding:15px;border:1px solid rgba(23,55,73,.28);border-radius:18px;background:rgba(255,255,255,.65)}.next-booking dt{font-size:10px;font-weight:900;color:#57717d}.next-booking dd{margin-top:4px;font-weight:900}.my-booking-list{display:grid;gap:12px;margin-top:34px}.my-booking-card{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:center;padding:19px;border:1px solid #173749;border-radius:23px;background:#fff;box-shadow:5px 5px 0 rgba(23,55,71,.1)}.booking-date-stamp{display:grid;place-items:center;min-height:86px;padding:10px;border-radius:16px;background:#eaf8fb;text-align:center}.booking-date-stamp b{font-family:"Zen Maru Gothic";font-size:17px}.booking-date-stamp small{color:#f47f3f;font-weight:900}.my-booking-card h3{margin:0 0 4px;font-family:"Kiwi Maru";font-size:21px}.my-booking-card p{margin:0 0 4px}.my-booking-card.is-past{opacity:.55}.no-bookings{padding:54px 25px;text-align:center;border:1px dashed #7dcce4;border-radius:28px;background:#fff}.no-bookings>span{font-size:34px;color:#f47f3f}.no-bookings h3{font-family:"Kiwi Maru";font-size:25px}.booking-device-note{margin:25px 0 0;padding-left:18px;border-left:3px solid #7dcce4;color:#57717d;font-size:12px;line-height:1.8}
@media(max-width:620px){.my-bookings-head{grid-template-columns:1fr;gap:12px}.my-bookings-head>p{font-size:15px}.next-booking{margin-top:30px;padding:23px;box-shadow:7px 7px 0 #173749}.next-booking dl{grid-template-columns:1fr 1fr}.my-booking-card{grid-template-columns:105px 1fr;gap:13px;padding:13px}.booking-date-stamp{min-height:78px}.my-booking-card h3{font-size:18px}.my-booking-card p{font-size:12px}}
.gender-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;border:0}.gender-choice legend{grid-column:1/-1;margin-bottom:2px;font-size:11px;font-weight:800}.gender-choice label{position:relative;display:block}.gender-choice input{position:absolute;opacity:0;width:1px;height:1px}.gender-choice span{display:grid;place-items:center;min-height:46px;border:1px solid rgba(255,255,255,.38);border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font-size:13px;font-weight:900;cursor:pointer}.gender-choice input:checked+span{background:#ffd84d;border-color:#ffd84d;color:#173749;box-shadow:inset 0 0 0 2px #173749}.gender-choice input:focus-visible+span{outline:3px solid #78b9e7;outline-offset:2px}

.info{position:relative;overflow:hidden;background:linear-gradient(145deg,#fffaf0 0 52%,#eef8f4 52% 100%)}.info:before,.info:after{content:"";position:absolute;pointer-events:none;opacity:.72}.info:before{width:320px;height:320px;right:-105px;top:85px;border-radius:50%;background:#f6cfc1}.info:after{width:260px;height:260px;left:-105px;bottom:45px;background:#cae8ef;clip-path:polygon(50% 0,100% 42%,82% 100%,18% 100%,0 42%)}.info>.section-label,.info>h2,.info-grid{position:relative;z-index:1}.info-grid{align-items:stretch;gap:24px}.class-details{gap:12px}.info .class-details>div{min-height:155px;padding:20px 22px;box-shadow:5px 5px 0 rgba(23,55,71,.08)}.class-details dd{margin:12px 0 0;white-space:nowrap;font-size:clamp(19px,2vw,27px)}.locations{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:stretch}.locations article{min-height:155px;padding:20px 22px;background:#fff7dc;border:1.5px solid #173749;box-shadow:5px 5px 0 rgba(23,55,71,.08)}.locations article:nth-child(2){background:#e8f5f7}.locations article span{font-size:9px;letter-spacing:.15em}.locations h3{margin:5px 0 8px;font-size:27px}.locations article p{margin:0;line-height:1.65}.locations .note{grid-column:1/-1;margin:2px 0 0;padding:12px 15px;border-radius:12px;background:rgba(255,255,255,.76)}

@media(max-width:620px){.hero{height:750px}.hero-art{inset:0 0 350px}.hero-title{right:-1.2vw;top:3%;width:200px;height:315px}.hero-info{height:350px;padding:18px 5vw}.hero-info .hero-actions{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:10px}.hero-info .hero-actions .primary,.hero-info .hero-actions .text-link{min-height:46px;width:100%;justify-content:center;padding:10px 14px}.features-head h2{text-align:left}.feature-cards article:nth-child(1) .feature-visual img,.feature-cards article:nth-child(2) .feature-visual img,.feature-cards article:nth-child(4) .feature-visual img{transform:scale(1.18)}.sibling-row{grid-template-columns:1fr}.info-grid{gap:20px}.class-details{grid-template-columns:1fr 1fr;gap:10px}.info .class-details>div{min-height:128px;padding:16px}.class-details dt{font-size:12px}.class-details dt span{width:30px;height:30px;font-size:16px}.class-details dd{font-size:17px;white-space:normal}.class-details>div:first-child dd{white-space:nowrap;font-size:15px}.locations{grid-template-columns:1fr 1fr;gap:10px}.locations article{min-height:140px;padding:16px}.locations h3{font-size:21px}.locations article p{font-size:12px}.locations .note{font-size:12px}.info:before{width:210px;height:210px;right:-100px;top:120px}.info:after{width:190px;height:190px;left:-100px}}

/* restore the original photo collage composition; only the photographs change */
.story-gallery{min-height:660px}.photo-main{width:53%;height:66%;left:4%;top:4%;transform:rotate(-5deg)}.photo-sub{width:42%;height:43%;right:1%;top:1%;transform:rotate(6deg)}.photo-table{width:48%;height:42%;right:7%;bottom:2%;transform:rotate(-2deg)}
@media(max-width:980px){.story-gallery{min-height:620px}}
@media(max-width:620px){.story-gallery{min-height:500px}.photo-main{width:62%;height:60%;left:0;top:4%;transform:rotate(-5deg)}.photo-sub{width:44%;height:38%;right:0;top:1%;transform:rotate(6deg)}.photo-table{width:60%;height:37%;right:0;bottom:2%;transform:rotate(-2deg)}}

/* desktop alignment polish: keep the capsule menu visible and align card content */
@media(min-width:981px){
  .header nav{top:14px;transform:none}
  .feature-cards article{display:grid;grid-template-rows:46px 205px 82px 1fr;align-items:start;min-height:590px;padding:28px 28px 30px}
  .feature-visual{width:100%;height:205px;margin:0;display:grid;place-items:center}
  .feature-visual img{width:100%;height:100%;max-width:230px;max-height:185px;object-fit:contain}
  .feature-cards h3{align-self:center;width:100%;margin:0;font-size:22px;line-height:1.45;text-align:center}
  .feature-cards h3 span{display:block;white-space:nowrap}
  .feature-cards p{align-self:start;margin:12px 0 0}
  .info-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:30px}
  .class-details,.locations{min-width:0}
  .class-details{align-self:start;grid-template-columns:repeat(2,minmax(0,1fr))}
  .info .class-details>div{display:grid;grid-template-rows:auto 1fr;gap:10px;min-width:0;min-height:148px;padding:18px 20px;overflow:hidden}
  .class-details dt{min-height:40px;display:flex;align-items:center}
  .class-details dd{align-self:end;max-width:100%;margin:0;line-height:1.4;white-space:normal;word-break:keep-all;overflow-wrap:normal;font-size:clamp(16px,1.35vw,21px)}
  .class-details>div:first-child dd{white-space:normal;font-size:clamp(15px,1.25vw,20px)}
  .class-details dd small{font-size:10px;word-break:normal}
  .locations{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr auto}
  .locations article{display:flex;flex-direction:column;min-height:205px;padding:26px 30px}
  .locations h3{margin:14px 0 10px;font-size:32px;line-height:1.25;white-space:nowrap}
  .locations article p{margin-top:0;font-size:16px;line-height:1.8}
  .locations .note{padding:18px 22px;font-size:14px}
}
@media(max-width:980px) and (min-width:801px){.header nav{top:10px;transform:none}}

/* remove the blank space below the stacked hero links on phones */
@media(max-width:620px){.hero{height:675px}.hero-art{inset:0 0 275px}.hero-info{height:275px;padding:13px 5vw}.hero-info .eyebrow{margin-bottom:3px}.hero-info .lead{line-height:1.55}.hero-info .hero-actions{margin-top:7px;gap:7px}.hero-info .hero-actions .primary,.hero-info .hero-actions .text-link{min-height:43px;padding:8px 14px}}
