:root {
  color-scheme: dark;
  --bg: #090c11;
  --bg-soft: #111720;
  --panel: #121b23;
  --line: rgba(206, 236, 243, .15);
  --line-strong: rgba(206, 236, 243, .29);
  --text: #f1f5f2;
  --muted: #a7b2b8;
  --faint: #74818a;
  --ice: #a5eeee;
  --ice-deep: #63b8c9;
  --purple: #b7a2e4;
  --sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: clip; background: var(--bg); color: var(--text); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--ice); outline-offset: 5px; }
::selection { color: #081015; background: var(--ice); }
.skip-link { position: fixed; z-index: 50; top: -60px; left: 18px; padding: 12px 18px; color: #091015; background: var(--ice); }
.skip-link:focus { top: 12px; }
.scroll-progress { position: fixed; z-index: 45; top: 0; left: 0; width: 100%; height: 2px; background: var(--ice); box-shadow: 0 0 12px rgba(165, 238, 238, .45); transform: scaleX(0); transform-origin: left; pointer-events: none; }
.page-grain { position: fixed; inset: 0; z-index: 20; pointer-events: none; opacity: .055; 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='.68' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }
.section-shell { width: min(100% - 96px, 1480px); margin-inline: auto; }

.site-header { position: absolute; z-index: 30; top: 0; left: 0; right: 0; height: 92px; display: flex; align-items: center; justify-content: space-between; width: min(100% - 96px, 1480px); margin: auto; border-bottom: 1px solid var(--line); }
.brand { display: inline-flex; align-items: center; gap: 12px; font-weight: 700; letter-spacing: -.04em; }
.brand-avatar { width: 38px; height: 38px; flex: none; object-fit: cover; border: 1px solid rgba(165, 238, 238, .44); border-radius: 11px; box-shadow: 0 0 20px rgba(64, 107, 174, .25); }
.brand-mark { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 38px; height: 38px; border: 1px solid var(--line-strong); border-radius: 11px; color: var(--ice); font: 700 12px var(--mono); letter-spacing: -.12em; white-space: nowrap; }
.brand-slash { color: var(--faint); padding: 0 1px; }
.brand-name { font-size: 19px; }
.brand-dot, .footer-brand span { color: var(--ice); }
.site-nav { display: flex; align-items: center; gap: clamp(22px, 3vw, 54px); }
.site-nav a { font-size: 13px; color: #c2ced0; transition: color .2s ease; }
.site-nav a:hover { color: var(--ice); }
.site-nav .nav-contact { display: flex; align-items: center; gap: 18px; min-height: 42px; padding: 0 18px; color: var(--ice); border: 1px solid rgba(165, 238, 238, .43); border-radius: 4px; }
.site-nav .nav-contact:hover { color: #091015; background: var(--ice); }
.menu-toggle { display: none; }

.hero { position: relative; overflow: clip; min-height: 850px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr); align-items: center; padding-top: 145px; padding-bottom: 116px; isolation: isolate; }
.hero::after { content: ""; position: absolute; z-index: -2; top: 0; right: -12vw; bottom: 0; width: 65vw; background: radial-gradient(ellipse at 60% 40%, rgba(27, 75, 91, .3), transparent 52%), radial-gradient(ellipse at 72% 58%, rgba(81, 45, 121, .11), transparent 48%); }
.hero-grid { position: absolute; z-index: -1; inset: 92px 0 0; opacity: .38; background-image: linear-gradient(to right, transparent calc(100% - 1px), rgba(146, 177, 185, .13) 100%), linear-gradient(to bottom, transparent calc(100% - 1px), rgba(146, 177, 185, .08) 100%); background-size: 25% 100%, 100% 120px; mask-image: linear-gradient(to bottom, transparent, black 15%, black 70%, transparent); }
.hero-copy { position: relative; z-index: 2; max-width: 800px; }
.eyebrow, .section-kicker, .section-number, .card-label, .lab-panel-top, .lab-prefix, .lab-tags, .contact-row div > span, .art-label, .art-index, .hero-bottom, .site-footer > span { font: 11px/1.5 var(--mono); letter-spacing: .14em; }
.eyebrow { display: flex; align-items: center; gap: 13px; color: var(--ice); white-space: nowrap; }
.signal-dot { display: inline-block; width: 7px; height: 7px; flex: none; border-radius: 50%; background: var(--ice); box-shadow: 0 0 15px var(--ice); }
.eyebrow-line { width: 35px; height: 1px; background: rgba(165, 238, 238, .45); }
h1, h2, h3, p { margin-top: 0; }
h1 { margin: 28px 0 34px; font-size: clamp(64px, 6.1vw, 112px); line-height: 1.14; font-weight: 650; letter-spacing: -.075em; white-space: nowrap; }
.hero-title-muted { color: #d4e0e1; }
.hero-title-accent { color: var(--ice); text-shadow: 0 0 45px rgba(138, 221, 227, .13); }
.hero-period { color: var(--purple); }
.hero-lead { max-width: 570px; margin-bottom: 34px; color: #aab8bd; font-size: clamp(16px, 1.25vw, 19px); line-height: 1.95; letter-spacing: .01em; }
.hero-lead strong { color: #e7f4f5; font-weight: 600; }
.hero-actions { display: flex; align-items: center; gap: 30px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 30px; min-height: 56px; font-size: 14px; font-weight: 600; transition: transform .2s ease, background .2s ease, color .2s ease; }
.button:hover { transform: translateY(-3px); }
.button-primary { padding: 0 22px; color: #0a171a; background: var(--ice); border-radius: 3px; }
.button-primary:hover { background: #d5fbf7; }
.button-text { color: #c5d7d8; }
.button-text:hover { color: var(--ice); }
.hero-art { position: relative; width: min(100%, 630px); aspect-ratio: 1 / 1.05; justify-self: end; transform: translateY(-10px); }
.hero-art::before { content: ""; position: absolute; inset: 6%; border: 1px solid rgba(152, 226, 237, .14); border-radius: 50%; transform: rotate(-18deg) scaleX(.82); }
.hero-art::after { content: ""; position: absolute; top: 11%; bottom: 11%; left: 50%; width: 1px; background: linear-gradient(transparent, rgba(166, 228, 231, .17), transparent); }
.art-orbit { position: absolute; z-index: -1; inset: 7%; border: 1px solid rgba(159, 225, 231, .11); border-radius: 50%; }
.orbit-one { transform: rotate(34deg) scaleX(.55); }
.orbit-two { transform: rotate(-41deg) scaleX(.72); }
.art-glow { position: absolute; z-index: -1; inset: 19%; border-radius: 50%; background: radial-gradient(circle, rgba(124, 226, 230, .2), rgba(97, 156, 180, .07) 42%, transparent 70%); filter: blur(20px); animation: breathe 7s ease-in-out infinite; }
.crystal { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 10px 55px rgba(123, 233, 241, .14)); animation: float 8s ease-in-out infinite; transition: opacity .6s ease, transform .6s ease; }
.hero-art.morph-active .crystal { opacity: .055; }
#hero-particles { position: absolute; inset: 5%; z-index: 2; width: 90%; height: 90%; pointer-events: none; mix-blend-mode: screen; }
.art-label, .art-index { position: absolute; color: #8aabb2; }
.art-label-top { top: 13%; left: 0; }
.art-label-bottom { right: 2%; bottom: 17%; }
.art-index { left: 4%; bottom: 20%; }
.morph-button { position: absolute; z-index: 5; left: 50%; bottom: 2%; display: flex; align-items: center; gap: 12px; min-height: 35px; padding: 5px 10px; color: #cfe8e9; background: rgba(13, 23, 30, .78); border: 1px solid rgba(153, 223, 229, .33); border-radius: 3px; cursor: pointer; font: 10px var(--mono); letter-spacing: .08em; white-space: nowrap; transform: translateX(-50%); backdrop-filter: blur(12px); }
.morph-button:hover { color: #071317; background: var(--ice); }
.morph-indicator { color: var(--ice); }
.morph-button:hover .morph-indicator { color: #071317; }
.hero-bottom { position: absolute; left: 0; right: 0; bottom: 32px; display: flex; justify-content: space-between; padding-top: 28px; color: #89999d; border-top: 1px solid var(--line); }
.hero-bottom > span { display: flex; align-items: center; gap: 17px; }
.hero-bottom i { width: 3px; height: 3px; background: var(--ice); border-radius: 50%; }
.hero-bottom a { color: #cce0e2; }
.hero-bottom a span { margin-left: 12px; color: var(--ice); }

.ticker { overflow: hidden; display: flex; align-items: center; height: 63px; color: #081418; background: #a7e7e7; }
.ticker-track { width: max-content; display: flex; align-items: center; gap: 40px; white-space: nowrap; font: 700 13px var(--mono); letter-spacing: .11em; animation: ticker 26s linear infinite; }
.ticker-track span { font-size: 24px; font-weight: 400; }

.focus { padding-top: 145px; padding-bottom: 160px; }
.section-heading { max-width: 900px; }
.section-kicker { display: flex; align-items: center; gap: 22px; margin-bottom: 25px; color: var(--ice); text-transform: uppercase; }
.section-kicker span + span { color: var(--faint); }
.section-heading h2, .about h2, .contact h2 { margin-bottom: 24px; font-size: clamp(52px, 5.2vw, 86px); line-height: 1.2; font-weight: 620; letter-spacing: -.07em; }
.section-heading h2 em, .about h2 em, .contact h2 em { color: var(--ice); font-style: normal; }
.section-heading > p { max-width: 595px; margin-bottom: 0; color: var(--muted); font-size: 17px; line-height: 1.85; }
.focus-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 65px; }
.focus-card { position: relative; min-height: 520px; display: flex; flex-direction: column; justify-content: space-between; padding: 28px; overflow: hidden; border: 1px solid var(--line); background: linear-gradient(145deg, #141c24, #0c1118 70%); transition: border-color .3s ease, transform .3s ease, background .3s ease; }
.focus-card::before { content: ""; position: absolute; inset: 0; opacity: 0; background: radial-gradient(270px circle at var(--mx, 50%) var(--my, 50%), rgba(151, 235, 234, .13), transparent 75%); pointer-events: none; transition: opacity .25s ease; }
.focus-card:hover::before { opacity: 1; }
.focus-card > * { position: relative; z-index: 1; }
.focus-card:hover { transform: translateY(-6px); border-color: rgba(165, 238, 238, .48); background: linear-gradient(145deg, #182b33, #0c1118 74%); }
.card-top { display: flex; justify-content: space-between; color: #849ba3; font: 12px var(--mono); }
.card-arrow { color: var(--ice); font-size: 22px; line-height: 1; }
.focus-symbol { position: relative; display: grid; place-items: center; height: 178px; color: var(--ice); font-size: 112px; font-weight: 200; line-height: 1; text-shadow: 0 0 58px rgba(130, 226, 235, .4); }
.focus-symbol::before, .focus-symbol::after { content: ""; position: absolute; border: 1px solid rgba(165, 238, 238, .11); border-radius: 50%; }
.focus-symbol::before { width: 155px; height: 155px; }
.focus-symbol::after { width: 198px; height: 198px; }
.symbol-web { color: #d4d7f4; text-shadow: 0 0 50px rgba(182, 163, 228, .38); }
.symbol-web3 { color: #b1dfed; }
.card-label { color: var(--ice-deep); }
.card-bottom h3 { margin: 12px 0 15px; font-size: clamp(30px, 2.5vw, 42px); font-weight: 580; letter-spacing: -.04em; }
.card-bottom > p:last-child { max-width: 360px; margin: 0; color: #9ca9af; font-size: 15px; line-height: 1.85; }

.approach { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(50px, 9vw, 160px); padding-top: 132px; padding-bottom: 150px; border-top: 1px solid var(--line); }
.approach-aside { display: flex; flex-direction: column; justify-content: space-between; min-height: 720px; }
.section-number { color: var(--ice); }
.approach-graphic { position: relative; width: min(100%, 360px); aspect-ratio: 1; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: radial-gradient(circle, rgba(80, 187, 199, .1), transparent 68%); }
.approach-graphic::after { content: ""; position: absolute; inset: 13%; border: 1px dashed rgba(154, 225, 229, .24); border-radius: 50%; }
.approach-graphic span { position: absolute; color: var(--ice); font: 42px var(--mono); }
.approach-graphic span:nth-child(1) { left: 19%; top: 33%; color: #8b9eaa; }
.approach-graphic span:nth-child(2) { z-index: 1; font-size: 89px; }
.approach-graphic span:nth-child(3) { right: 19%; bottom: 29%; color: #c7b3e7; }
.approach-list { padding: 0; margin: 66px 0 0; list-style: none; border-top: 1px solid var(--line-strong); }
.approach-list li { display: grid; grid-template-columns: 130px 1fr; column-gap: 24px; padding: 30px 0; border-bottom: 1px solid var(--line); }
.approach-list li > span { grid-row: span 2; color: var(--ice-deep); font: 11px/1.8 var(--mono); letter-spacing: .07em; }
.approach-list strong { margin-bottom: 6px; font-size: 21px; font-weight: 570; }
.approach-list p { margin: 0; color: #9caaaf; font-size: 15px; line-height: 1.8; }

.lab { padding-top: 145px; padding-bottom: 160px; border-top: 1px solid var(--line); }
.lab-panel { position: relative; overflow: hidden; margin-top: 64px; padding: 32px 36px; border: 1px solid rgba(160, 230, 236, .34); background: linear-gradient(130deg, rgba(26, 49, 58, .94), #0f161e 57%, #11131c); box-shadow: inset 0 0 80px rgba(70, 148, 164, .04); }
.lab-panel::after { content: ""; position: absolute; top: -130px; right: -90px; width: 440px; height: 440px; border: 1px solid rgba(159, 233, 236, .1); border-radius: 50%; box-shadow: 0 0 0 75px rgba(159, 233, 236, .025), 0 0 0 150px rgba(159, 233, 236, .018); pointer-events: none; }
.lab-panel-top, .lab-panel-bottom { position: relative; z-index: 1; display: flex; justify-content: space-between; align-items: center; }
.lab-panel-top { color: #a4d7dd; }
.lab-panel-top > span:first-child { display: flex; align-items: center; gap: 12px; }
.lab-panel-top > span:last-child { color: #7c9aa3; }
.lab-display { position: relative; z-index: 1; min-height: 265px; display: flex; flex-direction: column; justify-content: center; padding: 30px 0; }
.lab-prefix { margin-bottom: 22px; color: #85b5bf; }
.lab-display p { max-width: 1050px; margin: 0; font-size: clamp(28px, 3.5vw, 56px); line-height: 1.43; letter-spacing: -.04em; }
.lab-display p.is-changing { animation: idea-swap .35s ease; }
.lab-panel-bottom { padding-top: 24px; border-top: 1px solid rgba(190, 225, 231, .16); }
.lab-tags { display: flex; gap: 8px; }
.lab-tags span { padding: 7px 10px; color: #9fc7cc; border: 1px solid rgba(169, 213, 220, .25); }
.idea-button { display: flex; align-items: center; gap: 24px; padding: 10px 0; color: var(--ice); border: 0; background: transparent; cursor: pointer; font-size: 15px; }
.idea-button span { font-size: 25px; line-height: 1; transition: transform .4s ease; }
.idea-button:hover span { transform: rotate(80deg); }

.pelican-feature { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(28px, 5vw, 80px); align-items: center; margin-top: 24px; padding: clamp(32px, 4vw, 62px); border: 1px solid var(--line); background: linear-gradient(145deg, #101921, #0c1118 70%); }
.pelican-overline { margin-bottom: 26px; color: var(--ice); font: 11px var(--mono); letter-spacing: .12em; }
.pelican-intro h3 { margin-bottom: 24px; font-size: clamp(38px, 3.8vw, 64px); line-height: 1.28; font-weight: 600; letter-spacing: -.06em; }
.pelican-intro h3 em { color: var(--ice); font-style: normal; }
.pelican-intro > p:not(.pelican-overline) { max-width: 420px; margin-bottom: 32px; color: var(--muted); font-size: 16px; line-height: 1.9; }
.pelican-controls { display: flex; flex-wrap: wrap; gap: 9px; }
.pelican-controls button { display: inline-flex; align-items: center; gap: 12px; min-height: 38px; padding: 0 11px; color: #c4dfe0; background: rgba(147, 226, 231, .05); border: 1px solid rgba(159, 226, 231, .28); border-radius: 3px; cursor: pointer; font: 11px var(--mono); }
.pelican-controls button:hover, .pelican-controls button[aria-pressed="true"] { color: #071317; background: var(--ice); }
.pelican-stage { position: relative; overflow: hidden; border: 1px solid rgba(163, 227, 231, .23); background: radial-gradient(circle at 70% 35%, rgba(80, 141, 159, .16), transparent 42%), linear-gradient(180deg, #101f2a, #0a111a); }
.pelican-stage::before { content: ""; position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(to right, rgba(161, 227, 232, .13) 1px, transparent 1px), linear-gradient(to bottom, rgba(161, 227, 232, .13) 1px, transparent 1px); background-size: 50px 50px; pointer-events: none; }
.stage-top, .stage-bottom { position: absolute; z-index: 2; left: 20px; right: 20px; display: flex; justify-content: space-between; color: #91b5bc; font: 9px var(--mono); letter-spacing: .1em; }
.stage-top { top: 18px; }
.stage-bottom { bottom: 16px; }
.stage-status { display: inline-flex; align-items: center; gap: 7px; }
.stage-status i { width: 6px; height: 6px; border-radius: 50%; background: var(--ice); box-shadow: 0 0 10px var(--ice); }
#pelican-svg { display: block; width: 100%; height: auto; aspect-ratio: 7 / 4.2; }
#pelican-svg .stage-road { fill: none; stroke: #77cbd2; stroke-width: 2; opacity: .45; }
#pelican-svg .speed-lines path { fill: none; stroke: #94dfe3; stroke-width: 2; opacity: .25; stroke-linecap: round; }
#pelican-svg .wheel-rim { fill: none; stroke: #a8e8e9; stroke-width: 7; }
#pelican-svg .wheel-inner { fill: rgba(132, 227, 229, .025); stroke: #426c79; stroke-width: 1.5; }
#pelican-svg .wheel-spokes { fill: none; stroke: #83b8c1; stroke-width: 2; opacity: .6; }
#pelican-svg .wheel-hub { fill: #d0f3ef; stroke: #398c9d; stroke-width: 4; }
#pelican-svg .bike-frame { fill: none; stroke: #80d8da; stroke-width: 10; stroke-linejoin: round; stroke-linecap: round; }
#pelican-svg .bike-metal { fill: none; stroke: #a1e4e4; stroke-width: 8; stroke-linecap: round; stroke-linejoin: round; }
#pelican-svg .bike-seat { fill: none; stroke: #d1e5dc; stroke-width: 12; stroke-linecap: round; }
#pelican-svg .crank-ring { fill: #12313d; stroke: #a6e4e4; stroke-width: 7; }
#pelican-svg .crank-arm { fill: none; stroke: #c0e8e5; stroke-width: 6; }
#pelican-svg .pedal { fill: none; stroke: #e5f1e7; stroke-width: 7; stroke-linecap: round; }
#pelican-svg .tail { fill: #c3e2de; }
#pelican-svg .body, #pelican-svg .head { fill: url(#pelican-body); stroke: #dff9ed; stroke-width: 2; }
#pelican-svg .wing { fill: url(#pelican-wing); stroke: #b4d9d6; stroke-width: 2; }
#pelican-svg .feathers { fill: none; stroke: #90bec3; stroke-width: 3; stroke-linecap: round; }
#pelican-svg .neck { fill: none; stroke: #d8efe5; stroke-width: 28; stroke-linecap: round; }
#pelican-svg .pouch { fill: #e79d74; stroke: #f8cc9d; stroke-width: 2; }
#pelican-svg .bill { fill: url(#pelican-bill); stroke: #f7c99b; stroke-width: 2; }
#pelican-svg .eye { fill: #1d353d; }
#pelican-svg .eye-glint { fill: white; }
#pelican-svg .wing-arm { fill: none; stroke: #d8f0e9; stroke-width: 16; stroke-linecap: round; }
#pelican-svg .wing-tip { fill: none; stroke: #cfebe6; stroke-width: 9; stroke-linecap: round; }
#pelican-svg .leg { fill: none; stroke: #f3b47f; stroke-width: 11; stroke-linecap: round; stroke-linejoin: round; }
#pelican-svg .leg.far { stroke: #cb8d6b; stroke-width: 9; }
#pelican-svg .foot { fill: none; stroke: #f5bc8b; stroke-width: 10; stroke-linecap: round; }
#pelican-svg .foot.far { stroke: #d2916d; }
#wireframe-overlay { display: none; fill: none; stroke: #e5c6ff; stroke-width: 1.5; stroke-dasharray: 6 7; opacity: .78; pointer-events: none; }
.show-wireframe #wireframe-overlay { display: block; }
.is-paused .stage-status i { background: #8b9ea6; box-shadow: none; }

.about { padding-top: 145px; padding-bottom: 158px; border-top: 1px solid var(--line); }
.about-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 100px; align-items: start; }
.about h2 { margin-bottom: 0; }
.about-portrait { position: relative; width: min(100%, 350px); aspect-ratio: 1; margin-top: 48px; overflow: hidden; border: 1px solid rgba(165, 238, 238, .27); background: #0a1231; }
.about-portrait::after { content: ""; position: absolute; inset: 0; box-shadow: inset 0 0 70px rgba(79, 177, 203, .13); pointer-events: none; }
.about-portrait img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.9) contrast(1.06); }
.about-portrait span { position: absolute; z-index: 1; bottom: 16px; left: 16px; padding: 5px 7px; color: #d5f4f5; background: rgba(8, 13, 20, .58); font: 9px var(--mono); letter-spacing: .13em; backdrop-filter: blur(8px); }
.about-copy { max-width: 530px; padding-top: 12px; }
.about-copy p { color: #aab8bd; font-size: 18px; line-height: 2; }
.about-copy p + p { margin-top: 26px; }
.about-copy a { display: inline-flex; gap: 34px; margin-top: 22px; padding-bottom: 10px; color: var(--ice); border-bottom: 1px solid var(--ice); font-size: 15px; }

.contact { position: relative; overflow: hidden; padding-top: 110px; padding-bottom: 125px; border: 1px solid var(--line-strong); background: linear-gradient(130deg, #12242b, #0c1118 60%); }
.contact::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(to right, transparent calc(100% - 1px), rgba(170, 218, 225, .1) 100%); background-size: 25% 100%; pointer-events: none; }
.contact-glow { position: absolute; top: -230px; right: -130px; width: 650px; height: 650px; border-radius: 50%; background: radial-gradient(circle, rgba(119, 221, 228, .18), transparent 60%); filter: blur(30px); pointer-events: none; }
.contact > *:not(.contact-glow) { position: relative; z-index: 1; }
.contact .section-kicker, .contact h2, .contact-lead, .contact-row { margin-left: clamp(30px, 5.2vw, 88px); margin-right: clamp(30px, 5.2vw, 88px); }
.contact h2 { font-size: clamp(65px, 8vw, 128px); }
.contact-lead { max-width: 560px; margin-bottom: 70px; color: #b5c4c7; font-size: 18px; line-height: 1.9; }
.contact-row { display: flex; align-items: end; justify-content: space-between; padding: 28px 0 0; border-top: 1px solid var(--line-strong); }
.contact-row div { display: flex; flex-direction: column; gap: 9px; }
.contact-row div > span { color: #8ab5bb; }
.contact-row strong { font: 500 clamp(30px, 4.2vw, 64px)/1.2 var(--mono); letter-spacing: -.04em; }
.contact-row button { display: flex; align-items: center; gap: 25px; min-height: 50px; padding: 0 16px; color: #081418; background: var(--ice); border: 0; border-radius: 3px; cursor: pointer; font-size: 14px; font-weight: 600; }
.contact-row button:hover { background: #d8f7f7; }

.site-footer { display: flex; align-items: center; gap: 35px; min-height: 130px; }
.footer-brand { margin-right: auto; font-size: 25px; font-weight: 700; letter-spacing: -.04em; }
.site-footer p { margin: 0; color: #7d8e94; font-size: 12px; }
.site-footer > span { color: #7d8e94; }
.back-top { color: #a6cdd1; font-size: 12px; }
.toast { position: fixed; z-index: 100; right: 24px; bottom: 24px; max-width: calc(100vw - 48px); padding: 13px 17px; color: #071417; background: var(--ice); border-radius: 4px; box-shadow: 0 12px 35px #0007; font-size: 14px; opacity: 0; transform: translateY(12px); transition: opacity .2s ease, transform .2s ease; pointer-events: none; }
.toast.visible { opacity: 1; transform: translateY(0); }
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .65s ease, transform .65s ease; }
.reveal.visible { opacity: 1; transform: none; }

@keyframes float { 0%, 100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(-16px) rotate(2deg); } }
@keyframes breathe { 0%, 100% { opacity: .55; transform: scale(.95); } 50% { opacity: 1; transform: scale(1.08); } }
@keyframes ticker { to { transform: translateX(-50%); } }
@keyframes idea-swap { from { opacity: .25; transform: translateY(9px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 1100px) {
  .section-shell, .site-header { width: min(100% - 64px, 1480px); }
  .hero { min-height: 760px; grid-template-columns: 1.12fr .88fr; }
  h1 { font-size: clamp(59px, 6.5vw, 82px); }
  .hero-art { margin-right: -30px; }
  .focus-card { min-height: 490px; padding: 22px; }
  .focus-symbol { font-size: 92px; }
  .about-grid { gap: 55px; }
}

@media (max-width: 800px) {
  .section-shell, .site-header { width: min(100% - 44px, 1480px); }
  .site-header { height: 72px; }
  .menu-toggle { position: relative; z-index: 32; display: flex; flex-direction: column; justify-content: center; gap: 6px; width: 42px; height: 42px; padding: 10px; border: 1px solid var(--line-strong); border-radius: 4px; background: #10171c; cursor: pointer; }
  .menu-toggle span { height: 1px; width: 100%; background: #d9f1f1; transition: transform .25s ease; }
  .menu-open .menu-toggle span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-open .menu-toggle span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .site-nav { position: fixed; z-index: 31; inset: 0; display: flex; flex-direction: column; align-items: stretch; justify-content: center; gap: 0; padding: 90px 32px 40px; background: rgba(9, 12, 17, .98); visibility: hidden; opacity: 0; transform: translateY(-14px); transition: opacity .25s ease, transform .25s ease, visibility .25s ease; }
  .menu-open .site-nav { visibility: visible; opacity: 1; transform: none; }
  .site-nav a { padding: 18px 0; border-bottom: 1px solid var(--line); font-size: 24px; }
  .site-nav .nav-contact { justify-content: space-between; margin-top: 30px; padding: 16px; font-size: 18px; }
  .hero { display: flex; flex-direction: column; align-items: stretch; justify-content: center; min-height: 920px; padding-top: 120px; padding-bottom: 102px; }
  .hero-grid { inset: 72px 0 0; }
  .hero-copy { z-index: 2; }
  h1 { font-size: clamp(58px, 10vw, 86px); }
  .hero-art { position: absolute; z-index: 0; top: 110px; right: -22%; width: min(84vw, 630px); }
  .hero-art .crystal, .hero-art #hero-particles { opacity: .48; }
  .hero-art.morph-active .crystal { opacity: .05; }
  .morph-button { bottom: 4%; }
  .art-label, .art-index { display: none; }
  .hero-lead { max-width: 540px; }
  .hero-bottom > span { display: none; }
  .hero-bottom { bottom: 26px; }
  .focus, .lab, .about { padding-top: 105px; padding-bottom: 110px; }
  .focus-grid { grid-template-columns: 1fr; margin-top: 50px; }
  .focus-card { min-height: 350px; }
  .focus-symbol { height: 105px; font-size: 76px; }
  .focus-symbol::before { width: 120px; height: 120px; }
  .focus-symbol::after { width: 160px; height: 160px; }
  .approach { grid-template-columns: 1fr; gap: 35px; padding-top: 105px; padding-bottom: 110px; }
  .approach-aside { min-height: 0; }
  .approach-graphic { display: none; }
  .approach-list { margin-top: 45px; }
  .about-grid { grid-template-columns: 1fr; gap: 35px; }
  .about-portrait { width: min(70%, 350px); margin-top: 32px; }
  .pelican-feature { grid-template-columns: 1fr; }
  .pelican-intro > p:not(.pelican-overline) { max-width: 580px; }
  .contact { padding-top: 88px; padding-bottom: 95px; }
  .contact .section-kicker, .contact h2, .contact-lead, .contact-row { margin-left: 32px; margin-right: 32px; }
  .site-footer { flex-wrap: wrap; gap: 12px 24px; padding-top: 38px; padding-bottom: 38px; }
  .site-footer p { width: 100%; order: 2; }
  .site-footer > span { order: 3; }
  .back-top { order: 1; }
}

@media (max-width: 540px) {
  .section-shell, .site-header { width: min(100% - 36px, 1480px); }
  .brand-name { font-size: 17px; }
  .hero { min-height: 785px; padding-top: 112px; }
  .eyebrow { gap: 8px; font-size: 9px; }
  .eyebrow-line { width: 16px; }
  h1 { margin: 25px 0; font-size: clamp(49px, 12vw, 66px); line-height: 1.2; }
  .hero-title-accent { display: inline-block; }
  .hero-lead { font-size: 15px; line-height: 1.85; }
  .hero-actions { align-items: stretch; gap: 15px; }
  .button { min-height: 52px; gap: 14px; font-size: 13px; }
  .button-primary { padding: 0 15px; }
  .hero-art { top: 95px; right: -30%; width: 100vw; }
  .hero-art .crystal, .hero-art #hero-particles { opacity: .39; }
  .morph-button { left: 37%; bottom: -4%; opacity: 1; transform: translateX(-50%); }
  .hero-bottom { padding-top: 20px; }
  .ticker { height: 52px; }
  .ticker-track { font-size: 11px; gap: 24px; }
  .section-heading h2, .about h2 { font-size: clamp(45px, 11vw, 62px); }
  .section-heading > p, .about-copy p { font-size: 15px; }
  .focus-card { min-height: 315px; }
  .focus-symbol { height: 85px; }
  .card-bottom h3 { font-size: 31px; }
  .card-bottom > p:last-child { font-size: 14px; }
  .approach-list li { grid-template-columns: 1fr; gap: 5px; }
  .approach-list li > span { grid-row: auto; margin-bottom: 5px; }
  .approach-list strong { font-size: 19px; }
  .lab-panel { margin-top: 45px; padding: 22px; }
  .lab-panel-top { font-size: 9px; }
  .lab-display { min-height: 225px; }
  .lab-display p { font-size: clamp(26px, 7vw, 38px); }
  .lab-panel-bottom { align-items: end; }
  .lab-tags { gap: 3px; }
  .lab-tags span { padding: 5px; font-size: 9px; }
  .idea-button { gap: 8px; font-size: 13px; }
  .pelican-feature { padding: 22px; }
  .pelican-intro h3 { font-size: 40px; }
  .pelican-intro > p:not(.pelican-overline) { font-size: 14px; }
  .pelican-controls button { font-size: 10px; }
  .stage-top, .stage-bottom { left: 12px; right: 12px; font-size: 7px; }
  .stage-top { top: 10px; }
  .stage-bottom { bottom: 9px; }
  .contact { width: 100%; border-left: 0; border-right: 0; }
  .about-portrait { width: min(84%, 300px); }
  .contact .section-kicker, .contact h2, .contact-lead, .contact-row { margin-left: 20px; margin-right: 20px; }
  .contact h2 { font-size: clamp(58px, 14vw, 80px); }
  .contact-lead { margin-bottom: 45px; font-size: 15px; }
  .contact-row { align-items: flex-start; flex-direction: column; gap: 26px; }
  .contact-row strong { font-size: 35px; }
  .contact-row button { width: 100%; justify-content: space-between; }
  .site-footer > span { font-size: 9px; }
}

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