:root{--navy:#4e58a4;--ink:#3a3937;--teal:#4e58a4;--gold:#e6ae5b;--paper:#f9f8f4;--line:#deded8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;font-size:15px;line-height:1.9;letter-spacing:.03em}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.5}h2{font-size:44px;letter-spacing:.06em;font-weight:600}h1>span,h2>span{color:var(--gold)}ul{list-style:none;margin:0;padding:0}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:10px}.skip:focus{top:0}.header{height:100px;display:flex;justify-content:space-between;align-items:center;padding:0 5%;position:sticky;top:0;background:#f9f8f4f5;backdrop-filter:blur(12px);z-index:20;border-bottom:1px solid #e9edeb}.brand{display:flex;align-items:center;gap:13px;white-space:nowrap}.brand-icon{font-family:Georgia,serif;font-size:47px;font-weight:bold;line-height:1;color:var(--navy);letter-spacing:-9px;margin-right:8px}.brand-icon span{color:var(--gold)}.brand-name{font-size:16px;font-weight:600;letter-spacing:.03em}.brand-name small{display:block;font-size:9px;font-weight:500;letter-spacing:.25em;line-height:1.8}.header nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.header nav>a{transition:color .2s}.header nav>a:hover{color:var(--gold)}.nav-contact{background:var(--navy);color:#fff;padding:14px 23px}.nav-contact span{margin-left:22px}.menu-toggle{display:none}.eyebrow{font-size:11px;letter-spacing:.2em;color:var(--teal);font-weight:600;line-height:1.6;margin-bottom:20px}.eyebrow>span{color:var(--gold);margin-right:15px}.hero{position:relative;background:var(--paper);min-height:650px;overflow:hidden}.hero-visual{position:absolute;right:0;top:0;width:55%;height:100%;overflow:hidden}.hero-visual img{height:100%;object-position:65% center}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--paper),#f9f8f425 45%,transparent)}.image-label{position:absolute;bottom:90px;right:30px;background:#ffffffc9;padding:5px 12px;font-size:10px;z-index:2}.hero-copy{position:relative;z-index:2;padding:76px 7% 100px;max-width:850px}.hero-location{font-size:12px;margin-bottom:24px}.hero h1{font-size:clamp(35px,3.8vw,57px);font-weight:600;line-height:1.55;letter-spacing:.04em;color:var(--navy);white-space:nowrap;margin-bottom:24px}.hero-lead{font-size:17px;line-height:1.9;font-weight:500}.hero-description{font-size:13px;color:#526267;margin-top:16px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--navy);color:#fff;min-height:54px;padding:15px 25px;border:1px solid var(--navy);font-size:13px;font-weight:600;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:var(--teal);transform:translateY(-2px)}.button>span{font-size:18px}.text-link{border-bottom:1px solid var(--ink);padding:8px 0;font-size:13px}.hero-bottom{position:absolute;bottom:0;left:7%;right:7%;height:58px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #243b4622;font-size:9px;letter-spacing:.18em}.section{padding:100px 7%;scroll-margin-top:0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px}.section-heading>p{font-size:14px;line-height:2.2}.services{display:grid;grid-template-columns:repeat(6,1fr);gap:28px}.service{grid-column:span 2;border-bottom:1px solid var(--line);background:var(--paper)}.service-4,.service-5{grid-column:span 3;display:grid;grid-template-columns:1fr 1fr}.service-image{position:relative;overflow:hidden;aspect-ratio:1.65}.service-image img{height:100%;transition:transform .6s}.service:hover img{transform:scale(1.035)}.service-image>span{position:absolute;bottom:10px;right:10px;background:#ffffffdf;font-size:9px;padding:2px 8px}.service-copy{padding:24px 26px 30px}.service-number{font-family:Georgia,serif;color:var(--gold);font-size:21px;line-height:1}.service h3{font-size:19px;font-weight:600;margin:14px 0 17px}.service ul{font-size:12px;color:#536367;line-height:2.15}.service li{padding-left:14px;position:relative}.service li:before{content:'−';position:absolute;left:0;color:var(--gold)}.service-4 .service-image,.service-5 .service-image{height:100%;aspect-ratio:auto;min-height:260px}.profile{background:#e8edf5;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.profile-copy{padding-left:8%}.position{font-size:13px;margin-bottom:15px}.profile h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:48px;margin-bottom:18px}.profile-copy>p:not(.eyebrow){font-size:13px}.outline{background:transparent;color:var(--navy);margin-top:35px}.outline:hover{color:white}.portrait{margin:0;max-width:440px}.portrait img{aspect-ratio:1.2;object-position:center 30%;filter:none}.portrait figcaption{font-size:10px;margin-top:10px;color:#61716d;line-height:1.6}.company-layout{display:grid;grid-template-columns:1.8fr 1fr;gap:70px}.company dl{margin:0;border-top:1px solid var(--line)}.company dl>div{display:grid;grid-template-columns:130px 1fr;padding:21px 0;border-bottom:1px solid var(--line);gap:20px;font-size:14px}.company dt{font-weight:600}.company dd{margin:0;overflow-wrap:anywhere}.company dd a:hover{text-decoration:underline}.partners{background:var(--paper);padding:35px}.partners h3{font-size:22px;margin-bottom:25px}.partners li{font-size:13px;margin-bottom:13px;padding-bottom:13px;border-bottom:1px solid var(--line)}.note{font-size:11px;color:#64736e;margin-top:25px}.contact{background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact .eyebrow{color:#c7d7d1}.contact h2{margin-bottom:28px}.contact-intro>p{font-size:14px}.contact-links{margin-top:35px;max-width:370px}.contact-links a{position:relative;display:block;border-top:1px solid #ffffff30;padding:17px 30px 17px 0}.contact-links small{display:block;font-size:10px;color:#d1dbd7}.contact-links strong{font-family:Georgia,serif;letter-spacing:.02em;display:block;font-size:29px;font-weight:400;line-height:1.6}.contact-links b{font-size:12px;font-weight:400;overflow-wrap:anywhere}.contact-links a>span{position:absolute;right:5px;top:38px}form label{display:block;font-size:12px;margin:19px 0 8px}form em{font-size:9px;font-style:normal;margin-left:10px;color:#e3cca4}input,textarea,select{width:100%;max-width:100%;padding:12px 14px;border:1px solid #fff6;background:#ffffff0a;color:#fff;border-radius:0;outline:none;min-height:48px}input:focus,textarea:focus,select:focus{border-color:#e3cca4;box-shadow:0 0 0 1px #e3cca4}select option{color:#4e58a4;background:white}textarea{resize:vertical}form .button{width:100%;background:#fff;color:var(--navy);border:0;margin-top:22px}form .button:hover{background:#ece8df}.form-note{font-size:10px;color:#d2dcd8;margin-top:14px;line-height:1.8}footer{padding:55px 7% 22px;background:var(--paper)}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-main p{font-size:11px;margin-top:18px}.footer-main nav{display:flex;gap:24px;font-size:12px}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;margin-top:40px;padding-top:20px;font-size:9px;letter-spacing:.08em}.breadcrumb{padding:25px 7%;font-size:11px;color:#697a7b;display:flex;gap:20px}.message-hero{padding-top:45px;background:var(--paper);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.message-hero h1{font-size:54px;margin-bottom:40px}.representative{font-family:'Yu Mincho',serif;font-size:34px;margin-bottom:14px}.message-hero>div>p:last-child{font-size:13px}.greeting{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.greeting h2{font-size:28px}.greeting>p{font-size:14px}.biography{padding-top:15px}.bio-row{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding:35px 0;border-top:1px solid var(--line)}.bio-row h3{font-size:17px}.bio-row li{font-size:14px;margin-bottom:12px}.bio-row ol{margin:0;padding-left:25px}.message-contact{text-align:center;background:#e8edf5}.message-contact p{margin-bottom:25px;font-size:14px}.message-contact h2{margin-bottom:25px}
@media(min-width:1500px){.header,.section,footer{padding-left:max(7%,calc((100vw - 1300px)/2));padding-right:max(7%,calc((100vw - 1300px)/2))}.hero-copy{margin-left:calc((100vw - 1500px)/2)}}
@media(max-width:1050px){.header{padding:0 4%;height:85px}.header nav{gap:20px}.brand-name{font-size:13px}.brand-icon{font-size:40px}.nav-contact{padding:12px 16px}.hero-copy{padding-left:5%;padding-top:65px}.hero h1{font-size:43px}.section{padding:75px 5%}.services{gap:20px}.service-copy{padding:22px 20px}.service h3{font-size:16px}.service-4,.service-5{display:block}.service-4 .service-image,.service-5 .service-image{height:auto;aspect-ratio:2;min-height:0}.company-layout{gap:30px}.contact{gap:45px}.profile{gap:45px}.footer-main nav{gap:14px}h2{font-size:38px}}
@media(max-width:760px){html{scroll-padding-top:75px}.header{height:75px;padding:0 5%}.brand-name{font-size:12px}.brand-name small{font-size:8px}.brand{gap:10px}.brand-icon{font-size:36px}.menu-toggle{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--navy);font-size:10px;padding:12px 0 12px 12px}.menu-toggle span{font-size:20px}.header nav{display:none;position:absolute;left:0;right:0;top:75px;background:white;padding:20px 5%;box-shadow:0 15px 20px #4e58a411}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav>a{padding:16px;border-bottom:1px solid var(--line)}.nav-contact{margin-top:10px}.hero{min-height:0;padding-bottom:45px}.hero-visual{width:100%;height:280px;position:relative}.hero-visual:after{background:linear-gradient(0deg,var(--paper),#f9f8f400 50%)}.image-label{bottom:55px;right:5%;font-size:8px}.hero-copy{padding:0 6% 50px;margin-top:-30px;max-width:none}.hero .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:16px}.hero-location{font-size:10px;margin-bottom:18px}.hero h1{font-size:clamp(28px,7vw,42px);letter-spacing:.015em;margin-bottom:20px;line-height:1.55}.hero-lead{font-size:14px}.hero-description{font-size:11px;line-height:2}.hero-actions{gap:22px;margin-top:25px}.button{font-size:12px;padding:12px 20px;min-height:52px;gap:25px}.text-link{font-size:11px}.hero-bottom{left:6%;right:6%;height:48px;font-size:7px;letter-spacing:.08em}.section{padding:60px 6%}h2{font-size:32px}.eyebrow{font-size:9px;margin-bottom:14px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{font-size:12px;margin-top:20px}.services{display:block}.service{display:grid;grid-template-columns:38% 1fr;margin-bottom:20px}.service-image,.service-4 .service-image,.service-5 .service-image{aspect-ratio:auto;height:100%;min-height:225px}.service-copy{padding:20px 17px}.service-number{font-size:17px}.service h3{font-size:15px;margin:12px 0}.service ul{font-size:10px}.service-image>span{font-size:7px;right:6px;padding:2px 5px}.profile{grid-template-columns:1fr;gap:35px}.profile-copy{padding:0}.profile h2{font-size:38px}.portrait{max-width:100%;width:100%}.portrait img{aspect-ratio:1.3}.portrait figcaption{font-size:9px}.company-layout{display:block}.company dl>div{grid-template-columns:80px 1fr;gap:12px;font-size:12px;padding:18px 0}.partners{margin-top:35px;padding:28px}.partners h3{font-size:20px}.partners li{font-size:12px}.contact{grid-template-columns:1fr;gap:45px}.contact-links{max-width:none}.contact h2{margin-bottom:20px}.contact-intro>p{font-size:12px}form label{font-size:11px}input,select,textarea{font-size:16px}.footer-main{display:block}.footer-main nav{margin-top:30px;flex-wrap:wrap;gap:20px;font-size:11px}footer{padding:40px 6% 20px}.footer-bottom{align-items:flex-start;font-size:8px}.footer-bottom small{max-width:210px}.breadcrumb{padding:20px 6%;font-size:10px}.message-hero{grid-template-columns:1fr;gap:35px;padding-top:25px}.message-hero h1{font-size:40px;margin-bottom:28px}.representative{font-size:30px}.greeting{display:block}.greeting h2{font-size:24px}.greeting>p{margin-top:25px;font-size:12px}.bio-row{display:block;padding:28px 0}.bio-row h3{font-size:16px;margin-bottom:22px}.bio-row li{font-size:12px}.message-contact p{font-size:12px}.outline{margin-top:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original site palette and larger, equal business cards. */
body{background:#f9f8f4;color:#3a3937}
h2{color:#4e58a4}.hero h1{color:#3a3937}
.hero-bottom{border-color:#3a393722}.eyebrow{color:#4e58a4}
.hero-description,.service ul,.note,.portrait figcaption{color:#585753}
.profile{background:#e8edf5}.profile h2{color:#3a3937}
.partners,footer{background:#f5f3ec}.message-contact{background:#e6eef4}
.contact{background:#e6eef4;color:#3a3937}.contact h2{color:#3a3937}
.contact .eyebrow,.contact-links small,.form-note{color:#585753}
.contact-links a{border-color:#4e58a430}.contact-links strong{color:#4e58a4}
form em{color:#4e58a4}input,textarea,select{color:#3a3937;background:#f9f8f4;border-color:#c3c9d5}
input:focus,textarea:focus,select:focus{border-color:#4e58a4;box-shadow:0 0 0 1px #4e58a4}
select option{color:#3a3937;background:#f9f8f4}
form .button{background:#4e58a4;color:white}form .button:hover,.button:hover{background:#424b90}
.services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;grid-auto-rows:1fr}
.service,.service-4,.service-5{grid-column:auto;display:flex;flex-direction:column;min-width:0;height:100%;border:1px solid #3a393710;border-radius:22px;overflow:hidden}
.service-1{background:#edf4f7}.service-2{background:#eef3e9}.service-3{background:#fff4e5}.service-4{background:#eaf1f7}.service-5{background:#edf3e9}
.service-image,.service-4 .service-image,.service-5 .service-image{width:100%;height:auto;aspect-ratio:1.6;min-height:0;flex:none}
.service-image img{height:100%}.service-copy{padding:30px 32px 36px;flex:1;min-height:282px}
.service-number{font-size:24px;color:#4e58a4}.service h3{font-size:24px;line-height:1.5;min-height:72px;margin:16px 0 20px}.service ul{font-size:14px;line-height:2.1}
.service-image>span{font-size:10px;padding:4px 12px;bottom:14px;right:14px;border-radius:20px}
@media(max-width:1050px) and (min-width:761px){.services{gap:26px}.service-copy{padding:27px}.service h3{font-size:22px;min-height:66px}.service ul{font-size:13px}}
@media(max-width:760px){.services{grid-template-columns:minmax(0,1fr);gap:26px;grid-auto-rows:1fr}.service,.service-4,.service-5{display:flex;margin:0}.service-image,.service-4 .service-image,.service-5 .service-image{height:auto;aspect-ratio:1.5;min-height:0}.service-copy{padding:25px;min-height:275px}.service h3{font-size:22px;min-height:66px}.service-number{font-size:22px}.service ul{font-size:13px}.contact-links small,.form-note{color:#585753}}

/* Enlarged representative photo and draft greeting. */
.message-hero{grid-template-columns:minmax(240px,.8fr) minmax(0,1.4fr);gap:64px;padding-bottom:75px}
.message-hero .portrait{width:100%;max-width:none}
.message-hero .portrait img{aspect-ratio:4/3;object-position:center;filter:none}
.greeting{grid-template-columns:1fr 1.5fr;align-items:start;gap:70px}
.greeting-body{font-size:15px;line-height:2.2}
.greeting-body>p+p{margin-top:24px}
.greeting-body .draft-note{display:inline-block;color:#4e58a4;background:#e8edf5;padding:4px 12px;font-size:11px;line-height:1.8;margin-bottom:4px}
.greeting-signature{text-align:right;font-family:"Yu Mincho",serif;font-size:26px;line-height:1.9}
.greeting-signature small{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:12px}
@media(max-width:760px){.message-hero{grid-template-columns:1fr;gap:30px;padding-bottom:50px}.greeting{display:block}.greeting-body{margin-top:30px;font-size:14px;line-height:2.1}.greeting-body>p+p{margin-top:22px}.greeting-signature small{font-size:10px}.greeting-signature{font-size:24px}}
