:root { --blue-deep:#041936; --blue:#073d7a; --blue-bright:#0876bd; --ice:#e8f7ff; --ink:#06244a; --text-muted:rgba(255,255,255,.68); --line:rgba(255,255,255,.2); --radius:14px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--blue-deep); color:#fff; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }

.topbar { position:fixed; z-index:20; top:24px; left:5vw; right:5vw; display:flex; align-items:center; justify-content:space-between; }
.mark { font-size:15px; font-weight:700; letter-spacing:-.07em; }
.nav { display:flex; align-items:center; gap:22px; font-size:11px; font-weight:600; letter-spacing:.05em; }
.nav a { color:rgba(255,255,255,.62); transition:color .25s ease; }
.nav a:hover,.nav .active { color:#fff; }

.page-hero { min-height:100svh; position:relative; display:flex; align-items:flex-end; padding:clamp(96px,10vw,132px) 5vw 8vh; overflow:hidden; }
.page-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(1,17,46,.78),rgba(1,17,46,.12) 72%),linear-gradient(0deg,rgba(1,17,46,.72),transparent 54%); }
.page-hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-copy { position:relative; z-index:1; max-width:700px; }
.hero-copy h1 { margin:0; font-size:clamp(64px,11vw,168px); letter-spacing:-.06em; line-height:.86; font-weight:600; }
.hero-copy p:last-child { max-width:390px; margin:30px 0 0; font-family:var(--font-cn); font-size:16px; line-height:1.75; }

.section { position:relative; padding:clamp(76px,10vw,132px) 5vw; }
.section.light { background:var(--ice); color:var(--ink); }
.section.light .eyebrow { color:rgba(6,36,74,.54); }
.section.dark { background:var(--blue-deep); }
.eyebrow { margin:0 0 16px; color:var(--text-muted); font-size:10px; letter-spacing:.13em; font-weight:600; }
.grid12 { display:grid; grid-template-columns:repeat(12,1fr); gap:24px; }
.headline { grid-column:span 8; margin:0; font-size:clamp(42px,6.4vw,98px); letter-spacing:-.055em; line-height:.9; font-weight:600; }
.headline h2 { margin:0; font:inherit; }
.body { grid-column:9 / span 4; align-self:end; max-width:380px; font-family:var(--font-cn); font-size:15px; line-height:1.8; }
.body p { margin:0 0 22px; }

.album-focus { display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(28px,5vw,78px); align-items:end; }
.album-focus figure { margin:0; aspect-ratio:1/1; overflow:hidden; background:var(--blue); }
.album-focus img { width:100%; height:100%; object-fit:cover; transition:transform .8s ease; }
.album-focus figure:hover img { transform:scale(1.03); }
.album-focus h2 { margin:0; font-size:clamp(58px,8vw,128px); letter-spacing:-.065em; line-height:.88; font-weight:600; }
.album-focus p { max-width:340px; margin:28px 0 0; font-family:var(--font-cn); line-height:1.8; }

.list { margin-top:clamp(46px,7vw,84px); }
.list a { display:grid; grid-template-columns:110px 1fr auto; align-items:center; gap:16px; padding:22px 0; border-top:1px solid var(--line); transition:opacity .25s ease; }
.list a:last-child { border-bottom:1px solid var(--line); }
.list a:hover { opacity:.62; }
.list small { font-size:10px; letter-spacing:.12em; }
.list h3 { margin:0; font-size:clamp(25px,3.2vw,48px); letter-spacing:-.055em; font-weight:500; }
.list span { font-size:13px; color:var(--text-muted); }
.text-link { display:inline-flex; padding-bottom:5px; border-bottom:1px solid currentColor; font-size:12px; font-weight:700; letter-spacing:.05em; transition:opacity .25s ease; }
.text-link:hover { opacity:.58; }

