/* CURVE / airy blue, generous serif typography and a clear view of the artist. */
:root{--bg:#e9f2fb;--ink:#294d73;--blue:#386b9d;--muted:#6b839c;--line:#bacfe1;--lavender:#d5e4f5;--pink:#e6e3f1}
body{background:var(--bg);font-size:16px}
.review-bar{border-color:#cdddeb;color:#6686a7}
header{padding:30px 6%}
.brand>span{font-size:43px;color:#315c87}.brand>small{font-size:13px;color:#5e7e9f}
nav{font-size:15px;color:#446c93;gap:32px}
.organic-hero{padding:14px 5% 0}
.hero-role{font-size:20px;color:#456e96;letter-spacing:.12em;margin-bottom:20px}
.hero-role>span{color:#9bb9d7}
.hero-visual{height:450px;max-width:1160px}
.hero-photo{background:#d1dfec}
.hero-photo>img{object-position:center 42%}
.hero-photo:after{background:linear-gradient(0deg,rgba(18,40,64,.75),rgba(18,40,64,.14) 35%,transparent 62%)}
.hero-visual h1{color:#fff;font:400 clamp(44px,4.8vw,69px)/1.35 var(--jp);letter-spacing:.045em;bottom:25px;text-shadow:0 2px 20px #17324c2b}
.hero-flower{color:#7199c1;font-size:44px;top:8%;left:3%}
.dot-field{background-image:radial-gradient(#6b93bc 1px,transparent 1px);width:90px;height:160px;bottom:25px;right:-16px}
.hero-meta{max-width:1120px;margin-top:21px;padding:7px 0 12px}
.hero-meta p{font-size:22px}.hero-meta p>span{font-size:12px;color:#6986a4}
.hero-meta>a{font-size:15px}.hero-meta small{font-size:11px;color:#6b85a0}
.featured{padding-top:30px;padding-bottom:50px}
.featured-top>span{font-size:31px;color:#527da5}
.stage-banner{background:#f7fbff;border:1px solid #aec9e1;min-width:355px;max-width:355px;padding:15px 18px;border-radius:12px;grid-template-columns:105px 1fr;box-shadow:none}
.stage-banner img{height:auto;padding:0;background:none;border-radius:3px}
.stage-banner h3{font-size:17px;color:#355c80}
.stage-banner .banner-category{color:#6986a6}.stage-banner .banner-link{font-size:12px}
.section{padding:100px 8%}
.english-label{font-size:31px;color:#5b81aa}
.section-heading h2{font-size:104px;line-height:.9;color:#2a557f}
.section-heading h2 small{font-size:16px;color:#5c7fa2;letter-spacing:.09em}
.works-aside>p,.section-heading>p{font-size:16px;color:#587a9b}
.filters button{font-size:15px;color:#5e7e9f}.filters button[aria-pressed=true]{color:#294f76;border-color:#527ca5}
.work-caption h3{font-size:25px}.work-caption>span,.work-caption>p{color:#5f7d9b}.work-caption>p{font-size:15px}
.portrait-shell{background:#d2e2f3}.poster-inset{background:#f7fbff;border-radius:5px;box-shadow:0 5px 16px #294d7310}
.services{background:#dceaf7;border-radius:60px 60px 0 0}
.service-grid h3{font-size:28px}.service-grid p{font-size:16px;color:#537391}.service-grid small{color:#6b87a1}
.about{background:#e9f2fb}.about-portrait{background:#d4e4f4}.about-copy h2{font-size:39px}.about-copy>p:not(.about-role){font-size:16px;color:#527391}
.contact-shape{background:#cbdff2}.contact h2{font-size:46px}.contact p{font-size:16px;color:#567697}.contact a{border-color:#86accf;font-size:16px}.contact small{color:#6986a5}
footer{background:#d9e8f6;color:#537798}
dialog{background:var(--bg)}.dialog-bar{background:var(--bg);font-size:13px}.dialog-bar button{font-size:15px}
.project-poster{background:none;height:auto;padding:0;width:100%;max-width:410px;justify-self:center}.project-poster img{height:auto;object-fit:initial;border-radius:5px}
.project-info h2{font-size:32px}.project-info>p{font-size:15px;color:#6482a1}
.project-gallery{align-items:start}.project-gallery button{padding:0;background:none;border-radius:5px;overflow:hidden}.project-gallery img{height:auto;object-fit:initial}.project-gallery figcaption{font-size:12px;color:#6785a5}
.gallery-heading{font-size:14px;color:#5e7e9e}.gallery-heading span:last-child{font-size:12px}
@media(max-width:1050px){.hero-visual{height:480px}.hero-visual h1{font-size:59px}.section-heading h2{font-size:86px}.brand>span{font-size:38px}.hero-role{font-size:18px}.hero-meta p{font-size:20px}.hero-meta small{font-size:10px}}
@media(max-width:750px){header{padding:26px 6%}.brand>span{font-size:35px}.brand>small{font-size:12px}nav{font-size:13px;gap:20px}.organic-hero{padding:10px 4% 0}.hero-role{font-size:16px;letter-spacing:.065em;margin-bottom:20px}.hero-visual{height:500px}.hero-photo{inset:0}.hero-photo>img{object-position:39% center}.hero-photo:after{background:linear-gradient(0deg,#122e4ed4,rgba(18,40,64,.14) 42%,transparent 68%)}.hero-visual h1{font-size:46px;line-height:1.45;letter-spacing:.035em;bottom:35px;width:94%}.hero-flower{font-size:32px;left:3%;top:5%}.dot-field{width:35px;height:100px;right:-3px;bottom:20px}.hero-meta{margin:20px 3% 0;padding:0;gap:15px}.hero-meta p{font-size:21px}.hero-meta p>span{font-size:10px}.hero-meta>a{font-size:14px;gap:10px}.hero-meta small{font-size:10px;margin-top:0}.featured{padding:30px 6% 40px}.featured-top>span{font-size:29px}.stage-banner{min-width:310px;max-width:310px;grid-template-columns:92px 1fr;padding:13px 15px;gap:17px}.stage-banner img{height:auto}.stage-banner h3{font-size:16px}.stage-banner .banner-link{font-size:11px}.section{padding:65px 7%}.english-label{font-size:28px}.section-heading h2{font-size:84px}.section-heading h2 small{font-size:15px}.works-aside>p,.section-heading>p{font-size:15px}.filters button{font-size:14px}.work-art{height:390px}.work-caption h3{font-size:23px}.work-caption>p{font-size:14px}.services{border-radius:35px 35px 0 0}.service-grid h3{font-size:27px}.service-grid p{font-size:15px}.about-copy h2{font-size:34px}.about-copy>p:not(.about-role){font-size:15px}.contact h2{font-size:37px}.contact p{font-size:14px}.contact a{font-size:14px}.project-poster{height:auto;padding:0;max-width:350px}.project-info h2{font-size:27px}.project-info>p{font-size:14px}.project-gallery img{height:auto}.project-gallery figcaption{font-size:10px}.gallery-heading{font-size:12px}.gallery-heading span:last-child{font-size:11px}}
@media(max-width:390px){.brand>span{font-size:31px}.hero-role{font-size:14px}.hero-visual{height:455px}.hero-visual h1{font-size:39px}.hero-meta p>span{font-size:9px}.hero-meta>a{font-size:13px}.work-art{height:345px}}

.hero-photo>picture{display:block;width:100%;height:100%}.hero-photo>picture>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

@media(max-width:430px){header{gap:10px}.brand>span{font-size:28px;white-space:nowrap}nav{font-size:12px;gap:12px;white-space:nowrap;flex-shrink:0}.brand>small{font-size:11px}}
