/* Certificados MAIA Checkout — single branded shell, six stages, WooCommerce payment engine. */
body.cmaia-checkout-page .entry-title,
body.cmaia-checkout-page .page-title,
body.cmaia-checkout-page .entry-header,
body.cmaia-checkout-page .elementor-widget-theme-post-title,
body.cmaia-checkout-page .woocommerce-breadcrumb { display: none !important; }
.cmaia-checkout-app, .cmaia-checkout-app * { box-sizing: border-box; }
.cmaia-checkout-app { --cmaia-pink:#ec174c; --cmaia-red:#cf0038; --cmaia-ink:#202027; --cmaia-muted:#747582; --cmaia-border:#e4e6ee; --cmaia-soft:#fff1f5; color:var(--cmaia-ink); font-family:'Poppins',sans-serif; max-width:1480px; margin:0 auto; padding:24px; }
.cmaia-checkout-app button, .cmaia-checkout-app input, .cmaia-checkout-app select, .cmaia-checkout-app textarea { font:inherit; }
.cmaia-topbar { display:flex; align-items:center; justify-content:space-between; gap:22px; margin:0 0 32px; padding:16px 24px; background:rgba(255,255,255,.96); border:1px solid var(--cmaia-border); border-radius:22px; box-shadow:0 10px 38px rgba(32,32,39,.06); }
.cmaia-brand { display:flex; align-items:center; gap:14px; color:inherit; text-decoration:none !important; }
.cmaia-brand-mark { width:52px; height:52px; display:grid; place-items:center; background:linear-gradient(140deg,#ff174f,#c90036); color:#fff; border-radius:17px; box-shadow:0 8px 20px rgba(225,0,57,.24); }
.cmaia-brand-mark svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:2.3; stroke-linecap:round; stroke-linejoin:round; }
.cmaia-brand-copy { display:flex; flex-direction:column; line-height:1.15; }
.cmaia-brand-copy strong { font-size:19px; font-weight:900; letter-spacing:-.5px; }
.cmaia-brand-copy small { margin-top:4px; color:var(--cmaia-pink); font-size:12px; font-weight:800; letter-spacing:1px; }
.cmaia-top-actions { display:flex; align-items:center; gap:14px; }
.cmaia-secure { display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border:1px solid #a9efc4; border-radius:999px; color:#13964a; background:#f1fff6; font-size:13px; font-weight:800; white-space:nowrap; }
.cmaia-close { display:inline-flex; align-items:center; gap:7px; padding:10px 15px; color:#596579 !important; text-decoration:none !important; border:1px solid var(--cmaia-border); border-radius:12px; font-weight:700; }
.cmaia-layout { display:grid; grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr); align-items:start; gap:28px; }
.cmaia-sidebar { min-width:0; }
.cmaia-hero-card { position:relative; overflow:hidden; padding:44px 38px; border:1px solid #f7d8e1; border-radius:30px; background:radial-gradient(circle at 88% 7%,rgba(243,72,116,.13),transparent 37%),linear-gradient(145deg,#fff 0%,#fff7f9 55%,#fde8ee 100%); box-shadow:0 16px 48px rgba(36,30,40,.055); }
.cmaia-eyebrow { display:inline-flex; align-items:center; gap:8px; padding:10px 15px; color:#d9003d; background:#ffe8ef; border-radius:999px; font-size:12px; font-weight:900; letter-spacing:1.2px; }
.cmaia-hero-card h1 { margin:25px 0 18px; font-size:clamp(30px,3vw,46px); line-height:1.08; letter-spacing:-1.8px; font-weight:900; }
.cmaia-hero-card p { margin:0; color:var(--cmaia-muted); font-size:16px; line-height:1.85; }
.cmaia-trust { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; margin-top:28px; color:#535461; font-size:12px; line-height:1.7; font-weight:800; }
.cmaia-trust span { color:#159c5b; font-size:16px; }
.cmaia-human-note { display:flex; align-items:flex-start; gap:14px; margin-top:14px; padding-top:18px; border-top:1px solid #f4ccd7; }
.cmaia-human-check { display:grid; flex:0 0 42px; height:42px; place-items:center; border-radius:14px; background:#e8f8f0; color:#13995b; font-size:24px; font-weight:900; }
.cmaia-human-note strong, .cmaia-human-note small { display:block; }
.cmaia-human-note strong { font-size:14px; font-weight:900; }
.cmaia-human-note small { margin-top:5px; color:var(--cmaia-muted); font-size:13px; line-height:1.6; }
.cmaia-main-card { min-width:0; padding:36px; background:#fff; border:1px solid var(--cmaia-border); border-radius:30px; box-shadow:0 16px 48px rgba(36,30,40,.07); }
.cmaia-progress-wrap { margin:0 0 26px; }
.cmaia-progress-track { height:8px; background:#f0f1f5; border-radius:999px; overflow:hidden; }
.cmaia-progress-track span { display:block; height:100%; width:16.666%; background:linear-gradient(90deg,#f53268,#c80039); border-radius:inherit; transition:width .25s ease; }
.cmaia-progress-caption { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:9px 0 17px; color:#767987; font-size:13px; font-weight:700; }
.cmaia-step-overview { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; margin:0 0 27px; }
.cmaia-step-chip { min-width:0; min-height:64px; display:flex; align-items:center; gap:7px; padding:9px 8px; background:#fff; border:1px solid var(--cmaia-border); border-radius:11px; color:#536075; }
.cmaia-step-chip .cmaia-chip-number { flex:0 0 25px; height:25px; display:grid; place-items:center; border:1px solid var(--cmaia-border); border-radius:8px; background:#fff; font-size:11px; font-weight:900; }
.cmaia-step-chip strong, .cmaia-step-chip small { display:block; white-space:normal; overflow-wrap:anywhere; }
.cmaia-step-chip strong { font-size:10px; line-height:1.2; font-weight:900; }
.cmaia-step-chip small { margin-top:3px; font-size:9px; line-height:1.25; color:#7c8494; }
.cmaia-step-chip.is-current { color:#c80039; border-color:#e50044; background:#fff4f7; box-shadow:inset 0 0 0 1px rgba(229,0,68,.07); }
.cmaia-step-chip.is-current .cmaia-chip-number { color:#fff; background:#d8003e; border-color:#d8003e; }
.cmaia-step-chip.is-done { color:#167b47; border-color:#b5efce; background:#f0fff6; }
.cmaia-step-chip.is-done .cmaia-chip-number { color:#fff; background:#159e56; border-color:#159e56; }
.cmaia-active-heading, .cmaia-native-section-title { display:flex; align-items:flex-start; gap:14px; margin:8px 0 27px; }
.cmaia-active-number, .cmaia-native-section-title>span { flex:0 0 48px; height:48px; display:grid; place-items:center; border-radius:15px; color:#d5003b; background:#fff0f4; font-size:17px; font-weight:900; }
.cmaia-active-heading h2 { margin:0; font-size:clamp(22px,2.1vw,30px); line-height:1.18; letter-spacing:-.8px; font-weight:900; }
.cmaia-active-heading p { margin:8px 0 0; color:#777a89; font-size:14px; line-height:1.65; }
.cmaia-wizard-form { margin:0; }
.cmaia-wizard-step[hidden], .cmaia-native-step[hidden] { display:none !important; }
.cmaia-choice-grid { display:grid; gap:16px; margin:0 0 26px; }
.cmaia-choice-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cmaia-choice-card { position:relative; min-width:0; display:flex; flex-direction:column; gap:8px; padding:25px 22px 22px; border:1px solid var(--cmaia-border); border-radius:22px; background:#fff; cursor:pointer; transition:border-color .18s ease, box-shadow .18s ease, background .18s ease; }
.cmaia-choice-card:hover { border-color:#f58ca9; box-shadow:0 8px 26px rgba(35,30,43,.05); }
.cmaia-choice-card:has(input:checked) { border:1.5px solid #eb0046; background:linear-gradient(135deg,#fff,#fff6f8); box-shadow:0 0 0 2px rgba(235,0,70,.06); }
.cmaia-choice-card input[type=radio] { position:absolute; top:21px; right:21px; width:22px; height:22px; margin:0; accent-color:#e30044; }
.cmaia-choice-icon { display:grid; width:48px; height:48px; place-items:center; border-radius:16px; background:#fff0f4; color:#e00043; font-size:29px; line-height:1; }
.cmaia-choice-card strong { margin-top:8px; color:#25252d; font-size:17px; font-weight:900; }
.cmaia-choice-card small { color:#7a7d8b; font-size:13px; line-height:1.65; }
.cmaia-field { margin:0 0 20px; }
.cmaia-field label { display:block; margin:0 0 9px; color:#3b3b44; font-size:14px; font-weight:800; }
.cmaia-field label span { color:#858694; font-weight:500; }
.cmaia-field input[type=text], .cmaia-field input[type=email], .cmaia-field input[type=tel], .cmaia-field select, .cmaia-field textarea { width:100%; min-height:54px; padding:14px 16px; border:1px solid #dfe2eb; border-radius:14px; background:#fff; color:#30303a; box-shadow:none; outline:none; font-size:14px; }
.cmaia-field textarea { min-height:108px; resize:vertical; }
.cmaia-field input:focus, .cmaia-field select:focus, .cmaia-field textarea:focus { border-color:#eb1b50; box-shadow:0 0 0 3px rgba(235,27,80,.08); }
.cmaia-field small { display:block; margin-top:7px; color:#858795; font-size:11px; line-height:1.6; }
.cmaia-product-hint { padding:12px 14px; margin:0 0 24px; border:1px solid #f5d7e0; background:#fff7f9; color:#6f5360; border-radius:12px; font-size:12px; line-height:1.55; }
.cmaia-renewal-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.cmaia-confirm { display:flex; align-items:flex-start; gap:12px; padding:16px; margin:8px 0 24px; border:1px solid var(--cmaia-border); border-radius:15px; background:#fbfbfd; color:#777987; font-size:12px; line-height:1.65; }
.cmaia-confirm input { flex:0 0 19px; width:19px; height:19px; margin:2px 0 0; accent-color:#dc003d; }
.cmaia-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:20px; margin-top:16px; border-top:1px solid #eceef3; }
.cmaia-actions button { min-height:50px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:12px 21px; border-radius:10px; font-size:14px; font-weight:700; cursor:pointer; transition:transform .15s ease, box-shadow .15s ease, background .15s ease; }
.cmaia-actions button:hover { transform:translateY(-1px); }
.cmaia-next, .cmaia-continue-checkout, .cmaia-primary { color:#fff !important; border:1px solid #e30043 !important; background:linear-gradient(110deg,#f22d63,#cf0038) !important; box-shadow:0 9px 23px rgba(220,0,57,.18); }
.cmaia-prev, .cmaia-secondary { color:#e40045 !important; border:1px solid #eb2a5b !important; background:#fff !important; }
.cmaia-actions button:disabled { opacity:.55; cursor:wait; transform:none; }
.cmaia-privacy { margin:19px 0 0; color:#8b8d99; font-size:11px; line-height:1.6; text-align:center; }
.cmaia-alert { padding:14px 16px; margin:0 0 18px; border-radius:12px; font-size:13px; line-height:1.6; }
.cmaia-alert-error { color:#9f1d32; border:1px solid #ffc1ca; background:#fff1f2; }
.cmaia-ajax-error { margin-bottom:18px; }
.cmaia-checkout-panel-active .woocommerce { width:100%; }
.cmaia-checkout-panel-active .woocommerce-notices-wrapper:empty { display:none; }
.cmaia-checkout-panel-active .woocommerce form.checkout { margin:0; }
.cmaia-checkout-panel-active .woocommerce form.checkout::after { content:""; display:block; clear:both; }
.cmaia-checkout-panel-active .woocommerce form.checkout .col2-set,
.cmaia-checkout-panel-active .woocommerce form.checkout #order_review,
.cmaia-checkout-panel-active .woocommerce form.checkout #order_review_heading { width:100%; float:none; }
.cmaia-checkout-panel-active .woocommerce form.checkout #customer_details { display:block; width:100%; margin:0; }
.cmaia-checkout-panel-active .woocommerce form.checkout #customer_details .col-1,
.cmaia-checkout-panel-active .woocommerce form.checkout #customer_details .col-2 { float:none; width:100%; max-width:none; padding:0; }
.cmaia-checkout-panel-active .woocommerce form.checkout .form-row { float:none; width:100%; margin:0 0 16px; padding:0; }
.cmaia-checkout-panel-active .woocommerce form.checkout .form-row-first,
.cmaia-checkout-panel-active .woocommerce form.checkout .form-row-last { width:calc(50% - 8px); float:left; }
.cmaia-checkout-panel-active .woocommerce form.checkout .form-row-last { float:right; }
.cmaia-checkout-panel-active .woocommerce form.checkout .form-row label { display:block; margin:0 0 8px; color:#414653; font-size:13px; font-weight:800; }
.cmaia-checkout-panel-active .woocommerce form.checkout .form-row label .required { color:#d6003b; text-decoration:none; }
.cmaia-checkout-panel-active .woocommerce form.checkout input.input-text,
.cmaia-checkout-panel-active .woocommerce form.checkout textarea,
.cmaia-checkout-panel-active .woocommerce form.checkout select { display:block; width:100%; min-height:54px; padding:13px 15px; border:1px solid #dfe2eb; border-radius:13px; background:#fff; color:#272933; box-shadow:none; font-size:14px; }
.cmaia-checkout-panel-active .woocommerce form.checkout input:focus,
.cmaia-checkout-panel-active .woocommerce form.checkout select:focus { border-color:#ed1e50; outline:0; box-shadow:0 0 0 3px rgba(237,30,80,.08); }
.cmaia-checkout-panel-active .woocommerce form.checkout .select2-container .select2-selection { height:54px; border:1px solid #dfe2eb; border-radius:13px; }
.cmaia-checkout-panel-active .woocommerce form.checkout .select2-selection__rendered { padding:12px 15px; }
.cmaia-checkout-panel-active .woocommerce form.checkout .select2-selection__arrow { height:52px; right:8px; }
.cmaia-checkout-panel-active .cert-country-hidden, .cmaia-checkout-panel-active #billing_address_2_field { display:none !important; }
.cmaia-checkout-panel-active #billing_postcode_field { clear:both; }
.cmaia-cep-feedback { display:block; margin-top:7px; color:#7c8190; font-size:11px; line-height:1.5; }
.cmaia-cep-feedback.is-loading { color:#3c6a9f; }
.cmaia-cep-feedback.is-success { color:#16834c; }
.cmaia-cep-feedback.is-error { color:#b42335; }
.cmaia-native-step { width:100%; }
.cmaia-native-section-title { margin:12px 0 24px; }
.cmaia-native-section-title h3 { margin:0; color:#202027; font-size:22px; font-weight:900; letter-spacing:-.5px; }
.cmaia-native-section-title p { margin:7px 0 0; color:#777a89; font-size:13px; line-height:1.6; }
.cmaia-native-actions { margin:16px 0 5px; }
.cmaia-payment-back { justify-content:flex-start; margin:0 0 20px; padding-top:0; border-top:0; }
.cmaia-checkout-panel-active #order_review_heading { margin:22px 0 14px; color:#202027; font-size:19px; font-weight:900; }
.cmaia-checkout-panel-active #order_review { margin:0; padding:0; border:0; }
.cmaia-checkout-panel-active table.shop_table { width:100%; margin:0 0 23px; border:1px solid var(--cmaia-border); border-radius:14px; border-collapse:separate; border-spacing:0; overflow:hidden; font-size:13px; }
.cmaia-checkout-panel-active table.shop_table th, .cmaia-checkout-panel-active table.shop_table td { padding:12px 13px; border-color:#eceef3; }
.cmaia-checkout-panel-active table.shop_table th { color:#555968; background:#fafafd; font-weight:800; }
.cmaia-checkout-panel-active #payment { padding:18px; border:1px solid var(--cmaia-border); border-radius:18px; background:#fbfbfd; }
.cmaia-checkout-panel-active #payment ul.payment_methods { margin:0; padding:0 0 15px; border-bottom:1px solid #e9eaf1; }
.cmaia-checkout-panel-active #payment ul.payment_methods li { margin:0 0 12px; padding:0; list-style:none; }
.cmaia-checkout-panel-active #payment ul.payment_methods li:last-child { margin-bottom:0; }
.cmaia-checkout-panel-active #payment ul.payment_methods label { display:inline-flex; align-items:center; gap:8px; color:#333540; font-weight:700; }
.cmaia-checkout-panel-active #payment ul.payment_methods input[type=radio] { accent-color:#dc003d; }
.cmaia-checkout-panel-active #payment .payment_box { margin:12px 0 0; padding:14px; border-radius:12px; background:#f2f3f8; font-size:12px; line-height:1.65; }
.cmaia-checkout-panel-active #payment .payment_box::before { display:none; }
.cmaia-checkout-panel-active #payment .form-row.place-order { margin:16px 0 0; padding:0; }
.cmaia-checkout-panel-active #place_order { width:100%; min-height:56px; padding:15px 20px; border:0; border-radius:13px; color:#fff; background:linear-gradient(110deg,#f22d63,#ce0038); box-shadow:0 9px 24px rgba(220,0,57,.18); font-family:'Poppins',sans-serif; font-size:15px; font-weight:900; }
.cmaia-checkout-panel-active .woocommerce-privacy-policy-text { color:#858795; font-size:11px; line-height:1.6; }
.cmaia-checkout-panel-active .woocommerce-error, .cmaia-checkout-panel-active .woocommerce-info, .cmaia-checkout-panel-active .woocommerce-message { border-radius:12px; font-size:13px; }
.cmaia-confirmation-intro { padding:25px; margin-bottom:24px; text-align:center; border:1px solid #c5f1d5; border-radius:20px; background:linear-gradient(135deg,#f2fff7,#fff); }
.cmaia-confirmation-intro.is-pending { border-color:#f4dfaa; background:linear-gradient(135deg,#fffaf0,#fff); }
.cmaia-confirmation-intro.is-pending .cmaia-success-icon { background:#d69e19; }
.cmaia-confirmation-intro.is-pending .cmaia-success-eyebrow { color:#9d7413 !important; }
.cmaia-confirmation-intro.is-error { border-color:#f6c2ca; background:linear-gradient(135deg,#fff3f4,#fff); }
.cmaia-confirmation-intro.is-error .cmaia-success-icon { background:#c82d43; }
.cmaia-confirmation-intro.is-error .cmaia-success-eyebrow { color:#bc233b !important; }
.cmaia-confirmation-intro.is-pay { border-color:#f6d1df; background:linear-gradient(135deg,#fff3f7,#fff); }
.cmaia-confirmation-intro.is-pay .cmaia-success-icon { background:#e71950; }
.cmaia-success-icon { display:inline-grid; width:52px; height:52px; place-items:center; border-radius:50%; color:#fff; background:#16a15a; font-size:27px; font-weight:900; }
.cmaia-success-eyebrow { margin:13px 0 7px !important; color:#179454 !important; font-size:11px !important; font-weight:900 !important; letter-spacing:1.3px; }
.cmaia-confirmation-intro h2 { margin:0 0 10px; font-size:26px; line-height:1.2; font-weight:900; }
.cmaia-confirmation-intro p:last-child { margin:0; color:#707584; font-size:13px; line-height:1.65; }
.cmaia-footer-note { padding:18px 10px 4px; color:#888b97; font-size:11px; text-align:center; }
.cmaia-checkout-app .woocommerce form.checkout_coupon { display:flex; flex-wrap:wrap; gap:10px; padding:15px; margin:0 0 18px; border:1px solid var(--cmaia-border); border-radius:13px; }
.cmaia-checkout-app .woocommerce form.checkout_coupon p { margin:0; }
.cmaia-checkout-app .woocommerce form.checkout_coupon .form-row-first { flex:1 1 180px; }
.cmaia-checkout-app .woocommerce form.checkout_coupon .form-row-last { flex:0 0 auto; }
.cmaia-checkout-app .woocommerce form.checkout_coupon button { min-height:46px; padding:10px 16px; border:0; border-radius:10px; background:#262630; color:#fff; font-weight:800; }
.cmaia-checkout-app .woocommerce .woocommerce-form-coupon-toggle .woocommerce-info { border-top-color:#ed174c; border-radius:13px; }
.cmaia-checkout-app .woocommerce .woocommerce-form-coupon-toggle .woocommerce-info::before { color:#ed174c; }

@media (max-width: 1060px) {
  .cmaia-checkout-app { padding:18px; }
  .cmaia-layout { grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr); gap:18px; }
  .cmaia-hero-card { padding:32px 26px; }
  .cmaia-main-card { padding:26px; }
  .cmaia-step-overview { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .cmaia-checkout-app { padding:12px; }
  .cmaia-topbar { margin-bottom:16px; padding:13px; border-radius:17px; }
  .cmaia-brand-mark { width:43px; height:43px; border-radius:13px; }
  .cmaia-brand-copy strong { font-size:15px; }
  .cmaia-brand-copy small { font-size:9px; letter-spacing:.7px; }
  .cmaia-top-actions { gap:7px; }
  .cmaia-secure { padding:9px 10px; font-size:0; }
  .cmaia-secure span { font-size:15px; }
  .cmaia-close { padding:9px 11px; font-size:12px; }
  .cmaia-layout { grid-template-columns:1fr; gap:16px; }
  .cmaia-hero-card { padding:24px; border-radius:22px; }
  .cmaia-hero-card h1 { margin:18px 0 12px; font-size:30px; letter-spacing:-1px; }
  .cmaia-hero-card p { font-size:14px; line-height:1.7; }
  .cmaia-trust { margin-top:18px; font-size:11px; }
  .cmaia-human-note { margin-top:12px; padding-top:14px; }
  .cmaia-main-card { padding:21px 17px; border-radius:22px; }
  .cmaia-step-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-bottom:22px; }
  .cmaia-step-chip { min-height:53px; padding:7px; }
  .cmaia-step-chip strong { font-size:10px; }
  .cmaia-step-chip small { font-size:9px; }
  .cmaia-active-heading h2 { font-size:23px; }
  .cmaia-active-heading p { font-size:12px; }
  .cmaia-choice-grid-two, .cmaia-renewal-fields { grid-template-columns:1fr; }
  .cmaia-choice-card { padding:20px; }
  .cmaia-actions { gap:8px; }
  .cmaia-actions button { padding:11px 13px; min-height:47px; font-size:12px; }
  .cmaia-checkout-panel-active .woocommerce form.checkout .form-row-first,
  .cmaia-checkout-panel-active .woocommerce form.checkout .form-row-last { width:100%; float:none; }
  .cmaia-checkout-panel-active #payment { padding:13px; }
  .cmaia-checkout-panel-active table.shop_table th, .cmaia-checkout-panel-active table.shop_table td { padding:9px 8px; font-size:11px; }
  .cmaia-native-section-title h3 { font-size:19px; }
}

/* v1.1.0 — focused acquisition canvas: remove theme chrome, move compact hero above full-width flow. */
body.cmaia-checkout-page { background:#f8f9fc; }
body.cmaia-checkout-page #masthead,
body.cmaia-checkout-page .site-header,
body.cmaia-checkout-page .elementor-location-header,
body.cmaia-checkout-page header.wp-block-template-part,
body.cmaia-checkout-page .wp-site-blocks > header,
body.cmaia-checkout-page .entry-header,
body.cmaia-checkout-page .elementor-widget-theme-site-logo,
body.cmaia-checkout-page .elementor-widget-theme-site-title,
body.cmaia-checkout-page .woocommerce-breadcrumb { display:none !important; }
body.cmaia-checkout-page .site-content,
body.cmaia-checkout-page #content,
body.cmaia-checkout-page .content-area,
body.cmaia-checkout-page .site-main,
body.cmaia-checkout-page .elementor-location-single,
body.cmaia-checkout-page .elementor-section-wrap { margin-top:0 !important; padding-top:0 !important; }
body.cmaia-checkout-page .cmaia-checkout-app { width:100%; max-width:1480px; padding:24px clamp(16px,3vw,42px) 32px; }
body.cmaia-checkout-page .cmaia-topbar { display:none !important; }
body.cmaia-checkout-page .cmaia-layout { display:flex; flex-direction:column; gap:22px; align-items:stretch; }
body.cmaia-checkout-page .cmaia-sidebar { width:100%; min-width:0; }
body.cmaia-checkout-page .cmaia-hero-card { display:grid; grid-template-columns:minmax(260px,.9fr) minmax(0,1.4fr); grid-template-areas:"eyebrow eyebrow" "title description" "trust trust" "note note"; align-items:center; column-gap:clamp(24px,4vw,64px); row-gap:10px; padding:22px clamp(22px,3vw,40px); border-radius:24px; }
body.cmaia-checkout-page .cmaia-eyebrow { grid-area:eyebrow; justify-self:start; padding:7px 12px; font-size:10px; letter-spacing:1px; }
body.cmaia-checkout-page .cmaia-hero-card h1 { grid-area:title; min-width:0; margin:0; max-width:640px; font-size:clamp(24px,2.3vw,34px); line-height:1.18; letter-spacing:-.8px; font-weight:600; overflow-wrap:normal; word-break:normal; }
body.cmaia-checkout-page .cmaia-hero-card p { grid-area:description; min-width:0; margin:0; max-width:760px; font-size:clamp(13px,1.1vw,15px); line-height:1.65; overflow-wrap:anywhere; }
body.cmaia-checkout-page .cmaia-trust { grid-area:trust; margin-top:4px; gap:6px 12px; font-size:11px; }
body.cmaia-checkout-page .cmaia-human-note { grid-area:note; display:flex; align-items:center; gap:10px; margin-top:2px; padding-top:10px; }
body.cmaia-checkout-page .cmaia-human-check { flex-basis:30px; height:30px; border-radius:10px; font-size:18px; }
body.cmaia-checkout-page .cmaia-human-note strong { font-size:12px; }
body.cmaia-checkout-page .cmaia-human-note small { margin-top:2px; font-size:11px; line-height:1.45; }
body.cmaia-checkout-page .cmaia-main-card { width:100%; min-width:0; padding:clamp(22px,3vw,42px); border-radius:24px; }
body.cmaia-checkout-page .cmaia-step-overview { grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; }
body.cmaia-checkout-page .cmaia-step-chip { min-width:0; }
body.cmaia-checkout-page .cmaia-step-chip strong,
body.cmaia-checkout-page .cmaia-step-chip small { overflow-wrap:normal; word-break:normal; }
body.cmaia-checkout-page .cmaia-footer-note { max-width:1000px; margin:0 auto; }

@media (max-width: 900px) {
  body.cmaia-checkout-page .cmaia-step-overview { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body.cmaia-checkout-page .cmaia-hero-card { grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); column-gap:22px; }
  body.cmaia-checkout-page .cmaia-hero-card h1 { font-size:clamp(23px,3.2vw,30px); }
}
@media (max-width: 640px) {
  body.cmaia-checkout-page .cmaia-checkout-app { padding:12px 12px 24px; }
  body.cmaia-checkout-page .cmaia-layout { gap:14px; }
  body.cmaia-checkout-page .cmaia-hero-card { grid-template-columns:minmax(0,1fr); grid-template-areas:"eyebrow" "title" "description" "trust" "note"; row-gap:9px; padding:18px 18px 16px; border-radius:20px; }
  body.cmaia-checkout-page .cmaia-hero-card h1 { max-width:100%; margin:0; font-size:clamp(23px,6vw,29px); line-height:1.17; letter-spacing:-.55px; font-weight:600; }
  body.cmaia-checkout-page .cmaia-hero-card p { font-size:13px; line-height:1.55; }
  body.cmaia-checkout-page .cmaia-trust { display:flex; margin-top:4px; gap:4px 9px; font-size:10px; }
  body.cmaia-checkout-page .cmaia-human-note { padding-top:9px; }
  body.cmaia-checkout-page .cmaia-main-card { padding:19px 15px; border-radius:20px; }
  body.cmaia-checkout-page .cmaia-step-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  body.cmaia-checkout-page .cmaia-step-chip { min-height:56px; padding:8px; gap:7px; }
  body.cmaia-checkout-page .cmaia-step-chip strong { font-size:10px; }
  body.cmaia-checkout-page .cmaia-step-chip small { font-size:9px; line-height:1.25; }
  body.cmaia-checkout-page .cmaia-active-heading { align-items:flex-start; gap:10px; }
  body.cmaia-checkout-page .cmaia-active-heading h2 { font-size:clamp(21px,5.5vw,26px); line-height:1.2; overflow-wrap:normal; }
  body.cmaia-checkout-page .cmaia-active-heading p { line-height:1.5; }
  body.cmaia-checkout-page .cmaia-actions { display:flex; flex-wrap:wrap; }
  body.cmaia-checkout-page .cmaia-actions button { max-width:100%; white-space:normal; }
  body.cmaia-checkout-page .cmaia-footer-note { padding:13px 8px 0; font-size:10px; line-height:1.55; }
}

/* v1.2.0 — reduce acquisition banner height by sharing the lower row. */
body.cmaia-checkout-page .cmaia-hero-card {
  grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);
  grid-template-areas:"eyebrow eyebrow" "title description" "trust note";
  align-items:center;
  column-gap:clamp(20px,3vw,42px);
  row-gap:7px;
  padding:16px clamp(20px,2.6vw,36px);
  border-radius:22px;
}
body.cmaia-checkout-page .cmaia-hero-card h1 {
  max-width:560px;
  font-size:clamp(23px,2vw,31px);
  line-height:1.13;
  letter-spacing:-.65px;
}
body.cmaia-checkout-page .cmaia-hero-card p {
  max-width:720px;
  font-size:clamp(13px,1.05vw,15px);
  line-height:1.55;
}
body.cmaia-checkout-page .cmaia-trust {
  align-self:center;
  margin-top:0;
  padding-top:8px;
  gap:4px 9px;
  font-size:10px;
  line-height:1.45;
}
body.cmaia-checkout-page .cmaia-human-note {
  align-self:center;
  min-width:0;
  margin-top:0;
  padding-top:8px;
  gap:9px;
  border-top:0;
}
body.cmaia-checkout-page .cmaia-human-check {
  flex-basis:30px;
  height:30px;
  border-radius:9px;
  font-size:17px;
}
body.cmaia-checkout-page .cmaia-human-note strong { font-size:11px; line-height:1.35; }
body.cmaia-checkout-page .cmaia-human-note small { margin-top:2px; font-size:10px; line-height:1.4; }

@media (max-width: 900px) {
  body.cmaia-checkout-page .cmaia-hero-card {
    grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
    column-gap:20px;
    padding:15px 22px;
  }
  body.cmaia-checkout-page .cmaia-hero-card h1 { font-size:clamp(22px,2.8vw,28px); }
  body.cmaia-checkout-page .cmaia-trust { gap:4px 8px; }
}
@media (max-width: 640px) {
  body.cmaia-checkout-page .cmaia-hero-card {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"eyebrow" "title" "description" "trust" "note";
    row-gap:7px;
    padding:15px 16px 13px;
    border-radius:18px;
  }
  body.cmaia-checkout-page .cmaia-hero-card h1 {
    max-width:100%;
    font-size:clamp(22px,6vw,27px);
    line-height:1.15;
    letter-spacing:-.45px;
  }
  body.cmaia-checkout-page .cmaia-hero-card p { font-size:13px; line-height:1.5; }
  body.cmaia-checkout-page .cmaia-trust { padding-top:5px; font-size:10px; }
  body.cmaia-checkout-page .cmaia-human-note { padding-top:6px; }
  body.cmaia-checkout-page .cmaia-human-note small { font-size:11px; }
}


/* v1.3.0 — compact step indicator and acquisition banner on mobile. */
@media (max-width: 640px) {
  body.cmaia-checkout-page .cmaia-hero-card {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"eyebrow" "title" "description" "trust";
    row-gap:5px;
    padding:12px 14px 11px;
    border-radius:16px;
  }
  body.cmaia-checkout-page .cmaia-eyebrow {
    padding:5px 10px;
    font-size:9px;
    letter-spacing:.85px;
  }
  body.cmaia-checkout-page .cmaia-hero-card h1 {
    max-width:100%;
    margin:0;
    font-size:clamp(20px,5.4vw,24px);
    line-height:1.12;
    letter-spacing:-.35px;
    font-weight:600;
  }
  body.cmaia-checkout-page .cmaia-hero-card p {
    font-size:12px;
    line-height:1.42;
  }
  body.cmaia-checkout-page .cmaia-trust {
    margin-top:0;
    padding-top:2px;
    gap:3px 8px;
    font-size:9px;
    line-height:1.3;
  }
  body.cmaia-checkout-page .cmaia-trust span { font-size:13px; }
  /* Human support is already stated in the trust row; hide the duplicated card to save vertical space. */
  body.cmaia-checkout-page .cmaia-human-note { display:none !important; }

  /* Six numbered steps in one horizontal line; labels are hidden only on mobile. */
  body.cmaia-checkout-page .cmaia-step-overview {
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:space-between;
    gap:4px;
    width:100%;
    margin:0 0 20px;
  }
  body.cmaia-checkout-page .cmaia-step-chip {
    display:flex;
    flex:0 1 40px;
    width:40px;
    min-width:0;
    max-width:40px;
    min-height:40px;
    height:40px;
    padding:3px;
    justify-content:center;
    gap:0;
    border-radius:12px;
  }
  body.cmaia-checkout-page .cmaia-step-chip > span:not(.cmaia-chip-number) {
    display:none !important;
  }
  body.cmaia-checkout-page .cmaia-step-chip .cmaia-chip-number {
    flex:0 0 30px;
    width:30px;
    height:30px;
    margin:0;
    border-radius:10px;
    font-size:12px;
  }
  body.cmaia-checkout-page .cmaia-progress-caption {
    margin:7px 0 13px;
    font-size:12px;
  }
  body.cmaia-checkout-page .cmaia-progress-wrap { margin-bottom:20px; }
}

@media (max-width: 380px) {
  body.cmaia-checkout-page .cmaia-checkout-app { padding:8px 8px 18px; }
  body.cmaia-checkout-page .cmaia-main-card { padding:16px 11px; }
  body.cmaia-checkout-page .cmaia-step-overview { gap:3px; }
  body.cmaia-checkout-page .cmaia-step-chip {
    flex-basis:36px;
    width:36px;
    max-width:36px;
    min-height:36px;
    height:36px;
    padding:2px;
    border-radius:10px;
  }
  body.cmaia-checkout-page .cmaia-step-chip .cmaia-chip-number {
    flex-basis:28px;
    width:28px;
    height:28px;
    font-size:11px;
  }
  body.cmaia-checkout-page .cmaia-active-heading { gap:8px; margin-bottom:20px; }
  body.cmaia-checkout-page .cmaia-active-number { flex-basis:40px; height:40px; border-radius:12px; font-size:15px; }
  body.cmaia-checkout-page .cmaia-active-heading h2 { font-size:20px; }
}

/* v1.4.0 — certificate format and product are selected together using the same choice cards as steps 1–2. */
.cmaia-product-choice-grid { align-items:stretch; }
.cmaia-product-choice[hidden] { display:none !important; }
.cmaia-product-choice { min-height:190px; }
.cmaia-product-choice strong { overflow-wrap:anywhere; line-height:1.35; }
.cmaia-product-choice .cmaia-product-choice-badge { width:48px; min-height:42px; height:auto; padding:0 5px; font-size:13px; font-weight:900; letter-spacing:-.3px; text-align:center; }
.cmaia-product-choice .cmaia-product-choice-price { display:block; margin-top:auto; padding-top:8px; color:#d0003a; font-size:19px; line-height:1.25; font-weight:900; }
.cmaia-product-choice-field { margin-bottom:13px; }
.cmaia-product-choice-field small { margin-top:5px; }
@media (max-width:640px) {
  body.cmaia-checkout-page .cmaia-product-choice { min-height:170px; padding:18px 16px; gap:7px; }
  body.cmaia-checkout-page .cmaia-product-choice .cmaia-product-choice-badge { width:43px; min-height:38px; font-size:12px; }
  body.cmaia-checkout-page .cmaia-product-choice strong { margin-top:5px; font-size:15px; }
  body.cmaia-checkout-page .cmaia-product-choice small { font-size:11px; line-height:1.45; }
  body.cmaia-checkout-page .cmaia-product-choice .cmaia-product-choice-price { font-size:17px; }
}
