@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{--red:#b21917;--red-bright:#e85250;--red-soft:#fff0ef;--ink:#171717;--muted:#686868;--paper:#fff;--surface:#f6f5f3;--line:#dedbd7;--white:#fff;--shadow:0 24px 70px rgba(22,18,17,.12);--radius:22px;--max:1180px;--header:76px;color-scheme:light}
html.dark{--ink:#f7f4f2;--muted:#bcb6b2;--paper:#121212;--surface:#1b1a1a;--line:#34302e;--red-soft:#2d1717;--shadow:0 24px 70px rgba(0,0,0,.36);color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img,video{max-width:100%}button,input,textarea,select{font:inherit}.shell{width:min(var(--max),calc(100% - 2rem));margin:auto}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--ink);color:var(--paper);padding:.7rem 1rem;border-radius:10px}.skip-link:focus{top:1rem}
.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(18px)}.nav{min-height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.75rem;font-weight:900;letter-spacing:-.03em;min-width:0}.brand-logo{width:118px;height:34px;object-fit:contain;object-position:left}.dark .brand-logo{filter:invert(1)}.brand-fallback{display:none;align-items:baseline;gap:.35rem}.brand-logo[hidden]+.brand-fallback,.brand:not(:has(.brand-logo)) .brand-fallback{display:inline-flex}.brand-fallback b{color:var(--red);font-size:1.5rem}.brand-fallback small{font-weight:700;color:var(--muted);letter-spacing:0}.nav-links{display:flex;align-items:center;gap:.25rem}.nav-links a,.nav-links span{padding:.55rem .7rem;border-radius:10px;font-size:.88rem;font-weight:700}.nav-links a:hover,.nav-links a[aria-current=page]{background:var(--red-soft);color:var(--red)}.nav-links .is-scheduled{color:var(--muted);opacity:.56}.nav-actions{display:flex;align-items:center;gap:.45rem}.icon-button{width:42px;height:42px;flex:0 0 42px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);cursor:pointer}.icon-button:hover{border-color:var(--red);color:var(--red)}
.hero{position:relative;overflow:hidden;padding:clamp(4rem,8vw,7.5rem) 0 5rem;background:var(--surface)}.hero:before{content:"";position:absolute;width:440px;height:440px;right:-140px;top:-180px;border:1px solid color-mix(in srgb,var(--red) 30%,transparent);border-radius:44% 56% 68% 32%;transform:rotate(22deg)}.hero:after{content:"";position:absolute;width:170px;height:170px;right:15%;bottom:-110px;background:var(--red);border-radius:28px;transform:rotate(38deg);opacity:.12}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.6fr);gap:clamp(2rem,6vw,5rem);align-items:center}.eyebrow,.tag{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.4rem .78rem;background:var(--red-soft);color:var(--red);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.eyebrow:before,.tag:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}h1,h2,h3{line-height:1.08;margin:0 0 .85rem;letter-spacing:-.04em}h1{font-size:clamp(3rem,7.5vw,6.4rem);max-width:900px}h2{font-size:clamp(2rem,4vw,3.5rem)}h3{font-size:1.25rem}.lead{font-size:clamp(1.05rem,2vw,1.3rem);color:var(--muted);max-width:720px}.accent-word{color:var(--red)}
.date-card,.card,.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.date-card{padding:1.7rem;border-top:5px solid var(--red)}.date-card strong{display:block;font-size:1.65rem;line-height:1.2;margin:.4rem 0}.date-card span,.muted{color:var(--muted)}.metric{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:center;padding:.8rem 0;border-bottom:1px solid var(--line)}.metric:last-child{border:0}.metric b{font-size:1.4rem;color:var(--red)}
.actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.5rem}.button,button.action{display:inline-flex;justify-content:center;align-items:center;gap:.45rem;max-width:100%;border:1px solid transparent;border-radius:12px;padding:.82rem 1.05rem;font-weight:800;cursor:pointer;background:var(--red);color:#fff;white-space:normal;text-align:center}.button:hover,button.action:hover{background:#8f1412;transform:translateY(-1px)}.button.secondary,button.action.secondary{background:var(--paper);color:var(--ink);border-color:var(--line)}.button.secondary:hover,button.action.secondary:hover{border-color:var(--red);color:var(--red)}button.danger{color:var(--red)}
main section{padding:clamp(3.5rem,7vw,6.5rem) 0}.section-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,.55fr);gap:2rem;align-items:end;margin-bottom:2.2rem}.section-head p{margin:0;color:var(--muted)}.grid{display:grid;gap:1rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card,.panel{padding:1.45rem}.card{position:relative;overflow:hidden;transition:transform .2s ease,border-color .2s ease}.card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--red) 45%,var(--line))}.card-icon{width:54px;height:54px;object-fit:contain;margin-bottom:1rem}.card-number{font-size:3.4rem;line-height:1;color:var(--red);font-weight:900;letter-spacing:-.07em}.notice{border-left:4px solid var(--red);background:var(--red-soft);border-radius:12px;padding:1rem 1.2rem}
.journey{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:.8rem;min-height:440px}.journey-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:calc(165px + var(--step)*42px);padding:1.1rem;background:var(--paper);border:1px solid var(--line);border-bottom:7px solid var(--red);border-radius:18px 18px 8px 8px;box-shadow:var(--shadow);transition:.22s ease}.journey-card[data-available=true]:hover{transform:translateY(-8px)}.journey-card .status{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--muted)}.journey-card[data-available=true] .status{color:var(--red)}.journey-card h3{font-size:1.05rem;margin-top:.8rem}.journey-card time{font-size:.78rem;color:var(--muted)}.journey-card .session-link{position:absolute;inset:0;border-radius:inherit}.journey-card .session-link:focus-visible{outline:3px solid var(--red);outline-offset:4px}.journey-arrow{margin-top:1.8rem;height:12px;background:linear-gradient(90deg,var(--red),var(--red-bright));clip-path:polygon(0 30%,94% 30%,94% 0,100% 50%,94% 100%,94% 70%,0 70%)}
.agenda{display:grid;gap:.25rem}.agenda div{display:grid;grid-template-columns:92px 1fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.agenda strong{color:var(--red)}.steps{counter-reset:step;display:grid;gap:.8rem}.step{counter-increment:step;display:grid;grid-template-columns:48px 1fr;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.step:before{content:counter(step);display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--ink);color:var(--paper);font-weight:900}
.workspace{background:var(--surface)}.workspace-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,.4fr);gap:1rem;align-items:start}.workspace-form{padding:1.5rem}.workspace-tools{position:sticky;top:calc(var(--header) + 1rem)}label{display:block;font-weight:800;margin-bottom:.35rem}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:12px;padding:.82rem;background:var(--paper);color:var(--ink)}textarea{min-height:120px;resize:vertical}.field{margin-bottom:1rem}.saved{display:inline-block;color:var(--red);font-size:.78rem;font-weight:800;opacity:0;transition:.2s}.saved.show{opacity:1}.prompt-box{padding:1.2rem;border-radius:16px;background:#171717;color:#fff;white-space:pre-wrap;font:500 .9rem/1.6 ui-monospace,Consolas,monospace}.resource-card{display:flex;flex-direction:column;min-height:190px}.resource-card .button{margin-top:auto;align-self:flex-start}.video-frame{overflow:hidden;border-radius:var(--radius);background:#000;box-shadow:var(--shadow)}.video-frame video{width:100%;display:block;max-height:620px}.footer{padding:2.4rem 0;background:#111;color:#eee}.footer-row{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.footer a{text-decoration:underline}.session-footer-nav{display:flex;gap:.6rem;flex-wrap:wrap}.only-print{display:none}
@media(max-width:920px){.hero-grid,.section-head,.workspace-grid{grid-template-columns:1fr}.journey{grid-template-columns:repeat(2,1fr);align-items:stretch;min-height:0}.journey-card{min-height:210px!important}.workspace-tools{position:static}.nav-links{display:none}}
@media(max-width:680px){.grid.two,.grid.three{grid-template-columns:1fr}.journey{grid-template-columns:1fr}.journey-card{min-height:180px!important}.hero{padding-top:3.5rem}.brand-logo{width:92px}.nav-actions .button{display:none}.date-card{box-shadow:none}.hero .actions{flex-direction:column;align-items:stretch}.hero .actions .button{width:100%}h1{font-size:3rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.site-header,.footer,.actions,.workspace-tools,.no-print{display:none!important}.only-print{display:block}body{background:#fff;color:#111}.hero,main section{padding:1rem 0}.panel,.card,.date-card{box-shadow:none;break-inside:avoid}.workspace-grid{display:block}.workspace{background:#fff}.shell{width:100%}}
