@import 'tailwindcss';

:root{--ink:#173b35;--deep:#0d2b25;--paper:#f4f1e9;--white:#fff;--lime:#d9ee86;--sand:#dbcab0;--blue:#b8d7da;--line:rgba(23,59,53,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif}body::before{content:"";position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.045;background-image:radial-gradient(rgba(20,45,38,.75) .55px,transparent .7px);background-size:4px 4px;mix-blend-mode:multiply}main{overflow:clip}a{color:inherit;text-decoration:none}button{font:inherit}.section-shell{padding-inline:8vw}.section-index,.eyebrow{font-size:11px;line-height:1.3;letter-spacing:.18em;font-weight:700}.reveal{opacity:0;transform:translateY(38px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}
.page-intro{position:fixed;inset:0;z-index:200;display:grid;place-items:center;background:var(--paper);pointer-events:none;animation:introLeave 1.3s 1.1s ease forwards}.page-intro img{width:min(380px,70vw);height:auto}.scroll-progress{position:fixed;z-index:90;inset:0 0 auto;height:3px;background:var(--lime);transform:scaleX(0);transform-origin:left center;will-change:transform}.cursor-orb{position:fixed;z-index:80;left:-18px;top:-18px;width:36px;height:36px;border:1px solid rgba(217,238,134,.72);border-radius:50%;pointer-events:none;mix-blend-mode:difference;transition:width .2s,height .2s;margin:-18px 0 0 -18px;will-change:transform}

.site-header{position:fixed;inset:0 0 auto;z-index:50;height:92px;display:flex;align-items:center;justify-content:space-between;padding:18px 34px;pointer-events:none}.logo-link,.header-actions{pointer-events:auto}.logo-link{position:relative;z-index:60;display:block;width:250px;padding:8px 12px;background:rgba(243,241,233,.9);border:1px solid rgba(255,255,255,.35);border-radius:2px;backdrop-filter:blur(12px);box-shadow:0 10px 35px rgba(11,39,33,.08);transform-origin:left top;transform:scale(var(--logo-scale,1));transition:background .45s ease,box-shadow .45s ease,border-radius .45s ease}.logo-link::after{content:"";position:absolute;inset:-5px;border:1px solid rgba(217,238,134,0);border-radius:5px;transition:.5s ease}.site-header.is-scrolled .logo-link{background:rgba(243,241,233,.96);border-radius:8px;box-shadow:0 14px 40px rgba(11,39,33,.16)}.site-header.is-scrolled .logo-link::after{inset:-9px;border-color:rgba(217,238,134,.55)}.logo-link img{width:100%;height:auto;display:block}.header-actions{display:flex;align-items:center;gap:10px}.header-contact{padding:17px 24px;border-radius:100%;background:rgba(243,241,233,.9);font-size:12px;font-weight:700;backdrop-filter:blur(12px)}.menu-button{position:relative;z-index:60;width:78px;height:52px;border:0;border-radius:100%;background:var(--lime);color:var(--ink);cursor:pointer;font:700 11px/1 sans-serif;letter-spacing:.12em;box-shadow:0 0 0 0 rgba(217,238,134,.35);transition:transform .35s ease,box-shadow .35s ease}.menu-button:hover{transform:rotate(-3deg) scale(1.06);box-shadow:0 0 0 10px rgba(217,238,134,.16)}.menu-button i,.menu-button i::after{content:"";position:absolute;left:28px;width:22px;height:1px;background:currentColor;transition:transform .4s ease,top .4s ease}.menu-button i{top:32px}.menu-button i::after{top:5px;left:0}.menu-button[aria-expanded="true"] i{top:34px;transform:rotate(45deg)}.menu-button[aria-expanded="true"] i::after{top:0;transform:rotate(-90deg)}
.menu-overlay{position:fixed;inset:0;z-index:40;display:grid;grid-template-columns:minmax(300px,42vw) minmax(420px,1fr);gap:7vw;align-items:center;padding:8vh 7vw 6vh;background:radial-gradient(circle at 78% 22%,rgba(142,177,118,.22),transparent 28%),radial-gradient(circle at 12% 78%,rgba(111,153,147,.16),transparent 34%),var(--deep);color:#fff;opacity:0;visibility:hidden;clip-path:circle(0 at calc(100% - 72px) 46px);transition:clip-path .85s cubic-bezier(.77,0,.18,1),opacity .3s ease,visibility .85s}.menu-overlay.is-open{opacity:1;visibility:visible;clip-path:circle(150% at calc(100% - 72px) 46px)}.menu-overlay::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 44%,rgba(255,255,255,.035) 44.1% 44.4%,transparent 44.5% 100%)}.menu-ghost{position:absolute;left:-.02em;bottom:-.12em;font:500 clamp(100px,18vw,290px)/.8 "Times New Roman",serif;letter-spacing:-.075em;color:rgba(255,255,255,.025);pointer-events:none}.menu-plus{position:absolute;right:4vw;top:7vh;font:200 clamp(120px,18vw,250px)/1 sans-serif;color:rgba(217,238,134,.075);animation:plusFloat 7s ease-in-out infinite}.menu-preview{position:relative;z-index:1;aspect-ratio:4/5;overflow:hidden;border-radius:46% 46% 5px 5px;box-shadow:0 45px 90px rgba(2,18,14,.38);transform:translateX(-40px) rotate(-2deg);opacity:0;transition:.8s .18s cubic-bezier(.2,.7,.2,1)}.menu-overlay.is-open .menu-preview{transform:none;opacity:1}.menu-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,30,24,.62),transparent 55%);pointer-events:none}.menu-preview img{object-fit:cover;filter:saturate(.72) contrast(1.06);animation:menuImageIn .75s ease both}.menu-preview p{position:absolute;z-index:2;left:28px;bottom:24px;margin:0;font:500 18px/1.4 "Times New Roman",serif;letter-spacing:.08em}.menu-preview p small{display:block;margin-bottom:4px;font:700 8px/1 sans-serif;letter-spacing:.2em;color:var(--lime)}.menu-main{position:relative;z-index:2}.menu-kicker{margin:0 0 5vh;font-size:10px;letter-spacing:.2em;color:rgba(255,255,255,.52)}.menu-overlay nav{display:grid}.menu-overlay nav a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.17);padding:14px 0;color:rgba(255,255,255,.72);transform:translateY(24px);opacity:0;transition:opacity .5s calc(.24s + var(--delay)) ease,transform .6s calc(.24s + var(--delay)) cubic-bezier(.2,.7,.2,1),color .25s ease,padding-left .3s ease}.menu-overlay.is-open nav a{transform:none;opacity:1}.menu-overlay nav a:hover,.menu-overlay nav a:focus-visible{color:#fff;padding-left:12px}.menu-overlay nav a small{font:600 9px/1 sans-serif;color:var(--lime)}.menu-overlay nav a>span{font:500 clamp(26px,3.2vw,52px)/1.08 "Yu Mincho",serif}.menu-overlay nav a em{display:inline-block;margin-left:16px;font:500 8px/1 sans-serif;letter-spacing:.16em;color:rgba(255,255,255,.38);font-style:normal}.menu-overlay nav a b{font:300 22px/1 sans-serif;transition:transform .3s ease}.menu-overlay nav a:hover b{transform:rotate(-45deg)}.menu-address{margin:4vh 0 0;text-align:right;font-size:12px;line-height:1.8;color:rgba(255,255,255,.65)}.menu-address small{font-size:8px;letter-spacing:.16em;color:var(--lime)}
.logo-link,.site-header.is-scrolled .logo-link{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}.logo-link::after,.site-header.is-scrolled .logo-link::after{inset:18% -8%;z-index:-1;border:0;border-radius:50%;background:rgba(13,43,37,.28);filter:blur(20px);opacity:0}.site-header.is-dark .logo-link::after,.site-header.menu-open .logo-link::after{opacity:.62}.logo-link img{transition:filter .55s ease,opacity .55s ease}.site-header.is-dark .logo-link img,.site-header.menu-open .logo-link img{filter:brightness(0) invert(1) drop-shadow(0 3px 14px rgba(0,0,0,.2))}.menu-preview-media{position:absolute;inset:0}.menu-preview.image .menu-preview-media>img{object-fit:cover;filter:saturate(.72) contrast(1.06);animation:menuImageIn .75s ease both}.menu-mosaic{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:3px;background:var(--deep)}.menu-mosaic span{position:relative;overflow:hidden}.menu-mosaic img{object-fit:cover;filter:saturate(.68) contrast(1.08);animation:menuImageIn .75s ease both}.menu-mosaic span:nth-child(2) img,.menu-mosaic span:nth-child(3) img{animation-delay:.08s}.menu-brand{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:11%;overflow:hidden;background:var(--paper);color:var(--ink)}.menu-brand>span{position:absolute;right:-.12em;top:-.2em;font:200 clamp(180px,26vw,390px)/1 sans-serif;color:rgba(23,59,53,.055)}.menu-brand img{position:relative;width:100%;height:auto;object-fit:contain;filter:none}.menu-brand small{position:relative;margin-top:24px;font:700 8px/1 sans-serif;letter-spacing:.18em}

.hero{position:relative;min-height:100svh;overflow:hidden;color:#fff;background:var(--deep)}.hero::after{content:"";position:absolute;inset:0;z-index:1;box-shadow:inset 0 0 130px rgba(9,28,24,.24);pointer-events:none}.hero-image{position:absolute;inset:-80px 0 0}.hero-image img{object-fit:cover;object-position:center;transform:translateY(var(--hero-shift,0px)) scale(1.035);animation:heroMove 18s ease-out both;filter:saturate(.78) contrast(1.04)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,43,37,.78),rgba(13,43,37,.06) 62%),linear-gradient(0deg,rgba(13,43,37,.44),transparent 48%)}.hero-copy{position:relative;z-index:2;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:140px 7vw 10vh}.hero h1{margin:20px 0 24px;font:500 clamp(44px,7.2vw,106px)/1.06 "Yu Mincho",serif;letter-spacing:-.045em;text-shadow:0 4px 24px rgba(6,24,20,.15)}.hero h1 span{display:block;opacity:0;transform:translateY(24px);animation:revealHero .9s 1.45s forwards}.hero h1 span+span{animation-delay:1.65s}.hero-copy>p:last-child{max-width:640px;font-size:clamp(14px,1.2vw,18px);line-height:2;opacity:0;animation:revealHero .8s 1.9s forwards}.hero-aside{position:absolute;z-index:3;right:7vw;top:48%;display:grid;gap:8px;transform:translateY(-50%)}.hero-aside span{display:block;padding:7px 11px;border:1px solid rgba(255,255,255,.36);font:700 9px/1 sans-serif;letter-spacing:.18em;background:rgba(13,43,37,.12);backdrop-filter:blur(4px)}.scroll-cue{position:absolute;z-index:3;right:38px;bottom:34px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em}.scroll-cue span{margin-top:12px}

.philosophy{position:relative;min-height:90vh;display:grid;grid-template-columns:1fr 2fr;gap:8vw;align-items:center}.philosophy::after{content:"＋";position:absolute;right:-.03em;bottom:-.28em;font:300 36vw/1 sans-serif;color:rgba(23,59,53,.035);pointer-events:none}.philosophy h2,.services-intro h2{margin:0 0 36px;font:500 clamp(42px,6vw,86px)/1.2 "Yu Mincho",serif;letter-spacing:-.04em}.philosophy-copy>p{max-width:700px;font-size:clamp(16px,1.35vw,20px);line-height:2.15}.philosophy-copy>p+p{margin-top:20px}.marquee{overflow:hidden;padding:20px 0;border-block:1px solid var(--line);background:var(--paper)}.marquee>div{display:flex;width:max-content;gap:34px;align-items:center;animation:marqueeMove 28s linear infinite;font:500 clamp(32px,5vw,72px)/1 "Times New Roman",serif;letter-spacing:.03em}.marquee i{color:#9db534;font-style:normal}.services-intro{padding-top:130px;padding-bottom:90px;background:var(--deep);color:#fff}.services-intro h2{margin:30px 0 0}

.service-section{position:relative;min-height:100vh;display:grid;grid-template-columns:58% 42%;background:#fff;isolation:isolate}.service-section.reverse{grid-template-columns:42% 58%}.service-section.reverse .service-photo{order:2}.service-section.reverse .service-copy{order:1}.service-watermark{position:absolute;z-index:2;left:4vw;top:7vh;max-width:92vw;overflow:hidden;white-space:nowrap;font:500 clamp(70px,11vw,190px)/.85 "Times New Roman",serif;letter-spacing:-.04em;color:rgba(255,255,255,.48);mix-blend-mode:overlay;pointer-events:none}.service-section.reverse .service-watermark{left:auto;right:4vw}.service-photo{position:relative;min-height:720px;overflow:hidden;transform:translateY(0);clip-path:inset(0 0 100% 0);transition:clip-path 1.15s cubic-bezier(.2,.7,.2,1),opacity .6s ease}.service-photo.is-visible{clip-path:inset(0)}.service-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,43,37,.05),transparent 52%,rgba(217,238,134,.08));pointer-events:none}.service-photo img{object-fit:cover;filter:saturate(.86) contrast(1.02);transition:transform 1.5s cubic-bezier(.2,.7,.2,1),filter .8s ease}.service-section:hover .service-photo img{transform:scale(1.025);filter:saturate(.98) contrast(1.02)}.service-copy{position:relative;overflow:hidden;padding:9vw 7vw;display:flex;flex-direction:column;justify-content:center}.service-orbit{position:absolute;right:-22px;top:10%;width:clamp(112px,12vw,180px);aspect-ratio:1;border-radius:50%;overflow:visible;opacity:0;transform:translate(35px,-12px) scale(.72);transition:opacity .9s .35s ease,transform 1.1s .35s cubic-bezier(.2,.7,.2,1)}.service-copy.is-visible .service-orbit{opacity:1;transform:none}.service-orbit::before,.service-orbit::after{content:"";position:absolute;z-index:2;inset:-12px;border:1px solid rgba(23,59,53,.24);border-radius:50%;animation:orbitSpin 14s linear infinite}.service-orbit::after{inset:-25px;border-style:dashed;animation-direction:reverse;animation-duration:22s}.service-orbit img{object-fit:cover;border-radius:50%;filter:saturate(.7) contrast(1.08);transition:transform .8s ease}.service-section:hover .service-orbit img{transform:scale(1.09) rotate(2deg)}.service-orbit span{position:absolute;z-index:3;right:-17px;bottom:5px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--lime);font-size:22px;animation:plusPulse 3.6s ease-in-out infinite}.service-number{margin:52px 0 18px;font:500 78px/1 "Times New Roman",serif;color:var(--lime)}.service-copy h2{position:relative;z-index:2;margin:0 0 30px;max-width:85%;font:500 clamp(45px,5.6vw,78px)/1.12 "Yu Mincho",serif;letter-spacing:-.04em}.service-copy>p:not(.section-index):not(.service-number){position:relative;z-index:2;max-width:540px;line-height:2}.service-copy .availability{padding:15px 18px;border-left:3px solid var(--lime);background:rgba(217,238,134,.18);font-size:14px}.service-copy>a{position:relative;z-index:2;margin-top:38px;width:max-content;padding:12px 54px 12px 0;font-weight:700}.service-copy>a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:right;transition:transform .35s ease}.service-copy>a:hover::after{transform:scaleX(.35)}.service-copy>a span{margin-left:18px}.care .service-copy{background:#f4f1e8}.auto .service-copy{background:#dce8df}.support .service-copy{background:#e6eef2}.home .service-copy{background:#f2e8d9}.renovation .service-copy{background:#e7e1d4}.property .service-copy{background:#dfe8db}
.service-copy::before{content:"";position:absolute;inset:auto -22% -35% auto;width:72%;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 20px,rgba(23,59,53,.055) 20px 21px);pointer-events:none}.service-meta{position:absolute;z-index:2;left:7vw;right:7vw;bottom:5.5vh;padding-top:15px;border-top:1px solid rgba(23,59,53,.16);display:flex;align-items:center;justify-content:space-between;gap:16px}.service-meta small{font:700 8px/1 sans-serif;letter-spacing:.14em;opacity:.55}.service-meta ul{display:flex;gap:6px;margin:0;padding:0;list-style:none}.service-meta li{padding:6px 9px;border:1px solid rgba(23,59,53,.18);border-radius:99px;font-size:9px;white-space:nowrap}

.area-section,.contact-section{position:relative;min-height:92vh;overflow:hidden;color:#fff}.area-image,.contact-image{position:absolute;inset:0}.area-image img,.contact-image img{object-fit:cover}.area-shade,.contact-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,43,37,.84),rgba(13,43,37,.18))}.area-copy,.contact-copy{position:relative;z-index:2;min-height:92vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:10vw 8vw}.area-copy h2,.contact-copy h2{margin:26px 0 28px;font:500 clamp(44px,6vw,84px)/1.15 "Yu Mincho",serif;letter-spacing:-.04em}.area-copy>p:not(.section-index),.contact-copy>p:not(.section-index){max-width:620px;font-size:clamp(15px,1.3vw,19px);line-height:2}.area-copy>a{margin-top:36px;padding-bottom:8px;border-bottom:1px solid;font-weight:700}

.company-section{min-height:90vh;padding-top:130px;padding-bottom:130px;display:grid;grid-template-columns:1fr 1.5fr;gap:10vw}.company-section h2{margin:30px 0;font:500 clamp(52px,7vw,92px)/1 "Yu Mincho",serif}.company-details dl{margin:0}.company-details dl>div{display:grid;grid-template-columns:130px 1fr;gap:26px;padding:20px 0;border-bottom:1px solid var(--line);line-height:1.8}.company-details dt{font-size:12px;font-weight:700}.company-details dd{margin:0}.text-link{display:inline-block;margin-top:40px;padding-bottom:8px;border-bottom:1px solid;font-weight:700}

.contact-shade{background:linear-gradient(90deg,rgba(13,43,37,.88),rgba(13,43,37,.42))}.contact-copy{min-height:100vh}.contact-actions{display:flex;gap:14px;margin-top:42px}.contact-actions a{min-width:245px;padding:20px 24px;border:1px solid rgba(255,255,255,.55);background:rgba(255,255,255,.08);font:600 20px/1.3 sans-serif;backdrop-filter:blur(8px);transition:.3s ease}.contact-actions a:hover{background:#fff;color:var(--ink)}.contact-actions small{display:block;margin-bottom:9px;font-size:10px;letter-spacing:.14em}
.contact-actions span{display:block;margin-top:10px;font-size:10px;font-weight:400;line-height:1.65;letter-spacing:.03em;opacity:.82}

footer{padding:70px 6vw 34px;background:var(--deep);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:60px}.footer-logo{display:block;width:265px;padding:8px 12px;background:var(--paper)}.footer-logo img{width:100%;height:auto;display:block}footer>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}footer>div a{padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.2)}footer>p{grid-column:1/-1;margin:20px 0 0;font-size:10px;color:rgba(255,255,255,.55)}.prototype-note{position:fixed;z-index:30;right:18px;bottom:18px;padding:10px 14px;border:1px solid rgba(23,59,53,.22);border-radius:100px;background:rgba(243,241,233,.94);font-size:11px;font-weight:700;box-shadow:0 8px 28px rgba(13,43,37,.12);backdrop-filter:blur(8px)}

@keyframes introLeave{0%,65%{opacity:1}99%{opacity:0;visibility:visible}100%{opacity:0;visibility:hidden}}@keyframes revealHero{to{opacity:1;transform:none}}@keyframes heroMove{from{transform:translateY(var(--hero-shift,0px)) scale(1.08)}to{transform:translateY(var(--hero-shift,0px)) scale(1.035)}}@keyframes marqueeMove{to{transform:translateX(-50%)}}@keyframes plusFloat{50%{transform:translateY(18px) rotate(8deg)}}@keyframes menuImageIn{from{opacity:.4;transform:scale(1.12)}to{opacity:1;transform:scale(1.02)}}@keyframes orbitSpin{to{transform:rotate(360deg)}}@keyframes plusPulse{50%{transform:scale(.88) rotate(9deg)}}
@media(max-width:760px){.cursor-orb{display:none}.page-intro img{width:68vw}.section-shell{padding-inline:20px}.site-header{height:72px;padding:12px 16px}.logo-link{width:205px;padding:6px 9px}.header-contact{display:none}.menu-button{width:62px;height:46px}.menu-button i{left:21px;top:29px}.menu-overlay{grid-template-columns:1fr;padding:110px 24px 40px}.menu-overlay nav{width:100%}.menu-overlay a{font-size:34px;padding:15px 0}.menu-overlay>p{display:none}.hero-image{inset:-30px -16vw 0 0}.hero-image img{object-position:64% center}.hero-copy{padding:120px 20px 74px}.hero h1{font-size:clamp(39px,12vw,58px)}.hero-copy>p:last-child br{display:none}.hero-aside,.scroll-cue{display:none}.philosophy{min-height:auto;padding-top:92px;padding-bottom:92px;grid-template-columns:1fr;gap:46px}.philosophy h2,.services-intro h2{font-size:43px}.marquee>div{gap:20px;font-size:39px}.services-intro{padding-top:86px;padding-bottom:70px}.service-section,.service-section.reverse{min-height:auto;grid-template-columns:1fr}.service-section.reverse .service-photo,.service-section.reverse .service-copy{order:initial}.service-watermark{top:4vh;font-size:68px}.service-photo{min-height:58vh}.service-copy{padding:74px 20px 88px}.service-number{margin-top:38px;font-size:62px}.service-copy h2{font-size:49px}.area-section,.contact-section,.area-copy,.contact-copy{min-height:86vh}.area-copy,.contact-copy{padding:94px 20px}.area-copy h2,.contact-copy h2{font-size:44px}.company-section{min-height:auto;padding-top:92px;padding-bottom:92px;grid-template-columns:1fr;gap:42px}.company-details dl>div{grid-template-columns:95px 1fr;gap:12px}.contact-actions{width:100%;flex-direction:column}.contact-actions a{min-width:0;width:100%}footer{padding:60px 20px 92px;grid-template-columns:1fr}footer>div{grid-template-columns:1fr}.footer-logo{width:230px}footer>p{grid-column:1}.prototype-note{right:12px;bottom:12px}}
@media(max-width:760px){.menu-overlay{display:block;overflow:auto;padding-top:104px;clip-path:circle(0 at calc(100% - 44px) 36px)}.menu-overlay.is-open{clip-path:circle(175% at calc(100% - 44px) 36px)}.menu-preview{display:none}.menu-ghost{font-size:38vw;bottom:.05em}.menu-plus{right:-.1em;top:68%;font-size:48vw}.menu-kicker{margin:0 0 24px}.menu-overlay nav a{grid-template-columns:30px 1fr auto;padding:15px 0}.menu-overlay nav a>span{font-size:31px}.menu-overlay nav a em{display:none}.menu-address{margin-top:30px;text-align:left}.service-orbit{right:-28px;top:4%;width:100px}.service-copy h2{max-width:78%}}
.menu-brand img{animation:none}
@media(max-width:760px){.logo-link{padding:0}.service-copy{padding-bottom:150px}.service-meta{left:20px;right:20px;bottom:30px;flex-direction:column;align-items:flex-start}.service-meta ul{flex-wrap:wrap}}
.service-copy{--wash-x:12%;--wash-y:92%;--wash-next-y:118%;--wash-strength:42%;background-color:var(--copy-base);background-image:radial-gradient(ellipse at 34% 50%,color-mix(in srgb,var(--copy-base) 96%,transparent) 0 30%,transparent 66%),radial-gradient(circle at var(--wash-x) var(--wash-y),color-mix(in srgb,var(--wash-a) var(--wash-strength),transparent) 0,transparent 48%),radial-gradient(circle at calc(100% - var(--wash-x)) var(--wash-next-y),color-mix(in srgb,var(--wash-b) var(--wash-strength),transparent) 0,transparent 54%);transition:background-color .8s ease}.service-orbit{z-index:1}.care .service-copy{--copy-base:#f4f1e8;--wash-a:#d8e7b4;--wash-b:#b8d4c2}.auto .service-copy{--copy-base:#dce8df;--wash-a:#a9c6b3;--wash-b:#c7dce7}.support .service-copy{--copy-base:#e6eef2;--wash-a:#b7d4e0;--wash-b:#ead4b2}.home .service-copy{--copy-base:#f2e8d9;--wash-a:#dfc79e;--wash-b:#d8cbbb}.renovation .service-copy{--copy-base:#e7e1d4;--wash-a:#cbbca4;--wash-b:#b7cfb5}.property .service-copy{--copy-base:#dfe8db;--wash-a:#b5ccae;--wash-b:#d8e7b4}
@media(max-width:760px){.service-copy{--wash-strength:28%}}
.service-section .service-copy{--wash-opacity:.42;background-color:var(--copy-base);background-image:radial-gradient(ellipse at 34% 50%,var(--copy-base) 0 30%,transparent 66%),radial-gradient(circle at var(--wash-x) var(--wash-y),rgba(var(--wash-a-rgb),var(--wash-opacity)) 0,transparent 48%),radial-gradient(circle at calc(100% - var(--wash-x)) var(--wash-next-y),rgba(var(--wash-b-rgb),var(--wash-opacity)) 0,transparent 54%)}.care .service-copy{--wash-a-rgb:216,231,180;--wash-b-rgb:184,212,194}.auto .service-copy{--wash-a-rgb:169,198,179;--wash-b-rgb:199,220,231}.support .service-copy{--wash-a-rgb:183,212,224;--wash-b-rgb:234,212,178}.home .service-copy{--wash-a-rgb:223,199,158;--wash-b-rgb:216,203,187}.renovation .service-copy{--wash-a-rgb:203,188,164;--wash-b-rgb:183,207,181}.property .service-copy{--wash-a-rgb:181,204,174;--wash-b-rgb:216,231,180}
@media(max-width:760px){.service-section .service-copy{--wash-opacity:.28}}
.service-section .service-copy{background-image:none}.service-section .service-photo{--canvas-x:14%;--canvas-y:18%;--canvas-angle:118deg;--photo-shift:0px;clip-path:none;background-color:var(--canvas-base);background-image:radial-gradient(circle at var(--canvas-x) var(--canvas-y),rgba(var(--canvas-light),.9) 0,rgba(var(--canvas-light),.24) 28%,transparent 55%),radial-gradient(circle at calc(100% - var(--canvas-x)) calc(100% - var(--canvas-y)),rgba(var(--canvas-accent),.55) 0,transparent 48%),linear-gradient(var(--canvas-angle),var(--canvas-base),var(--canvas-deep));isolation:isolate}.service-section .service-photo::before{content:"";position:absolute;z-index:0;width:46%;aspect-ratio:1;right:-12%;top:-10%;border:1px solid rgba(255,255,255,.34);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.055),0 0 0 58px rgba(255,255,255,.035);transform:translate(calc((var(--canvas-x) - 14%) * .12),calc((var(--canvas-y) - 18%) * .1));pointer-events:none}.service-section .service-photo::after{z-index:2;background:linear-gradient(145deg,rgba(255,255,255,.12),transparent 42%,rgba(13,43,37,.12))}.service-section .service-photo img{z-index:1;inset:8%!important;width:84%!important;height:84%!important;border-radius:46% 46% 8px 8px;box-shadow:0 36px 80px rgba(13,43,37,.24);clip-path:inset(0 0 100% 0 round 46% 46% 8px 8px);transform:translateY(var(--photo-shift)) scale(1.01);transition:clip-path 1.15s cubic-bezier(.2,.7,.2,1),transform 1.5s cubic-bezier(.2,.7,.2,1),filter .8s ease}.service-section .service-photo.is-visible img{clip-path:inset(0 round 46% 46% 8px 8px)}.service-section:hover .service-photo img{transform:translateY(var(--photo-shift)) scale(1.035)}.care{--canvas-base:#dfe9d0;--canvas-deep:#9dbda8;--canvas-light:239,245,213;--canvas-accent:118,158,139}.auto{--canvas-base:#d7e5df;--canvas-deep:#789c92;--canvas-light:230,242,226;--canvas-accent:95,132,127}.support{--canvas-base:#dce9ed;--canvas-deep:#8eacb5;--canvas-light:235,244,241;--canvas-accent:116,151,161}.home{--canvas-base:#efe3ce;--canvas-deep:#c4a77e;--canvas-light:250,243,222;--canvas-accent:177,135,88}.renovation{--canvas-base:#e5ddd0;--canvas-deep:#a9947b;--canvas-light:244,239,226;--canvas-accent:144,119,91}.property{--canvas-base:#dce7d7;--canvas-deep:#86a07e;--canvas-light:238,245,225;--canvas-accent:94,126,88}
@media(max-width:760px){.service-section .service-photo{min-height:64vh}.service-section .service-photo img{inset:7%!important;width:86%!important;height:86%!important}.service-section .service-photo::before{width:56%;right:-18%}}
.service-section .service-photo{background-image:radial-gradient(circle at var(--canvas-x) var(--canvas-y),rgba(var(--canvas-light),.34) 0,rgba(var(--canvas-light),.1) 30%,transparent 58%),radial-gradient(circle at calc(100% - var(--canvas-x)) calc(100% - var(--canvas-y)),rgba(var(--canvas-accent),.16) 0,transparent 52%),linear-gradient(var(--canvas-angle),var(--canvas-base),var(--canvas-deep))}.care{--canvas-base:#fbfcf8;--canvas-deep:#f0f5ec}.auto{--canvas-base:#fafcfb;--canvas-deep:#edf4f1}.support{--canvas-base:#fafcfd;--canvas-deep:#edf4f6}.home{--canvas-base:#fdfcf9;--canvas-deep:#f7f1e8}.renovation{--canvas-base:#fcfbf9;--canvas-deep:#f2eee8}.property{--canvas-base:#fafcf9;--canvas-deep:#edf3ea}.service-watermark{color:rgba(23,59,53,.065);mix-blend-mode:normal}.service-section .service-photo::before{border-color:rgba(23,59,53,.11);box-shadow:0 0 0 24px rgba(23,59,53,.018),0 0 0 58px rgba(23,59,53,.012)}.service-section .service-photo::after{background:linear-gradient(145deg,rgba(255,255,255,.08),transparent 46%,rgba(13,43,37,.025))}
.service-section .service-photo{background:#f7f6f1;background-image:none}.service-section .service-photo::before{width:58%;right:-16%;top:16%;border-color:rgba(var(--minimal-accent),.13);box-shadow:0 0 0 28px rgba(var(--minimal-accent),.018),0 0 0 68px rgba(var(--minimal-accent),.012);transform:none}.service-section .service-photo::after{content:"＋";inset:auto 7% 7% auto;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(var(--minimal-accent),.22);border-radius:50%;background:transparent;color:rgba(var(--minimal-accent),.52);font:300 18px/1 sans-serif}.service-watermark{color:rgba(23,59,53,.055);letter-spacing:-.055em}.care{--minimal-accent:112,146,91}.auto{--minimal-accent:67,112,101}.support{--minimal-accent:79,125,142}.home{--minimal-accent:167,124,75}.renovation{--minimal-accent:126,101,73}.property{--minimal-accent:78,117,70}
@media(max-width:760px){.service-section .service-photo{min-height:46vh}.service-section .service-photo::before{width:70%;right:-24%;top:7%}.service-section .service-photo::after{right:24px;bottom:24px}}
.service-thread,.thread-node,.thread-word{display:none}.line-enabled .service-photo::after{content:none}.line-enabled .service-photo::before{opacity:.52}.line-enabled .service-thread{position:absolute;z-index:1;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none}.line-enabled .service-thread path{fill:none;stroke:rgba(var(--minimal-accent),.48);stroke-width:.42;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.65s .15s cubic-bezier(.2,.7,.2,1)}.line-enabled .service-photo.is-visible .service-thread path{stroke-dashoffset:0}.line-enabled .thread-node{position:absolute;z-index:3;left:50%;top:50%;display:grid;place-items:center;width:78px;height:78px;transform:translate(-50%,-50%) scale(.65);opacity:0;border:1px solid rgba(var(--minimal-accent),.42);border-radius:50%;background:#f7f6f1;box-shadow:0 0 0 12px rgba(247,246,241,.76);transition:opacity .7s .8s ease,transform .9s .8s cubic-bezier(.2,.7,.2,1)}.line-enabled .service-photo.is-visible .thread-node{opacity:1;transform:translate(-50%,-50%) scale(1)}.line-enabled .thread-node b{font:300 32px/1 sans-serif;color:rgba(var(--minimal-accent),.78)}.line-enabled .thread-node span{position:absolute;left:calc(100% + 18px);top:50%;width:120px;transform:translateY(-50%);font:700 8px/1.7 sans-serif;letter-spacing:.16em;color:rgba(var(--minimal-accent),.75)}.line-enabled .reverse .thread-node span{left:auto;right:calc(100% + 18px);text-align:right}.line-enabled .thread-word{position:absolute;z-index:2;left:7%;bottom:8%;display:block;margin:0;font:500 clamp(22px,2.3vw,38px)/1 "Yu Mincho",serif;letter-spacing:.08em;color:rgba(var(--minimal-accent),.23);opacity:0;transform:translateY(18px);transition:opacity .75s 1.05s ease,transform .85s 1.05s ease}.line-enabled .service-photo.is-visible .thread-word{opacity:1;transform:none}.line-enabled .reverse .thread-word{left:auto;right:7%}.line-enabled .service-photo:hover .thread-node{transform:translate(-50%,-50%) scale(1.07) rotate(4deg)}.line-toggle{position:fixed;z-index:30;right:18px;bottom:62px;padding:9px 13px;border:1px solid rgba(23,59,53,.15);border-radius:100px;background:rgba(255,255,255,.9);font-size:10px;font-weight:700;box-shadow:0 8px 24px rgba(13,43,37,.08);backdrop-filter:blur(8px)}
@media(max-width:760px){.line-enabled .thread-node{width:64px;height:64px}.line-enabled .thread-node span{left:calc(100% + 12px);width:102px;font-size:7px}.line-enabled .reverse .thread-node span{left:calc(100% + 12px);right:auto;text-align:left}.line-enabled .thread-word,.line-enabled .reverse .thread-word{left:20px;right:auto;bottom:20px;font-size:20px}.line-toggle{right:12px;bottom:60px}}
.care-morph{position:fixed;z-index:22;left:0;top:0;width:0;height:0;overflow:hidden;pointer-events:none;opacity:0;background:#e7eee0;box-shadow:0 30px 75px rgba(13,43,37,.22);will-change:left,top,width,height,border-radius,opacity}.care-morph::after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.08),transparent 52%,rgba(13,43,37,.1));pointer-events:none}.care-morph img{object-fit:cover;filter:saturate(.78) contrast(1.03)}.care .service-orbit img{transition:opacity .18s linear,transform .8s ease}.morph-disabled .care-morph{display:none}.morph-disabled .care .service-orbit img{opacity:1!important}
.care-morph{--morph-photo-opacity:1;--morph-plus-opacity:0;background:#f7f6f1;border:1px solid rgba(112,146,91,.34)}.care-morph::before{content:"＋";position:absolute;z-index:3;inset:0;display:grid;place-items:center;color:rgba(90,132,76,.82);font:300 clamp(28px,4vw,46px)/1 sans-serif;opacity:var(--morph-plus-opacity);transform:rotate(calc(var(--morph-plus-opacity) * 90deg)) scale(calc(.7 + var(--morph-plus-opacity) * .3))}.care-morph::after{z-index:2;opacity:var(--morph-photo-opacity)}.care-morph img{opacity:var(--morph-photo-opacity)}
.care-morph::before{transform:scale(.94)}
.story-manifesto,.story-housing-chapter,.story-connections,.story-canvas-copy,.story-connection{display:none}.story-enabled .story-manifesto{position:relative;min-height:108vh;display:grid;grid-template-columns:1fr 1.25fr .85fr;align-items:center;gap:5vw;padding-top:12vh;padding-bottom:12vh;overflow:hidden;background:var(--deep);color:#fff}.story-manifesto::before{content:"";position:absolute;left:-18vw;bottom:-42vw;width:62vw;aspect-ratio:1;border:1px solid rgba(217,238,134,.15);border-radius:50%;box-shadow:0 0 0 4vw rgba(255,255,255,.018),0 0 0 9vw rgba(255,255,255,.012)}.story-manifesto>.section-index{align-self:start;margin-top:4vh;color:var(--lime)}.story-manifesto-main{position:relative;z-index:1}.story-overline{margin:0 0 24px;font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--lime)}.story-manifesto h2{margin:0;font:500 clamp(54px,6.4vw,104px)/1.12 "Yu Mincho",serif;letter-spacing:-.055em}.story-manifesto-copy{position:relative;z-index:1;align-self:end;padding-bottom:7vh;font-size:14px;line-height:2.15;color:rgba(255,255,255,.72)}.story-mark{position:absolute;z-index:0;right:-5vw;top:8vh;width:30vw;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(217,238,134,.2);border-radius:50%;color:rgba(217,238,134,.16)}.story-mark>span{font:200 18vw/1 sans-serif}.story-mark small{position:absolute;right:8vw;bottom:3vw;font:700 8px/1.7 sans-serif;letter-spacing:.18em;color:var(--lime)}.story-enabled .services-intro{min-height:112vh;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:7vw}.story-enabled .services-intro>div:first-child{align-self:center}.services-lead{max-width:520px;margin-top:30px;line-height:2;color:rgba(255,255,255,.68)}.story-flow{display:grid;gap:0}.story-flow>div{display:grid;grid-template-columns:48px 120px 1fr;align-items:center;gap:16px;padding:25px 0;border-top:1px solid rgba(255,255,255,.24)}.story-flow>div:last-of-type{border-bottom:1px solid rgba(255,255,255,.24)}.story-flow small{font:500 31px/1 "Times New Roman",serif;color:var(--lime)}.story-flow b{font:500 28px/1.2 "Yu Mincho",serif}.story-flow span{font-size:12px;color:rgba(255,255,255,.62)}.story-flow>i{display:none}.story-enabled .service-section{min-height:92vh}.story-enabled .story-service-1{grid-template-columns:56% 44%}.story-enabled .story-service-2{grid-template-columns:40% 60%}.story-enabled .story-service-3{grid-template-columns:62% 38%}.story-enabled .story-service-4{grid-template-columns:42% 58%}.story-enabled .story-service-5{grid-template-columns:55% 45%}.story-enabled .story-service-6{grid-template-columns:44% 56%}.story-enabled .service-photo{min-height:92vh}.story-enabled .story-canvas-copy{position:absolute;z-index:3;inset:0;display:flex;flex-direction:column;justify-content:center;padding:10%;pointer-events:none}.story-canvas-copy small{margin-bottom:22px;font-size:9px;font-weight:700;letter-spacing:.2em;color:rgba(var(--minimal-accent),.72)}.story-canvas-copy p{max-width:620px;margin:0;font:500 clamp(44px,5.6vw,92px)/1.14 "Yu Mincho",serif;letter-spacing:-.045em;color:rgba(var(--minimal-accent),.82)}.story-canvas-copy em{position:absolute;left:10%;bottom:8%;font:500 12px/1 sans-serif;letter-spacing:.18em;color:rgba(var(--minimal-accent),.44);font-style:normal}.story-enabled .service-watermark{opacity:.25}.story-enabled .service-copy{padding-top:12vw;padding-bottom:12vw}.story-enabled .story-connection{display:block;margin-top:24px!important;padding-top:22px;border-top:1px solid rgba(23,59,53,.18);font-size:13px;line-height:2!important;color:rgba(23,59,53,.72)}.story-enabled .service-copy .availability{margin-top:20px}.story-enabled .story-housing-chapter{min-height:72vh;display:grid;grid-template-columns:.7fr 1.3fr;align-content:center;gap:5vw;background:#ded6c9}.story-housing-chapter h2{margin:0 0 32px;font:500 clamp(48px,6.4vw,96px)/1.12 "Yu Mincho",serif;letter-spacing:-.05em}.story-housing-chapter>p:last-child{grid-column:2;max-width:630px;margin:0;line-height:2}.story-enabled .story-connections{min-height:94vh;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:9vw;background:var(--deep);color:#fff}.story-connections h2{margin:22px 0 0;font:500 clamp(48px,6vw,90px)/1.14 "Yu Mincho",serif;letter-spacing:-.05em}.connection-examples{display:grid}.connection-examples p{display:grid;grid-template-columns:1fr 34px 1fr;align-items:center;gap:10px;margin:0;padding:30px 0;border-top:1px solid rgba(255,255,255,.22)}.connection-examples p:last-child{border-bottom:1px solid rgba(255,255,255,.22)}.connection-examples span{font:500 clamp(21px,2.2vw,34px)/1.3 "Yu Mincho",serif}.connection-examples i{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(217,238,134,.5);border-radius:50%;color:var(--lime);font-style:normal}.connection-examples small{grid-column:1/-1;margin-top:7px;font-size:11px;line-height:1.8;color:rgba(255,255,255,.58)}.story-disabled .story-manifesto,.story-disabled .story-housing-chapter,.story-disabled .story-connections,.story-disabled .story-canvas-copy,.story-disabled .story-connection{display:none}
@media(max-width:760px){.story-enabled .story-manifesto{min-height:auto;grid-template-columns:1fr;gap:44px;padding-top:110px;padding-bottom:100px}.story-manifesto>.section-index{margin:0}.story-manifesto h2{font-size:49px}.story-manifesto-copy{padding:0}.story-mark{right:-28vw;top:8%;width:85vw}.story-mark>span{font-size:50vw}.story-enabled .services-intro{min-height:auto;grid-template-columns:1fr;gap:55px;padding-top:100px;padding-bottom:90px}.story-flow>div{grid-template-columns:38px 92px 1fr;gap:10px;padding:22px 0}.story-flow small{font-size:25px}.story-flow b{font-size:22px}.story-flow span{font-size:10px;line-height:1.7}.story-enabled .service-section,.story-enabled .story-service-1,.story-enabled .story-service-2,.story-enabled .story-service-3,.story-enabled .story-service-4,.story-enabled .story-service-5,.story-enabled .story-service-6{grid-template-columns:1fr}.story-enabled .service-photo{min-height:58vh}.story-enabled .story-canvas-copy{padding:72px 20px 52px}.story-canvas-copy p{max-width:88%;font-size:42px}.story-canvas-copy em{left:20px;bottom:24px}.story-enabled .service-copy{padding-top:88px;padding-bottom:165px}.story-enabled .story-housing-chapter{min-height:auto;grid-template-columns:1fr;gap:34px;padding-top:100px;padding-bottom:100px}.story-housing-chapter h2{font-size:46px}.story-housing-chapter>p:last-child{grid-column:1}.story-enabled .story-connections{min-height:auto;grid-template-columns:1fr;gap:58px;padding-top:105px;padding-bottom:105px}.story-connections h2{font-size:47px}.connection-examples p{padding:25px 0}.connection-examples span{font-size:22px}}
.story-enabled .service-watermark,.story-enabled .story-canvas-copy small,.story-enabled .story-canvas-copy em,.story-enabled .service-number{display:none}.story-enabled .story-canvas-copy{align-items:flex-start;padding:10%}.story-enabled .story-canvas-copy p{max-width:78%;font-size:clamp(42px,5vw,78px);line-height:1.22;letter-spacing:-.04em}.story-enabled .service-copy>.section-index{margin:0 0 38px}.story-enabled .service-copy h2{max-width:100%;margin-bottom:34px}.story-enabled .service-copy>p:not(.section-index):not(.service-number){max-width:590px}.story-enabled .service-meta li:nth-child(n+3){display:none}.story-enabled .service-meta small{letter-spacing:.1em}.story-enabled .story-manifesto>.section-index{visibility:hidden}.story-enabled .story-mark small{display:none}
@media(max-width:760px){.story-enabled .story-canvas-copy{justify-content:center;padding:52px 20px}.story-enabled .story-canvas-copy p{max-width:88%;font-size:40px}.story-enabled .service-copy>.section-index{margin-bottom:30px}.story-enabled .service-copy h2{max-width:88%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.service-copy{--wash-x:34%!important;--wash-y:58%!important;--wash-next-y:96%!important}.service-photo{--canvas-x:47%!important;--canvas-y:42%!important;--canvas-angle:138deg!important;--photo-shift:0px!important}.line-enabled .service-thread path{stroke-dashoffset:0}.line-enabled .thread-node,.line-enabled .thread-word{opacity:1}.care-morph{display:none}.care .service-orbit img{opacity:1!important}}

/* Rounded editorial image study: visual rhythm without adding more copy. */
.shape-media,.shape-detail,.shape-outline{display:none}
.shape-enabled .service-watermark,.shape-enabled .service-orbit{display:none}
.shape-enabled .service-photo{min-height:88vh;overflow:hidden;background:#f7f6f1}
.shape-enabled .service-photo::before{width:62%;right:-21%;top:10%;opacity:.72;transform:translateY(calc(var(--shape-shift,0px) * -.24))}
.shape-enabled .service-photo::after{content:"";right:auto;left:7%;bottom:8%;width:11px;height:11px;border:0;border-radius:50%;background:rgba(var(--minimal-accent),.58);box-shadow:22px 0 0 rgba(var(--minimal-accent),.18),44px 0 0 rgba(var(--minimal-accent),.1)}
.shape-enabled .shape-media{position:absolute;z-index:2;left:7%;top:12%;display:block;width:72%;height:72%;overflow:hidden;border-radius:34px 34px 190px 34px;box-shadow:0 34px 80px rgba(28,57,50,.15);clip-path:inset(16% 42% 16% 42% round 50%);transform:translateY(calc(var(--shape-shift,0px) * -.52)) rotate(var(--shape-turn,0deg)) scale(.92);opacity:.25;transition:clip-path 1.25s cubic-bezier(.2,.75,.2,1),transform 1.35s cubic-bezier(.2,.75,.2,1),opacity .9s ease,border-radius 1.2s ease}
.shape-enabled .shape-media img{inset:0!important;width:100%!important;height:100%!important;object-fit:cover;border-radius:0;clip-path:none;filter:saturate(.76) contrast(1.04);transform:scale(1.1);transition:transform 1.8s cubic-bezier(.2,.75,.2,1),filter .8s ease}
.shape-enabled .service-photo.is-visible .shape-media{clip-path:inset(0 round 34px 34px 190px 34px);transform:translateY(calc(var(--shape-shift,0px) * -.52)) rotate(var(--shape-turn,0deg)) scale(1);opacity:1}
.shape-enabled .service-photo.is-visible .shape-media img{transform:scale(1.02)}
.shape-enabled .shape-detail{position:absolute;z-index:4;right:7%;bottom:9%;display:block;width:26%;aspect-ratio:1;overflow:hidden;border:10px solid #f7f6f1;border-radius:50%;box-shadow:0 24px 50px rgba(28,57,50,.13);opacity:0;transform:translate(30px,28px) scale(.65) rotate(8deg);transition:opacity .7s .55s ease,transform 1s .55s cubic-bezier(.2,.8,.2,1)}
.shape-enabled .shape-detail img{object-fit:cover;object-position:72% 48%;filter:saturate(.68) contrast(1.05);transform:scale(1.5)}
.shape-enabled .shape-detail.shape-logo{display:grid;place-items:center;background:#fbfaf6;overflow:hidden}
.shape-enabled .shape-detail.shape-logo img{position:relative!important;inset:auto!important;width:64%!important;height:auto!important;object-fit:contain;object-position:center;filter:none;transform:none}
.shape-enabled .service-photo.is-visible .shape-detail{opacity:1;transform:translateY(calc(var(--shape-shift,0px) * .38)) scale(1) rotate(calc(var(--shape-turn,0deg) * -1))}
.shape-enabled .shape-outline{position:absolute;z-index:1;right:4%;top:7%;display:block;width:32%;aspect-ratio:1;border:1px solid rgba(var(--minimal-accent),.24);border-radius:48% 48% 18% 48%;transform:translateY(calc(var(--shape-shift,0px) * -.2)) rotate(9deg);transition:transform 1.2s ease}
.shape-enabled .reverse .shape-media{left:auto;right:7%;border-radius:190px 34px 34px 34px}
.shape-enabled .reverse .service-photo.is-visible .shape-media{clip-path:inset(0 round 190px 34px 34px 34px)}
.shape-enabled .reverse .shape-detail{right:auto;left:7%}
.shape-enabled .reverse .shape-outline{right:auto;left:4%;border-radius:48% 18% 48% 48%;transform:translateY(calc(var(--shape-shift,0px) * -.2)) rotate(-9deg)}
.shape-enabled .story-service-2 .shape-media,.shape-enabled .story-service-5 .shape-media{width:68%;height:76%;top:10%}
.shape-enabled .story-service-3 .shape-media,.shape-enabled .story-service-6 .shape-media{width:74%;height:68%;top:16%;border-radius:34px 170px 34px 34px}
.shape-enabled .story-service-3 .service-photo.is-visible .shape-media,.shape-enabled .story-service-6 .service-photo.is-visible .shape-media{clip-path:inset(0 round 34px 170px 34px 34px)}
.shape-enabled .service-copy{position:relative;z-index:5}
.shape-enabled .service-copy h2{max-width:92%}

@media(max-width:760px){.shape-enabled .service-photo{min-height:62vh}.shape-enabled .shape-media,.shape-enabled .reverse .shape-media{left:7%;right:auto;top:9%;width:79%;height:75%;border-radius:26px 26px 120px 26px}.shape-enabled .service-photo.is-visible .shape-media,.shape-enabled .reverse .service-photo.is-visible .shape-media,.shape-enabled .story-service-3 .service-photo.is-visible .shape-media,.shape-enabled .story-service-6 .service-photo.is-visible .shape-media{clip-path:inset(0 round 26px 26px 120px 26px)}.shape-enabled .shape-detail,.shape-enabled .reverse .shape-detail{left:auto;right:5%;bottom:7%;width:34%;border-width:7px}.shape-enabled .shape-detail.shape-logo img{width:66%!important}.shape-enabled .shape-outline,.shape-enabled .reverse .shape-outline{left:auto;right:-3%;top:4%;width:42%;transform:rotate(8deg)}.shape-enabled .service-photo::after{left:20px;bottom:22px}}
@media(prefers-reduced-motion:reduce){.shape-enabled .shape-media,.shape-enabled .service-photo.is-visible .shape-media{clip-path:none;transform:none;opacity:1}.shape-enabled .shape-media img,.shape-enabled .service-photo.is-visible .shape-media img{transform:scale(1.02)}.shape-enabled .shape-detail,.shape-enabled .service-photo.is-visible .shape-detail{opacity:1;transform:none}}

/* Keep photography still; motion belongs to the Marutasu symbol only. */
.shape-enabled .service-photo.reveal{opacity:1;transform:none;transition:none}
.shape-enabled .shape-media,
.shape-enabled .service-photo.is-visible .shape-media,
.shape-enabled .reverse .shape-media,
.shape-enabled .service-photo.is-visible .reverse .shape-media{clip-path:none!important;opacity:1;transform:none!important;transition:none}
.shape-enabled .shape-media img,
.shape-enabled .service-photo.is-visible .shape-media img,
.shape-enabled .service-section:hover .shape-media img{transform:scale(1.02);transition:none}
.shape-enabled .shape-outline,
.shape-enabled .reverse .shape-outline{transform:none;transition:none}
.shape-enabled .shape-detail{will-change:transform,opacity}

/* Rounded first page: the complete hero surface has no hard corners. */
.shape-enabled .hero{width:calc(100% - 24px);min-height:calc(100svh - 24px);margin:12px;border-radius:clamp(34px,4.5vw,76px);background:var(--deep);box-shadow:0 24px 70px rgba(8,31,26,.12)}
.shape-enabled .hero-image{inset:-80px 0 0;border-radius:0;box-shadow:none}
.shape-enabled .hero-image img{animation:none;transform:none;object-position:center;filter:saturate(.76) contrast(1.04)}
.shape-enabled .hero-copy{min-height:calc(100svh - 24px)}
.shape-enabled .hero-shade{background:linear-gradient(90deg,rgba(13,43,37,.78),rgba(13,43,37,.06) 62%),linear-gradient(0deg,rgba(13,43,37,.44),transparent 48%)}
.shape-enabled .hero::after{border-radius:inherit;box-shadow:inset 0 0 110px rgba(9,28,24,.18)}

@media(max-width:760px){.shape-enabled .hero{width:calc(100% - 14px);min-height:calc(100svh - 14px);margin:7px;border-radius:28px}.shape-enabled .hero-image{inset:-30px -16vw 0 0}.shape-enabled .hero-image img{object-position:64% center}.shape-enabled .hero-copy{min-height:calc(100svh - 14px)}}

/* The first service follows the same rounded-page language as the hero. */
.shape-enabled .service-section.care{width:calc(100% - 24px);min-height:calc(100svh - 24px);margin:12px;border-radius:clamp(34px,4.5vw,76px);overflow:hidden;box-shadow:0 24px 70px rgba(8,31,26,.1)}
.shape-enabled .service-section.care .service-photo{min-height:calc(100svh - 24px)}
.shape-enabled .service-section.care .service-copy{min-height:calc(100svh - 24px)}
@media(max-width:760px){.shape-enabled .service-section.care{width:calc(100% - 14px);min-height:auto;margin:7px;border-radius:28px}.shape-enabled .service-section.care .service-photo{min-height:62vh}.shape-enabled .service-section.care .service-copy{min-height:auto}}

/* Correction: round only the care copy/background panel, not the whole section. */
.shape-enabled .service-section.care{width:100%;min-height:88vh;margin:0;border-radius:0;overflow:visible;box-shadow:none}
.shape-enabled .service-section.care .service-photo{min-height:88vh}
.shape-enabled .service-section.care .service-copy{min-height:calc(88vh - 24px);margin:12px;border-radius:clamp(34px,4.5vw,76px);overflow:hidden;box-shadow:0 20px 55px rgba(8,31,26,.07)}
@media(max-width:760px){.shape-enabled .service-section.care{width:100%;margin:0;border-radius:0}.shape-enabled .service-section.care .service-photo{min-height:62vh}.shape-enabled .service-section.care .service-copy{min-height:auto;margin:7px;border-radius:28px}}

/* Apply the rounded copy panel to every service without creating outer gaps. */
.shape-enabled .service-section .service-copy,
.shape-enabled .service-section.care .service-copy{min-height:88vh;margin:0;border-radius:clamp(34px,4.5vw,76px);overflow:hidden;box-shadow:none}
@media(max-width:760px){.shape-enabled .service-section .service-copy,.shape-enabled .service-section.care .service-copy{min-height:auto;margin:0;border-radius:28px}}

/* Extend the same soft-corner language to the remaining background surfaces. */
.shape-enabled .philosophy,
.shape-enabled .services-intro,
.shape-enabled .area-section,
.shape-enabled .company-section,
.shape-enabled .contact-section,
.shape-enabled footer{border-radius:clamp(34px,4.5vw,76px);overflow:hidden}
.shape-enabled .philosophy{background:#f1f3ed}
.shape-enabled .company-section{background:#f4f1e9}
.shape-enabled .services-intro,
.shape-enabled .area-section,
.shape-enabled .contact-section,
.shape-enabled footer{isolation:isolate}
@media(max-width:760px){.shape-enabled .philosophy,.shape-enabled .services-intro,.shape-enabled .area-section,.shape-enabled .company-section,.shape-enabled .contact-section,.shape-enabled footer{border-radius:28px}}

/* Rebalanced service imagery: one calm proportion, consistent focal scale. */
.shape-enabled .service-section .service-photo{display:grid;place-items:center;min-height:88vh;padding:clamp(28px,4vw,68px);background:#f7f6f1}
.shape-enabled .service-section .service-photo::before{width:52%;right:-18%;top:18%;opacity:.5;transform:none}
.shape-enabled .service-section .service-photo::after{content:none}
.shape-enabled .service-section .shape-outline{display:none}
.shape-enabled .service-section .shape-media,
.shape-enabled .service-section.reverse .shape-media,
.shape-enabled .story-service-2 .shape-media,
.shape-enabled .story-service-3 .shape-media,
.shape-enabled .story-service-5 .shape-media,
.shape-enabled .story-service-6 .shape-media{position:relative;inset:auto;left:auto;right:auto;top:auto;width:min(82%,680px);height:auto;aspect-ratio:4/3;border-radius:clamp(24px,3vw,48px);box-shadow:0 28px 68px rgba(28,57,50,.14);clip-path:none!important;transform:none!important;opacity:1;transition:none}
.shape-enabled .service-section .shape-media img{transform:scale(1.015);filter:saturate(.78) contrast(1.035)}
.shape-enabled .service-section:hover .shape-media img{transform:scale(1.015)}
.shape-enabled .care .shape-media img{object-position:52% 48%}
.shape-enabled .auto .shape-media img{object-position:54% 52%}
.shape-enabled .support .shape-media img{object-position:50% 50%}
.shape-enabled .home .shape-media img{object-position:52% 50%}
.shape-enabled .renovation .shape-media img{object-position:50% 50%}
.shape-enabled .property .shape-media img{object-position:50% 52%}
.shape-enabled .service-section .shape-detail,
.shape-enabled .service-section.reverse .shape-detail{left:auto;right:clamp(22px,5vw,72px);bottom:clamp(24px,8vh,82px);width:clamp(78px,8vw,112px);border-width:7px;box-shadow:0 18px 42px rgba(28,57,50,.12)}
.shape-enabled .service-section.reverse .shape-detail{right:auto;left:clamp(22px,5vw,72px)}
.shape-enabled .service-section .shape-detail.shape-logo img{width:62%!important}

@media(max-width:760px){.shape-enabled .service-section .service-photo{min-height:54vh;padding:24px 20px 38px}.shape-enabled .service-section .shape-media,.shape-enabled .service-section.reverse .shape-media,.shape-enabled .story-service-2 .shape-media,.shape-enabled .story-service-3 .shape-media,.shape-enabled .story-service-5 .shape-media,.shape-enabled .story-service-6 .shape-media{width:90%;aspect-ratio:4/3;border-radius:26px}.shape-enabled .service-section .shape-detail,.shape-enabled .service-section.reverse .shape-detail{left:auto;right:12px;bottom:18px;width:78px;border-width:6px}.shape-enabled .service-section .service-photo::before{width:62%;right:-25%;top:13%}}

/* Full rectangular photography with the brand symbol sitting on its edge. */
.shape-enabled .service-section .shape-media,
.shape-enabled .service-section.reverse .shape-media,
.shape-enabled .story-service-2 .shape-media,
.shape-enabled .story-service-3 .shape-media,
.shape-enabled .story-service-5 .shape-media,
.shape-enabled .story-service-6 .shape-media{width:min(94%,760px);aspect-ratio:4/3;overflow:visible;border-radius:0;box-shadow:0 24px 58px rgba(28,57,50,.12)}
.shape-enabled .service-section .shape-media>img{z-index:1;border-radius:0}
.shape-enabled .service-section .shape-media .shape-detail,
.shape-enabled .service-section.reverse .shape-media .shape-detail{z-index:5;left:auto;right:clamp(-30px,-2.2vw,-18px);bottom:clamp(18px,3vw,38px);width:clamp(76px,7.5vw,108px);border-width:7px}
.shape-enabled .service-section.reverse .shape-media .shape-detail{right:auto;left:clamp(-30px,-2.2vw,-18px)}
@media(max-width:760px){.shape-enabled .service-section .service-photo{min-height:56vh;padding:22px 16px 34px}.shape-enabled .service-section .shape-media,.shape-enabled .service-section.reverse .shape-media,.shape-enabled .story-service-2 .shape-media,.shape-enabled .story-service-3 .shape-media,.shape-enabled .story-service-5 .shape-media,.shape-enabled .story-service-6 .shape-media{width:96%;aspect-ratio:4/3;border-radius:0}.shape-enabled .service-section .shape-media .shape-detail,.shape-enabled .service-section.reverse .shape-media .shape-detail{left:auto;right:-8px;bottom:16px;width:72px;border-width:5px}}

/* Remove every remaining image mask and let the photography fill the canvas. */
.shape-enabled .service-section .service-photo{padding:0}
.shape-enabled .service-section .shape-media,
.shape-enabled .service-section.reverse .shape-media,
.shape-enabled .story-service-2 .shape-media,
.shape-enabled .story-service-3 .shape-media,
.shape-enabled .story-service-5 .shape-media,
.shape-enabled .story-service-6 .shape-media{width:min(108%,860px);aspect-ratio:4/3;border-radius:0;clip-path:none!important}
.shape-enabled .service-section .shape-media>img,
.shape-enabled .service-section .service-photo.is-visible .shape-media>img{inset:0!important;width:100%!important;height:100%!important;border-radius:0!important;clip-path:none!important;object-fit:cover;transform:scale(1.01)!important}
@media(max-width:760px){.shape-enabled .service-section .service-photo{padding:0}.shape-enabled .service-section .shape-media,.shape-enabled .service-section.reverse .shape-media,.shape-enabled .story-service-2 .shape-media,.shape-enabled .story-service-3 .shape-media,.shape-enabled .story-service-5 .shape-media,.shape-enabled .story-service-6 .shape-media{width:104%;aspect-ratio:4/3;border-radius:0;clip-path:none!important}}

/* Keep the symbol visibly on top of the enlarged photograph. */
.shape-enabled .service-section .shape-media .shape-detail,
.shape-enabled .service-section.reverse .shape-media .shape-detail{z-index:8;left:auto;right:22px;bottom:22px;opacity:1}
.shape-enabled .service-section.reverse .shape-media .shape-detail{right:auto;left:22px}
.shape-enabled .service-section .shape-detail.shape-logo img{z-index:9;clip-path:none!important;opacity:1!important}
@media(max-width:760px){.shape-enabled .service-section .shape-media .shape-detail,.shape-enabled .service-section.reverse .shape-media .shape-detail{left:auto;right:12px;bottom:12px}.shape-enabled .service-section.reverse .shape-media .shape-detail{right:12px;left:auto}}

/* One consistent warm-neutral ground beneath every designed surface. */
body,.shape-enabled{background:var(--paper)}
.shape-enabled .marquee,
.shape-enabled .service-section .service-photo,
.shape-enabled .philosophy,
.shape-enabled .company-section{background-color:var(--paper)}

/* Footer returns to its original straight-edged finish. */
.shape-enabled footer{border-radius:0}

/* Balanced symbol: fully visible and animated once as it settles on the photo. */
.shape-enabled .service-section .shape-media .shape-detail,
.shape-enabled .service-section.reverse .shape-media .shape-detail{left:auto;right:24px;bottom:24px;width:clamp(82px,6.6vw,102px);border:6px solid var(--paper);overflow:hidden;opacity:0;transform:translateY(22px) scale(.72) rotate(-10deg);animation:none;transition:opacity .55s .15s ease,transform .9s .15s cubic-bezier(.18,.78,.22,1)}
.shape-enabled .service-section.reverse .shape-media .shape-detail{right:auto;left:24px;transform:translateY(22px) scale(.72) rotate(10deg)}
.shape-enabled .service-photo.is-visible .shape-media .shape-detail,
.shape-enabled .service-photo.is-visible.reverse .shape-media .shape-detail{opacity:1;transform:none}
.shape-enabled .service-section .shape-detail.shape-logo img{width:58%!important;height:auto!important;clip-path:none!important;transform:none!important;animation:none}
@media(max-width:760px){.shape-enabled .service-section .shape-media .shape-detail,.shape-enabled .service-section.reverse .shape-media .shape-detail{left:auto;right:14px;bottom:14px;width:72px;border-width:5px;transform:translateY(16px) scale(.76) rotate(-8deg)}.shape-enabled .service-photo.is-visible .shape-media .shape-detail,.shape-enabled .service-photo.is-visible.reverse .shape-media .shape-detail{opacity:1;transform:none}}

/* Small breathing gaps let each rounded section read as its own surface. */
.shape-enabled .philosophy,
.shape-enabled .services-intro,
.shape-enabled .service-section,
.shape-enabled .service-section.care,
.shape-enabled .area-section,
.shape-enabled .company-section,
.shape-enabled .contact-section{margin-block:clamp(12px,1.2vw,18px)}
.shape-enabled footer{margin-top:clamp(12px,1.2vw,18px)}
@media(max-width:760px){.shape-enabled .philosophy,.shape-enabled .services-intro,.shape-enabled .service-section,.shape-enabled .service-section.care,.shape-enabled .area-section,.shape-enabled .company-section,.shape-enabled .contact-section{margin-block:10px}.shape-enabled footer{margin-top:10px}}

/* Sage-fog substrate: visible only in the breathing spaces around rounded panels. */
.shape-enabled{background-color:#dfe6dd;background-image:linear-gradient(180deg,#e5e9e1 0%,#dce4dc 48%,#e5e1d8 100%);background-attachment:local}

/* A barely softened photographic edge—not a visibly rounded card. */
.shape-enabled .service-section .shape-media,
.shape-enabled .service-section.reverse .shape-media,
.shape-enabled .story-service-2 .shape-media,
.shape-enabled .story-service-3 .shape-media,
.shape-enabled .story-service-5 .shape-media,
.shape-enabled .story-service-6 .shape-media{border-radius:8px}
.shape-enabled .service-section .shape-media>img,
.shape-enabled .service-section .service-photo.is-visible .shape-media>img{border-radius:8px!important}
.shape-enabled .service-section .shape-media::after{content:"";position:absolute;z-index:3;inset:0;border-radius:8px;box-shadow:inset 0 0 14px rgba(244,241,233,.22);pointer-events:none}
@media(max-width:760px){.shape-enabled .service-section .shape-media,.shape-enabled .service-section.reverse .shape-media,.shape-enabled .story-service-2 .shape-media,.shape-enabled .story-service-3 .shape-media,.shape-enabled .story-service-5 .shape-media,.shape-enabled .story-service-6 .shape-media,.shape-enabled .service-section .shape-media>img,.shape-enabled .service-section .shape-media::after{border-radius:6px!important}}

/* Professional consolidation — one system for spacing, image scale and motion. */
.polish-enabled{--pro-ground:#dfe5dc;--pro-paper:#f5f2ea;--pro-radius:42px;background:linear-gradient(180deg,#e5e9e1 0%,var(--pro-ground) 50%,#e6e1d8 100%)}
.polish-enabled .hero{width:calc(100% - 24px);margin:12px;border-radius:56px;box-shadow:0 28px 80px rgba(8,31,26,.13)}
.polish-enabled .philosophy,
.polish-enabled .services-intro,
.polish-enabled .area-section,
.polish-enabled .company-section,
.polish-enabled .contact-section{width:calc(100% - 24px);margin:14px 12px;border-radius:var(--pro-radius)}
.polish-enabled .philosophy,.polish-enabled .company-section{background:var(--pro-paper)}

.polish-enabled .service-section,
.polish-enabled .service-section.care{width:100%;min-height:82vh;margin:14px 0;padding:0 12px;grid-template-columns:1fr 1fr;gap:12px;background:transparent}
.polish-enabled .service-section .service-photo,
.polish-enabled .service-section.care .service-photo{position:relative;min-height:82vh;padding:0;overflow:hidden;border-radius:var(--pro-radius);background:var(--pro-paper)}
.polish-enabled .service-section .service-photo::before,
.polish-enabled .service-section .service-photo::after{display:none}
.polish-enabled .service-watermark,.polish-enabled .shape-outline,.polish-enabled .service-orbit{display:none}
.polish-enabled .service-section .shape-media,
.polish-enabled .service-section.reverse .shape-media,
.polish-enabled .story-service-2 .shape-media,
.polish-enabled .story-service-3 .shape-media,
.polish-enabled .story-service-5 .shape-media,
.polish-enabled .story-service-6 .shape-media{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;overflow:hidden;border-radius:inherit;box-shadow:none;clip-path:none!important;transform:none!important}
.polish-enabled .service-section .shape-media::after{display:block;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 62%,rgba(10,35,29,.1));box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.polish-enabled .service-section .shape-media>img,
.polish-enabled .service-section .service-photo.is-visible .shape-media>img{inset:0!important;width:100%!important;height:100%!important;border-radius:inherit!important;clip-path:none!important;object-fit:cover;transform:scale(1.002)!important;filter:saturate(.78) contrast(1.035)}

.polish-enabled .service-section .service-copy,
.polish-enabled .service-section.care .service-copy{min-height:82vh;margin:0;padding:clamp(62px,6vw,102px) clamp(42px,5.2vw,88px) clamp(112px,9vw,150px);border-radius:var(--pro-radius);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(23,59,53,.035)}
.polish-enabled .service-copy>.section-index{margin:0 0 32px}
.polish-enabled .service-number{margin:0 0 18px;font-size:clamp(52px,5vw,76px);opacity:.78}
.polish-enabled .service-copy h2{max-width:100%;margin:0 0 30px;font-size:clamp(46px,4.7vw,76px);line-height:1.16;letter-spacing:-.04em}
.polish-enabled .service-copy>p:not(.section-index):not(.service-number){max-width:590px;line-height:2}
.polish-enabled .service-copy>a{margin-top:34px}
.polish-enabled .service-meta{left:clamp(42px,5.2vw,88px);right:clamp(42px,5.2vw,88px);bottom:34px}

.polish-enabled .service-section .shape-media .shape-detail,
.polish-enabled .service-section.reverse .shape-media .shape-detail{left:auto;right:26px;bottom:26px;width:94px;border:0;background:rgba(245,242,234,.94);box-shadow:0 14px 38px rgba(8,31,26,.17);opacity:0;transform:translateY(18px) scale(.78) rotate(-8deg);transition:opacity .55s .12s ease,transform .9s .12s cubic-bezier(.18,.78,.22,1);backdrop-filter:blur(9px)}
.polish-enabled .service-section.reverse .shape-media .shape-detail{right:auto;left:26px;transform:translateY(18px) scale(.78) rotate(8deg)}
.polish-enabled .service-photo.is-visible .shape-media .shape-detail{opacity:1;transform:none}
.polish-enabled .service-section .shape-detail.shape-logo img{width:58%!important;clip-path:none!important;transform:none!important}
.polish-enabled footer{margin-top:16px;border-radius:0}

@media(max-width:760px){.polish-enabled{--pro-radius:26px}.polish-enabled .hero{width:calc(100% - 14px);margin:7px;border-radius:30px}.polish-enabled .philosophy,.polish-enabled .services-intro,.polish-enabled .area-section,.polish-enabled .company-section,.polish-enabled .contact-section{width:calc(100% - 14px);margin:10px 7px;border-radius:var(--pro-radius)}.polish-enabled .service-section,.polish-enabled .service-section.care,.polish-enabled .service-section.reverse{min-height:auto;margin:10px 0;padding:0 7px;grid-template-columns:1fr;gap:10px}.polish-enabled .service-section .service-photo,.polish-enabled .service-section.care .service-photo{min-height:54vh;border-radius:var(--pro-radius)}.polish-enabled .service-section .service-copy,.polish-enabled .service-section.care .service-copy{min-height:auto;padding:68px 24px 136px;border-radius:var(--pro-radius)}.polish-enabled .service-copy h2{font-size:46px}.polish-enabled .service-meta{left:24px;right:24px;bottom:28px}.polish-enabled .service-section .shape-media .shape-detail,.polish-enabled .service-section.reverse .shape-media .shape-detail{left:auto;right:16px;bottom:16px;width:72px}.polish-enabled footer{margin-top:10px}}

/* Editorial rhythm — varied image weight and pacing without adding content. */
.editorial-enabled .story-service-1{grid-template-columns:60% 40%}
.editorial-enabled .story-service-2{grid-template-columns:44% 56%}
.editorial-enabled .story-service-3{grid-template-columns:54% 46%}
.editorial-enabled .story-service-4{grid-template-columns:48% 52%;margin-top:38px}
.editorial-enabled .story-service-5{grid-template-columns:58% 42%}
.editorial-enabled .story-service-6{grid-template-columns:42% 58%}
.editorial-enabled .story-service-1,
.editorial-enabled .story-service-1 .service-photo,
.editorial-enabled .story-service-1 .service-copy{min-height:88vh}
.editorial-enabled .story-service-2,
.editorial-enabled .story-service-2 .service-photo,
.editorial-enabled .story-service-2 .service-copy{min-height:78vh}
.editorial-enabled .story-service-3,
.editorial-enabled .story-service-3 .service-photo,
.editorial-enabled .story-service-3 .service-copy{min-height:82vh}
.editorial-enabled .story-service-4,
.editorial-enabled .story-service-4 .service-photo,
.editorial-enabled .story-service-4 .service-copy{min-height:80vh}
.editorial-enabled .story-service-5,
.editorial-enabled .story-service-5 .service-photo,
.editorial-enabled .story-service-5 .service-copy{min-height:82vh}
.editorial-enabled .story-service-6,
.editorial-enabled .story-service-6 .service-photo,
.editorial-enabled .story-service-6 .service-copy{min-height:88vh}
.editorial-enabled .story-service-1 .shape-media>img{object-position:52% 42%}
.editorial-enabled .story-service-2 .shape-media>img{object-position:54% 48%}
.editorial-enabled .story-service-3 .shape-media>img{object-position:50% 48%}
.editorial-enabled .story-service-4 .shape-media>img{object-position:53% 50%}
.editorial-enabled .story-service-5 .shape-media>img{object-position:50% 50%}
.editorial-enabled .story-service-6 .shape-media>img{object-position:52% 52%}
.editorial-enabled .story-service-1 .service-copy h2,
.editorial-enabled .story-service-6 .service-copy h2{font-size:clamp(48px,5vw,80px)}
.editorial-enabled .story-service-2 .service-copy,
.editorial-enabled .story-service-4 .service-copy{padding-top:clamp(54px,5vw,82px);padding-bottom:clamp(108px,8vw,138px)}
.editorial-enabled .service-copy .section-index{opacity:.72}
.editorial-enabled .service-copy>a{transition:transform .3s ease}.editorial-enabled .service-copy>a:hover{transform:translateX(8px)}

@media(max-width:760px){.editorial-enabled .story-service-1,.editorial-enabled .story-service-2,.editorial-enabled .story-service-3,.editorial-enabled .story-service-4,.editorial-enabled .story-service-5,.editorial-enabled .story-service-6{min-height:auto;margin-top:10px;grid-template-columns:1fr}.editorial-enabled .story-service-1 .service-photo,.editorial-enabled .story-service-2 .service-photo,.editorial-enabled .story-service-3 .service-photo,.editorial-enabled .story-service-4 .service-photo,.editorial-enabled .story-service-5 .service-photo,.editorial-enabled .story-service-6 .service-photo{min-height:56vh}.editorial-enabled .story-service-1 .service-copy,.editorial-enabled .story-service-2 .service-copy,.editorial-enabled .story-service-3 .service-copy,.editorial-enabled .story-service-4 .service-copy,.editorial-enabled .story-service-5 .service-copy,.editorial-enabled .story-service-6 .service-copy{min-height:auto;padding:68px 24px 136px}.editorial-enabled .story-service-1 .service-copy h2,.editorial-enabled .story-service-6 .service-copy h2{font-size:46px}}

/* Final refinement — quieter type, intentional crops and individually placed brand marks. */
.final-enabled .service-copy h2{font-size:clamp(44px,4.35vw,72px);line-height:1.12;letter-spacing:-.048em;text-wrap:balance}
.final-enabled .story-service-1 .service-copy h2{font-size:clamp(48px,4.7vw,78px)}
.final-enabled .story-service-6 .service-copy h2{font-size:clamp(44px,4.35vw,70px)}
.final-enabled .service-copy>p:not(.section-index):not(.service-number){font-size:clamp(14px,1.05vw,17px);line-height:2.05}
.final-enabled .service-copy .availability{font-size:13px;line-height:1.8}
.final-enabled .service-meta small{font-size:7px;letter-spacing:.14em;opacity:.72}
.final-enabled .service-meta li{font-size:10px;background:rgba(255,255,255,.22)}
.final-enabled .service-number{font-size:clamp(48px,4.5vw,70px);color:rgba(157,181,52,.9)}

.final-enabled .story-service-1 .shape-media>img{object-position:54% 40%;transform:scale(1.035)!important}
.final-enabled .story-service-2 .shape-media>img{object-position:57% 48%;transform:scale(1.025)!important}
.final-enabled .story-service-3 .shape-media>img{object-position:48% 49%;transform:scale(1.03)!important}
.final-enabled .story-service-4 .shape-media>img{object-position:55% 48%;transform:scale(1.025)!important}
.final-enabled .story-service-5 .shape-media>img{object-position:48% 50%;transform:scale(1.025)!important}
.final-enabled .story-service-6 .shape-media>img{object-position:54% 50%;transform:scale(1.035)!important}
.final-enabled .service-section .shape-media::after{background:linear-gradient(180deg,transparent 66%,rgba(9,31,26,.12));box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}

.final-enabled .story-service-1 .shape-detail{right:30px;bottom:30px}
.final-enabled .story-service-2 .shape-detail{left:28px;bottom:34px}
.final-enabled .story-service-3 .shape-detail{right:28px;bottom:46px}
.final-enabled .story-service-4 .shape-detail{left:30px;bottom:28px}
.final-enabled .story-service-5 .shape-detail{right:34px;bottom:30px}
.final-enabled .story-service-6 .shape-detail{left:30px;bottom:42px}
.final-enabled .service-section .shape-media .shape-detail,
.final-enabled .service-section.reverse .shape-media .shape-detail{width:88px;transition-duration:.72s;box-shadow:0 12px 34px rgba(8,31,26,.15)}

.final-enabled .story-service-1{margin-bottom:20px}
.final-enabled .story-service-2{margin-block:12px 26px}
.final-enabled .story-service-3{margin-block:12px 44px}
.final-enabled .story-service-4{margin-block:44px 18px}
.final-enabled .story-service-5{margin-block:12px 26px}
.final-enabled .story-service-6{margin-top:12px}

.final-enabled .menu-preview{border-radius:34px;box-shadow:0 38px 80px rgba(2,18,14,.32)}
.final-enabled .menu-overlay nav a{padding-block:17px}
.final-enabled .menu-overlay nav a>span{letter-spacing:-.025em}
.final-enabled .menu-button{box-shadow:0 9px 28px rgba(11,39,33,.12)}
.final-enabled .company-details dl>div{padding-block:22px}
.final-enabled footer{padding-top:76px;border-top:3px solid rgba(217,238,134,.72)}
.final-enabled .footer-logo{border-radius:12px}
.final-enabled .line-toggle{padding:11px 15px;border-color:rgba(23,59,53,.22);background:rgba(245,242,234,.92);box-shadow:0 10px 28px rgba(13,43,37,.11)}

@media(max-width:760px){.final-enabled .service-copy h2,.final-enabled .story-service-1 .service-copy h2,.final-enabled .story-service-6 .service-copy h2{font-size:44px;line-height:1.16}.final-enabled .story-service-1,.final-enabled .story-service-2,.final-enabled .story-service-3,.final-enabled .story-service-4,.final-enabled .story-service-5,.final-enabled .story-service-6{margin-block:10px}.final-enabled .story-service-1 .shape-detail,.final-enabled .story-service-2 .shape-detail,.final-enabled .story-service-3 .shape-detail,.final-enabled .story-service-4 .shape-detail,.final-enabled .story-service-5 .shape-detail,.final-enabled .story-service-6 .shape-detail{left:auto;right:16px;bottom:16px}.final-enabled .service-section .shape-media .shape-detail,.final-enabled .service-section.reverse .shape-media .shape-detail{width:68px}.final-enabled .menu-overlay nav a{padding-block:15px}.final-enabled footer{padding-top:62px}}

/* Completion candidate — selective branding and a less repetitive silhouette. */
.master-enabled{font-feature-settings:"palt";text-rendering:optimizeLegibility}
.master-enabled .story-service-2 .shape-detail,
.master-enabled .story-service-4 .shape-detail,
.master-enabled .story-service-5 .shape-detail{display:none}
.master-enabled .story-service-1 .service-photo,.master-enabled .story-service-1 .service-copy{border-radius:48px}
.master-enabled .story-service-2 .service-photo,.master-enabled .story-service-2 .service-copy{border-radius:28px}
.master-enabled .story-service-3 .service-photo,.master-enabled .story-service-3 .service-copy{border-radius:38px}
.master-enabled .story-service-4 .service-photo,.master-enabled .story-service-4 .service-copy{border-radius:34px}
.master-enabled .story-service-5 .service-photo,.master-enabled .story-service-5 .service-copy{border-radius:26px}
.master-enabled .story-service-6 .service-photo,.master-enabled .story-service-6 .service-copy{border-radius:46px}
.master-enabled .philosophy{border-radius:36px}
.master-enabled .services-intro{border-radius:24px}
.master-enabled .area-section{border-radius:52px}
.master-enabled .company-section{border-radius:28px}
.master-enabled .contact-section{border-radius:48px}
.master-enabled .service-section .shape-media>img{filter:saturate(.74) contrast(1.025) brightness(1.015)}
.master-enabled .service-section .shape-media::after{background:linear-gradient(180deg,rgba(245,242,234,.015),transparent 58%,rgba(9,31,26,.1))}
.master-enabled .site-header .logo-link img{transition:filter .42s ease,opacity .42s ease}
.master-enabled .service-copy>a{font-size:14px;letter-spacing:.02em}
.master-enabled .service-copy>a::after{opacity:.72}
.master-enabled .company-section{padding-top:116px;padding-bottom:116px}
.master-enabled footer>div a{color:rgba(255,255,255,.78);transition:color .25s ease,border-color .25s ease}.master-enabled footer>div a:hover{color:#fff;border-color:var(--lime)}

/* Footer brand lockup: let the official mark live directly on the dark field. */
.master-enabled footer{position:relative;overflow:hidden;padding:84px 6vw 38px;border-top:0;grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);gap:clamp(52px,8vw,130px)}
.master-enabled footer::before{content:"";position:absolute;top:0;left:6vw;right:6vw;height:1px;background:linear-gradient(90deg,var(--lime),rgba(217,238,134,.28) 42%,transparent 88%)}
.master-enabled .footer-logo{position:relative;width:clamp(285px,29vw,410px);padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;transition:opacity .3s ease,transform .3s ease}
.master-enabled .footer-logo:hover{opacity:.8;transform:translateY(-2px)}
.master-enabled .footer-logo img{filter:brightness(0) invert(1);opacity:.95}
.master-enabled footer>div{align-self:center}
.master-enabled footer>p{margin-top:2px}
@media(max-width:760px){.master-enabled footer{padding:58px 20px 76px;grid-template-columns:1fr;gap:44px}.master-enabled footer::before{left:20px;right:20px}.master-enabled .footer-logo{width:min(78vw,310px)}.master-enabled footer>p{margin-top:8px}}

/* Typography system: two Japanese families only, with the official logo untouched. */
:root{--font-sans:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;--font-serif:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif}
body,button,input,textarea,select{font-family:var(--font-sans);font-kerning:normal;font-synthesis:none;text-rendering:optimizeLegibility}
h1,h2,h3,.menu-overlay nav a>span,.menu-preview p,.thread-word,.story-flow b,.story-canvas-copy p,.connection-examples span{font-family:var(--font-serif)!important;font-feature-settings:"palt" 1}
.section-index,.eyebrow,.service-label,.story-overline,.menu-kicker,.menu-address small{font-family:var(--font-sans);font-feature-settings:"palt" 1}

@media(max-width:760px){.master-enabled .story-service-1 .service-photo,.master-enabled .story-service-2 .service-photo,.master-enabled .story-service-3 .service-photo,.master-enabled .story-service-4 .service-photo,.master-enabled .story-service-5 .service-photo,.master-enabled .story-service-6 .service-photo{min-height:50vh}.master-enabled .story-service-2 .service-photo,.master-enabled .story-service-5 .service-photo{min-height:46vh}.master-enabled .story-service-1 .service-photo,.master-enabled .story-service-1 .service-copy,.master-enabled .story-service-6 .service-photo,.master-enabled .story-service-6 .service-copy{border-radius:28px}.master-enabled .story-service-2 .service-photo,.master-enabled .story-service-2 .service-copy,.master-enabled .story-service-3 .service-photo,.master-enabled .story-service-3 .service-copy,.master-enabled .story-service-4 .service-photo,.master-enabled .story-service-4 .service-copy,.master-enabled .story-service-5 .service-photo,.master-enabled .story-service-5 .service-copy{border-radius:22px}.master-enabled .philosophy,.master-enabled .services-intro,.master-enabled .area-section,.master-enabled .company-section,.master-enabled .contact-section{border-radius:24px}.master-enabled .service-copy>p:not(.section-index):not(.service-number){font-size:14px;line-height:1.95}.master-enabled .company-section{padding-top:88px;padding-bottom:88px}}

/* 90-point usability pass. */
.master-enabled .site-header.is-dark .logo-link,
.master-enabled .site-header.menu-open .logo-link{padding:7px 10px;border-radius:14px;background:rgba(13,43,37,.72);box-shadow:0 10px 28px rgba(5,24,19,.16)}
.master-enabled .site-header.is-dark .logo-link img,
.master-enabled .site-header.menu-open .logo-link img{opacity:1!important;filter:brightness(0) invert(1) drop-shadow(0 2px 10px rgba(0,0,0,.18))!important}
.master-enabled .site-header.is-scrolled:not(.is-dark):not(.menu-open) .logo-link{padding:7px 10px;border-radius:14px;background:rgba(245,242,234,.9);box-shadow:0 10px 28px rgba(13,43,37,.1)}
.master-enabled .site-header.is-scrolled:not(.is-dark):not(.menu-open) .logo-link img{opacity:1!important;filter:none!important}
.master-enabled .relationship-note{width:max-content;max-width:100%;margin:18px 0 0!important;padding:8px 12px;border:1px solid rgba(23,59,53,.16);border-radius:100px;background:rgba(255,255,255,.28);font-size:12px!important;line-height:1.5!important;font-weight:600;letter-spacing:.02em}
.master-enabled .service-copy>p:not(.section-index):not(.service-number):not(.relationship-note){font-size:16px;line-height:2}
.master-enabled .story-service-1 .shape-media>img{object-position:44% 40%}

@media(min-width:761px) and (max-width:1024px){.master-enabled .service-section,.master-enabled .service-section.care,.master-enabled .service-section.reverse,.master-enabled .story-service-1,.master-enabled .story-service-2,.master-enabled .story-service-3,.master-enabled .story-service-4,.master-enabled .story-service-5,.master-enabled .story-service-6{grid-template-columns:1fr 1fr;min-height:70vh}.master-enabled .service-section .service-photo,.master-enabled .service-section .service-copy,.master-enabled .service-section.care .service-photo,.master-enabled .service-section.care .service-copy{min-height:70vh}.master-enabled .service-section .service-copy{padding:50px 34px 112px}.master-enabled .service-copy h2,.master-enabled .story-service-1 .service-copy h2,.master-enabled .story-service-6 .service-copy h2{font-size:clamp(36px,4.6vw,48px)}.master-enabled .service-copy>p:not(.section-index):not(.service-number):not(.relationship-note){font-size:15px;line-height:1.9}.master-enabled .service-meta{left:34px;right:34px}.master-enabled .service-meta ul{display:none}}
@media(max-width:760px){.master-enabled .story-service-1 .service-photo,.master-enabled .story-service-3 .service-photo,.master-enabled .story-service-4 .service-photo,.master-enabled .story-service-6 .service-photo{min-height:44vh}.master-enabled .story-service-2 .service-photo,.master-enabled .story-service-5 .service-photo{min-height:40vh}.master-enabled .story-service-1 .service-copy,.master-enabled .story-service-2 .service-copy,.master-enabled .story-service-3 .service-copy,.master-enabled .story-service-4 .service-copy,.master-enabled .story-service-5 .service-copy,.master-enabled .story-service-6 .service-copy{padding:58px 22px 116px}.master-enabled .service-copy h2,.master-enabled .story-service-1 .service-copy h2,.master-enabled .story-service-6 .service-copy h2{font-size:40px}.master-enabled .service-copy>p:not(.section-index):not(.service-number):not(.relationship-note){font-size:16px;line-height:1.9}.master-enabled .relationship-note{width:auto;font-size:11px!important}.master-enabled .service-meta{left:22px;right:22px;bottom:25px}.master-enabled .service-meta ul{display:none}}

/* 90-point editorial finish: quieter header, consistent grading, tighter final chapters. */
.master-enabled .site-header.is-dark .logo-link,
.master-enabled .site-header.menu-open .logo-link,
.master-enabled .site-header.is-scrolled:not(.is-dark):not(.menu-open) .logo-link{padding:0;background:transparent;border-radius:0;box-shadow:none}
.master-enabled .site-header.is-dark .logo-link::after,
.master-enabled .site-header.menu-open .logo-link::after{inset:12% -7%;opacity:.72;background:rgba(7,32,26,.34);filter:blur(18px)}
.master-enabled .site-header.is-scrolled:not(.is-dark):not(.menu-open) .logo-link::after{opacity:0}
.master-enabled .area-image img,.master-enabled .contact-image img{filter:saturate(.72) contrast(1.035) brightness(.985)}
@media(min-width:1025px){.master-enabled .story-service-4,.master-enabled .story-service-5,.master-enabled .story-service-6{min-height:84vh}.master-enabled .story-service-4 .service-photo,.master-enabled .story-service-5 .service-photo,.master-enabled .story-service-6 .service-photo,.master-enabled .story-service-4 .service-copy,.master-enabled .story-service-5 .service-copy,.master-enabled .story-service-6 .service-copy{min-height:84vh}.master-enabled .story-service-4 .service-copy,.master-enabled .story-service-5 .service-copy,.master-enabled .story-service-6 .service-copy{padding-top:9vw;padding-bottom:9vw}}
.master-enabled .marquee>div{color:rgba(23,59,53,.36)}
.master-enabled .marquee i{color:rgba(122,149,72,.48)}
.master-enabled .menu-overlay nav a{grid-template-columns:1fr auto;gap:18px}
@media(max-width:760px){.master-enabled .menu-overlay{overflow-x:hidden;overflow-y:auto}.master-enabled .menu-overlay nav a{grid-template-columns:1fr auto}}
.master-enabled .service-number{color:rgba(157,181,52,.42)}

/* Corporate contact: form-first consultation channel. */
.master-enabled .contact-layout{position:relative;z-index:2;min-height:100vh;display:grid;grid-template-columns:minmax(0,.82fr) minmax(440px,1.18fr);align-items:center;gap:clamp(54px,7vw,120px);padding:120px 7vw}
.master-enabled .contact-layout .contact-copy{min-height:0;padding:0}
.master-enabled .contact-privacy-note{max-width:460px;margin-top:22px!important;font-size:12px!important;line-height:1.8!important;color:rgba(255,255,255,.68)}
.master-enabled .contact-form-panel{padding:clamp(28px,4vw,54px);border:1px solid rgba(255,255,255,.42);border-radius:30px;background:rgba(247,246,241,.94);color:var(--ink);box-shadow:0 34px 90px rgba(4,25,20,.28);backdrop-filter:blur(16px)}
.master-enabled .contact-form-kicker{margin:0 0 12px;font-size:9px;font-weight:700;letter-spacing:.2em;color:rgba(23,59,53,.56)}
.master-enabled .contact-form-panel h3{margin:0 0 12px;font:500 clamp(30px,3vw,46px)/1.25 var(--font-serif)}
.master-enabled .contact-form-panel>p:not(.contact-form-kicker){margin:0 0 30px;font-size:13px;line-height:1.8;color:rgba(23,59,53,.7)}
.master-enabled .contact-form-panel>.form-response-note{margin:-16px 0 28px;padding:12px 14px;border-left:2px solid rgba(157,181,52,.7);background:rgba(157,181,52,.08);font-size:11px;line-height:1.7}
.master-enabled .contact-form-panel>.form-response-note a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.master-enabled .contact-form-panel form{display:grid;gap:20px}
.master-enabled .contact-form-panel label{display:grid;gap:8px;font-size:12px;font-weight:700}
.master-enabled .contact-form-panel label>span b{margin-left:7px;padding:3px 6px;border-radius:100px;background:rgba(157,181,52,.2);color:#66751d;font-size:9px}
.master-enabled .contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.master-enabled .contact-form-panel .form-contact-note{margin:-10px 0 0;font-size:10px;line-height:1.6;color:rgba(23,59,53,.62)}
.master-enabled .contact-form-panel .form-contact-note.is-error{color:#9b3d32;font-weight:700}
.master-enabled .contact-form-panel input[aria-invalid="true"]{border-color:#9b3d32;background:rgba(155,61,50,.06)}
.master-enabled .contact-form-panel input,.master-enabled .contact-form-panel select,.master-enabled .contact-form-panel textarea{width:100%;border:0;border-bottom:1px solid rgba(23,59,53,.28);border-radius:0;background:rgba(255,255,255,.45);padding:13px 12px;color:var(--ink);font:400 16px/1.5 var(--font-sans);outline:none;transition:border-color .25s ease,background .25s ease}
.master-enabled .contact-form-panel textarea{resize:vertical;min-height:132px}
.master-enabled .contact-form-panel input:focus,.master-enabled .contact-form-panel select:focus,.master-enabled .contact-form-panel textarea:focus{border-color:var(--ink);background:#fff}
.master-enabled .contact-form-panel .contact-consent{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:10px;font-weight:500;line-height:1.6}
.master-enabled .contact-form-panel .contact-consent input{width:18px;height:18px;margin:0;accent-color:var(--ink)}
.master-enabled .contact-consent a{border-bottom:1px solid}
.master-enabled .contact-form-panel button{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;border-radius:100px;padding:18px 24px;background:var(--deep);color:#fff;font-weight:700;cursor:pointer;transition:transform .25s ease,background .25s ease}
.master-enabled .contact-form-panel button:hover{transform:translateY(-2px);background:#173f38}
.master-enabled .prototype-form-note{display:block;text-align:center;font-size:10px;color:rgba(23,59,53,.55)}
.master-enabled .form-success{display:grid;justify-items:start;gap:18px;padding:24px 0 8px}
.master-enabled .form-success>span{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--lime);color:var(--deep);font-size:32px;font-weight:500}
.master-enabled .form-success h4{margin:2px 0 0;font:500 clamp(27px,3vw,40px)/1.35 var(--font-serif)}
.master-enabled .form-success p{margin:0;font-size:14px;line-height:1.9;color:rgba(23,59,53,.76)}
.master-enabled .form-success a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.master-enabled .form-success button{margin-top:8px;background:transparent;color:var(--ink);border:1px solid rgba(23,59,53,.35)}
.master-enabled .form-success button:hover{background:rgba(23,59,53,.06)}
.master-enabled .form-success small{font-size:10px;color:rgba(23,59,53,.55)}
@media(max-width:900px){.master-enabled .contact-layout{grid-template-columns:1fr;padding:100px 24px;gap:54px}.master-enabled .contact-form-panel{width:100%;max-width:680px;margin-inline:auto}}
@media(max-width:560px){.master-enabled .contact-layout{padding:88px 20px}.master-enabled .contact-form-panel{padding:28px 20px;border-radius:24px}.master-enabled .contact-form-row{grid-template-columns:1fr}.master-enabled .contact-form-panel h3{font-size:32px}}

/* Form-first contact rebalance: editorial copy and a deliberately restrained form card. */
.master-enabled .contact-layout{width:min(100%,1540px);margin-inline:auto;grid-template-columns:minmax(340px,.9fr) minmax(500px,680px);gap:clamp(64px,7vw,132px);padding:clamp(118px,8vw,154px) clamp(52px,6vw,104px)}
.master-enabled .contact-layout .contact-copy{max-width:560px}
.master-enabled .contact-actions{width:min(100%,360px)}
.master-enabled .contact-actions a{position:relative;width:100%;min-width:0;padding:22px 58px 20px 24px;border-radius:18px;background:rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 46px rgba(4,25,20,.12)}
.master-enabled .contact-actions a::after{content:"↘";position:absolute;right:24px;top:50%;font:400 20px/1 var(--font-sans);transform:translateY(-50%);transition:transform .3s ease}
.master-enabled .contact-actions a:hover::after{transform:translate(4px,-25%)}
.master-enabled .contact-form-panel{width:100%;max-width:680px;justify-self:end}
@media(max-width:1180px) and (min-width:901px){.master-enabled .contact-layout{grid-template-columns:minmax(300px,.82fr) minmax(470px,1fr);gap:48px;padding:104px 42px}.master-enabled .contact-form-panel{max-width:620px}}
@media(max-width:900px){.master-enabled .contact-layout{width:100%;grid-template-columns:1fr;gap:48px;padding:100px clamp(24px,7vw,72px)}.master-enabled .contact-layout .contact-copy{max-width:620px}.master-enabled .contact-form-panel{max-width:760px;justify-self:stretch}}
@media(max-width:560px){.master-enabled .contact-layout{padding:88px 20px;gap:38px}.master-enabled .contact-actions{width:100%}.master-enabled .contact-actions a{padding:20px 54px 18px 20px;border-radius:16px}.master-enabled .contact-actions a::after{right:20px}.master-enabled .contact-form-panel{padding:28px 20px;border-radius:24px}}

/* Motion direction: purposeful entrances, quiet resting states. */
.master-enabled .page-intro{animation-duration:.85s;animation-delay:.55s}
.master-enabled .reveal{transform:translateY(24px);transition:opacity .72s ease,transform .78s cubic-bezier(.2,.72,.2,1)}
.master-enabled .hero h1 span{animation-duration:.78s;animation-delay:.72s}
.master-enabled .hero h1 span+span{animation-delay:.92s}
.master-enabled .hero-copy>p:last-child{animation-duration:.7s;animation-delay:1.16s}
.master-enabled .menu-overlay{transition-duration:.72s,.25s,.72s}
.master-enabled .menu-plus{animation:none;transform:rotate(6deg)}
.master-enabled .service-photo{transition-duration:.88s,.5s}
.master-enabled .service-section .shape-media .shape-detail,
.master-enabled .service-section.reverse .shape-media .shape-detail{transition-duration:.5s,.72s}
.master-enabled .service-section:hover .service-photo img{transform:scale(1.012)!important}
.master-enabled .marquee>div{animation-duration:38s}

@media(max-width:760px){
  .master-enabled .page-intro{animation-duration:.72s;animation-delay:.38s}
  .master-enabled .reveal{transform:translateY(18px);transition-duration:.58s,.64s}
  .master-enabled .hero h1 span{animation-delay:.52s}
  .master-enabled .hero h1 span+span{animation-delay:.7s}
  .master-enabled .hero-copy>p:last-child{animation-delay:.92s}
  .master-enabled .marquee>div{animation-duration:46s}
}

/* WordPress theme integration. */
.marutasu-corporate-site{padding:0!important}
.marutasu-corporate-site .hero-image>img,
.marutasu-corporate-site .shape-media>img,
.marutasu-corporate-site .area-image>img,
.marutasu-corporate-site .contact-image>img,
.marutasu-corporate-site .menu-preview-panel>img,
.marutasu-corporate-site .menu-mosaic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.marutasu-corporate-site .shape-detail>img{display:block;width:58%;height:auto!important;margin:auto;object-fit:contain}
.marutasu-corporate-site .menu-preview-panel{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s}
.marutasu-corporate-site .menu-preview-panel.is-active{opacity:1;visibility:visible}
.marutasu-corporate-site .menu-preview-panel>p{position:absolute;z-index:3;left:28px;bottom:24px;margin:0;font:500 18px/1.4 var(--font-serif);letter-spacing:.08em;color:#fff}
.marutasu-corporate-site .menu-preview-panel>p small{display:block;margin-bottom:4px;font:700 8px/1 var(--font-sans);letter-spacing:.2em;color:var(--lime)}
.marutasu-corporate-site .menu-preview-panel.menu-brand{display:flex}
.marutasu-corporate-site .menu-preview-panel.menu-brand img{position:relative;inset:auto;width:100%;height:auto;object-fit:contain}
.marutasu-corporate-site .form-install-notice{margin-top:24px;padding:22px;border:1px solid rgba(23,59,53,.18);border-radius:18px;background:rgba(157,181,52,.08)}
.marutasu-corporate-site .form-install-notice p{margin:0 0 14px!important}
.marutasu-corporate-site .form-install-notice a{font-weight:700;border-bottom:1px solid}
.marutasu-corporate-site .wp-content-page,.marutasu-corporate-site .wp-fallback{min-height:100vh;max-width:1040px;margin:auto;padding-top:120px;padding-bottom:120px}
.marutasu-corporate-site .wp-page-logo{display:block;width:min(300px,70vw);margin-bottom:70px}
.marutasu-corporate-site .wp-page-logo img{display:block;width:100%;height:auto}
.marutasu-corporate-site .wp-content-page article h1,.marutasu-corporate-site .wp-fallback article h1{font:500 clamp(38px,6vw,70px)/1.25 var(--font-serif)}
.marutasu-corporate-site .wp-content-page article,.marutasu-corporate-site .wp-fallback article{font-size:16px;line-height:2}
body.admin-bar .site-header{top:32px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}

/* 0.1.2 — form-first contact guidance and automatic category selection. */
#philosophy,#services,#area,#company,#contact,#corporate-contact-form{scroll-margin-top:82px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--lime);outline-offset:4px}
.master-enabled #corporate-contact-form{scroll-margin-top:94px}
.master-enabled .contact-primary-link{display:grid;grid-template-columns:1fr auto;align-items:end;width:min(100%,460px);margin-top:38px;padding:19px 4px 17px;border-bottom:1px solid rgba(255,255,255,.7);color:#fff;font-size:18px;font-weight:700;transition:padding .28s ease,border-color .28s ease}
.master-enabled .contact-primary-link span{grid-column:1/-1;margin-bottom:8px;font-size:9px;letter-spacing:.2em;color:rgba(255,255,255,.58)}
.master-enabled .contact-primary-link b{font-size:22px;font-weight:400;transition:transform .28s ease}
.master-enabled .contact-primary-link:hover{padding-left:10px;border-color:var(--lime)}
.master-enabled .contact-primary-link:hover b{transform:translateX(7px)}
.master-enabled .contact-flow{width:min(100%,460px);margin-top:48px;padding-top:18px;border-top:1px solid rgba(255,255,255,.24)}
.master-enabled .contact-flow>p{margin:0 0 17px;font-size:10px;font-weight:700;letter-spacing:.14em;color:rgba(255,255,255,.62)}
.master-enabled .contact-flow ol{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0;padding:0;list-style:none}
.master-enabled .contact-flow li{display:grid;gap:8px;align-content:start;min-height:70px;padding-right:10px;border-right:1px solid rgba(255,255,255,.16)}
.master-enabled .contact-flow li:last-child{border-right:0}
.master-enabled .contact-flow li span{font:500 18px/1 "Times New Roman",serif;color:var(--lime)}
.master-enabled .contact-flow li b{font-size:11px;line-height:1.6;letter-spacing:.02em}
.master-enabled .contact-form-panel .category-selected-note{display:block;margin-top:8px;color:#66751d;font-size:10px;font-weight:700;letter-spacing:.02em}
.master-enabled .contact-form-panel .contact-consent{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;width:100%}
.master-enabled .contact-form-panel .contact-consent input{width:18px;height:18px;margin:3px 0 0;padding:0}
.master-enabled .contact-form-panel .contact-consent>span{display:block;min-width:0}
.master-enabled .contact-form-panel .wpcf7-acceptance .wpcf7-list-item{display:block;margin:0}
.master-enabled .contact-form-panel .wpcf7-acceptance label{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;width:100%;font-weight:500;line-height:1.6}
.master-enabled .contact-form-panel .wpcf7-acceptance input{width:18px;height:18px;margin:3px 0 0;padding:0;accent-color:var(--ink)}
.master-enabled .contact-form-panel .wpcf7-acceptance .wpcf7-list-item-label{display:block;min-width:0}
@media(max-width:900px){.master-enabled .contact-shade{background:linear-gradient(180deg,rgba(13,43,37,.9),rgba(13,43,37,.48))}.master-enabled .contact-layout .contact-copy{width:100%;max-width:680px;margin-inline:auto}.master-enabled .contact-form-panel{margin-inline:auto}}
@media(max-width:560px){#philosophy,#services,#area,#company,#contact{scroll-margin-top:68px}.master-enabled #corporate-contact-form{scroll-margin-top:74px}.master-enabled .contact-primary-link{margin-top:30px}.master-enabled .contact-flow{margin-top:38px}.master-enabled .contact-flow ol{grid-template-columns:1fr;gap:0}.master-enabled .contact-flow li{grid-template-columns:36px 1fr;align-items:center;gap:8px;min-height:0;padding:11px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.master-enabled .contact-flow li:last-child{border-bottom:0}.master-enabled .contact-flow li b{font-size:11px}}
