:root{--bg:#0a1017;--panel:#101923;--text:#eeeee8;--muted:#9ba6ae;--line:#ffffff22;--gold:#d2b786;--serif:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.9 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}::selection{background:var(--gold);color:var(--bg)}.wrap{width:88%;max-width:1320px;margin-inline:auto}.section{padding-block:115px}.eyebrow{font-size:10px;letter-spacing:2.3px;color:var(--gold);font-weight:500;margin:0 0 28px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}h2{font-size:clamp(29px,3.7vw,49px);line-height:1.65;letter-spacing:1.3px;margin-bottom:30px}p{color:var(--muted)}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--gold);color:var(--bg);padding:10px}.skip:focus{top:10px}.site-header{height:102px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#0a1017ee;position:sticky;top:0;z-index:20;backdrop-filter:blur(15px)}.brand{font:37px/1 Georgia,serif;letter-spacing:1px;display:inline-block;white-space:nowrap}.brand span,.brand i{color:var(--gold);font-style:normal}.brand small{display:block;font:9px/1 var(--sans);letter-spacing:3px;margin-top:9px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:11px;letter-spacing:1px}.site-header nav a:hover{color:var(--gold)}.nav-contact{border:1px solid #d2b78680;padding:10px 22px;min-width:114px}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.hero{padding:72px 6% 0;display:grid;grid-template-columns:1.05fr 1fr;gap:0 6%;max-width:1800px;margin:auto}.hero-type{position:relative;z-index:2;padding-top:30px;padding-bottom:40px}.hero h1{font-size:clamp(52px,6.25vw,94px);letter-spacing:4px;line-height:1.45;margin:0 0 26px}.hero h1 em{font-style:normal;color:var(--gold)}.hero-copy{font-size:14px;line-height:2.2;margin:0 0 30px}.text-link{display:inline-flex;align-items:center;gap:48px;font-size:12px;padding:10px 0;border-bottom:1px solid #d2b78680}.text-link span{color:var(--gold);font-size:20px}.hero-art{position:relative;min-height:610px;margin-top:0;overflow:hidden;background:#192b2a}.hero-art:after{content:"";position:absolute;width:90%;height:65%;border:1px solid #d2b78677;transform:rotate(-32deg);border-radius:50%;top:14%;left:5%;pointer-events:none}.hero-art video{width:100%;height:100%;object-fit:cover;position:absolute;filter:saturate(.35) brightness(.7)}.art-shade{position:absolute;inset:0;background:linear-gradient(180deg,#07132022,#07132000 40%,#071320bb)}.art-label{position:absolute;left:30px;top:28px;color:#eee8db;font:9px var(--sans);letter-spacing:2.5px}.art-word{position:absolute;top:36%;left:10%;font:clamp(30px,3.5vw,50px)/1.5 Georgia,serif;color:#fff}.art-word em{color:#e5d4ac;font-weight:400}.motion-toggle{position:absolute;right:20px;top:20px;border:1px solid #ffffff55;background:#0a101755;color:#fff;font-size:9px;letter-spacing:1px;padding:8px}.art-caption{position:absolute;bottom:28px;left:30px;right:30px;display:flex;justify-content:space-between;align-items:end;font-size:11px;line-height:2}.art-caption>span:last-child{font-size:8px;letter-spacing:1px}.hero-foot{grid-column:1/-1;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:28px 0;font-size:9px;letter-spacing:1.7px;color:var(--muted)}.intro{padding-block:120px;display:grid;grid-template-columns:1fr 1.7fr}.intro>div{max-width:660px}.intro h2{font-size:42px}.intro p:not(.eyebrow){line-height:2.5;max-width:580px}.sub-link{display:inline-block;font-size:11px;border:none;background:none;color:var(--gold);padding:10px 0;letter-spacing:.3px}.sub-link:hover,.text-link:hover{color:white}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px}.section-head h2{margin-bottom:0}.section-head>p{font-size:12px;line-height:2.4;margin-bottom:8px}.services{padding-top:10px}.service-list article{display:grid;grid-template-columns:50px 1.05fr 1.45fr 40px;gap:25px;align-items:start;padding:38px 0;border-top:1px solid var(--line)}.service-list article:last-child{border-bottom:1px solid var(--line)}.service-no{font:14px Georgia;color:var(--gold);padding-top:7px}.service-list h3{font-size:21px;font-weight:400;letter-spacing:1px;margin:0}.service-list h3 small{display:block;font:12px/2 Georgia,serif;color:var(--gold);letter-spacing:.5px;margin-top:8px}.service-list p{font-size:13px;margin-bottom:18px}.service-list article>a{font-size:27px;color:var(--gold);text-align:right}.tags{padding:0;margin:0;display:flex;gap:8px;list-style:none;flex-wrap:wrap}.tags li{font-size:9px;border:1px solid var(--line);padding:3px 10px;color:var(--muted)}.philosophy{background:#111a23;position:relative}.principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.principle-grid article{border-top:1px solid var(--line);padding:32px 0 25px}.principle-grid article>span{color:var(--gold);font-size:9px;letter-spacing:2px}.principle-grid h3{font-family:var(--serif);font-weight:400;font-size:25px;margin:17px 0}.principle-grid p{font-size:13px;max-width:490px}.portfolio-feature{position:relative;display:block;border:1px solid #d2b78644;overflow:hidden;background:#05132a}.portfolio-feature img{display:block;width:100%;aspect-ratio:2.8;object-fit:cover;transition:transform .7s;opacity:.75}.portfolio-feature:hover img{transform:scale(1.025)}.portfolio-label{position:relative;display:grid;grid-template-columns:1fr auto;padding:30px 36px;border-top:1px solid #d2b78633;background:var(--panel);align-items:center}.portfolio-label>span{font-size:10px;letter-spacing:2px;color:var(--gold)}.portfolio-label strong{font-size:23px;font-family:var(--serif);font-weight:400}.portfolio-label strong b{color:var(--gold);padding-left:30px;font-weight:400}.portfolio-label small{font-size:10px;color:var(--muted);grid-column:1/-1;margin-top:10px}.about{display:grid;grid-template-columns:1fr 1.35fr;gap:13%;border-top:1px solid var(--line)}.large-year{font:90px Georgia;color:var(--gold);margin:55px 0 35px}.large-year span{display:block;font:10px var(--sans);letter-spacing:3px;margin-top:15px}.timeline{display:grid;gap:15px;padding-left:18px;border-left:1px solid #d2b78666;color:var(--muted);font-size:12px}.about-copy>p{font-size:13px;line-height:2.5;margin-bottom:24px}.about-copy .signature{font:20px Georgia,serif;color:var(--text);margin:38px 0 12px}.signature small{display:block;font:10px var(--sans);margin-top:12px;color:var(--muted)}.process{border-top:1px solid var(--line)}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;padding:0;list-style:none}.process-steps li{border-top:1px solid #d2b78677;padding-top:25px}.process-steps span{font-size:9px;letter-spacing:2px;color:var(--gold)}.process-steps h3{font-size:18px;font-weight:400;margin:18px 0}.process-steps p{font-size:12px}.journal{background:#e7e5de;color:#16202b}.journal .eyebrow,.journal .text-link{color:#77603d}.journal-list{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.journal-list>a{border-top:1px solid #16202b44;padding-top:24px;display:flex;flex-direction:column}.journal-list>a>span{font-size:9px;letter-spacing:1.5px;color:#77603d}.journal-list h3{font:22px/1.9 var(--serif);margin:22px 0 18px;min-height:84px}.journal-list p{color:#5a6369;font-size:12px;margin-bottom:30px}.journal-list b{font-size:9px;font-weight:500;letter-spacing:1.5px;margin-top:auto}.journal-list a:hover h3{text-decoration:underline;text-underline-offset:7px}.channel-link{display:flex;align-items:center;gap:40px;border-block:1px solid #16202b33;margin-top:50px;padding:23px 0;font-size:13px}.channel-link span{font-size:9px;letter-spacing:1px}.channel-link b{margin-left:auto}.consult{display:grid;grid-template-columns:1fr 1.2fr;gap:9%}.consult>div>p:not(.eyebrow){font-size:12px;line-height:2.4}.consult-box{border:1px solid #d2b78644;padding:36px}.consult-box h3{font-size:17px;font-weight:400;line-height:1.9}.consult-box #flow-options{display:grid;gap:10px}.consult-box #flow-options button{color:var(--text);border:1px solid var(--line);background:transparent;padding:17px;text-align:left;font-size:12px;display:flex;justify-content:space-between}.consult-box #flow-options button:hover{border-color:var(--gold);background:#d2b7860d}.consult-box button span{color:var(--gold)}#flow-result p{font-size:13px}.faq{padding-top:0}.faq details{border-top:1px solid var(--line);padding:23px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-size:14px;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary span{color:var(--gold)}.faq details p{max-width:860px;font-size:13px;margin:20px 0 5px}.contact{background:#15212d}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.email-link{font:18px Georgia,serif;color:var(--gold);display:inline-block;margin-top:25px}.contact-grid>div>p{font-size:12px}.contact-form{display:grid;gap:10px}.contact-form label{font-size:12px;margin-top:12px}.contact-form label small{font-size:9px;color:var(--gold);margin-left:10px}.contact-form input,.contact-form textarea{background:transparent;border:1px solid #ffffff33;color:var(--text);padding:13px;width:100%;border-radius:0;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form textarea{resize:vertical}.contact-form textarea::placeholder{color:#95a0aa;font-size:12px}.privacy-note{font-size:10px;line-height:2;margin-block:12px}.privacy-note a{text-decoration:underline;margin-left:5px}.submit{padding:17px 22px;background:var(--gold);border:1px solid var(--gold);color:#16202b;font-size:12px;display:flex;justify-content:space-between}.submit:hover{background:#e2cda9}.hp{position:absolute;left:-10000px;visibility:hidden}.thanks{padding:35px;border:1px solid var(--gold)}.site-footer{padding-block:55px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:32px}.site-footer>div{display:flex;gap:25px;font-size:10px;color:var(--muted)}.site-footer>small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:9px;letter-spacing:1px}[hidden]{display:none!important}.legal{max-width:800px;padding-block:80px}.legal h1{font:38px var(--serif);margin-bottom:40px}.legal h2{font:23px var(--serif);margin:35px 0 15px}.legal p{font-size:13px;line-height:2.2}
@media(min-width:1600px){.hero{gap:0 10%}.hero-art{min-height:680px}}@media(max-width:1000px){.site-header nav{gap:18px}.service-list article{grid-template-columns:30px 1fr 1.2fr 25px;gap:15px}.service-list h3{font-size:18px}.hero h1{font-size:60px}.hero-art{min-height:550px}.portfolio-label{padding:25px}.about{gap:8%}.consult{gap:5%}.contact-grid{gap:7%}}
@media(max-width:760px){.wrap{width:88%}.section{padding-block:74px}.site-header{height:82px}.brand{font-size:30px}.brand small{font-size:8px}.menu-toggle{display:flex;align-items:center;gap:15px;background:none;border:none;color:var(--text);font-size:9px;letter-spacing:1.4px}.menu-toggle span{font-size:22px;color:var(--gold)}.site-header nav{display:none;position:absolute;top:82px;left:0;right:0;flex-direction:column;align-items:stretch;padding:25px 6%;background:var(--panel);border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.site-header nav>a{padding:12px 0}.site-header .nav-contact{padding:12px!important;text-align:center}.hero{padding-top:36px;grid-template-columns:1fr}.hero-type{padding-top:0;padding-bottom:37px}.hero .eyebrow{font-size:8px;letter-spacing:1.4px}.hero h1{font-size:clamp(48px,11.8vw,76px);line-height:1.45;letter-spacing:3px}.hero-copy{font-size:12px}.hero-art{min-height:390px;max-height:500px}.art-word{font-size:38px}.hero-foot{font-size:7px;letter-spacing:.7px;gap:10px;padding:22px 0}.art-caption{left:22px;right:22px}.art-caption>span:last-child{font-size:7px}.intro{padding-block:75px;grid-template-columns:1fr}.intro h2{font-size:32px}.intro p:not(.eyebrow){font-size:13px}.section-head{display:block;margin-bottom:34px}.section-head>p{margin-top:23px}.section-head>.text-link{margin-top:20px}.service-list article{grid-template-columns:25px 1fr 25px;gap:13px;padding:28px 0}.service-list article>div{grid-column:2/3}.service-list article>a{grid-column:3;grid-row:1}.service-list h3{font-size:20px}.service-list h3 small{font-size:11px}.service-list article p{font-size:12px}.principle-grid{grid-template-columns:1fr;gap:0}.principle-grid h3{font-size:24px}.portfolio-feature img{aspect-ratio:1.8}.portfolio-label{display:block;padding:22px}.portfolio-label>span{font-size:8px}.portfolio-label strong{display:block;font-size:22px;margin:12px 0}.portfolio-label small{display:block;font-size:9px}.about{grid-template-columns:1fr;gap:45px}.large-year{font-size:75px;margin:30px 0}.timeline{font-size:11px}.about-copy>p{font-size:12px}.process-steps{grid-template-columns:1fr 1fr;gap:26px}.process-steps h3{font-size:17px}.process-steps p{font-size:11px}.journal-list{grid-template-columns:1fr;gap:35px}.journal-list h3{min-height:0;font-size:23px;margin:16px 0}.journal-list p{margin-bottom:15px}.channel-link{gap:17px;flex-wrap:wrap;font-size:12px}.channel-link span{width:100%}.consult{grid-template-columns:1fr;gap:30px}.consult-box{padding:25px}.faq{padding-top:0}.faq summary{font-size:12px;line-height:2}.faq details p{font-size:12px}.contact-grid{grid-template-columns:1fr;gap:35px}.site-footer{grid-template-columns:1fr;gap:30px;padding-block:40px}.site-footer>div{gap:20px;flex-wrap:wrap}.site-footer>small{grid-column:auto}.eyebrow{font-size:9px;letter-spacing:1.8px}.legal{padding-block:50px}.legal h1{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.hero-art video{visibility:hidden}.hero-art{background:url('../brand/imagination-symphony-v1.jpg') center/cover}}
.contact-cta{text-align:center}.contact-cta p{font-size:13px;line-height:2.3}.contact-button{display:inline-flex;min-width:310px;justify-content:space-between;gap:40px;margin-top:25px;padding:19px 28px;background:var(--gold);color:var(--bg);font-size:13px}.contact-button:hover{background:#e3cfab}.contact-cta>small{display:block;font-size:10px;color:var(--muted);margin-top:18px}.form-page{max-width:900px;padding-block:70px 100px}.form-page h1{font:clamp(29px,4vw,46px)/1.7 var(--serif);font-weight:400}.form-steps{display:flex;gap:30px;border-block:1px solid var(--line);padding:20px 0;margin:35px 0;color:var(--muted);font-size:11px;letter-spacing:1px}.form-steps .active{color:var(--gold)}.form-panel{max-width:660px;margin:45px auto 0}.contact-form select{background:var(--panel);color:var(--text);border:1px solid #ffffff33;padding:13px;width:100%;font:inherit;border-radius:0}.field-hint{font-size:10px;color:var(--muted)}.error-list{padding:20px 30px;border:1px solid #d6a19a;background:#d6a19a0c;color:#f0bcb5;font-size:12px}.form-actions{display:flex;gap:15px;align-items:center;margin-top:25px}.form-actions .submit{flex:1}.back-button{background:none;color:var(--text);border:1px solid var(--line);padding:17px 25px;font-size:12px}.review-list{margin:0}.review-list dt{color:var(--gold);font-size:11px;margin:22px 0 8px}.review-list dd{margin:0;padding-bottom:20px;border-bottom:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.consent{display:flex;align-items:center;gap:10px;font-size:11px!important}.contact-form .consent input{width:auto;accent-color:var(--gold)}@media(max-width:760px){.contact-button{min-width:0;width:100%;max-width:340px}.form-page{padding-top:45px}.form-steps{gap:16px;font-size:9px}.form-actions{flex-direction:column;align-items:stretch}.form-actions .submit{width:100%}}
.profile-title{font-size:17px;font-weight:400;margin:25px 0 12px}.profile-name{font-size:12px;color:var(--gold);margin-bottom:25px}.profile-data{margin:0;max-width:330px}.profile-data dt{font-size:10px;color:var(--gold);border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.profile-data dd{font-size:12px;line-height:2.2;color:var(--muted);margin:8px 0 0}
.profile-name small{display:block;font-size:11px;color:var(--muted);line-height:2.1;margin-top:12px}
/* A quiet field of light; all decoration stays outside the interaction layer. */
body{isolation:isolate}.ambient-sparkles{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}body>main,body>.site-footer{position:relative}.site-header{isolation:isolate}.site-header::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 260px 115px at var(--header-light-x,72%) 0%,#d2b78614,transparent 80%)}.site-header::after{content:"";position:absolute;bottom:-1px;left:0;width:32%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,#89b7c655,#ead3a4cc,#89b7c655,transparent);box-shadow:0 0 13px 1px #d2b78625;animation:header-breeze 10s ease-in-out infinite;opacity:0;will-change:transform}.site-header nav>a{position:relative;isolation:isolate;transition:color .3s,background-color .3s,text-shadow .3s}.site-header nav>a::before{content:"";position:absolute;left:0;right:0;bottom:-9px;height:1px;background:linear-gradient(90deg,transparent,#ead3a4,transparent);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1);pointer-events:none}.site-header nav>a::after{content:"";position:absolute;inset:-9px -16px;z-index:-1;pointer-events:none;opacity:0;background:linear-gradient(110deg,transparent 20%,#8fc1d51c 42%,#ecd4a834 50%,transparent 76%);transform:translateX(-35%);transition:opacity .25s}.site-header nav>a:hover,.site-header nav>a:focus-visible{color:#efdbb5;text-shadow:0 0 18px #d2b78666}.site-header nav>a:hover::before,.site-header nav>a:focus-visible::before{transform:scaleX(1)}.site-header nav>a:hover::after,.site-header nav>a:focus-visible::after{animation:menu-breeze 1.1s ease-out both}.site-header nav>a.nav-contact::before{bottom:0}.site-header nav>a.nav-contact::after{inset:0}.site-header nav>a.nav-contact:hover{background-color:#d2b7860a}.menu-toggle span{transition:transform .5s,color .3s}.menu-toggle[aria-expanded=true] span{transform:rotate(45deg);text-shadow:0 0 14px #d2b78688}@keyframes header-breeze{0%,8%{transform:translateX(-105%);opacity:0}15%{opacity:.8}45%{opacity:.65}58%,100%{transform:translateX(325%);opacity:0}}@keyframes menu-breeze{0%{transform:translateX(-35%);opacity:0}35%{opacity:1}100%{transform:translateX(22%);opacity:0}}@media(max-width:760px){.site-header::after{width:45%}.site-header nav>a::before{bottom:3px}.site-header nav>a::after{inset:0}}@media(prefers-reduced-motion:reduce){.ambient-sparkles,.site-header::after,.site-header nav>a::after{display:none}.site-header::before{background:none}.site-header nav>a,.site-header nav>a::before,.menu-toggle span{transition:none}}
/* Brand palette: luminous deep blue and champagne gold. */
:root{--bg:#050f22;--panel:#091c35;--text:#f3f2ed;--muted:#b3c2d5;--line:#b4d0f32b;--gold:#e0c58c}
body{background:radial-gradient(ellipse at 77% 30%,#16467812,transparent 57%),radial-gradient(ellipse at 8% 12%,#17467718,transparent 50%),linear-gradient(135deg,#050f23 4%,#08182f 55%,#050f24);background-attachment:fixed}
.site-header{background:#050f23f5;border-bottom-color:#d7c49b40;box-shadow:0 8px 40px #03102722}.site-header::before{background:radial-gradient(ellipse 310px 150px at var(--header-light-x,72%) 0%,#79b8ef0d,#d8bd8308 45%,transparent 80%)}
.hero-art{background:linear-gradient(145deg,#091f39,#0c3052 55%,#07152b);border:1px solid #bad6ef26}.hero-art video{filter:grayscale(.9) saturate(.35) brightness(.72);opacity:.68;mix-blend-mode:luminosity}.art-shade{background:linear-gradient(180deg,#071c3b44,#092a4b38 40%,#05132bb3)}.hero-art:after{border-color:#ead19a80}.art-word em{color:#f0d69c}.hero h1 em{color:#e9cc91}.hero-foot{border-bottom-color:#bedaf338}
.philosophy{background:radial-gradient(ellipse at 86% 5%,#16579818,transparent 70%),linear-gradient(125deg,#08172e,#0a203d 65%,#07162c);border-block:1px solid #b4d0f319}.portfolio-feature{background:#0a2b59;border-color:#dfc38e66}.portfolio-feature img{opacity:.93}.portfolio-label{background:linear-gradient(100deg,#10315c,#0a254a);border-top-color:#d7c49b44}
.contact{background:radial-gradient(ellipse at 50% 25%,#1a548f18,transparent 72%),linear-gradient(135deg,#091b34,#0b2543 65%,#081b34);border-block:1px solid #b4d0f32b}.consult-box{background:#0c2e5555;border-color:#d6c38b55}.consult-box #flow-options button:hover{background:#a6c9f011;border-color:#e0c58c}.contact-form input,.contact-form textarea{background:#0a244b55;border-color:#c3d8f544}.contact-form select{background:#0c2b53}.contact-form textarea::placeholder{color:#a9bbd0}
.journal{background:linear-gradient(130deg,#f0ede5,#e2e7eb);color:#152b48}.journal p{color:#54657a}.journal .text-link:hover{color:#253e61}.journal .channel-link{border-color:#18385b33}.journal-list>a{border-color:#18385b44}.journal-list p{color:#53657b}
.site-footer{border-top:1px solid #b4d0f319}.admin-card,.metric-grid article{background:linear-gradient(130deg,#0d2e57,#0b274d)}.date-filter input,.date-filter button,.date-filter>a{background:#0c2b53}.privacy-note{color:#b3c2d5}
@media(max-width:760px){body{background-attachment:scroll}.site-header nav{background:#092448}.hero-art video{opacity:.68}}
/* Motion system: light pulses, sequential reveals and responsive typography. */
.scroll-energy{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#78b9da,#e6ca8e,#b9e6ff);box-shadow:0 0 14px #82caff99;z-index:80;transform:scaleX(0);transform-origin:left;pointer-events:none}.click-orbit{position:fixed;width:110px;height:110px;margin:-55px;z-index:90;pointer-events:none;border:1px solid #e8cf9c;border-radius:50%;background:radial-gradient(circle,#b3dfff44,transparent 65%);box-shadow:0 0 22px #8bcfff66,inset 0 0 20px #dfc48a44;animation:click-orbit .8s ease-out forwards}.click-orbit:after{content:"";position:absolute;inset:14px;border-radius:50%;border:1px dashed #95d6ff99}.motion-reveal{opacity:0;transform:translateY(42px);transition:opacity .8s ease var(--motion-delay,0ms),transform 1s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms)}.motion-reveal.motion-visible,.motion-reveal:focus-within{opacity:1;transform:translateY(0)}.motion-line{display:inline-block;transform-origin:left center}.motion-visible .motion-line{animation:type-rise .95s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--line-delay,0ms)}.hero-arrive h1 .motion-line{animation:type-rise 1.25s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.12s + var(--line-delay,0ms))}.hero-arrive .hero-art{animation:art-arrive 1.4s cubic-bezier(.16,1,.3,1) both}.hero-art:after{animation:orb-drift 16s ease-in-out infinite}.destination-flash h2{animation:destination-light 1.3s ease}.service-list article{position:relative}.service-list article:hover{background:linear-gradient(90deg,#71b9ee0c,transparent);border-color:#c8ac75}.service-list article>a{transition:transform .4s,color .4s}.service-list article:hover>a{transform:translate(4px,-4px);color:#b8e5ff}.portfolio-feature img{transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter .7s}.portfolio-feature:hover img{transform:scale(1.035);filter:brightness(1.1)}.portfolio-feature{overflow:hidden}.portfolio-label{position:relative;z-index:1}.journal-list>a{transition:transform .5s,box-shadow .5s}.journal-list>a:hover{transform:translateY(-7px);box-shadow:0 12px 0 -11px #947036}.consult-box{position:relative;overflow:hidden}.consult-box:before{content:"";position:absolute;top:0;left:-30%;width:25%;height:1px;background:linear-gradient(90deg,transparent,#8ecfff,#e4c98b);animation:panel-scan 5s ease-in-out infinite;pointer-events:none}.consult-box button{transition:background .3s,border-color .3s,transform .3s}.consult-box #flow-options button:hover{transform:translateX(5px);box-shadow:inset 3px 0 #dfc58c}.faq summary span{display:inline-block;transition:transform .4s,color .4s}.faq details[open] summary span{transform:rotate(45deg);color:#a6d9ff}.site-header nav a.nav-current{color:var(--gold)}.site-header nav a.nav-current:before{transform:scaleX(1)}.text-size-tools{grid-column:1/-1;display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}.text-size-tools button{padding:6px 13px;background:transparent;border:1px solid var(--line);color:var(--text)}.text-size-tools button[aria-pressed=true]{border-color:var(--gold);color:var(--gold);background:#dec58b10}html[data-text-size=large]{--reading-scale:1.15}html[data-text-size=larger]{--reading-scale:1.3}html[data-text-size=large] main p,html[data-text-size=larger] main p{font-size:calc(14px * var(--reading-scale));line-height:2.1}html[data-text-size=large] .profile-data dd,html[data-text-size=larger] .profile-data dd,html[data-text-size=large] .consult-box button,html[data-text-size=larger] .consult-box button{font-size:calc(13px * var(--reading-scale))}
@keyframes click-orbit{0%{transform:scale(.15) rotate(-35deg);opacity:1}100%{transform:scale(1.8) rotate(45deg);opacity:0}}@keyframes type-rise{0%{opacity:0;transform:translateY(30px) scale(.9);filter:blur(7px)}60%{text-shadow:0 0 24px #9ccfee55}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0);text-shadow:none}}@keyframes art-arrive{from{opacity:0;transform:translateY(35px) scale(.95);clip-path:inset(12% 0 12% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}@keyframes orb-drift{0%,100%{transform:rotate(-32deg) scale(1)}50%{transform:rotate(-19deg) scale(1.06)}}@keyframes panel-scan{0%{left:-30%;opacity:0}20%{opacity:1}70%,100%{left:110%;opacity:0}}@keyframes destination-light{0%,100%{text-shadow:none}45%{text-shadow:0 0 26px #9edcff99}}@media(prefers-reduced-motion:reduce){.motion-reveal{opacity:1;transform:none;transition:none}.scroll-energy,.click-orbit{display:none}.portfolio-feature:hover img,.journal-list>a:hover,.consult-box #flow-options button:hover{transform:none}}
/* Cursor-steered ribbons of gold, pale yellow and white. */
.header-waves{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.85}.site-header>.brand,.site-header>nav,.site-header>.menu-toggle{position:relative;z-index:2}.site-header>.brand,.site-header nav>a{text-shadow:0 1px 7px #020b1bee}.back-to-top{position:fixed;right:25px;bottom:25px;z-index:35;width:58px;height:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#07182deF;backdrop-filter:blur(12px);border:1px solid #d8bf8777;color:#e7cf98;opacity:0;visibility:hidden;transform:translateY(18px);transition:opacity .4s,transform .4s,visibility .4s,box-shadow .3s}.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top span{font-size:24px;line-height:1.2}.back-to-top small{font-size:8px;letter-spacing:1.5px}.back-to-top:hover{box-shadow:0 0 24px #d8bf8733;border-color:#f0dbab}.back-to-top:before{content:"";position:absolute;inset:5px;border-top:1px solid #f0d69b44;pointer-events:none}@media(max-width:760px){.site-header>nav{position:absolute}.header-waves{opacity:.7}.back-to-top{right:15px;bottom:calc(15px + env(safe-area-inset-bottom));width:48px;height:57px}}@media(prefers-reduced-motion:reduce){.header-waves{display:none}.back-to-top{transition:none}}

/* Keep travelling light and entrance effects inside the viewport. */
html{overflow-x:clip}
/* Luminous yellow-to-gold typography with a moving highlight. */
:root{--gold:#efcf79;--gold-ink:linear-gradient(110deg,#fff7bd 0%,#ffe17a 23%,#dcb75c 43%,#fffbe0 51%,#ffe899 58%,#ddb65a 78%,#fff4b3 100%)}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
.eyebrow,.brand span,.brand i,.hero h1 em .motion-line,.art-word em,.service-no,.service-list h3 small,.principle-grid article>span,.portfolio-label>span,.portfolio-label strong b,.large-year,.process-steps span,.profile-name,.profile-data dt,.review-list dt,.form-steps .active,.text-link span,.service-list article>a,.consult-box button span,.faq summary span,.email-link{
 background-image:var(--gold-ink);background-size:230% 100%;background-position:100% 50%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#f8dc8c;animation:gold-sheen 7s ease-in-out infinite;text-shadow:0 0 12px #f3d7771c;
}
.hero h1 em .motion-line,.art-word em{animation:gold-sheen 6s ease-in-out infinite,gold-radiance 4.8s ease-in-out infinite;text-shadow:0 0 13px #ffe99a44,0 0 32px #edca6a22}
.profile-name small,.large-year span{background:none;-webkit-text-fill-color:var(--muted);color:var(--muted);text-shadow:none}
}
@keyframes gold-sheen{0%,15%{background-position:100% 50%}70%,100%{background-position:0% 50%}}
@keyframes gold-radiance{0%,100%{text-shadow:0 0 11px #ffe99a38,0 0 27px #edca6a16}50%{text-shadow:0 0 17px #fff0b575,0 0 42px #f4d77c38,0 0 65px #e8bd641a}}
@media(prefers-reduced-motion:reduce){.hero h1 em .motion-line,.art-word em{animation:none}}
@media(forced-colors:active){.eyebrow,.brand span,.brand i,.hero h1 em .motion-line,.art-word em,.service-no,.service-list h3 small,.principle-grid article>span,.portfolio-label>span,.portfolio-label strong b,.large-year,.process-steps span,.profile-name,.profile-data dt,.review-list dt,.form-steps .active,.text-link span,.service-list article>a,.consult-box button span,.faq summary span,.email-link{background:none;-webkit-text-fill-color:currentColor;color:CanvasText;text-shadow:none}}

.concept-visual{position:relative;margin-block:0 45px;overflow:hidden;border:1px solid #e0c68c33;background:#050f22}.concept-visual img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.concept-visual figcaption{position:absolute;inset:0;padding:4.5%;background:linear-gradient(180deg,#020b1d77,transparent 50%);pointer-events:none}.concept-visual .eyebrow{display:block;margin-bottom:14px}.concept-visual h2{font-size:clamp(23px,3.5vw,46px);color:#fff7df;text-shadow:0 0 24px #f2dca233}.concept-visual small{position:absolute;right:4%;bottom:5%;font-size:8px;letter-spacing:1.8px;color:#ebd8ad}@media(max-width:760px){.concept-visual img{aspect-ratio:1.15;object-position:60% center}.concept-visual figcaption{padding:7%}.concept-visual .eyebrow{font-size:8px;letter-spacing:1.5px}.concept-visual h2{font-size:25px}}

/* The generated artwork becomes a cinematic, layered hero. */
.hero-depth{position:absolute;inset:-9%;will-change:transform;transform:translate3d(0,0,0)}.hero-concept-image{display:block;width:100%;height:100%;object-fit:cover;object-position:64% center;filter:brightness(.72) saturate(.85);animation:concept-drift 20s ease-in-out infinite alternate}.hero-art{background:#050f22}.hero-art .art-shade{background:linear-gradient(180deg,#06112655,#06112610 35%,#040e2480 70%,#030d22cc);pointer-events:none}.hero-light-sweep{position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 38%,#fff0b90a 46%,#fff8d71b 50%,transparent 58%);mix-blend-mode:screen;animation:hero-light-pass 12s ease-in-out infinite;pointer-events:none}.hero-art[data-paused=true] .hero-concept-image,.hero-art[data-paused=true] .hero-light-sweep,.hero-art[data-paused=true]:after{animation-play-state:paused}.hero-art .art-word{text-shadow:0 2px 24px #02091bd9}.hero-art .art-word em{filter:drop-shadow(0 2px 7px #02091b)}@keyframes concept-drift{from{transform:scale(1.04) translate3d(-1.3%,.7%,0)}to{transform:scale(1.14) translate3d(1.3%,-.7%,0)}}@keyframes hero-light-pass{0%,15%{transform:translateX(-28%);opacity:0}35%{opacity:.9}75%,100%{transform:translateX(28%);opacity:0}}@media(prefers-reduced-motion:reduce){.hero-depth{transform:none!important}.hero-concept-image,.hero-light-sweep{animation:none}.hero-light-sweep{display:none}}

/* Two working moments, with restrained warmth against the navy palette. */
.about{row-gap:70px}.profile-scenes{grid-column:1/-1;position:relative;width:100%;padding:0 0 70px;isolation:isolate}.profile-shot{margin:0;position:relative;background:#0a1627;border:1px solid #d8c3944d;box-shadow:0 18px 50px #01071466}.profile-shot img{display:block;width:100%;height:auto;filter:saturate(.67) brightness(.94);transition:filter .6s}.profile-shot-main{width:72%;transform:rotate(-1.6deg)}.profile-shot-sub{position:absolute;width:30%;right:1%;bottom:45px;transform:rotate(3deg);z-index:1;border:7px solid #101e31;box-shadow:0 18px 55px #01071499}.profile-shot figcaption{position:absolute;left:0;right:0;bottom:0;padding:25px 22px 15px;background:linear-gradient(transparent,#030c20d9);font-size:10px;letter-spacing:2px;color:#ebd7a8}.profile-shot-sub figcaption{font-size:9px;padding:24px 13px 12px}.profile-image-note{position:absolute;bottom:0;left:0;font-size:10px!important;letter-spacing:.6px;color:var(--muted);margin:0}@media(max-width:760px){.about{row-gap:45px}.profile-scenes{padding-bottom:65px}.profile-shot-main{width:85%;transform:rotate(-1deg)}.profile-shot-sub{width:39%;right:0;bottom:32px;border-width:4px;transform:rotate(3deg)}.profile-shot figcaption{font-size:8px;padding:20px 10px 9px;letter-spacing:1px}.profile-shot-sub figcaption{font-size:7px;padding:18px 7px 7px}.profile-image-note{font-size:8px!important}} 

/* Representative photographs support the message at a quieter scale. */
.profile-scenes{width:62%;max-width:760px;margin-inline:auto;padding-bottom:55px}.profile-shot-sub{bottom:35px}.about{row-gap:45px}@media(max-width:760px){.profile-scenes{width:88%;max-width:480px;padding-bottom:60px}.profile-shot-sub{bottom:30px}}

/* Warm paper borders, like small photographic prints. */
.profile-shot,.profile-shot-sub{background:#eeeae1;border:1px solid #d6cfbf;padding:6px 6px 25px;box-shadow:0 12px 30px #01071480,0 2px 5px #01071466}.profile-shot figcaption,.profile-shot-sub figcaption{bottom:5px;left:7px;right:7px;padding:0 3px;background:none;color:#5c5548;font-size:8px;line-height:1.5;letter-spacing:1.2px}.profile-shot-sub figcaption{font-size:7px}@media(max-width:760px){.profile-shot,.profile-shot-sub{padding:4px 4px 20px;border-width:1px}.profile-shot figcaption,.profile-shot-sub figcaption{bottom:4px;left:4px;right:4px;font-size:6px;letter-spacing:.6px}}
/* Scroll opens and gathers heading typography; body copy stays steady. */
.scroll-type{letter-spacing:calc(1.3px + var(--text-tracking,0px));transition:letter-spacing .22s ease-out}.hero h1.scroll-type{letter-spacing:calc(4px + var(--text-tracking,0px))}.scroll-type .motion-line{translate:0 calc(var(--line-depth,0) * var(--text-gap,0px));transition:translate .22s ease-out}@media(max-width:760px){.hero h1.scroll-type{letter-spacing:calc(3px + var(--text-tracking,0px))}}@media(prefers-reduced-motion:reduce){.scroll-type{letter-spacing:1.3px;transition:none}.hero h1.scroll-type{letter-spacing:4px}.scroll-type .motion-line{translate:none;transition:none}}@media(max-width:760px) and (prefers-reduced-motion:reduce){.hero h1.scroll-type{letter-spacing:3px}}

/* Opposing horizontal line movement makes the scroll response visible. */
.scroll-type .motion-line{translate:var(--line-slide,0px) calc(var(--line-depth,0) * var(--text-gap,0px));transition:translate .18s ease-out}@media(prefers-reduced-motion:reduce){.scroll-type .motion-line{translate:none;transition:none}}

/* Match the fine, widely spaced serif wordmark in the brand reference. */
.brand{font-family:Didot,"Bodoni 72","Times New Roman",serif;font-size:43px;font-weight:400;line-height:1;letter-spacing:2.4px}.brand small{font-family:Didot,"Bodoni 72","Times New Roman",serif;font-size:11px;font-weight:400;line-height:1.1;letter-spacing:3.1px;margin-top:8px}.brand span{font-weight:400}.site-footer .brand{font-size:40px}@media(max-width:760px){.brand{font-size:34px;letter-spacing:1.8px}.brand small{font-size:9px;letter-spacing:2.3px;margin-top:7px}.site-footer .brand{font-size:36px}}

/* The reference J has a long descending hook, separate from the serif font. */
.brand .brand-j{display:inline-block;position:relative;width:.47em;height:1em;vertical-align:baseline;margin-inline:-.015em;background:none;-webkit-text-fill-color:initial;animation:none;text-shadow:none;letter-spacing:0}.brand-j svg{display:block;position:absolute;width:.51em;height:1.27em;left:-.015em;top:-.01em;overflow:visible;filter:drop-shadow(0 0 5px #f5d47b22)}.brand-j .brand-j-letter{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;background:none;animation:none}.brand small{margin-top:10px}

.brand .brand-j{height:.72em}.brand-j svg{width:.44em;height:1em;top:-.045em;left:0}

/* A short timeline journey, triggered when the year comes into view. */
.large-year{background:none!important;-webkit-text-fill-color:initial;text-shadow:none;animation:none;min-height:130px}.large-year .year-value{display:block;font:400 clamp(48px,6vw,86px)/1.15 Didot,"Bodoni 72",Georgia,serif;letter-spacing:1px;font-variant-numeric:tabular-nums;white-space:nowrap;background-image:var(--gold-ink);background-size:230% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#f1d480;animation:gold-sheen 7s ease-in-out infinite;text-shadow:0 0 22px #f4d57d22}.large-year[data-stage=brand] .year-value{font-size:clamp(44px,5vw,72px);letter-spacing:2px}.large-year .year-caption{display:block;font:9px/1.8 var(--sans);letter-spacing:2px;margin-top:15px;color:var(--muted);-webkit-text-fill-color:var(--muted)}@media(max-width:760px){.large-year{min-height:110px}.large-year .year-value{font-size:72px}.large-year[data-stage=brand] .year-value{font-size:62px}}@media(prefers-reduced-motion:reduce){.large-year .year-value{animation:none}}@media(forced-colors:active){.large-year .year-value{background:none;-webkit-text-fill-color:CanvasText;color:CanvasText;text-shadow:none}}

/* Keep the familiar figures; change typography only for the future and brand. */
.large-year .year-value{font-family:Georgia,serif}.large-year[data-stage=future] .year-value{font-family:Didot,"Bodoni 72","Times New Roman",serif;font-style:italic;font-size:clamp(50px,5.5vw,80px);letter-spacing:1px}.large-year[data-stage=brand] .year-value{font-family:Didot,"Bodoni 72","Times New Roman",serif;font-style:normal;letter-spacing:2.4px}.large-year .year-value.brand .brand-j{background:none;-webkit-text-fill-color:initial;animation:none}.large-year .year-value.brand .brand-j-letter{background:none;-webkit-text-fill-color:initial}@media(max-width:760px){.large-year[data-stage=future] .year-value{font-size:66px}}

/* Isolate the closing wordmark from the small timeline-caption styling. */
.large-year[data-stage=brand] .year-value{background:none;-webkit-text-fill-color:#f3f2ed;color:#f3f2ed;font-variant-numeric:normal;animation:gold-radiance 4.8s ease-in-out infinite;text-shadow:0 0 13px #ffe99a44,0 0 32px #edca6a22}.large-year[data-stage=brand] .year-value .brand-j{display:inline-block;font:inherit;line-height:inherit;font-size:inherit;letter-spacing:0;margin-top:0;margin-inline:-.015em;vertical-align:baseline;width:.47em;height:.72em;color:inherit;-webkit-text-fill-color:initial;background:none;text-shadow:none}.large-year[data-stage=brand] .brand-j svg{filter:drop-shadow(0 0 7px #ffe39977)}.large-year[data-stage=brand] .brand-j .brand-j-letter{position:absolute;display:block;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;font:inherit}@media(prefers-reduced-motion:reduce){.large-year[data-stage=brand] .year-value{animation:none}}

/* Each Future letter follows a staggered wave from the right. */
.large-year[data-stage=future] .year-value .future-character{display:inline-block;font:inherit;letter-spacing:inherit;margin:0;padding:0;line-height:inherit;background-image:var(--gold-ink);background-size:230% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#f1d480;text-shadow:0 0 17px #f4d57d44;animation:gold-sheen 7s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.large-year .future-character{animation:none}}@media(forced-colors:active){.large-year[data-stage=future] .year-value .future-character{background:none;-webkit-text-fill-color:CanvasText;color:CanvasText}}
/* White and gold light continues across the closing MiraiJU wordmark. */
.large-year[data-stage=brand] .year-value{background-image:linear-gradient(105deg,#f5f4ef 0%,#f5f4ef 24%,#ecd18e 39%,#fff4cd 47%,#ffffff 51%,#ffe8a0 55%,#d9b65b 64%,#f5f4ef 80%,#f5f4ef 100%);background-size:260% 100%;background-position:100% 50%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#f5f4ef;animation:wordmark-light-flow 6s ease-in-out infinite,wordmark-light-breathe 6s ease-in-out infinite}.large-year[data-stage=brand] .brand-j svg{animation:wordmark-j-glow 6s ease-in-out infinite}.large-year[data-stage=brand] .brand-j stop{animation:wordmark-gold-white 6s ease-in-out infinite}.large-year[data-stage=brand] .brand-j stop:nth-child(2){animation-delay:-.3s}.large-year[data-stage=brand] .brand-j stop:nth-child(3){animation-delay:-.6s}@keyframes wordmark-light-flow{0%,12%{background-position:100% 50%}80%,100%{background-position:0% 50%}}@keyframes wordmark-light-breathe{0%,100%{text-shadow:0 0 12px #fff5cb33,0 0 29px #ebca7c22}45%,60%{text-shadow:0 0 17px #fff9e994,0 0 38px #f3d78966,0 0 65px #e8c66c33}}@keyframes wordmark-gold-white{0%,25%,100%{stop-color:#e7c36b}45%,60%{stop-color:#fffdf0}78%{stop-color:#f7dfa0}}@keyframes wordmark-j-glow{0%,100%{filter:drop-shadow(0 0 6px #efd07c55)}45%,60%{filter:drop-shadow(0 0 12px #fff7cdbb)}}@media(prefers-reduced-motion:reduce){.large-year[data-stage=brand] .year-value,.large-year[data-stage=brand] .brand-j svg,.large-year[data-stage=brand] .brand-j stop{animation:none}}@media(forced-colors:active){.large-year[data-stage=brand] .year-value{background:none;-webkit-text-fill-color:CanvasText;color:CanvasText;text-shadow:none}}
/* Scroll changes the space between the two prints without moving the text. */
.profile-shot-main{transform:translate3d(var(--photo-main-x,0px),0,0) rotate(var(--photo-main-angle,-1.6deg));transition:transform .28s ease-out}.profile-shot-sub{transform:translate3d(var(--photo-sub-x,0px),var(--photo-sub-y,0px),0) rotate(var(--photo-sub-angle,3deg));transition:transform .28s ease-out}@media(prefers-reduced-motion:reduce){.profile-shot-main{transform:rotate(-1.6deg);transition:none}.profile-shot-sub{transform:rotate(3deg);transition:none}}
.featured-works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0 0 45px}.work-play{position:relative;display:block;width:100%;padding:0;border:1px solid #c2d9ed33;background:#06152b;color:white;overflow:hidden;aspect-ratio:16/9}.work-play img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s,filter .6s;filter:brightness(.8)}.work-play:hover img{transform:scale(1.035);filter:brightness(1)}.work-play-icon{position:absolute;top:50%;left:50%;translate:-50% -50%;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid #ffefcaaa;background:#06152b66;font-size:27px;color:#fff0b6}.work-play-label{position:absolute;bottom:12px;left:15px;font-size:8px;letter-spacing:2px}.featured-work .eyebrow{margin:20px 0 10px;font-size:8px}.featured-work h3{font-size:16px;font-weight:400;margin-bottom:8px}.featured-work>p:not(.eyebrow){font-size:11px;margin-bottom:5px}.featured-work .sub-link{font-size:10px}.portfolio-enquiry{display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:11px;margin-bottom:25px}.portfolio-contact{display:inline-flex;align-items:center;gap:9px;color:var(--gold);white-space:nowrap;border-bottom:1px solid #dfc37e77;padding:10px 0}.portfolio-contact svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.3}.work-dialog{position:fixed;width:min(1050px,92vw);padding:35px 25px 25px;max-height:90vh;border:1px solid #d7bf8555;background:#06152b;color:var(--text);box-shadow:0 20px 100px #0009}.work-dialog::backdrop{background:#020815e8;backdrop-filter:blur(9px)}.work-dialog h2{font:14px/1.8 var(--sans);padding-right:25px;margin-bottom:20px}.work-dialog video{display:block;width:100%;max-height:70vh;background:#000}.work-close{position:absolute;right:14px;top:6px;color:var(--gold);background:none;border:0;font-size:30px;padding:0 7px}.work-modal-open{overflow:hidden}@media(max-width:760px){.featured-works{grid-template-columns:1fr;gap:30px}.portfolio-enquiry{align-items:flex-start;flex-direction:column;gap:4px}.work-dialog{padding:38px 12px 12px}.work-dialog h2{font-size:11px}}
.music-samples{margin:5px 0 38px;border-block:1px solid var(--line);padding:28px 0}.music-samples>.eyebrow{margin-bottom:22px}.music-sample-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.music-sample-list button{display:flex;align-items:center;gap:12px;padding:15px 0;text-align:left;color:var(--text);border:0;background:none}.music-play{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:1px solid #dfc37e77;border-radius:50%;font-size:19px;color:var(--gold)}.music-sample-list strong{display:block;font-size:12px;font-weight:400}.music-sample-list small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.music-action{font-size:8px;color:var(--gold);margin-left:auto;white-space:nowrap}.work-audio-panel{text-align:center;padding:32px 15px;background:radial-gradient(ellipse,#12325655,transparent 70%)}.work-audio-panel audio{display:block;width:min(560px,100%);margin:28px auto 0}.work-audio-panel>p{font-size:9px;letter-spacing:4px;margin-top:25px;color:var(--gold)}.sound-orbit{display:grid;place-items:center;width:120px;height:120px;border:1px solid #dfc37e88;border-radius:50%;margin:auto;color:var(--gold);font:50px Georgia;box-shadow:0 0 35px #efd07c22,inset 0 0 25px #efd07c11}.work-dialog video[hidden],.work-audio-panel[hidden]{display:none}.work-dialog video,.work-dialog audio,.featured-work img,.profile-shot img{-webkit-touch-callout:none}.featured-work img,.profile-shot img{-webkit-user-select:none;user-select:none}.site-header nav .nav-work-contact{display:inline-flex;padding:7px;margin-left:-24px;color:var(--gold)}.nav-work-contact svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.3}@media(max-width:760px){.music-sample-list{grid-template-columns:1fr;gap:0}.music-sample-list button+button{border-top:1px solid var(--line)}.site-header nav .nav-work-contact{margin-left:0;align-self:flex-start}.work-audio-panel{padding:20px 5px}}

/* Keep the mobile artwork headline clear of its lower caption. */
@media(max-width:760px){.hero-art .art-word{top:23%;left:8%;right:6%;font-size:clamp(26px,7.5vw,34px);line-height:1.4}.hero-art .art-caption{gap:12px}}

/* Header canvas supplies the light; the old travelling strip must not enlarge mobile layout. */
.site-header::after{content:none}
html,body{max-width:100%;overflow-x:clip}
main{min-width:0;overflow-x:clip}

/* Reading controls remain available in the sticky header. */
.site-header.has-text-size-tools nav{padding-top:26px}
.site-header .text-size-tools{position:absolute;z-index:3;right:6%;top:7px;gap:6px;font-size:9px;line-height:1.4}
.site-header .text-size-tools>span{margin-right:5px}
.site-header .text-size-tools button{min-width:36px;min-height:25px;padding:3px 9px;font-size:10px;border-color:#d8c48c44;background:#06152b66}
@media(max-width:760px){
 .site-header.has-text-size-tools{height:116px;align-items:flex-start;padding-top:12px}
 .site-header.has-text-size-tools .menu-toggle{margin-top:9px}
 .site-header.has-text-size-tools nav{top:116px;padding-top:25px}
 .site-header .text-size-tools{left:6%;right:6%;top:auto;bottom:8px;gap:6px;font-size:10px}
 .site-header .text-size-tools>span{margin-right:auto}
 .site-header .text-size-tools button{min-width:44px;min-height:34px;padding:5px 12px;font-size:11px}
 html:has(.has-text-size-tools){scroll-padding-top:134px}
}

/* A readable default, with optional larger text rather than miniature body copy. */
:root{--muted:#c1cbd6}
body{font-size:16px}
.eyebrow{font-size:12px}
.hero-copy,.intro p:not(.eyebrow),.about-copy>p,.principle-grid p,.service-list p,.process-steps p,.journal-list p,.consult>div>p:not(.eyebrow),.faq details p,.contact-cta>p,.legal p,.form-panel>p{font-size:16px;line-height:2}
.section-head>p,.portfolio-enquiry,.featured-work>p:not(.eyebrow),.profile-data dd,.consult-box #flow-options button,.contact-form label,.text-link,.sub-link{font-size:14px}
.featured-work h3{font-size:18px}.featured-work .eyebrow{font-size:11px}.music-sample-list strong{font-size:14px}.music-sample-list small{font-size:12px}
.site-header nav{font-size:14px}.contact-form input,.contact-form textarea,.contact-form select{font-size:16px}.field-hint{font-size:12px}
html[data-text-size=large] main p,html[data-text-size=larger] main p{font-size:calc(16px * var(--reading-scale));line-height:2.1}
html[data-text-size=large] .profile-data dd,html[data-text-size=larger] .profile-data dd,html[data-text-size=large] .consult-box button,html[data-text-size=larger] .consult-box button{font-size:calc(14px * var(--reading-scale))}
@media(max-width:760px){.hero .eyebrow{font-size:10px}.section-head>p{font-size:14px}.site-header .text-size-tools{font-size:12px}.site-header .text-size-tools button{font-size:13px}.portfolio-label small{font-size:12px}.portfolio-label>span{font-size:11px}}
@media(min-width:761px) and (max-width:1100px){.site-header.has-text-size-tools{height:132px;align-items:flex-start;padding-top:14px}.site-header.has-text-size-tools nav{position:absolute;left:6%;right:6%;top:auto;bottom:12px;padding-top:0;justify-content:flex-end;gap:18px}.site-header .text-size-tools{top:18px}html:has(.has-text-size-tools){scroll-padding-top:150px}}

@media(min-width:761px){.site-header .text-size-tools{font-size:12px;top:5px}.site-header .text-size-tools button{font-size:12px;min-height:30px;min-width:44px}}

.service-list article p,.profile-data dd,.faq summary{font-size:16px}
/* Reserve a separate top row for the modal's close control. */
.work-dialog{padding:76px 25px 25px;max-height:calc(100dvh - 32px);overscroll-behavior:contain}
.work-dialog .work-close{top:12px;right:14px;width:112px;height:44px;padding:0 12px;border:1px solid #dfc37e88;display:flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap;font:14px/1 var(--sans);background:#0b203a;color:#ffe59e;z-index:2}
.work-close span{font-size:24px;line-height:1}
.work-dialog .work-close:focus-visible{outline:2px solid #ffe59e;outline-offset:2px}
.work-dialog h2{padding-right:0;font-size:14px;line-height:1.8;overflow-wrap:anywhere;margin-bottom:18px}
@media(max-width:760px){.work-dialog{padding:76px 12px 12px}.work-dialog h2{font-size:14px}.work-dialog video{max-height:calc(100dvh - 230px)}}

/* Dark blue and warm gold remain visible against light sections. */
.click-orbit.is-light{border:2px solid #245476;background:radial-gradient(circle,#2a67972e,transparent 65%);box-shadow:0 0 16px #24547655,inset 0 0 18px #b2873577}
.click-orbit.is-light:after{border-color:#8c641f;border-width:2px}

/* Keep the consultation question in two balanced lines at every width. */
.consult>div:first-child{container-type:inline-size;min-width:0}
.consult h2.consult-heading{font-size:clamp(20px,8.2cqi,40px);letter-spacing:.02em;line-height:1.7}
.consult-heading>span{display:inline-block;white-space:nowrap}

/* A quiet brand signature at the end of the page. */
.site-footer .footer-brand{position:relative;padding-left:80px;min-height:64px;display:block;padding-top:4px}
.footer-brand .footer-symbol{position:absolute;left:0;top:0;width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 0 10px #e3c16920);transition:filter .4s,transform .4s}
.footer-brand:hover .footer-symbol{filter:drop-shadow(0 0 15px #e3c16966);transform:rotate(-4deg)}
@media(max-width:760px){.site-footer .footer-brand{padding-left:72px}.footer-brand .footer-symbol{width:58px;height:58px}}
@media(prefers-reduced-motion:reduce){.footer-brand .footer-symbol{transition:none}.footer-brand:hover .footer-symbol{transform:none}}

/* Reveal the navigation when returning up the page. Keep its layout space. */
.site-header.scroll-aware{opacity:1;transition:opacity .26s ease-out}
.site-header.scroll-aware.is-scroll-hidden{opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.site-header.scroll-aware{transition:none}}
