/* Ratehaul — Dispatch identity v1. Shared by all product, docs and policy pages. */
:root{--navy:#153c32;--orange:#e9f264;--orange-dark:#d7e347;--offwhite:#f4f0e6;--ink:#18382f;--muted:#52665b;--line:#ccd3c5;--radius:4px;--max:1240px;--gutter:clamp(20px,4vw,56px);--font:"Inter",system-ui,sans-serif}
body{overflow-x:visible}h1,h2,h3{letter-spacing:-.045em;overflow-wrap:normal}h1{font-size:clamp(2.4rem,5.6vw,5rem);line-height:1.02}h2{font-size:clamp(1.8rem,3.5vw,3.2rem)}
.wordmark{font-size:1.65rem;letter-spacing:-.065em;font-weight:750}.site-header{border-bottom:1px solid #ffffff24}.header-inner{min-height:86px}.brand img{width:40px;height:40px}
.btn{border-radius:3px;min-height:48px;padding:13px 22px;font-size:.92rem}.btn-primary,.btn-primary:hover{color:var(--navy)}.btn-primary:hover{background:#f2fa93}.btn-secondary{border-width:1px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #927500;outline-offset:4px}.site-header :focus-visible,.site-footer :focus-visible,.hero :focus-visible{outline-color:var(--orange)}
.eyebrow{font:600 .72rem/1.5 ui-monospace,monospace;letter-spacing:.12em;color:var(--muted)}.hero .eyebrow{color:var(--orange)}
.hero{padding:40px 0 56px}.hero h1{font-size:clamp(2.6rem,5.6vw,5.2rem);max-width:10ch;line-height:.98;letter-spacing:-.065em}.hero h1 em{font-style:normal;color:var(--orange)}.hero .lead{font-size:1.06rem;max-width:42ch;line-height:1.65}.hero-grid{gap:32px}.hero-media{border:0;border-radius:0;background:var(--navy);min-height:0}.hero-media img{aspect-ratio:5/4;object-fit:contain}.hero-fine{font-size:.76rem;max-width:45ch}.hero-actions{margin:28px 0 18px}
.dispatch-label{display:flex;justify-content:space-between;border-top:1px solid #ffffff35;padding:12px 0;color:#c7d7ca;font: .68rem ui-monospace,monospace;text-transform:uppercase;letter-spacing:.1em}.hero-caption{color:#c7d7ca;font:.7rem ui-monospace,monospace;display:flex;justify-content:space-between;padding:0 12px}
.trust-strip{padding:18px var(--gutter);display:flex;justify-content:center;gap:32px;flex-wrap:wrap;border-bottom:1px solid var(--line);font:600 .73rem ui-monospace,monospace;text-transform:uppercase;letter-spacing:.06em}.trust-strip span::before{content:'↗';margin-right:10px}
.section{padding:76px 0}.section h2{font-size:clamp(1.9rem,3.5vw,3rem);max-width:20ch}.section-intro{max-width:65ch}.section-alt{background:#e7ecdf}.steps{gap:0;margin-top:36px}.steps li{border:0;border-top:1px solid var(--ink);border-radius:0;background:transparent;padding:24px 24px 20px 0}.step-num{background:none;color:var(--ink);justify-content:flex-start;font: .85rem ui-monospace,monospace;border-radius:0}.steps h3{font-size:1.3rem;letter-spacing:-.025em}.steps p{font-size:.95rem}.price-card{border-radius:4px;padding:28px}.price-card-featured{border:2px solid var(--navy);background:#eef3ca}.price{font-size:3.5rem;letter-spacing:-.065em}.price-card h3{font-size:1.5rem}.price-sub{min-height:60px}.price-list{font-size:.94rem}.price-card .btn[disabled]{cursor:not-allowed;opacity:1;background:#d9dfd2;border-color:#d9dfd2;color:#45564b}.availability{border-left:3px solid var(--navy);padding:12px 18px;background:#e7ecdf;font-size:.9rem;margin-top:22px}
.feature-table{min-width:0}.feature-table th:first-child{width:65%}.feature-table th,.feature-table td{padding:14px 12px;font-size:.9rem}.faq-item{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.faq-item summary{padding:20px 35px 20px 0}.faq-item summary::after{color:var(--navy)}.faq-body{padding:0 30px 22px 0}.prose{padding-top:60px}.prose h1{font-size:clamp(2.2rem,4vw,3.8rem)}.prose h2{font-size:1.8rem}.footer-heading,.site-footer a:hover{color:var(--orange)}.footer-note,.footer-copy{color:#b7cabb}.site-footer{margin-top:0;padding-top:60px}.site-footer .wordmark{font-size:2.4rem}
.story{height:auto;position:relative;background:var(--navy);color:#fff}.story.is-enhanced{height:calc(var(--scroll-vh,280)*1vh)}.stage{position:relative;height:720px;max-height:100svh;background:var(--navy);overflow:hidden}.is-enhanced .stage{position:sticky;top:0}.stage canvas,.stage .poster{position:absolute;right:0;top:0;width:65%;height:100%;object-fit:contain}.stage canvas{opacity:0}.stage.ready canvas{opacity:1}.stage.ready .poster{visibility:hidden}.story-copy{position:absolute;inset:0;z-index:2;pointer-events:none}.beat{position:absolute;left:var(--gutter);top:50%;translate:0 -50%;width:32%;opacity:0;visibility:hidden;pointer-events:none}.beat.on{pointer-events:auto}.beat h2{color:var(--offwhite);font-size:clamp(2.4rem,4vw,4rem);line-height:1.05}.beat p{color:#c7d7ca;max-width:28ch}.beat .eyebrow{color:var(--orange)}.story:not(.is-enhanced) .beat:first-child{opacity:1;visibility:visible}.story-skip{position:absolute;bottom:24px;left:var(--gutter);z-index:4;color:var(--orange);padding:12px 0}.cue{position:absolute;right:32px;bottom:40px;color:#c7d7ca;font:.72rem ui-monospace,monospace}.cue.off{opacity:0}.rail{position:absolute;right:18px;top:30%;height:30%;width:2px;background:#ffffff30}.rail span{position:absolute;inset:0;background:var(--orange);transform-origin:top}.rail i{display:none}
@media(min-width:900px){.hero{padding:70px 0 60px}.hero-grid{grid-template-columns:1fr 1.1fr;gap:36px}.steps li+li{padding-left:30px}.story .stage{height:100svh;max-height:none}}
@media(max-width:639px){.header-inner{min-height:72px}.hero{padding-top:30px}.hero-media{margin-top:5px}.hero h1{max-width:11ch}.trust-strip{justify-content:flex-start;gap:12px 25px;font-size:.64rem}.section{padding:48px 0}.feature-table th:first-child{width:58%}.feature-table th,.feature-table td{font-size:.78rem;padding:12px 8px}.price-sub{min-height:0}.stage{height:780px}.stage canvas,.stage .poster{top:0;width:100%;height:52%}.beat{left:var(--gutter);top:56%;translate:0 0;width:calc(100% - 2*var(--gutter))}.beat h2{font-size:2.2rem;max-width:13ch}.beat p{font-size:.92rem;max-width:34ch}.story-skip{bottom:10px}.cue{display:none}.hero-caption{font-size:.6rem}}
@media(prefers-reduced-motion:reduce){.story.is-enhanced{height:auto}.is-enhanced .stage{position:relative}.stage canvas{display:none}.stage .poster{visibility:visible!important}.beat:first-child{opacity:1!important;visibility:visible!important;transform:none!important}.beat:not(:first-child),.rail,.cue{display:none}html{scroll-behavior:auto}}
.story-skip{display:flex;gap:24px;flex-wrap:wrap}.story-skip a{color:var(--orange);min-height:44px;display:inline-flex;align-items:center;font-size:.85rem}.table-wrap:focus-visible{outline:3px solid #927500;outline-offset:3px}.story:not(.is-enhanced) .cue{display:none}
