body.public-flow{background:#fff}body.public-flow .site-footer{background:#fff}
/* The public purchase flow uses the marketing site's header and footer rhythm. */
body.commerce-shell .commerce-site-header{position:relative;z-index:80;margin:0;background:#fff;border-bottom:1px solid #dce1e5}
body.commerce-shell .commerce-header-inner{width:min(1180px,calc(100% - 80px));max-width:none;min-height:91px;padding:0;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:30px}
.commerce-header-brand{display:flex;align-items:center;flex:0 0 auto;max-width:none}
.commerce-header-brand img{display:block;width:144px;height:auto;max-width:none}
.commerce-back-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:8px 0;color:#002d55;text-decoration:none;font-size:14px;font-weight:600;line-height:1.4;white-space:nowrap}
.commerce-back-link:hover{color:#e60005}
.commerce-back-link:focus-visible{outline:3px solid #2276d0;outline-offset:5px}
.commerce-back-link svg{display:block;width:18px;height:18px;flex:0 0 18px}
.commerce-back-compact{display:none}
body.public-flow .commerce-site-footer{margin-top:0;background:#f4f6f8;border-top:1px solid #dce1e5;color:#596773;font-size:14px;line-height:1.65}
.commerce-footer-main,.commerce-footer-bottom{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.commerce-footer-main{display:grid;grid-template-columns:1fr .8fr 1.05fr 1.25fr;gap:48px;padding-block:58px 45px}
.commerce-footer-main>*{min-width:0}
.commerce-footer-brand img{display:block;width:136px;height:auto;max-width:100%}
.commerce-footer-main h2{margin:1px 0 18px;color:#002d55;font-size:12px;line-height:1.5;font-weight:700}
body.commerce-shell .commerce-site-footer nav{display:block}
body.commerce-shell .commerce-site-footer nav>a{display:block;width:fit-content;min-height:0;margin:0 0 11px;color:#596773;text-decoration:none;font-size:12px;line-height:1.65}
body.commerce-shell .commerce-site-footer nav>a:hover{color:#e60005}
.commerce-footer-documents summary{list-style:none;cursor:default}
.commerce-footer-documents summary::-webkit-details-marker{display:none}
.commerce-footer-expand{display:none}
body.commerce-shell .commerce-site-footer .commerce-footer-contract>a.commerce-contract-link{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:43px;margin:0 0 11px;padding:9px 12px;border:1px solid #b9c7d1;border-radius:4px;background:#fafbfc;color:#002d55;font-weight:600}
.commerce-contract-link svg{width:14px;height:14px;flex:0 0 14px}
.commerce-footer-bottom{display:flex;justify-content:center;align-items:center;gap:7px;padding-block:16px 34px;text-align:center;font-size:10px;line-height:1.8}
.commerce-footer-bottom>span{flex-shrink:0;white-space:nowrap}
.commerce-footer-bottom>a{display:block;max-width:204px;min-width:0;padding:8px 0;line-height:0}
.commerce-footer-bottom img{display:block;width:204px;max-width:100%;height:auto}
@media(max-width:850px){
 html:has(body.commerce-shell){scroll-padding-top:90px}
 body.commerce-shell .commerce-site-header{position:sticky;top:0;z-index:80}
 body.commerce-shell .commerce-header-inner{min-height:74px;gap:24px}
 .commerce-footer-main{grid-template-columns:1fr 1fr;gap:28px 36px}
 .commerce-footer-brand{display:none}
 .commerce-footer-contract{grid-column:1/-1}
}
@media(max-width:650px){
 body.commerce-shell .commerce-header-inner{width:calc(100% - 32px);gap:10px}
 .commerce-header-brand img{width:124px}
 .commerce-back-full{display:none}
 .commerce-back-compact{display:inline}
 .commerce-back-link{gap:5px;font-size:14px;min-height:48px}
 .commerce-back-link svg{width:17px;height:17px;flex-basis:17px}
 .commerce-footer-main,.commerce-footer-bottom{width:calc(100% - 32px)}
 .commerce-footer-main{grid-template-columns:minmax(0,1fr);gap:0;padding-block:32px 24px}
 body.commerce-shell .commerce-site-footer .commerce-footer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px;margin-bottom:18px}
 .commerce-footer-meta h2{display:none}
 body.commerce-shell .commerce-site-footer .commerce-footer-meta>a{display:inline-flex;align-items:center;min-height:44px;margin:0;font-size:14px;line-height:1.6}
 .commerce-footer-documents{margin-bottom:24px;border-top:1px solid #dce1e5;border-bottom:1px solid #dce1e5}
 .commerce-footer-documents summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;padding:16px 0;cursor:pointer;color:#002d55}
 .commerce-footer-documents summary h2{margin:0;font-size:16px;line-height:1.5;font-weight:600}
 .commerce-footer-expand{position:relative;display:block;width:18px;height:18px;flex:0 0 18px}
 .commerce-footer-expand::before,.commerce-footer-expand::after{content:"";position:absolute;left:2px;top:8px;width:14px;height:1.5px;border-radius:2px;background:currentColor}
 .commerce-footer-expand::after{transform:rotate(90deg);transition:transform .18s ease}
 .commerce-footer-documents[open] .commerce-footer-expand::after{transform:rotate(0)}
 .commerce-footer-documents nav{padding:0 0 14px}
 body.commerce-shell .commerce-site-footer .commerce-footer-documents nav>a{display:flex;align-items:center;width:100%;min-height:44px;margin:0;padding:10px 0;font-size:16px;line-height:1.6;overflow-wrap:anywhere}
 body.commerce-shell .commerce-site-footer .commerce-footer-contract{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:18px;border:1px solid #dce1e5;border-radius:8px;background:#fff}
 .commerce-footer-contract h2{margin:0 0 4px;font-size:16px;line-height:1.5;font-weight:600}
 body.commerce-shell .commerce-site-footer .commerce-footer-contract>a.commerce-contract-link{min-height:50px;margin:0;padding:12px 14px;border-color:#dce1e5;border-radius:5px;background:#fff;font-size:14px;line-height:1.6}
 .commerce-footer-bottom{gap:12px;padding-block:18px 24px;border-top:1px solid #dce1e5;font-size:14px;line-height:1.75}
}
@media(prefers-reduced-motion:reduce){.commerce-footer-expand::after{transition:none}}
.commerce-page{max-width:1180px;margin:0 auto;padding:42px 28px 64px;min-height:65vh}.commerce-narrow{max-width:740px}.commerce-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.commerce-page .form-label{font-weight:600}.commerce-page .field-error{display:block;color:#b42318;font-size:.875rem;margin-top:5px}.commerce-page .commerce-global-error:empty{display:none}.commerce-page .commerce-global-error{color:#a71a15;background:#fff2ef;padding:14px 16px;margin-bottom:22px}.commerce-help{color:#607180;font-size:.9rem}.commerce-receipt{white-space:pre-wrap;overflow-wrap:anywhere;background:#f3f6f8;border:1px solid #dce5eb;border-radius:8px;padding:20px;font-size:.9rem}.commerce-status{padding:18px 20px;background:#edf5f0;color:#246142;border-radius:8px;margin-bottom:24px}.commerce-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.commerce-step{font-size:.8rem;font-weight:700;color:#e60005;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.commerce-page .form-section{margin-top:28px;padding-top:24px;border-top:1px solid #e2e8ed}.commerce-page .legal-copy{font-size:.9rem;line-height:1.6;color:#566e7e}.commerce-confirmation h2{margin-bottom:16px}.commerce-page input:focus,.commerce-page select:focus,.commerce-page textarea:focus{border-color:#7c9ab0;box-shadow:0 0 0 .2rem #002d5515}@media(max-width:650px){.commerce-page{padding:28px 16px 44px}.commerce-grid{grid-template-columns:1fr}.commerce-actions .btn{width:100%}}

.commerce-page .pre-line{white-space:pre-line;overflow-wrap:anywhere}
.commerce-code-help{display:grid;justify-items:start;gap:4px}
.commerce-code-help .commerce-help{margin:0}

/* Public registration shares one readable, responsive layout for every tariff. */
body.public-flow #main.commerce-page{max-width:1180px;min-width:0}
.commerce-page .commerce-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.commerce-page :is(.field,.form-section,.commerce-grid>*,.billing-checkout-grid>*,.commerce-status>*){min-width:0}
.commerce-page :is(.form-label,.form-control,.form-select){font-size:1rem}
.commerce-page input[name=code]{font-size:1.3rem;letter-spacing:.15em;max-width:100%}
.commerce-page :is(.field-help,.commerce-help,.legal-copy){font-size:.875rem;line-height:1.75}
.commerce-page :is(.commerce-status,.commerce-global-error,.commerce-confirmation){overflow-wrap:anywhere}
.commerce-flow .billing-steps{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.commerce-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.commerce-plan-card{min-width:0}
.commerce-plan-card>.billing-plan{width:100%;height:100%}
.commerce-cycle-label{grid-column:1/-1;float:none;width:auto;padding:0;margin:0 0 2px;font-size:1rem;font-weight:600;line-height:1.6}
.commerce-shared-features{display:flex;flex-wrap:wrap;gap:8px 18px;padding:14px 16px;margin:0 0 20px;border:1px solid var(--line);border-radius:7px;background:#f7f9fc;font-size:1rem;line-height:1.7;color:var(--muted)}
.commerce-shared-features>span{display:flex;align-items:flex-start;gap:8px;min-width:0}
.commerce-shared-features .icon{width:18px;height:18px;flex:0 0 18px;margin-top:5px;color:#297551}
.commerce-heading{max-width:76ch;margin-bottom:28px}
.commerce-heading>p{line-height:1.8;color:var(--muted)}
.commerce-demo-option{display:flex;align-items:flex-start;gap:12px;width:100%;padding:18px 20px;border:1px solid var(--line);border-radius:8px;margin-top:20px;background:#f7f9fc;font-weight:400;line-height:1.75;cursor:pointer}
.commerce-demo-option.selected{border-color:var(--red);background:#fff}
.commerce-demo-option>span{display:block;flex:1;min-width:0}
.commerce-demo-option>span>strong{display:block;font-size:1rem;line-height:1.7}
.commerce-demo-option>span>span{display:block;font-size:.875rem;line-height:1.75;color:var(--muted);margin-top:4px}
.commerce-demo-option label{display:flex;align-items:flex-start;gap:12px;font-weight:400;line-height:1.75;margin:0;cursor:pointer}
.commerce-demo-option input{width:18px;height:18px;flex:0 0 18px;margin-top:5px;accent-color:var(--red)}
.commerce-demo-option :is(p,small){font-size:.875rem;line-height:1.75;color:var(--muted)}
.commerce-address-preview{display:flex;align-items:center;gap:0;min-width:0;border:1px solid #b8c3cb;border-radius:5px;background:#f7f9fc}
.commerce-address-preview input{flex:1;min-width:0;border:0;border-radius:5px 0 0 5px;background:#fff}
.commerce-domain-suffix{font-size:.875rem;line-height:1.6;color:var(--muted);padding:9px 12px;overflow-wrap:anywhere;min-width:0}
.commerce-selection{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;flex-wrap:wrap;min-width:0;line-height:1.75;margin-bottom:24px}
.commerce-selection>div{flex:1;min-width:0;overflow-wrap:anywhere}
.commerce-selection .hint-link{flex:0 0 auto;min-height:32px}
.commerce-test-label{padding:12px 16px;border:1px solid #d4e3ef;border-radius:7px;background:#f2f7fb;font-size:.875rem;line-height:1.65;color:#234b67;margin-bottom:24px;overflow-wrap:anywhere}
.commerce-invoice-option{margin-top:2px}
.commerce-invoice-option>label{display:flex;align-items:flex-start;gap:11px;font-size:1rem;line-height:1.7;font-weight:400;cursor:pointer}
.commerce-invoice-option input[type=checkbox]{width:19px;height:19px;flex:0 0 19px;margin:4px 0 0;accent-color:var(--red)}
.commerce-invoice-option [data-invoice-email]{margin-top:16px}
.billing-fieldset .commerce-invoice-option .field{margin-bottom:0}
.commerce-optional-address-title{margin:3px 0 14px;color:var(--dark);font-size:1rem;font-weight:700;line-height:1.5}
.commerce-optional-address-title span{color:var(--muted);font-weight:400}

@media(max-width:700px){
 body.public-flow:not(.commerce-shell) .site-header-inner{flex-wrap:wrap;gap:12px;justify-content:space-between}
 body.public-flow:not(.commerce-shell) .site-header-inner .btn{font-size:.875rem;min-height:44px;max-width:100%;white-space:normal}
 body.public-flow .footer-inner{min-width:0}
 body.public-flow .site-footer,body.public-flow .footer-inner{font-size:.875rem;line-height:1.75}
 body.public-flow .site-footer nav{justify-content:flex-start;font-size:.875rem;line-height:1.75}
 body.public-flow .site-footer a{overflow-wrap:anywhere}
 body.public-flow .privacy-notice p{font-size:.875rem;line-height:1.75}
 body.public-flow .privacy-notice-actions{flex-wrap:wrap}
 body.public-flow .privacy-notice-actions .btn{font-size:.875rem;min-height:44px}
 .commerce-page .commerce-grid{grid-template-columns:minmax(0,1fr)}
 .commerce-page .page-heading>div{min-width:0}
 .commerce-page .page-heading p{font-size:1rem;line-height:1.8}
 .commerce-page .eyebrow{font-size:.875rem;line-height:1.6}
 .commerce-page h1{font-size:1.75rem;line-height:1.35;overflow-wrap:anywhere}
 .commerce-page .commerce-step{font-size:.875rem}
 .commerce-page .commerce-actions .btn{font-size:1rem;min-height:48px;white-space:normal}
 .commerce-page .hint-link{font-size:1rem;min-height:44px}
 .commerce-page .commerce-receipt{font-size:1rem;padding:16px}
 .commerce-page .registration-domain{font-size:1rem;line-height:1.75}
 .commerce-page .registration-voucher summary{font-size:1rem;line-height:1.7}
 .commerce-page .registration-voucher .field{margin-top:18px}
 .commerce-page .registration-result>p:not(.eyebrow){font-size:1rem;line-height:1.8}
 .commerce-page .registration-result .registration-note{font-size:.875rem}
 .commerce-page .registration-result .btn{font-size:1rem;min-height:48px;white-space:normal}
 .commerce-flow .billing-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .commerce-flow .billing-steps li{flex-direction:row;gap:7px;padding:10px 8px;text-align:left;min-width:0}
 .commerce-flow .billing-steps li:last-child:nth-child(odd){grid-column:1/-1}
 .commerce-flow .billing-step-marker{width:26px;height:26px;flex-basis:26px}
 .commerce-flow .billing-step-number{font-size:.875rem}
 .commerce-flow .billing-step-copy{min-width:0;gap:3px}
 .commerce-flow .billing-step-label{display:block;min-height:0;font-size:.875rem;line-height:1.5;white-space:nowrap}
 .commerce-flow .billing-step-status{display:none}
 .commerce-plan-grid{grid-template-columns:minmax(0,1fr)}
 .commerce-plan-card:has(.commerce-inline-cycle){border:1px solid var(--billing-accent);border-radius:10px;background:linear-gradient(160deg,#fff 70%,#f8fafc)}
 .commerce-plan-card:has(.commerce-inline-cycle)>.billing-plan{height:auto;border:0;border-radius:0;background:transparent}
 .commerce-plan-card>.commerce-inline-cycle{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;margin:0;padding:2px 18px 18px;border:0;background:transparent}
 .commerce-inline-cycle .commerce-cycle-label{margin:0 0 3px;font-size:.875rem;line-height:1.5}
 .commerce-inline-cycle>label{min-width:0;padding:11px 12px;background:#fff}
 .commerce-inline-cycle>label>span{min-width:0}
 .commerce-inline-cycle strong{font-size:.875rem}
 .commerce-inline-cycle small{font-size:.75rem}
 .commerce-flow .commerce-plan-grid .billing-plan{display:grid;grid-template-columns:minmax(0,1fr);padding:18px}
 .commerce-flow .commerce-plan-grid .billing-plan-price{font-size:1.75rem;margin-top:14px}
 .commerce-flow .commerce-plan-grid .billing-plan-renewal{margin-top:12px;min-height:0;text-align:left}
 .commerce-flow .commerce-plan-grid .billing-plan-features{margin-top:14px;padding-top:14px;gap:8px}
 .commerce-address-preview{align-items:stretch;flex-wrap:wrap}
 .commerce-address-preview input{flex:1 1 100%;border-radius:5px 5px 0 0}
 .commerce-domain-suffix{width:100%;border-top:1px solid var(--line)}
 .commerce-selection .hint-link{font-size:1rem;min-height:44px}
}
