:root {
  --ink: #1a1711;
  --muted: #716c5f;
  --paper: #fefcf7;
  --cream: #f7f2e6;
  --fluid: #d39c15;
  --fluid-dark: #7c5b0c;
  --oxblood: #191610;
  --coral: #f1cb70;
  --line: rgba(43,38,28, .14);
  --shadow: 0 24px 70px rgba(33,30,21, .12);
  --radius: 22px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 16px/1.6 "DM Sans", sans-serif; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 4px; }
h1, h2, h3, h4 { margin: 0; font-family: "Space Grotesk", sans-serif; line-height: 1.05; letter-spacing: -.045em; }
p { margin: 0 0 1em; }
button, input, textarea, select { font: inherit; }

.site-header { position: relative; z-index: 10; max-width: 1240px; height: 82px; margin: auto; padding: 0 28px; display: flex; align-items: center; justify-content: space-between; }
.brand,.footer-brand { display: flex; gap: 9px; align-items: center; }
.brand { font-family: "Space Grotesk", sans-serif; text-decoration: none; }
.brand-lockup { display: grid; gap: 4px; }
.brand-name { font-size: 18px; font-weight: 700; line-height: 1; }
.brand-est { color: var(--muted); font: 700 8px/1 "DM Sans", sans-serif; letter-spacing: .13em; white-space: nowrap; }

.site-header nav { display: flex; align-items: center; gap: 20px; font-weight: 600; font-size: 14px; }
.site-header nav a { text-decoration: none; }
.site-header nav a:not(.button):hover { color: var(--fluid); }

.site-footer { max-width: 1240px; margin: auto; padding: 30px 28px 48px; border-top: 1px solid var(--line); display: flex; gap: 28px; justify-content: space-between; color: var(--muted); font-size: 14px; }
.site-footer > span:first-child { color: var(--ink); font-weight: 700; }

.footer-legal { display: flex; gap: 18px; }

