:root{--ink:#102c32;--navy:#0b2830;--gold:#b9975b;--cream:#f3f0e9;--paper:#fbfaf7;--line:rgba(16,44,50,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,sans-serif;line-height:1.85;letter-spacing:.04em}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}button,a{tap-highlight-color:transparent}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;position:absolute;z-index:10;top:0;width:100%;color:white;border-bottom:1px solid rgba(255,255,255,.2)}.brand{display:flex;align-items:center;gap:13px}.brand-mark{font:700 22px/1 Georgia,serif;letter-spacing:.08em;border-right:1px solid currentColor;padding-right:13px}.brand-name{font:500 9px/1.25 Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}.desktop-nav{display:flex;gap:28px;font-size:12px}.desktop-nav a{opacity:.82}.desktop-nav a:hover{opacity:1}.header-contact{font-size:12px;border-left:1px solid rgba(255,255,255,.3);padding:12px 0 12px 28px;display:flex;gap:22px}.mobile-menu{display:none}.hero{min-height:780px;height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 38%,#19454c 0,#0d3239 30%,#08252c 72%);color:white;padding:160px 8vw 60px;display:flex;align-items:center}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(0,0,0,.14),transparent 55%),repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(255,255,255,.045) 25%)}.hero-content{position:relative;z-index:2;max-width:810px}.eyebrow{font:600 10px/1.4 Arial,sans-serif;letter-spacing:.24em}.hero .eyebrow{color:#d7c5a2;margin-bottom:26px}.hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;font-size:clamp(72px,9.6vw,146px);line-height:1.04;letter-spacing:.06em;margin:0 0 36px}.hero h1 em{color:#c9aa72;font-style:normal}.hero-lead{font-family:"Yu Mincho",serif;font-size:17px;line-height:2.1;letter-spacing:.1em}.hero-actions{display:flex;align-items:center;gap:38px;margin-top:43px}.button{display:inline-flex;align-items:center;justify-content:space-between;min-width:250px;padding:17px 20px;font-size:12px}.button.primary{background:#c4a267;color:#0b2830}.text-link{font-size:12px;border-bottom:1px solid rgba(255,255,255,.45);padding:10px 0;display:flex;gap:28px}.hero-footer{position:absolute;z-index:2;bottom:30px;left:4.5vw;right:4.5vw;display:flex;justify-content:space-between;font:500 9px Arial;letter-spacing:.17em;color:rgba(255,255,255,.55)}.hero-orbit{position:absolute;width:620px;height:620px;right:-40px;top:110px;border:1px solid rgba(205,175,120,.26);border-radius:50%}.hero-orbit:before,.hero-orbit:after,.hero-orbit i{content:"";position:absolute;border:1px solid rgba(205,175,120,.18);border-radius:50%;inset:72px}.hero-orbit:after{inset:145px}.hero-orbit i:first-child{inset:215px;background:rgba(185,151,91,.035)}.section{padding:120px 8vw}.section-label{font:600 10px Arial,sans-serif;letter-spacing:.2em;display:flex;gap:18px;align-items:center;margin-bottom:70px}.section-label span{color:var(--gold)}.section-label:after{content:"";height:1px;width:48px;background:var(--gold)}.statement-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:10vw}.statement h2,.services h2,.principles h2,.message h2,.company h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;letter-spacing:.06em}.statement h2{font-size:clamp(38px,5vw,70px);line-height:1.55}.statement h2 span{color:var(--gold)}.statement-copy{padding-top:17px;font-size:14px;line-height:2.25}.statement-copy p{margin-bottom:24px}.statement-copy strong{display:block;margin-top:35px;font-family:"Yu Mincho",serif;font-size:19px}.about-band{margin-top:100px;background:var(--cream);min-height:290px;padding:55px 6vw;display:grid;grid-template-columns:.3fr 1fr .45fr;align-items:center}.about-band>p:first-child{font:600 9px Arial;letter-spacing:.2em;align-self:start}.about-band h3{font:500 clamp(28px,4vw,50px)/1.5 "Yu Mincho",serif;margin:0}.about-band h3 span{color:var(--gold)}.band-note{font-size:12px;border-left:1px solid var(--gold);padding-left:25px}.services{background:var(--navy);color:white}.section-head{display:grid;grid-template-columns:.55fr 1fr;margin-bottom:85px}.section-label.light{color:#d7c5a2}.section-head h2{font-size:clamp(40px,5vw,68px);line-height:1.45;margin-bottom:26px}.section-head>div:last-child>p{color:rgba(255,255,255,.65);font-size:13px}.service-list{border-top:1px solid rgba(255,255,255,.22)}.service{display:grid;grid-template-columns:80px .75fr 1fr 35px;gap:25px;align-items:start;padding:34px 10px;border-bottom:1px solid rgba(255,255,255,.18);transition:.3s}.service:hover{background:rgba(255,255,255,.035);padding-left:22px}.service-no{font:500 11px Arial;color:#c9aa72}.service-title small{font:600 9px Arial;letter-spacing:.18em;color:#c9aa72}.service-title h3{font:500 21px/1.5 "Yu Mincho",serif;margin:5px 0}.service-copy strong{font:500 16px "Yu Mincho",serif}.service-copy p{font-size:12px;color:rgba(255,255,255,.6);max-width:510px;margin:10px 0 0}.service-arrow{color:#c9aa72}.principles-intro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:80px}.principles-intro h2{font-size:clamp(42px,5.5vw,74px);line-height:1.4;margin:0}.principles-intro h2 em{font-style:normal;color:var(--gold)}.principles-intro>p{font-size:13px;padding-bottom:15px}.principle-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line)}.principle-grid article{grid-column:span 2;padding:37px 32px 45px 0;border-bottom:1px solid var(--line);min-height:260px}.principle-grid article:not(:nth-child(3)){border-right:1px solid var(--line);padding-right:32px}.principle-grid article:nth-child(2),.principle-grid article:nth-child(3){padding-left:32px}.principle-grid article:nth-child(4){grid-column:2/span 2;padding-left:32px;border-left:1px solid var(--line)}.principle-grid article:nth-child(5){padding-left:32px}.principle-grid span{font:500 10px Arial;color:var(--gold)}.principle-grid h3{font:500 21px "Yu Mincho",serif;margin:42px 0 20px}.principle-grid p{font-size:12px;color:#536569}.message{background:var(--cream)}.message-panel{display:grid;grid-template-columns:.8fr 1.2fr;background:#12343b;color:white}.portrait{min-height:680px;position:relative;background:linear-gradient(145deg,#c8bda9,#948876);overflow:hidden;display:flex;align-items:center;justify-content:center}.portrait:before{content:"";position:absolute;width:390px;height:390px;border-radius:50%;border:1px solid rgba(255,255,255,.25)}.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,32,37,.65),transparent 55%)}.portrait-monogram{font:italic 110px Georgia;color:rgba(255,255,255,.23);letter-spacing:-.08em}.portrait span{position:absolute;z-index:2;bottom:44px;left:44px;font-size:11px}.portrait span b{font:500 21px "Yu Mincho",serif}.message-copy{padding:70px 7vw}.message-copy .section-label{margin-bottom:50px}.message-copy h2{font-size:clamp(38px,4vw,56px);line-height:1.5}.message-copy>p{font-size:13px;color:rgba(255,255,255,.72);line-height:2.15}.signature{border-top:1px solid rgba(255,255,255,.2);margin-top:35px;padding-top:25px;display:flex;flex-direction:column}.signature small{color:rgba(255,255,255,.55);font-size:9px}.signature strong{font:500 16px "Yu Mincho",serif}.book{max-width:860px;margin:100px auto 0;display:grid;grid-template-columns:210px 1fr;align-items:center;gap:75px}.book-cover{aspect-ratio:.7;background:#eee8de;border:1px solid #d2c9ba;box-shadow:15px 18px 35px rgba(31,37,35,.15);padding:19px;color:#252b2a;display:flex;flex-direction:column;justify-content:space-between}.book-cover small{font-size:7px}.book-cover strong{font:700 32px/1.25 "Yu Mincho",serif}.book-cover strong i{font-size:12px;font-style:normal}.book-cover span{font-size:10px}.book .eyebrow{color:var(--gold)}.book h3{font:500 28px "Yu Mincho",serif}.book p{font-size:13px}.book a{font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:7px;display:inline-flex;gap:40px}.company{display:grid;grid-template-columns:.75fr 1.25fr;gap:10vw}.company h2{font-size:52px}.company>div>p{font-size:13px}.company dl{margin:0}.company dl div{display:grid;grid-template-columns:130px 1fr;border-top:1px solid var(--line);padding:22px 0;font-size:12px}.company dl div:last-child{border-bottom:1px solid var(--line)}.company dt{color:#778488}.company dd{margin:0}.contact{text-align:center;background:#bd9c62;color:#102c32;padding:115px 5vw}.contact .eyebrow{margin-bottom:28px}.contact h2{font:500 clamp(45px,6vw,78px)/1.45 "Yu Mincho",serif;letter-spacing:.08em}.contact>p:not(.eyebrow){font-size:13px}.contact-button{width:min(430px,90vw);background:#0b2830;color:white;margin:45px auto 14px;padding:21px 25px;display:flex;justify-content:space-between;font-size:13px}.contact small{display:block;font-size:9px}footer{background:#071e24;color:white;padding:65px 5vw 35px;display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:start}.footer-nav{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;font:500 10px Arial;letter-spacing:.12em}.footer-meta{text-align:right;display:flex;flex-direction:column;font:500 9px Arial;letter-spacing:.08em;color:rgba(255,255,255,.55);gap:65px}.footer-meta a{color:white}.footer-brand{align-self:start}
@media(max-width:900px){.desktop-nav,.header-contact{display:none}.mobile-menu{display:block}.mobile-menu summary{list-style:none;width:35px;cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{display:block;height:1px;background:white;margin:8px 0}.mobile-menu nav{position:absolute;top:88px;left:0;right:0;background:#0b2830;padding:30px 8vw;display:flex;flex-direction:column;gap:18px}.hero{padding-left:7vw}.hero-orbit{right:-300px}.section{padding:90px 7vw}.statement-grid,.section-head,.company{grid-template-columns:1fr}.section-head{gap:15px}.about-band{grid-template-columns:1fr;gap:22px}.principles-intro{display:block}.principles-intro>p{margin-top:25px}.principle-grid{grid-template-columns:1fr 1fr}.principle-grid article{grid-column:auto!important;padding:30px 24px!important;border:0!important;border-bottom:1px solid var(--line)!important}.principle-grid article:nth-child(odd){border-right:1px solid var(--line)!important}.message-panel{grid-template-columns:1fr}.portrait{min-height:520px}.company{gap:45px}footer{grid-template-columns:1fr 1fr;gap:50px}.footer-meta{grid-column:1/-1;text-align:left;gap:12px}}
@media(max-width:600px){.site-header{height:72px}.mobile-menu nav{top:72px}.hero{min-height:740px;padding-top:135px}.hero h1{font-size:61px}.hero-lead{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.hero-footer span:first-child{display:none}.hero-footer{justify-content:flex-end}.section{padding:76px 6vw}.section-label{margin-bottom:45px}.statement h2{font-size:36px}.statement-copy{font-size:13px}.about-band{margin-top:65px;padding:36px 8vw}.service{grid-template-columns:38px 1fr 24px;gap:12px}.service-copy{grid-column:2/4}.services .section-head{margin-bottom:55px}.principle-grid{grid-template-columns:1fr}.principle-grid article:nth-child(odd){border-right:0!important}.principle-grid article{min-height:0}.principle-grid h3{margin-top:25px}.portrait{min-height:410px}.message-copy{padding:55px 7vw}.book{grid-template-columns:125px 1fr;gap:28px;margin-top:70px}.book-cover{padding:12px}.book-cover strong{font-size:20px}.company dl div{grid-template-columns:1fr;gap:5px}.contact{padding:85px 5vw}.contact h2{font-size:39px}footer{grid-template-columns:1fr}.footer-nav,.footer-meta{grid-column:auto}.footer-meta{text-align:left}.footer-meta{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service{transition:none}}

/* Service detail pages */
.detail-page{background:var(--paper)}.detail-header{height:88px;padding:0 4.5vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;position:absolute;z-index:5;color:white;width:100%;border-bottom:1px solid rgba(255,255,255,.18)}.detail-header>a:nth-child(2){font-size:11px;letter-spacing:.08em}.detail-contact-link{justify-self:end;font-size:11px;display:flex;gap:20px}.detail-hero{min-height:700px;padding:150px 8vw 90px;background:radial-gradient(circle at 78% 40%,#1b4a51 0,#0d3239 33%,#08252c 75%);color:white;position:relative;overflow:hidden}.detail-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(255,255,255,.04) 25%)}.detail-orbit{position:absolute;width:540px;height:540px;border:1px solid rgba(201,170,114,.25);border-radius:50%;right:-80px;top:110px}.detail-orbit:before,.detail-orbit:after{content:"";position:absolute;border:1px solid rgba(201,170,114,.18);border-radius:50%;inset:80px}.detail-orbit:after{inset:160px}.detail-breadcrumb{position:relative;display:flex;gap:12px;font:500 8px Arial;letter-spacing:.15em;color:rgba(255,255,255,.5)}.detail-breadcrumb b{color:#d2b77f}.detail-hero-copy{position:relative;max-width:790px;margin-top:90px}.detail-hero-copy .eyebrow{color:#d2b77f}.detail-hero-copy h1{font:500 clamp(43px,6vw,78px)/1.35 "Yu Mincho",serif;letter-spacing:.06em;margin:22px 0 8px}.detail-hero-copy h2{font:500 clamp(25px,3vw,38px)/1.5 "Yu Mincho",serif;color:#d2b77f;margin:0 0 34px}.detail-hero-copy>p:last-child{font-size:14px;line-height:2.25;color:rgba(255,255,255,.72);max-width:690px}.detail-section{padding:110px 8vw}.detail-kicker{font:600 9px Arial;letter-spacing:.2em;display:flex;gap:18px;align-items:center;margin-bottom:65px}.detail-kicker span{color:var(--gold)}.detail-kicker:after{content:"";height:1px;width:46px;background:var(--gold)}.detail-two-col{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.detail-section h2{font:500 clamp(36px,4.5vw,58px)/1.5 "Yu Mincho",serif;letter-spacing:.05em}.detail-issues ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.detail-issues li{border-bottom:1px solid var(--line);padding:22px 10px;font-size:14px;display:flex;gap:20px}.detail-issues li span{color:var(--gold)}.detail-support{background:var(--navy);color:white}.detail-kicker.light{color:#d7c5a2}.detail-title-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px}.detail-title-row h2{margin:0}.detail-title-row>p{font-size:12px;color:#6c7d80}.detail-support .detail-title-row>p{color:rgba(255,255,255,.55)}.support-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.2)}.support-grid article{padding:38px 35px 48px 0;border-bottom:1px solid rgba(255,255,255,.2);min-height:230px}.support-grid article:nth-child(odd){border-right:1px solid rgba(255,255,255,.2)}.support-grid article:nth-child(even){padding-left:40px}.support-grid span,.process-row>article>span{font:500 10px Arial;color:var(--gold)}.support-grid h3,.process-row h3{font:500 22px "Yu Mincho",serif;margin:30px 0 16px}.support-grid p,.process-row p{font-size:12px;color:rgba(255,255,255,.6);max-width:430px}.process-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.process-row article{padding:35px 28px 30px 0;border-right:1px solid var(--line);min-height:225px}.process-row article:not(:first-child){padding-left:28px}.process-row p{color:#607276}.detail-outcomes{background:var(--cream)}.detail-outcomes ol{list-style:none;margin:0;padding:0;counter-reset:item}.detail-outcomes li{font:500 20px "Yu Mincho",serif;border-top:1px solid var(--line);padding:28px 10px;display:flex;gap:32px}.detail-outcomes li:last-child{border-bottom:1px solid var(--line)}.detail-outcomes li span{font:500 9px Arial;color:var(--gold);padding-top:8px}.detail-cta{background:#bd9c62;text-align:center;padding:105px 5vw}.detail-cta h2{font:500 clamp(42px,5.5vw,68px)/1.45 "Yu Mincho",serif}.detail-cta>p:not(.eyebrow){font-size:13px}.detail-cta>a{display:flex;justify-content:space-between;background:#0b2830;color:white;width:min(430px,90vw);padding:20px 24px;margin:40px auto 0;font-size:12px}.detail-siblings{display:grid;grid-template-columns:repeat(3,1fr);background:#0b2830;color:white;padding:70px 8vw}.detail-siblings a{padding:25px;border:1px solid rgba(255,255,255,.14);display:flex;flex-direction:column;transition:.25s}.detail-siblings a:hover,.detail-siblings a.current{background:rgba(255,255,255,.06);border-color:#b9975b}.detail-siblings small{font:500 8px Arial;color:#b9975b;letter-spacing:.12em}.detail-siblings span{font:500 15px "Yu Mincho",serif;margin-top:10px}.detail-footer{background:#071e24;color:white;padding:45px 5vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end}.detail-footer>a:nth-child(2){justify-self:center;font-size:10px}.detail-footer>span{justify-self:end;font:500 8px Arial;color:rgba(255,255,255,.45)}
@media(max-width:800px){.detail-header{grid-template-columns:1fr auto}.detail-header>a:nth-child(2){display:none}.detail-hero{min-height:650px;padding:130px 7vw 70px}.detail-orbit{right:-330px}.detail-hero-copy{margin-top:70px}.detail-two-col{grid-template-columns:1fr;gap:30px}.detail-title-row{display:block}.detail-title-row>p{margin-top:20px}.process-row{grid-template-columns:1fr 1fr}.process-row article:nth-child(2){border-right:0}.detail-siblings{grid-template-columns:1fr 1fr}.detail-footer{grid-template-columns:1fr 1fr;gap:35px}.detail-footer>a:nth-child(2){justify-self:end}.detail-footer>span{justify-self:start;grid-column:1/-1}}
@media(max-width:560px){.detail-header{height:72px}.detail-hero-copy h1{font-size:38px}.detail-hero-copy>p:last-child{font-size:13px}.detail-section{padding:78px 6vw}.support-grid,.process-row{grid-template-columns:1fr}.support-grid article,.support-grid article:nth-child(even),.process-row article,.process-row article:not(:first-child){padding:30px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.18);min-height:0}.process-row article,.process-row article:not(:first-child){border-bottom:1px solid var(--line)}.detail-siblings{grid-template-columns:1fr;padding:55px 6vw}.detail-footer{grid-template-columns:1fr}.detail-footer>a:nth-child(2),.detail-footer>span{justify-self:start;grid-column:auto}}

/* Consultation form */
.contact-page{background:var(--paper)}.contact-header{height:88px;padding:0 4.5vw;display:flex;justify-content:space-between;align-items:center;position:absolute;z-index:5;color:white;width:100%;border-bottom:1px solid rgba(255,255,255,.18)}.contact-header>a:last-child{font-size:11px;display:flex;gap:20px}.contact-hero{min-height:580px;padding:160px 8vw 85px;background:radial-gradient(circle at 78% 40%,#1b4a51 0,#0d3239 33%,#08252c 75%);color:white;position:relative;overflow:hidden;display:flex;align-items:center}.contact-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(255,255,255,.04) 25%)}.contact-orbit{position:absolute;width:520px;height:520px;border:1px solid rgba(201,170,114,.25);border-radius:50%;right:-70px;top:75px}.contact-orbit:before,.contact-orbit:after{content:"";position:absolute;border:1px solid rgba(201,170,114,.18);border-radius:50%;inset:78px}.contact-orbit:after{inset:156px}.contact-hero-inner{position:relative;z-index:1}.contact-hero .eyebrow{color:#d2b77f}.contact-hero h1{font:500 clamp(48px,6.5vw,88px)/1.35 "Yu Mincho",serif;letter-spacing:.06em;margin:18px 0 25px}.contact-hero h1 em{font-style:normal;color:#c9aa72}.contact-hero-inner>p:last-child{font-size:14px;color:rgba(255,255,255,.7);line-height:2}.contact-form-section{padding:115px 8vw 130px;display:grid;grid-template-columns:.72fr 1.28fr;gap:9vw}.contact-form-intro{position:sticky;top:50px;align-self:start}.contact-form-intro .section-label{margin-bottom:48px}.contact-form-intro h2{font:500 clamp(31px,3.5vw,46px)/1.65 "Yu Mincho",serif}.contact-form-intro>p{font-size:13px;color:#607276}.contact-form-intro dl{margin:55px 0 0;border-top:1px solid var(--line)}.contact-form-intro dl div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 0;font-size:11px}.contact-form-intro dd{margin:0;font-weight:600}.consultation-form{background:white;border:1px solid rgba(16,44,50,.1);padding:55px 5vw;box-shadow:0 20px 60px rgba(16,44,50,.06)}.form-row{display:grid;grid-template-columns:155px 1fr;gap:25px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.form-row-message{align-items:start}.form-row label{font:500 13px "Yu Mincho",serif;padding-top:3px}.form-row label span{font:600 8px Arial;color:#8f6d36;border:1px solid #c9aa72;padding:3px 6px;margin-left:8px}.form-row label small{font:500 9px Arial;color:#879295;margin-left:8px}.form-row input,.form-row textarea{width:100%;border:0;background:#f5f3ed;padding:15px 17px;font:inherit;font-size:13px;color:var(--ink);outline:none;border-radius:0}.form-row input:focus,.form-row textarea:focus{box-shadow:inset 0 0 0 1px #b9975b;background:white}.form-row textarea{resize:vertical;min-height:190px;line-height:1.8}.privacy-check{display:flex;align-items:center;justify-content:center;gap:10px;margin:35px 0 20px;font-size:11px;cursor:pointer}.privacy-check input{accent-color:#0b2830;width:17px;height:17px}.consultation-form button{border:0;background:#0b2830;color:white;width:100%;padding:21px 24px;display:flex;align-items:center;justify-content:space-between;font:500 13px inherit;letter-spacing:.08em;cursor:pointer}.consultation-form button:hover{background:#15444c}.consultation-form button:disabled{opacity:.65;cursor:wait}.form-note{text-align:center;font-size:9px;color:#839093;margin:14px 0 0}.form-error{background:#fff1ef;color:#943c32;padding:14px 16px;font-size:11px;margin:0 0 18px}.form-honeypot{position:absolute!important;left:-9999px!important}.form-complete{background:white;border:1px solid rgba(16,44,50,.1);padding:85px 5vw;text-align:center;box-shadow:0 20px 60px rgba(16,44,50,.06)}.complete-mark{display:flex;width:64px;height:64px;border-radius:50%;background:#b9975b;color:white;align-items:center;justify-content:center;margin:0 auto 28px;font-size:25px}.form-complete .eyebrow{color:#b9975b}.form-complete h2{font:500 clamp(28px,3vw,40px) "Yu Mincho",serif}.form-complete>p:not(.eyebrow){font-size:13px;color:#607276}.form-complete>a{display:flex;justify-content:space-between;background:#0b2830;color:white;max-width:330px;padding:17px 20px;margin:35px auto 0;font-size:11px}.contact-footer{background:#071e24;color:white;padding:45px 5vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end}.contact-footer>a:nth-child(2){justify-self:center;font-size:10px}.contact-footer>span{justify-self:end;font:500 8px Arial;color:rgba(255,255,255,.45)}
@media(max-width:850px){.contact-form-section{grid-template-columns:1fr}.contact-form-intro{position:static}.contact-orbit{right:-320px}.contact-footer{grid-template-columns:1fr 1fr;gap:30px}.contact-footer>a:nth-child(2){justify-self:end}.contact-footer>span{justify-self:start;grid-column:1/-1}}
@media(max-width:600px){.contact-header{height:72px}.contact-header>a:last-child{font-size:9px}.contact-hero{min-height:530px;padding:125px 6vw 65px}.contact-hero h1{font-size:44px}.contact-hero-inner>p:last-child{font-size:12px}.contact-form-section{padding:75px 6vw 90px}.consultation-form{padding:30px 6vw}.form-row{grid-template-columns:1fr;gap:9px;padding:16px 0}.privacy-check{align-items:flex-start}.contact-footer{grid-template-columns:1fr}.contact-footer>a:nth-child(2),.contact-footer>span{justify-self:start;grid-column:auto}}

/* Representative channels */
.message-social{margin-top:30px;padding-top:25px;border-top:1px solid rgba(255,255,255,.2)}.message-social>small{font:600 8px Arial;letter-spacing:.18em;color:#c9aa72}.message-social>p{font-size:11px;color:rgba(255,255,255,.55);margin:8px 0 14px}.message-social>div{display:flex;gap:12px}.message-social a{border:1px solid rgba(255,255,255,.25);padding:9px 14px;min-width:95px;display:flex;justify-content:space-between;font:500 10px Arial}.message-social a:hover{border-color:#c9aa72;color:#d7c5a2}.footer-meta{gap:22px}.footer-social{display:flex;justify-content:flex-end;gap:18px}.footer-social a{color:#d7c5a2}.detail-footer-links{justify-self:center;display:flex;gap:20px;font-size:9px}.detail-footer-links a:not(:first-child){color:#d7c5a2}.contact-social{margin-top:38px;padding-top:26px;border-top:1px solid var(--line)}.contact-social>small{font:600 8px Arial;letter-spacing:.18em;color:#9a783f}.contact-social>p{font-size:11px;color:#607276;margin:8px 0 14px}.contact-social>div{display:flex;gap:10px}.contact-social a{border:1px solid var(--line);padding:9px 13px;min-width:90px;display:flex;justify-content:space-between;font:500 10px Arial}.contact-social a:hover{border-color:#b9975b}.contact-footer-links{justify-self:center;display:flex;gap:20px;font-size:9px}.contact-footer-links a:not(:first-child){color:#d7c5a2}
@media(max-width:850px){.detail-footer-links,.contact-footer-links{justify-self:end}.footer-social{justify-content:flex-start}}
@media(max-width:600px){.detail-footer-links,.contact-footer-links{justify-self:start;flex-wrap:wrap}.contact-footer-links{grid-column:auto}.message-social>div,.contact-social>div{flex-wrap:wrap}}

/* Representative portrait */
.portrait{width:90%;height:90%;min-height:612px;align-self:center;justify-self:center}
@media(max-width:900px){.portrait{height:468px;min-height:0;margin-top:26px}}
@media(max-width:600px){.portrait{height:369px;margin-top:21px}.portrait span{left:32px;bottom:32px}}
.portrait:before{display:none}.portrait-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}

/* Supplied book photograph: preserve the complete image. */
.book-cover-photo{padding:0;aspect-ratio:auto;border:0;background:transparent;display:block}.book-cover-photo img{display:block;width:100%;height:auto}

.books{margin:100px auto 0;max-width:1200px}.books>.eyebrow{color:var(--gold)}.books>h2{font:500 36px/1.5 "Yu Mincho",serif;margin-bottom:48px}.books-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.book-card{display:flex;flex-direction:column;min-width:0}.book-image{height:310px;display:flex;align-items:center;justify-content:center;margin-bottom:30px}.book-image img{max-width:100%;max-height:100%;width:auto;height:auto;box-shadow:8px 12px 25px rgba(31,37,35,.14)}.book-card>.eyebrow{color:var(--gold);font-size:9px;min-height:14px}.book-card h3{font:500 22px/1.65 "Yu Mincho",serif;min-height:73px;margin-bottom:12px}.book-subtitle{font-size:11px;min-height:42px;color:#607276}.book-description{font-size:12px;line-height:1.9;margin-bottom:25px}.book-link{margin-top:auto;font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:8px;display:flex;justify-content:space-between;align-self:flex-start;gap:35px}@media(max-width:900px){.books-grid{gap:25px}.book-image{height:240px}.book-card h3{font-size:18px}}@media(max-width:600px){.books{margin-top:65px}.books>h2{font-size:28px}.books-grid{grid-template-columns:1fr;gap:55px}.book-image{height:300px}.book-card h3{min-height:0;font-size:22px}.book-subtitle{min-height:0}.book-description{font-size:13px}}

/* Representative social links */
.message-social{margin-top:32px;padding-top:28px}.message-social h3{font:500 21px/1.5 "Yu Mincho",serif;color:#fff;margin:0 0 10px}.message-social>p{font-size:12px;color:rgba(255,255,255,.75);margin-bottom:20px}.message-social>div{display:flex;gap:12px;flex-wrap:wrap}.message-social a{flex:1;min-width:110px;min-height:52px;align-items:center;padding:14px 17px;background:#d7bc87;color:#0b2830;border:1px solid #d7bc87;font:600 15px/1.4 Arial,sans-serif;transition:background .15s,color .15s}.message-social a:hover{background:#f0ddb5;color:#0b2830;border-color:#f0ddb5}.message-social a:focus-visible{outline:3px solid white;outline-offset:4px}@media(max-width:600px){.message-social a{flex:1 1 110px}}

.signature .representative-title{display:block;color:#d7bc87;margin:8px 0;font-size:12px}

.author-page-link{margin-top:48px;padding-top:28px;border-top:1px solid var(--line);text-align:center}.author-page-link a{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:15px 22px;border:1px solid var(--ink);font-size:13px}.author-page-link a:hover{background:var(--ink);color:white}.author-page-link a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
/* Renewal preview — restrained navy on white */
:root{--ink:#192f4b;--navy:#142d4d;--gold:#ab9366;--cream:#f5f7fa;--paper:#fff;--line:#dce3eb}
body{background:#fff;letter-spacing:.025em}a:focus-visible,summary:focus-visible{outline:2px solid #ab9366;outline-offset:6px}.official-logo{width:190px;height:auto;object-fit:contain;display:block}.site-header{position:relative;height:100px;background:#fff;color:var(--ink);border-bottom:1px solid var(--line);padding:0 6vw}.desktop-nav{gap:24px;font-size:12px}.header-contact{background:var(--navy);color:white;padding:12px 20px;border:none;gap:16px}.hero{height:auto;min-height:710px;background:linear-gradient(110deg,#fff 55%,#f5f8fb);color:var(--ink);padding:90px 8vw 110px;display:grid;grid-template-columns:1.2fr 1fr;gap:4vw}.hero:before{display:none}.hero .eyebrow{color:#728298;font-size:11px;letter-spacing:.2em;margin-bottom:30px}.hero h1{font-size:clamp(64px,7.4vw,108px);line-height:1.3;letter-spacing:.06em;margin-bottom:28px}.hero h1 em{color:var(--ink)}.hero-lead{font-family:inherit;font-size:18px;letter-spacing:.04em;margin-bottom:20px}.hero-description{font-size:14px;color:#637186;line-height:2.1}.hero-actions{gap:28px;margin-top:32px}.button.primary{background:var(--navy);color:#fff;min-width:230px;gap:30px}.text-link{border-color:var(--line);gap:20px;color:var(--ink)}.hero-footer{color:#728298;font-size:9px;bottom:28px;left:8vw;right:8vw}.hero-diagram{position:relative;width:350px;height:350px;max-width:100%;margin:auto;border:1px solid #dde5ed;border-radius:50%;background:radial-gradient(circle,#fff 32%,#edf3f8 33%,#f8fafc 65%,#fff 66%);display:flex;align-items:center;justify-content:center}.diagram-center{font-family:"Yu Mincho",serif;font-size:25px;text-align:center;width:166px;height:166px;display:flex;flex-direction:column;justify-content:center;border:1px solid #b8c7d6;border-radius:50%;background:#fff;box-shadow:0 10px 45px #142d4d08}.diagram-center span{font-family:inherit;font-size:11px;color:#6c7e91;margin-top:8px}.diagram-ring{position:absolute;inset:0}.diagram-ring span{position:absolute;background:white;border:1px solid #dce3eb;padding:10px 24px;font-size:13px}.diagram-ring span:nth-child(1){top:0;left:50%;transform:translate(-50%,-50%)}.diagram-ring span:nth-child(2){right:0;top:50%;transform:translate(50%,-50%)}.diagram-ring span:nth-child(3){bottom:0;left:50%;transform:translate(-50%,50%)}.diagram-ring span:nth-child(4){left:0;top:50%;transform:translate(-50%,-50%)}.hero-diagram>p{position:absolute;bottom:-85px;font-size:12px;color:#78889b;letter-spacing:.14em}.section{padding:95px 8vw}.home-role{background:#f5f7fa}.home-role>div{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;margin-top:32px}.home-role h2{font:500 36px/1.65 "Yu Mincho",serif}.home-role>div>p{font-size:14px;color:#637186;margin:0}.home-role .text-link{margin-top:18px;width:max-content}.services{background:white;color:var(--ink)}.section-head{grid-template-columns:.55fr 1fr;margin-bottom:48px}.section-head h2{font-size:43px}.section-head>div:last-child>p{color:#637186}.service-list{display:grid;grid-template-columns:1fr 1fr;border-top:none;gap:20px}.service{grid-template-columns:30px 1fr 20px;gap:12px;position:relative;padding:28px;background:white;border:1px solid var(--line);transition:background .2s}.service:hover{padding-left:28px;background:#f6f8fb}.service-title h3{font-size:20px}.service-title small{color:#7d8ca0}.service-copy{grid-column:2;grid-row:2}.service-copy strong{font-size:14px;color:var(--ink)}.service-copy p{color:#637186;font-size:12px;line-height:1.9;margin-bottom:0}.service-arrow{grid-column:3;grid-row:1;color:var(--ink)}.service-no{color:var(--gold)}.news{background:#f8fafc;display:grid;grid-template-columns:1fr 2fr;gap:6vw}.news-heading h2{font:500 36px/1.4 "Yu Mincho",serif}.news-heading>p:last-child{font-size:12px;color:#637186}.news-list>a:not(.text-link){display:grid;grid-template-columns:75px 1fr 18px;gap:24px;padding:28px 0;border-top:1px solid var(--line);align-items:start;font-size:13px}.news-list small{font-size:10px;color:#788397;border:1px solid var(--line);text-align:center;padding:3px}.news-list b{font-weight:400}.news-list .text-link{margin-top:15px;width:max-content;font-size:12px}.contact{background:#edf2f7;color:var(--ink);padding:75px 8vw;text-align:center}.contact h2{font-size:36px;line-height:1.65}.contact>p{color:#637186}.contact-button{background:var(--navy);color:white;border:none;max-width:360px}.contact small{color:#788397}.contact .eyebrow{color:#728298}footer{background:#fff;color:var(--ink);border-top:1px solid var(--line);padding:45px 6vw;gap:30px;flex-wrap:wrap}.footer-meta{color:#788397}.footer-nav{gap:22px;font-size:11px}.page-intro{padding:70px 8vw;background:#f5f7fa;border-bottom:1px solid var(--line)}.page-intro h1{font:500 46px/1.5 "Yu Mincho",serif;margin:0}.page-intro .eyebrow{color:#788397}.statement h2 span,.principles h2 em{color:var(--ink)}.statement h2{font-size:44px}.about-band{background:#f5f7fa}.principles{background:white}.principle-grid article{border-color:var(--line)}.message-panel{background:#f5f7fa;color:var(--ink)}.message-copy p{color:#637186}.message-copy .section-label.light{color:#788397}.signature{border-color:var(--line)}.signature small{color:#637186}.message-social{border-color:var(--line)}.message-social a{color:var(--ink);border-color:var(--line)}.portrait span{background:#142d4de8;color:white}.books{margin-top:0}.book-image{background:#f5f7fa}.detail-header,.contact-header{background:white;color:var(--ink);border-bottom:1px solid var(--line)}.detail-hero,.contact-hero{background:#f5f7fa;color:var(--ink)}.detail-hero-copy>p,.contact-hero-inner>p{color:#637186}.detail-hero-copy h2,.contact-hero em{color:var(--ink)}.detail-breadcrumb{color:#788397}.detail-orbit,.contact-orbit{display:none}.detail-support{background:#f5f7fa;color:var(--ink)}.support-grid p{color:#637186}.detail-cta{background:#edf2f7;color:var(--ink)}.detail-footer,.contact-footer{background:#fff;color:var(--ink)}.detail-footer-links,.contact-footer-links{color:#637186}.contact-form-section{background:white}
@media(max-width:1100px){.desktop-nav{gap:14px;font-size:10px}.official-logo{width:165px}.hero-diagram{width:290px;height:290px}.hero-actions{flex-wrap:wrap}.footer-nav{flex-wrap:wrap}}
@media(max-width:760px){.site-header{height:78px;padding:0 6vw}.official-logo{width:150px}.desktop-nav,.header-contact{display:none}.mobile-menu{display:block;color:var(--ink)}.mobile-menu summary{font-size:11px;cursor:pointer;list-style:none;border:1px solid var(--line);padding:8px 12px}.mobile-menu nav{background:white;color:var(--ink);position:absolute;top:78px;right:0;left:0;padding:20px 6vw;box-shadow:0 20px 30px #142d4d10}.mobile-menu nav a{display:block;padding:12px;border-bottom:1px solid var(--line)}.hero{min-height:0;display:block;padding:54px 7vw 74px;background:linear-gradient(#fff,#f8fafc)}.hero h1{font-size:62px;margin-bottom:26px}.hero .eyebrow{font-size:9px;margin-bottom:24px}.hero-lead{font-size:15px}.hero-description{font-size:12px}.hero-actions{gap:16px;margin-top:26px}.button.primary{width:100%;min-width:0;padding:17px 20px}.hero-actions .text-link{font-size:11px}.hero-diagram{width:230px;height:230px;margin:64px auto 55px}.diagram-center{width:125px;height:125px;font-size:21px}.diagram-center span{font-size:9px}.diagram-ring span{font-size:11px;padding:7px 18px}.hero-diagram>p{bottom:-62px;font-size:10px}.hero-footer{font-size:7px;left:7vw;right:7vw;bottom:22px}.section{padding:60px 7vw}.home-role>div{display:block;margin-top:25px}.home-role h2{font-size:27px}.home-role>div>p{font-size:12px}.section-head{display:block;margin-bottom:30px}.section-label{margin-bottom:25px}.section-head h2{font-size:32px}.section-head>div:last-child>p{font-size:12px}.service-list{grid-template-columns:1fr;gap:12px}.service{padding:22px;grid-template-columns:24px 1fr 16px}.service:hover{padding-left:22px}.service-title h3{font-size:19px}.news{display:block}.news-heading{margin-bottom:30px}.news-heading h2{font-size:29px}.news-list>a:not(.text-link){grid-template-columns:1fr 16px;gap:12px;font-size:12px;padding:22px 0}.news-list small{grid-column:1;width:68px}.news-list span{grid-column:1}.news-list b{grid-column:2;grid-row:2}.contact{padding:55px 7vw}.contact h2{font-size:27px}.contact p{font-size:12px}.contact-button{width:100%;font-size:12px}footer{padding:35px 7vw;display:flex;flex-direction:column;align-items:flex-start}.footer-nav{display:flex;gap:16px}.footer-meta{align-items:flex-start}.page-intro{padding:45px 7vw}.page-intro h1{font-size:34px}.statement h2{font-size:32px}.message-copy{padding:35px 7vw}.message h2{font-size:29px}.detail-header .official-logo,.contact-header .official-logo{width:135px}.detail-header{gap:12px}.detail-header>a:not(.brand){font-size:10px}.contact-header{padding:20px 6vw}.contact-header>a:last-child{font-size:10px}}
.mobile-menu summary{width:auto;height:auto;white-space:nowrap;display:block}.mobile-menu nav{background:#fff;color:var(--ink)}
@media(min-width:761px) and (max-width:900px){.desktop-nav{display:flex;gap:12px}.mobile-menu{display:none}.header-contact{display:none}}
@media(max-width:760px){.hero h1{font-size:clamp(42px,13.5vw,54px);letter-spacing:.025em}.mobile-menu summary{width:auto;min-width:72px;height:auto;padding:8px 12px}.service-title h3{font-size:18px;letter-spacing:0}}

/* 確定原稿の段落と見出しを現行デザインに収める。 */
.sales-prose p{font-size:14px;color:#637186;line-height:2.1;margin:0 0 14px}.hero-description{margin:0 0 12px}.service-copy p+p{margin-top:10px}.home-role h2,.section-head h2{overflow-wrap:anywhere}.contact>p{margin:0 0 10px}@media(max-width:760px){.sales-prose p{font-size:12px}.hero h1{font-size:clamp(48px,15.9vw,62px)}}

/* トップの問いかけと参謀機能を統合。余白は従来の約75%に。 */
.home-context{position:relative;background:#f5f7fa;padding-top:72px;padding-bottom:72px}
.home-context>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:6vw;margin-top:20px}
.home-context h2{text-wrap:balance;font-size:clamp(26px,2.3vw,34px);line-height:1.65;margin:0}
.home-context .sales-prose p{line-height:1.9;margin:0 0 12px}
.home-context .sales-prose p:last-child{margin-bottom:0}
.home-context .sales-prose strong{color:var(--ink);font-weight:600}
.role-anchor{position:absolute;top:0}
@media(max-width:900px){.home-context>div{display:block}.home-context h2{text-wrap:balance;font-size:27px;margin-bottom:20px}}
@media(max-width:760px){.home-context{padding-top:45px;padding-bottom:45px}.home-context>div{margin-top:18px}.home-context .sales-prose p{margin-bottom:10px}}
