/* L&P / editorial studio direction, informed by Inspo references. */
:root{--color-primary:#244b3d;--color-primary-dark:#143d2f;--color-secondary:#fff;--color-accent:#647b43;--color-bg:#f5f4ef;--color-surface:#fff;--color-text-main:#183c2f;--color-text-muted:#626b61;--color-border:#d5d9ce;--radius:2px;--radius-lg:4px;--radius-sm:2px;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--font-display:'Helvetica Neue','Noto Sans JP',sans-serif;--header-h:84px}
body{background:#f5f4ef;color:#183c2f}::selection{background:#d2f66d;color:#173b2e}.container{max-width:1440px;padding-inline:clamp(24px,4.4vw,72px)}.skip-link{position:fixed;top:-100px;left:24px;z-index:500;background:#173b2e;color:white;padding:12px}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #739a30;outline-offset:5px}.header{background:#f5f4ef;border-bottom:1px solid #d5d9ce;backdrop-filter:none}.header.is-scrolled{background:#f5f4ef;box-shadow:none}.logo__img{width:40px;height:40px;border-radius:50%;box-shadow:none}.logo__text{letter-spacing:.14em;font-size:12px}.nav__link{font-size:11px;letter-spacing:.08em}.nav__link--highlight::after{display:none}.nav__list{gap:24px}.nav__cta{font-size:12px!important;padding:12px 20px!important}.btn{border-radius:2px;box-shadow:none!important;font-weight:500;transition:background .2s,color .2s,transform .2s}.btn--primary{background:#214837}.btn--primary:hover{background:#315a43;transform:translateY(-2px)}.btn--secondary,.btn--outline{background:transparent;border-color:currentColor}.btn:hover{box-shadow:none}.eyebrow{font:500 11px var(--font-display);letter-spacing:.15em;color:#59694e}.eyebrow::before{display:none}.deco,.fab{display:none}.reveal{opacity:1;transform:none}.studio-hero{padding:calc(var(--header-h) + 26px) 0 0}.studio-kicker{display:flex;justify-content:space-between;font:500 10px var(--font-display);letter-spacing:.12em}.studio-kicker>span:first-child{display:flex;align-items:center;gap:10px}.studio-kicker i{height:7px;width:7px;border-radius:50%;background:#597b35}.studio-hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:6%;align-items:center;padding:30px 0 38px}.studio-index{font:500 10px var(--font-display);letter-spacing:.08em;margin-bottom:18px;color:#677265}.studio-hero h1{font-size:clamp(42px,5.35vw,79px);line-height:1.18;letter-spacing:-.065em;font-weight:500}.studio-hero h1 span{color:#597342}.studio-intro{font-size:12px;line-height:1.95;max-width:38em;margin:24px 0 26px;color:#5a665d}.studio-actions{display:flex;align-items:center;gap:25px}.studio-button{display:flex;justify-content:space-between;align-items:center;gap:32px;background:#d3f57c;color:#183c2f;padding:17px 23px;font-size:13px;font-weight:500;transition:background .2s}.studio-button:hover{background:#c1e867}.studio-button span{font-size:21px;line-height:1}.studio-text-link{font-size:12px;border-bottom:1px solid #74836b;padding-block:10px}.studio-text-link span{margin-left:13px}.studio-poster{position:relative;isolation:isolate;height:clamp(350px,36vw,485px);background:#204634;color:#edf0d9;overflow:hidden;padding:24px;display:flex;flex-direction:column;justify-content:space-between}.studio-poster:before{content:'';position:absolute;inset:0;z-index:-2;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#cad7ae18 25%),repeating-linear-gradient(0deg,transparent 0,transparent calc(25% - 1px),#cad7ae18 25%)}.poster-top{display:flex;justify-content:space-between;align-items:start;z-index:2}.poster-top>span:first-child{font:500 28px var(--font-display);letter-spacing:-.08em}.poster-top small{display:block;font-size:8px;letter-spacing:.2em;margin-top:4px}.poster-top>span:last-child{font:400 9px/1.6 var(--font-display);letter-spacing:.06em}.poster-amp{position:absolute;font-family:Georgia,serif;font-size:clamp(260px,31vw,440px);font-weight:400;line-height:1;left:15%;top:7%;letter-spacing:-.06em;color:#d8edbd;transform:rotate(-13deg);z-index:1}.poster-orbit{position:absolute;width:85%;height:56%;border:1px solid #b6d09266;border-radius:50%;left:7%;top:23%;transform:rotate(-35deg);z-index:0}.orbit-two{transform:rotate(55deg)}.poster-dot{position:absolute;width:18%;aspect-ratio:1;border-radius:50%;background:#d5f57b;right:11%;top:32%;mix-blend-mode:screen;z-index:2}.poster-caption{position:absolute;bottom:62px;left:25px;font-size:10px;line-height:1.9;letter-spacing:.08em;z-index:3}.poster-bottom{display:flex;align-items:center;justify-content:space-between;font:400 9px var(--font-display);letter-spacing:.1em;border-top:1px solid #8ca37680;padding-top:12px;z-index:3}.poster-bottom>span:last-child{font-size:25px}.studio-hero-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #c5ccbe;border-bottom:1px solid #c5ccbe;padding:19px 0;font:500 9px var(--font-display);letter-spacing:.08em}.studio-hero-foot>span:nth-child(2){font-size:10px;letter-spacing:.03em}.section{padding-block:clamp(80px,9vw,130px)}.section--alt{background:#edeee6}.section--dark{background:#1d3e31}.section-head{max-width:none;margin-bottom:45px;position:relative}.section-title{font-family:var(--font-jp);font-weight:500;font-size:clamp(25px,3.1vw,42px);letter-spacing:-.045em;margin-bottom:16px}.studio-section-display{font:400 clamp(40px,6.6vw,88px)/1.06 var(--font-display);letter-spacing:-.065em;margin-bottom:24px}.section-head .eyebrow{margin-bottom:12px}.section-head .section-desc{font-size:13px}.section-head:has(.studio-section-display) .section-title{font-size:20px}.works-grid{grid-template-columns:1.2fr 1fr;gap:44px 32px}.work-card{border:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible}.work-card:hover{box-shadow:none;transform:none}.work-card:first-child{grid-row:span 2}.work-card__img{height:240px;border-radius:2px;overflow:hidden;background:#e6e8db}.work-card:first-child .work-card__img{height:460px;background:#e0e5da}.work-card__img img{transition:transform .55s}.work-card__img--logo img{object-fit:contain;width:72%;height:72%;margin:auto}.work-card__img--logo{display:grid;place-items:center}.work-card:hover .work-card__img img{transform:scale(1.025)}.work-card__body{padding:22px 0;border-bottom:1px solid #c7cdbe}.work-card__body h3{font-weight:500;font-size:22px;margin-block:10px 18px}.work-card__tag{background:transparent;border:1px solid #a4b09b;border-radius:99px;font-size:10px;font-weight:500;padding:4px 12px}.work-card__flow{font-size:12px}.work-card__flow span{color:#4b694a}.work-card:not(:first-child) .work-card__flow{display:none}.work-card:not(:first-child) .work-card__body h3{margin-bottom:0}.pain{background:transparent;padding:36px 0;border-radius:0;border-block:1px solid #c7cdbe;box-shadow:none;display:grid;grid-template-columns:1fr 1fr;gap:40px}.pain:before{display:none}.pain__text{font-family:var(--font-jp);font-size:clamp(21px,2.7vw,34px);font-weight:400}.pain__desc{font-size:13px;line-height:2}.promise-grid{gap:32px;margin-top:48px}.promise-card{background:transparent;padding:28px 0;border:0;border-top:1px solid #c7cdbe;border-radius:0;box-shadow:none}.promise-card:hover{transform:none}.promise-card__icon{background:#e3e8d7;border-radius:50%}.promise-card h3{font-size:18px;font-weight:500}.promise-card p{font-size:13px}.service-grid{gap:0;grid-template-columns:repeat(3,1fr);border-top:1px solid #c7cdbe;border-left:1px solid #c7cdbe}.service-card{border:0;border-right:1px solid #c7cdbe;border-bottom:1px solid #c7cdbe;padding:36px 28px;border-radius:0;background:transparent;box-shadow:none;min-height:290px}.service-card:hover{transform:none;background:#e8ecd9}.service-card__num{position:static;display:block;font-size:13px;font-weight:400;color:#59694e;margin-bottom:30px}.service-card h3{font-size:18px;font-weight:500}.service-card__lead{color:#60704e;font-weight:500}.deliverables__mockup,.mockup{box-shadow:none}.tabs__btn{border-radius:0}.tabs__panel-grid{border-radius:0;box-shadow:none}.tabs__panel-body{background:#f5f4ef}.strength-grid{border-radius:0}.strength-item{padding:35px}.strength-item__num{color:#c9e992;font-size:14px}.price-grid{gap:12px}.price-card{border-radius:0;padding:28px 20px;box-shadow:none}.price-card:hover,.price-card--featured:hover{transform:none}.price-card--featured{background:#244b3d;border-color:#244b3d}.price-card__badge{background:#d3f57c;color:#183c2f;border-radius:0;font-weight:500}.price-card__note{color:#56733a}.price-card--featured .price-card__note{color:#d3f57c}.price-card--custom{background:transparent}.accordion__q{font-weight:500;padding-block:26px}.accordion__item.is-active .accordion__a{max-height:none}.instagram-card{background:#e5eadb;border:0;border-radius:0;box-shadow:none}.instagram-card__badge{background:#244b3d;border-radius:0}.cta-final{background:#1a3d2e;padding-block:100px}.cta-final:before{display:none}.cta-final__inner{max-width:none}.cta-final__title{font-weight:400;font-size:clamp(31px,5vw,66px);letter-spacing:-.04em}.cta-final__buttons{flex-direction:row;flex-wrap:wrap}.cta-final .btn--primary{background:#d3f57c;color:#183c2f}.cta-final .btn--secondary{color:white;border-color:#879e80}.contact-form{max-width:760px;background:transparent;border:1px solid #718368;border-radius:0}.contact-form input,.contact-form textarea,.contact-form select{border-radius:0}.footer{background:#102e23}.footer .logo__text{color:white}.toast{z-index:200}.studio-poster{animation:poster-in .7s ease-out both}@keyframes poster-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(min-width:1024px){.nav{gap:30px}.nav__list{gap:22px}}
@media(min-width:1500px){.studio-hero-grid{padding-block:40px}.studio-hero h1{font-size:78px}}
@media(max-width:1023px){.nav{background:#f5f4ef}.nav__list{gap:24px}.nav__link{font-size:16px}.studio-hero-grid{gap:4%}.studio-hero h1{font-size:clamp(40px,5.3vw,60px)}.studio-intro{font-size:11px}.studio-actions{gap:15px}.studio-button{padding:14px 17px;gap:22px}.service-grid{grid-template-columns:repeat(2,1fr)}.studio-hero-foot>span:nth-child(2){display:none}.works-grid{gap:30px}.work-card:first-child .work-card__img{height:400px}}
@media(max-width:640px){:root{--header-h:68px}.studio-hero{padding-top:calc(var(--header-h) + 22px)}.studio-kicker{font-size:8px;letter-spacing:.03em}.studio-kicker>span:last-child{display:none}.studio-hero-grid{grid-template-columns:1fr;padding-top:24px;padding-bottom:28px;gap:28px}.studio-index{font-size:8px;margin-bottom:15px}.studio-hero h1{font-size:clamp(42px,11.7vw,65px);line-height:1.2;letter-spacing:-.055em}.studio-intro{font-size:12px;margin:20px 0 22px}.studio-intro br{display:none}.studio-actions{gap:23px}.studio-button{font-size:12px;padding:15px 20px;gap:24px}.studio-poster{height:320px}.poster-amp{font-size:280px;top:2%;left:18%}.poster-top>span:first-child{font-size:24px}.poster-caption{bottom:60px;font-size:9px}.poster-dot{width:17%;right:15%}.studio-hero-foot{font-size:8px;letter-spacing:0;padding-block:18px;gap:10px}.studio-section-display{font-size:43px;margin-bottom:18px}.section-head{margin-bottom:30px}.works-grid{grid-template-columns:1fr;gap:32px}.work-card:first-child{grid-row:auto}.work-card:first-child .work-card__img{height:300px}.work-card__img{height:220px}.work-card__body{padding-block:18px}.work-card__body h3{font-size:19px}.work-card__flow{font-size:11px}.work-card:not(:first-child) .work-card__flow{display:block;margin-top:16px}.pain{grid-template-columns:1fr;gap:20px;padding-block:26px}.pain__text{font-size:22px}.promise-grid{gap:12px;margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:28px 24px}.service-card__num{margin-bottom:18px}.section-title{font-size:26px}.section-title .nowrap{white-space:normal}.tabs__btn{font-size:13px}.cta-final{padding-block:80px}.cta-final__buttons{flex-direction:column}.cta-final__mail{font-size:11px}.contact-form{padding:24px 18px}.price-card__num{font-size:32px}.accordion__q{font-size:14px}.accordion__a p{font-size:13px}.instagram-card__title{overflow-wrap:anywhere}.section-desc{font-size:13px}.footer__nav{gap:14px}.nowwrap{white-space:normal}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep the idle notification completely outside the visual and accessibility flow. */
.toast{visibility:hidden;opacity:0;transform:translateX(-50%) translateY(calc(100% + 30px))}.toast.is-active{visibility:visible;opacity:1;transform:translateX(-50%) translateY(0)}
.poster-amp{font-size:clamp(230px,26vw,360px);left:20%;top:10%}.poster-caption{display:none}
.field label span{background:#d3f57c;color:#183c2f}.footer__social a{color:#c6ddb2}
@media(max-width:640px){.poster-amp{font-size:245px;left:20%;top:6%}}

/* Future studio: luminous geometry, glass, and restrained kinetic depth. */
:root{--color-bg:#f2f7f2;--color-border:#cbded1}
body{background:#f2f7f2}
.header,.header.is-scrolled{background:rgba(246,251,246,.84);backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3);border-bottom:1px solid #b8d3c375}
.studio-hero{position:relative;isolation:isolate;background:radial-gradient(ellipse at 82% 20%,#c1efda70,transparent 53%),linear-gradient(130deg,#f7faf5,#edf5ef)}
.studio-hero:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background-image:radial-gradient(#326e5125 .65px,transparent .65px);background-size:22px 22px;mask-image:linear-gradient(90deg,transparent 20%,#000);-webkit-mask-image:linear-gradient(90deg,transparent 20%,#000)}
.studio-kicker{color:#285f46}.studio-kicker i{background:#57973d;box-shadow:0 0 0 4px #79c25a16,0 0 16px #8fdd67}
.studio-index{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;letter-spacing:.07em}
.studio-hero h1{font-weight:500;letter-spacing:-.06em}.studio-hero h1 span{background:linear-gradient(100deg,#214d36 0%,#54863c 55%,#389571 100%);background-clip:text;-webkit-background-clip:text;color:transparent}
.studio-button{position:relative;overflow:hidden;background:#c8fa81;border:1px solid #78b64a70;box-shadow:inset 0 1px #ffffffb0,0 5px 25px #90be6930;border-radius:4px}.studio-button:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,#ffffff7a 48%,transparent 75%);transform:translateX(-110%);transition:transform .6s ease}.studio-button:hover:after{transform:translateX(110%)}.studio-button:hover{background:#c5f987}.studio-button span{position:relative;z-index:1}.studio-text-link:hover{color:#2b8556}
.studio-poster{background:radial-gradient(ellipse at 45% 50%,#1d563f 0%,#103a2c 30%,#071f1b 72%);border:1px solid #96d9ab80;border-radius:8px;box-shadow:0 24px 60px -36px #143f33b0,inset 0 0 50px #83d6a010;perspective:1000px;animation:none;transform-style:preserve-3d;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .45s ease-out}
.studio-poster:before{inset:0;z-index:-1;background:linear-gradient(90deg,#a6ecb90d 1px,transparent 1px),linear-gradient(#a6ecb90d 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse,#000,transparent 85%)}
.studio-poster:after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(125deg,#cdffe712,transparent 35%,transparent 65%,#97ffca0b);box-shadow:inset 0 1px #dcffef30;z-index:5}
.poster-top,.poster-bottom{color:#c2dfd0}.poster-top>span:last-child,.poster-bottom{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.poster-top>span:first-child{letter-spacing:-.075em}.poster-top small{letter-spacing:.28em}.poster-bottom{border-top-color:#6abb8d45}
.poster-amp{background:linear-gradient(135deg,#7ea891 8%,#e5fff3 23%,#aaf8c4 35%,#518d6a 45%,#ddfff0 52%,#c1ffc2 63%,#53825e 82%);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 0 26px #8affe22b);z-index:2;animation:future-float 9s ease-in-out infinite;will-change:transform}
.poster-orbit{left:8%;top:22%;width:84%;height:56%;border-color:#9ae7be60;box-shadow:0 0 14px #8efabb10,inset 0 0 12px #8efabb08;animation:future-orbit 28s linear infinite;transform:rotate(-35deg)}
.orbit-two{height:69%;width:68%;left:16%;top:15%;border-color:#c5ff9380;animation:future-orbit-reverse 35s linear infinite}
.poster-orbit:after{content:'';position:absolute;left:14%;top:11%;width:5px;height:5px;background:#deffca;border-radius:50%;box-shadow:0 0 12px #a1ffad}
.poster-dot{width:13%;top:33%;right:13%;background:radial-gradient(circle at 33% 27%,#efffda,#bdfa91 35%,#67b978 74%,#398f64);box-shadow:0 0 40px #b0ff7840,inset -5px -7px 15px #2e9e6a60;mix-blend-mode:normal;animation:future-satellite 11s ease-in-out infinite}
.future-cross{position:absolute;width:14px;height:14px;z-index:4;opacity:.8}.future-cross:before,.future-cross:after{content:'';position:absolute;background:#b2eac8}.future-cross:before{height:1px;width:14px;top:6px}.future-cross:after{width:1px;height:14px;left:6px}.future-cross--a{left:20px;top:23%}.future-cross--b{right:20px;bottom:23%}
.future-ring{position:absolute;left:50%;top:49%;width:61%;aspect-ratio:1;border-radius:50%;border:1px dashed #89c8a32b;transform:translate(-50%,-50%);z-index:0}.future-ring:after{content:'';position:absolute;inset:12px;border:1px solid #8de6b31c;border-radius:50%}
.studio-hero-foot{border-color:#b6d2be;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.studio-hero-foot a{color:#3b7154}.studio-section-display{letter-spacing:-.065em}.section--alt{background:#e9f1eb}.section--dark,.cta-final{background:radial-gradient(ellipse at 100% 10%,#275b40,#0d3026 66%)}
.work-card__img{border-radius:7px;border:1px solid #b4cebc}.work-card:first-child .work-card__img{background:radial-gradient(ellipse at 50% 40%,#eef9f0,#d5e6d8)}.work-card__tag{background:#ffffff65;backdrop-filter:blur(12px);border-color:#a6c3ae}.work-card__body{border-color:#b8cfbe}
.service-grid{border-color:#bcd4c5}.service-card{position:relative;border-color:#bcd4c5;background:#ffffff18;transition:background .3s}.service-card:hover{background:#efffe9}.service-card:after{content:'';position:absolute;right:13px;top:13px;width:9px;height:9px;border-top:1px solid #7da98c;border-right:1px solid #7da98c}.service-card__num{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.price-card{background:#ffffffa8;border-color:#c3d8c8;border-radius:5px}.price-card--featured{background:linear-gradient(150deg,#2e6445,#11372b);border-color:#72b287;box-shadow:0 12px 32px #12482b12}.price-card__badge{background:#c8fa81}.tabs__panel-grid{border-radius:6px}.instagram-card{background:linear-gradient(120deg,#e3efe2,#d6eadc);border:1px solid #bad7c3;border-radius:6px}.contact-form{background:#ffffff05;border-color:#8cba9455;border-radius:6px}.footer{background:#08261e}
@keyframes future-float{0%,100%{transform:translateY(0) rotate(-13deg)}50%{transform:translateY(-10px) rotate(-10deg)}}
@keyframes future-orbit{from{transform:rotate(-35deg)}to{transform:rotate(325deg)}}
@keyframes future-orbit-reverse{from{transform:rotate(55deg)}to{transform:rotate(-305deg)}}
@keyframes future-satellite{0%,100%{transform:translate(0,0)}50%{transform:translate(-8px,12px)}}
@media(max-width:1023px){.nav{background:#f2f8f3}.studio-poster{transform:none}}
@media(prefers-reduced-motion:reduce){.poster-amp,.poster-dot,.poster-orbit{animation:none!important;will-change:auto}.studio-poster{transform:none!important;transition:none!important}}
/* Actual artwork replaces the illustrative placeholders. */
#deliverables{background:linear-gradient(125deg,#edf4ee,#dfece4)}
.deliverables{gap:56px}.deliverables__text{min-width:0}.deliverables__note{border-radius:3px;background:#1b4735;font-weight:500;font-size:12px}.deliverables__note svg{color:#c8fa81}.deliverable-list li{font-size:13px;font-weight:500}.deliverable-list__icon{border-radius:4px;background:#ffffff80}
.design-showcase{width:100%;min-width:0;background:#102f27;border:1px solid #8caf9a;border-radius:8px;color:#c5e5cf;box-shadow:0 30px 60px -40px #193d2fc0;overflow:hidden}
.showcase-heading,.showcase-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 24px;padding:20px 0;font:400 9px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.showcase-heading{border-bottom:1px solid #93bba02c}.showcase-footer{border-top:1px solid #93bba02c;font-family:var(--font-jp);font-size:10px;letter-spacing:0}
.showcase-stage{position:relative;aspect-ratio:1.09;isolation:isolate;background:radial-gradient(ellipse at 42% 35%,#3c6a4555,transparent 65%)}.showcase-grid{position:absolute;inset:0;background-image:linear-gradient(#c7ebcf0b 1px,transparent 1px),linear-gradient(90deg,#c7ebcf0b 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse,#000,transparent 80%);z-index:-1}
.showcase-piece{position:absolute;display:block;padding:0;background:#f5f7ef;border:1px solid #b9ceb9;border-radius:5px;overflow:hidden;box-shadow:6px 18px 28px #00000040;text-align:left;transition:transform .35s,box-shadow .35s;cursor:zoom-in}.showcase-piece img{display:block;width:100%;height:auto}.piece-label{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;color:#405a49;background:#f5f7ef;font:500 8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em}.piece-label>span:last-child{font-size:12px}.showcase-piece--ad{left:6%;top:9%;width:58%;transform:rotate(-7deg);z-index:1}.showcase-piece--card{right:5%;top:17%;width:30%;transform:rotate(8deg);z-index:2}.showcase-piece--card .piece-label{background:#202722;color:#d2ddc7;border-bottom:1px solid #556746}.showcase-piece--web{width:58%;left:13%;bottom:6%;transform:rotate(-2deg);z-index:3}.window-dots{font-size:6px;color:#73927a;letter-spacing:2px}.showcase-piece:hover{transform:translateY(-8px) rotate(0);box-shadow:8px 25px 38px #00000060;z-index:5}.showcase-piece:focus-visible{outline:3px solid #c8fa81;outline-offset:5px;z-index:5}
.artwork-dialog{padding:0;background:#f3f7f0;color:#173f30;border:1px solid #92b7a0;border-radius:9px;max-width:min(1100px,94vw);width:max-content;max-height:94dvh;overflow:auto;margin:auto;box-shadow:0 25px 100px #0007}.artwork-dialog::backdrop{background:#061c15d9;backdrop-filter:blur(10px)}.artwork-dialog__bar{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 20px;background:#f3f7f0f5;border-bottom:1px solid #b5cbbb;z-index:1}.artwork-dialog__bar p{font-size:12px}.artwork-close{font-size:12px;white-space:nowrap;padding:8px 10px;border:1px solid #849d89;border-radius:3px}.artwork-dialog>img{display:block;max-width:100%;width:auto;height:auto;max-height:calc(90dvh - 75px);object-fit:contain;margin:auto}
@media(min-width:1024px){.deliverables__text{flex:0 1 40%}.design-showcase{flex:1 1 60%}.deliverable-list{grid-template-columns:1fr}.deliverable-list li{padding-block:10px}.deliverables .section-title{font-size:34px}.deliverables .section-title .nowrap{white-space:normal}}
@media(max-width:1023px){.design-showcase{max-width:650px;margin-inline:auto}}
@media(max-width:640px){.showcase-heading,.showcase-footer{margin-inline:15px;padding-block:15px;font-size:8px}.showcase-heading>span:last-child{font-size:7px}.showcase-stage{aspect-ratio:.93}.piece-label{font-size:6px;padding:6px}.piece-label>span:last-child{font-size:9px}.showcase-piece--ad{left:5%;top:10%;width:62%}.showcase-piece--card{right:4%;top:20%;width:31%}.showcase-piece--web{left:9%;bottom:9%;width:65%}.showcase-footer{font-size:8px}.artwork-dialog__bar{gap:12px;padding:10px}.artwork-dialog__bar p{font-size:10px}.artwork-close{font-size:10px}}
@media(prefers-reduced-motion:reduce){.showcase-piece{transition:none}.showcase-piece:hover{transform:none}}

/* Readable type and intentional Japanese phrase wrapping. */
.text-unit{display:inline-block}
.studio-intro{font-size:15px;line-height:1.9;max-width:38em}
.studio-intro-detail{display:block;margin-top:8px}
.section-title{line-height:1.55;letter-spacing:-.025em;text-wrap:balance}
.section-head:has(.studio-section-display) .section-title{font-size:clamp(23px,2.2vw,30px)}
.studio-section-display{font-size:clamp(36px,5.8vw,76px);line-height:1.12;text-wrap:balance;overflow-wrap:normal}
.section-head .section-desc,.section-desc,.pain__desc,.promise-card p,.work-card__flow div,.accordion__a p,.deliverable-list li{font-size:15px;line-height:1.9}
.service-card h3,.work-card__body h3,.strength-item h3{line-height:1.6;text-wrap:balance}
.studio-text-link,.studio-button{font-size:14px}
.studio-button,.studio-text-link{flex-shrink:0}
.instagram-card__title{color:#183c2f}.instagram-card__desc{color:#465e50}
@media(min-width:1024px){.nav__link{font-size:12px}.nav__list{gap:16px}.nav{gap:20px}}
@media(max-width:1023px) and (min-width:641px){.studio-hero-grid{grid-template-columns:1.1fr 1fr}.studio-actions{flex-wrap:wrap}.studio-poster{min-width:0}.studio-intro{font-size:14px}}
@media(max-width:640px){
  .studio-intro{font-size:14px;line-height:1.95}
  .studio-section-display{font-size:clamp(32px,9vw,48px);letter-spacing:-.045em}
  .studio-actions{gap:16px;flex-wrap:wrap}
  .studio-button{padding:15px 18px;gap:20px}
  .section-head .section-desc,.section-desc,.pain__desc,.promise-card p,.work-card__flow div,.accordion__a p,.deliverable-list li{font-size:14px}
  .pain__text{font-size:20px;line-height:1.8;text-wrap:pretty}
  .pain__desc br,.cta-final__desc br{display:none}
  .section-title .nowrap{display:inline-block;white-space:normal}
  .cta-final__title{font-size:clamp(23px,6.4vw,38px);line-height:1.65}
  .studio-index,.studio-kicker{font-size:10px}
  .studio-hero-foot{flex-wrap:wrap;font-size:9px}
}

/* Neutral sans-serif typography. */
:root{--font-jp:"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP",sans-serif;--font-display:"Helvetica Neue",Arial,"Hiragino Sans",sans-serif}
.studio-section-display{letter-spacing:-.035em;font-weight:400}
.studio-hero h1{letter-spacing:-.045em}

/* Strong colour rhythm: forest / lime / white / cobalt. */
:root{--color-bg:#fff;--color-text-main:#102b24;--color-text-muted:#49574f;--color-primary:#123b2d;--color-primary-dark:#102b24;--color-accent:#315fc0;--color-border:#a8b6ae}
body{background:#fff;color:#102b24}
.header,.header.is-scrolled{background:#fff;border-bottom:1px solid #102b24;backdrop-filter:none}
.studio-hero{background:#0b2d23;color:#fff}
.studio-hero:before{background-image:radial-gradient(#d5ff542b .7px,transparent .7px)}
.studio-hero h1{color:#fff}.studio-hero h1 span{color:#d5ff54}
.studio-kicker,.studio-index{color:#cfdfd5}.studio-kicker i{background:#d5ff54}
.studio-intro{color:#e0e9e3}
.studio-hero .studio-text-link{color:#fff;border-color:#91af9d}
.studio-poster{background:radial-gradient(ellipse at 65% 35%,#22684d,#071f18 75%);border:1px solid #608c72;box-shadow:none}
.studio-hero-foot{color:#d2e2d8;border-color:#5b7b69}.studio-hero-foot a{color:#d5ff54}
.studio-button{background:#d5ff54;color:#102b24;border-color:#d5ff54;box-shadow:none}
.studio-button:hover{background:#e5ff9c}
#works,#service,#price,#faq{background:#fff}
.eyebrow{color:#214bba}.studio-section-display{color:#102b24}
.work-card__img,.work-card:first-child .work-card__img{background:#e5ebff;border-color:#8da5d3}
.work-card__body{border-color:#71847a}.work-card__tag{background:#214bda;border-color:#214bda;color:#fff}
.work-card__flow span{color:#fff;background:#123b2d}
#about{background:#123b2d;color:#fff}
#about .studio-section-display,#about .section-title,#about .pain__text,#about .promise-card h3{color:#fff}
#about .eyebrow{color:#d5ff54}
#about .pain__desc,#about .promise-card p{color:#e0e9e3}
#about .pain,#about .promise-card{border-color:#678b78}
#about .promise-card__icon{background:#d5ff54;color:#102b24}
#target,#flow,#note{background:#f0f2f5}
.tabs__panel-body{background:#fff}.tabs__btn{border-color:#7d9084;color:#213b2e}.tabs__btn.is-active{background:#123b2d;color:#fff}
.service-grid{gap:14px;border:0}.service-card{border:1px solid #8e9d95;background:#fff;border-top:4px solid #123b2d}
.service-card:nth-child(3n + 2){border-top-color:#214bda;background:#f1f4ff}
.service-card:nth-child(3n){border-top-color:#a1be24;background:#f4fadf}
.service-card:hover{background:#e8f0db}.service-card__num{color:#214bba}.service-card__lead{color:#355938}
#deliverables{background:#214bda;color:#fff}
#deliverables .section-title,#deliverables .deliverable-list li{color:#fff}
#deliverables .eyebrow{color:#e1ff81}
#deliverables .deliverable-list__icon{background:#fff;color:#214bda}
#deliverables .deliverables__note{background:#102b24;color:#fff}
#deliverables .design-showcase{border-color:#97b1ff}
#strength{background:#0b1e32;color:#fff}
#strength .studio-section-display,#strength .section-title{color:#fff}
#strength .eyebrow,.strength-item__num{color:#d5ff54}.strength-item p{color:#d7e1ec}
.price-card{background:#fff;border-color:#8e9d95}.price-card--featured{background:#123b2d;border-color:#123b2d}
.price-card--featured .price-card__note,.price-card--featured .price-card__list li::before{color:#d5ff54}
.price-card--featured .btn{background:#d5ff54;color:#102b24;border-color:#d5ff54}
.price-card__badge{background:#d5ff54}.price-card__note{color:#254fae}
.instagram-section{background:#fff}.instagram-card{background:#214bda;border:0;color:#fff}
.instagram-card__title{color:#fff}.instagram-card__desc{color:#e5ebff}.instagram-card__badge{background:#d5ff54;color:#102b24}
.instagram-card__btn{background:#fff;color:#153da9;border-color:#fff}
.accordion__item{border-color:#9fada5}.accordion__q{color:#102b24}
.cta-final{background:#123b2d;color:#fff}.cta-final__desc{color:#dce8df}
.cta-final .btn--primary{background:#d5ff54;color:#102b24}
.footer{background:#071b15}.footer__brand p,.footer__bottom{color:#aebfb4}
@media(max-width:1023px){.nav{background:#fff}}
#deliverables .section-desc{color:#eef2ff}
#deliverables .deliverable-list li{border-color:#a3b8ff}
#about .section-desc{color:#e0e9e3}