.media-strip { display:grid; grid-template-columns:1.1fr .8fr 1.1fr; gap:14px; margin-top:clamp(54px,8vw,108px); }
.media-strip figure { margin:0; overflow:hidden; aspect-ratio:4/5; }
.media-strip figure:nth-child(2) { margin-top:13%; }
.media-strip img,.teaching-grid img { width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.media-strip figure:hover img,.teaching-card:hover img { transform:scale(1.04); }

.teaching-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:14px; margin-top:64px; }
.teaching-card { margin:0; overflow:hidden; background:#d6e7f4; }
.teaching-card:first-child { grid-row:span 2; }
.teaching-card img { display:block; aspect-ratio:4/3; }
.teaching-card:first-child img { height:100%; aspect-ratio:auto; }
.teaching-card figcaption { padding:13px 0 2px; font-family:var(--font-cn); font-size:13px; }

.deep { min-height:88svh; display:flex; align-items:center; overflow:hidden; background:linear-gradient(90deg,rgba(2,24,61,.78),rgba(2,46,95,.42)),url('assets/deep-dive.jpg') center/cover; }
.deep-inner { width:100%; }
.deep h2 { max-width:900px; margin:0; font-family:var(--font-cn-display); font-size:clamp(50px,8vw,132px); letter-spacing:-.025em; line-height:.98; font-weight:500; }
.deep-meta { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-top:56px; }
.deep-meta p { max-width:350px; margin:0; font-family:var(--font-cn); line-height:1.8; }
.sound { color:#fff; background:transparent; border:1px solid rgba(255,255,255,.58); border-radius:999px; padding:13px 18px; cursor:pointer; font-size:11px; font-weight:700; letter-spacing:.08em; transition:background .25s ease,color .25s ease,transform .25s ease; }
.sound:hover { color:var(--blue-deep); background:#fff; }
.sound:active,.text-link:active { transform:translateY(1px); }
.note { margin-top:70px; display:flex; justify-content:space-between; gap:20px; color:rgba(255,255,255,.7); font-family:var(--font-cn); font-size:13px; }
.quiet-contact { margin-top:42px; color:rgba(255,255,255,.68); font-family:var(--font-cn); font-size:14px; line-height:1.8; }

.choice { position:relative; min-height:100svh; display:grid; grid-template-columns:1fr 1fr; transition:grid-template-columns .72s cubic-bezier(.22,.8,.2,1); }
.choice:has(.music:hover) { grid-template-columns:1.16fr .84fr; }
.choice:has(.freedive:hover) { grid-template-columns:.84fr 1.16fr; }
.choice-seam { position:absolute; z-index:5; top:0; bottom:0; left:50%; width:clamp(34px,5vw,92px); transform:translateX(-50%); pointer-events:none; background:linear-gradient(90deg,rgba(2,14,30,0),rgba(167,229,255,.12) 34%,rgba(232,249,255,.2) 50%,rgba(123,200,243,.1) 66%,rgba(2,14,30,0)); mix-blend-mode:screen; filter:blur(12px); opacity:.86; transition:left .72s cubic-bezier(.22,.8,.2,1),opacity .3s ease; }
.choice:has(.music:hover) .choice-seam { left:58%; opacity:.55; }
.choice:has(.freedive:hover) .choice-seam { left:42%; opacity:.55; }
.choice a { min-height:100svh; position:relative; display:flex; align-items:flex-end; padding:5vw; overflow:hidden; }
.choice-video { position:absolute; z-index:0; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; opacity:.98; transition:transform .8s ease; }
.choice a:hover .choice-video { transform:scale(1.04); }
.choice .music::after { content:""; position:absolute; z-index:0; inset:0; background:linear-gradient(0deg,rgba(2,12,25,.52),transparent 58%),linear-gradient(90deg,rgba(215,249,255,.15),transparent 60%); pointer-events:none; }
.choice .freedive::after { content:""; position:absolute; z-index:0; inset:0; background:linear-gradient(0deg,rgba(0,24,65,.74),transparent 70%); pointer-events:none; }
.choice-content { position:relative; z-index:1; }
.choice h1 { margin:0; font-size:clamp(58px,9vw,142px); line-height:.88; letter-spacing:-.065em; }
.choice p { margin:18px 0 0; font-size:14px; }
.choice .music { color:#f5fdff; }
.music-hero { background:#0a5da5; }
.music-hero::after { background:linear-gradient(90deg,rgba(2,28,70,.78),rgba(2,28,70,.08)); }
.music-hero .eyebrow,.music-hero p { color:#fff; }

@media (max-width:760px) {
  .topbar { top:18px; }
  .nav { gap:14px; }
  .grid12,.album-focus { display:block; }
  .body { margin-top:28px; }
  .media-strip { grid-template-columns:1fr 1fr; }
  .media-strip figure:nth-child(3) { display:none; }
  .list a { grid-template-columns:70px 1fr auto; }
  .deep-meta { display:block; }
  .deep-meta .sound { margin-top:28px; }
  .teaching-grid { grid-template-columns:1fr; }
  .teaching-card:first-child { grid-row:auto; }
  .teaching-card:first-child img { height:auto; aspect-ratio:4/3; }
  .choice { grid-template-columns:1fr; }
  .choice-seam { top:50%; right:0; bottom:auto; left:0; width:auto; height:42px; transform:translateY(-50%); background:linear-gradient(180deg,rgba(2,14,30,0),rgba(167,229,255,.1) 40%,rgba(232,249,255,.17) 50%,rgba(123,200,243,.08) 62%,rgba(2,14,30,0)); }
  .choice:has(.music:hover),.choice:has(.freedive:hover) { grid-template-columns:1fr; }
  .choice a { min-height:50svh; }
  .choice h1 { font-size:72px; }
  .page-hero { min-height:100svh; }
  .hero-copy h1 { font-size:74px; }
  .album-focus > div { margin-top:28px; }
}

@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
