
:root{color-scheme:dark;--ink:#edf9f8;--muted:#a5c4cd;--accent:#a0eddf;--progress:0;--depth-darkness:0;--surface-opacity:1;--page-padding:clamp(26px,5.5vw,100px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px;background:#03121f}
body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible{outline:2px solid var(--accent);outline-offset:7px}
::selection{color:#041d2a;background:#a0eddf}
.skip-link{position:fixed;top:-100px;left:24px;background:#a0eddf;color:#03121f;padding:12px 20px;z-index:20}
.skip-link:focus{top:16px}
.ocean{position:fixed;inset:0;background:linear-gradient(155deg,#075c72 0%,#063a57 33%,#052640 64%,#041f36 100%);z-index:-1;overflow:hidden;pointer-events:none}
.ocean:after{content:'';position:absolute;inset:0;background:#010912;opacity:var(--depth-darkness)}
.surface-light{position:absolute;inset:-4%;background:linear-gradient(90deg,rgba(1,26,45,.5),transparent 65%),url('assets/ocean-surface.webp') center top/cover;opacity:var(--surface-opacity);transform:translateY(calc(var(--progress) * -70px));transition:opacity .15s}
.sunbeams{position:absolute;inset:-35% -10% -10%;background:conic-gradient(from 163deg at 65% 0%,transparent 0deg,rgba(102,235,231,.07) 5deg,transparent 10deg,rgba(140,249,226,.1) 13deg,transparent 18deg,rgba(103,219,233,.06) 25deg,transparent 30deg);filter:blur(9px);opacity:var(--surface-opacity);animation:light-drift 18s ease-in-out infinite alternate}
#plankton{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:.7}
.ocean-grain{position:absolute;inset:0;opacity:.045;z-index:2;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='white' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.site-header{position:absolute;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:30px var(--page-padding);z-index:5;gap:25px}
.wordmark{display:flex;align-items:center;gap:12px;font-family:inherit;font-weight:800;font-size:25px;letter-spacing:-1.1px}
.wordmark svg{width:35px;height:34px}
.brand-dot{color:var(--accent)}
.site-header>nav{display:flex;gap:34px;font-size:13px;color:#d9e9ec}
.site-header>nav a{position:relative}
.site-header>nav a:after{content:'';position:absolute;height:1px;left:0;right:0;bottom:0;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.site-header>nav a:hover:after{transform:scaleX(1)}
.header-cta{font-size:13px;border:1px solid #b9e7e35c;padding:9px 21px;border-radius:30px;display:flex;align-items:center;gap:28px;transition:background .25s,border-color .25s}
.header-cta:hover{background:#a0eddf20;border-color:var(--accent)}
.header-cta span{font-size:19px}
.section{padding:0 var(--page-padding);position:relative;max-width:1920px;margin:auto}
.hero{height:100svh;min-height:740px;max-height:1200px;padding-top:170px;display:flex;align-items:center;overflow:hidden}
.hero-coordinates{position:absolute;top:142px;right:var(--page-padding);font-size:9px;line-height:1.9;letter-spacing:1.8px;color:#b2d3d899;text-align:right}
.hero-content{position:relative;z-index:2;margin-top:-30px}
.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:600;line-height:1.8;color:var(--accent)}
.hero .eyebrow{display:flex;align-items:center;gap:13px;margin-bottom:29px;font-size:10px;color:#c3efe5}
.tiny-line{width:32px;height:1px;background:var(--accent)}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:inherit;font-weight:500}
h1{font-size:clamp(74px,8.3vw,143px);line-height:1.04;letter-spacing:-6px;margin-bottom:30px}
em{font-family:inherit;font-style:normal;font-weight:400;letter-spacing:-.055em;color:#c8efdf}
h1 em{font-size:1.065em}
.hero-description{font-size:15px;line-height:1.85;color:#c6dee3;margin-bottom:35px}
.dive-link{display:inline-flex;align-items:center;gap:17px;font-size:13px;font-weight:500}
.round-arrow{width:49px;height:49px;border:1px solid #c0e8e675;border-radius:50%;display:grid;place-items:center;font-size:24px;transition:background .25s,color .25s,transform .25s}
.dive-link:hover .round-arrow{background:var(--accent);color:#052d45;transform:translateY(3px)}
.dive-link small{display:block;font-size:8px;letter-spacing:1.8px;color:#a5c7d0;margin-top:2px}
.sonar{position:absolute;width:380px;height:380px;right:10.5%;top:37%;opacity:.5;pointer-events:none}
.sonar-ring{position:absolute;inset:0;border:1px solid #a4e2dc36;border-radius:50%}
.sonar-ring:nth-child(2){inset:48px}
.sonar-ring:nth-child(3){inset:100px;border-style:dashed}
.sonar:before,.sonar:after{content:'';position:absolute;background:#a4e2dc26}
.sonar:before{top:50%;left:-25px;right:-25px;height:1px}
.sonar:after{left:50%;top:-25px;bottom:-25px;width:1px}
.sonar-center{position:absolute;inset:0;display:grid;place-items:center;color:var(--accent);font-size:25px;font-weight:400}
.sonar-label{position:absolute;bottom:28px;right:-25px;font-size:8px;letter-spacing:1.6px;line-height:1.8}
.hero-footer{position:absolute;bottom:30px;left:var(--page-padding);right:var(--page-padding);display:flex;align-items:center;justify-content:space-between;border-top:1px solid #b8e4e52b;padding-top:20px;font-size:8px;letter-spacing:1.7px;color:#bad4db}
.hero-footer span:first-child{display:flex;align-items:center;gap:9px}
.hero-footer i{width:5px;height:5px;background:var(--accent);border-radius:50%;box-shadow:0 0 12px #a0eddf}
.hero-footer a{font-size:20px;line-height:1}
.depth-gauge{position:fixed;right:20px;top:44%;width:44px;z-index:4;text-align:center;color:#a5c9d3;font-variant-numeric:tabular-nums;pointer-events:none}
.gauge-caption{display:block;font-size:7px;letter-spacing:1.7px;margin-bottom:5px}
.gauge-reading{font-size:10px;white-space:nowrap;color:#d2e8ec}
.depth-unit{font-size:8px;margin-left:2px}
.gauge-track{height:136px;width:1px;background:#a1c5d638;margin:13px auto 9px;position:relative}
.gauge-track:before{position:absolute;content:'';width:8px;left:-7px;top:0;height:100%;background:repeating-linear-gradient(to bottom,#a1c5d660 0 1px,transparent 1px 17px)}
.gauge-fill{width:1px;height:calc(var(--progress) * 100%);background:var(--accent)}
.gauge-marker{position:absolute;top:calc(var(--progress) * 100%);height:5px;width:5px;left:-2px;border-radius:50%;background:var(--accent);box-shadow:0 0 9px #a0eddf}
.gauge-bottom{font-size:7px;letter-spacing:.7px}
.section-marker{display:flex;justify-content:space-between;border-top:1px solid #90bdcb30;padding-top:20px;font-size:9px;letter-spacing:1.7px;color:#a1c6d1;gap:20px}
.mission{padding-top:105px;padding-bottom:170px;min-height:860px}
.mission-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:10%;padding-top:105px;position:relative;z-index:1}
h2{font-size:clamp(40px,4.2vw,70px);line-height:1.2;letter-spacing:-2.7px;margin-bottom:30px}
h2 em{font-size:1.08em}
.mission-copy{max-width:440px;padding-top:4px}
.mission-copy p,.philosophy-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.95;margin-bottom:24px}
.mission-copy .lead{font-size:21px;line-height:1.6;color:#d9ecee;letter-spacing:-.3px}
.mission-copy strong{font-weight:500;color:#e4f6f4}
.text-link{display:inline-flex;align-items:center;gap:30px;font-size:12px;border-bottom:1px solid #a0eddf70;padding-bottom:8px;margin-top:14px}
.text-link span{font-size:20px;transition:transform .25s}
.text-link:hover span{transform:translate(3px,3px)}
.current-lines{position:absolute;bottom:0;left:0;right:0;height:210px;opacity:.17;overflow:hidden}
.current-lines svg{width:100%;height:100%;stroke:#8aeade;stroke-width:.6}
.exploration{padding-top:65px;padding-bottom:120px;min-height:950px}
.section-intro{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-top:77px;margin-bottom:57px}
.section-intro h2{margin:0}
.section-intro>p{font-size:13px;color:var(--muted);margin-bottom:10px;margin-right:11%;line-height:1.9}
.exploration-list{border-top:1px solid #90bdcb42}
.exploration-item{display:grid;grid-template-columns:35px 75px 1.2fr 1fr 25px;gap:25px;align-items:center;padding:35px 0;border-bottom:1px solid #90bdcb42;transition:background .3s}
.exploration-item:hover{background:#9ee8e704}
.item-number{font-size:10px;color:#7ba8b9;align-self:start;margin-top:6px}
.exploration-symbol{width:62px;height:62px;stroke:#8dc9d1;stroke-width:.7;transition:transform .6s}
.exploration-item:hover .exploration-symbol{transform:rotate(15deg)}
.item-heading .eyebrow{font-size:8px;letter-spacing:1.6px;color:#8fb9c7}
.item-heading h3{font-size:24px;letter-spacing:-.6px;margin:6px 0 0;line-height:1.4}
.exploration-item>p{font-size:12px;line-height:1.9;color:#a0bdcb;max-width:310px;margin:0}
.item-star{font-size:22px;color:var(--accent);opacity:.7}
.exploration-footnote{font-size:11px;color:#8cb4c4;margin-top:28px}
.exploration-footnote span{color:var(--accent);margin-right:12px}
.philosophy{padding-top:70px;padding-bottom:115px;min-height:900px}
.philosophy-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:9%;align-items:center;margin-top:65px}




.philosophy-copy{padding-bottom:15px}
.philosophy-copy .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:23px}
.philosophy-copy h2{font-size:clamp(34px,3.6vw,60px);margin-bottom:27px}
.philosophy-copy>p:not(.eyebrow){max-width:415px}
.principles{display:flex;gap:25px;border-top:1px solid #93c3c52e;padding-top:22px;margin-top:30px;font-size:10px;color:#c1dedf}
.principles span:before{content:'+';color:var(--accent);margin-right:9px}
.horizon{padding-top:45px;padding-bottom:150px;min-height:900px;overflow:hidden}
.horizon-content{text-align:center;margin-top:110px;position:relative;z-index:1}
.horizon-content .eyebrow{font-size:9px;letter-spacing:2.8px}
.horizon h2{font-size:clamp(75px,8.5vw,130px);line-height:1.05;letter-spacing:-5px;margin-top:30px;margin-bottom:30px}
.horizon-content>p:not(.eyebrow){font-size:14px;color:#95b5c3;line-height:1.9}
.return-link{margin-top:26px;text-align:left}
.return-link:hover .round-arrow{transform:translateY(-3px)}
.abyss-orbit{position:absolute;width:800px;height:800px;border-radius:50%;border:1px solid #86d7d912;left:50%;top:125px;transform:translateX(-50%);box-shadow:0 0 130px #41cdca05,inset 0 0 120px #41cdca05;pointer-events:none}
.abyss-orbit:before,.abyss-orbit:after{content:'';position:absolute;inset:70px;border:1px solid #86d7d908;border-radius:50%}
.abyss-orbit:after{inset:140px}
.site-footer{position:relative;margin:0 var(--page-padding);padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #8bafb72b;font-size:8px;letter-spacing:1.2px;color:#688b9c}
.footer-brand{font-family:inherit;font-size:22px;font-weight:800;letter-spacing:-1px;color:#d5e9e8}
.reveal{opacity:1;transform:none}
.motion-enabled .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}
.motion-enabled .reveal.is-visible{opacity:1;transform:none}
@keyframes float{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-18px) rotate(2deg)}}
@keyframes light-drift{from{transform:rotate(-3deg);opacity:.55}to{transform:rotate(3deg);opacity:.85}}
@media(min-width:1550px){.hero-content{margin-top:-70px}.sonar{width:450px;height:450px}}
@media(max-width:1100px){.site-header>nav{gap:22px}.sonar{right:9%;width:300px;height:300px}.mission-layout{gap:6%}.exploration-item{grid-template-columns:25px 60px 1.1fr 1fr 15px;gap:16px}.item-heading h3{font-size:21px}.philosophy-layout{gap:5%}.principles{gap:15px}}
@media(max-width:760px){:root{--page-padding:26px}.site-header{padding-top:23px}.wordmark{font-size:23px;gap:9px}.wordmark svg{width:29px;height:29px}.site-header>nav{display:none}.header-cta{padding:7px 16px;font-size:11px;gap:18px}.hero{min-height:720px;max-height:1000px;padding-top:110px;align-items:center}.hero-content{margin-top:0;max-width:100%}.hero-coordinates{top:112px;font-size:7px;letter-spacing:1.2px}.hero .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:25px}h1{font-size:clamp(57px,10.4vw,78px);letter-spacing:-3.3px;line-height:1.09;margin-bottom:25px}.hero-description{font-size:12px;line-height:1.9;max-width:85%;margin-bottom:30px}.hero-description br{display:none}.dive-link{font-size:11px}.dive-link small{font-size:7px}.round-arrow{width:44px;height:44px;font-size:22px}.sonar{width:230px;height:230px;right:-35px;top:34%;opacity:.23}.sonar-ring:nth-child(2){inset:35px}.sonar-ring:nth-child(3){inset:73px}.sonar-label{display:none}.hero-footer{font-size:7px;letter-spacing:1.1px;bottom:25px}.hero-footer span:nth-child(2){display:none}.depth-gauge{right:7px;width:31px;top:48%}.gauge-caption{font-size:6px;letter-spacing:1px}.gauge-reading{font-size:8px}.gauge-track{height:100px}.gauge-track:before{background:repeating-linear-gradient(to bottom,#a1c5d660 0 1px,transparent 1px 12.5px)}.gauge-bottom{font-size:6px}.section-marker{font-size:7px;letter-spacing:1px;gap:15px;margin-right:15px}.section-marker span:last-child{text-align:right}.mission{padding-top:70px;padding-bottom:140px;min-height:0}.mission-layout{grid-template-columns:1fr;gap:30px;padding-top:65px;padding-right:15px}h2{font-size:43px;letter-spacing:-1.9px}.mission-copy{max-width:490px}.mission-copy .lead{font-size:19px}.mission-copy p,.philosophy-copy>p:not(.eyebrow){font-size:13px}.current-lines{height:110px}.exploration{padding-top:50px;padding-bottom:80px;min-height:0}.section-intro{display:block;margin-top:55px;margin-bottom:38px;padding-right:20px}.section-intro>p{font-size:12px;margin-top:22px}.exploration-item{grid-template-columns:22px 1fr 20px;gap:12px;padding:28px 16px 28px 0}.exploration-symbol{display:none}.item-number{grid-column:1;grid-row:1}.item-heading{grid-column:2;grid-row:1}.item-heading h3{font-size:21px}.item-heading .eyebrow{font-size:7px;letter-spacing:1.3px}.exploration-item>p{grid-column:2;grid-row:2;max-width:100%;font-size:12px}.item-star{grid-column:3;grid-row:1;font-size:18px}.exploration-footnote{max-width:90%;font-size:10px}.philosophy{padding-top:45px;padding-bottom:100px;min-height:0}.philosophy-layout{grid-template-columns:1fr;gap:45px;margin-top:30px}.philosophy-copy{padding-right:15px}.philosophy-copy h2{font-size:38px}.principles{gap:13px;font-size:9px;flex-wrap:wrap}.horizon{padding-top:35px;min-height:760px;padding-bottom:100px}.horizon-content{margin-top:115px;padding-right:5px}.horizon h2{font-size:79px;letter-spacing:-3.5px}.horizon-content>p:not(.eyebrow){font-size:12px}.horizon-content .eyebrow{font-size:8px;letter-spacing:2px}.abyss-orbit{width:600px;height:600px;top:140px}.site-footer{flex-wrap:wrap;gap:18px;padding:26px 0;font-size:7px}.site-footer>span:nth-child(2){display:none}}
@media(max-width:380px){h1{font-size:52px}.hero .eyebrow{font-size:7px}.hero-coordinates{font-size:6px}h2{font-size:38px}.philosophy-copy h2{font-size:33px}.horizon h2{font-size:69px}.principles{gap:10px;font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-enabled .reveal{opacity:1;transform:none}.surface-light{transform:none}}

/* Marketing concept and native language navigation. */
.header-actions{display:flex;align-items:center;gap:20px}
.language-switch{background:#052c42d9;backdrop-filter:blur(8px);display:flex;align-items:center;gap:4px;padding:3px;border:1px solid #b9e7e344;border-radius:30px;font-size:11px;white-space:nowrap}
.language-switch a{padding:5px 10px;border-radius:24px;color:#bfd5dd;transition:background .2s}
.language-switch a[aria-current=page]{color:#052d45;background:#b6eddf;font-weight:700}
.language-switch a:hover{background:#a0eddf20;color:#eafff6}
.language-switch a[aria-current=page]:hover{background:#c5f8ea;color:#052d45}
.hero h1{font-size:clamp(64px,7.6vw,128px);letter-spacing:-.055em;line-height:1.08}
.hero-description{max-width:630px}
.sonar{opacity:.25}
.kotler-portrait{width:min(100%,390px);margin:0 auto;align-self:start}
.portrait-heading{display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:1.6px;color:#a2c7ce;margin-bottom:14px}
.kotler-portrait img{display:block;width:100%;height:auto;border:1px solid #9ec9ce45;border-radius:2px}
.kotler-portrait figcaption{display:flex;flex-direction:column;gap:9px;margin-top:18px}
.portrait-name{font-size:17px;letter-spacing:.3px;color:#d5edeb}
.portrait-credit{font-size:9px;line-height:1.9;color:#a1bdc8}
.portrait-credit a{text-decoration:underline;text-underline-offset:3px}
.philosophy-copy>p.affiliation-note{font-size:10px;line-height:1.8;color:#8cadb9;margin-top:24px}
.philosophy-copy h3{font-size:18px;line-height:1.6;color:#d5edeb;margin:26px 0 12px;letter-spacing:0}
.insight-example{margin-top:60px;padding:28px 0;border-top:1px solid #90bdcb42;border-bottom:1px solid #90bdcb42}
.example-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}
.example-tag{font-size:8px;letter-spacing:1.2px;color:#8fb6c5;white-space:nowrap}
.example-steps{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px}
.example-steps>div+div{border-left:1px solid #90bdcb33;padding-left:28px}
.example-number{font-size:8px;letter-spacing:1.3px;color:#a5cbd0}
.example-steps p{font-size:17px;line-height:1.8;color:#d1e8e8;margin:16px 0 0}
.example-note{font-size:10px;color:#8cadb9;margin:24px 0 0}
html[lang=ja] body{font-family:'Hiragino Sans','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}
html[lang=ja] h1{font-size:clamp(54px,6.6vw,112px);letter-spacing:-.035em;line-height:1.3}
html[lang=ja] h2{letter-spacing:-.035em;line-height:1.4;font-size:clamp(34px,3.7vw,62px)}
html[lang=ja] h2 em{letter-spacing:-.035em}
html[lang=ja] .eyebrow{letter-spacing:1.5px}
html[lang=ja] .horizon h2{font-size:clamp(60px,7vw,110px)}
html[lang=ja] .item-heading h3{letter-spacing:0}
@media(max-width:1100px){.site-header>nav{gap:18px}.header-actions{gap:12px}.header-cta{gap:12px;padding:8px 16px}.site-header{gap:18px}.hero h1{font-size:clamp(62px,7.4vw,100px)}}
@media(max-width:760px){.header-actions{gap:8px}.header-cta{display:none}.language-switch{font-size:10px}.language-switch a{padding:5px 9px}.hero h1{font-size:clamp(42px,9vw,65px);line-height:1.15}.hero-content{margin-top:10px}.hero-description{font-size:13px;max-width:92%}.hero-coordinates{max-width:260px}.hero .eyebrow{font-size:8px}.kotler-portrait{max-width:310px}.philosophy-layout{gap:45px}.philosophy-copy h2{font-size:36px}.example-heading{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:25px}.example-steps{grid-template-columns:1fr;gap:25px;padding-right:18px}.example-steps>div+div{border-left:0;padding-left:0;border-top:1px solid #90bdcb25;padding-top:20px}.example-steps p{font-size:16px;margin-top:10px}.example-note{max-width:90%;line-height:1.9}.portrait-heading{font-size:7px}.horizon h2{font-size:64px}html[lang=ja] h1{font-size:clamp(40px,9.7vw,64px);line-height:1.45}html[lang=ja] h2{font-size:36px}html[lang=ja] .horizon h2{font-size:64px}.horizon-content .eyebrow{max-width:290px;margin-left:auto;margin-right:auto}.site-footer>span:last-child{white-space:nowrap}}
@media(max-width:380px){.hero h1{font-size:36px}html[lang=ja] h1{font-size:37px}html[lang=ja] h2{font-size:32px}.hero-description{max-width:90%}}

.header-actions .header-cta{background:#052c42b8}
@media(max-width:760px){html[lang=ja] .section-intro h2{font-size:clamp(26px,7.5vw,36px)}}
