@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap");

/* cotierReadinessHome.css */
.crh-page{--ink:#203d34;--deep:#17372e;--paper:#f4f1e8;--surface:#fbf9f3;--mute:#68776d;--rule:#d6d6c9;--coral:#aa462f;--serif:"Instrument Serif",Georgia,serif;--mono:"DM Mono",monospace;min-height:100vh;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}.crh-page *{box-sizing:border-box}.crh-page a{color:inherit;text-decoration:none}.crh-page :focus-visible{outline:3px solid #a43d28;outline-offset:4px}.crh-header{height:72px;padding:0 clamp(22px,4.5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:22px;background:var(--surface);border-bottom:1px solid var(--rule)}.crh-brand{font:500 18px var(--mono);letter-spacing:.13em;white-space:nowrap}.crh-brand span{margin-left:11px;font-size:8px;letter-spacing:.08em;color:var(--mute);vertical-align:2px}.crh-header-meta,.crh-header nav,.crh-section-index,.crh-eyebrow,.crh-kicker,.crh-rail-bottom,.crh-standard,.crh-under-note,.crh-diagram-bar,.crh-node,.crh-diagram-foot,.crh-stat-num,.crh-principle-list article>span,.crh-firm-list article>span,.crh-form-top,.crh-footer{font-family:var(--mono);text-transform:uppercase;letter-spacing:.07em}.crh-header-meta{font-size:8px;color:var(--mute);display:flex;gap:8px;align-items:center}.crh-header-meta i,.crh-diagram-bar i{height:6px;width:6px;border-radius:50%;background:var(--coral);display:inline-block}.crh-header nav{display:flex;align-items:center;gap:clamp(16px,2.6vw,40px);font-size:8px}.crh-header nav a{transition:color .2s}.crh-header nav a:hover{color:var(--coral)}.crh-header nav .crh-nav-cta{padding:9px 0;border-bottom:1px solid var(--ink)}.crh-nav-cta b{color:var(--coral);margin-left:6px}.crh-opening{display:grid;grid-template-columns:minmax(225px,.72fr) minmax(0,1.9fr);max-width:1800px;margin:0 auto;min-height:740px}.crh-rail{padding:clamp(48px,7vw,92px) clamp(26px,4.6vw,76px);background:var(--deep);color:var(--paper);display:flex;flex-direction:column;justify-content:flex-start;position:relative;overflow:hidden}.crh-rail:after{content:"";position:absolute;inset:0;opacity:.09;background-image:linear-gradient(rgba(244,241,232,.45) 1px,transparent 1px),linear-gradient(90deg,rgba(244,241,232,.45) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,#000,transparent 75%);pointer-events:none}.crh-eyebrow,.crh-kicker,.crh-section-index{font-size:8px;color:#68766b}.crh-rail .crh-eyebrow{color:#cad4c7;position:relative;z-index:1}.crh-rail h1{font:400 clamp(38px,4vw,64px)/.95 var(--serif);letter-spacing:-.035em;margin:42px 0 22px;position:relative;z-index:1}.crh-rail h1 em,.crh-hero-main h2 i,.crh-intro h2 i,.crh-principles h2 i,.crh-firms h2 i{font-weight:400;color:#e6a28c}.crh-rail>p{max-width:250px;color:#d3ddd2;font-size:13px;line-height:1.75;position:relative;z-index:1}.crh-rail-bottom{position:relative;z-index:1;margin-top:auto;padding-top:28px;border-top:1px solid rgba(244,241,232,.3);display:flex;flex-direction:column;gap:20px;color:#c0cec0;font-size:7px;line-height:1.9}.crh-hero-main{padding:clamp(38px,5vw,72px) clamp(26px,6.2vw,100px) 38px;background:var(--surface);min-width:0}.crh-kicker{display:flex;justify-content:space-between;gap:12px;color:#68766b}.crh-hero-main h2{max-width:840px;margin:40px 0 20px;color:var(--deep);font:400 clamp(42px,6vw,88px)/.92 var(--serif);letter-spacing:-.03em}.crh-hero-main h2 i{color:var(--coral)}.crh-lede{max-width:600px;margin:0;color:#4c5d51;font-size:16px;line-height:1.75}.crh-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:24px 0 12px}.crh-button{min-height:49px;padding:0 18px;display:inline-flex;align-items:center;gap:18px;background:var(--coral);color:#fff9ed!important;font:500 9px var(--mono);text-transform:uppercase;letter-spacing:.025em;transition:background .18s}.crh-button:hover{background:#803521}.crh-textlink{padding:7px 0;border-bottom:1px solid #9aa094;font:8px var(--mono);letter-spacing:.07em}.crh-textlink:hover{color:var(--coral)}.crh-under-note{color:#788177;font-size:7px}.crh-diagram{margin:37px 0 0;max-width:680px;aspect-ratio:1.85;min-height:235px;position:relative;border:1px solid #c7cabe;background:#f5f3eb;padding:16px 19px;color:#56675a}.crh-diagram-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid #d5d6ca;font-size:7px;color:#68766b}.crh-diagram-bar span:last-child{display:flex;align-items:center;gap:7px}.crh-diagram-bar i{background:#637d66}.crh-diagram svg{position:absolute;inset:38px 18px 29px;width:calc(100% - 36px);height:calc(100% - 67px)}.crh-diagram svg path{fill:none;stroke:#819283;stroke-width:1.5;stroke-dasharray:4 5}.crh-diagram svg path.crh-cloud-link{stroke:var(--coral)}.crh-diagram svg circle{fill:#f5f3eb;stroke:#778978;stroke-width:1.5}.crh-diagram svg circle.crh-core-dot{fill:#244338;stroke:#244338}.crh-node{position:absolute;z-index:1;display:flex;gap:7px;align-items:center;font-size:6px;letter-spacing:.035em;white-space:nowrap}.crh-node b{display:grid;place-items:center;width:27px;height:27px;border:1px solid #839082;background:#f5f3eb;color:#354e40;font-size:8px;font-weight:400}.crh-compute{left:40%;top:47%;transform:translateY(-50%);flex-direction:column}.crh-compute b{width:38px;height:38px;background:var(--deep);color:var(--paper);border-color:var(--deep);font:18px var(--serif)}.crh-office{left:6%;top:51%}.crh-model{right:8%;top:23%;flex-direction:column}.crh-team{right:8%;top:60%}.crh-answer{left:18%;bottom:18%;flex-direction:column}.crh-cloud{position:absolute;right:2%;top:47%;display:flex;gap:5px;align-items:center;font:6px var(--mono);color:#6c6c60}.crh-cloud b{color:var(--coral);font-size:14px}.crh-diagram-foot{position:absolute;bottom:11px;left:19px;right:19px;display:flex;justify-content:space-between;gap:10px;border-top:1px solid #d5d6ca;padding-top:8px;color:#68766b;font-size:6px}.crh-standard{min-height:68px;padding:15px clamp(22px,4.5vw,76px);background:#ebe9de;display:flex;align-items:center;justify-content:space-between;gap:16px}.crh-standard>span{flex-shrink:0;color:#6d796f;font-size:7px}.crh-standard>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px}.crh-standard b{border:1px solid #b9beb0;padding:8px 10px;color:#526157;font-size:7px;font-weight:400}.crh-intro,.crh-principles,.crh-firms{padding:clamp(74px,10vw,142px) clamp(26px,7vw,112px);}.crh-intro{max-width:1600px;margin:0 auto}.crh-section-index{color:#647568}.crh-intro-grid{margin-top:38px;display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:start}.crh-intro h2,.crh-principles h2,.crh-firms h2{max-width:720px;margin:0;color:var(--deep);font:400 clamp(38px,5vw,72px)/.98 var(--serif);letter-spacing:-.03em}.crh-intro h2 i,.crh-firms h2 i{color:var(--coral)}.crh-intro-grid>div>p,.crh-contact-intro>p{margin:0;color:#4c5d51;font-size:15px;line-height:1.8}.crh-intro-grid>div>b{display:block;margin-top:24px;color:#455a4d;font:8px var(--mono);letter-spacing:.07em}.crh-intro-grid>div>small{display:block;margin-top:9px;color:#6c796e;font-size:11px}.crh-proof{padding:62px clamp(26px,7vw,112px) 80px;background:#e8e8db}.crh-proof-head{max-width:1376px;margin:0 auto 31px;display:flex;justify-content:space-between;align-items:end;gap:16px}.crh-proof-head p{margin:0;color:#43564a;font:400 18px/1.35 var(--serif)}.crh-stats{max-width:1376px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #afb7a8;border-bottom:1px solid #afb7a8}.crh-stats article{min-height:190px;padding:22px 26px 25px 0}.crh-stats article+article{border-left:1px solid #bbc1b4;padding-left:26px}.crh-stat-num{color:#68766b;font-size:7px}.crh-stats strong{display:block;margin:18px 0 13px;color:var(--deep);font:400 clamp(58px,9vw,112px)/.82 var(--serif);letter-spacing:-.055em}.crh-stats article p{max-width:275px;margin:0;color:#405348;font-size:13px;line-height:1.55}.crh-principles{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;background:var(--deep);color:var(--paper)}.crh-principles>.crh-section-index{color:#c1cec1}.crh-principles h2{margin-top:30px;color:var(--paper)}.crh-principles h2 i{color:#e6a28c}.crh-principle-list article{display:grid;grid-template-columns:140px 1fr;gap:18px;padding:21px 0;border-top:1px solid rgba(244,241,232,.32)}.crh-principle-list article>span{padding-top:4px;color:#c4d1c5;font-size:7px}.crh-principle-list h3{margin:0;color:var(--paper);font:400 21px var(--serif)}.crh-principle-list p{margin:8px 0 0;color:#d6ded6;font-size:12px;line-height:1.7}.crh-firms{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;max-width:1600px;margin:auto}.crh-firms h2{margin-top:30px}.crh-firm-list{border-top:1px solid #bec3b5}.crh-firm-list article{display:grid;grid-template-columns:32px 1fr 20px;gap:14px;align-items:start;padding:20px 0;border-bottom:1px solid #bec3b5}.crh-firm-list article>span{font-size:8px;color:#708074}.crh-firm-list article h3{margin:0;color:var(--deep);font:400 20px var(--serif)}.crh-firm-list article p{margin:5px 0 0;color:#596a5e;font-size:12px;line-height:1.6}.crh-firm-list article>b{color:var(--coral);font:12px var(--mono)}.crh-contact{padding:clamp(70px,9vw,124px) clamp(26px,7vw,112px);background:var(--deep);color:var(--paper);display:grid;grid-template-columns:1fr .8fr;gap:8vw}.crh-contact .crh-section-index{color:#c0cdc0}.crh-contact-intro h2{max-width:620px;margin:26px 0;color:var(--paper);font:400 clamp(38px,5vw,68px)/.98 var(--serif);letter-spacing:-.03em}.crh-contact-intro>p{max-width:560px;color:#d7dfd7}.crh-contact form{padding:22px;border:1px solid rgba(244,241,232,.34);display:flex;flex-direction:column;align-items:stretch}.crh-form-top{display:flex;justify-content:space-between;gap:10px;padding-bottom:15px;margin-bottom:19px;border-bottom:1px solid rgba(244,241,232,.26);color:#d3ddd2;font-size:7px}.crh-contact form label{margin:12px 0 7px;color:#d2ddd2;font:7px var(--mono);text-transform:uppercase;letter-spacing:.07em}.crh-contact form input,.crh-contact form textarea{width:100%;border:1px solid rgba(244,241,232,.5);border-radius:0;padding:11px;background:transparent;color:var(--paper);font:13px "DM Sans",sans-serif}.crh-contact form textarea{min-height:76px;resize:vertical}.crh-contact form input::placeholder,.crh-contact form textarea::placeholder{color:#bac8bb}.crh-contact form button{align-self:flex-start;margin-top:16px;min-height:45px;padding:0 16px;border:0;background:#aa462f;color:#fff9ed;font:8px var(--mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.crh-contact form button:hover{background:#803521}.crh-form-note{min-height:18px;margin:12px 0 0;color:#d2ddd2;font:7px/1.5 var(--mono)}.crh-footer{min-height:55px;padding:15px clamp(22px,4.5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:14px;background:#102b23;color:#d3ddd2;font-size:7px}.crh-footer>a:first-child{font-size:12px;letter-spacing:.13em}.crh-footer>a:last-child{border-bottom:1px solid #acb9ac;padding-bottom:3px}
@media(max-width:1000px){.crh-opening{grid-template-columns:230px 1fr}.crh-header-meta{display:none}.crh-principles{grid-template-columns:1fr;gap:45px}.crh-diagram{min-height:225px}.crh-standard{align-items:flex-start;flex-direction:column}.crh-standard>div{justify-content:flex-start}.crh-contact{gap:36px}}
@media(max-width:680px){.crh-header{height:auto;min-height:60px;padding:10px 17px;gap:10px}.crh-brand{font-size:15px}.crh-brand span{display:none}.crh-header nav{gap:13px;font-size:7px}.crh-header nav>a:first-child{display:none}.crh-opening{display:flex;flex-direction:column}.crh-rail{padding:35px 24px 24px;min-height:auto}.crh-rail h1{font-size:46px;margin:22px 0 12px}.crh-rail>p{margin:0;max-width:390px}.crh-rail-bottom{margin-top:23px;padding-top:13px;flex-direction:row;justify-content:space-between;align-items:center;font-size:6px}.crh-hero-main{padding:30px 21px 32px}.crh-kicker{font-size:6px}.crh-hero-main h2{margin:26px 0 15px;font-size:clamp(43px,13vw,72px)}.crh-lede{font-size:14px}.crh-actions{align-items:flex-start;flex-direction:column;gap:14px}.crh-button{min-height:48px;padding:0 13px;font-size:7px}.crh-diagram{margin-top:26px;padding:12px;min-height:190px;aspect-ratio:1.35}.crh-diagram-bar{font-size:6px}.crh-diagram svg{inset:36px 8px 28px;width:calc(100% - 16px);height:calc(100% - 64px)}.crh-node{font-size:5px;gap:4px}.crh-node b{width:21px;height:21px;font-size:7px}.crh-compute{left:39%}.crh-compute b{width:30px;height:30px;font-size:15px}.crh-office{left:2%}.crh-model,.crh-team{right:3%}.crh-answer{left:13%}.crh-cloud{right:0;font-size:5px}.crh-diagram-foot{left:12px;right:12px;font-size:5px}.crh-standard{padding:14px 21px}.crh-standard>div{gap:5px}.crh-standard b{padding:7px;font-size:6px}.crh-intro,.crh-firms{padding:73px 22px}.crh-intro-grid,.crh-firms{grid-template-columns:1fr;gap:28px}.crh-intro h2,.crh-principles h2,.crh-firms h2{font-size:48px}.crh-intro-grid>div>p,.crh-contact-intro>p{font-size:14px}.crh-proof{padding:49px 22px 58px}.crh-proof-head{display:block}.crh-proof-head p{margin-top:14px}.crh-stats{grid-template-columns:1fr}.crh-stats article{min-height:0;padding:20px 0}.crh-stats article+article{border-left:0;border-top:1px solid #bbc1b4;padding-left:0}.crh-stats strong{font-size:81px;margin:14px 0 9px}.crh-principles{padding:72px 22px}.crh-principle-list article{grid-template-columns:1fr;gap:9px}.crh-principle-list h3{font-size:20px}.crh-contact{grid-template-columns:1fr;padding:72px 22px;gap:30px}.crh-contact-intro h2{font-size:48px}.crh-contact form{padding:17px}.crh-form-top{font-size:6px}.crh-footer{padding:15px 20px;flex-wrap:wrap;font-size:6px}.crh-footer span{display:none}}
@media(prefers-reduced-motion:reduce){.crh-page *{scroll-behavior:auto!important;transition:none!important}}

.crh-check-link{display:inline-block;margin:13px 0 0 18px}

/* cotier-readiness-check.css */

.cr-shell {
  --cr-ink: #203d34;
  --cr-deep: #17372e;
  --cr-paper: #f4f1e8;
  --cr-surface: #fbf9f3;
  --cr-muted: #718077;
  --cr-rule: #d7d8ca;
  --cr-accent: #db6548;
  min-height: 100vh;
  background: var(--cr-paper);
  color: var(--cr-ink);
  font-family: "DM Sans", sans-serif;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.cr-shell * { box-sizing: border-box; }
.cr-shell a { color: inherit; text-decoration: none; }
.cr-shell button { color: inherit; font: inherit; }
.cr-topbar {
  height: 72px; flex: 0 0 72px; padding: 0 clamp(22px, 4.5vw, 76px);
  display: flex; align-items: center; justify-content: space-between;
  border-bottom: 1px solid var(--cr-rule); background: var(--cr-surface);
}
.cr-brand { font: 500 18px "DM Mono", monospace; letter-spacing: .13em; }
.cr-brand span { margin-left: 12px; color: var(--cr-muted); font-size: 8px; letter-spacing: .08em; vertical-align: 2px; }
.cr-top-meta, .cr-contact, .cr-kicker, .cr-rail-index, .cr-progress, .cr-visual-top,
.cr-visual-bottom, .cr-node, .cr-visual-caption span, .cr-step-hint, .cr-back,
.cr-next, .cr-result-facts span, .cr-honesty, .cr-footer, .cr-inline-note, .cr-assurance > span {
  font-family: "DM Mono", monospace;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.cr-top-meta { display: flex; align-items: center; gap: 9px; color: var(--cr-muted); font-size: 9px; }
.cr-live-dot { width: 6px; height: 6px; background: var(--cr-accent); border-radius: 50%; }
.cr-contact { font-size: 9px; border-bottom: 1px solid var(--cr-ink); padding: 8px 0; }
.cr-contact span { margin-left: 9px; color: var(--cr-accent); }
.cr-layout {
  flex: 1; display: grid; grid-template-columns: minmax(260px, .82fr) minmax(470px, 1.42fr) minmax(330px, .92fr);
  max-width: 1800px; width: 100%; margin: 0 auto; min-height: 700px;
}
.cr-rail { padding: clamp(42px, 6.1vh, 78px) clamp(24px, 3.4vw, 58px) 24px clamp(22px, 4.5vw, 76px); display: flex; flex-direction: column; border-right: 1px solid var(--cr-rule); }
.cr-kicker { font-size: 9px; color: #65776c; }
.cr-kicker b { color: var(--cr-accent); font-weight: 400; margin: 0 5px; }
.cr-rail h1 { margin: 29px 0 18px; color: var(--cr-deep); font: 400 clamp(38px, 3.1vw, 54px)/.99 "Instrument Serif", Georgia, serif; letter-spacing: -.04em; }
.cr-rail h1 i, .cr-workspace h2 i, .cr-result h2 i { color: var(--cr-accent); font-weight: 400; }
.cr-rail-intro > p { max-width: 270px; color: #65766c; font-size: 13px; line-height: 1.7; }
.cr-progress { margin-top: 54px; display: grid; gap: 0; }
.cr-progress-item { min-height: 54px; display: flex; align-items: center; gap: 13px; color: #929a8e; position: relative; font-size: 9px; }
.cr-progress-mark { width: 24px; height: 24px; display: grid; place-items: center; border: 1px solid #c8cdbf; font-size: 8px; }
.cr-progress-item.is-current { color: var(--cr-ink); }
.cr-progress-item.is-current .cr-progress-mark { background: var(--cr-deep); border-color: var(--cr-deep); color: var(--cr-paper); }
.cr-progress-item.is-done .cr-progress-mark { border-color: #809283; color: var(--cr-deep); }
.cr-progress-rule { height: 16px; border-left: 1px solid #c8cdbf; position: absolute; left: 12px; bottom: -8px; }
.cr-rail-note { border-top: 1px solid var(--cr-rule); margin-top: auto; padding-top: 22px; display: flex; gap: 11px; align-items: flex-start; }
.cr-note-symbol { color: var(--cr-accent); font: 20px "Instrument Serif", serif; }
.cr-rail-note p { max-width: 210px; color: #718077; margin: 0; font-size: 11px; line-height: 1.6; }
.cr-rail-index { margin-top: 32px; color: #879187; font-size: 7px; }
.cr-workspace { padding: clamp(45px, 7.2vh, 86px) clamp(30px, 4vw, 68px) 34px; background: var(--cr-surface); display: flex; flex-direction: column; }
.cr-workspace-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.cr-workspace h2 { margin: 20px 0 9px; font: 500 clamp(27px, 2.35vw, 38px)/1.1 "DM Sans", sans-serif; letter-spacing: -.05em; color: var(--cr-deep); }
.cr-workspace-head p { margin: 0; color: #7a857b; font-size: 12px; line-height: 1.6; }
.cr-big-index { color: #c5c8b9; font: 32px "Instrument Serif", serif; white-space: nowrap; }
.cr-big-index small { font: 9px "DM Mono", monospace; }
.cr-sector-list { margin-top: 33px; display: grid; border-top: 1px solid var(--cr-rule); }
.cr-sector {
  text-align: left; width: 100%; min-height: 68px; display: grid; grid-template-columns: 30px 38px 1fr 24px; align-items: center; gap: 12px;
  padding: 9px 12px 9px 3px; border: 0; border-bottom: 1px solid var(--cr-rule); background: transparent; cursor: pointer; transition: background .18s, padding .18s;
}
.cr-sector:hover, .cr-sector.is-selected { background: #f1efe4; padding-left: 12px; }
.cr-sector-num { color: #879187; font: 8px "DM Mono", monospace; }
.cr-sector-monogram { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid #c9cebf; color: #66786b; font: 8px "DM Mono", monospace; }
.cr-sector.is-selected .cr-sector-monogram { background: var(--cr-deep); color: var(--cr-paper); border-color: var(--cr-deep); }
.cr-sector-copy strong { display: block; font-size: 12px; font-weight: 600; }
.cr-sector-copy small { display: block; margin-top: 4px; color: #7c867d; font-size: 10px; }
.cr-select-mark { justify-self: end; font: 13px "DM Mono", monospace; color: #929b8d; }
.cr-sector.is-selected .cr-select-mark { color: var(--cr-accent); }
.cr-sector-other { border-bottom: 0; }
.cr-priority-list { margin-top: 45px; border-top: 1px solid var(--cr-rule); }
.cr-priority { width: 100%; min-height: 72px; padding: 0 7px; display: grid; grid-template-columns: 32px 1fr auto 24px; align-items: center; gap: 12px; text-align: left; border: 0; border-bottom: 1px solid var(--cr-rule); background: transparent; cursor: pointer; }
.cr-priority:hover, .cr-priority.is-selected { background: #f1efe4; }
.cr-priority-num, .cr-priority-tag { font: 8px "DM Mono", monospace; color: #879187; }
.cr-priority-name { font-size: 13px; }
.cr-priority-tag { font-size: 7px; letter-spacing: .04em; }
.cr-checkbox { width: 17px; height: 17px; border: 1px solid #aeb8a8; display: grid; place-items: center; font: 10px "DM Mono", monospace; }
.cr-priority.is-selected .cr-checkbox { background: var(--cr-deep); border-color: var(--cr-deep); color: var(--cr-paper); }
.cr-inline-note { margin-top: 21px; color: #7d887e; font-size: 8px; line-height: 1.8; }
.cr-inline-note span { color: var(--cr-accent); margin-right: 10px; }
.cr-team-step { margin-top: 42px; }
.cr-team-step label { font-size: 12px; font-weight: 600; }
.cr-team-options { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 16px; }
.cr-team-options button { min-height: 58px; padding: 0 13px; border: 1px solid var(--cr-rule); background: transparent; display: flex; align-items: center; justify-content: space-between; cursor: pointer; font-size: 11px; }
.cr-team-options button:hover, .cr-team-options button.is-selected { border-color: var(--cr-deep); background: #f1efe4; }
.cr-team-options button span { color: var(--cr-accent); font-family: "DM Mono", monospace; }
.cr-assurance { margin-top: 38px; padding: 20px; border-left: 2px solid var(--cr-accent); background: #f2f0e7; }
.cr-assurance > span { color: #68786c; font-size: 8px; }
.cr-assurance p { max-width: 360px; color: #405a4d; margin: 10px 0 0; font: 18px/1.4 "Instrument Serif", Georgia, serif; }
.cr-form-footer { margin-top: auto; padding-top: 28px; border-top: 1px solid var(--cr-rule); display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.cr-back, .cr-next { min-height: 44px; border: 0; cursor: pointer; font-size: 8px; }
.cr-back { padding: 0; background: transparent; color: var(--cr-ink); }
.cr-back span { margin-left: 7px; }
.cr-back:disabled { color: #b5b9ac; cursor: not-allowed; }
.cr-step-hint { color: #899188; font-size: 7px; text-align: center; }
.cr-next { min-width: 132px; padding: 0 15px; background: var(--cr-accent); color: #fff9ed !important; }
.cr-next:hover:not(:disabled) { background: #bd4d35; }
.cr-next:disabled { opacity: .42; cursor: not-allowed; }
.cr-next span { padding-left: 12px; }
.cr-visual { min-width: 0; position: relative; padding: 31px clamp(19px, 2.6vw, 44px) 25px; background: #e8e8db; border-left: 1px solid var(--cr-rule); display: flex; flex-direction: column; }
.cr-visual-top { display: flex; justify-content: space-between; gap: 10px; color: #66786b; font-size: 7px; }
.cr-visual-top span:last-child { color: var(--cr-accent); }
.cr-diagram { position: relative; width: 100%; max-width: 380px; height: 435px; margin: auto; }
.cr-lines { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.cr-lines path { fill: none; stroke: #8a9b8a; stroke-width: 1; stroke-dasharray: 3 5; }
.cr-lines path.cr-cloud-line { stroke: var(--cr-accent); stroke-dasharray: 3 4; }
.cr-lines circle { fill: #e8e8db; stroke: #758b7b; stroke-width: 1.5; }
.cr-node { position: absolute; display: flex; align-items: center; gap: 8px; color: #4f6a58; font-size: 7px; white-space: nowrap; }
.cr-node-icon { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid #879887; background: #e8e8db; font-size: 8px; }
.cr-node-office { left: 1%; top: 14%; }
.cr-node-files { left: 1%; top: 42%; }
.cr-node-team { left: 1%; top: 68%; }
.cr-node-core { left: 45%; top: 43%; flex-direction: column; text-align: center; gap: 9px; color: var(--cr-deep); }
.cr-core-icon { display: grid; place-items: center; width: 58px; height: 58px; border: 1px solid var(--cr-deep); background: var(--cr-deep); color: var(--cr-paper); font: 22px "Instrument Serif", serif; }
.cr-node-answer { right: -2%; top: 71%; }
.cr-cloud { position: absolute; right: -3%; top: 41%; display: flex; align-items: center; gap: 7px; color: #a28d7e; font: 7px/1.5 "DM Mono", monospace; }
.cr-cloud b { color: var(--cr-accent); font: 17px "DM Sans", sans-serif; }
.cr-visual-caption { display: flex; gap: 14px; align-items: flex-start; border-top: 1px solid #cbd0c1; padding-top: 15px; }
.cr-visual-caption span { color: var(--cr-accent); font-size: 8px; }
.cr-visual-caption p { margin: 0; color: #52695a; font: 16px/1.25 "Instrument Serif", serif; }
.cr-visual-bottom { display: flex; justify-content: space-between; gap: 9px; margin-top: 30px; color: #728075; font-size: 6px; }
.cr-footer { min-height: 48px; padding: 0 clamp(22px, 4.5vw, 76px); border-top: 1px solid var(--cr-rule); display: flex; align-items: center; justify-content: space-between; gap: 18px; color: #858e83; font-size: 7px; }
.cr-footer a { color: var(--cr-ink); border-bottom: 1px solid #9da899; padding-bottom: 3px; }
.cr-result { position: relative; margin: auto 0; padding: 25px 0; }
.cr-result-stamp { float: right; margin: 3px 4px 20px 14px; width: 64px; height: 76px; border: 1px solid #a9b3a5; display: grid; place-content: center; text-align: center; color: #718077; font: 8px/1.3 "DM Mono", monospace; transform: rotate(4deg); }
.cr-result-stamp span { color: var(--cr-accent); font: 20px "Instrument Serif", serif; }
.cr-result h2 { margin: 22px 0 15px; font: 500 clamp(30px, 2.5vw, 40px)/1.1 "DM Sans", sans-serif; letter-spacing: -.05em; }
.cr-result-copy { max-width: 500px; color: #65766c; font-size: 13px; line-height: 1.75; }
.cr-result-facts { margin-top: 30px; border-top: 1px solid var(--cr-rule); }
.cr-result-facts div { padding: 13px 0; border-bottom: 1px solid var(--cr-rule); display: grid; grid-template-columns: 135px 1fr; gap: 15px; align-items: baseline; }
.cr-result-facts span { color: #818b80; font-size: 7px; }
.cr-result-facts strong { font-size: 11px; font-weight: 500; }
.cr-result-actions { display: flex; align-items: center; gap: 23px; margin-top: 26px; }
.cr-result-link { display: inline-flex; align-items: center; justify-content: center; }
.cr-result-actions .cr-back { font-size: 8px; }
.cr-honesty { color: #828b80; font-size: 7px; margin: 18px 0 0; }
.cr-shell button:focus-visible, .cr-shell a:focus-visible { outline: 2px solid var(--cr-accent); outline-offset: 3px; }
@media (min-width: 1500px) {
  .cr-layout { min-height: calc(100vh - 120px); }
  .cr-diagram { height: min(54vh, 500px); }
}
@media (max-width: 1050px) {
  .cr-layout { grid-template-columns: minmax(220px, .75fr) minmax(420px, 1.3fr); }
  .cr-visual { grid-column: 1 / -1; min-height: 380px; border-left: 0; border-top: 1px solid var(--cr-rule); }
  .cr-diagram { height: 300px; max-width: 420px; }
  .cr-rail { min-height: 620px; }
}
@media (max-width: 700px) {
  .cr-shell { overflow: visible; }
  .cr-topbar { height: 62px; flex-basis: 62px; padding: 0 20px; }
  .cr-brand { font-size: 16px; }
  .cr-brand span, .cr-top-meta { display: none; }
  .cr-contact { font-size: 8px; }
  .cr-layout { display: flex; flex-direction: column; min-height: 0; }
  .cr-rail { min-height: 0; padding: 34px 22px 22px; border-right: 0; }
  .cr-rail h1 { margin: 20px 0 10px; font-size: 43px; }
  .cr-rail-intro > p { max-width: 370px; }
  .cr-progress { margin-top: 23px; grid-template-columns: repeat(3, 1fr); }
  .cr-progress-item { min-height: 35px; gap: 7px; font-size: 7px; }
  .cr-progress-mark { width: 21px; height: 21px; }
  .cr-progress-rule, .cr-rail-note, .cr-rail-index { display: none; }
  .cr-workspace { padding: 34px 22px 25px; min-height: 540px; }
  .cr-workspace h2 { font-size: 29px; }
  .cr-big-index { font-size: 24px; }
  .cr-sector-list { margin-top: 27px; }
  .cr-sector { grid-template-columns: 22px 32px 1fr 20px; gap: 8px; }
  .cr-sector-copy small { font-size: 9px; }
  .cr-priority-list { margin-top: 28px; }
  .cr-priority { grid-template-columns: 24px 1fr 18px; gap: 7px; min-height: 67px; }
  .cr-priority-tag { display: none; }
  .cr-step-hint { max-width: 100px; line-height: 1.5; }
  .cr-next { min-width: 120px; }
  .cr-visual { min-height: 410px; padding: 24px 20px; }
  .cr-diagram { height: 300px; margin: 28px auto 22px; }
  .cr-visual-bottom { font-size: 5px; }
  .cr-footer { padding: 15px 20px; flex-wrap: wrap; font-size: 6px; }
  .cr-footer span:nth-child(2) { display: none; }
  .cr-result-facts div { grid-template-columns: 105px 1fr; }
  .cr-result-actions { flex-wrap: wrap; gap: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .cr-shell *, .cr-shell *::before, .cr-shell *::after { transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* base.css */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 24px; }
body { margin: 0; background: #f4f1e8; color: #203d34; font-family: "DM Sans", system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
button, input, textarea { font: inherit; }
button, a, input, textarea { -webkit-tap-highlight-color: transparent; }
.not-found { max-width: 680px; padding: 80px 24px; margin: auto; }
.cr-shell { --cr-accent: #aa462f; }
.cr-team-label { margin: 0; font-size: 12px; font-weight: 600; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* ai-benefits.css */
.crh-proof.crh-benefits {
  background: #ebe9de;
}

.crh-benefits-heading,
.crh-benefit-title {
  margin: 0;
  color: var(--deep);
  font: 400 var(--type-mono, 1.05rem)/1.5 var(--mono);
  letter-spacing: .035em;
}

.crh-benefits .crh-benefits-heading,
.crh-benefits .crh-proof-head > p {
  color: var(--deep);
}

.crh-benefits-accent {
  color: var(--coral);
}

.crh-benefits .crh-proof-head > p {
  font-size: clamp(1.5rem, 1.25rem + .75vw, 1.875rem);
  line-height: 1.3;
}

.crh-benefits .crh-stats article {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.crh-benefits .crh-benefit-value {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .75rem;
  font-size: clamp(3rem, 1.5rem + 3.75vw, 5rem);
  color: var(--coral);
}

.crh-benefit-value > span {
  color: var(--deep);
  font: 400 var(--type-mono, 1.05rem)/1.5 var(--mono);
  letter-spacing: .035em;
}

.crh-benefits .crh-stats article > p {
  max-width: 36ch;
  color: var(--deep);
}

.crh-benefits .crh-benefit-source {
  margin-top: auto;
  padding-top: 1rem;
  max-width: 100%;
  overflow-wrap: anywhere;
  color: #526157;
}

.crh-benefits .crh-benefit-source:hover {
  color: var(--coral);
}

@media (max-width: 48em) {
  .crh-benefits .crh-proof-head {
    display: block;
  }

  .crh-benefits .crh-proof-head > p {
    margin-top: 1rem;
  }

  .crh-benefits .crh-stats article > p {
    max-width: 55ch;
  }
}

/* typography.css */
/* Production typography. rem units respect browser text-size preferences.
   Keep these after the preserved concept styles so mobile rules cannot
   shrink navigation, form controls or supporting text back to mockup sizes. */
:root {
  --type-note: var(--type-mono);
  --type-mono: .758625rem;
  --type-small: .875rem;
  --type-body: clamp(1rem, .95rem + .2vw, 1.125rem);
}

html { font-size: 100%; }
.cotier-wordmark { display: inline-flex; align-items: center; gap: .16em; font: inherit; white-space: nowrap; }
.cotier-initial { display: inline-grid; place-items: center; width: 1.296em; height: 1.296em; background: #17372e; color: #f4f1e8; font: inherit; line-height: 1; letter-spacing: 0; flex: none; }
.crh-page, .cr-shell { font-size: var(--type-body); line-height: 1.6; }
.crh-page main, .cr-layout, .crh-opening > *, .cr-layout > *,
.crh-intro-grid > *, .crh-contact > *, .crh-firms > * { min-width: 0; }
.crh-page p, .cr-shell p { overflow-wrap: break-word; }

/* Both opening labels share a top baseline, regardless of column width.
   The higher-specificity selectors also keep mobile padding in sync. */
.crh-opening { --opening-label-offset: clamp(2.5rem, 5vw, 4.5rem); }
.crh-opening > .crh-rail, .crh-opening > .crh-hero-main {
  padding-top: var(--opening-label-offset);
}

/* Body copy: comfortable line length and leading, including on phones. */
.crh-rail > p, .crh-lede, .crh-intro-grid > div > p,
.crh-contact-intro > p, .crh-stats article p, .crh-principle-list p,
.crh-firm-list article p, .cr-rail-intro > p, .cr-workspace-head p,
.cr-result-copy {
  font-size: var(--type-body);
  line-height: 1.65;
  max-width: 65ch;
}
.crh-intro-grid > div > small, .cr-rail-note p,
.cr-sector-copy small {
  font-size: var(--type-small);
  line-height: 1.5;
}

/* Editorial headings: retain the serif character, with room for ascenders. */
.crh-rail h1 em, .crh-hero-main h2 i, .crh-intro h2 i,
.crh-principles h2 i, .crh-firms h2 i {
  color: var(--coral);
}
.crh-rail h1 {
  font-size: clamp(2.75rem, 1.8rem + 2.5vw, 4rem);
  line-height: 1.05;
}
.crh-hero-main h2 {
  font-size: clamp(2.75rem, 1.8rem + 4vw, 5.5rem);
  line-height: 1.05;
}
.crh-intro h2, .crh-principles h2, .crh-firms h2,
.crh-contact-intro h2 {
  font-size: clamp(2.25rem, 1.5rem + 3vw, 4.5rem);
  line-height: 1.1;
}
.crh-principle-list h3, .crh-firm-list article h3 {
  font-size: 1.5rem;
  line-height: 1.25;
}
.crh-proof-head p, .cr-assurance p, .cr-visual-caption p {
  font-size: 1.25rem;
  line-height: 1.4;
}
.crh-stats strong {
  font-size: clamp(4rem, 2rem + 5vw, 7rem);
  line-height: 1.05;
}
.cr-rail h1 {
  font-size: clamp(2.5rem, 1.75rem + 1.8vw, 3.375rem);
  line-height: 1.08;
}
.cr-workspace h2, .cr-result h2 {
  font-size: clamp(1.75rem, 1.35rem + 1.2vw, 2.5rem);
  line-height: 1.2;
  letter-spacing: -.035em;
}

/* Small technical labels are subordinate, not microscopic. */
.crh-brand span, .crh-header-meta, .crh-section-index,
.crh-eyebrow, .crh-kicker, .crh-rail-bottom, .crh-under-note,
.crh-diagram-bar, .crh-diagram-foot, .crh-node, .crh-cloud,
.crh-standard > span, .crh-standard b, .crh-stat-num,
.crh-intro-grid > div > b, .crh-principle-list article > span,
.crh-firm-list article > span, .crh-form-top, .crh-form-note,
.crh-footer, .cr-brand span, .cr-top-meta, .cr-kicker,
.cr-rail-index, .cr-progress-item, .cr-progress-mark,
.cr-big-index small, .cr-sector-num, .cr-sector-monogram,
.cr-priority-num, .cr-priority-tag, .cr-inline-note,
.cr-assurance > span, .cr-step-hint, .cr-visual-top,
.cr-node, .cr-node-icon, .cr-cloud, .cr-visual-caption span,
.cr-visual-bottom, .cr-footer, .cr-result-stamp,
.cr-result-facts span, .cr-honesty {
  font-size: var(--type-note);
  line-height: 1.5;
  letter-spacing: .035em;
}
.crh-header nav, .crh-button, .crh-textlink,
.crh-contact form button, .cr-contact,
.cr-shell .cr-back, .cr-shell .cr-next {
  font-size: var(--type-mono);
  line-height: 1.5;
  letter-spacing: .025em;
}
.crh-brand, .cr-brand { font-size: 1.08375rem; line-height: 1.3; }
.crh-footer > a:first-child { font-size: .867rem; }
.crh-contact form label, .cr-team-label {
  font-size: var(--type-small);
  line-height: 1.5;
}
.crh-contact form label { font-size: var(--type-mono); }
.cr-select-mark { font-size: .7044375rem; }
.cr-checkbox { font-size: .541875rem; }
.cr-team-options button span { font-size: .867rem; }
.crh-firm-list article > b { font-size: .65025rem; }
.crh-contact form input, .crh-contact form textarea,
.cr-sector-copy strong, .cr-priority-name, .cr-team-options button,
.cr-result-facts strong {
  font-size: 1rem;
  line-height: 1.5;
}
.crh-contact form input, .crh-contact form textarea {
  /* At least 16px at the default browser setting avoids iOS focus zoom. */
  padding: .75rem;
}
.crh-contact form textarea { min-height: 7rem; }
.crh-button, .crh-contact form button, .cr-shell .cr-next {
  min-height: 3rem;
  padding: .75rem 1rem;
  white-space: normal;
  text-align: center;
}
.crh-textlink, .cr-contact, .cr-shell .cr-back,
.crh-header nav a, .cr-footer a, .crh-footer > a {
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
}
.crh-header, .cr-topbar {
  height: auto;
  min-height: 4.5rem;
  flex-basis: auto;
  padding-block: 1rem;
  flex-wrap: wrap;
}
.crh-header nav { flex-wrap: wrap; }
.crh-header-meta i {
  background: #16a34a;
  width: 8px;
  height: 8px;
  flex-shrink: 0;
}
.crh-kicker, .crh-rail-bottom, .crh-diagram-bar,
.crh-diagram-foot, .crh-form-top, .cr-visual-top,
.cr-visual-bottom, .cr-footer, .crh-footer { flex-wrap: wrap; }
.crh-under-note { display: block; margin-top: 1rem; }
.crh-check-link { margin-top: .5rem; }
.crh-guide-invitation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .25rem 1.5rem;
  margin-top: 1.5rem;
}
.crh-guide-invitation .crh-check-link { margin-top: 0; }
.crh-rail .crh-rail-link {
  align-self: flex-start;
  position: relative;
  z-index: 1;
  margin-top: .5rem;
  margin-bottom: 1.5rem;
  color: var(--paper);
  border-color: #acb9ac;
}
.crh-rail .crh-rail-link:hover { color: #e6a28c; }

/* Attach the line to the glyphs rather than the bottom of the 44px tap
   target, so it stays close even when the label wraps onto multiple lines. */
.crh-page .crh-textlink,
.crh-page .crh-header nav a,
.crh-page .crh-footer > a:last-child,
.cr-shell .cr-contact,
.cr-shell .cr-footer a {
  border-bottom: 0;
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .4em;
  text-decoration-skip-ink: auto;
}
.crh-principle-list article { grid-template-columns: minmax(8rem, .5fr) 1fr; }
.crh-form-note, .cr-honesty { line-height: 1.65; }
.crh-node b { font-size: var(--type-note); }
.crh-compute b { font-size: 1.5rem; }
.crh-cloud b { font-size: 1.08375rem; }
.crh-diagram { min-height: 22rem; }
.crh-standard > span { flex-shrink: 1; }

/* Give the questionnaire enough width for actual readable text. */
.cr-layout {
  grid-template-columns: minmax(15rem, .8fr) minmax(29rem, 1.4fr) minmax(22rem, 1fr);
}
.cr-workspace { padding-inline: clamp(1.375rem, 2.5vw, 3rem); }
.cr-sector { grid-template-columns: 1.5rem 2rem minmax(0, 1fr) 1.25rem; gap: .75rem; padding-block: 1rem; }
.cr-sector-copy, .cr-priority-name { min-width: 0; }
.cr-priority { grid-template-columns: 1.5rem minmax(0, 1fr) auto 1.25rem; padding-block: 1rem; }
.cr-progress-mark { flex-shrink: 0; width: 1.75rem; height: 1.75rem; }
.cr-form-footer { flex-wrap: wrap; margin-top: 2rem; gap: 1rem; }
.cr-step-hint { flex: 1; min-width: 7rem; }
.cr-team-options button { padding-block: .75rem; gap: .5rem; }
.cr-result-actions { flex-wrap: wrap; }
.cr-result-facts div { grid-template-columns: minmax(7rem, .65fr) minmax(0, 1fr); }
.cr-result-facts strong { overflow-wrap: anywhere; }
.cr-result-stamp { width: 4.5rem; height: 5.5rem; }
.cr-visual { padding-inline: 1.5rem; }
.cr-node { white-space: normal; max-width: 11rem; }
.cr-node-icon { flex-shrink: 0; }
.cr-node-files { max-width: 10rem; }
.cr-node-core { left: 42%; }
.cr-node-answer { right: 0; max-width: 7.5rem; }
.cr-cloud { right: 0; }

@media (max-width: 80em) {
  .crh-header-meta, .crh-brand span, .cr-top-meta, .cr-brand span { display: none; }
  .cr-layout { grid-template-columns: minmax(14rem, .75fr) minmax(0, 1.5fr); }
  .cr-visual { grid-column: 1 / -1; border-left: 0; border-top: 1px solid var(--cr-rule); }
  .cr-diagram { max-width: 30rem; height: 24rem; margin: 1rem auto; }
}

@media (max-width: 62.5em) {
  .crh-opening { display: flex; flex-direction: column; }
  .crh-rail { min-height: 0; padding: 2.5rem 1.5rem; }
  .crh-rail > p { max-width: 40ch; }
  .crh-rail-bottom { margin-top: 2rem; flex-direction: row; gap: 1.5rem; }
  .crh-hero-main { padding: 2.5rem 1.5rem; }
  .crh-principle-list article { grid-template-columns: 1fr; gap: .5rem; }
  .crh-principles { grid-template-columns: 1fr; gap: 2rem; }
  .crh-contact { grid-template-columns: 1fr; gap: 2rem; }
  /* Replace absolute label positioning with a wrapping schematic on narrow
     layouts; otherwise increasing its 5px captions causes collisions. */
  .crh-diagram {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem .75rem;
    aspect-ratio: auto;
    padding: 1rem;
  }
  .crh-diagram svg { display: none; }
  .crh-diagram-bar, .crh-diagram-foot { grid-column: 1 / -1; }
  .crh-diagram-foot { position: static; }
  .crh-node, .crh-cloud {
    position: static;
    transform: none;
    white-space: normal;
    flex-direction: column;
    text-align: center;
    justify-content: center;
  }
  .crh-cloud { flex-direction: row; }
  .crh-node b { width: 2rem; height: 2rem; }
  .crh-compute b { width: 2.5rem; height: 2.5rem; }
}

@media (max-width: 48em) {
  .cr-layout { display: flex; flex-direction: column; min-height: 0; }
  .cr-rail { min-height: 0; padding: 2rem 1.375rem; border-right: 0; }
  .cr-rail-intro > p { max-width: 40ch; }
  .cr-progress { margin-top: 1.5rem; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; }
  .cr-progress-item { flex-direction: column; align-items: flex-start; gap: .5rem; }
  .cr-progress-rule, .cr-rail-note, .cr-rail-index { display: none; }
  .cr-workspace { padding: 2rem 1.375rem; min-height: 0; }
  .cr-priority { grid-template-columns: 1.5rem minmax(0, 1fr) 1.25rem; gap: .5rem; }
  .cr-priority-tag { display: none; }
  .crh-intro-grid, .crh-firms { grid-template-columns: 1fr; gap: 2rem; }
  .crh-stats { grid-template-columns: 1fr; }
  .crh-stats article { min-height: 0; padding: 1.5rem 0; }
  .crh-stats article + article { border-left: 0; border-top: 1px solid #bbc1b4; padding-left: 0; }
  .crh-intro, .crh-firms, .crh-principles, .crh-contact { padding-inline: 1.375rem; }
  .crh-header { padding-inline: 1rem; gap: .75rem; }
  .crh-header nav { gap: .75rem; justify-content: flex-end; }
  .crh-header nav > a:first-child { display: none; }
}

@media (max-width: 30em) {
  .crh-header nav > a:nth-child(2) { display: none; }
  .crh-brand, .cr-brand { font-size: .975375rem; }
  .crh-header nav { max-width: 13rem; }
  .cr-topbar { padding-inline: 1rem; gap: .75rem; }
  .cr-contact { text-align: right; }
  .crh-rail-bottom { flex-direction: column; }
  .crh-button { width: 100%; justify-content: center; gap: .5rem; }
  .crh-actions { align-items: stretch; }
  .crh-form-top { flex-direction: column; }
  .cr-team-options { grid-template-columns: 1fr; }
  .cr-form-footer .cr-step-hint { order: 3; flex-basis: 100%; max-width: none; text-align: left; }
  .cr-result-facts div { grid-template-columns: 1fr; gap: .375rem; }
  .cr-result-stamp { float: none; margin: 1.5rem 0; }
  .cr-node { font-size: var(--type-note); }
  .cr-diagram { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); height: auto; gap: 1.5rem .75rem; }
  .cr-lines { display: none; }
  .cr-node, .cr-cloud { position: static; flex-direction: column; max-width: none; text-align: center; white-space: normal; }
  .cr-node { justify-content: center; }
  .cr-cloud { justify-content: center; }
  .cr-visual-bottom { gap: 1rem; }
}

[hidden] { display: none !important; }

/* Keep locally generated briefs on the same typography scale as the site. */
.cr-brief-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.375rem; }
.cr-shell .cr-brief-button {
  border: 1px solid var(--cr-ink);
  background: transparent;
  padding: .75rem;
  min-height: 44px;
  cursor: pointer;
  font: 500 var(--type-mono)/1.5 "DM Mono", monospace;
  letter-spacing: .04em;
}
.cr-brief-button span { margin-left: .5rem; }
.cr-brief-button:hover { background: var(--cr-rule); }
.cr-brief-button:focus-visible { outline: 2px solid var(--cr-ink); outline-offset: 3px; }
.cr-download-error { font-size: var(--type-small); line-height: 1.6; }
.cr-download-error:empty { display: none; }

@media print {
  @page { margin: 18mm; }
  .cr-brief-ready { min-height: 0; overflow: visible; background: white; color: #17372e; }
  .cr-brief-ready .cr-topbar,
  .cr-brief-ready .cr-rail,
  .cr-brief-ready .cr-visual,
  .cr-brief-ready .cr-footer,
  .cr-brief-ready .cr-result-actions,
  .cr-brief-ready .cr-brief-actions,
  .cr-brief-ready .cr-download-error,
  .cr-brief-ready .cr-result-stamp { display: none !important; }
  .cr-brief-ready .cr-layout { display: block; min-height: 0; max-width: none; margin: 0; }
  .cr-brief-ready .cr-workspace { display: block; padding: 0; border: 0; }
  .cr-brief-ready .cr-result { padding: 0; }
  .cr-brief-ready .cr-kicker { color: #17372e; font-size: 10pt; }
  .cr-brief-ready .cr-result h2 { font-size: 30pt; }
  .cr-brief-ready .cr-result-copy { max-width: none; font-size: 12pt; color: #17372e; }
  .cr-brief-ready .cr-result-facts div { grid-template-columns: 130px 1fr; break-inside: avoid; }
  .cr-brief-ready .cr-result-facts span { color: #17372e; font-size: 9pt; }
  .cr-brief-ready .cr-result-facts strong { font-size: 11pt; }
  .cr-brief-ready .cr-honesty { color: #17372e; font-size: 9pt; }
}

/* homepage-updates.css */
/* Keep light page surfaces on the same brand ivory. */
.crh-page{--surface:var(--paper)}
.crh-image-frame{position:relative;border:2px solid #333333;border-radius:12px;overflow:hidden;box-shadow:none}
.crh-image-frame::after{content:"";position:absolute;inset:0;background:rgba(244,241,232,.1);pointer-events:none}
.crh-image-frame > img{display:block;width:100%;height:auto;filter:saturate(.75)}
.crh-inference-frame{margin:32px auto 0}
.crh-help-grid > div > .crh-help-lede{margin:1.5rem 0 0;color:#4c5d51;font-size:var(--type-body);line-height:1.65;max-width:52ch}
.crh-help-tag{display:block;margin-top:1.5rem;color:#455a4d;font:var(--type-mono)/1.5 var(--mono);letter-spacing:.035em}
.crh-help-photo-frame{width:100%;max-width:360px;margin:40px auto 0}
.crh-boundary-photo-frame{width:100%;max-width:480px;margin:40px auto 0}
.crh-help-list article{border-top-color:#bec3b5}
.crh-help-list article:last-child{border-bottom:1px solid #bec3b5}
.crh-help-list article>span{color:#647568}
.crh-help-list h3{color:var(--deep)}
.crh-help-list p{color:#596a5e;font-size:var(--type-small)!important}
.crh-risk-warning{max-width:1376px;margin:2rem auto 0;padding:1.25rem 1.5rem;border-left:3px solid var(--coral);background:#f4f1e8;display:grid;grid-template-columns:minmax(9rem,.3fr) 1fr;gap:1rem 2rem}
.crh-risk-warning b{color:var(--coral);font:500 var(--type-mono)/1.5 var(--mono);letter-spacing:.035em}
.crh-risk-warning p{margin:0;color:var(--deep);font:1.2rem/1.45 var(--serif);max-width:70ch}
.crh-firms-sub{margin:1.5rem 0 0;color:#4c5d51;max-width:42ch;line-height:1.65}
.crh-talk-link{margin-top:1.5rem;color:var(--paper)}
.crh-talk-link:hover{color:#e6a28c}
@media (max-width:48em){.crh-risk-warning{grid-template-columns:1fr}}
.crh-contact form .crh-consent{display:flex;align-items:flex-start;gap:.75rem;min-height:44px;margin:1rem 0 0;text-transform:none;letter-spacing:0}
.crh-contact form .crh-consent input[type="checkbox"]{width:1.125rem;height:1.125rem;flex:0 0 1.125rem;margin:.15rem 0 0;padding:0;accent-color:var(--coral)}
.crh-contact form .crh-consent span{flex:1;min-width:0}
