:root{--ink:#17111e;--navy:#101b35;--purple:#261728;--white:#fffdfa;--pink:#ef6f9d;--blue:#70cfd1;--yellow:#ffd264;--green:#78bd8b;--orange:#ee9156;--line:rgba(23,17,30,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:"Hiragino Sans","Yu Gothic",sans-serif;font-size:15px;line-height:1.9}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,72px);background:var(--white);position:relative;z-index:10}.logo{font:42px/1 cursive;color:var(--ink);text-decoration:none;letter-spacing:.06em}.logo span{color:var(--pink)}.global-nav{display:flex;gap:clamp(14px,2vw,30px);align-items:center}.global-nav a{font-size:12px;text-decoration:none;color:var(--ink);white-space:nowrap}.global-nav a:hover,.global-nav a[aria-current]{color:var(--pink)}.menu-toggle{display:none;border:0;background:none;font:12px "Hiragino Sans","Yu Gothic",sans-serif;letter-spacing:.12em}.hero{min-height:calc(100vh - 84px);background:var(--navy);color:white;padding:clamp(70px,12vw,160px) clamp(24px,12vw,180px);display:grid;grid-template-columns:1fr minmax(280px,480px);gap:clamp(32px,8vw,120px);align-items:center;overflow:hidden;position:relative}.dot-field:before,.dot-field:after{content:"";position:absolute;pointer-events:none;border-radius:50%;background:rgba(239,111,157,.18);box-shadow:170px -70px 0 15px rgba(112,207,209,.17),360px 100px 0 0 rgba(255,210,100,.18),-120px 230px 0 30px rgba(239,111,157,.12),270px 350px 0 8px rgba(120,189,139,.2)}.hero-copy,.hero-art,.message-inner{position:relative;z-index:1}.eyebrow{margin:0 0 12px;color:var(--blue);font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700}.eyebrow.dark{color:#766073}.hero h1,.page-hero h1,.detail-layout h1{font-size:clamp(42px,6vw,76px);letter-spacing:.04em;line-height:1.25;margin:0 0 20px}.hero-copy>p:not(.eyebrow){font-size:clamp(16px,1.8vw,22px);line-height:1.9;margin:0 0 32px}.button-row{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-block;text-decoration:none;border-radius:99px;padding:11px 27px;font-size:13px;font-weight:700;transition:.2s}.button-pink{background:var(--pink);color:white}.button-line{border:1px solid rgba(255,255,255,.7);color:white}.button-dark{background:var(--ink);color:white}.button:hover{transform:translateY(-2px);opacity:.88}.art-placeholder{position:relative;overflow:hidden;display:grid;place-items:center;color:white;background:#283658;border-radius:4px;isolation:isolate}.hero-art{width:min(100%,480px);aspect-ratio:1;background:#182344}.art-placeholder:before{content:"";position:absolute;width:70%;aspect-ratio:1;border-radius:50%;background:var(--yellow);filter:blur(2px);z-index:-1}.art-placeholder:after{content:"";position:absolute;width:42%;aspect-ratio:1;border-radius:50%;background:var(--pink);transform:translate(42%,-30%);z-index:-1}.art-placeholder span{font-size:13px;text-align:center;letter-spacing:.16em;opacity:.95}.art-placeholder small{font-size:10px}.scroll-hint{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.16em;opacity:.65}.section{padding:clamp(70px,10vw,150px) 24px}.section-inner{max-width:1120px;margin:auto}.split-layout,.art-layout,.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(44px,9vw,145px);align-items:center}.section h2{font-size:clamp(32px,4vw,52px);line-height:1.45;letter-spacing:.03em;margin:0 0 24px}.section p{max-width:550px}.photo-placeholder{aspect-ratio:4/3;background:linear-gradient(130deg,#d7b787,#826b54);display:grid;place-items:center;text-align:center;color:white;font-size:13px;line-height:2;border-radius:3px}.text-link{display:inline-block;margin-top:12px;color:var(--ink);font-size:13px;text-decoration:none;border-bottom:1px solid var(--ink)}.text-link span{margin-left:10px}.featured,.message,.news{background:var(--purple);color:white}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-heading h2{margin:0}.light{color:white;border-color:white}.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.work-card{color:inherit;text-decoration:none}.work-card .artwork{aspect-ratio:1;margin-bottom:12px;transition:transform .25s}.work-card:hover .artwork{transform:scale(.98)}.work-card p{font-size:10px;margin:0;color:inherit}.work-card h3{font-size:16px;margin:2px 0;font-weight:500}.work-card small{font-size:11px;opacity:.7}.work-card em{font-style:normal;background:var(--yellow);color:var(--ink);padding:1px 5px;margin-left:5px}.artwork{background:#23304e}.artwork:before{width:52%;background:var(--art-one,var(--pink))}.artwork:after{background:var(--art-two,var(--yellow));transform:translate(50%,35%)}.artwork i{position:absolute;width:7%;aspect-ratio:1;border-radius:50%;background:var(--art-three,var(--yellow));z-index:-1}.artwork i:nth-of-type(1){left:19%;top:23%;box-shadow:18px 22px 0 var(--art-three,var(--yellow)),45px -6px 0 var(--art-three,var(--yellow)),65px 53px 0 var(--art-three,var(--yellow))}.artwork i:nth-of-type(2){left:39%;top:64%;background:var(--pink);box-shadow:19px -46px 0 var(--pink),50px -9px 0 var(--pink)}.artwork i:nth-of-type(3){left:70%;top:18%;background:white;box-shadow:-34px 85px 0 white,14px 45px 0 white}.blue{--art-one:var(--blue);--art-two:#9d7ad3;--art-three:var(--yellow)}.yellow{--art-one:var(--yellow);--art-two:var(--orange);--art-three:var(--pink)}.green{--art-one:var(--green);--art-two:var(--blue);--art-three:var(--yellow)}.orange{--art-one:var(--orange);--art-two:var(--pink);--art-three:var(--yellow)}.purple{--art-one:#b48cdd;--art-two:var(--pink);--art-three:var(--blue)}.art-intro{background:#f5f0ec}.mini-art{aspect-ratio:1;max-width:380px;justify-self:center;background:#1d2948}.mini-art span{font-size:32px;line-height:1.35;font-family:cursive}.message-inner{max-width:740px;text-align:center}.message-inner>.eyebrow{margin:0 0 12px}.message-inner>p:not(.eyebrow){max-width:620px;margin:0 auto;text-wrap:balance}.message-inner>p:not(.eyebrow)+p:not(.eyebrow){margin-top:24px}.text-keep{white-space:nowrap}.activities{background:#fff}.activity-list{border-top:1px solid var(--line)}.activity-list article{display:grid;grid-template-columns:130px 1fr auto;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:22px 0}.activity-list p,.activity-list h3{margin:0}.activity-list p,.activity-list span{font-size:12px}.activity-list h3{font-size:16px;font-weight:500}.news-list{border-top:1px solid rgba(255,255,255,.35)}.news-list a{display:grid;grid-template-columns:130px 1fr auto;gap:20px;padding:19px 0;color:white;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35);font-size:13px}.news-list time{opacity:.7}.contact{text-align:center;background:#f6dfe7}.contact-inner{max-width:700px}.contact-inner p{margin:0 auto 24px}.contact small{display:block;margin-top:18px;font-size:10px;color:#71545d}footer{display:flex;justify-content:space-between;align-items:center;padding:35px clamp(24px,5vw,72px);background:var(--ink);color:white}footer .logo{color:white;font-size:34px}footer p{font-size:10px}.footer-meta{text-align:right}.footer-meta a{color:white;font-size:11px;text-underline-offset:4px}.footer-meta p{margin:4px 0 0}.page-hero{padding:clamp(76px,12vw,150px) 24px;background:var(--navy);color:white;text-align:center;position:relative;overflow:hidden}.page-hero>*{position:relative;z-index:1}.page-hero p:last-child{font-size:13px;opacity:.8}.gallery-section{min-height:55vh}.filter-bar{display:flex;gap:8px;margin-bottom:35px;flex-wrap:wrap}.filter{min-height:44px;border:1px solid var(--line);padding:8px 17px;border-radius:99px;background:white;font:12px "Hiragino Sans","Yu Gothic",sans-serif;cursor:pointer}.filter.active{color:white;border-color:var(--ink);background:var(--ink)}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:34px 22px}.work-detail{min-height:75vh}.detail-art{aspect-ratio:1}.detail-description{margin:0 0 25px}.detail-layout dl{margin:28px 0;border-top:1px solid var(--line)}.detail-layout dl div{display:grid;grid-template-columns:90px 1fr;border-bottom:1px solid var(--line);padding:11px 0;font-size:13px}.detail-layout dt{color:#766073}.detail-layout dd{margin:0}.detail-layout .button{margin-bottom:12px}.privacy-section{background:#f5f0ec}.privacy-article{max-width:820px}.privacy-updated{margin:0 0 40px;color:#766073;font-size:12px}.privacy-article h2{margin:44px 0 12px;font-size:22px;line-height:1.5}.privacy-article h2:first-of-type{margin-top:0}.privacy-article p,.privacy-article li{max-width:none}.privacy-article ul{padding-left:1.4em}.privacy-article a{color:var(--ink);text-underline-offset:4px}
@media(max-width:760px){.site-header{height:68px;padding:0 20px}.logo{font-size:34px}.menu-toggle{display:block;z-index:12}.global-nav{display:none;position:absolute;top:68px;right:0;left:0;background:var(--white);padding:20px;box-shadow:0 12px 15px rgba(0,0,0,.08);flex-direction:column;align-items:flex-start;gap:16px}.global-nav.open{display:flex}.hero{min-height:calc(100svh - 68px);display:flex;flex-direction:column;padding:70px 24px 60px;align-items:flex-start}.hero-art{width:100%;max-width:none}.scroll-hint{display:none}.split-layout,.art-layout,.detail-layout{grid-template-columns:1fr;gap:35px}.about .photo-placeholder{grid-row:1}.section{padding:68px 20px}.section-heading{align-items:start;gap:12px;flex-direction:column}.work-grid{grid-template-columns:repeat(2,1fr);gap:28px 13px}.activity-list article,.news-list a{grid-template-columns:1fr;gap:2px;padding:17px 0}.activity-list span{margin-top:3px}.news-list b{display:none}.page-hero{padding:75px 20px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.detail-art{max-width:560px;width:100%}footer{padding:28px 20px}.contact h2{font-size:29px}.hero h1{font-size:46px}}

.skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:9px 14px;background:var(--ink);color:white;text-decoration:none;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.menu-toggle{cursor:pointer}.button-pink{color:var(--ink)}:focus-visible{outline:3px solid #c43f73;outline-offset:3px}.not-found{max-width:720px;margin:auto;text-align:center}.not-found .button-row{justify-content:center;margin-top:24px}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.work-card-media img{transition:none}.button:hover{transform:none}}
.hero-copy>p.hero-copy-en{font-family:Arial,sans-serif;font-size:clamp(12px,1.15vw,15px);line-height:1.6;letter-spacing:.04em;color:rgba(255,255,255,.72);margin:-8px 0 20px}
.about-profile{margin:0 0 22px;padding-left:14px;border-left:2px solid var(--pink);font-size:14px;line-height:1.75;color:#5f4d5d}.about-profile span{font-size:12px;color:#766073}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:360px){.message h2{font-size:28px}}
@media(max-width:760px){.message.dot-field:before,.message.dot-field:after{display:none}}
.privacy-english{margin-top:clamp(64px,9vw,96px);padding-top:clamp(44px,6vw,64px);border-top:1px solid var(--line);scroll-margin-top:32px}.privacy-language{margin:0 0 10px;color:#6f6470;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.privacy-article .privacy-english>h2{margin:0 0 10px;font-size:clamp(30px,4vw,42px);line-height:1.3;letter-spacing:.02em}.privacy-english h3{margin:44px 0 12px;font-size:20px;line-height:1.5}.privacy-english p,.privacy-english li{font-family:Arial,"Helvetica Neue",sans-serif;line-height:1.8}.privacy-english .privacy-updated{margin:0 0 32px}
:root{--pink-ink:#b63b6b}.global-nav a:hover,.global-nav a[aria-current]{color:var(--pink-ink)}.contact{background:#f5f0ec}
