.discovery-page { background:#fbfaf6; color:#181a18; }
.discovery-page .topbar { position:sticky; top:0; z-index:3; background:rgba(251,250,246,.96); }
.discovery-hero { min-height:560px; padding:92px clamp(28px,5vw,72px) 58px; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr); gap:60px; border-bottom:1px solid #dedbd1; }
.discovery-hero h1,.discovery-section h2,.printing-banner h2 { margin:0; font-size:clamp(58px,8vw,128px); line-height:.82; letter-spacing:-.075em; }
.discovery-hero h1 em,.printing-banner h2 em { font-family:Georgia,serif; font-weight:400; letter-spacing:-.09em; }
.discovery-hero .intro { max-width:620px; margin:36px 0 0; font-size:25px; line-height:1.34; color:#585b55; }
.discovery-actions { display:flex; gap:14px; margin-top:32px; }
.discovery-actions .primary-button,.discovery-actions .secondary-button,.printing-banner .primary-button { text-decoration:none; display:inline-flex; align-items:center; gap:28px; }
.discovery-hero-side { align-self:end; border-top:3px solid #1c1e1b; }
.discovery-hero-side h2 { font-size:32px; letter-spacing:-.04em; margin:20px 0 18px; }
.discovery-hero-side a { display:flex; align-items:center; gap:18px; padding:18px 0; border-top:1px solid #dedbd1; color:#1c1e1b; text-decoration:none; font-size:18px; }
.discovery-hero-side a b { margin-left:auto; color:#315842; }
.discovery-hero-side a span,.discovery-card>span { color:#85867f; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:13px; letter-spacing:.12em; }
.discovery-section { padding:72px clamp(28px,5vw,72px); border-bottom:1px solid #dedbd1; }
.section-heading { max-width:680px; margin-bottom:38px; }
.section-heading h2 { font-size:60px; margin-top:12px; }
.section-heading>p:last-child { margin:18px 0 0; font-size:21px; line-height:1.38; color:#62635e; }
.discovery-card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-left:1px solid #dedbd1; }
.discovery-card { min-height:300px; padding:26px; text-align:left; border:1px solid #dedbd1; border-left:0; background:#fbfaf6; color:#181a18; cursor:pointer; transition:background .18s ease; }
.discovery-card:hover { background:#edf2ee; }
.discovery-card h3 { margin:56px 0 12px; font-size:29px; letter-spacing:-.045em; }
.discovery-card p { min-height:66px; margin:0; color:#62635e; font-size:17px; line-height:1.35; }
.discovery-card b { display:block; margin-top:26px; color:#315842; font-size:15px; }
.industry-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.industry-card { min-height:242px; }
.industry-card h3 { margin-top:35px; }
.finder-section { display:grid; grid-template-columns:minmax(0,.75fr) minmax(420px,1.25fr); gap:80px; align-items:start; }
.finder-panel { border-top:3px solid #1c1e1b; padding-top:20px; min-height:330px; }
.finder-progress { display:flex; align-items:center; gap:16px; color:#85867f; font:13px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.11em; }
.finder-progress i { width:190px; height:4px; background:#e0ded5; position:relative; overflow:hidden; }
.finder-progress i:after { content:""; position:absolute; inset:0 auto 0 0; width:var(--progress); background:#315842; }
.finder-panel h3 { margin:36px 0 24px; font-size:34px; letter-spacing:-.045em; }
.finder-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.finder-options button { padding:20px; display:flex; justify-content:space-between; background:#fbfaf6; border:1px solid #d7d5cc; font-size:18px; text-align:left; cursor:pointer; }
.finder-options button:hover { color:#fff; background:#315842; border-color:#315842; }
.finder-back { margin-top:24px; border:0; background:transparent; padding:0; color:#315842; font-size:15px; text-decoration:underline; cursor:pointer; }
.finder-result { background:#edf2ee; padding:34px; border-left:7px solid #315842; }
.finder-result h3 { margin:14px 0; }
.finder-result p { color:#4f554d; font-size:19px; line-height:1.45; }
.finder-result-actions { display:flex; gap:12px; margin:28px 0 15px; }
.finder-result small { color:#72736d; }
.printing-banner { padding:80px clamp(28px,5vw,72px); background:#1d2f26; color:#fbfaf6; display:grid; grid-template-columns:.85fr 1.35fr .6fr; gap:40px; align-items:end; }
.printing-banner .section-number { color:#c7d8c9; }
.printing-banner h2 { font-size:68px; }
.printing-banner p:not(.section-number) { max-width:520px; color:#d9dfd9; font-size:19px; line-height:1.45; }
.printing-banner .primary-button { justify-content:center; background:#fbfaf6; color:#264d38; }
.journey-section { min-height:calc(100vh - 86px); padding-top:88px; }
.back-link { display:inline-block; margin-bottom:32px; color:#315842; font-weight:700; text-decoration:none; border-bottom:1px solid currentColor; }
.empty-route { border:1px solid #dedbd1; padding:34px; background:#edf2ee; }
.model-config { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr); border-top:3px solid #1c1e1b; margin-top:46px; }
.model-config>div,.model-config aside { padding:34px 0; }
.model-config aside { padding-left:42px; border-left:1px solid #dedbd1; }
.model-config aside h3 { font-family:Georgia,serif; font-size:36px; margin:10px 0; line-height:1; }
.config-group { padding:0 0 26px; }.config-group h3 { font-size:18px; margin:8px 0 14px; }
.config-options { display:flex; flex-wrap:wrap; gap:10px; }
.config-options button { appearance:none; background:#fbfaf6; border:1px solid #dedbd1; padding:14px 16px; font-family:inherit; font-size:15px; text-align:left; cursor:pointer; }
.config-options button:hover,.config-options button.selected { border-color:#315842; background:#edf2ee; }
.config-options small { display:block; color:#315842; margin-top:5px; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.configuration-note { color:#62635e; border-top:1px solid #dedbd1; padding-top:20px; }
@media (max-width:760px) { .model-config { grid-template-columns:1fr; } .model-config aside { border-left:0; border-top:1px solid #dedbd1; padding-left:0; } }
@media (max-width:900px) { .discovery-hero,.finder-section,.printing-banner { grid-template-columns:1fr; gap:34px; } .discovery-card-grid,.industry-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .discovery-hero { padding-top:58px; } }
@media (max-width:560px) { .discovery-card-grid,.industry-grid,.finder-options { grid-template-columns:1fr; } .discovery-hero h1 { font-size:70px; } .discovery-hero .intro { font-size:20px; } .discovery-actions,.finder-result-actions { flex-direction:column; align-items:start; } }
