/* A visual introduction, with specialist records one step away. */
.front-door {display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,5vw,90px);align-items:center;padding:40px 0 58px;}
.front-door-copy h1 {font-size:clamp(48px,5.3vw,86px);line-height:1.03;letter-spacing:-.065em;margin:22px 0 24px;color:#203d32;font-weight:650;}
.front-door em,.lane-heading em {font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em;color:#496b5d;}
.front-door-copy>p {font-size:18px;line-height:1.65;max-width:420px;color:#53645d;margin:0 0 26px;}
.front-door-byline {display:block;font-size:12px;color:#607168;margin-top:24px;}
.front-stage {background:linear-gradient(145deg,#dae6dc,#eff2e6 60%,#e1e5df);border:1px solid #d0ddcf;border-radius:30px;padding:28px;box-shadow:0 28px 70px -45px #294b3f80;overflow:hidden;}
.front-stage-label {display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:.09em;color:#3d5b4c;}
.front-stage-label span:last-child {letter-spacing:0;}
.front-stage h2 {font-size:clamp(35px,3.7vw,57px);line-height:1.03;letter-spacing:-.05em;color:#244536;margin:30px 0 24px;}
.front-demo {border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;min-width:0;}
.front-demo input {position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;}
.front-demo>label {display:block;text-align:center;border-radius:30px;padding:11px 5px;font-size:12px;color:#314d3d;cursor:pointer;border:1px solid transparent;transition:background .18s ease;}
.front-demo input:checked+label {background:#294d3d;color:white;}
.front-demo input:focus-visible+label {outline:3px solid #354fd0;outline-offset:3px;}
.demo-panel {display:none;grid-column:1/-1;background:#fffdf8;border-radius:18px;padding:24px;margin-top:8px;min-height:254px;box-shadow:0 8px 20px #314b3510;color:#254232;}
#demo-need:checked~.demo-need,#demo-options:checked~.demo-options,#demo-brief:checked~.demo-brief {display:block;animation:panel-enter .2s ease-out;}
.demo-kicker {font-size:9px;letter-spacing:.09em;color:#526654;}
.demo-panel>strong {display:block;font-size:22px;line-height:1.25;letter-spacing:-.04em;margin:14px 0 18px;}
.demo-line {display:flex;justify-content:space-between;gap:15px;border-top:1px solid #e1e5db;padding:12px 0;font-size:12px;}
.demo-line>span {color:#677363;}
.demo-panel p {font-size:11px;line-height:1.6;color:#61705f;margin:13px 0 0;}
.demo-options-grid {display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.demo-options-grid>div {background:#f0f3e9;border-radius:9px;padding:13px;display:grid;gap:9px;font-size:11px;}
.demo-options-grid b {font-size:13px;}
.front-try {display:flex;justify-content:space-between;padding:21px 2px 11px;font-weight:700;color:#294d3d;font-size:14px;text-decoration:none;}
.front-stage>small {font-size:10px;color:#526653;}
.front-release {display:flex;align-items:center;gap:20px;padding:23px 0;border-block:1px solid #d5ded4;text-decoration:none;color:#294538;flex-wrap:wrap;}
.front-release>span:first-child {font-size:9px;letter-spacing:.08em;}
.front-release>strong {font-size:19px;letter-spacing:-.04em;}
.front-release>span:not(:first-child) {font-size:12px;color:#63705f;}
.front-release>b {font-size:12px;margin-left:auto;}
.expert-lanes {padding:76px 0 50px;}
.lane-heading h2 {font-size:clamp(34px,3.7vw,52px);letter-spacing:-.055em;line-height:1.12;margin:20px 0;color:#294538;}
.lane-heading>p {font-size:15px;color:#647063;}
.expert-lane-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:30px;align-items:start;}
.expert-lane {background:#fff;border:1px solid #dde3d9;border-radius:18px;padding:24px 20px;min-width:0;}
.lane-number {font-size:11px;color:#647664;}
.expert-lane h3 {font-size:24px;line-height:1.15;letter-spacing:-.045em;margin:26px 0 16px;min-height:55px;color:#254536;}
.expert-lane>p {font-size:13px;line-height:1.7;color:#657363;min-height:88px;}
.lane-primary {display:block;font-size:13px;font-weight:700;color:#314fd1;text-decoration:none;padding:12px 0 24px;}
.expert-lane details {border-top:1px solid #e1e6db;}
.expert-lane summary {display:flex;justify-content:space-between;gap:8px;cursor:pointer;padding-top:18px;font-size:12px;color:#42583d;list-style:none;}
.expert-lane details[open] summary span {transform:rotate(45deg);}
.expert-lane nav {display:grid;padding-top:15px;gap:4px;}
.expert-lane nav a {padding:10px 0;font-size:12px;color:#314d3d;line-height:1.4;}
.front-people {display:grid;grid-template-columns:1.2fr 1fr;gap:40px;padding:35px 0 65px;border-bottom:1px solid #d5ded4;margin-bottom:40px;}
.front-founder {display:flex;align-items:center;gap:25px;}
.front-founder>img {width:104px;height:128px;object-fit:cover;border-radius:15px;}
.front-founder h2 {font-size:27px;letter-spacing:-.045em;line-height:1.2;margin:12px 0;}
.front-founder p {font-size:13px;line-height:1.7;color:#637160;}
.front-founder a {font-size:12px;color:#314fd1;}
.front-contributors {display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.front-contributors>a {display:grid;align-content:start;text-decoration:none;color:#294538;}
.front-contributors img,.portrait-placeholder {width:100%;height:165px;object-fit:cover;object-position:center 25%;border-radius:13px;background:#dfe5d9;}
.front-contributors strong {font-size:12px;margin-top:10px;}
.front-contributors small {font-size:10px;color:#62735e;margin-top:5px;}
.front-record-desk .working-desk {max-width:none;margin:20px 0 35px;}
@keyframes panel-enter {from {opacity:.4;transform:translateY(4px)} to {opacity:1;transform:translateY(0)}}
@media(min-width:1100px) {.front-door {min-height:660px;}}
@media(max-width:1200px) {.expert-lane-grid {grid-template-columns:repeat(2,minmax(0,1fr));}.front-people {grid-template-columns:1fr;}.front-contributors {max-width:360px;}.front-door {gap:25px;}.front-stage {padding:22px;}.front-stage-label {font-size:8px;}}
@media(max-width:760px) {.front-door {grid-template-columns:1fr;padding:26px 0 35px;}.front-door-copy h1 {font-size:58px;}.front-door-copy>p {font-size:16px;}.front-stage {padding:24px;}.front-stage h2 {font-size:45px;}.front-release {gap:12px;}.front-release>span:not(:first-child) {flex-basis:100%;}.expert-lanes {padding-top:48px;}.expert-lane-grid {grid-template-columns:1fr;}.expert-lane h3,.expert-lane>p {min-height:0;}.front-founder {align-items:start;}.front-founder>img {width:75px;height:95px;}.front-people {gap:25px;}.front-door .public-actions {flex-wrap:wrap;}}
@media(prefers-reduced-motion:reduce) {.front-demo>label {transition:none;}#demo-need:checked~.demo-need,#demo-options:checked~.demo-options,#demo-brief:checked~.demo-brief {animation:none;}}
