
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:30px; }
body { margin:0; font:15px/1.65 var(--font); color:var(--ink); background:#fff; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; touch-action:manipulation; }
button { cursor:pointer; border:0; }
button:disabled { opacity:.55; cursor:wait; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible { outline:3px solid var(--accent-text); outline-offset:4px; }
.skip { position:fixed; top:-100px; left:16px; padding:10px; background:white; z-index:10; }
.skip:focus { top:10px; }
.public-container { max-width:1200px; margin:0 auto; padding-left:40px; padding-right:40px; }
.public-header { max-width:1280px; margin:auto; height:94px; padding:0 40px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.public-brand { display:inline-flex; align-items:center; flex-shrink:0; }
.public-brand img { display:block; width:144px; height:auto; object-fit:contain; }

.public-header nav { display:flex; gap:29px; font-size:13px; color:var(--muted); }
.public-header nav a:hover,.signin-link:hover,.back-link:hover { color:var(--accent-text); }
.header-actions { display:flex; align-items:center; gap:25px; }
.signin-link,.back-link { font-size:13px; font-weight:550; }
.public-button { display:inline-flex; align-items:center; justify-content:center; gap:14px; padding:11px 19px; min-height:44px; border:1px solid var(--secondary-hover); border-radius:6px; background:var(--secondary); color:var(--charcoal); font-size:13px; font-weight:550; transition:background .2s ease,box-shadow .2s ease; white-space:nowrap; }
.public-button:hover { background:var(--secondary-hover); }
.public-button:focus-visible { box-shadow:0 0 0 2px white; }
input::file-selector-button { margin-right:10px; cursor:pointer; }
input::file-selector-button:hover { background:var(--secondary-hover); }
.public-button.primary { background:var(--accent); color:var(--ink); border-color:transparent; }
.public-button.primary:hover { background:var(--accent-hover); box-shadow:0 4px 16px #323e3c18; }
.public-button.large { padding:15px 24px; font-size:14px; min-height:52px; }
.public-button.full { width:100%; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { line-height:1.15; }
.eyebrow { display:block; color:var(--accent-text); font-size:12px; letter-spacing:1.6px; font-weight:650; line-height:1.6; margin-bottom:14px; }
.hero { display:grid; grid-template-columns:1fr 1.05fr; gap:50px; align-items:center; padding-top:60px; padding-bottom:98px; }
.launch-label { display:inline-flex; align-items:center; gap:8px; font-size:12px; letter-spacing:1.5px; color:var(--muted); font-weight:600; margin-bottom:23px; }
.launch-label>span { width:6px; height:6px; border-radius:50%; background:var(--accent); }
.hero h1 { font-size:65px; font-weight:600; letter-spacing:-3.3px; line-height:1.06; margin-bottom:24px; }
.hero h1>span { color:var(--accent-text); }
.hero-copy>p { font-size:15px; color:var(--muted); max-width:415px; line-height:1.85; margin-bottom:25px; }
.hero-actions { display:flex; gap:22px; align-items:center; flex-wrap:wrap; }
.demo-link { font-size:12px; font-weight:550; color:var(--muted); }
.demo-link:hover { color:var(--accent-text); }
.hero-copy>.hero-small { color:var(--muted); font-size:11px; margin-top:17px; margin-bottom:0; line-height:1.8; }
.product-preview { background:#fff; position:relative; margin-top:20px; }
.product-preview::before { content:''; position:absolute; z-index:-1; background:var(--control-line); inset:-35px -30px 40px 25px; border-radius:20px; transform:rotate(4deg); }
.preview-top { display:flex; align-items:center; gap:9px; background:var(--charcoal); border-radius:12px 12px 0 0; color:white; padding:16px 20px; }
.preview-top strong { font-size:12px; font-weight:500; }
.preview-top>span { font-size:8px; color:var(--control-line); letter-spacing:1px; margin-left:auto; }
.preview-content { padding:23px; }
.preview-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.preview-heading .eyebrow { font-size:8px; letter-spacing:1.2px; margin-bottom:8px; }
.preview-heading h2 { font-size:21px; letter-spacing:-.6px; font-weight:550; margin-bottom:22px; }
.preview-avatar { background:#f4f5ef; color:var(--muted); border-radius:8px; display:grid; place-items:center; width:32px; height:32px; font-size:12px; }
.preview-alert { background:#f4f5ef; border-radius:7px; padding:15px 13px; display:flex; align-items:center; gap:11px; }
.preview-clock { color:var(--accent-text); font-size:30px; line-height:1; }
.preview-alert strong { font-size:13px; display:block; }
.preview-alert small { display:block; font-size:11px; color:var(--muted); margin-top:2px; }
.preview-button { background:var(--secondary); color:var(--ink); border-radius:var(--control-radius); padding:9px 10px; font-size:11px; margin-left:auto; white-space:nowrap; }
.preview-stats { display:grid; grid-template-columns:repeat(3,1fr); padding:20px 0 18px; }
.preview-stats>div {  padding-left:17px; }
.preview-stats>div:first-child { padding-left:4px; }
.preview-stats strong { font-size:25px; font-weight:550; line-height:1.2; }
.preview-stats span { font-size:11px; color:var(--muted); display:block; margin-top:5px; }
.preview-table {  border-radius:7px; }
.preview-table>div { display:flex; gap:12px; align-items:center; padding:15px 12px; }
.preview-table strong { font-size:12px; font-weight:550; }
.preview-table>div>span { font-size:11px; color:#798577; margin-left:auto; }
.pill { display:inline-flex; align-items:center; white-space:nowrap; font-size:11px; font-weight:500; padding:4px 7px; border-radius:4px; background:#f4f5ef; color:var(--muted); }
.pill.due { background:#f4f5ef; color:var(--accent-text); }
.pill.pass { background:#e7efde; color:#42603b; }
.pill.issue { background:#fbf3d3; color:#755713; font-size:11px; letter-spacing:.7px; }
.preview-bottom { display:flex; justify-content:space-between; gap:15px; padding-top:17px; font-size:11px; color:var(--muted); }
.preview-bottom>span:last-child { color:var(--accent-text); }
.record-receipt { position:absolute; display:flex; align-items:center; gap:12px; background:white; padding:15px 18px; bottom:-40px; right:-17px; width:90%; }
.receipt-icon { display:grid; place-items:center; width:33px; height:33px; border-radius:50%; background:#e7efde; color:#42603b; }
.record-receipt strong { font-size:12px; font-weight:550; }
.record-receipt p { font-size:12px; color:var(--muted); margin:3px 0 0; }
.receipt-label { font-size:8px; color:#798577; margin-left:auto; }
.audience-strip { background:#f4f5ef; }
.audience-strip>.public-container { display:flex; align-items:center; justify-content:space-between; padding-top:24px; padding-bottom:24px; gap:24px; }
.audience-strip span { font-size:11px; color:var(--muted); letter-spacing:1px; }
.audience-strip p { margin:0; font-size:14px; color:var(--muted); }
.audience-strip i { padding:0 13px; color:var(--control-line); font-style:normal; }
.features { padding-top:90px; padding-bottom:85px; }
.section-title h2,.records-copy h2,.pricing-grid h2,.final-cta h2 { font-size:39px; line-height:1.15; font-weight:550; letter-spacing:-1.4px; margin-bottom:17px; }
.section-title>p { font-size:14px; color:var(--muted); max-width:440px; line-height:1.8; }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin-top:38px; }
.feature-grid article {  padding-top:24px; }
.feature-number { display:inline-flex; align-items:center; justify-content:center; background:#f4f5ef; color:var(--accent-text); width:35px; height:35px; border-radius:7px; font-size:12px; margin-bottom:20px; }
.feature-grid h3 { font-size:20px; font-weight:550; letter-spacing:-.4px; margin-bottom:12px; }
.feature-grid p { font-size:13px; line-height:1.8; color:var(--muted); min-height:72px; }
.feature-example { display:flex; align-items:center; justify-content:space-between; gap:12px; background:#f4f5ef; padding:15px 13px; border-radius:6px; font-size:11px; }
.feature-example b { font-size:12px; font-weight:500; color:var(--accent-text); }
.feature-example .example-pass { color:#42603b; }
.records-section { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; padding-bottom:90px; }
.records-visual { border-radius:12px; background:#faf5e9; padding:45px; }
.issue-example { background:white; padding:27px; }
.issue-example h3 { font-size:20px; font-weight:550; margin:19px 0 8px; }
.issue-example p { color:var(--muted); font-size:12px; }
.action-example { margin-top:25px; padding-top:22px; display:flex; align-items:flex-start; gap:12px; }
.action-example>span { color:var(--muted); font-size:25px; }
.action-example strong { font-size:12px; color:#42603b; }
.action-example p { margin:7px 0; font-size:11px; }
.action-example small { font-size:11px; color:var(--muted); }
.records-copy>p { font-size:14px; line-height:1.85; color:var(--muted); }
.text-link { font-size:13px; font-weight:550; color:var(--accent-text); }
.pricing-section { background:var(--charcoal); color:white; padding:75px 0; }
.pricing-grid { display:grid; grid-template-columns:1fr 400px; align-items:center; gap:100px; }
.pricing-grid .eyebrow { color:var(--accent); }
.pricing-grid>div>p { color:var(--control-line); font-size:14px; line-height:1.9; }

.price-card { color:var(--ink); background:white; padding:30px; }
.price-card-top { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.price-card-top>span:first-child { font-size:12px; letter-spacing:1.1px; color:var(--muted); font-weight:600; }
.price { font-size:62px; font-weight:550; letter-spacing:-2px; line-height:1.2; margin:23px 0 0; }
.price>span { font-size:15px; color:var(--muted); font-weight:400; letter-spacing:0; margin-left:7px; }
.price-card>p { font-size:11px; color:var(--muted); }
.benefit-list { list-style:none; padding:0; margin:26px 0; }
.benefit-list li { position:relative; padding:6px 0 6px 25px; font-size:12px; }
.benefit-list li::before { content:'✓'; position:absolute; left:0; color:var(--accent-text); }
.price-card>small { display:block; font-size:12px; color:var(--muted); line-height:1.7; text-align:center; margin-top:13px; }
.faq-section { display:grid; grid-template-columns:1fr 1.45fr; gap:70px; padding-top:90px; padding-bottom:80px; }
.faq-list summary { cursor:pointer; padding:21px 25px 21px 0; font-size:14px; list-style:none; position:relative; font-weight:500; }
.faq-list summary::after { content:'+'; position:absolute; right:0; color:var(--accent-text); font-size:22px; font-weight:400; top:15px; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list p { font-size:13px; color:var(--muted); line-height:1.9; padding-right:20px; }
.final-cta { display:flex; align-items:center; justify-content:space-between; gap:30px; padding-top:45px; padding-bottom:65px; }
.final-cta h2 { margin-bottom:0; font-size:32px; }
.brand-signoff { display:flex; align-items:center; gap:8px; }
.brand-signoff img { width:28px; height:28px; opacity:.6; }
.preview-caption { position:absolute; top:calc(100% + 48px); margin:0; width:100%; font-size:11px; line-height:1.5; color:var(--muted); }
.public-footer { display:flex; align-items:center; justify-content:space-between; gap:25px; padding-top:25px; padding-bottom:25px; }
.public-footer .public-brand img { width:117px; height:auto; }
.public-footer>p { margin:0; color:var(--muted); font-size:12px; }
.public-footer>a:last-child { font-size:12px; color:var(--accent-text); }

/* Account, onboarding and development inbox */
.account-page { min-height:100vh; background:var(--canvas); }
.account-page .public-header { height:95px; }
.account-layout { max-width:1090px; padding:35px 40px 60px; margin:auto; display:grid; grid-template-columns:1fr 445px; gap:85px; align-items:center; min-height:calc(100vh - 155px); }
.account-intro h1 { font-size:49px; font-weight:550; letter-spacing:-2px; margin-bottom:20px; }
.account-intro>p { font-size:14px; line-height:1.9; color:var(--muted); }
.account-intro .benefit-list { margin:29px 0; }
.account-intro .benefit-list li { font-size:13px; padding-top:7px; padding-bottom:7px; }
.intro-note { display:flex; flex-wrap:wrap; gap:7px; align-items:center; font-size:12px; color:#798577; padding-top:22px; }
.intro-note>span { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; border-radius:50%; background:var(--line); color:var(--muted); font-size:8px; }
.intro-note>span:not(:first-child) { margin-left:8px; }
.account-card { background:white; padding:33px; }
.account-card h2 { font-size:27px; letter-spacing:-.65px; font-weight:550; margin-bottom:12px; }
.form-description { color:var(--muted); font-size:13px; line-height:1.8; margin-bottom:21px; }
.public-field { display:grid; gap:7px; margin:18px 0; }
.public-field>label { font-weight:550; }
.public-field input, .public-field select { min-height:45px; padding:10px 12px; border:1px solid var(--control-line); border-radius:6px; color:var(--ink); background:white; width:100%; font-size:14px; }

.public-field small { font-size:12px; color:var(--muted); line-height:1.7; }
.password-wrap { display:flex; align-items:stretch; position:relative; }
.password-wrap input { padding-right:63px; }
.password-wrap button { position:absolute; top:5px; right:5px; bottom:5px; background:transparent; color:var(--accent-text); padding:0 10px; border-radius:4px; font-size:11px; }
.form-options { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:20px 0 23px; }
.form-options>label { display:flex; align-items:center; gap:7px; }
.form-options input { width:14px; height:14px; accent-color:var(--accent-text); }
.form-options>a { color:var(--accent-text); }
.public-error { color:#ad382d; font-size:12px; line-height:1.8; margin:13px 0; overflow-wrap:anywhere; }
.public-error:empty { margin:0; }
.account-switch { line-height:1.8; color:var(--muted); margin:20px 0 0; text-align:center; }
.account-switch a { color:var(--accent-text); font-weight:500; }
.resend-link { display:inline-block; margin-top:10px; }
.account-footer { text-align:center; font-size:12px; color:#798577; padding:0 20px 22px; }
.success-symbol { display:grid; place-items:center; width:47px; height:47px; border-radius:12px; background:#e7efde; color:#42603b; font-size:24px; margin-bottom:24px; }
.setup-page { background:var(--canvas); min-height:100vh; }
.setup-main { max-width:930px; padding:35px 35px 70px; margin:auto; }
.setup-heading { margin-bottom:28px; }
.setup-main h1 { font-size:35px; letter-spacing:-1px; font-weight:550; margin-bottom:12px; }
.setup-heading p { color:var(--muted); font-size:14px; }

.mail-card { background:white; margin-top:20px; padding:24px; }
.mail-card h2 { font-size:20px; font-weight:550; }
.mail-card p { color:var(--muted); font-size:12px; }
@media(min-width:1400px) { .hero { padding-top:75px; padding-bottom:115px; gap:65px; } }
@media(max-width:1100px) {
  .hero { gap:35px; }
  .hero h1 { font-size:54px; letter-spacing:-2.5px; }
  .hero-copy>p { font-size:14px; }
  .hero-actions { gap:15px; }
  .preview-content { padding:18px; }
  .preview-table>div { gap:8px; padding-left:9px; padding-right:9px; }
  .preview-table>div>span { display:none; }
  .preview-table .pill { margin-left:auto; }
  .audience-strip>.public-container { flex-direction:column; gap:10px; }
  .records-section { gap:40px; }
  .records-visual { padding:28px; }
  .pricing-grid { gap:60px; grid-template-columns:1fr 360px; }
  .account-layout { gap:45px; grid-template-columns:1fr 410px; }
  .account-intro h1 { font-size:44px; }
}
@media(max-width:850px) {
  .public-header { padding:0 25px; height:80px; }
  .public-header nav { display:none; }
  .public-container { padding-left:28px; padding-right:28px; }
  .hero { grid-template-columns:1fr; gap:55px; padding-top:42px; padding-bottom:85px; }
  .hero-copy { max-width:540px; }
  .hero h1 { font-size:58px; }
  .desktop-break { display:none; }
  .hero-copy>p { max-width:460px; }
  .product-preview { max-width:530px; width:100%; margin:0 auto; }
  .preview-table>div>span { display:block; }
  .preview-table .pill { margin-left:0; }
  .features { padding-top:65px; padding-bottom:60px; }
  .feature-grid { gap:22px; }
  .feature-grid h3 { font-size:18px; }
  .feature-grid p { min-height:115px; }
  .feature-example { flex-wrap:wrap; font-size:12px; }
  .records-section { grid-template-columns:1fr 1fr; gap:28px; }
  .records-visual { padding:18px; }
  .issue-example { padding:20px; }
  .section-title h2,.records-copy h2,.pricing-grid h2 { font-size:32px; letter-spacing:-1px; }
  .pricing-grid { gap:30px; grid-template-columns:1fr 330px; }
  .price-card { padding:25px; }
  .faq-section { gap:30px; grid-template-columns:1fr 1.3fr; }
  .final-cta h2 { font-size:27px; }
  .account-layout { grid-template-columns:1fr; max-width:550px; gap:25px; padding-top:20px; }
  .account-intro { display:none; }
  .account-page .public-header { height:80px; }
}
@media(max-width:600px) {
  .public-header { height:76px; gap:15px; padding:0 20px; }
  .public-brand img { width:126px; height:auto; }

  .header-actions { gap:13px; }
  .header-actions .public-button { display:none; }
  .signin-link,.back-link { font-size:12px; }
  .public-container { padding-left:22px; padding-right:22px; }
  .hero { gap:50px; padding-top:30px; padding-bottom:110px; }
  .launch-label { font-size:8px; letter-spacing:1.3px; margin-bottom:19px; }
  .hero h1 { font-size:46px; letter-spacing:-2.2px; margin-bottom:20px; }
  .hero-copy>p { font-size:14px; line-height:1.8; }
  .hero-actions { gap:18px; flex-wrap:wrap; }
  .public-button.large { font-size:13px; padding:14px 19px; }
  .demo-link { font-size:11px; }
  .hero-copy>.hero-small { font-size:12px; }
  .product-preview { margin-top:0; }
  .product-preview::before { inset:-15px 0 35px 10px; }
  .preview-content { padding:15px; }
  .preview-top { padding:13px 15px; }
  .preview-top>span { font-size:7px; }
  .preview-heading h2 { font-size:20px; }
  .preview-avatar { width:27px; height:27px; font-size:11px; }
  .preview-alert { padding:13px 10px; }
  .preview-alert strong { font-size:12px; }
  .preview-table>div>span { display:none; }
  .preview-table .pill { margin-left:auto; font-size:8px; }
  .preview-table>div { padding-top:13px; padding-bottom:13px; }
  .preview-bottom { font-size:8px; }
  .record-receipt { right:-3px; width:98%; padding:12px; gap:10px; }
  .record-receipt strong { font-size:11px; }
  .record-receipt p { font-size:11px; }
  .receipt-label { font-size:7px; }
  .receipt-icon { width:28px; height:28px; }
  .audience-strip>.public-container { padding-top:22px; padding-bottom:22px; text-align:center; }
  .audience-strip span { font-size:8px; }
  .audience-strip p { font-size:12px; line-height:2.2; }
  .audience-strip i { padding:0 7px; }
  .section-title h2,.records-copy h2,.pricing-grid h2 { font-size:31px; }
  .section-title>p { font-size:13px; }
  .feature-grid { grid-template-columns:1fr; gap:30px; margin-top:30px; }
  .feature-grid article { padding-top:20px; }
  .feature-number { margin-bottom:15px; }
  .feature-grid h3 { font-size:21px; }
  .feature-grid p { min-height:0; font-size:13px; }
  .feature-example { font-size:12px; padding:15px; }
  .feature-example b { font-size:11px; }
  .records-section { grid-template-columns:1fr; gap:32px; padding-bottom:60px; }
  .records-visual { padding:30px; }
  .issue-example { padding:25px; }
  .pricing-section { padding:55px 0; }
  .pricing-grid { grid-template-columns:1fr; gap:32px; }
  .price-card { padding:28px; }
  .faq-section { grid-template-columns:1fr; padding-top:60px; padding-bottom:50px; gap:15px; }
  .faq-list summary { font-size:13px; }
  .final-cta { align-items:flex-start; flex-direction:column; padding-top:35px; padding-bottom:45px; gap:25px; }
  .final-cta h2 { font-size:29px; }
  .public-footer { flex-wrap:wrap; gap:15px; }
  .public-footer>p { order:3; flex-basis:100%; }
  .account-layout { padding:16px 18px 38px; }

  .account-card h2 { font-size:26px; }
  .public-field input, .public-field select { font-size:16px; min-height:47px; }
  .form-options { font-size:12px; }
  .account-footer { font-size:11px; }
  .setup-main { padding:25px 18px 45px; }
  .setup-main h1 { font-size:29px; }

}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }

#multi-site-pricing table { width:100%; border-collapse:collapse; margin-top:22px; font-size:14px; }
#multi-site-pricing caption { text-align:left; margin-bottom:10px; font-weight:600; }
#multi-site-pricing th,#multi-site-pricing td { text-align:left; padding:9px 12px; }
#multi-site-pricing p { font-size:12px; }
.legal-links a { color:inherit; }

.account-shell{max-width:640px;margin:50px auto;padding:0 20px}.account-shell .account-card{width:100%}
.mail-body { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; line-height: 1.6; }

/* Borderless surfaces share the workspace shadow and spacing. */
.product-preview, .record-receipt, .issue-example, .price-card, .account-card, .mail-card { box-shadow: var(--card-shadow); border-radius: var(--card-radius); }
.preview-alert, .preview-table, .feature-example { box-shadow: 0 2px 10px #323e3c0c; }
.feature-grid article { padding: 24px; border-radius: var(--card-radius); background: #f7f8f3; }
.faq-list details { padding: 0 20px; margin-bottom: 12px; border-radius: var(--card-radius); background: #f7f8f3; box-shadow: var(--card-shadow); }
.public-button { box-shadow: 0 2px 8px #323e3c12; }
.public-field>label { font-size: 13px; }
.form-options, .account-switch, .resend-link { font-size: 13px; }
.public-field input::placeholder { color: var(--muted); }

.preview-table>div:nth-child(even), #multi-site-pricing tbody tr:nth-child(odd) { background: #53615712; }
#multi-site-pricing th { background: #ffffff0d; }
.public-footer { flex-wrap: wrap; }
@media(max-width:600px) {
  .account-card { padding: 24px; }
  .form-options { flex-wrap: wrap; gap: 12px; }

  .feature-grid article { padding: 24px; }
}
