/* SMS Vanta public pages — white canvas, original maroon identity */
.public-body{background:#fff;color:#252329;min-height:100vh}
.public-shell{min-height:100vh;display:flex;flex-direction:column;background:#fff}
.public-header{height:78px;padding:0 clamp(18px,5vw,70px);display:flex;align-items:center;justify-content:space-between;gap:28px;background:rgba(255,255,255,.96);border-bottom:1px solid #f0e9ea;position:sticky;top:0;z-index:40;backdrop-filter:blur(14px)}
.public-brand{display:inline-flex;align-items:center;min-width:0;text-decoration:none}
.public-logo{display:block!important;width:138px!important;height:auto!important;max-width:100%!important;max-height:48px!important;object-fit:contain!important;object-position:left center!important}
.public-navigation{display:flex;align-items:center;justify-content:flex-end;gap:clamp(14px,2.5vw,32px)}
.public-navigation>a{font-size:13px;font-weight:650;color:#5f565b;white-space:nowrap;transition:color .18s ease}
.public-navigation>a:hover{color:var(--maroon)}
.public-navigation .public-nav-login{color:var(--maroon);margin-left:6px}
.public-navigation .public-nav-cta{display:inline-flex;align-items:center;gap:12px;background:var(--maroon);color:#fff;padding:12px 17px;border-radius:8px;box-shadow:0 5px 13px #300d1215}
.public-nav-cta:hover{background:#481922!important;color:white!important}
.public-nav-toggle{display:none;border:1px solid #eee2e4;background:#fff;color:var(--maroon);border-radius:8px;width:42px;height:40px;font-size:20px}
.public-main{width:100%;flex:1}
.landing-hero{max-width:1440px;margin:0 auto;padding:clamp(48px,7vw,90px) clamp(18px,5vw,72px) 72px;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(350px,.96fr);align-items:center;gap:clamp(36px,6vw,88px);min-height:560px}
.landing-copy{max-width:620px}
.landing-kicker,.section-kicker,.auth-story-kicker{display:inline-flex;align-items:center;gap:9px;letter-spacing:1.65px;font-size:10px;font-weight:800;color:#8a6067}
.landing-kicker{padding:9px 12px;background:#fbf5f6;border:1px solid #f0e4e6;border-radius:99px;letter-spacing:1.2px}
.landing-kicker .live-dot{width:6px;height:6px;box-shadow:none}
.landing-copy h1{font:800 clamp(39px,5.3vw,68px)/1.09 Manrope,'DM Sans',sans-serif;letter-spacing:-2.8px;color:#242027;margin:24px 0 22px}
.landing-copy h1 em,.section-heading h2 em,.auth-story h1 em{font-style:normal;color:var(--maroon-2)}
.landing-lead{max-width:535px;font-size:16px;line-height:1.8;color:#777079;margin:0}
.landing-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.landing-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:0;border-radius:8px;padding:14px 19px;font-size:13px;font-weight:750;line-height:1.4;text-decoration:none;transition:background .18s ease,transform .18s ease,box-shadow .18s ease;cursor:pointer}
.landing-button:hover{transform:translateY(-1px)}
.landing-button-primary{background:var(--maroon);color:#fff;box-shadow:0 8px 18px #300d121c}
.landing-button-primary:hover{background:#4a1922;color:#fff;box-shadow:0 10px 21px #300d1226}
.landing-button-secondary{border:1px solid #e8dcde;background:#fff;color:var(--maroon)}
.landing-button-secondary:hover{background:#fbf5f6}
.landing-points{display:flex;flex-wrap:wrap;gap:13px 21px;margin-top:26px;color:#8b848b;font-size:11px}
.landing-points span{display:inline-flex;align-items:center;gap:7px}
.landing-points b{width:16px;height:16px;border-radius:50%;display:inline-grid;place-items:center;background:#edf6f0;color:#2d8b63;font-size:10px}
.landing-product{border:1px solid #f0e6e7;border-radius:19px;padding:13px;background:#fff;box-shadow:0 24px 70px #300d1210;max-width:570px;width:100%;justify-self:end;transform:rotate(.6deg)}
.product-window-top{height:40px;display:flex;align-items:center;gap:12px;padding:0 11px;color:#9b9298;font-size:9px;font-weight:800;letter-spacing:1.1px;border-bottom:1px solid #f2ecec}
.product-lights{display:flex;gap:4px}.product-lights i{height:6px;width:6px;border-radius:50%;background:#eadcde}.product-lights i:first-child{background:#b7838b}.product-window-top>span:nth-child(2){flex:1}
.product-window-mark{height:22px;width:22px;border-radius:7px;background:var(--maroon);color:#fff;display:grid;place-items:center;font:800 11px Manrope,sans-serif}
.product-window-body{padding:21px 17px 13px}
.product-greeting{display:grid;gap:5px;margin-bottom:20px}.product-greeting small{font-size:9px;letter-spacing:1.4px;font-weight:800;color:#a38e94}.product-greeting strong{font:800 20px Manrope,sans-serif;color:#29242a}.product-greeting>span{font-size:10px;color:#999098}
.product-mini-metrics{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:12px}
.product-mini-metrics>div{display:grid;gap:7px;padding:15px;border:1px solid #f0e8e9;border-radius:10px;background:#fff}
.product-mini-metrics span{color:#827880;font-size:10px}.product-mini-metrics b{font:800 25px Manrope,sans-serif;color:var(--maroon)}.product-mini-metrics small{font-size:9px;color:#a29ba2}
.product-provider-row{display:flex;align-items:center;gap:12px;border:1px solid #f0e8e9;border-radius:10px;padding:13px;margin-top:9px}
.provider-symbol{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:9px;background:#f5e8ea;color:var(--maroon);font-size:17px;font-weight:800}
.provider-symbol-light{background:#f5f2f3;color:#74666d}
.product-provider-row>div{display:grid;gap:3px;min-width:0;flex:1}.product-provider-row strong{font-size:11px;color:#3a3339}.product-provider-row small{font-size:9px;color:#999098;line-height:1.45}.provider-chevron{color:#8d7379}
.product-note{margin:10px 4px 1px;padding:10px 12px;background:#faf6f6;border-radius:8px;font-size:9px;color:#8a7379;display:flex;align-items:center;gap:7px}.product-note-dot{width:6px;height:6px;border-radius:50%;background:#42a078}
.landing-section,.landing-process{padding:88px clamp(18px,5vw,72px);}
.landing-section{background:#fcfafa;border-top:1px solid #f5eeee;border-bottom:1px solid #f5eeee}
.section-heading{text-align:center;max-width:650px;margin:0 auto 38px}.section-heading-left{text-align:left;margin:0 0 34px;max-width:760px}
.section-kicker{font-size:9px;color:#92656d;letter-spacing:1.7px}
.section-heading h2,.landing-developer h2,.landing-cta h2{font:800 clamp(29px,3.5vw,42px)/1.2 Manrope,sans-serif;letter-spacing:-1.2px;color:#282329;margin:13px 0}
.section-heading p{font-size:13px;line-height:1.8;color:#878089;margin:0}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;max-width:1180px;margin:0 auto}
.feature-card{background:#fff;border:1px solid #eee6e7;border-radius:13px;padding:26px;box-shadow:0 8px 28px #300d1205}
.feature-icon{width:42px;height:42px;border-radius:12px;background:#f5e8ea;color:var(--maroon);display:grid;place-items:center;font-size:20px;margin-bottom:20px}
.feature-card h3,.process-grid h3{font:750 15px Manrope,sans-serif;color:#30292f;margin:0 0 9px}.feature-card p,.process-grid p{font-size:12px;line-height:1.8;color:#88818a;margin:0}
.landing-process{max-width:1440px;margin:0 auto}
.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.process-grid article{padding:23px 25px;border-left:2px solid #e2cbd0;background:linear-gradient(90deg,#fbf6f7,#fff 70%);border-radius:0 10px 10px 0}
.process-grid article>span{display:block;font:800 24px Manrope,sans-serif;color:#b7878e;margin-bottom:23px}
.landing-developer{max-width:1280px;margin:0 auto 75px;padding:clamp(28px,4vw,48px);display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:38px;background:linear-gradient(120deg,#300d12,#4b1d27);border-radius:17px;color:#fff}
.section-kicker-light{color:#d6b7bd}.landing-developer h2{color:#fff;margin:13px 0;font-size:clamp(28px,3.2vw,39px)}.landing-developer p{max-width:590px;font-size:12px;line-height:1.9;color:#e0cfd2;margin:0}
.developer-code{padding:22px;background:#231015;border:1px solid #ffffff1a;border-radius:12px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:13px;min-width:0}.developer-code-dots{grid-column:1/-1;display:flex;gap:5px;margin-bottom:9px}.developer-code-dots i{height:7px;width:7px;border-radius:50%;background:#74444d}.developer-code-method{font:800 10px Manrope,sans-serif;color:#a7d5b5;background:#244634;padding:5px 7px;border-radius:4px}.developer-code code{font-size:11px;color:#f4e8ea;overflow-wrap:anywhere}.developer-code small{grid-column:1/-1;color:#bda5aa;font-size:9px;line-height:1.7;margin-top:4px}
.landing-cta{max-width:1280px;margin:0 auto 75px;padding:29px 32px;display:flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid #efe5e6;border-radius:14px;background:#fdfafa}.landing-cta h2{font-size:27px;margin:8px 0}.landing-cta p{font-size:12px;color:#88818a;margin:0}.landing-cta .landing-button{flex-shrink:0}
.public-footer{padding:28px clamp(18px,5vw,72px) 18px;border-top:1px solid #f0e9ea;background:#fff}.public-footer-brand img{display:block;width:100px;height:auto;max-height:35px;object-fit:contain;object-position:left center}.public-footer-brand p{font-size:10px;color:#999098;margin:7px 0 15px}.public-footer-links{display:flex;flex-wrap:wrap;gap:13px 22px}.public-footer-links a{font-size:10px;color:#766c74}.public-footer-links a:hover{color:var(--maroon)}.public-footer-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:20px;padding-top:15px;border-top:1px solid #f3eeee;color:#a29ba2;font-size:9px}
/* Account-entry pages */
.auth-layout{max-width:1150px;min-height:calc(100vh - 170px);margin:0 auto;padding:45px clamp(18px,5vw,60px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1fr);align-items:center;gap:clamp(30px,6vw,80px)}
.auth-story{padding:35px 0;max-width:400px}.auth-story-kicker{color:#91616a}.auth-story h1{font:800 clamp(40px,5vw,59px)/1.08 Manrope,sans-serif;letter-spacing:-2px;color:#29232a;margin:24px 0 18px}.auth-story>p{font-size:14px;line-height:1.9;color:#847d85;margin:0;max-width:365px}.auth-story-line{width:61px;height:4px;border-radius:10px;background:var(--maroon);margin:30px 0 16px}.auth-story>small{font-size:10px;color:#a29aa2}
.auth-form-wrap{width:100%;max-width:500px;justify-self:center}.auth-card-v2{padding:clamp(23px,4vw,37px);border:1px solid #eee5e7;border-radius:15px;background:#fff;box-shadow:0 16px 45px #300d120b}.auth-card-heading{display:flex;align-items:center;gap:13px;margin-bottom:25px}.auth-card-icon{height:43px;width:43px;flex:0 0 43px;display:grid;place-items:center;border-radius:12px;background:var(--maroon);color:#fff;font:800 19px Manrope,sans-serif}.auth-card-heading h2{font:800 18px Manrope,sans-serif;color:#29242a;margin:0 0 5px}.auth-card-heading p{font-size:11px;color:#8b838b;margin:0}.public-form{display:grid;gap:9px}.public-form>label,.field-heading label{font-size:11px;font-weight:750;color:#4f464e;margin-top:5px}.public-form input:not([type=checkbox]){width:100%;min-width:0;height:45px;border:1px solid #e7dfe1;border-radius:7px;background:#fff;color:#282329;padding:0 13px;font-size:12px;outline:none;transition:border .15s,box-shadow .15s}.public-form input::placeholder{color:#b0a8af}.public-form input:focus{border-color:#a4777e;box-shadow:0 0 0 3px #71303a12}.public-form input[aria-invalid="true"]{border-color:#b33d49;box-shadow:0 0 0 3px #b33d4910}.field-heading{display:flex;align-items:center;justify-content:space-between;margin-top:3px}.field-heading a,.auth-bottom-link a,.auth-back-link{font-size:10px;font-weight:750;color:var(--maroon)}.password-field{position:relative;display:flex;align-items:center}.password-field input{padding-right:58px!important}.password-field button{position:absolute;right:7px;border:0;background:#f8f2f3;color:#78525a;font-size:10px;font-weight:800;border-radius:5px;padding:6px 8px}.field-help{font-size:10px;line-height:1.6;color:#9a9299;margin:0 0 3px}.checkbox-line{display:flex;align-items:flex-start;gap:9px;margin:8px 0 6px;font-size:10px!important;line-height:1.65;color:#817982!important;font-weight:500!important}.checkbox-line input{margin:2px 0 0;accent-color:var(--maroon);flex:0 0 auto}.form-submit{width:100%;margin-top:9px;min-height:45px}.form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-bottom-link{text-align:center;color:#837a83;font-size:11px;margin:20px 0 0}.form-state-note{padding-top:12px;margin:13px 0 0;border-top:1px solid #f1e9ea;font-size:9px;line-height:1.7;color:#9a9299}.form-message{padding:11px 12px;border-radius:7px;background:#f8eef0;border:1px solid #ead4d8;color:#63313a;font-size:11px;line-height:1.65;margin-top:7px}.form-message[hidden]{display:none}.form-message.is-error{background:#fff1f1;border-color:#f2c9ce;color:#8a2832}.form-message.is-success{background:#edf7f0;border-color:#d6ebdc;color:#286345}
.auth-single-wrap{min-height:calc(100vh - 170px);display:flex;align-items:center;justify-content:center;padding:45px 18px}.auth-card-narrow{max-width:440px;width:100%}.auth-back-link{display:inline-block;margin-bottom:23px}.auth-card-icon-large{margin-bottom:20px}.auth-card-narrow h1{font:800 26px/1.22 Manrope,sans-serif;color:#29242a;letter-spacing:-.5px;margin:0 0 11px}.auth-intro{color:#837b84;font-size:12px;line-height:1.8;margin:0 0 22px}.auth-card-narrow .landing-button{margin-top:10px}
@media(max-width:950px){.landing-hero{grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:30px}.landing-copy h1{font-size:clamp(38px,5.4vw,56px)}.landing-developer{margin-left:18px;margin-right:18px}.auth-layout{grid-template-columns:minmax(0,.7fr) minmax(390px,1fr);gap:30px}}
@media(max-width:760px){.public-header{height:68px;padding:0 18px}.public-logo{width:120px!important;max-height:42px!important}.public-nav-toggle{display:block}.public-navigation{display:none;position:absolute;top:67px;left:0;right:0;background:#fff;border-bottom:1px solid #efe6e7;padding:15px 18px 20px;box-shadow:0 12px 25px #300d120b;align-items:stretch;flex-direction:column;gap:0}.public-navigation.is-open{display:flex}.public-navigation>a{padding:12px 3px}.public-navigation .public-nav-login{margin-left:0}.public-navigation .public-nav-cta{justify-content:center;text-align:center;margin-top:7px;padding:12px}.landing-hero{grid-template-columns:1fr;padding-top:50px;gap:38px;min-height:0}.landing-copy{max-width:650px}.landing-copy h1{font-size:clamp(40px,8vw,60px);letter-spacing:-2px}.landing-lead{font-size:14px}.landing-product{justify-self:center;max-width:530px;transform:none}.landing-section,.landing-process{padding-top:62px;padding-bottom:62px}.feature-grid,.process-grid{grid-template-columns:1fr;gap:12px}.feature-card{padding:23px}.feature-icon{margin-bottom:14px}.process-grid article>span{margin-bottom:12px}.landing-developer{grid-template-columns:1fr;margin:0 18px 48px;gap:24px}.landing-cta{margin:0 18px 48px;align-items:flex-start;flex-direction:column}.auth-layout{grid-template-columns:1fr;max-width:560px;gap:10px;padding-top:30px;padding-bottom:38px}.auth-story{padding:15px 0 0}.auth-story h1{font-size:40px;margin:14px 0 10px}.auth-story>p{font-size:12px}.auth-story-line,.auth-story>small{display:none}.auth-form-wrap{max-width:none}.auth-card-v2{padding:24px}.auth-single-wrap{min-height:calc(100vh - 150px);padding-top:35px;padding-bottom:35px}}
@media(max-width:480px){.landing-hero{padding:40px 15px 50px}.landing-copy h1{font-size:38px;letter-spacing:-1.6px}.landing-kicker{font-size:8px}.landing-lead{font-size:13px}.landing-actions{display:grid;grid-template-columns:1fr 1fr}.landing-button{padding:12px 13px;font-size:11px}.landing-points{display:grid;gap:8px}.landing-product{padding:8px;border-radius:13px}.product-window-body{padding:16px 9px 8px}.product-greeting strong{font-size:17px}.product-mini-metrics{gap:7px}.product-mini-metrics>div{padding:11px}.product-mini-metrics b{font-size:21px}.product-provider-row{padding:10px;gap:8px}.product-provider-row strong{font-size:10px}.product-provider-row small{font-size:8px}.product-note{font-size:8px}.landing-section,.landing-process{padding:50px 15px}.section-heading h2,.landing-developer h2{font-size:29px}.feature-card{padding:20px}.landing-developer{margin-left:15px;margin-right:15px;padding:22px}.developer-code{padding:15px}.developer-code code{font-size:9px}.landing-cta{margin-left:15px;margin-right:15px;padding:22px}.landing-cta h2{font-size:24px}.public-footer-bottom{flex-direction:column}.auth-layout{padding:23px 14px 32px}.auth-story h1{font-size:35px}.auth-card-v2{padding:20px}.auth-card-heading h2{font-size:16px}.auth-card-narrow h1{font-size:23px}}
