/* Focused readability and interaction polish; retain the existing Commonway surfaces. */
.trust-row a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.billing-saving-note{font-size:12px;line-height:1.55;color:var(--muted);margin:10px 0 0;max-width:300px}
.journey-page .billing-saving-note,.journey-page .checkout-terms,.journey-page .legal-foot{font-size:12px;line-height:1.6}
.journey-page .tiny,.journey-page .field-help,.journey-page .plan-foot{font-size:13px}
.journey-page .plan-availability,.journey-page .annual-note{font-size:13px}
.journey-page .annual-note{color:#405765}
.journey-page .preview-strip{font-size:12px}
.form-instruction{margin:0 0 18px}
.preview-data-note{margin:0}
.billing-notice{border:1px solid #cfdfdc;border-left:3px solid var(--teal,#007567);border-radius:8px;background:#f5f9f8;padding:15px 18px;font-size:14px;line-height:1.65;color:var(--navy)}
#checkout-feedback{margin:16px 0}
.journey-page .status-pill{color:#405765;background:#eef3f5}
.journey-page .status-pill[data-status="active"],.journey-page .status-pill[data-status="trialing"]{color:#156553;background:#e7f3ed}
.journey-page .status-pill[data-status="past_due"]{color:#9b3631;background:#fceeed}
.journey-page .status-pill[data-status="cancel_scheduled"]{color:#805512;background:#fff4dd}
.billing-notice[data-tone="error"]{color:#8e302b;background:#fff2f0;border-color:#e9c4bf;border-left-color:#bd4a42}
.billing-notice[data-tone="warning"]{color:#77511b;background:#fff8e9;border-color:#ead5a5;border-left-color:#b67b23}
.billing-notice[data-tone="neutral"]{color:#405765;background:#f2f6f8;border-color:#d4dfe5;border-left-color:#7e97a5}
.status-pill[data-status="incomplete"]{color:#405765;background:#eef3f5}
.journey-page #billing-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px)}
#billing-dialog-content{margin-top:20px}
#billing-dialog-content:empty{margin:0}
#billing-dialog-content dl{margin:18px 0}
#billing-dialog-content .summary-row{align-items:start}
#billing-dialog-content .summary-row dd{overflow-wrap:anywhere}
#billing-dialog .form-actions{flex-wrap:wrap}
#billing-dialog .form-actions .text-link{margin-left:auto;align-self:center}
.invoice-row{gap:16px;flex-wrap:wrap;align-items:center}
.invoice-actions{display:flex;gap:16px;flex-wrap:wrap}
.invoice-actions a,.invoice-row button.text-control{min-height:44px;display:inline-flex;align-items:center}
.auth-help{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.auth-help a{min-height:32px;display:inline-flex;align-items:center}
.contact-form .form-note{line-height:1.6}
.contact-socials{margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.contact-socials h2{margin:0 0 8px;font-size:17px;line-height:1.4;font-weight:600;color:var(--navy);letter-spacing:0}
.contact-social-links{display:flex;align-items:center;flex-wrap:wrap;gap:4px 24px}
.contact-social-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;line-height:1.5;font-weight:500;color:#40566a;text-decoration:none}
.contact-social-links .social-icon-link{min-width:32px;justify-content:center}
.contact-social-links .social-icon{display:block;width:16px;height:16px;flex:0 0 16px}
.contact-social-links a:hover{color:#087466;text-decoration:underline;text-underline-offset:4px}
.contact-social-links a:focus-visible{outline:2px solid var(--teal,#007567);outline-offset:3px}
.journey-page [hidden],.billing-notice[hidden]{display:none!important}
@media(max-width:700px){
 .journey-page .tiny,.journey-page .field-help,.journey-page .plan-foot{font-size:12px}
 .journey-page .preview-strip{font-size:11px}
 .summary-row dd{overflow-wrap:anywhere}
 .journey-page #billing-dialog{padding:22px}
 #billing-dialog .form-actions{gap:10px}
 #billing-dialog .form-actions .button{flex:1 1 auto;min-height:44px}
 #billing-dialog .form-actions .text-link{margin:0;width:100%;min-height:44px;display:flex;align-items:center;justify-content:center}
 .setup-footer .form-actions{flex-wrap:wrap}
 .invoice-row{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* Screenshot follow-up: give controls their own column and a predictable rhythm. */
body:not(.journey-page) #pricing .pricing-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 48px;align-items:end;margin-bottom:30px}
body:not(.journey-page) #pricing .pricing-intro{min-width:0;max-width:720px}
body:not(.journey-page) #pricing .pricing-intro h2{max-width:600px;font-size:clamp(32px,3.2vw,46px);line-height:1.14;margin-bottom:18px}
body:not(.journey-page) #pricing .pricing-summary{margin:0 0 12px;line-height:1.65}
body:not(.journey-page) #pricing .plan-status{max-width:650px;margin:0;font-size:13px;line-height:1.75}
body:not(.journey-page) #pricing .pricing-controls,body:not(.journey-page) .plan-details-section .pricing-controls,.journey-page #pricing .billing-choice{display:grid;grid-template-columns:minmax(0,1fr);justify-items:end;justify-self:end;align-content:start;gap:8px;width:248px;max-width:100%;margin:0;text-align:right}
body:not(.journey-page) .pricing-section .toggle,.journey-page #pricing .billing-toggle{display:inline-grid;grid-template-columns:repeat(2,minmax(88px,1fr));gap:4px;width:max-content;max-width:100%;margin:0;padding:4px;border-radius:9px}
body:not(.journey-page) .pricing-section .toggle button,.journey-page #pricing .billing-toggle button{min-width:0;min-height:40px;margin:0;padding:8px 16px;display:flex;align-items:center;justify-content:center;line-height:1.35;font-size:13px}
body:not(.journey-page) .pricing-section .billing-saving-note,.journey-page #pricing .billing-saving-note{max-width:248px;margin:0;padding:0;font-size:12px;line-height:1.6}
body:not(.journey-page) .plan-details-section .pricing-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px 40px}
body:not(.journey-page) .plan-details-section #compare{width:100%;margin:24px 0 0;padding:0}
body:not(.journey-page) .plan-details-section .plan-status{margin-bottom:0;font-size:14px;font-weight:400;line-height:1.7}
.pricing-section #compare .plan-disclosure>summary{padding:20px 0 14px}
.pricing-section #compare .disclosure-content>.comparison-note:first-child{margin:0 0 4px}
.pricing-section #compare .comparison-scroll-note{margin:0 0 16px}
@media(min-width:701px){
 .pricing-section #compare .comparison-table thead th,.journey-page #compare .comparison-table thead th{vertical-align:top;padding:12px 16px}
 .pricing-section #compare .comparison-table thead th:first-child,.journey-page #compare .comparison-table thead th:first-child{width:40%;vertical-align:middle;font-size:14px;font-weight:600;color:var(--navy);padding:12px 16px}
 .pricing-section #compare .comparison-table tbody th,.pricing-section #compare .comparison-table tbody td{vertical-align:middle;padding-inline:16px}
}
#updates.trial-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:center;gap:36px 64px}
#updates.trial-section .trial-copy{min-width:0}
#updates.trial-section .trial-copy h2{font-size:clamp(30px,3vw,40px);line-height:1.2;max-width:600px;margin:0 0 16px}
#updates.trial-section .trial-copy>p:last-child{max-width:540px;margin:0;font-size:15px;line-height:1.7}
#updates.trial-section .trial-actions{display:grid;gap:12px;width:100%;max-width:none;text-align:center}
#updates.trial-section .trial-actions>p{font-size:12px;line-height:1.6;margin:0;text-align:center}
#updates.trial-section .trial-actions>.text-link{font-size:13px;min-height:36px;display:flex;align-items:center;justify-content:center;text-decoration:underline;text-underline-offset:3px}

/* A single compact footer row, with a native disclosure for social links. */
body>footer.site-footer{display:block;padding:18px 5vw;min-height:0;text-align:left;background:#fafcfc}
body>footer.site-footer .footer-main{display:flex;align-items:center;justify-content:space-between;gap:16px 32px;width:100%}
body>footer.site-footer .footer-identity{display:flex;align-items:center;gap:24px;flex-shrink:0}
body>footer.site-footer .brand-image{width:150px;flex:0 0 150px;height:34px;margin:0}
body>footer.site-footer .footer-credit{margin:0;color:var(--muted);font-size:11px;line-height:1.7;white-space:nowrap}
body>footer.site-footer .footer-credit span{display:block;font-size:10px}
body>footer.site-footer .footer-links{display:flex;align-items:center;justify-content:flex-end;gap:22px}
body>footer.site-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:0 20px;width:auto;margin:0;order:0}
body>footer.site-footer nav a{display:inline-flex;align-items:center;min-height:44px;padding:0;font-size:12px;line-height:1.5;font-weight:400;color:var(--muted);text-decoration:none}
body>footer.site-footer nav a:hover{text-decoration:underline;text-underline-offset:3px}
.footer-follow{position:relative;flex-shrink:0}
.footer-follow>summary{display:flex;align-items:center;gap:8px;min-height:44px;list-style:none;cursor:pointer;color:var(--muted);font-size:12px}
.footer-follow>summary::-webkit-details-marker{display:none}
.footer-follow-chevron{width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);margin-top:-3px}
.footer-follow[open] .footer-follow-chevron{transform:rotate(225deg);margin-top:3px}
body>footer.site-footer .footer-socials{position:absolute;bottom:calc(100% + 8px);right:0;z-index:25;display:grid;gap:0;min-width:168px;padding:6px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 24px #152d4d12}
body>footer.site-footer .footer-follow:not([open]) .footer-socials{display:none}
body>footer.site-footer .footer-socials a{display:flex;padding:0 12px;color:var(--navy);border-radius:4px}
body>footer.site-footer .footer-socials a:hover{background:#f0f6f4}
.footer-follow>summary:focus-visible,body>footer.site-footer a:focus-visible{outline:2px solid var(--teal,#007567);outline-offset:3px}

/* Keep private review controls outside the customer-facing page content. */
.review-toolbar{display:flex;align-items:center;gap:6px 16px;flex-wrap:wrap;padding:9px 5vw;border-bottom:1px solid var(--line);background:#eef5f3;color:#526776;font-size:12px;line-height:1.5}
.review-toolbar[hidden]{display:none}
.review-toolbar strong{font-weight:600;color:var(--navy)}
.review-toolbar a{margin-left:auto;text-decoration:underline;text-underline-offset:3px}
.preview-navigation #sample-signup{width:auto;margin:0;white-space:nowrap}

/* Account cards: left-aligned copy, evenly spaced actions, no empty status gaps. */
body[data-page="forgot-password"] .journey-shell{display:grid;align-content:center;padding-block:36px}
.journey-page .confirmation .form-foot{text-align:left;margin:16px 0 0}
.journey-page .confirmation p:empty,.journey-page .confirmation #success-summary:empty{display:none}
.journey-page .confirmation[data-state="pending"] #go-to-app,.journey-page .confirmation[data-state="empty"] #go-to-app,.journey-page .confirmation[data-state="unconfirmed"] #go-to-app{margin-top:24px}
.journey-page .confirmation .form-error{margin-top:16px}
.journey-page .verification-card h1{margin-bottom:12px}
.verification-actions{display:grid;gap:8px;margin-top:24px}
.verification-actions>.text-control{justify-self:start;min-height:40px;padding:8px 0}
.verification-actions>.button{margin:0}
.verification-help{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}
.verification-help .tiny{margin:0;line-height:1.7}
.journey-page .verification-help .form-foot{margin:10px 0 0}
.journey-page #verify-status:not(:empty){margin:12px 0 0}
.journey-page .auth-help{justify-content:space-between;gap:12px;margin-top:18px}
.journey-page .auth-help a{min-height:36px}
.checkout-secure-note{font-size:12px;color:var(--muted);line-height:1.5;text-align:center;margin:12px 0 0}
.test-payment-method{display:flex;align-items:center;gap:14px}
.test-payment-method .card-type{font-size:12px;font-weight:600;color:var(--navy);padding:8px;border:1px solid var(--line);border-radius:5px;background:#fff}
.test-payment-method strong{margin-bottom:3px}
.test-payment-method p{font-size:12px}
.journey-page .summary-row{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12px 22px;align-items:start}
.journey-page .summary-row dd{max-width:none;min-width:0}
.journey-page .checkout-layout .summary .summary-row{padding-block:10px}
.journey-page .checkout-layout .summary .summary-row.total{padding-top:18px}
.journey-page .checkout-terms{margin-top:18px;line-height:1.75}
.journey-page #billing-dialog .form-actions{justify-content:flex-start;gap:12px;margin-top:24px}
.journey-page #billing-dialog .form-actions .text-link{margin:0;min-height:40px}

@media(max-width:1100px){
 body>footer.site-footer .footer-main{flex-wrap:wrap;gap:8px 24px}
 body>footer.site-footer .footer-links{flex-wrap:wrap;justify-content:flex-start;gap:0 20px}
}
@media(max-width:900px){
 body:not(.journey-page) #pricing .pricing-head{grid-template-columns:minmax(0,1fr);gap:24px}
 body:not(.journey-page) #pricing .pricing-controls{justify-self:end}
 body:not(.journey-page) .plan-details-section .pricing-head{grid-template-columns:minmax(0,1fr)}
 #updates.trial-section{gap:32px;grid-template-columns:minmax(0,1fr) minmax(240px,300px)}
}
@media(max-width:700px){
 body>footer.site-footer{padding:16px 5vw}
 body>footer.site-footer .footer-identity{gap:20px;flex-wrap:wrap}
 body>footer.site-footer .footer-main{gap:8px}
 body>footer.site-footer .footer-links{width:100%;gap:0 16px}
 body>footer.site-footer .footer-links>nav{gap:0 16px}
 body>footer.site-footer .footer-follow{margin-left:auto}
 #updates.trial-section{grid-template-columns:minmax(0,1fr);gap:26px}
 #updates.trial-section .trial-actions{max-width:400px;text-align:left}
 .journey-page .preview-strip{gap:8px;padding-block:10px}
 .preview-navigation{flex-wrap:wrap;max-width:100%;gap:8px 16px}
 .preview-navigation select{max-width:100%}
 .journey-page .confirmation,.journey-page .auth-card{padding:24px}
 .journey-page .summary-row{gap:10px 16px;font-size:13px}
 .journey-page .summary-row.total{font-size:17px}
 .journey-page .setup-footer{gap:16px;flex-wrap:wrap}
 .journey-page .setup-footer .form-actions{margin-left:auto;gap:10px}
 .journey-page .subscription-overview{flex-wrap:wrap;gap:12px}
 .journey-page .subscription-amount{text-align:left}
 .review-toolbar a{margin-left:0}
}

/* Public coming-soon copy retains the approved design and spacing. */
.hero-copy .launch-eyebrow{display:block;margin:0 0 16px;text-align:center;color:#087466;font-size:12px;font-weight:650;letter-spacing:.1em;text-transform:uppercase}
.hero-copy .launch-note{max-width:560px;margin:20px auto 0;font-size:13px;line-height:1.65;color:var(--muted)}
