/* A personal story in six chapters. Shared chrome, varied compositions. */
.scene-site { --chrome-ink:#f1eee6; --chrome-muted:#b6bbaf; --chrome-line:#ffffff24; --chrome-accent:#ff997b; }
.scene-site[data-tone] { --chrome-ink:#f1eee6; --chrome-muted:#b6bbaf; --chrome-line:#ffffff24; --chrome-accent:#ff997b; }
.journey-scene { --surface:#10110f; --ink:#f1eee6; --subtle:#b6bbaf; --accent:#ff997b; --grid-line:#ffffff04; }
.scene-curemd { --surface:#151b18; --accent:#bdd0b1; }
.scene-insurify { --surface:#1c1815; --accent:#ffb899; }
.scene-ai { --surface:#131b20; --accent:#b0d7e5; }
.scene-outside { --surface:#151814; --accent:#d0d7b7; }
.scene-about { --surface:#10110f; }
.intro-statement { max-width:470px; font-size:clamp(16px,1.4vw,21px); line-height:1.6; }
.intro-afterthought { display:block; margin-top:8px; color:#f1eee6; }
.journey-scene .scene-inner { gap:30px; }
.chapter-heading { width:100%; }
.chapter-heading .scene-kicker { display:flex; justify-content:space-between; gap:15px; color:var(--accent); font-size:10px; letter-spacing:1px; }
.chapter-heading .scene-kicker > span { color:var(--subtle); letter-spacing:0; text-transform:none; text-align:right; }
.chapter-title { font:750 clamp(40px,4.8vw,74px)/1.03 var(--font); letter-spacing:-.055em; margin:0 0 24px; }
.chapter-title > span, .closing-title > span { display:block; }
.chapter-lead { font-size:clamp(17px,1.5vw,22px); line-height:1.55; max-width:570px; }
.curemd-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(30px,6vw,90px); align-items:center; }
.early-work { display:grid; grid-template-columns:28px 1fr; gap:12px; border-top:1px solid #ffffff20; margin-top:24px; padding-top:20px; }
.small-index { font:10px var(--mono); color:var(--accent); padding-top:4px; }
.early-work h3 { font-size:17px; font-weight:550; margin:0 0 7px; }
.early-work p { font-size:14px; line-height:1.7; max-width:450px; }
.rule-workbench { background:#101510; border:1px solid #59664e; box-shadow:12px 12px 0 #05080533; min-width:0; }
.workbench-top { display:flex; align-items:center; gap:10px; padding:14px 22px; border-bottom:1px solid #ffffff24; font:9px var(--mono); color:#c2d4b6; letter-spacing:1px; }
.workbench-top > span:last-child { margin-left:auto; color:#b6bbaf; letter-spacing:0; }
.live-dot { width:6px;height:6px;background:#bdd0b1;border-radius:50%;box-shadow:0 0 10px #bdd0b144; }
.workbench-body { padding:22px; }
.workbench-body h3 { font-size:21px; letter-spacing:-.03em; margin:0 0 8px; }
.artifact-caption { font:10px/1.6 var(--mono); color:#b6bbaf; }
.sample-record { display:flex;justify-content:space-between;gap:18px;padding:14px 0;margin-top:10px;border-block:1px solid #ffffff18; font:10px/1.7 var(--mono);color:#b6bbaf; }
.sample-record code { color:#d0dcc7;text-align:right;font:inherit; }
.rule-heading { font:11px/1.5 var(--mono); margin:18px 0 10px; }
.rule-condition { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,1fr) 28px;gap:6px;margin:8px 0;align-items:center; }
.rule-condition select,.rule-condition input { min-width:0;width:100%;background:#1e281b;color:#edf1e8;border:1px solid #59664e;border-radius:0;font:11px/1.4 var(--mono);min-height:37px;padding:6px; }
.rule-condition input::placeholder { color:#aebaa2; }
.rule-condition button { background:transparent;color:#d9e3cf;border:0;min-width:28px;height:37px;font-size:20px; }
.rule-condition button:disabled { opacity:.3;cursor:default; }
.add-condition { border:0;background:transparent;color:#d0e4bf;padding:10px 0;min-height:40px;font:11px var(--mono); }
.add-condition:disabled { opacity:.45; }
.rule-preview { margin-top:10px;border-left:2px solid #8caa78;padding:0 0 0 12px; }
.rule-preview > span { font:9px var(--mono);text-transform:uppercase;letter-spacing:.7px;color:#aebaa2; }
.rule-preview p { margin-top:7px;font-size:12px;line-height:1.7; }
#rule-result { display:block;margin-top:18px;padding:11px 12px;background:#bdd0b1;color:#172011;font:11px/1.5 var(--mono); }
#rule-result[data-match="false"] { background:#3b2c21;color:#ffd0a7; }
.rule-disclaimer { margin-top:12px;font-size:9px; }
.insurify-heading,.ai-heading { display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:60px; }
.insurify-heading .chapter-title,.ai-heading .chapter-title { margin:0; }
.product-story { display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.6fr);border-block:1px solid #ffffff28; }
.story-switches { display:flex;flex-direction:column;justify-content:center;padding:12px 32px 12px 0; }
.story-switches button { display:flex;gap:14px;align-items:center;text-align:left;padding:22px 12px;background:transparent;color:#b6bbaf;border:0;border-bottom:1px solid #ffffff18;font:500 16px var(--font);min-height:65px; }
.story-switches button > span:first-child { font:10px var(--mono); }
.story-switches button > span:last-child { margin-left:auto;font-size:22px; }
.story-switches button[aria-pressed="true"] { color:#ffd4bd;background:#ffb89908; }
.product-panel { padding:30px 36px;border-left:1px solid #ffffff28;min-height:290px; }
.product-art { display:flex;gap:24px;align-items:center;margin:18px 0 24px;color:#dccabb;min-height:50px;font:500 clamp(22px,3vw,43px)/1.2 var(--font);letter-spacing:-.04em;flex-wrap:wrap; }
.product-art > span { color:#a79f98; }
.product-art i { font-style:normal;color:#ffb899; }
.product-art strong { font-weight:600;color:#f5e4d7; }
.product-art[data-mode="connections"] { font:15px/1.8 var(--mono);letter-spacing:0;gap:10px 20px; }
.product-art[data-mode="connections"] span { color:#e4cfc1;border-bottom:1px solid #806654; }
.product-panel h3 { font-size:20px;font-weight:550;letter-spacing:-.025em;margin-bottom:12px; }
.product-panel > p:last-child { font-size:15px;line-height:1.75;max-width:640px; }
.chapter-tail { display:flex;justify-content:space-between;gap:20px;font:11px/1.6 var(--mono);color:#b6bbaf; }
.chapter-tail a { color:var(--ink); }
.ai-stories { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:8px; }
.ai-story { border-top:1px solid #ffffff30;padding-top:24px;min-width:0; }
.ai-story .story-date { font:400 42px/1 var(--mono);color:#9eb9c7;display:flex;justify-content:space-between; }
.story-date > span { font-size:28px; }
.ai-story h3 { font:550 clamp(22px,2.2vw,32px)/1.2 var(--font);letter-spacing:-.035em;margin:28px 0 10px; }
.ai-story .story-byline { font:10px var(--mono);color:#b0d7e5;margin-bottom:20px; }
.ai-story > p { font-size:15px;line-height:1.8;max-width:510px; }
.ai-story .story-note { font-size:13px;max-width:420px;margin-top:24px;color:#8fa7b3; }
.project-doorways { margin-top:22px;border-top:1px solid #ffffff20; }
.project-doorways a { display:grid;grid-template-columns:1fr auto;gap:5px 16px;padding:14px 0;border-bottom:1px solid #ffffff20; }
.project-doorways span { color:#e5f1f5;font-size:14px; }
.project-doorways small { grid-column:1;font:10px/1.6 var(--mono);color:#a5bec9; }
.project-doorways b { grid-column:2;grid-row:1 / 3;align-self:center;color:#b0d7e5;font-size:24px;font-weight:400; }
.outside-layout { display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:center; }
.personal-story { font-size:17px;line-height:1.8;max-width:440px;margin-top:22px; }
.personal-punchline { font-size:24px;letter-spacing:-.025em;margin:22px 0 30px;color:#f1eee6!important; }
.photo-gallery { min-width:0; }
.photo-feature { margin:0; }
.photo-feature img { display:block;width:100%;height:min(50vh,500px);object-fit:contain;background:#0e110d; }
.photo-feature figcaption { display:flex;justify-content:space-between;gap:15px;font:10px/1.6 var(--mono);color:#cbd1bc;padding:12px 0; }
.photo-selectors { display:flex;border-block:1px solid #ffffff24;gap:20px; }
.photo-selectors button { background:transparent;border:0;border-bottom:2px solid transparent;color:#b6bbaf;font:10px var(--mono);padding:14px 0;min-height:44px; }
.photo-selectors button[aria-pressed="true"] { color:#f1eee6;border-bottom-color:#ff997b; }
.photo-gallery > .artifact-caption { margin-top:12px;font-size:12px; }
.closing-layout { display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:90px; }
.closing-title { font:750 clamp(48px,6.5vw,104px)/.98 var(--font);letter-spacing:-.06em; }
.closing-dot { color:#ff795e; }
.closing-copy { font-size:18px;line-height:1.65;max-width:550px;margin:28px 0; }
.closing-links > .scene-kicker { margin-bottom:24px; }
.closing-links > a { display:grid;grid-template-columns:1fr auto;gap:7px 16px;padding:22px 0;border-top:1px solid #ffffff24; }
.closing-links > a > span { font-size:24px;letter-spacing:-.035em; }
.closing-links small { grid-column:1;color:#b6bbaf;font:11px/1.5 var(--mono); }
.closing-links b { grid-column:2;grid-row:1 / 3;align-self:center;color:#ff997b;font-size:25px;font-weight:400; }
.closing-links > .revisit { font:11px/1.6 var(--mono);color:#b6bbaf;margin-top:20px; }
.closing-links > .revisit span { font-size:19px; }
@media (min-width:1101px) and (max-height:820px) {
 .journey-scene .scene-inner { gap:22px; }
 .chapter-title { font-size:clamp(38px,4vw,61px);margin-bottom:18px; }
 .chapter-lead { font-size:17px; }
 .early-work { margin-top:16px;padding-top:14px; }
 .workbench-body { padding:18px; }
 .sample-record { padding:10px 0; }
 .product-panel { padding:22px 30px;min-height:260px; }
 .ai-story h3 { margin-top:20px; }
 .photo-feature img { height:44vh; }
}
@media (max-width:1100px) {
 .curemd-layout,.outside-layout,.closing-layout { gap:34px; }
 .insurify-heading,.ai-heading { gap:32px; }
 .chapter-title { font-size:44px; }
 .story-switches { padding-right:18px; }
 .story-switches button { font-size:14px;gap:8px; }
 .product-panel { padding:24px; }
 .ai-stories { gap:30px; }
 .scene-navigation .scene-instruction { font-size:8px; }
 .scene-index { gap:4px; }
 .scene-index a { padding-inline:8px; }
}
@media (max-width:760px) {
 .scene-header nav { gap:15px;font-size:11px;margin-left:10px; }
 .journey-scene .scene-inner { gap:26px; }
 .chapter-heading .scene-kicker { display:block;font-size:9px;line-height:1.7; }
 .chapter-heading .scene-kicker > span { display:block;text-align:left;margin-top:6px; }
 .chapter-title { font-size:clamp(36px,8.2vw,58px);margin-bottom:20px; }
 .curemd-layout,.outside-layout,.closing-layout,.insurify-heading,.ai-heading,.ai-stories { grid-template-columns:1fr;gap:30px; }
 .chapter-lead { font-size:18px; }
 .early-work { margin-top:20px;padding-top:17px; }
 .rule-workbench { box-shadow:6px 6px 0 #05080533; }
 .workbench-body { padding:17px; }
 .workbench-top { padding:13px 17px; }
 .workbench-body h3 { font-size:20px; }
 .rule-condition { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 28px; }
 .rule-condition input { grid-row:2;grid-column:1 / 3; }
 .rule-condition button { grid-column:3;grid-row:1 / 3; }
 .rule-condition { border-bottom:1px solid #ffffff15;padding-bottom:10px; }
 .product-story { grid-template-columns:1fr; }
 .story-switches { padding:0; }
 .story-switches button { padding:16px 8px;min-height:54px;font-size:15px; }
 .product-panel { border-left:0;padding:25px 0 28px;min-height:0; }
 .product-art { font-size:32px;gap:16px; }
 .chapter-tail { flex-direction:column;gap:14px; }
 .ai-story { padding-top:22px; }
 .ai-story .story-date { font-size:34px; }
 .ai-story h3 { margin-top:18px;font-size:26px; }
 .ai-story .story-note { margin-top:15px; }
 .personal-story { font-size:16px; }
 .photo-feature img { height:auto;max-height:65svh;object-fit:contain; }
 .photo-selectors { justify-content:space-between;gap:10px; }
 .photo-selectors button { font-size:9px; }
 .closing-title { font-size:clamp(45px,10vw,76px); }
 .closing-copy { font-size:17px; }
 .closing-links > a { padding:18px 0; }
 .closing-links > a > span { font-size:22px; }
 .scene-index a b { display:none; }
 .scene-index a[aria-current="page"] b { display:inline; }
 .scene-index a { padding:12px 6px;gap:5px; }
 .scene-index { gap:0; }
 .scene-arrows { gap:6px; }
 .scene-arrows button { width:32px;height:34px; }
 #scene-count { display:none; }
}
@media (max-width:380px) {
 .scene-header nav { gap:10px;font-size:10px;margin-left:3px; }
 .scene-index a { padding-inline:4px;font-size:8px; }
 .scene-index a[aria-current="page"] b { max-width:50px;overflow:hidden;text-overflow:ellipsis; }
 .scene-arrows button { width:28px; }
}
