/* Shared Blade page templates: marketing, onboarding, billing and policies. */
.blade-home.blade-app h1{font-size:clamp(2.7rem,5.5vw,4.8rem);font-family:var(--display);line-height:1.08;max-width:950px}
.blade-app .setup-hero,.blade-app .billing-hero,.blade-app .legal-hero{padding:58px 0 40px;background:transparent;border-bottom:1px solid var(--line);margin-bottom:36px}
.blade-app .setup-hero .eyebrow,.blade-app .billing-hero .eyebrow,.blade-app .legal-hero .eyebrow{margin-top:28px;margin-bottom:16px}
.blade-app .setup-hero h1,.blade-app .billing-hero h1,.blade-app .legal-hero h1{margin-top:0}
.blade-app .setup-hero p,.blade-app .billing-hero p,.blade-app .legal-lead{font-size:1rem;max-width:690px;line-height:1.85;margin-top:22px;color:var(--muted)}
.blade-app .legal-hero .updated{font-size:.8rem;padding:7px 12px;border:1px solid var(--line);border-radius:6px;margin-top:22px;background:var(--surface)}
.blade-home .motion-toggle,.blade-home .theme-toggle,.blade-home .nav-toggle{width:44px;height:44px;flex-shrink:0}
.blade-home .motion-toggle svg{width:18px;height:18px}
.blade-home .nav-row{position:relative}
.blade-app .setup-layout{grid-template-columns:240px minmax(0,1fr);gap:44px}
.blade-app .setup-aside,.blade-app .legal-sidebar{top:105px}
.setup-progress{padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--surface);margin-bottom:18px}
.setup-progress strong{font-size:.85rem;display:block}
.setup-progress-track{height:4px;background:var(--soft);border-radius:4px;margin:12px 0;overflow:hidden}
.setup-progress-fill{display:block;height:100%;width:100%;background:var(--accent);transform:scaleX(var(--setup-progress,0));transform-origin:left;transition:transform 400ms var(--motion-ease)}
.setup-progress p{font-size:.74rem!important;margin-top:8px;color:var(--muted)}
.setup-aside a{display:flex;align-items:center;padding:12px 10px;border-radius:6px;line-height:1.55;min-height:48px}
.setup-aside a[aria-current=step]{background:var(--tint);color:var(--accent)}
.setup-aside a.is-complete>span{color:#21745d}
html[data-theme=dark] .setup-aside a.is-complete>span{color:#8bcab4}
.blade-app .setup-card,.blade-app .billing-card,.blade-app .success-panel{border-radius:12px;box-shadow:0 5px 24px #17263805;padding:32px}
.blade-app .setup-card h2,.blade-app .billing-card h2,.blade-app .success-panel h2{font-size:clamp(1.55rem,2.5vw,2.1rem);line-height:1.2;letter-spacing:-.035em}
.blade-app .setup-card-eyebrow{color:var(--muted);font-size:.7rem;letter-spacing:.09em}
.blade-app .setup-card-desc{font-size:.94rem;line-height:1.85;max-width:740px}
.blade-app .field-row label{font-size:.82rem}
.blade-app .field-row input,.blade-app .setup-card select{border-radius:6px;min-height:52px;font-size:1rem}
.blade-app .field-hint{font-size:.8rem;line-height:1.8}
.blade-app .mini-guide{border-radius:8px;padding:0 18px;font-size:.86rem}
.blade-app .mini-guide summary{display:list-item;min-height:48px;padding:13px 0;line-height:1.6}
.blade-app .mini-guide[open]{padding-bottom:18px}
.blade-app .mini-guide ol{margin-top:4px}
.blade-app .credential-example{border-radius:8px;font-size:.8rem}
.blade-app .credential-example code{font-size:.8rem}
.blade-app .crm-option{display:flex;align-items:center;justify-content:center;min-height:52px;font-size:.82rem}
.blade-app .checkbox-row{padding:12px 0;min-height:48px;align-items:start}
.blade-app .checkbox-row input{width:22px;height:22px;margin-top:3px}
.blade-app .btn-outline{border-color:var(--line);background:transparent;color:var(--text)}
.blade-app .copy-btn{min-height:48px;max-width:100%;white-space:normal}
.blade-app .billing-layout{gap:24px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.blade-app .billing-card p,.blade-app .billing-card li{font-size:.94rem;line-height:1.85}
.billing-route{display:flex;gap:14px;padding:20px 0;border-bottom:1px solid var(--line);align-items:start}
.billing-route>span{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border:1px solid var(--line);border-radius:6px;color:var(--accent);font-size:.75rem}
.billing-route h3{font-size:1rem;margin:0!important}
.billing-route p{margin-top:7px!important;font-size:.85rem!important}
.billing-route:last-child{border:0}
.billing-card .billing-secondary{display:inline-flex;align-items:center;min-height:44px;margin-top:14px;font-size:.85rem}
.blade-app .legal-layout{grid-template-columns:240px minmax(0,1fr);gap:36px}
.blade-app .legal-body{padding:32px 38px;border-radius:12px;box-shadow:none}
.blade-app .legal-doc{font-size:.94rem;line-height:1.95;max-width:780px;margin-inline:auto}
.blade-app .legal-doc h2{font-size:1.5rem;font-weight:600;line-height:1.4;letter-spacing:-.025em;scroll-margin-top:105px}
.blade-app .legal-doc h3{font-size:1.12rem;line-height:1.5}
.blade-app .legal-pages,.blade-app .legal-contents{border-radius:10px}
.blade-app .legal-pages a{font-size:.8rem}
.blade-app .legal-contents summary{display:list-item;min-height:44px;padding-block:8px}
.blade-app .legal-contents nav{max-height:38vh;overscroll-behavior:contain}
.blade-app .legal-contents a{padding:11px 10px;border-radius:5px;font-size:.76rem;min-height:44px}
.blade-app .legal-contents a[aria-current=location]{color:var(--accent);background:var(--tint);font-weight:700;text-decoration:none}
.legal-overview{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:26px}
.legal-overview .eyebrow{margin-bottom:12px}
.blade-app .legal-overview h2{font-size:1.4rem;line-height:1.3;margin-bottom:12px}
.legal-overview p{color:var(--muted);font-size:.87rem;line-height:1.9;margin-top:10px}
.legal-quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.legal-quick-links a{display:inline-flex;align-items:center;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:6px;font-size:.74rem;font-weight:700}
.legal-quick-links a:hover{background:var(--tint);border-color:var(--accent)}
.legal-reading-help{font-size:.73rem!important;margin-top:16px!important}
.legal-table-hint{font-size:.75rem;color:var(--muted);margin-top:14px}
.blade-app .legal-doc .plans-table{min-width:740px}.plans-table th:first-child,.plans-table td:first-child{min-width:120px;white-space:nowrap}.plans-table td:nth-child(2){min-width:100px;white-space:nowrap}.plans-table th:nth-child(3){min-width:240px}.plans-table th:nth-child(4){min-width:200px}
.blade-app .legal-table-scroll{overscroll-behavior-x:contain;scrollbar-width:thin}
.blade-home .resource-grid:has(>.resource-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.blade-home .footer-col a{min-height:44px;display:flex;align-items:center}
.blade-home .faq-item summary,.blade-home .feature-detail summary{min-height:44px;display:flex;align-items:center}
.blade-home .scenario-picker button,.blade-home .feature-tabs button,.blade-home .scene-bottom button{min-height:44px}
.blade-home .guide-footer a{min-height:44px;display:inline-flex;align-items:center}
@media(hover:hover) and (pointer:fine){.blade-app .billing-card,.blade-app .setup-card{transition:border-color 400ms ease,box-shadow 500ms ease}.blade-app .billing-card:hover,.blade-app .setup-card:focus-within{border-color:var(--accent);box-shadow:0 10px 30px #17263808}}
@media(max-width:1100px){.blade-app .setup-layout,.blade-app .legal-layout{grid-template-columns:210px minmax(0,1fr);gap:26px}.blade-app .legal-body{padding:28px}.blade-app .setup-card{padding:28px}}
@media(max-width:900px){.blade-home .nav-cta>.btn{display:none}.blade-home .nav-row{gap:12px}.blade-app .setup-layout,.blade-app .legal-layout,.blade-app .billing-layout{grid-template-columns:minmax(0,1fr)}.blade-app .setup-aside,.blade-app .legal-sidebar{position:static}.blade-app .setup-aside ol{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:0}.blade-app .setup-aside li{flex:1 1 160px;border:0}.blade-app .setup-aside a{border:1px solid var(--line);background:var(--surface);height:100%}.blade-app .setup-aside>p{display:none}.blade-app .setup-progress{margin-bottom:14px}.blade-app .legal-pages{display:flex;flex-wrap:wrap;gap:8px}.blade-app .legal-pages a{flex:1 1 190px}.blade-app .legal-contents nav{max-height:40vh}}
@media(max-width:680px){.blade-home .container{width:calc(100% - 36px)}.blade-home .nav-row{min-height:72px;gap:6px}.blade-home .nav-cta{gap:4px}.blade-home .brand{font-size:.85rem;gap:7px}.blade-home .brand img{width:27px;height:27px}.blade-home .nav-links{max-height:calc(100dvh - 72px)}.blade-home .motion-toggle,.blade-home .theme-toggle,.blade-home .nav-toggle{width:44px;height:44px}.blade-app .setup-hero,.blade-app .billing-hero,.blade-app .legal-hero{padding:30px 0;margin-bottom:24px}.blade-home.blade-app h1{font-size:clamp(2.2rem,9vw,3.7rem)}.blade-app .setup-hero p,.blade-app .billing-hero p,.blade-app .legal-lead{font-size:.93rem}.blade-app .setup-card,.blade-app .billing-card,.blade-app .success-panel,.blade-app .legal-body{padding:24px 20px}.blade-app .setup-layout,.blade-app .legal-layout{gap:22px;padding-bottom:54px}.blade-app .setup-aside li{flex:1 1 135px}.blade-app .setup-aside a{font-size:.76rem;padding:10px}.blade-app .setup-aside li span{margin-right:8px}.blade-app .field-two{grid-template-columns:minmax(0,1fr);gap:22px}.blade-app .setup-submit-row>.btn,.blade-app .setup-submit-row>.copy-btn{width:100%}.blade-app .billing-card .btn{width:100%}.blade-app .legal-doc{font-size:.9rem;line-height:1.9}.blade-app .legal-doc h2{font-size:1.25rem}.blade-app .legal-contents{padding:12px 16px}.blade-app .legal-pages a{flex-basis:100%}.blade-home .resource-grid:has(>.resource-card:nth-child(2):last-child){grid-template-columns:minmax(0,1fr)}}
@media(max-width:360px){.blade-home .container{width:calc(100% - 28px)}.blade-home .brand{font-size:.75rem;gap:5px}.blade-home .brand img{width:24px;height:24px}.blade-home .nav-cta{gap:2px}.blade-app .setup-card,.blade-app .billing-card,.blade-app .legal-body{padding:22px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.blade-home *,.blade-home *::before,.blade-home *::after{animation:none!important;transition:none!important}}
/* Keep grid content inside narrow screens; wide tables scroll within their wrapper. */
.guide-layout>*,.guide-section-layout>*{min-width:0}
.guide-copy h1{overflow-wrap:anywhere}
.blade-home .policy-link{min-width:0}
.blade-home .policy-link-top strong{min-width:0;overflow-wrap:anywhere}
@media(max-width:365px){.blade-home .brand{flex-shrink:0;font-size:.78rem;gap:5px}.blade-home .brand img{width:25px;height:25px}.blade-home .nav-row{gap:4px}.blade-home .nav-cta{gap:2px}.blade-home .theme-toggle{display:none}}
@media print{.legal-overview,.legal-table-hint{display:none}.blade-app .legal-hero{border:0;margin:0;padding:0 0 20px}.blade-app .legal-layout{display:block}.blade-app .legal-body{padding:0}.blade-app .legal-doc{max-width:none;font-size:10pt;color:#000}.blade-app .legal-doc h2{break-after:avoid;color:#000}.blade-app .legal-doc .plans-table{min-width:740px}.plans-table th:first-child,.plans-table td:first-child{min-width:120px;white-space:nowrap}.plans-table td:nth-child(2){min-width:100px;white-space:nowrap}.plans-table th:nth-child(3){min-width:240px}.plans-table th:nth-child(4){min-width:200px}
.blade-app .legal-table-scroll{overflow:visible}.blade-app .legal-doc table{min-width:0}.blade-app .legal-hero .updated{border:0;background:transparent}}