.flash { position: relative; z-index: 20; max-width: 720px; margin: 12px auto; padding: 13px 18px; border: 1px solid #5c5b57; border-radius: 12px; background: #1e1d1b; color: white; text-align: center; font-weight: 600; }
.flash.alert { border-color: #ebcf8c; background: #fefaf1; color: var(--fluid-dark); }

.button, input[type="submit"] { min-height: 48px; padding: 0 22px; border: 1px solid transparent; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; text-decoration: none; cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.button:hover, input[type="submit"]:hover { transform: translateY(-2px); }
:where(a,button,input,textarea,select,summary):focus-visible { outline: 3px solid var(--coral); outline-offset: 3px; }
.button-primary { color: white; background: var(--fluid); box-shadow: 0 12px 28px rgba(211,156,21, .24); }
.button-primary:hover { background: #ba8912; box-shadow: 0 15px 34px rgba(211,156,21, .32); }
.button-quiet, input.button-quiet { border-color: var(--line); background: rgba(255,255,255,.65); }
.button-light { color: var(--fluid-dark); background: white; }
.button-small { min-height: 38px; padding: 0 17px; color: white; background: var(--fluid); }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.button-row form { margin: 0; }
.text-danger { border: 0; padding: 0; color: var(--fluid); background: transparent; text-decoration: underline; cursor: pointer; }

.eyebrow { margin-bottom: 13px; color: var(--fluid); font-size: 12px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.live-dot { width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; display: inline-block; background: var(--fluid); box-shadow: 0 0 0 6px rgba(211,156,21,.1); animation: pulse 2s infinite; }

.hero { max-width: 1240px; min-height: 660px; margin: auto; padding: 74px 28px 90px; display: grid; grid-template-columns: 1.04fr .96fr; gap: 46px; align-items: center; }
.hero-copy { position: relative; z-index: 2; }
.hero h1 { max-width: 730px; font-size: clamp(58px, 7vw, 100px); }
.hero h1 em { color: var(--fluid); font-style: normal; }
.hero-lede { max-width: 620px; margin: 28px 0; color: var(--muted); font-size: 19px; }
.hero-actions { display: flex; gap: 13px; }
.microcopy { margin-top: 14px; color: #979285; font-size: 12px; }
.fluid-burst-button { position: relative; overflow: visible; }
.hero-art { min-height: 510px; position: relative; display: grid; place-items: center; isolation: isolate; }
.hero-art::before { content: ""; width: 400px; height: 400px; position: absolute; border-radius: 43% 57% 61% 39% / 54% 36% 64% 46%; background: radial-gradient(circle at 32% 28%, #f3d384, #d39c15 46%, #332d21 100%); filter: drop-shadow(0 36px 50px rgba(116,86,12,.23)); }




.cohort-strip { max-width: 1184px; margin: 0 auto 50px; padding: 38px 42px 34px; border: 1px solid rgba(95,255,159,.18); border-radius: var(--radius); display: grid; grid-template-columns: 1fr; gap: 25px; color: white; background: radial-gradient(circle at 90% 5%,rgba(57,255,136,.11),transparent 27%),linear-gradient(145deg,#110f0b,#070b09 58%,#021109); box-shadow: var(--shadow),inset 0 0 70px rgba(57,255,136,.035); position: relative; overflow: hidden; isolation: isolate; }
.cohort-strip::before { content: ""; position: absolute; z-index: -1; inset: 0; background: repeating-linear-gradient(0deg,transparent 0 5px,rgba(123,255,172,.025) 5px 6px); pointer-events: none; }
.cohort-strip::after { content: "∿"; position: absolute; z-index: -1; right: -18px; bottom: -90px; color: rgba(255,255,255,.035); font-size: 250px; transform: rotate(18deg); }
.cohort-strip .eyebrow { color: #f4d68e; }.cohort-strip h2 { font-size: 34px; }.cohort-strip p { margin: 4px 0 0; color: #dcd2ba; }
.cohort-name-row { position: relative; z-index: 3; display: flex; gap: 10px; align-items: flex-start; }.info-tip { position: relative; flex: 0 0 auto; }.info-tip summary { width: 24px; height: 24px; border: 1px solid rgba(255,255,255,.4); border-radius: 50%; display: grid; place-items: center; color: white; font: 700 12px serif; list-style: none; cursor: pointer; }.info-tip summary::-webkit-details-marker { display: none; }.info-tip p { width: min(270px, 75vw); margin: 0; padding: 13px 15px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; position: absolute; z-index: 5; top: 32px; right: 0; color: white; background: #2c271c; box-shadow: 0 14px 36px rgba(0,0,0,.28); font-size: 12px; }
.countdown { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; position: relative; z-index: 2; }
.countdown div { min-width: 0; padding: 19px 10px 15px; border: 1px solid rgba(95,255,159,.33); border-radius: 15px; overflow: hidden; background: linear-gradient(180deg,rgba(11,32,22,.92),rgba(1,10,6,.96)); box-shadow: inset 0 1px rgba(255,255,255,.07),inset 0 -28px 45px rgba(0,0,0,.4),0 0 24px rgba(57,255,136,.055); text-align: center; perspective: 500px; }
.countdown strong { display: block; position: relative; color: transparent; font: 700 clamp(58px,9vw,112px)/.82 ui-monospace,SFMono-Regular,Menlo,monospace; font-variant-numeric: tabular-nums; letter-spacing: -.11em; text-indent: -.11em; }
.countdown strong::before,.countdown strong::after { position: absolute; inset: 0; color: #8dffb8; text-shadow: 0 0 9px rgba(72,255,144,.55),0 0 28px rgba(57,255,136,.25); backface-visibility: hidden; transform-origin: center; }
.countdown strong::before { content: attr(data-previous); opacity: 0; }.countdown strong::after { content: attr(data-value); }
.countdown strong.is-turning::before { animation: countdown-turn-out .52s cubic-bezier(.55,.06,.68,.19) both; }.countdown strong.is-turning::after { animation: countdown-turn-in .52s cubic-bezier(.2,.8,.3,1) both; }
.countdown span { display: block; margin-top: 12px; color: #77c793; font: 700 11px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .24em; text-transform: uppercase; }
.countdown-label { margin: -10px 0 0 !important; color: #9ed7b2 !important; text-align: center; font: 700 12px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .12em; text-transform: uppercase; }

.section { max-width: 1184px; margin: auto; padding: 110px 0; }
.section-heading { max-width: 720px; margin-bottom: 54px; }.section-heading h2 { font-size: clamp(42px, 5vw, 67px); }.section-heading > p:last-child { max-width: 620px; margin-top: 20px; color: var(--muted); font-size: 18px; }

.how-it-works { padding-bottom: 135px; }

.steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 17px; counter-reset: steps; }

.steps article { min-height: 260px; padding: 26px; border: 1px solid var(--line); border-radius: var(--radius); background: white; transition: transform .2s, box-shadow .2s; }
.steps article:hover { transform: translateY(-7px) rotate(calc((var(--card-index, 1) - 1) * .3deg)); box-shadow: var(--shadow); }.steps article:nth-child(even) { margin-top: 28px; }
.steps span { color: var(--fluid); font: 700 13px "Space Grotesk"; }.steps h3 { margin: 64px 0 13px; font-size: 23px; }.steps p { color: var(--muted); font-size: 14px; }

.benefits { max-width: none; padding: 105px max(28px, calc((100vw - 1184px)/2)); display: grid; grid-template-columns: 1.1fr .9fr; gap: 90px; color: white; background: var(--fluid-dark); position: relative; overflow: hidden; }
.benefits::before { content: ""; width: 530px; height: 530px; position: absolute; left: -220px; top: -200px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; box-shadow: 0 0 0 90px rgba(255,255,255,.025), 0 0 0 180px rgba(255,255,255,.02); }
.benefit-statement { position: relative; }.benefit-statement > span { color: var(--coral); font-size: 47px; }.benefit-statement p { margin: 22px 0 12px; color: #efdcae; text-transform: uppercase; letter-spacing: .12em; font-size: 12px; font-weight: 800; }.benefit-statement h2 { max-width: 630px; font-size: clamp(42px, 5vw, 70px); }

.benefit-list article { padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.16); }.benefit-list h3 { margin-bottom: 8px; font-size: 24px; }.benefit-list p { color: #ded3b9; }

.facilitator { max-width: 900px; display: grid; grid-template-columns: 150px 1fr; gap: 34px; align-items: center; }.facilitator + .facilitator { margin-top: 34px; }.portrait { aspect-ratio: 1; border-radius: 40% 60% 48% 52% / 59% 38% 62% 41%; display: grid; place-items: center; overflow: hidden; color: white; background: linear-gradient(145deg, var(--coral), var(--fluid-dark)); font: 700 64px "Space Grotesk"; box-shadow: var(--shadow); }.portrait img { width: 100%; height: 100%; object-fit: cover; }.facilitator h2 { margin-bottom: 16px; font-size: 44px; }.facilitator p { color: var(--muted); font-size: 18px; }.facilitator a { color: var(--fluid); font-weight: 700; }

.program-format { padding: 115px max(28px, calc((100vw - 1184px)/2)); position: relative; overflow: hidden; color: #fefbf5; background: radial-gradient(circle at 12% 18%, rgba(243,211,132,.34), transparent 22%), repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 2px, transparent 2px 25px), linear-gradient(135deg,#a27710,#242017 72%); }.program-format::before { content: "∿"; position: absolute; right: -60px; top: -140px; color: rgba(255,255,255,.06); font-size: 420px; transform: rotate(18deg); }.format-heading,.format-terminal { position: relative; z-index: 1; }.format-heading { max-width: 840px; margin-bottom: 45px; }.format-heading .eyebrow { color: #f7e3b2; }.format-heading h2 { font-size: clamp(46px,6vw,76px); }.format-heading > p:last-child { margin-top: 18px; color: #efe2c3; }.format-terminal { padding: 34px; border: 1px solid rgba(255,255,255,.18); border-radius: 20px; background: rgba(14,12,9,.88); box-shadow: 0 28px 80px rgba(14,13,9,.38); font: 15px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace; }.format-launcher { height: 72px; position: relative; }.format-launch-track { height: 2px; position: absolute; top: 34px; right: 0; left: 0; background: repeating-linear-gradient(90deg,#806930 0 16px,transparent 16px 24px); }.format-play { width: 66px; height: 66px; padding: 0; border: 1px solid #f7e2ae; border-radius: 42% 58% 52% 48% / 55% 43% 57% 45%; position: relative; z-index: 2; display: grid; place-items: center; align-content: center; color: white; background: linear-gradient(145deg,var(--coral),var(--fluid)); box-shadow: 0 12px 30px rgba(240,198,98,.3); cursor: pointer; transition: transform .8s cubic-bezier(.2,.72,.25,1), opacity .3s; }.format-play span { font-size: 24px; line-height: 1; }.format-play small { font: 700 9px "Space Grotesk"; letter-spacing: .12em; text-transform: uppercase; }.program-format.is-running .format-play { transform: translateX(calc(min(1184px, 100vw - 124px) - 66px)) rotate(540deg); opacity: .2; }.format-points { margin: 26px 0; padding: 0; display: grid; gap: 12px; list-style: none; }.format-points li { padding: 16px 18px 16px 44px; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; position: relative; color: #fcf7eb; background: rgba(255,255,255,.045); }.format-points li::before { content: ">"; position: absolute; left: 18px; color: #f2cf7a; font-weight: 800; }.format-points li[hidden] { display: none; }.format-points li.is-revealed { animation: format-line .45s ease both; }.format-progress { height: 34px; border-bottom: 2px dashed #715e30; position: relative; --format-progress: 0%; }.format-progress span { position: absolute; left: var(--format-progress); bottom: -8px; font-size: 25px; transform: translateX(-50%) scaleX(-1); transition: left .75s ease; }.format-handshake { margin-top: 35px; border-color: white; color: var(--fluid-dark); background: white; }.format-handshake[hidden] { display: none; }

.readiness-section { min-height: 760px; padding: 115px max(28px, calc((100vw - 1184px)/2)); position: relative; overflow: hidden; color: var(--oxblood); background-color: #fbefd3; background-image: radial-gradient(circle at 82% 18%,rgba(211,156,21,.24),transparent 25%),radial-gradient(circle at 11% 75%,rgba(241,203,112,.28),transparent 28%),repeating-radial-gradient(circle at 48% 42%,rgba(124,91,12,.07) 0 2px,transparent 2px 31px); isolation: isolate; }
.readiness-section::before { content: "?   ?   ?   ?"; position: absolute; z-index: -1; left: -30px; bottom: -92px; color: rgba(124,91,12,.07); font: 700 clamp(150px,24vw,340px)/.8 "Space Grotesk",sans-serif; letter-spacing: -.12em; white-space: nowrap; transform: rotate(-7deg); }
.readiness-section::after { content: "AM I?  REALLY?  YES?"; position: absolute; z-index: -1; right: -85px; top: 35px; color: rgba(124,91,12,.11); font: 800 12px "Space Grotesk",sans-serif; letter-spacing: .28em; writing-mode: vertical-rl; }
.readiness-heading { max-width: 850px; position: relative; }.readiness-heading .eyebrow { color: var(--fluid-dark); }.readiness-heading h2 { font-size: clamp(52px,7vw,92px); }.readiness-heading > p:last-child { max-width: 760px; margin-top: 24px; color: #71613a; font-size: 18px; }
.readiness-reveal { margin-top: 34px; position: relative; }.readiness-reveal > summary { width: 130px; height: 130px; margin: -135px 35px 25px auto; border: 2px solid rgba(255,255,255,.75); border-radius: 46% 54% 38% 62% / 61% 39% 61% 39%; display: grid; place-items: center; color: white; background: radial-gradient(circle at 33% 25%,#f4d894,#d39c15 46%,#6d500b); box-shadow: 0 24px 55px rgba(108,80,11,.28),inset 0 0 0 9px rgba(255,255,255,.09); cursor: pointer; list-style: none; transform: rotate(7deg); animation: readiness-question-bounce 2.4s ease-in-out infinite; }.readiness-reveal > summary::-webkit-details-marker { display: none; }.readiness-reveal > summary span { font: 700 78px/.8 "Space Grotesk",sans-serif; text-shadow: 0 8px 0 rgba(32,28,20,.18); transform: rotate(-7deg); }.readiness-reveal > summary:hover { animation-play-state: paused; transform: translateY(-8px) rotate(-4deg) scale(1.04); }.readiness-reveal[open] > summary { animation: readiness-question-open .65s cubic-bezier(.15,.8,.22,1) both; }
.readiness-card { max-width: 950px; margin: 0 auto; padding: 34px; border: 1px solid rgba(124,91,12,.18); border-radius: 34px 16px 34px 16px; position: relative; background: rgba(254,252,247,.88); box-shadow: 0 34px 75px rgba(44,39,28,.15); backdrop-filter: blur(12px); }.readiness-reveal[open] .readiness-card { animation: readiness-card-open .6s cubic-bezier(.17,.84,.27,1) both; }
.readiness-list { margin: 0; padding: 0; display: grid; gap: 11px; list-style: none; }.readiness-item { min-width: 0; position: relative; border: 1px solid rgba(124,91,12,.13); border-radius: 15px; color: #2f2a1e; background: rgba(255,255,255,.76); transition: border-color .2s,background .2s,box-shadow .2s; }.readiness-item label { min-height: 68px; padding: 13px 18px; display: flex; gap: 15px; align-items: center; cursor: pointer; }.readiness-item input { width: 1px; height: 1px; margin: -1px; position: absolute; overflow: hidden; opacity: 0; }.readiness-checkbox { width: 35px; height: 35px; border: 2px solid #cdb886; border-radius: 12px 5px 12px 5px; flex: 0 0 auto; display: grid; place-items: center; color: transparent; background: #fefcf6; font-size: 13px; transform: rotate(-3deg); transition: color .18s,background .18s,transform .18s,border-radius .18s; }.readiness-item input:focus-visible + .readiness-checkbox { outline: 3px solid var(--coral); outline-offset: 3px; }.readiness-item:has(input:checked) { border-color: rgba(211,156,21,.42); background: #fefaf0; box-shadow: 0 8px 25px rgba(124,91,12,.08); }.readiness-item input:checked + .readiness-checkbox { border-color: var(--fluid); border-radius: 50%; color: white; background: var(--fluid); transform: rotate(45deg) scale(1.08); }.readiness-item input:checked + .readiness-checkbox + span { font-weight: 700; }
.readiness-smallprint { margin: 22px 2px 0; color: #827554; font-size: 12px; font-style: italic; }.readiness-unlock { margin-top: 28px; padding: 24px; border: 1px solid rgba(211,156,21,.2); border-radius: 17px; align-items: center; justify-content: space-between; gap: 22px; background: linear-gradient(105deg,#fdf9ee,#fff); }.readiness-unlock:not([hidden]) { display: flex; animation: readiness-unlock .55s cubic-bezier(.12,.8,.2,1) both; }.readiness-unlock p { margin: 0; color: #71613a; }.readiness-unlock strong { color: var(--fluid-dark); }.readiness-unlock .button { flex: 0 0 auto; }
.readiness-effects { width: 1px; height: 1px; position: absolute; z-index: 5; left: 50%; top: 52%; pointer-events: none; }.readiness-pop { position: absolute; z-index: 4; right: 30px; top: 50%; pointer-events: none; animation: readiness-pop .75s ease-out both; }.readiness-confetti { position: absolute; left: 0; top: 0; color: var(--fluid); font-style: normal; font-size: 19px; text-shadow: 0 4px 10px rgba(38,34,24,.15); animation: readiness-confetti 1.15s cubic-bezier(.1,.68,.22,1) var(--confetti-delay) both; }.confetti-1 { color: var(--coral); }.confetti-2 { color: #ffb000; }.confetti-3 { color: #7c5b0c; }.confetti-4 { color: #f4d790; }
.readiness-item.pop-wiggle { animation: readiness-wiggle .45s ease; }.readiness-item.pop-flip { animation: readiness-flip .5s ease; }.readiness-item.pop-jump { animation: readiness-jump .5s ease; }.readiness-item.pop-squish { animation: readiness-squish .45s ease; }.readiness-item.pop-slide { animation: readiness-slide .5s ease; }

.engineers-section { padding-top: 80px; }.engineer-group + .engineer-group { margin-top: 80px; }.group-title { margin-bottom: 24px; padding-bottom: 16px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: baseline; }.group-title h3, .group-title h2 { font-size: 28px; }.group-title span { color: var(--muted); font-size: 13px; }.engineers-section .group-title { justify-content: flex-start; align-items: center; gap: 6px; }.engineers-section .info-tip { top: -6px; }.engineers-section .info-tip summary { width: 24px; height: 24px; border-color: #1e1d1b; color: #111; background: linear-gradient(145deg,#fff,#ddd); box-shadow: 0 2px 0 #1e1d1b,0 4px 10px rgba(30,29,27,.16); filter: grayscale(1); font: 12px/1 sans-serif; transition: transform .15s,box-shadow .15s; }.engineers-section .info-tip summary:hover,.engineers-section .info-tip summary:focus-visible { outline: 2px solid #1e1d1b; outline-offset: 2px; transform: translateY(-2px); box-shadow: 0 3px 0 #1e1d1b,0 6px 13px rgba(30,29,27,.22); }.engineers-section .info-tip.is-nudging summary { animation: readiness-wiggle .45s ease 5; }
.engineer-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.engineer-card { min-width: 0; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: white; box-shadow: 0 9px 32px rgba(39,35,25,.05); transition: transform .22s ease, box-shadow .22s ease; }
.engineer-card:hover { transform: translateY(-7px); box-shadow: var(--shadow); }.engineer-card:nth-child(4n+2) { transform: rotate(.7deg); }.engineer-card:nth-child(4n+3) { transform: rotate(-.6deg); }.engineer-card:nth-child(4n+2):hover,.engineer-card:nth-child(4n+3):hover { transform: translateY(-7px) rotate(0); }
.engineer-image { height: 210px; position: relative; display: grid; place-items: center; overflow: hidden; background: #e5cf9a; }.engineer-image img { width: 100%; height: 100%; object-fit: cover; }.initial { color: white; font: 700 74px "Space Grotesk"; text-shadow: 0 10px 25px rgba(31,27,20,.2); }
.pattern-0 { background: radial-gradient(circle at 30% 20%, #f9e8be, transparent 23%), linear-gradient(135deg,#e2ad2c,#74560c); }.pattern-1 { background: repeating-linear-gradient(45deg,#8b660e 0 12px,#ca9a24 12px 24px); }.pattern-2 { background: radial-gradient(circle,#f4d68e 7%,transparent 8%) 0 0/34px 34px,#77580c; }.pattern-3 { background: conic-gradient(from 30deg,#e8b332,#332d20,#f1cb70,#e8b332); }.pattern-4 { background: linear-gradient(25deg,#231f16 35%,transparent 35%),linear-gradient(155deg,#dca318 50%,#f4d58c 50%); }.pattern-5 { background: repeating-radial-gradient(circle at 30% 20%,#dfa821 0 11px,#8c670e 12px 24px); }.pattern-6 { background: linear-gradient(120deg,#f2ce76 0 32%,#b58512 32% 66%,#2a251b 66%); }.pattern-7 { background: radial-gradient(ellipse at bottom,#f1cd75,transparent 55%),#312b1f; }

.engineer-copy { min-height: 150px; padding: 20px; }.engineer-copy h4 { margin-bottom: 7px; font-size: 21px; }.product-link { color: var(--fluid); font-size: 14px; font-weight: 700; }.engineer-copy blockquote { margin: 18px 0 0; color: var(--muted); font-size: 14px; font-style: italic; }.private-label { margin-bottom: 7px; color: var(--fluid); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.shine-copy { color: var(--muted); font-size: 13px; }

.final-cta { margin: 80px 20px; padding: 110px 28px; border-radius: 28px; position: relative; overflow: hidden; color: white; background: var(--fluid); text-align: center; }.final-cta::before,.final-cta::after { content: ""; width: 330px; height: 330px; position: absolute; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; }.final-cta::before { left: -90px; top: -190px; }.final-cta::after { right: -100px; bottom: -190px; }.final-cta .eyebrow { color: #faeed1; }.final-cta h2 { font-size: clamp(48px,7vw,90px); }.final-cta p:not(.eyebrow) { margin: 20px 0 26px; color: #fbf1d8; font-size: 18px; }

.auth-page { min-height: calc(100vh - 160px); padding: 70px 20px; display: grid; place-items: center; background: radial-gradient(circle at 50% 30%, #fff 0, var(--paper) 42%, #f5efdf 100%); }.auth-card { width: min(560px, 100%); padding: 44px; border: 1px solid var(--line); border-radius: 25px; background: rgba(255,255,255,.88); box-shadow: var(--shadow); }.auth-card h1 { margin-bottom: 15px; font-size: 46px; }.auth-card > p:not(.eyebrow) { color: var(--muted); }.centered { text-align: center; }.mail-icon { width: 60px; height: 60px; margin: 0 auto 24px; border-radius: 50%; display: grid; place-items: center; color: white; background: var(--fluid); font-size: 28px; }.local-tools { margin: 28px 0; padding: 20px; border: 1px dashed #ddc790; border-radius: 14px; background: #fefbf3; }.local-tools strong { margin-bottom: 12px; display: block; }
.stacked-form { margin-top: 28px; display: grid; gap: 10px; }.stacked-form > label:not(.check-row), .stacked-form fieldset label { margin-top: 8px; font-size: 13px; font-weight: 700; }.stacked-form input:not([type="checkbox"]):not([type="submit"]),.stacked-form textarea,.stacked-form select { width: 100%; padding: 13px 15px; border: 1px solid #d9d4c8; border-radius: 11px; color: var(--ink); background: white; outline: none; }.stacked-form input:focus,.stacked-form textarea:focus,.stacked-form select:focus { border-color: var(--fluid); box-shadow: 0 0 0 3px rgba(211,156,21,.1); }.stacked-form fieldset { margin: 12px 0; padding: 20px; border: 1px solid var(--line); border-radius: 14px; display: grid; gap: 10px; }.stacked-form legend { padding: 0 7px; font-weight: 700; }.check-row { margin: 12px 0; display: flex; align-items: flex-start; gap: 11px; cursor: pointer; }.check-row input { width: 18px; height: 18px; margin-top: 3px; accent-color: var(--fluid); }.check-row span { line-height: 1.35; }.check-row small { margin-top: 4px; display: block; color: var(--muted); }.fine-print { margin-top: 20px; font-size: 12px; }.publication { padding: 17px; border: 1px solid var(--line); border-radius: 12px; background: var(--cream); }

.narrow-page,.dashboard-page,.admin-page { max-width: 960px; min-height: calc(100vh - 160px); margin: auto; padding: 80px 28px 120px; }.narrow-page { max-width: 720px; }.narrow-page > h1,.dashboard-head h1,.admin-page > h1 { margin-bottom: 18px; font-size: clamp(42px,6vw,66px); }.narrow-page > p { color: var(--muted); }.legal-copy h2 { margin: 38px 0 10px; font-size: 27px; }.profile-form { margin-bottom: 50px; }.avatar-preview { margin: 8px 0 12px; padding: 12px; border: 1px solid var(--line); border-radius: 14px; display: flex; gap: 15px; align-items: center; background: white; }.avatar-preview img { width: 76px; height: 76px; border-radius: 12px; object-fit: cover; }.avatar-preview p { margin: 0; color: var(--muted); font-size: 13px; }.danger-zone,.product-list { margin-top: 40px; padding: 25px; border: 1px solid var(--line); border-radius: 16px; }.danger-zone { border-color: #efdba9; background: #fefcf6; }.danger-zone h2,.product-list h2 { margin-bottom: 8px; font-size: 23px; }.product-list-disabled { color: #8d8980; background: #eeece8; }.product-list-disabled fieldset { margin: 0; padding: 0; border: 0; opacity: .55; }.product-list-disabled > p { margin: 18px 0 0; color: var(--muted); font-size: 14px; }
.dashboard-head { margin-bottom: 40px; display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }.status-pill { padding: 5px 10px; border-radius: 999px; color: var(--fluid-dark); background: #faf3e1; font-size: 11px; font-weight: 800; text-transform: uppercase; }.action-panel { margin-bottom: 22px; padding: 30px; border: 1px solid #efdcaf; border-radius: var(--radius); background: linear-gradient(135deg,#fefbf4,#fff); }.action-panel h2 { margin-bottom: 8px; }
.dashboard-program { margin-bottom: 22px; padding: 30px; grid-template-columns: minmax(0,1.35fr) minmax(280px,.65fr); align-items: center; }.dashboard-program h1 { font-size: clamp(31px,4vw,40px); }.dashboard-program .program-dates { margin-top: 12px; color: white; font-weight: 700; }.dashboard-program .program-seats { margin-top: 5px; }.dashboard-countdown { grid-template-columns: 1fr 1fr; gap: 9px; }.dashboard-countdown div { padding: 13px 7px 10px; border-radius: 11px; }.dashboard-countdown strong { font-size: clamp(38px,6vw,54px); }.dashboard-countdown span { margin-top: 8px; font-size: 9px; }.dashboard-program .countdown-label { grid-column: 2; }.queue-position { margin-top: 18px !important; display: flex; align-items: center; gap: 14px; }.queue-position > strong { min-width: 74px; padding: 10px 12px; border: 1px solid rgba(95,255,159,.33); border-radius: 11px; color: #8dffb8; background: linear-gradient(180deg,rgba(11,32,22,.92),rgba(1,10,6,.96)); box-shadow: inset 0 1px rgba(255,255,255,.07),0 0 20px rgba(57,255,136,.08); font: 700 clamp(30px,5vw,46px)/1 ui-monospace,SFMono-Regular,Menlo,monospace; text-align: center; text-shadow: 0 0 9px rgba(72,255,144,.45); }.queue-position > span { max-width: 330px; color: #dcd2ba; font-size: 13px; }.dashboard-next-steps { padding: 30px; background: linear-gradient(120deg,#fff,#fdf9ef); }.dashboard-next-steps > .eyebrow { margin-bottom: 5px; }.dashboard-next-steps ol { margin: 22px 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; list-style: none; }.dashboard-next-steps li { min-width: 0; padding: 18px; border: 1px solid rgba(211,156,21,.18); border-radius: 14px; display: flex; gap: 13px; background: rgba(255,255,255,.8); }.next-step-marker { width: 27px; height: 27px; flex: 0 0 auto; border: 2px solid #d2c5a7; border-radius: 7px; display: grid; place-items: center; background: white; }.is-complete .next-step-marker { border-color: #8a660e; border-radius: 6px; color: white; background: linear-gradient(135deg,#f4d68d,#dca217 48%,#7c5b0c); box-shadow: inset 0 1px rgba(255,255,255,.45),0 6px 14px rgba(124,91,12,.2); transform: rotate(45deg) scale(.82); }.is-complete .next-step-marker::after { content: "✓"; font-size: 18px; font-weight: 900; transform: rotate(-45deg); }.dashboard-next-steps li div { min-width: 0; }.dashboard-next-steps li strong,.dashboard-next-steps li a { color: var(--ink); font-weight: 800; overflow-wrap: anywhere; }.dashboard-next-steps li a { text-decoration-color: var(--fluid); text-underline-offset: 3px; }.dashboard-next-steps small { margin-top: 5px; display: block; color: var(--muted); line-height: 1.4; }.membership-panel,.waitlist-panel { scroll-margin-top: 20px; }
.membership-panel form { position: relative; }.membership-activation { margin-top: 22px; padding: 20px; border: 1px solid rgba(211,156,21,.2); border-radius: 16px; align-items: center; justify-content: space-between; gap: 18px; background: white; }.membership-activation:not([hidden]) { display: flex; animation: readiness-unlock .5s cubic-bezier(.12,.8,.2,1) both; }.membership-activation .check-row { margin: 0; }.membership-activation .button { flex: 0 0 auto; }.membership-readiness { margin-top: 25px; padding-top: 24px; border-top: 1px dashed #dccda8; position: relative; }.membership-readiness h3 { font-size: 24px; }.membership-readiness > p { margin: 7px 0 18px; color: var(--muted); }.membership-readiness .readiness-item { background: rgba(255,255,255,.82); }.button:disabled,input[type="submit"]:disabled { opacity: .45; cursor: not-allowed; transform: none; box-shadow: none; }
.membership-switch { width: 100%; display: grid; grid-template-columns: 54px minmax(0,1fr); align-items: center; gap: 13px; }.membership-switch input { width: 1px; height: 1px; margin: 0; position: absolute; opacity: 0; }.membership-switch-control { width: 54px; height: 30px; border: 1px solid #c9c1ae; border-radius: 999px; display: block; background: #eeebe4; box-shadow: inset 0 2px 5px rgba(39,35,25,.1); position: relative; transition: background .2s,border-color .2s,box-shadow .2s; }.membership-switch-control::after { content: ""; width: 22px; height: 22px; top: 3px; left: 4px; border-radius: 50%; position: absolute; background: white; box-shadow: 0 2px 7px rgba(39,35,25,.22); transition: transform .2s; }.membership-switch input:checked + .membership-switch-control { border-color: #a47910; background: linear-gradient(135deg,var(--coral),var(--fluid) 58%,var(--fluid-dark)); box-shadow: inset 0 1px rgba(255,255,255,.28),0 5px 14px rgba(211,156,21,.18); }.membership-switch input:checked + .membership-switch-control::after { transform: translateX(23px); }.membership-switch input:focus-visible + .membership-switch-control { outline: 3px solid rgba(211,156,21,.24); outline-offset: 3px; }
.confirmation-dialog { width: min(92vw,520px); margin: auto; padding: 0; border: 1px solid rgba(211,156,21,.28); border-radius: 24px; color: var(--ink); background: transparent; box-shadow: 0 35px 90px rgba(29,26,19,.38); overflow: visible; }.confirmation-dialog::backdrop { background: rgba(23,20,15,.62); backdrop-filter: blur(5px); }.confirmation-card { padding: 70px 32px 30px; border-radius: 23px; position: relative; background: radial-gradient(circle at 50% 0,rgba(244,214,141,.22),transparent 35%),linear-gradient(145deg,#fff,#fefaf2); text-align: center; }.confirmation-fluid { width: 64px; height: 64px; top: -30px; left: calc(50% - 32px); border: 1px solid rgba(255,255,255,.6); border-radius: 16px; display: grid; place-items: center; position: absolute; color: white; background: linear-gradient(135deg,#f4d792,var(--fluid) 52%,var(--fluid-dark)); box-shadow: inset 0 1px rgba(255,255,255,.45),0 15px 34px rgba(124,91,12,.3); font-size: 28px; transform: rotate(45deg); }.confirmation-fluid > span { transform: rotate(-45deg); }.confirmation-card h3 { font-size: clamp(29px,5vw,38px); }.confirmation-card p { max-width: 430px; margin: 13px auto 0; color: var(--muted); line-height: 1.55; }.confirmation-actions { margin-top: 27px; display: flex; justify-content: center; gap: 11px; flex-wrap: wrap; }
.admin-page { max-width: 1184px; }.admin-program { margin: 40px 0 60px; padding: 30px; border-radius: var(--radius); color: white; background: var(--oxblood); }.admin-program h2 { margin-bottom: 20px; font-size: 32px; overflow-wrap: anywhere; }.admin-program > .button-row { margin-top: 22px; }.inline-form { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }.inline-form input,.inline-form select,.inline-form textarea { min-width: 0; max-width: 100%; }.inline-form input[type="text"] { flex: 1 1 280px; padding: 8px; }.inline-form input[type="date"],.inline-form input[type="time"],.inline-form select { padding: 8px; }.inline-form input[type="number"] { width: 75px; padding: 8px; }.inline-form .check-row { margin: 0; }.program-boundary-fields { display: grid; grid-template-columns: auto auto auto auto; gap: 16px; align-items: center; }.program-time-zone { color: #dcd2ba; font-size: 12px; }.admin-check-with-help { position: relative; display: flex; align-items: center; gap: 8px; }.admin-check-with-help .info-tip { position: static; }.admin-check-with-help .info-tip p { top: calc(100% + 8px); right: 0; }.format-points-field { flex: 1 0 100%; display: grid; gap: 7px; }.format-points-field textarea { width: 100%; padding: 13px; border: 1px solid rgba(255,255,255,.25); border-radius: 12px; color: white; background: rgba(255,255,255,.08); font: 13px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace; }.admin-engineer-group { margin-top: 40px; }.admin-engineer-group .group-title { margin-bottom: 16px; }.admin-engineer-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(280px,1fr)); gap: 16px; }.admin-engineer-card { min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: 18px; display: flex; flex-direction: column; background: white; box-shadow: 0 9px 30px rgba(39,35,25,.06); }.admin-engineer-card header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }.admin-engineer-card header > div { min-width: 0; }.admin-engineer-card h4 { font-size: 19px; }.admin-engineer-card small { display: block; margin-top: 5px; color: var(--muted); overflow-wrap: anywhere; }.admin-engineer-card .status-pill { flex: 0 0 auto; }.admin-engineer-card dl { margin: 20px 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }.admin-engineer-card dt { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.admin-engineer-card dd { margin: 2px 0 0; overflow-wrap: anywhere; }.admin-engineer-card > a { margin-top: auto; color: var(--fluid); font-weight: 800; }

.public-sessions { padding-top: 55px; padding-bottom: 90px; }.calendar-stage { max-width: none; padding: 105px max(28px, calc((100vw - 1184px)/2)); position: relative; overflow: hidden; background-color: #fdf9ef; background-image: linear-gradient(rgba(150,113,24,.08) 1px, transparent 1px), linear-gradient(90deg,rgba(150,113,24,.08) 1px, transparent 1px), radial-gradient(circle at 85% 15%, rgba(241,203,112,.22), transparent 30%); background-size: 72px 72px,72px 72px,auto; }.calendar-stage::before { content: "AUG  ·  SEP  ·  OCT  ·  NOV  ·  DEC"; position: absolute; top: 25px; right: 28px; color: rgba(124,91,12,.16); font: 800 clamp(18px,4vw,48px) "Space Grotesk"; letter-spacing: .18em; white-space: nowrap; }.calendar-stage > * { position: relative; z-index: 1; }
.live-session-banner { min-height: 185px; margin-bottom: 54px; padding: 34px 42px 34px 120px; border-radius: 24px; display: flex; align-items: center; color: white; background: radial-gradient(circle at 12% 50%, rgba(255,255,255,.17), transparent 23%), linear-gradient(118deg, var(--fluid-dark), var(--fluid) 67%, var(--coral)); box-shadow: 0 28px 65px rgba(111,82,11, .25); position: relative; overflow: hidden; }
.live-session-banner::after { content: "∿"; position: absolute; right: 30px; color: rgba(255,255,255,.12); font-size: 130px; transform: rotate(18deg); }
.live-session-banner .eyebrow { margin-bottom: 7px; color: white; }.live-session-banner h2 { font-size: clamp(34px, 5vw, 58px); overflow-wrap: anywhere; }.live-session-banner p:last-child { margin-top: 7px; color: white; }
.live-signal { width: 34px; height: 34px; left: 48px; position: absolute; border: 8px solid rgba(255,255,255,.22); border-radius: 50%; background: white; box-shadow: 0 0 0 0 rgba(255,255,255,.5); animation: live-signal 1.8s infinite; }
.public-session-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.public-session-grid article { min-height: 220px; padding: 28px; border: 1px solid var(--line); border-radius: 20px; display: flex; flex-direction: column; background: rgba(255,255,255,.8); box-shadow: 0 12px 34px rgba(39,35,25,.05); }
.public-session-grid time { color: var(--fluid); font: 800 11px "Space Grotesk", sans-serif; letter-spacing: .09em; text-transform: uppercase; }.public-session-grid h3 { margin: 34px 0 10px; font-size: 25px; overflow-wrap: anywhere; }.public-session-grid p { color: var(--muted); font-size: 14px; }.public-session-grid span { margin-top: auto; padding-top: 22px; color: var(--muted); font-size: 13px; }
.calendar-facilitators { margin-top: 80px; padding-top: 50px; border-top: 2px solid rgba(124,91,12,.12); }

.sessions-page,.session-page { max-width: 1040px; min-height: calc(100vh - 160px); margin: auto; padding: 76px 28px 120px; }
.sessions-heading,.session-detail-heading { max-width: 780px; margin-bottom: 50px; }.sessions-heading h1,.session-detail-heading h1 { margin-bottom: 15px; font-size: clamp(48px, 7vw, 78px); }.sessions-heading > p:last-child,.session-detail-heading > p { max-width: 690px; color: var(--muted); font-size: 17px; }.session-detail-heading .button { margin-top: 24px; }.privacy-note { margin-top: 12px; font-size: 12px !important; }
.session-description,.session-location { margin-top: 12px; white-space: pre-line; }.session-location { font-size: 14px !important; }
.session-page.is-live { max-width: 1184px; padding-top: 30px; }.session-page.is-live .back-link { margin-bottom: 13px; }.session-page.is-live .session-detail-heading { max-width: none; margin-bottom: 24px; }.session-page.is-live .session-detail-heading h1 { margin-bottom: 5px; font-size: clamp(34px, 5vw, 48px); }.session-page.is-live .session-detail-heading .button { min-height: 40px; margin-top: 13px; padding: 0 17px; }.session-page.is-live .session-description,.session-page.is-live .session-location { display: none; }.session-page.is-live .privacy-note { display: inline; margin-left: 12px; }
.back-link { margin-bottom: 30px; display: inline-block; color: var(--fluid); font-size: 13px; font-weight: 800; text-decoration: none; }
.session-section { margin-top: 34px; padding: 32px; border: 1px solid var(--line); border-radius: 21px; background: rgba(255,255,255,.75); }.session-section h2 { margin-bottom: 22px; font-size: 30px; }.session-section-live { color: white; background: linear-gradient(125deg,var(--fluid-dark),var(--fluid)); box-shadow: var(--shadow); }.session-section-live .eyebrow { color: #f9e9c2; }.session-feature-link { color: white; font: 700 clamp(31px, 5vw, 52px) "Space Grotesk"; text-decoration: none; }
.session-list-item { padding: 20px 0; border-top: 1px solid var(--line); display: flex; gap: 24px; align-items: center; justify-content: space-between; }.session-list-item:first-child { border-top: 0; }.session-list-item time,.session-list-item > span { color: var(--muted); font-size: 12px; }.session-list-item h3 { margin-top: 5px; font-size: 22px; }.session-list-item h3 a { color: var(--ink); text-decoration: none; }
.session-ready-panel,.session-complete-panel,.transcript-panel,.attendance-panel { margin-top: 30px; padding: 34px; border: 1px solid var(--line); border-radius: 22px; background: rgba(255,255,255,.82); box-shadow: 0 12px 38px rgba(39,35,25,.045); }.session-ready-panel h2,.session-complete-panel h2 { margin-bottom: 12px; font-size: 34px; }.session-ready-panel > p,.session-complete-panel > p { color: var(--muted); }.start-session-form { margin-top: 25px; display: flex; gap: 12px; align-items: end; flex-wrap: wrap; }.start-session-form label { width: 100%; font-size: 12px; font-weight: 800; }.start-session-form input[type="number"],.start-session-form input[type="datetime-local"] { min-height: 48px; padding: 0 14px; border: 1px solid var(--line); border-radius: 10px; background: white; }.start-session-form input[type="number"] { width: 155px; }
.live-session-stage { min-height: 410px; padding: 50px 34px; border-radius: 28px; display: grid; place-items: center; align-content: center; color: white; background: radial-gradient(circle at 50% 20%, #7b5e18, var(--oxblood) 62%); box-shadow: 0 34px 80px rgba(29,26,19,.3); text-align: center; overflow: hidden; position: relative; transition: background .25s; }.live-session-stage::before { content: ""; width: 390px; height: 390px; position: absolute; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; box-shadow: 0 0 0 80px rgba(255,255,255,.02),0 0 0 160px rgba(255,255,255,.015); }.live-session-stage > * { z-index: 1; max-width: 100%; }.live-session-stage h2 { max-width: 820px; margin: 14px 0; font-size: clamp(32px, 5vw, 58px); overflow-wrap: anywhere; }.session-prompts { max-width: 760px; margin: 18px auto 10px; padding-left: 1.4em; display: grid; gap: 7px; font: 700 clamp(16px, 2.2vw, 23px) "Space Grotesk", sans-serif; text-align: left; }.live-phase { color: #f9e9c3; font: 800 11px "Space Grotesk", sans-serif; letter-spacing: .16em; text-transform: uppercase; }.session-clock { font: 700 clamp(82px, 15vw, 158px)/.95 "Space Grotesk", sans-serif; font-variant-numeric: tabular-nums; letter-spacing: -.07em; white-space: nowrap; }.total-clock { margin-top: 17px; color: #f1ebdb; font-size: 13px; }.live-session-stage.timer-amber { background: radial-gradient(circle at 50% 20%, #9a7210, #28231a 68%); }.live-session-stage.timer-red { background: radial-gradient(circle at 50% 20%, #b68612, #242017 68%); }.live-session-stage.is-paused { background: radial-gradient(circle at 50% 20%, #4e4850, #252126 68%); }
.session-controls { margin: 20px 0 40px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; background: white; }.session-controls form { margin: 0; }.session-page.is-live .session-controls { z-index: 5; top: 8px; position: sticky; box-shadow: 0 12px 32px rgba(39,35,25,.1); }
.attendance-panel .section-heading,.transcript-panel .section-heading { margin-bottom: 25px; }.attendance-panel .section-heading h2,.transcript-panel .section-heading h2 { font-size: 34px; }.attendance-list { margin: 0; padding: 0; display: grid; gap: 8px; list-style: none; }.attendance-row { min-height: 62px; padding: 12px 15px; border: 1px solid var(--line); border-radius: 12px; display: flex; align-items: center; justify-content: space-between; gap: 15px; background: white; }.attendance-row strong,.attendance-row span { display: block; }.attendance-row div { min-width: 0; }.attendance-row strong { overflow-wrap: anywhere; }.attendance-row div > span { margin-top: 3px; color: var(--muted); font-size: 12px; }.attendance-toggle { min-height: 44px; padding: 7px 14px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: white; cursor: pointer; }.attendance-toggle.is-present { border-color: #6da884; color: #24633e; background: #e9f7ee; }.queue-actions { display: flex !important; gap: 5px; }.queue-actions button { width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 9px; color: var(--ink); background: var(--paper); cursor: pointer; }.queue-actions .drag-handle { color: var(--fluid); cursor: grab; }.sr-only { width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; position: absolute; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.transcript-processing { min-height: 220px; display: grid; place-items: center; align-content: center; text-align: center; }.transcript-processing p:last-child { max-width: 460px; margin-top: 5px; color: var(--muted); }.transcript-orbit { margin-bottom: 15px; color: var(--fluid); font-size: 44px; animation: transcript-orbit 3s ease-in-out infinite; }.session-transcript { max-width: 760px; color: #25231e; white-space: normal; }.session-transcript p { margin: 0 0 18px; line-height: 1.65; }.manual-transcript { margin-top: 25px; }.manual-transcript summary { color: var(--fluid); font-weight: 800; cursor: pointer; }.manual-transcript form { margin-top: 18px; display: grid; gap: 10px; }.manual-transcript textarea { width: 100%; padding: 15px; border: 1px solid var(--line); border-radius: 12px; font: inherit; }
.session-record { margin-top: 30px; display: grid; gap: 16px; }.session-analysis-panel { padding: 40px; border: 1px solid rgba(211,156,21,.2); border-radius: 24px; background: radial-gradient(circle at 100% 0,rgba(244,215,146,.15),transparent 34%),rgba(255,255,255,.92); box-shadow: 0 18px 48px rgba(39,35,25,.07); }.session-analysis-panel .section-heading { margin-bottom: 28px; }.session-analysis-panel .section-heading h2 { font-size: 38px; }.session-markdown { max-width: 820px; color: #25231e; }.session-markdown h2 { margin: 34px 0 13px; padding: 12px 16px; border-left: 4px solid var(--fluid); border-radius: 0 12px 12px 0; color: var(--oxblood); background: var(--paper); font-size: 24px; }.session-markdown h2:first-child { margin-top: 0; }.session-markdown h3 { margin: 24px 0 10px; font-size: 19px; }.session-markdown p { margin: 9px 0; line-height: 1.68; }.session-markdown ul,.session-markdown ol { margin: 10px 0 16px; padding-left: 25px; }.session-markdown li { margin: 6px 0; line-height: 1.55; }.session-markdown blockquote { margin: 18px 0; padding: 4px 18px; border-left: 3px solid var(--coral); color: var(--muted); }.session-artifact-empty { color: var(--muted); font-style: italic; }.session-artifact-panel { border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.82); box-shadow: 0 10px 32px rgba(39,35,25,.04); overflow: hidden; }.session-artifact-panel > summary { min-height: 82px; padding: 19px 25px; display: flex; align-items: center; justify-content: space-between; gap: 18px; cursor: pointer; list-style: none; font: 800 22px "Space Grotesk",sans-serif; }.session-artifact-panel > summary::-webkit-details-marker { display: none; }.session-artifact-panel > summary small { margin-bottom: 3px; display: block; color: var(--fluid); font: 800 10px "Space Grotesk",sans-serif; letter-spacing: .13em; text-transform: uppercase; }.session-artifact-panel > summary > strong { color: var(--fluid); font-size: 26px; transition: transform .2s; }.session-artifact-panel[open] > summary > strong { transform: rotate(45deg); }.session-artifact-panel > .session-markdown,.session-artifact-panel > .session-transcript,.session-artifact-panel > .session-artifact-empty { margin: 0; padding: 5px 25px 28px; }.session-context-editor { margin-top: 30px; padding-top: 20px; border-top: 1px solid var(--line); }.session-context-editor > summary { color: var(--fluid); font-weight: 800; cursor: pointer; }.session-context-editor form { margin-top: 18px; display: grid; gap: 10px; }.session-context-editor textarea { width: 100%; padding: 15px; border: 1px solid var(--line); border-radius: 12px; background: white; font: inherit; }.session-context-editor label { margin-top: 6px; font-size: 12px; font-weight: 800; }.session-record-delete { justify-self: start; margin-top: 8px; }
.calendar-connection { margin: -30px 0 55px; padding: 28px; border: 1px solid var(--line); border-radius: 18px; background: white; }.calendar-connection h2 { margin-bottom: 10px; font-size: 28px; }.calendar-connection p { margin: 7px 0; color: var(--muted); }.calendar-connection .button-row { margin-top: 20px; }

@keyframes pulse { 50% { box-shadow: 0 0 0 10px rgba(211,156,21,0); } }
@keyframes live-signal { 70% { box-shadow: 0 0 0 22px rgba(255,255,255,0); } }
@keyframes transcript-orbit { 50% { transform: translateY(-8px) rotate(45deg); } }
@keyframes fluid-burst { 0% { opacity: 1; transform: translate(-50%,-50%) scale(.4) rotate(0); } 100% { opacity: 0; transform: translate(calc(-50% + var(--burst-x)),calc(-50% + var(--burst-y))) scale(1.2) rotate(180deg); } }
@keyframes format-line { from { opacity: 0; transform: translateX(-18px); } to { opacity: 1; transform: translateX(0); } }
@keyframes readiness-question-bounce { 50% { border-radius: 35% 65% 57% 43% / 46% 60% 40% 54%; transform: translateY(-12px) rotate(-3deg); } }
@keyframes readiness-question-open { 45% { transform: scale(1.25) rotate(-12deg); } 100% { transform: rotate(0) scale(.82); } }
@keyframes readiness-card-open { from { opacity: 0; clip-path: circle(0 at 88% 0); transform: translateY(-28px); } to { opacity: 1; clip-path: circle(150% at 88% 0); transform: none; } }
@keyframes readiness-unlock { from { opacity: 0; transform: scale(.85) rotate(-2deg); } 65% { transform: scale(1.025) rotate(1deg); } to { opacity: 1; transform: none; } }
@keyframes readiness-pop { from { opacity: 1; transform: translateY(-50%) scale(.6) rotate(0); } to { opacity: 0; transform: translate(35px,-95px) scale(1.6) rotate(50deg); } }
@keyframes readiness-confetti { from { opacity: 1; transform: translate(-50%,-50%) scale(.3) rotate(0); } to { opacity: 0; transform: translate(calc(-50% + var(--confetti-x)),calc(-50% + var(--confetti-y))) scale(1.15) rotate(var(--confetti-spin)); } }
@keyframes readiness-wiggle { 30% { transform: rotate(2deg); } 65% { transform: rotate(-1.5deg); } }
@keyframes readiness-flip { 50% { transform: perspective(500px) rotateX(18deg) scale(1.02); } }
@keyframes readiness-jump { 45% { transform: translateY(-8px) rotate(-.5deg); } }
@keyframes readiness-squish { 45% { transform: scale(1.025,.92); } }
@keyframes readiness-slide { 45% { transform: translateX(8px); } }

@media (max-width: 1050px) {
  .hero { min-height: auto; grid-template-columns: 1fr .75fr; }.hero-art { min-height: 430px; }.hero-art::before { width: 330px; height: 330px; }
  .section { padding-left: 28px; padding-right: 28px; }.how-it-works .section-heading { max-width: calc(100% - 295px); }.calendar-stage,.program-format { padding-left: 28px; padding-right: 28px; }.steps { grid-template-columns: 1fr 1fr; }.engineer-grid { grid-template-columns: repeat(3,1fr); }.cohort-strip { margin-left: 20px; margin-right: 20px; }.public-session-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .site-header { min-height: 70px; height: auto; padding: 14px 18px; flex-wrap: wrap; gap: 8px 18px; }.site-header nav { width: 100%; padding-bottom: 2px; gap: 18px; overflow-x: auto; scrollbar-width: thin; }.site-header nav a { flex: 0 0 auto; }.site-footer { flex-direction: column; gap: 9px; padding: 28px 20px; }
  .hero { padding: 50px 20px 70px; display: block; }.hero h1 { font-size: 58px; }.hero-lede { font-size: 17px; }.hero-actions { align-items: stretch; flex-direction: column; }.hero-art { min-height: 390px; margin-top: 50px; }.hero-art::before { width: 300px; height: 300px; }
  .cohort-strip { padding: 28px 20px 24px; }.countdown { grid-template-columns: 1fr 1fr; margin-top: 0; gap: 7px; }.countdown div { padding: 15px 4px 12px; }.countdown strong { font-size: clamp(58px,20vw,76px); }.countdown span { margin-top: 9px; font-size: 9px; letter-spacing: .12em; }.countdown-label { margin-top: -8px !important; font-size: 10px; }
  .section { padding: 80px 20px; }.section-heading h2 { font-size: 43px; }.how-it-works .section-heading { max-width: 100%; margin-bottom: 34px; }.steps { grid-template-columns: 1fr; }.steps article,.steps article:nth-child(even) { min-height: 220px; margin: 0; }.steps h3 { margin-top: 40px; }
  .benefits { padding: 80px 20px; grid-template-columns: 1fr; gap: 42px; }.benefit-statement h2 { font-size: 43px; }.facilitator { grid-template-columns: 90px 1fr; gap: 20px; }.portrait { font-size: 38px; }.facilitator h2 { font-size: 34px; }.facilitator p { font-size: 15px; }.calendar-stage { padding: 90px 20px 80px; }.calendar-stage::before { top: 20px; }.program-format { padding: 80px 20px; }.format-terminal { padding: 22px 16px; }.format-heading h2 { font-size: 43px; }.format-points li { padding-left: 36px; font-size: 13px; }.format-points li::before { left: 14px; }.program-format.is-running .format-play { transform: translateX(calc(100vw - 138px)) rotate(540deg); }.readiness-section { min-height: 680px; padding: 80px 20px; }.readiness-heading h2 { font-size: 50px; }.readiness-heading > p:last-child { font-size: 16px; }.readiness-reveal { margin-top: 28px; }.readiness-reveal > summary { width: 105px; height: 105px; margin: 0 auto 25px; }.readiness-reveal > summary span { font-size: 64px; }.readiness-card { padding: 20px 15px; border-radius: 22px 10px 22px 10px; }.readiness-item label { min-height: 72px; padding: 12px; gap: 11px; font-size: 13px; }.readiness-checkbox { width: 32px; height: 32px; }.readiness-unlock:not([hidden]) { align-items: stretch; flex-direction: column; }.readiness-unlock .button { width: 100%; }
  .engineer-grid { grid-template-columns: 1fr 1fr; gap: 12px; }.engineer-image { height: 160px; }.engineer-copy { min-height: 140px; padding: 15px; }.engineer-copy h4 { font-size: 18px; }.final-cta { margin: 40px 10px; padding: 80px 20px; }
  .auth-card { padding: 30px 22px; }.auth-card h1 { font-size: 39px; }.dashboard-head { display: block; }.dashboard-head .status-pill { margin-top: 12px; display: inline-block; }.dashboard-program { grid-template-columns: 1fr; }.dashboard-program h1 { font-size: 28px; }.dashboard-program .countdown-label { grid-column: auto; }.dashboard-countdown strong { font-size: 44px; }.dashboard-next-steps ol { grid-template-columns: 1fr; }.queue-position { align-items: flex-start; flex-direction: column; }.narrow-page,.dashboard-page,.admin-page { padding: 55px 20px 90px; }.membership-activation:not([hidden]) { align-items: stretch; flex-direction: column; }.membership-activation .button { width: 100%; }.inline-form { align-items: stretch; flex-direction: column; }.inline-form > * { width: 100%; }.inline-form input[type="text"] { flex: none; }.inline-form .check-row { width: auto; }.program-boundary-fields { grid-template-columns: 1fr; }.program-boundary-fields input { width: 100%; }.public-session-grid { grid-template-columns: 1fr; }.live-session-banner { padding: 90px 24px 28px; }.live-signal { top: 32px; left: 28px; }.sessions-page,.session-page { padding: 52px 20px 90px; }.session-ready-panel,.session-complete-panel,.transcript-panel,.attendance-panel,.session-section,.session-analysis-panel { padding: 24px 20px; }.session-artifact-panel > summary { padding: 17px 20px; }.session-artifact-panel > .session-markdown,.session-artifact-panel > .session-transcript,.session-artifact-panel > .session-artifact-empty { padding-right: 20px; padding-left: 20px; }.live-session-stage { min-height: 330px; padding: 35px 18px; }.session-clock { font-size: 88px; }.start-session-form { align-items: stretch; flex-direction: column; }.start-session-form input[type="number"] { width: 100%; }.session-list-item { align-items: flex-start; flex-direction: column; }.session-controls { justify-content: stretch; }.session-controls form,.session-controls .button { width: 100%; }
}
@media (max-width: 420px) { .hero h1 { font-size: 49px; }.engineer-grid { grid-template-columns: 1fr; }.engineer-image { height: 230px; }.facilitator { display: block; }.portrait { width: 100px; margin-bottom: 22px; } }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

@keyframes countdown-turn-out { from { opacity: 1; transform: rotateX(0); } to { opacity: 0; transform: rotateX(-90deg) translateY(-18%); } }
@keyframes countdown-turn-in { from { opacity: 0; transform: rotateX(90deg) translateY(18%); } to { opacity: 1; transform: rotateX(0); } }

/* Loop Labs: warm paper, gold experiment marks, black ink. */
:root {
  --ink: #181710;
  --muted: #635f4f;
  --paper: #f6f3e8;
  --cream: #eee7d1;
  --gold: #b38a19;
  --gold-dark: #70520b;
  --gold-bright: #e9bc3e;
  --fluid: var(--gold);
  --fluid-dark: var(--gold-dark);
  --oxblood: #181710;
  --coral: #d4a62d;
  --line: rgba(24, 23, 16, .19);
  --shadow: 7px 7px 0 rgba(24,23,16,.12);
  --radius: 12px;
}
body { font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background-image: linear-gradient(rgba(24,23,16,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(24,23,16,.035) 1px,transparent 1px); background-size: 36px 36px; }
h1,h2 { font-family: "Iowan Old Style", "Palatino Linotype", Georgia, serif; font-weight: 700; letter-spacing: -.055em; }
h3,h4 { font-family: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing: -.035em; }
::selection { background: var(--gold-bright); color: var(--ink); }
.eyebrow,.brand-est { font-family: ui-monospace,SFMono-Regular,Menlo,monospace; }
.eyebrow { color: var(--gold-dark); font-size: 11px; }
.site-header { min-height: 86px; height: auto; padding-top: 16px; padding-bottom: 16px; gap: 24px; }
.site-header nav { flex-wrap: wrap; justify-content: flex-end; gap: 16px; }
.brand-mark { width: 42px; height: 42px; border: 2px solid var(--ink); border-radius: 7px; display: grid; place-items: center; flex: 0 0 auto; background: var(--gold-bright); box-shadow: 3px 3px 0 var(--ink); transform: rotate(-5deg); font: 800 18px ui-monospace,monospace; }
.brand-lockup { gap: 8px; }.brand-name { white-space: nowrap; font-size: 19px; }.brand-est { font-size: 8px; letter-spacing: .06em; }
.button,input[type="submit"] { border: 1.5px solid var(--ink); border-radius: 8px; box-shadow: 3px 3px 0 var(--ink); }
.button:hover,input[type="submit"]:hover { transform: translate(-1px,-2px); box-shadow: 4px 5px 0 var(--ink); }
.button-primary,.button-small { background: var(--gold-bright); color: var(--ink); }.button-primary:hover,.button-small:hover { background: #f4ca51; box-shadow: 4px 5px 0 var(--ink); }
.button-quiet,input.button-quiet { background: #fffdf6; border-color: var(--ink); }.button-light { color: var(--ink); background: var(--gold-bright); }
.button:disabled,input:disabled { cursor: not-allowed; opacity: .6; box-shadow: none; }
.skip-link { position: absolute; left: 20px; top: -80px; z-index: 100; padding: 12px; background: var(--gold-bright); color: var(--ink); }.skip-link:focus { top: 10px; }
#page-content:focus { outline: none; }
.hero { min-height: 570px; padding-top: 50px; padding-bottom: 65px; grid-template-columns: 1.1fr 1fr; gap: 15px; }.hero h1 { font-size: clamp(52px,6.3vw,87px); }.hero h1 em { color: var(--gold-dark); }.hero-lede { max-width: 600px; font-size: 18px; }.hero-actions { flex-wrap: wrap; }.microcopy { color: var(--muted); font-size: 11px; }
.hero-art { min-height: 420px; }.hero-art::before { width: 82%; height: 76%; border: 1.5px dashed var(--gold); background: transparent; filter: none; animation: none; }.hero-mascot { width: 113%; max-width: 660px; height: auto; position: relative; z-index: 1; transform: rotate(-3deg); }.specimen-label { position: absolute; top: 10px; right: 10px; transform: rotate(3deg); padding: 7px 10px; border: 1.5px solid var(--ink); background: #fffdf6; box-shadow: 3px 3px 0 var(--gold); font: 700 9px ui-monospace,monospace; text-transform: uppercase; }.lab-receipt { position: absolute; bottom: 6px; left: 20%; z-index: 2; padding: 13px 20px; border: 1.5px solid var(--ink); border-radius: 3px; background: #fffdf6; box-shadow: 5px 5px 0 var(--gold-bright); transform: rotate(3deg); font: 12px/1.7 ui-monospace,monospace; }.lab-receipt span,.lab-receipt strong { display: block; }
.page-mascot { max-width: 1184px; margin: 14px auto 0; padding: 5px 28px; min-height: 140px; display: flex; align-items: center; gap: 24px; border-bottom: 1px dashed var(--line); }.page-mascot img { width: 200px; height: auto; object-fit: contain; }.page-mascot p { margin: 0; font-family: Georgia,serif; font-size: 23px; font-weight: 700; }.page-mascot .eyebrow { display: block; margin-bottom: 7px; }.page-mascot small { display: block; margin-top: 5px; font: 13px Inter,-apple-system,sans-serif; color: var(--muted); }.page-mascot--end { justify-content: flex-end; margin-top: 40px; margin-bottom: 25px; border-bottom: 0; border-top: 1px dashed var(--line); }.page-mascot--end img { order: 2; width: 220px; }.page-mascot--end p { text-align: right; }
.section { padding-top: 78px; padding-bottom: 78px; }.section-heading { margin-bottom: 36px; }.section-heading h2 { font-size: clamp(38px,5vw,60px); }.section-heading > p:last-child { font-size: 17px; }
.cohort-catalog { border-top: 1px solid var(--line); scroll-margin-top: 20px; }.cohort-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,320px),1fr)); gap: 24px; }.cohort-card { padding: 27px; border: 2px solid var(--ink); border-radius: 10px; background: #fffdf7; box-shadow: 6px 6px 0 var(--cream); }.cohort-card.is-selected { box-shadow: 6px 6px 0 var(--gold-bright); }.cohort-card h3 { margin-bottom: 15px; font-size: 27px; }.cohort-card > p:not(.eyebrow) { color: var(--muted); }.cohort-card .button { font-size: 12px; padding-inline: 14px; }.cohort-capacity { padding: 16px 0; border-block: 1px dashed var(--line); }.cohort-capacity strong { font: 700 30px ui-monospace,monospace; color: var(--ink); margin-right: 7px; }.cohort-capacity span { display: block; margin-top: 4px; font-size: 12px; }
.cohort-selector { padding: 22px; margin-bottom: 26px; border: 2px solid var(--ink); background: #fffdf7; border-radius: 10px; display: flex; gap: 16px; flex-wrap: wrap; align-items: end; }.cohort-selector label { display: block; margin-bottom: 6px; font-weight: 700; }.cohort-selector select { max-width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid var(--ink); border-radius: 7px; background: white; }
.subscription-panel { border-left: 5px solid var(--gold); }.subscription-status { font-weight: 700; }.subscription-panel .button-row { margin-top: 15px; }
.how-it-works .section-heading { max-width: 720px; }.steps article { border: 1.5px solid var(--ink); background: #fffdf7; box-shadow: 4px 4px 0 var(--cream); border-radius: 9px; }.steps h3 { margin-top: 35px; }.steps article:nth-child(even) { margin-top: 0; }.steps span { color: var(--gold-dark); }
.benefits,.program-format,.final-cta { background: #181710; color: #fff9e8; }.benefits { gap: 70px; }.benefit-statement p,.benefit-list p,.format-heading > p:last-child,.format-heading .eyebrow,.final-cta .eyebrow,.final-cta p { color: #d8cda9; }.benefit-statement > span { color: var(--gold-bright); }.benefit-list article { border-color: #484337; }.format-terminal { background: #242219; box-shadow: 6px 6px 0 #0a0a08; }.format-heading h2 { font-size: clamp(40px,5.5vw,66px); }.format-play { color: var(--ink); border-color: var(--gold-bright); background: var(--gold-bright); box-shadow: none; }.format-points li { color: #f2e8c9; }.format-launch-track { background: repeating-linear-gradient(90deg,#73602a 0 16px,transparent 16px 24px); }.format-progress { border-color: #73602a; }.format-handshake { background: var(--gold-bright); color: var(--ink); }.format-points li::before { color: var(--gold-bright); }
.readiness-section { background-color: #efe2b8; background-image: radial-gradient(circle at 82% 18%,rgba(179,138,25,.16),transparent 25%),radial-gradient(circle at 11% 75%,rgba(233,188,62,.2),transparent 28%); }.readiness-card { border: 2px solid var(--ink); box-shadow: 7px 7px 0 var(--gold); }.readiness-heading h2 { font-size: clamp(40px,5.5vw,66px); }
.calendar-stage { background-color: #eee7d1; background-image: linear-gradient(rgba(24,23,16,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(24,23,16,.04) 1px,transparent 1px); }.calendar-stage::before { content: "EXPERIMENT / COMPARE / REPEAT"; font-size: clamp(12px,2.7vw,32px); color: rgba(24,23,16,.13); }.live-session-banner { color: #fff9e8; background: #181710; border: 2px solid var(--gold-bright); box-shadow: 5px 5px 0 var(--gold); }.public-session-grid article { border: 1.5px solid var(--ink); box-shadow: 4px 4px 0 var(--gold-bright); }
.cohort-strip { background: #181710; border: 1.5px solid var(--ink); box-shadow: 6px 6px 0 var(--gold); }.cohort-strip .eyebrow,.cohort-strip p { color: #d8cda9; }.countdown div { border-color: #6e5c2f; background: #242219; box-shadow: inset 0 -15px 25px rgba(0,0,0,.18); }.countdown strong::before,.countdown strong::after { color: #ebc657; text-shadow: none; }.countdown span,.countdown-label { color: #d8cda9 !important; }
.engineer-card { border: 1.5px solid var(--ink); border-radius: 12px; box-shadow: 5px 5px 0 var(--cream); }.engineer-image { background: #e9e1ca; }.engineer-copy { background: #fffdf7; }.private-label { color: #756329; }.shine-copy,.empty-group { color: var(--muted); }.engineer-copy h4 { overflow-wrap: anywhere; }.engineer-image.pattern-0,.engineer-image.pattern-1,.engineer-image.pattern-2,.engineer-image.pattern-3,.engineer-image.pattern-4,.engineer-image.pattern-5,.engineer-image.pattern-6,.engineer-image.pattern-7 { background-color: #eee5c9; background-image: radial-gradient(circle,#b6a66d 1px,transparent 1px); background-size: 16px 16px; }
.fluid-specimen { --fluid-hue: 43; --fluid-level: 61%; --fluid-tilt: -10deg; --fluid-speed: 5s; --fluid-delay: -2s; position: relative; width: 100%; height: 100%; display: grid; place-items: center; }
.specimen-vessel { width: 70px; height: 140px; border: 3px solid var(--ink); border-top-width: 7px; border-radius: 8px 8px 35px 35px; background: rgba(255,253,242,.72); position: relative; display: block; overflow: hidden; transform: rotate(var(--fluid-tilt)); animation: fluid-wobble var(--fluid-speed) ease-in-out var(--fluid-delay) infinite; box-shadow: 5px 6px 0 rgba(24,23,16,.12); }
.specimen-vessel::after { content: ""; position: absolute; left: 9px; top: 14px; width: 7px; height: 87px; border-radius: 8px; background: rgba(255,255,255,.65); }
.specimen-liquid { position: absolute; left: -35%; bottom: -5%; width: 170%; height: var(--fluid-level); border-radius: 42% 58% 0 0 / 20% 25% 0 0; background: hsl(var(--fluid-hue) 77% 48%); border-top: 3px solid var(--ink); animation: fluid-slosh 3.2s ease-in-out var(--fluid-delay) infinite alternate; }
.specimen-vessel i { width: 12px; height: 12px; border: 2px solid var(--ink); border-radius: 50%; position: absolute; z-index: 1; bottom: 9px; left: 22%; background: hsl(var(--fluid-hue) 85% 78%); animation: fluid-bubble var(--fluid-speed) linear var(--fluid-delay) infinite; }.specimen-vessel i:nth-of-type(2) { width: 8px; height: 8px; left: 62%; animation-delay: -1s; }.specimen-vessel i:nth-of-type(3) { width: 6px; height: 6px; left: 45%; animation-delay: -3s; }
.specimen-splash { width: 92px; height: 18px; position: absolute; bottom: 14%; left: calc(50% - 40px); border: 2px solid var(--ink); border-radius: 63% 37% 68% 32%; background: hsl(var(--fluid-hue) 77% 48%); transform: rotate(-4deg); }.specimen-number { position: absolute; bottom: 9px; right: 10px; padding: 2px 5px; background: #fffdf7; border: 1px solid var(--ink); font: 9px ui-monospace,monospace; transform: rotate(-3deg); }
.fluid-specimen[data-effect="orbit"] .specimen-vessel { animation-name: fluid-orbit; }.fluid-specimen[data-effect="stretch"] .specimen-vessel { animation-name: fluid-stretch; }.fluid-specimen[data-effect="sway"] .specimen-vessel { animation-name: fluid-sway; }
.fluid-burst-drop { width: 11px; height: 16px; position: absolute; z-index: 8; left: 50%; top: 50%; border: 1.5px solid var(--ink); border-radius: 65% 35% 55% 45%; background: var(--gold-bright); pointer-events: none; animation: fluid-burst 580ms cubic-bezier(.12,.7,.35,1) var(--burst-delay) forwards; }
@keyframes fluid-wobble { 0%,100% { transform: rotate(var(--fluid-tilt)); } 50% { transform: rotate(calc(var(--fluid-tilt) * -1)) translateY(-7px); } }
@keyframes fluid-orbit { 0%,100% { transform: rotate(var(--fluid-tilt)) translate(0,0); } 50% { transform: rotate(calc(var(--fluid-tilt) + 14deg)) translate(7px,-10px); } }
@keyframes fluid-stretch { 0%,100% { transform: rotate(var(--fluid-tilt)) scale(1); } 50% { transform: rotate(var(--fluid-tilt)) scale(.93,1.05); } }
@keyframes fluid-sway { 0%,100% { transform: rotate(var(--fluid-tilt)) translateX(-5px); } 50% { transform: rotate(calc(var(--fluid-tilt) - 16deg)) translateX(8px); } }
@keyframes fluid-slosh { from { transform: rotate(-7deg); border-radius: 40% 60% 0 0 / 18% 27% 0 0; } to { transform: rotate(7deg); border-radius: 65% 35% 0 0 / 30% 14% 0 0; } }
@keyframes fluid-bubble { 0% { transform: translateY(0) scale(.4); opacity: 0; } 20% { opacity: .9; } 90%,100% { transform: translateY(-115px) scale(1.15); opacity: 0; } }
.auth-card,.action-panel,.session-section,.session-analysis-panel,.admin-engineer-card,.confirmation-card { border: 1.5px solid var(--ink); border-radius: 12px; background-color: #fffdf7; box-shadow: 5px 5px 0 var(--cream); }.auth-card h1 { font-size: clamp(35px,5vw,50px); }.auth-card { margin-top: 15px; }.auth-page { min-height: auto; }.admin-program { background: #242219; }.admin-program h2 { color: #fff9e8; }.admin-program .button-primary { color: var(--ink); }.admin-program label,.program-time-zone { color: #e4d6a9; }.info-tip p { background: #302b1e; }
.session-section-live { background: #242219; }.session-section-live .eyebrow,.live-phase { color: #e9bc3e; }.live-session-stage { background: radial-gradient(circle at 50% 20%,#50421b,#181710 62%); }.live-session-stage.timer-amber { background: radial-gradient(circle at 50% 20%,#8b6511,#352708 68%); }.live-session-stage.timer-red { background: radial-gradient(circle at 50% 20%,#9d2434,#3d1018 68%); }.session-transcript,.session-markdown { color: var(--ink); }
.text-danger { color: #a52736; }.flash.alert { color: #8c2032; background: #fff1ec; border-color: #a52736; }.membership-switch input:checked + .membership-switch-control { background: var(--gold); border-color: var(--gold-dark); }.confirmation-fluid { border-radius: 52% 48% 65% 35%; background: var(--gold-bright); color: var(--ink); transform: rotate(8deg); }.confirmation-fluid > span { transform: none; }
.final-cta { max-width: 1184px; border: 2px solid var(--ink); border-radius: 13px; box-shadow: 8px 8px 0 var(--gold); padding: 70px 25px; }.final-cta h2 { font-size: clamp(42px,6vw,76px); }.site-footer { align-items: flex-start; border-top: 2px solid var(--ink); }.site-footer .brand-est { color: var(--muted); }
@media (max-width: 1100px) { .hero { grid-template-columns: 1fr 1fr; }.section { padding-left: 28px; padding-right: 28px; }.hero-art { min-height: 330px; }.hero-mascot { width: 105%; }.hero h1 { font-size: 65px; } }
@media (max-width: 760px) { .site-header { align-items: flex-start; flex-direction: column; gap: 18px; }.site-header nav { justify-content: flex-start; gap: 14px; font-size: 12px; }.hero { grid-template-columns: 1fr; padding-top: 35px; }.hero h1 { max-width: 620px; font-size: clamp(49px,10vw,70px); }.hero-art { max-width: 500px; min-height: 340px; width: 100%; margin: 10px auto 20px; }.hero-mascot { width: 100%; }.specimen-label { right: 0; }.lab-receipt { left: 24%; font-size: 10px; }.page-mascot { gap: 10px; min-height: 105px; padding-inline: 20px; }.page-mascot img,.page-mascot--end img { width: 135px; }.page-mascot p { font-size: 19px; }.page-mascot small { font-size: 11px; }.page-mascot .eyebrow { font-size: 8px; }.benefits { gap: 30px; grid-template-columns: 1fr; }.how-it-works .section-heading { max-width: 100%; }.steps { grid-template-columns: 1fr 1fr; }.steps h3 { margin-top: 23px; }.steps article { padding: 22px; }.cohort-selector { align-items: stretch; }.site-footer { flex-wrap: wrap; }.footer-legal { width: 100%; } }
@media (max-width: 420px) { .hero h1 { font-size: 48px; }.steps { grid-template-columns: 1fr; }.hero-art { min-height: 290px; }.page-mascot img,.page-mascot--end img { width: 110px; }.page-mascot p { font-size: 16px; }.page-mascot small { max-width: 190px; line-height: 1.45; }.specimen-vessel { height: 145px; } }
@media (prefers-reduced-motion: reduce) { .specimen-vessel,.specimen-liquid,.specimen-vessel i,.fluid-burst-drop { animation: none !important; }.specimen-vessel i { bottom: 27%; }.specimen-vessel i:nth-of-type(2) { bottom: 42%; }.specimen-vessel i:nth-of-type(3) { bottom: 17%; } }

.create-cohort { margin-bottom: 30px; }.create-cohort summary { cursor: pointer; font-weight: 700; }.create-cohort .stacked-form { margin-top: 20px; }.subscription-review { padding: 6px 9px; border: 1px solid #9a6710; border-radius: 5px; background: #fff0c2; color: #624209; }
