/* Public website: existing Arkyvus brand tokens, progressively enhanced pages. */
.website { font-size:16px; background:#fff; }
.website [hidden] { display:none!important; }
.website h1,.website h2,.website h3 { font-family:var(--font-display); letter-spacing:-.035em; line-height:1.15; margin:0 0 1rem; }
.website h1 { font-size:clamp(2.5rem,5vw,4.35rem); font-weight:650; }
.website h2 { font-size:clamp(1.8rem,3.1vw,2.7rem); }
.website h3 { font-size:1.4rem; }
.website p { margin:0 0 1.1rem; }
.website a { color:var(--blue); text-underline-offset:4px; }
.site-wrap { width:min(1160px,calc(100% - 3rem)); margin-inline:auto; }
.web-header { position:sticky; top:0; z-index:40; background:#fff; border-bottom:1px solid var(--line-light); }
.header-inner { display:flex; justify-content:space-between; align-items:center; gap:1.4rem; min-height:84px; }
.web-logo { flex:none; width:158px; }
.web-logo img { object-fit:contain; }
.web-header nav { display:flex; gap:1.5rem; align-items:center; }
.web-header nav a { color:var(--ink); text-decoration:none; font-size:.87rem; font-weight:600; white-space:nowrap; }
.web-header nav a[aria-current=page]:not(.web-button) { color:var(--blue); text-decoration:underline; text-decoration-thickness:2px; }
.website .web-button { display:inline-flex; justify-content:center; align-items:center; gap:1.4rem; border:1px solid var(--blue-int); border-radius:7px; background:var(--blue-int); padding:.9rem 1.2rem; color:#fff; font:600 .94rem var(--font-body); line-height:1.4; text-decoration:none; cursor:pointer; }
.website .web-button:hover { background:var(--blue); border-color:var(--blue); }
.website .web-button:disabled { opacity:.6; cursor:wait; }
.website .web-button.small { font-size:.8rem; padding:.72rem 1rem; color:#fff; }
.website .web-button.secondary { background:#fff; color:var(--blue); border-color:#b8c6e6; }
.website .web-button.secondary:hover { background:#edf3ff; }
.menu-toggle { border:1px solid var(--line-light); background:#fff; border-radius:5px; font:inherit; padding:.45rem .8rem; }
.web-hero { background:var(--night); color:#fff; overflow:hidden; }
.hero-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:4rem; align-items:center; padding-block:86px 80px; }
.eyebrow { font-size:.72rem; font-weight:700; letter-spacing:.13em; color:var(--blue); margin-bottom:1.15rem!important; }
.web-hero .eyebrow,.dark-card .eyebrow { color:#9bbcff; }
.web-hero h1 { font-size:clamp(2.5rem,4.4vw,4.05rem); }
.web-hero em { font-style:normal; color:#a8c3ff; }
.hero-intro { font-size:1.08rem; max-width:35rem; color:#ced5e6; margin-block:1.5rem 1.8rem!important; }
.hero-note { font-size:.76rem; color:#adb9d1; margin-top:1.5rem!important; }
.action-row { display:flex; flex-wrap:wrap; align-items:center; gap:1.5rem; }
.website .text-link { font-weight:650; text-decoration:none; }
.website .light { color:#dbe7ff; }
.workflow-board { padding:1.4rem; border:1px solid #34435f; border-radius:16px; background:var(--night-2); box-shadow:0 25px 75px #0004; transform:rotate(1deg); }
.board-heading { display:flex; align-items:center; gap:.6rem; font-size:.8rem; margin-bottom:1.5rem; }
.board-dot { width:8px; height:8px; background:#90b5ff; border-radius:50%; }
.illustration { margin-left:auto; font-size:.6rem; color:#adb9d1; border:1px solid #34435f; padding:.1rem .35rem; border-radius:3px; }
.board-card { background:#fff; color:var(--ink); padding:1.2rem; border-radius:9px; margin-bottom:1rem; }
.board-card.offset { margin-left:1.5rem; background:#edf3ff; }
.step-label { display:block; font-size:.64rem; letter-spacing:.1em; font-weight:700; color:var(--blue); margin-bottom:.6rem; }
.workflow-board h2 { font-size:1.1rem; letter-spacing:-.02em; }
.workflow-board p { font-size:.78rem; line-height:1.5; margin-bottom:.8rem; }
.board-tags { display:flex; flex-wrap:wrap; gap:.4rem; }
.board-tags span { border:1px solid #dce3ef; padding:.2rem .4rem; font-size:.62rem; border-radius:4px; }
.progress-track { display:flex; gap:5px; }
.progress-track span { height:4px; width:25%; border-radius:4px; background:#abc2f3; }
.progress-track span:first-child { background:var(--blue); }
.board-next { border-left:2px solid #779ff5; padding:.2rem 0 .1rem 1rem; margin:.6rem 0 .2rem 1rem; }
.board-next .step-label { color:#a8c3ff; }
.board-next strong { font-size:.9rem; }
.board-next p { color:#bdcbe4; margin:.4rem 0 0; }
.capability-strip { background:#f1f5fc; border-bottom:1px solid var(--line-light); }
.capability-strip .site-wrap { display:flex; justify-content:space-between; flex-wrap:wrap; gap:1rem 1.5rem; padding-block:1.2rem; font-size:.78rem; font-weight:650; }
.web-section { padding-block:80px; }
.section-intro { max-width:700px; margin-bottom:2.8rem; }
.section-intro>p:not(.eyebrow),.page-intro>p:not(.eyebrow) { color:var(--muted); max-width:680px; }
.feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2.5rem; }
.feature-grid article { border-top:1px solid #cbd5e5; padding-top:1.6rem; }
.feature-number { color:var(--blue); font-size:.74rem; letter-spacing:.05em; font-weight:700; display:block; margin-bottom:1.6rem; }
.feature-grid h2 { font-size:1.5rem; }
.feature-grid p { color:var(--muted); font-size:.95rem; }
.feature-grid a { font-size:.85rem; font-weight:600; }
.soft-section { background:#f4f6fa; border-block:1px solid #e4e9f1; }
.audience-grid,.fit-grid,.booking-grid { display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
.audience-card { background:#fff; border:1px solid #dce2ed; padding:2.4rem; border-radius:12px; }
.audience-card h3 { font-size:1.8rem; max-width:400px; }
.audience-card p:not(.eyebrow) { margin-block:1.5rem; }
.dark-card { background:var(--night-2); color:#fff; border-color:var(--night-2); }
.process-grid { list-style:none; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; counter-reset:step; }
.process-grid li { border-top:2px solid #bcccf0; padding-top:1.2rem; counter-increment:step; }
.process-grid li:before { content:'0' counter(step); display:block; font-size:.75rem; color:var(--blue); margin-bottom:1rem; }
.process-grid h3 { font-size:1.25rem; }
.process-grid p { color:var(--muted); font-size:.93rem; }
.page-intro { padding-block:65px 38px; }
.page-intro>p:not(.eyebrow) { font-size:1.1rem; margin-top:1.5rem; }
.website .subnote { font-size:.8rem!important; color:var(--muted); }
.pricing-section { padding-block:0 70px; }
.pricing-controls { display:flex; gap:2rem; justify-content:space-between; margin-bottom:1.3rem; }
.pricing-controls fieldset { margin:0; border:1px solid #cad4e6; border-radius:8px; padding:.75rem 1rem; display:flex; gap:1.1rem; }
.pricing-controls legend { font-size:.78rem; font-weight:600; padding:0 .35rem; }
.pricing-controls label { cursor:pointer; font-size:.9rem; }
.pricing-controls input { accent-color:var(--blue); }
#billing-explanation { font-size:.86rem; color:var(--muted); }
.package-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.3rem; align-items:start; }
.package-card { border:1px solid #ccd6e6; border-radius:12px; padding:1.55rem; min-width:0; }
.package-card.highlighted { border:2px solid var(--blue-int); padding:calc(1.55rem - 1px); box-shadow:0 12px 25px -15px #2563eb55; }
.package-card h2 { font-size:1.45rem; }
.package-description { min-height:7rem; color:var(--muted); font-size:.87rem; }
.package-price { margin-bottom:.35rem!important; }
.package-price strong { font-size:2.5rem; letter-spacing:-.05em; }
.package-price>span { font-size:.75rem; }
.price-prefix { display:block; }
.price-commitment,.price-alternative { font-size:.8rem; }
.price-alternative { color:var(--muted); }
.package-card>.web-button { display:flex; margin-block:1.5rem; }
.package-inclusions { padding-left:1.15rem; font-size:.84rem; }
.package-inclusions li { margin-block:.65rem; }
.website details { border-top:1px solid #dce3ef; padding:.9rem 0; font-size:.88rem; }
.website summary { cursor:pointer; font-weight:650; }
.website details p,.website details ul { margin-top:.9rem; }
.notice { background:#f0f4fb; border:1px solid #d7e1f0; border-radius:10px; padding:1.5rem; margin-top:1.5rem; }
.notice h2,.notice h3 { font-size:1.25rem; }
.notice p { font-size:.9rem; }
.notice p:last-child { margin-bottom:0; }
.calculator { display:grid; grid-template-columns:1.2fr 1fr; gap:3rem; }
.cost-fields { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.website label { display:block; font-size:.86rem; font-weight:600; }
.website input:not([type=radio]),.website textarea { display:block; border:1px solid #aebbd0; border-radius:6px; background:#fff; width:100%; max-width:100%; padding:.7rem .8rem; font:inherit; font-size:1rem; color:var(--ink); margin-top:.4rem; }
.website textarea { resize:vertical; }
.cost-fields button { align-self:end; }
.cost-results { border-left:1px solid #cbd5e5; padding-left:2rem; }
#cost-output p { background:#fff; padding:.7rem; border-radius:6px; }
.answers-section { max-width:850px; padding-bottom:70px; }
.website .answers-intro { max-width:850px; padding-block:36px 18px; }
.website .answers-intro h1 { font-size:clamp(2rem,3.3vw,2.8rem); }
.website .answers-intro>p:not(.eyebrow) { font-size:1rem; margin-top:1rem; }
.answers-section>section>h2 { font-size:clamp(1.5rem,2.6vw,2rem); }
.answers-section>nav { margin-block:1rem 1.5rem; }
.answers-section a:focus-visible,.answers-section summary:focus-visible { outline:3px solid #719fff; outline-offset:4px; border-radius:3px; }
.answer-search { margin-bottom:2rem; }
#answer-count { font-size:.8rem; margin-top:.5rem; color:var(--muted); }
.answers-section details { padding:1.35rem 0; font-size:1rem; scroll-margin-top:105px; }
.answers-section summary { line-height:1.5; }
.answer-body { color:var(--muted); }
.workflow-detail { padding-top:20px; }
.workflow-detail article { display:grid; grid-template-columns:1fr 3fr; gap:2rem; padding-block:2.5rem; border-top:1px solid #dce3ef; }
.workflow-detail h2 { font-size:2rem; }
.workflow-detail p { max-width:750px; color:var(--muted); }
.fit-grid li,.booking-grid li { margin-block:.7rem; }
.booking-grid { padding-top:20px; gap:5rem; }
.booking-grid form { padding:2rem; border:1px solid #d4ddeb; border-radius:12px; }
.booking-grid form label { margin-bottom:1.15rem; }
#session-status { margin-top:1rem; font-size:.9rem; }
#session-status[data-state=error] { color:#9c2020; }
#session-status[data-state=success] { color:#11613f; }
.closing-section { background:var(--night); color:#fff; }
.closing-inner { padding-block:55px; display:flex; align-items:center; justify-content:space-between; gap:3rem; }
.closing-inner>div { max-width:670px; }
.closing-inner h2 { font-size:2rem; }
.closing-inner .eyebrow { color:#a8c3ff; }
.closing-inner p:last-child { color:#c1cee3; margin:0; }
.closing-inner>a { flex:none; }
.web-footer { background:#f6f8fc; padding-block:45px 20px; }
.footer-grid { display:grid; grid-template-columns:1.3fr 1fr 1.3fr .7fr; gap:2rem; }
.footer-grid>div { display:flex; flex-direction:column; gap:.5rem; font-size:.8rem; }
.footer-grid a { text-decoration:none; color:var(--muted); }
.footer-grid strong { margin-bottom:.5rem; }
.website .footer-brand { color:var(--blue); font:700 1.6rem var(--font-display); }
.footer-grid p { color:var(--muted); margin-top:.4rem; }
.footer-bottom { display:flex; justify-content:space-between; gap:2rem; border-top:1px solid #dce3ef; padding-top:1.2rem; margin-top:2rem; color:var(--muted); font-size:.7rem; }
@media(max-width:1050px) { .web-header nav { gap:.8rem; } .web-header nav a { font-size:.76rem; } .hero-grid { gap:2rem; } .package-card { padding:1.15rem; } .package-card.highlighted { padding:calc(1.15rem - 1px); } }
@media(max-width:820px) { .header-inner { flex-wrap:wrap; padding-block:1rem; min-height:74px; } .web-header nav { width:100%; flex-wrap:wrap; justify-content:flex-start; gap:.7rem 1.2rem; padding-top:.5rem; } .web-header nav a { font-size:.9rem; padding-block:.4rem; } .website.enhanced .menu-toggle { display:block; } .hero-grid { grid-template-columns:1fr; padding-block:55px; gap:3rem; } .workflow-board { max-width:580px; transform:none; } .package-grid { grid-template-columns:1fr; } .package-description { min-height:0; } .package-card { padding:1.7rem; } .package-card.highlighted { padding:calc(1.7rem - 1px); } .feature-grid { gap:1.5rem; } .feature-grid h3 { font-size:1.2rem; } .audience-card { padding:1.5rem; } .calculator { gap:2rem; grid-template-columns:1fr; } .cost-results { border-left:0; border-top:1px solid #cbd5e5; padding:1.5rem 0 0; } .booking-grid { gap:2rem; } .closing-inner { flex-direction:column; align-items:start; } .footer-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:600px) { .site-wrap { width:calc(100% - 2rem); } .web-section { padding-block:48px; } .page-intro { padding-block:44px 25px; } .feature-grid,.audience-grid,.fit-grid,.booking-grid { grid-template-columns:1fr; } .feature-grid { gap:2rem; } .process-grid { grid-template-columns:1fr 1fr; gap:1rem; } .capability-strip .site-wrap { font-size:.7rem; justify-content:flex-start; } .pricing-controls { flex-direction:column; gap:.8rem; } .pricing-controls fieldset { justify-content:flex-start; } .workflow-detail article { grid-template-columns:1fr; gap:0; } .workflow-detail h2 { font-size:1.7rem; } .cost-fields { grid-template-columns:1fr; } .booking-grid form { padding:1.3rem; } .footer-grid { gap:1.7rem 1rem; } .footer-bottom { flex-direction:column; gap:.8rem; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .website * { transition:none!important; animation:none!important; } }
.package-card { scroll-margin-top:100px; }
.package-price { position:relative; padding-top:1.1rem; }
.package-price .price-prefix { position:absolute; top:0; font-size:.72rem; }
.usage-rates { margin-top:3rem; }
.usage-rates>h2 { font-size:1.7rem; }
.rate-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.rate-grid article { border:1px solid #dce3ef; border-radius:8px; padding:1.1rem; }
.rate-grid h3 { font-size:1rem; min-height:2.3rem; }
.rate-grid p { font-size:.83rem; }
@media(max-width:820px) { .rate-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:430px) { .rate-grid { grid-template-columns:1fr; } }
.cost-examples { padding-top:0; }
.cost-examples dl { display:grid; grid-template-columns:1fr auto; gap:.8rem 1rem; font-size:.84rem; }
.cost-examples dd { margin:0; text-align:right; font-variant-numeric:tabular-nums; }
.website .answer-search-row { display:flex; gap:.7rem; align-items:stretch; }
.website .answer-search-row input { flex:1; min-width:0; }
.website .answer-search-row button { flex:none; }
.answer-topic-nav { display:flex; flex-wrap:wrap; gap:.55rem; margin-block:1.5rem 2.5rem; }
.answer-topic-nav a { border:1px solid #ccd6e6; border-radius:6px; padding:.4rem .6rem; font-size:.8rem; text-decoration:none; }
.answer-topic-nav a:hover { background:var(--soft); border-color:var(--blue); }
.question-directory { margin-top:3rem; }
.answers-section .question-group { margin:0; padding-block:1rem; }
.question-group summary { font-size:1.05rem; }
.question-group summary span { color:var(--muted); font-size:.8rem; margin-left:.4rem; font-weight:400; }
.answers-section h3 { margin-top:2.5rem; scroll-margin-top:110px; }
.question-group ul { padding:0; list-style:none; }
.question-group li { border-bottom:1px solid #e2e8f0; }
.question-group li a { display:block; padding:.65rem 0; font-size:.93rem; text-decoration:none; }
.question-group li a:hover { text-decoration:underline; }
.answer-context { margin-block:1.5rem; }
.answer-context p { font-size:.9rem; }
.answer-permalink { display:inline-block; font-size:.78rem; margin-top:.5rem; }
.answers-section details { scroll-margin-top:110px; }
.chat-request { margin-top:1.25rem; padding:1rem; background:var(--soft); border:1px solid #dce3ef; border-radius:8px; }
.chat-request label { display:block; font-weight:700; font-size:.95rem; }
.website .chat-request-text { display:block; box-sizing:border-box; width:100%; min-width:0; margin-block:.75rem; padding:.8rem; border:1px solid #aab9cc; border-radius:6px; background:var(--paper, #fff); color:var(--ink); font:inherit; font-size:.9rem; line-height:1.6; resize:vertical; }
.chat-request-actions { display:flex; flex-wrap:wrap; gap:.65rem; }
.chat-request-status:empty { display:none; }

/* Homepage: one outcome per view, with natural scrolling and room for zoom. */
.home-hero { position:relative; isolation:isolate; min-height:calc(100svh - 144px); overflow:hidden; background:#101c2b; color:#fff; }
.home-hero-art { position:absolute; z-index:-2; inset:auto 0 0; width:100%; height:auto; }
.home-hero::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,#101c2be6 0%,#101c2b44 55%,#101c2b00 78%); }
.home-hero-content { display:flex; flex-direction:column; align-items:center; text-align:center; padding-block:clamp(40px,6vh,72px) 54px; }
.home-hero .eyebrow { color:#adc8ff; }
.website .home-hero h1 { max-width:1040px; font-size:clamp(2.65rem,4vw,4.5rem); line-height:1.12; font-weight:650; letter-spacing:-.045em; text-wrap:balance; margin-bottom:1.35rem; }
.home-hero h1 em { color:#acc8ff; font-style:normal; }
.home-hero-reason { max-width:660px; color:#e1e7f0; font-size:1.04rem; line-height:1.65; }
.home-hero .action-row { justify-content:center; margin-top:.6rem; }
.home-hero .hero-note { max-width:650px; font-size:.76rem; line-height:1.65; color:#c4cfdf; }
.website .home-scroll { display:inline-flex; gap:.8rem; color:#dbe7ff; font-size:.76rem; text-decoration:none; margin-top:.8rem; }
.home-scroll:hover { text-decoration:underline; }
.home-screen { min-height:calc(100svh - 85px); display:flex; align-items:center; padding-block:72px; scroll-margin-top:85px; }
.home-screen-grid { display:grid; grid-template-columns:1fr 1.05fr; align-items:center; gap:clamp(3rem,7vw,7rem); }
.home-story { max-width:490px; }
.website .home-story h2 { font-size:clamp(2.25rem,3.35vw,3.5rem); line-height:1.13; letter-spacing:-.045em; text-wrap:balance; margin-bottom:1.5rem; }
.home-story>p:not(.eyebrow):not(.home-because):not(.home-small) { color:var(--muted); font-size:1rem; line-height:1.8; margin-bottom:1.7rem; }
.home-because { font-size:1.16rem; line-height:1.6; color:var(--ink); }
.home-story .home-small { font-size:.8rem; color:var(--muted); margin-top:1rem; }
.home-soft { background:#f3f6fc; border-block:1px solid #e4eaf4; }
.home-demo { margin:0; border:1px solid #d8e1ef; border-radius:18px; background:white; padding:30px; box-shadow:0 18px 60px -40px #193d7955; }
.home-demo figcaption { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:.6rem; font-size:.61rem; font-weight:700; letter-spacing:.09em; color:var(--blue); margin-bottom:1.7rem; }
.home-demo figcaption>span { font-size:.64rem; font-weight:400; letter-spacing:0; color:var(--muted); }
.home-step { display:block; color:var(--blue); font-size:.64rem; font-weight:700; letter-spacing:.1em; margin-bottom:.6rem; }
.research-start { background:#eff4ff; border:1px solid #d6e2ff; border-radius:10px; padding:1.2rem 1.4rem; }
.research-start>label { display:block; font-family:var(--font-display); font-weight:700; font-size:1.35rem; letter-spacing:-.03em; }
.research-url-row { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:.7rem; }
.research-url-row input { flex:1 1 180px; min-width:0; width:100%; padding:.7rem .9rem; background:#fff; border:1px solid #d5dfee; border-radius:6px; color:var(--ink); font:inherit; font-size:1rem; }
.research-url-row input:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
.research-url-row .web-button { flex:0 0 auto; }
.research-start>p { margin:.75rem 0 0; color:var(--muted); font-size:.76rem; line-height:1.5; }
.home-connector { color:#7997cc; text-align:center; padding:.45rem; }
.research-areas details { border-bottom:1px solid #dce4ef; }
.research-areas summary { display:flex; align-items:center; gap:.75rem; padding:1rem 0; cursor:pointer; font-weight:650; font-size:.95rem; list-style:none; }
.research-areas summary::-webkit-details-marker { display:none; }
.research-areas summary>span { color:#6a7d98; font-size:.68rem; font-weight:500; }
.research-areas summary::after { content:"+"; color:var(--blue); margin-left:auto; font-size:1.15rem; font-weight:400; }
.research-areas details[open] summary::after { content:"−"; }
.research-areas p { font-size:.86rem; line-height:1.65; color:var(--muted); padding-left:1.7rem; }
.home-demo .demo-takeaway { color:var(--muted); font-size:.78rem; line-height:1.65; margin:1.4rem 0 0; }
.decision-demo blockquote { margin:0 0 1.8rem; padding:1.5rem; background:#edf3ff; border-left:3px solid var(--blue-int); border-radius:0 8px 8px 0; font-family:var(--font-display); font-size:1.4rem; line-height:1.4; letter-spacing:-.035em; }
.decision-path,.creation-path,.delivery-path { list-style:none; padding:0; margin:0; }
.decision-path li { display:flex; align-items:flex-start; gap:1rem; padding-block:.85rem; }
.decision-path li>span { display:grid; place-items:center; flex:none; width:28px; height:28px; border:1px solid #ccd9ef; border-radius:50%; font-size:.75rem; color:var(--blue); }
.decision-path strong,.creation-path strong,.delivery-path strong { font-size:1rem; }
.decision-path p,.creation-path p,.delivery-path p { font-size:.84rem; color:var(--muted); line-height:1.65; margin:.3rem 0 0; }
.brand-foundation { padding:1.5rem; border-radius:10px; background:#182d5a; color:#fff; }
.brand-foundation .home-step { color:#afcaff; }
.brand-foundation>strong { display:block; font-family:var(--font-display); font-size:1.8rem; letter-spacing:-.04em; }
.brand-foundation ul { display:flex; flex-wrap:wrap; list-style:none; padding:0; margin:1rem 0 0; gap:.6rem; }
.brand-foundation li { border:1px solid #7588b1; border-radius:5px; padding:.25rem .6rem; color:#e0eaff; font-size:.75rem; }
.creation-path { padding:1.5rem 0 0 1rem; }
.creation-path li { position:relative; border-left:1px solid #bfd0ed; padding:0 0 1.5rem 1.5rem; }
.creation-path li:last-child { padding-bottom:0; }
.creation-path li::before { content:""; position:absolute; width:7px; height:7px; border-radius:50%; background:var(--blue-int); left:-4px; top:5px; }
.creation-path .home-step { margin-bottom:.35rem; }
.home-dark { background:var(--night); color:#fff; }
.home-dark .eyebrow { color:#9dbfff; }
.home-dark .home-because { color:#e1e9f8; }
.home-dark .home-story>p:not(.eyebrow):not(.home-because) { color:#b9c5d9; }
.delivery-demo { background:#101c32; border-color:#334461; box-shadow:none; }
.delivery-demo figcaption { color:#a8c6ff; }
.delivery-demo figcaption>span { color:#aabbd5; }
.delivery-path li { display:flex; gap:1.2rem; padding:1.4rem 0; border-bottom:1px solid #34445f; }
.delivery-path li>span { color:#9dbfff; font-size:.72rem; padding-top:.2rem; }
.delivery-path p { color:#b9c7de; }
.delivery-exception { border-left:2px solid #a8c6ff; padding-left:1rem; margin-top:1.8rem; }
.delivery-exception strong { font-size:.88rem; }
.delivery-exception p { color:#b9c7de; font-size:.8rem; line-height:1.65; margin:.4rem 0 0; }
.results-question { padding:1.5rem; background:#edf3ff; border-radius:10px; }
.results-question>strong { display:block; font-family:var(--font-display); font-size:1.45rem; line-height:1.4; letter-spacing:-.035em; }
.results-question p { color:var(--muted); font-size:.85rem; line-height:1.7; margin:.7rem 0 0; }
.improvement-options { display:flex; flex-direction:column; list-style:none; padding:0; margin:0; }
.improvement-options li { display:grid; grid-template-columns:90px 1fr; gap:.8rem; padding:1rem .5rem; border-bottom:1px solid #dce4ef; }
.improvement-options strong { color:var(--blue); font-size:.95rem; }
.improvement-options span { font-size:.84rem; color:var(--muted); }
.home-next-links { display:flex; flex-wrap:wrap; gap:.7rem 1.3rem; margin-top:1.2rem; font-size:.84rem; }
.agency-revenue-demo>.eyebrow { font-size:.62rem; letter-spacing:.08em; }
.agency-revenue-assumption { font-size:.94rem; color:var(--muted); line-height:1.65; }
.agency-revenue-assumption strong { color:var(--ink); }
.agency-revenue-example { padding-block:1.4rem; border-top:1px solid #dce4ef; }
.agency-revenue-example:last-of-type { border-bottom:1px solid #dce4ef; }
.website .agency-revenue-example h3 { font-size:1.1rem; letter-spacing:-.02em; margin-bottom:.5rem; }
.agency-revenue-example h3 a { text-decoration:none; }
.agency-revenue-example h3 a:hover { text-decoration:underline; }
.agency-revenue-example>p { font-size:.8rem; color:var(--muted); }
.agency-revenue-total { display:flex; flex-direction:column; gap:.2rem; margin-block:1rem .6rem!important; }
.agency-revenue-total strong { font:650 clamp(2.2rem,4vw,3rem)/1.1 var(--font-display); letter-spacing:-.045em; color:var(--blue); }
.agency-revenue-annual { margin-bottom:0!important; }
.agency-revenue-annual strong { color:var(--ink); }
.homepage a:focus-visible,.homepage summary:focus-visible { outline:3px solid #719fff; outline-offset:5px; border-radius:3px; }
@media(min-width:1600px) { .home-hero-content { padding-top:58px; } .home-hero-art { min-height:100%; object-fit:cover; object-position:center bottom; } }
@media(max-width:1050px) { .home-screen-grid { gap:2.5rem; } .home-demo { padding:24px; } .home-hero::before { background:linear-gradient(180deg,#101c2bf5 0%,#101c2bd9 60%,#101c2b22); } }
@media(max-width:820px) {
  .home-hero { min-height:calc(100svh - 75px); }
  .home-hero-content { padding-block:48px 210px; }
  .website .home-hero h1 { max-width:700px; font-size:clamp(2.5rem,6vw,3.7rem); }
  .home-hero-art { height:260px; width:100%; object-fit:cover; object-position:72% bottom; }
  .home-hero::before { background:linear-gradient(180deg,#101c2b 0%,#101c2b 65%,#101c2b00 90%); }
  .home-hero .hero-note { max-width:570px; }
  .home-screen { min-height:auto; padding-block:64px; scroll-margin-top:90px; }
  .home-screen-grid { grid-template-columns:1fr; gap:2.5rem; max-width:630px; }
  .home-story { max-width:none; }
  .website .home-story h2 { font-size:clamp(2.25rem,6vw,3rem); }
}
@media(max-width:480px) {
  .home-hero-content { padding-block:36px 195px; }
  .home-hero .eyebrow { font-size:.6rem; letter-spacing:.1em; }
  .website .home-hero h1 { font-size:2.55rem; }
  .home-hero-reason { font-size:.96rem; }
  .home-hero .action-row { flex-direction:column; gap:1rem; }
  .home-hero .hero-note { font-size:.73rem; }
  .home-hero-art { height:210px; }
  .home-screen { padding-block:52px; }
  .home-demo { padding:22px 18px; border-radius:12px; }
  .home-demo figcaption { font-size:.57rem; }
  .home-because { font-size:1.08rem; }
  .decision-demo blockquote { font-size:1.25rem; padding:1.2rem; }
}

.identity-definition { max-width: 76ch; margin: 0 auto; padding: clamp(40px, 7vw, 96px) 24px; line-height: 1.75; overflow-wrap: anywhere; }
.identity-definition h1 { font-size: clamp(32px, 4.5vw, 56px); line-height: 1.12; letter-spacing: -.025em; margin: 0 0 24px; }
.identity-definition h2 { font-size: clamp(24px, 3vw, 32px); line-height: 1.25; margin: 0 0 16px; }
.identity-definition p { margin: 0 0 20px; }
.identity-definition section { margin-top: 40px; }
.identity-definition a { text-decoration: underline; text-underline-offset: .2em; }
.identity-definition .definition-answer { font-size: 1.15em; }
.identity-definition .definition-byline { font-size: .875em; }

.identity-footer { padding-block: 0 24px; font-size: .875rem; }
