*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#17243a;background:#fff;font-family:"Noto Sans JP","Zen Kaku Gothic New",sans-serif;line-height:1.9;font-size:15px}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1280px)/2));background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #e9edf2}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;background:#12233d;color:#fff;display:grid;place-items:center;font-family:Georgia,serif;font-size:24px;font-weight:bold}.brand-mark span{color:#70b7c7}.brand-name{font-size:14px;letter-spacing:.14em;font-weight:700;line-height:1.25}.brand-name b{font-weight:500}.brand-name small{display:block;font-size:8px;letter-spacing:.22em;color:#7a8798;margin-top:5px}.main-nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:600}.main-nav a{transition:.2s}.main-nav a:hover{color:#338da4}.nav-contact{padding:12px 18px;border:1px solid #1a2b45}.nav-contact span{margin-left:10px}.menu-toggle{display:none;background:none;border:0;font-size:24px;color:#12233d}.hero{height:680px;position:relative;display:flex;align-items:center;color:#fff;background:#14243c;overflow:hidden}.hero-image{position:absolute;inset:0;background:url("https://images.unsplash.com/photo-1480714378408-67cf0d13bc1b?auto=format&fit=crop&w=2200&q=90") center 48%/cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,20,39,.91),rgba(8,20,39,.68) 48%,rgba(8,20,39,.12))}.hero-content{position:relative;padding-top:10px}.eyebrow,.overline,.section-kicker{font-size:10px;letter-spacing:.2em;font-weight:700;color:#39899c}.light{color:#b8dce2}.hero h1{font-size:clamp(38px,5.3vw,68px);line-height:1.45;letter-spacing:.04em;font-weight:600;margin:24px 0}.hero h1 em,.beliefs h2 em{font-style:normal;color:#a9dbe2}.hero-lead{font-size:14px;line-height:2.2;color:#e0e8ee;margin:0 0 32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:15px 22px;font-size:12px;font-weight:700;letter-spacing:.04em}.button-light{background:#fff;color:#14243c}.button span{font-size:18px}.hero-caption{position:absolute;right:30px;bottom:24px;font-size:9px;letter-spacing:.18em;color:#d4dce4}.section{padding-top:112px;padding-bottom:112px}.section-kicker{margin-bottom:48px}.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%}.section h2,.message h2,.section-heading h2{font-size:clamp(30px,3.5vw,44px);line-height:1.5;letter-spacing:.03em;margin:12px 0 25px;font-weight:600}.large-copy{font-size:19px;line-height:1.9;font-weight:500;color:#213b56}.intro-copy p:not(.large-copy){color:#657184;line-height:2.2}.beliefs{background:#12233d;color:#fff;padding:100px 0 110px}.beliefs h2{font-size:clamp(34px,4vw,50px);line-height:1.6;margin:12px 0 22px}.belief-lead{max-width:720px;color:#c4d0dc;line-height:2.2}.belief-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:52px}.belief-cards article{border-top:1px solid #52647c;padding:25px 22px 10px 0}.belief-cards span{font-size:11px;color:#80c5d1;letter-spacing:.15em}.belief-cards h3{font-size:18px;margin:16px 0 10px}.belief-cards p{font-size:13px;color:#bdc9d5;line-height:2}.technology{background:#f5f7f9}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:44px}.section-heading>p{max-width:430px;color:#6d7888;line-height:2.1}.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.tech-card{background:#fff;box-shadow:0 8px 30px rgba(20,39,60,.05)}.tech-card img{width:100%;height:210px;object-fit:cover;display:block}.tech-body{padding:25px 25px 28px}.tech-body span{font-size:9px;letter-spacing:.17em;color:#43899a;font-weight:700}.tech-body h3{font-size:19px;margin:9px 0 12px}.tech-body p{font-size:13px;line-height:2.1;color:#657184;margin:0}.perspective{display:grid;grid-template-columns:1fr 1fr;background:#14243c;color:#fff;min-height:530px}.perspective-photo{background:url("https://images.unsplash.com/photo-1519608487953-e999c86e7455?auto=format&fit=crop&w=1400&q=85") center/cover;min-height:480px}.perspective-copy{padding:80px clamp(35px,7vw,110px);align-self:center}.perspective-copy h2{font-size:clamp(30px,3.2vw,42px);line-height:1.6;margin:15px 0 25px}.perspective-copy p:not(.overline){color:#c3cfda;line-height:2.15;font-size:13px}.message-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:8%;align-items:start}.portrait-wrap{position:sticky;top:120px}.portrait-wrap>img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;object-position:center 25%}.portrait-label{background:#12233d;color:#fff;padding:17px 20px}.portrait-label span{display:block;color:#9dcbd4;font-size:9px;letter-spacing:.18em}.portrait-label b{display:block;font-size:19px;margin-top:5px}.portrait-label small{color:#b9c5d2}.message-text h2{margin-bottom:24px}.message-text p:not(.overline){color:#5f6c7e;line-height:2.2;font-size:13px}.message-text .large-copy{color:#203a55;font-size:18px}.signature{border-top:1px solid #dce2e8;margin-top:35px;padding-top:18px;display:flex;gap:20px;align-items:baseline}.signature span{font-size:11px;color:#778394}.signature strong{font-size:22px;letter-spacing:.15em}.approach{background:#eef3f5;padding:100px 0 110px}.approach h2{font-size:clamp(32px,4vw,46px);line-height:1.6;margin:10px 0 45px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.steps>div{border-top:1px solid #a8b9c4;padding-top:20px}.steps b{color:#43899a;font-size:12px;letter-spacing:.14em}.steps h3{font-size:22px;margin:10px 0 0}.steps p{font-weight:700;margin:0 0 10px}.steps small{color:#667486;line-height:1.9;display:block}.company-table{border-top:1px solid #dce2e8;margin:45px 0 0}.company-table div{display:grid;grid-template-columns:190px 1fr;border-bottom:1px solid #dce2e8;padding:19px 0}.company-table dt{font-size:12px;font-weight:700;color:#6b7888}.company-table dd{margin:0;font-size:13px}.company-table a{color:#287f98;text-decoration:underline;text-underline-offset:4px}.profile-note{font-size:11px;color:#9a6d3d;background:#fbf6ee;padding:14px 18px;margin-top:25px}.contact{background:#12233d;color:#fff;padding:90px 0}.contact-inner{display:grid;grid-template-columns:1fr .8fr;gap:12%;align-items:center}.contact h2{font-size:clamp(34px,4vw,48px);line-height:1.55;margin:14px 0}.contact-inner>div:first-child>p:last-child{color:#c0ccd8;max-width:500px;font-size:13px;line-height:2.1}.contact-panel{background:#fff;color:#17243a;padding:35px}.contact-panel>span{display:block;color:#6b7888;font-size:10px;letter-spacing:.18em}.email-link{display:block;font-size:clamp(16px,2vw,22px);font-weight:600;margin:8px 0 25px;overflow-wrap:anywhere}.button-dark{background:#14243c;color:#fff;width:100%}.social{display:flex;align-items:center;gap:12px;border-top:1px solid #e4e8ed;margin-top:26px;padding-top:20px;font-size:12px;font-weight:700}.social img{width:34px;height:34px;object-fit:contain}.social span{color:#39899c;margin-left:8px}.footer{background:#0b1729;color:#d6dfe8;padding:28px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between}.footer-brand .brand-mark{background:#fff;color:#12233d}.footer-brand .brand-name{color:#fff}.footer p,.back-top{font-size:9px;letter-spacing:.12em;color:#9ba9b8}.back-top:hover{color:#fff}
@media(max-width:900px){.main-nav{gap:14px;font-size:11px}.hero{height:620px}.intro-grid,.message-grid{gap:5%}.tech-grid{grid-template-columns:repeat(2,1fr)}.perspective-copy{padding:55px 35px}.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.wrap{width:calc(100% - 38px)}.site-header{height:72px;padding:0 19px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:20px;box-shadow:0 12px 20px #12233d18;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{padding:9px}.hero{height:620px}.hero-shade{background:linear-gradient(90deg,rgba(8,20,39,.9),rgba(8,20,39,.55))}.hero h1{font-size:38px}.hero-lead{font-size:12px}.desktop{display:none}.hero-caption{font-size:7px;right:14px}.section{padding-top:75px;padding-bottom:75px}.section-kicker{margin-bottom:30px}.intro-grid,.message-grid,.contact-inner{grid-template-columns:1fr;gap:30px}.intro-grid h2{margin-bottom:0}.beliefs{padding:75px 0}.belief-cards{grid-template-columns:1fr;gap:10px}.belief-cards article{padding:18px 0}.section-heading{display:block}.section-heading>p{margin-top:10px}.tech-grid{grid-template-columns:1fr}.tech-card img{height:220px}.perspective{grid-template-columns:1fr}.perspective-photo{min-height:280px}.perspective-copy{padding:55px 22px}.portrait-wrap{position:static;max-width:420px}.message-text h2{font-size:32px}.approach{padding:75px 0}.steps{grid-template-columns:1fr 1fr;gap:22px}.company-table div{grid-template-columns:105px 1fr;gap:12px}.contact{padding:75px 0}.contact-panel{padding:25px 20px}.footer-inner{flex-wrap:wrap;gap:18px}.footer p{order:3;width:100%;margin:0}.footer-brand .brand-name{font-size:12px}}

.brand-mark{background:transparent!important;width:48px;height:48px}.brand-mark img{width:48px;height:48px;object-fit:contain}.brand-name{font-size:12px}.footer-brand .brand-mark{background:transparent!important}

/* Legal navigation and policy pages */
.footer-legal{display:flex;flex-direction:column;gap:9px;align-items:center}.footer-legal nav{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center}.footer-legal nav a{font-size:11px;color:#d6dfe8}.footer-legal nav a:hover{text-decoration:underline}.footer-legal p{margin:0}.legal-main{background:#f5f7f9;min-height:65vh;padding:85px 0 110px}.legal-panel{background:white;padding:55px clamp(22px,5vw,75px);max-width:900px;margin:auto}.legal-panel h1{font-size:32px;line-height:1.5;margin:10px 0 38px}.legal-panel h2{font-size:19px;border-bottom:1px solid #dbe3e9;padding-bottom:10px;margin:38px 0 12px}.legal-panel p,.legal-panel li{font-size:14px;color:#536174;line-height:2}.legal-panel a{color:#267d94;text-decoration:underline}.legal-panel .legal-note{font-size:12px;color:#7c8794;margin-top:40px}.legal-back{display:inline-block;margin-top:36px;font-size:13px;color:#267d94}@media(max-width:680px){.footer-legal{align-items:flex-start}.footer-legal nav{justify-content:flex-start}.legal-main{padding:45px 0}.legal-panel{padding:28px 22px}.legal-panel h1{font-size:25px}}
