:root{--eoacs-ink:#19202b;--eoacs-muted:#65707d;--eoacs-red:#aa2940;--eoacs-red-dark:#8c1d32;--eoacs-line:#e4e6e9;--eoacs-soft:#f7f6f4}
body.eoacs-checkout-page{margin:0;background:var(--eoacs-soft);color:var(--eoacs-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.55}
.eoacs-checkout-page *{box-sizing:border-box}
.eoacs-checkout-page a{color:var(--eoacs-red)}
.eoacs-checkout-header{height:78px;background:#16191f;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1200px)/2));gap:20px}
.eoacs-checkout-brand{display:inline-flex;align-items:center;gap:11px;color:#fff!important;text-decoration:none!important}
.eoacs-checkout-brand img{object-fit:contain}
.eoacs-checkout-brand span{display:flex;flex-direction:column;line-height:1}
.eoacs-checkout-brand strong{font-family:Georgia,serif;font-size:25px;letter-spacing:.025em;font-weight:700}
.eoacs-checkout-brand sup{font-family:Arial,sans-serif;font-size:9px;vertical-align:top;margin-left:2px}
.eoacs-checkout-brand small{font-size:8px;font-weight:750;letter-spacing:.13em;margin-top:5px}
.eoacs-checkout-security{color:#dadde1;font-size:13px;font-weight:600;display:flex;align-items:center;gap:9px}
.eoacs-checkout-security span{color:#ec9caa;font-size:20px}
.eoacs-checkout-main{max-width:1200px;margin:auto;padding:44px 28px 72px}
.eoacs-checkout-preview-alert{border:1px solid #e7c6ce;border-radius:12px;background:#fff4f6;color:#752538;padding:13px 17px;margin:0 0 26px;font-size:13px}
.eoacs-checkout-preview-alert strong{font-weight:800}
body.eoacs-admin-checkout-preview #coming-soon-footer-banner{display:none!important}
.eoacs-checkout-page .woocommerce #payment #place_order:disabled{background:#a6a9ae;color:#fff;box-shadow:none;transform:none;cursor:not-allowed}
body.eoacs-admin-checkout-preview .wc-stripe-payment-request-wrapper,body.eoacs-admin-checkout-preview .wc-stripe-payment-request-button-separator,body.eoacs-admin-checkout-preview .wc-stripe-express-checkout-element,body.eoacs-admin-checkout-preview #wc-stripe-express-checkout-element{display:none!important}
.eoacs-checkout-intro{max-width:760px;margin-bottom:35px}
.eoacs-checkout-back{display:inline-flex;align-items:center;font-size:13px;font-weight:650;text-decoration:none;margin-bottom:30px}
.eoacs-checkout-back:hover{text-decoration:underline}
.eoacs-checkout-eyebrow,.eoacs-checkout-summary-label{color:var(--eoacs-red);font-size:11px;letter-spacing:.16em;font-weight:800;margin:0 0 11px}
.eoacs-checkout-intro h1{font-family:Georgia,serif;font-weight:600;letter-spacing:-.032em;font-size:clamp(32px,3.7vw,48px);line-height:1.12;margin:0 0 13px;max-width:740px}
.eoacs-checkout-intro>p:last-child{color:var(--eoacs-muted);max-width:620px;margin:0}
.eoacs-checkout-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.9fr);align-items:start;gap:25px}
.eoacs-checkout-form-card,.eoacs-checkout-summary{background:#fff;border:1px solid var(--eoacs-line);border-radius:18px;box-shadow:0 16px 44px rgba(24,29,39,.045)}
.eoacs-checkout-form-card{padding:32px 34px 38px}
.eoacs-checkout-card-heading{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--eoacs-line);padding-bottom:22px;margin-bottom:28px}
.eoacs-checkout-step{display:grid;place-items:center;background:#fff1f3;color:var(--eoacs-red);border-radius:10px;width:42px;height:42px;font-weight:800;font-size:13px}
.eoacs-checkout-card-heading p{color:var(--eoacs-red);font-size:10px;letter-spacing:.15em;font-weight:800;margin:0 0 2px}
.eoacs-checkout-card-heading h2{font-family:Georgia,serif;font-size:25px;line-height:1.2;margin:0}
.eoacs-checkout-summary{padding:23px;position:sticky;top:24px}
.eoacs-checkout-summary-label{margin-bottom:14px}
.eoacs-checkout-cover{width:min(100%,180px);aspect-ratio:1;display:block;object-fit:contain;border:1px solid var(--eoacs-line);border-radius:11px;background:#f4f0e9}
.eoacs-checkout-summary h2{font-family:Georgia,serif;font-size:24px;line-height:1.25;margin:20px 0 14px}
.eoacs-checkout-summary ul{padding:0;margin:0;list-style:none;display:grid;gap:11px;color:#48515c;font-size:14px}
.eoacs-checkout-summary li:before{content:"✓";color:var(--eoacs-red);font-weight:800;margin-right:10px}
.eoacs-checkout-summary-note{border-top:1px solid var(--eoacs-line);margin-top:23px;padding-top:17px;color:var(--eoacs-muted);font-size:12px}
.eoacs-checkout-footer{border-top:1px solid var(--eoacs-line);max-width:1200px;padding:20px 28px 32px;margin:auto;display:flex;justify-content:space-between;gap:15px;color:var(--eoacs-muted);font-size:12px}
.eoacs-checkout-footer a{text-decoration:none;font-weight:650}
.eoacs-checkout-page .woocommerce form .form-row{padding:0;margin:0 0 18px}
.eoacs-checkout-page .woocommerce form .form-row label{font-size:13px;font-weight:650;color:var(--eoacs-ink);margin-bottom:6px}
.eoacs-checkout-page .woocommerce form .eoacs-adult-confirmation{border:1px solid var(--eoacs-line);border-radius:10px;background:#faf8f8;padding:15px 17px;margin:7px 0 22px}
.eoacs-checkout-page .woocommerce form .eoacs-adult-confirmation label{display:flex;align-items:flex-start;gap:10px;margin:0;line-height:1.5;font-size:14px;cursor:pointer}
.eoacs-checkout-page .woocommerce form .eoacs-adult-confirmation input[type="checkbox"]{width:18px;height:18px;flex:0 0 18px;accent-color:var(--eoacs-red);margin:2px 0 0}
.eoacs-checkout-page .woocommerce form .input-text,.eoacs-checkout-page .woocommerce form select,.eoacs-checkout-page .woocommerce form textarea{background:#fff;color:var(--eoacs-ink);border:1px solid #cfd3d8;border-radius:9px;min-height:46px;padding:10px 13px;font:inherit;box-shadow:none}
.eoacs-checkout-page .woocommerce form .input-text:focus,.eoacs-checkout-page .woocommerce form select:focus,.eoacs-checkout-page .woocommerce form textarea:focus{outline:2px solid rgba(170,41,64,.18);border-color:var(--eoacs-red)}
.eoacs-checkout-page .woocommerce h3{font-family:Georgia,serif;font-size:22px;margin:25px 0 15px}
.eoacs-checkout-page .woocommerce table.shop_table{border:1px solid var(--eoacs-line);border-radius:10px;border-collapse:separate;background:#fff;font-size:14px}
.eoacs-checkout-page .woocommerce table.shop_table th,.eoacs-checkout-page .woocommerce table.shop_table td{padding:12px;border-color:var(--eoacs-line)}
.eoacs-checkout-page .woocommerce-checkout #payment{background:#f8f8f8;border:1px solid var(--eoacs-line);border-radius:12px}
.eoacs-checkout-page .woocommerce-checkout #payment div.payment_box{background:#fff;color:var(--eoacs-muted)}
.eoacs-checkout-page .woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#fff}
.eoacs-checkout-page .woocommerce button.button,.eoacs-checkout-page .woocommerce a.button,.eoacs-checkout-page .woocommerce #payment #place_order{background:var(--eoacs-red);color:#fff;border-radius:9px;padding:15px 24px;font-weight:750;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}
.eoacs-checkout-page .woocommerce button.button:hover,.eoacs-checkout-page .woocommerce a.button:hover,.eoacs-checkout-page .woocommerce #payment #place_order:hover{background:var(--eoacs-red-dark);color:#fff;transform:translateY(-1px);box-shadow:0 8px 18px rgba(170,41,64,.18)}
.eoacs-checkout-page .woocommerce-info,.eoacs-checkout-page .woocommerce-message{border-top-color:var(--eoacs-red);background:#f9f4f5;color:var(--eoacs-ink)}
.eoacs-checkout-page .woocommerce-info:before,.eoacs-checkout-page .woocommerce-message:before{color:var(--eoacs-red)}
.eoacs-checkout-page .select2-container--default .select2-selection--single{height:46px;border:1px solid #cfd3d8;border-radius:9px}
.eoacs-checkout-page .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px;padding-left:13px}
.eoacs-checkout-page .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}
@media(max-width:800px){.eoacs-checkout-main{padding:30px 18px 50px}.eoacs-checkout-header{height:70px;padding:0 18px}.eoacs-checkout-grid{grid-template-columns:1fr}.eoacs-checkout-summary{position:static;grid-row:1}.eoacs-checkout-form-card{padding:24px 18px}.eoacs-checkout-back{margin-bottom:23px}.eoacs-checkout-summary{padding:18px}.eoacs-checkout-footer{padding:20px 18px 28px}}
@media(max-width:480px){.eoacs-checkout-security{font-size:0}.eoacs-checkout-security span{font-size:18px}.eoacs-checkout-main{padding-top:25px}.eoacs-checkout-intro h1{font-size:32px}.eoacs-checkout-footer{flex-direction:column}}

/* EOACS checkout identity: the same warm neutrals, red and sans typography as eoacs.com. */
:root {
  --eoacs-ink: #1f2933;
  --eoacs-muted: #5c6872;
  --eoacs-red: #e7354a;
  --eoacs-red-dark: #c92b40;
  --eoacs-line: #e4dfd7;
  --eoacs-soft: #f7f4ec;
}
body.eoacs-checkout-page {
  background: var(--eoacs-soft);
  color: var(--eoacs-ink);
  font-family: "Avenir Next", Inter, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.5;
}
.eoacs-checkout-header {
  height: 82px;
  background: #20252a;
  padding-inline: max(28px, calc((100vw - 1180px) / 2));
  border-bottom: 3px solid var(--eoacs-red);
}
.eoacs-checkout-brand { gap: 12px; }
.eoacs-checkout-brand img {
  width: 46px;
  height: 46px;
  filter: brightness(0) invert(1);
}
.eoacs-checkout-brand strong {
  font-family: inherit;
  font-size: 25px;
  font-weight: 750;
  letter-spacing: -.035em;
}
.eoacs-checkout-brand small {
  margin-top: 4px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .065em;
}
.eoacs-checkout-brand sup { font-family: inherit; }
.eoacs-checkout-security {
  color: #f0ede7;
  font-size: 13px;
  font-weight: 650;
  letter-spacing: .005em;
}
.eoacs-checkout-security svg {
  fill: none;
  stroke: var(--eoacs-red);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.9;
}
.eoacs-checkout-main { max-width: 1180px; padding: 35px 24px 70px; }
.eoacs-checkout-intro { margin-bottom: 28px; }
.eoacs-checkout-back {
  color: var(--eoacs-ink) !important;
  margin-bottom: 27px;
  font-size: 13px;
  font-weight: 700;
  transition: color .18s ease;
}
.eoacs-checkout-back:hover { color: var(--eoacs-red) !important; text-decoration: none; }
.eoacs-checkout-eyebrow, .eoacs-checkout-summary-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .115em;
}
.eoacs-checkout-eyebrow span { color: #a8a09a; margin-inline: 5px; }
.eoacs-checkout-intro h1 {
  font-family: inherit;
  font-size: clamp(34px, 3.4vw, 44px);
  font-weight: 750;
  letter-spacing: -.045em;
  line-height: 1.12;
  margin-bottom: 9px;
}
.eoacs-checkout-period { color: var(--eoacs-red); }
.eoacs-checkout-intro > p:last-child { font-size: 15px; line-height: 1.55; }
.eoacs-checkout-intro > p:last-child,
.eoacs-checkout-summary ul,
.eoacs-checkout-summary-note,
.eoacs-checkout-preview-alert,
.eoacs-checkout-footer { font-weight: 500; }
.eoacs-checkout-grid { grid-template-columns: minmax(0, 1.58fr) minmax(300px, .9fr); gap: 24px; }
.eoacs-checkout-form-card, .eoacs-checkout-summary {
  border-color: #e6e0d7;
  border-radius: 16px;
  box-shadow: 0 12px 35px rgba(29, 35, 42, .045);
}
.eoacs-checkout-form-card { padding: 29px 34px 36px; }
.eoacs-checkout-card-heading { margin-bottom: 24px; padding-bottom: 20px; }
.eoacs-checkout-step { background: #fff0f1; border: 1px solid #ffdce0; border-radius: 8px; }
.eoacs-checkout-card-heading h2,
.eoacs-checkout-summary h2,
.eoacs-checkout-page .woocommerce h3 {
  font-family: inherit;
  font-weight: 750;
  letter-spacing: -.028em;
  color: var(--eoacs-ink);
}
.eoacs-checkout-card-heading h2 { font-size: 23px; }
.eoacs-checkout-summary { padding: 20px; }
.eoacs-checkout-cover { border-radius: 9px; border: 1px solid #eee9e1; }
.eoacs-checkout-art { display: block; width: 100%; }
.eoacs-checkout-page .eoacs-checkout-cover { display: block; width: 100%; max-width: none; height: auto; aspect-ratio: auto; object-fit: contain; background: transparent; }
.eoacs-checkout-summary h2 { font-size: 21px; margin: 17px 0 18px; }
.eoacs-checkout-summary ul { color: #44505a; font-size: 13px; gap: 10px; }
.eoacs-checkout-summary li { display: flex; align-items: baseline; gap: 9px; }
.eoacs-checkout-summary li:before { margin: 0; font-size: 15px; }
.eoacs-checkout-summary-note { font-size: 12px; line-height: 1.55; }
.eoacs-checkout-summary-note strong { display: block; color: var(--eoacs-ink); font-weight: 750; margin-bottom: 3px; }
.eoacs-checkout-footer { max-width: 1180px; }

/* Remove WooCommerce's unused order-notes column and make the billing form legible. */
.eoacs-checkout-page .woocommerce .col2-set .col-1 {
  float: none;
  width: 100%;
}
.eoacs-checkout-page .woocommerce .col2-set .col-2 { display: none; }
.eoacs-checkout-page .woocommerce .woocommerce-billing-fields__field-wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  row-gap: 15px;
}
.eoacs-checkout-page .woocommerce .woocommerce-billing-fields__field-wrapper .form-row {
  float: none !important;
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
}
.eoacs-checkout-page .woocommerce #billing_email_field,
.eoacs-checkout-page .woocommerce #billing_first_name_field,
.eoacs-checkout-page .woocommerce #billing_phone_field,
.eoacs-checkout-page .woocommerce #billing_country_field,
.eoacs-checkout-page .woocommerce .eoacs-adult-confirmation,
.eoacs-checkout-page .woocommerce .eoacs-whatsapp-service-consent { grid-column: 1 / -1; }
.eoacs-checkout-page .woocommerce form .form-row label {
  color: #26313b;
  font-size: 12px;
  font-weight: 750;
  margin-bottom: 6px;
}
.eoacs-checkout-page .woocommerce form .input-text,
.eoacs-checkout-page .woocommerce form select,
.eoacs-checkout-page .woocommerce form textarea {
  min-height: 47px;
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #cfd4d5;
  border-radius: 7px;
  background: #fff;
  color: var(--eoacs-ink);
  font-size: 14px;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.eoacs-checkout-page .woocommerce form .input-text:focus,
.eoacs-checkout-page .woocommerce form select:focus,
.eoacs-checkout-page .woocommerce form textarea:focus {
  outline: none;
  border-color: var(--eoacs-red);
  box-shadow: 0 0 0 3px rgba(231, 53, 74, .13);
}
.eoacs-checkout-page .woocommerce form .eoacs-adult-confirmation {
  background: #faf8f4;
  border-color: #e7e0d8;
  border-radius: 8px;
  margin: 3px 0 6px;
}
.eoacs-checkout-page .woocommerce form .eoacs-adult-confirmation label { font-size: 13px; font-weight: 500; }
.eoacs-checkout-page .woocommerce form .eoacs-whatsapp-service-consent {
  padding: 13px 15px;
  margin: 3px 0 13px;
  border: 1px solid #e7e0d8;
  border-radius: 8px;
  background: #fff;
}
.eoacs-checkout-page .woocommerce form .eoacs-whatsapp-service-consent label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  color: var(--eoacs-ink);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  cursor: pointer;
}
.eoacs-checkout-page .woocommerce form .eoacs-whatsapp-service-consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin: 1px 0 0;
  accent-color: var(--eoacs-red);
}
.eoacs-checkout-page .woocommerce h3 { font-size: 19px; margin: 26px 0 15px; }
.eoacs-checkout-page .woocommerce .woocommerce-checkout-review-order-table,
.eoacs-checkout-page .woocommerce table.shop_table { border-color: #e6e0d7; }
.eoacs-checkout-page .woocommerce table.shop_table tr.order-total th,
.eoacs-checkout-page .woocommerce table.shop_table tr.order-total td { color: var(--eoacs-ink); font-size: 16px; font-weight: 800; }
.eoacs-checkout-page .woocommerce table.shop_table td,
.eoacs-checkout-page .woocommerce .woocommerce-privacy-policy-text,
.eoacs-checkout-page .woocommerce .woocommerce-privacy-policy-text p {
  color: #4d5962;
  font-weight: 500;
}
.eoacs-checkout-page .woocommerce-checkout #payment { background: #faf8f4; border-color: #e6e0d7; border-radius: 9px; }
.eoacs-checkout-page .woocommerce-checkout #payment div.payment_box { border-radius: 7px; }
.eoacs-checkout-page .woocommerce button.button,
.eoacs-checkout-page .woocommerce a.button,
.eoacs-checkout-page .woocommerce #payment #place_order {
  background: var(--eoacs-red);
  border-radius: 6px;
  box-shadow: none;
  font-family: inherit;
  font-size: 14px;
  letter-spacing: .005em;
}
.eoacs-checkout-page .woocommerce button.button:hover,
.eoacs-checkout-page .woocommerce a.button:hover,
.eoacs-checkout-page .woocommerce #payment #place_order:not(:disabled):hover {
  background: var(--eoacs-red-dark);
  box-shadow: 0 7px 16px rgba(201, 43, 64, .15);
  transform: translateY(-1px);
}
.eoacs-checkout-page .woocommerce #payment #place_order:disabled,
.eoacs-checkout-page .woocommerce #payment #place_order:disabled:hover {
  background: #9ca2a7;
  box-shadow: none;
  transform: none;
  cursor: not-allowed;
}
.eoacs-checkout-page .woocommerce-info,
.eoacs-checkout-page .woocommerce-message {
  border: 1px solid #eadbd7;
  border-left: 3px solid var(--eoacs-red);
  border-radius: 7px;
  background: #fffaf7;
  box-shadow: none;
  font-size: 13px;
}
.eoacs-checkout-page .wc-block-components-notice-banner.is-info {
  background: #fffaf7;
  border: 1px solid #eadbd7;
  border-left: 3px solid var(--eoacs-red);
  border-radius: 7px;
  box-shadow: none;
  color: var(--eoacs-ink);
  font-size: 13px;
}
.eoacs-checkout-page .wc-block-components-notice-banner.is-info > svg {
  fill: var(--eoacs-red);
}
.eoacs-checkout-page .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content {
  color: var(--eoacs-ink);
  font-weight: 500;
}
.eoacs-checkout-page .select2-container--default .select2-selection--single {
  border-color: #cfd4d5;
  border-radius: 7px;
}
.eoacs-checkout-page a:focus-visible,
.eoacs-checkout-page button:focus-visible { outline: 3px solid rgba(231, 53, 74, .4); outline-offset: 2px; }
@media (max-width: 800px) {
  .eoacs-checkout-header { padding-inline: 18px; }
  .eoacs-checkout-main { padding: 26px 18px 54px; }
  .eoacs-checkout-grid { grid-template-columns: 1fr; gap: 18px; }
  .eoacs-checkout-summary { position: static; grid-row: 1; }
  .eoacs-checkout-page .eoacs-checkout-cover { width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
  .eoacs-checkout-intro { margin-bottom: 22px; }
  .eoacs-checkout-form-card { padding: 24px 22px; }
}
@media (max-width: 600px) {
  .eoacs-checkout-header { height: 70px; }
  .eoacs-checkout-brand img { width: 39px; height: 39px; }
  .eoacs-checkout-brand strong { font-size: 22px; }
  .eoacs-checkout-brand small { font-size: 8px; }
  .eoacs-checkout-security { font-size: 0; }
  .eoacs-checkout-security svg { width: 19px; height: 19px; }
  .eoacs-checkout-main { padding: 22px 14px 40px; }
  .eoacs-checkout-back { margin-bottom: 20px; }
  .eoacs-checkout-intro h1 { font-size: 34px; }
  .eoacs-checkout-intro > p:last-child { font-size: 14px; }
  .eoacs-checkout-form-card { padding: 20px 17px; }
  .eoacs-checkout-card-heading h2 { font-size: 21px; }
  .eoacs-checkout-page .woocommerce .woocommerce-billing-fields__field-wrapper { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .eoacs-checkout-page .woocommerce .woocommerce-billing-fields__field-wrapper .form-row { grid-column: 1; }
  .eoacs-checkout-footer { padding: 18px 14px 28px; }
}

/* Payment refinement: align the embedded Stripe form with the campus identity. */
.eoacs-checkout-page,
.eoacs-checkout-page .woocommerce,
.eoacs-checkout-page .woocommerce form,
.eoacs-checkout-page .woocommerce input,
.eoacs-checkout-page .woocommerce select,
.eoacs-checkout-page .woocommerce button {
  font-family: "Avenir Next", Inter, "Helvetica Neue", Arial, sans-serif;
}
.eoacs-checkout-page .woocommerce form .form-row label {
  font-size: 13px;
  font-weight: 650;
  letter-spacing: -.01em;
}
.eoacs-checkout-page .woocommerce #billing_phone_field .woocommerce-input-wrapper {
  display: block;
  position: relative;
}
.eoacs-checkout-page .woocommerce #billing_phone_field.eoacs-mx-phone #billing_phone,
.eoacs-checkout-page .woocommerce #billing_phone_field.eoacs-es-phone #billing_phone {
  padding-left: 104px;
}
.eoacs-checkout-page .woocommerce #billing_country_field.eoacs-es-country .select2-selection__rendered::before {
  content: "🇪🇸";
  display: inline-block;
  margin-right: 8px;
  font-size: 18px;
  vertical-align: -2px;
}
.eoacs-phone-prefix {
  position: absolute;
  z-index: 1;
  left: 1px;
  top: 1px;
  bottom: 1px;
  width: 88px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border-right: 1px solid #e2e4e5;
  border-radius: 6px 0 0 6px;
  background: #f8f8f7;
  color: #29323b;
  pointer-events: none;
  white-space: nowrap;
}
.eoacs-phone-prefix[hidden] { display: none; }
.eoacs-phone-prefix strong { font-size: 13px; font-weight: 700; }
.eoacs-phone-flag { font-size: 19px; line-height: 1; }
.eoacs-checkout-page .woocommerce-checkout #payment {
  padding: 20px 22px 22px;
  border: 1px solid #e5e2dd;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 5px 20px rgba(31, 41, 51, .035);
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods {
  padding: 0;
  border: 0;
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods li {
  margin: 0;
  color: var(--eoacs-ink);
  font-size: 14px;
  font-weight: 650;
}
.eoacs-checkout-page .woocommerce-checkout #payment div.payment_box {
  margin: 8px 0 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #4d5962;
}
.eoacs-checkout-page .woocommerce-checkout #payment div.payment_box::before {
  display: none;
}
.eoacs-checkout-page .woocommerce-checkout #payment #wc-stripe-upe-form,
.eoacs-checkout-page .woocommerce-checkout #payment .wc-upe-form {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.eoacs-checkout-page .woocommerce-checkout #payment .form-row.place-order {
  padding: 18px 0 0;
  margin: 18px 0 0;
  border-top: 1px solid #e9e6e1;
}
.eoacs-payment-assurance {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 8px 0 18px;
  padding: 15px 16px;
  border: 1px solid #d9e7e0;
  border-radius: 9px;
  background: #f5faf7;
  color: #255a43;
}
.eoacs-payment-assurance svg {
  flex: 0 0 20px;
  margin-top: 2px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.eoacs-payment-assurance strong {
  display: block;
  margin-bottom: 3px;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: -.01em;
}
.eoacs-payment-assurance span {
  display: block;
  color: #3e6051;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
}
.eoacs-checkout-page .woocommerce #payment #place_order {
  width: 100%;
  min-height: 50px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 750;
  letter-spacing: -.01em;
}
@media (max-width: 600px) {
  .eoacs-checkout-page .woocommerce-checkout #payment { padding: 17px 15px 18px; }
  .eoacs-payment-assurance { padding: 13px; }
}

/* Compact, editorial checkout. Keep WooCommerce's native forms and payment controls. */
.eoacs-checkout-main { max-width: 1080px; padding-top: 29px; }
.eoacs-checkout-intro { max-width: none; margin-bottom: 22px; }
.eoacs-checkout-back { margin-bottom: 14px; }
.eoacs-checkout-intro h1 { font-size: clamp(32px, 3.3vw, 42px); margin-bottom: 5px; }
.eoacs-checkout-intro > p:last-child { max-width: 710px; }
.eoacs-checkout-grid { grid-template-columns: minmax(0, 1.65fr) minmax(280px, .85fr); gap: 20px; }
.eoacs-checkout-form-card { padding: 26px 30px 32px; }
.eoacs-checkout-card-heading { padding-bottom: 17px; margin-bottom: 20px; }
.eoacs-checkout-card-heading h2 { font-size: 22px; }
.eoacs-checkout-summary { padding: 20px; }
.eoacs-checkout-summary-label { margin-bottom: 13px; }
.eoacs-checkout-summary-main { display: grid; grid-template-columns: 66px minmax(0, 1fr); align-items: center; gap: 13px; }
.eoacs-checkout-summary-main:not(:has(.eoacs-checkout-art)) { grid-template-columns: 1fr; }
.eoacs-checkout-art { width: 66px; }
.eoacs-checkout-page .eoacs-checkout-cover { width: 66px; height: 66px; aspect-ratio: 1; object-fit: cover; border-radius: 9px; }
.eoacs-checkout-summary h2 { font-size: 15px; line-height: 1.32; margin: 0 0 4px; }
.eoacs-checkout-summary-details > span { display: block; color: var(--eoacs-muted); font-size: 12px; line-height: 1.4; }
.eoacs-checkout-summary-total { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-top: 18px; padding-top: 15px; border-top: 1px solid var(--eoacs-line); }
.eoacs-checkout-summary-total > span { color: #45515d; font-size: 13px; font-weight: 650; }
.eoacs-checkout-summary-total strong { color: var(--eoacs-ink); font-size: 21px; font-weight: 800; white-space: nowrap; letter-spacing: -.03em; }
.eoacs-checkout-summary-note { margin: 8px 0 0; padding: 0; border: 0; font-size: 11px; line-height: 1.45; }
.eoacs-checkout-page .woocommerce .woocommerce-form-login-toggle,
.eoacs-checkout-page .woocommerce .woocommerce-form-coupon-toggle { margin-bottom: 10px; }
.eoacs-checkout-page .woocommerce .woocommerce-info,
.eoacs-checkout-page .woocommerce .woocommerce-message {
  margin: 0 0 10px;
  padding: 12px 15px;
  border: 1px solid #e7e2da;
  border-radius: 9px;
  background: #faf9f6;
  box-shadow: none;
  color: #4c5862;
  font-size: 13px;
  line-height: 1.45;
}
.eoacs-checkout-page .woocommerce .woocommerce-info::before,
.eoacs-checkout-page .woocommerce .woocommerce-message::before { display: none; }
.eoacs-checkout-page .woocommerce .woocommerce-info a { color: var(--eoacs-red-dark); font-weight: 750; text-decoration: none; border-bottom: 1px solid currentColor; }
.eoacs-checkout-page .woocommerce .woocommerce-info a:hover { color: var(--eoacs-ink); }
.eoacs-checkout-page .wc-block-components-notice-banner.is-info {
  min-height: 0;
  margin: 0 0 10px;
  padding: 10px 14px;
  border: 1px solid #e7e2da;
  border-radius: 9px;
  background: #faf9f6;
  color: #4c5862;
  font-size: 13px;
  line-height: 1.4;
}
.eoacs-checkout-page .wc-block-components-notice-banner.is-info > svg { display: none; }
.eoacs-checkout-page .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content { padding: 0; }
.eoacs-checkout-page .wc-block-components-notice-banner.is-info a { color: var(--eoacs-red-dark); font-weight: 750; text-decoration: none; border-bottom: 1px solid currentColor; }
.eoacs-checkout-page .woocommerce form.login,
.eoacs-checkout-page .woocommerce form.checkout_coupon { margin: 0 0 15px; padding: 16px; border: 1px solid #e7e2da; border-radius: 9px; background: #fff; }
.eoacs-checkout-page .woocommerce .woocommerce-billing-fields > h3 { margin: 25px 0 13px; font-size: 18px; }
.eoacs-checkout-page .woocommerce .woocommerce-billing-fields__field-wrapper { row-gap: 12px; }
.eoacs-checkout-page .woocommerce form .form-row label { font-size: 13px; margin-bottom: 5px; }
.eoacs-checkout-page .woocommerce form .input-text,
.eoacs-checkout-page .woocommerce form select { min-height: 46px; font-size: 15px; }
.eoacs-checkout-page .woocommerce #order_review_heading { margin: 23px 0 12px; font-size: 18px; }
.eoacs-checkout-page .woocommerce .woocommerce-checkout-review-order-table { margin-bottom: 15px; }
.eoacs-checkout-page .woocommerce table.shop_table th,
.eoacs-checkout-page .woocommerce table.shop_table td { padding: 9px 11px; }
.eoacs-checkout-page .woocommerce #payment #place_order { font-size: 15px; min-height: 54px; border-radius: 9px; }
@media (max-width: 800px) {
  .eoacs-checkout-main { padding-top: 20px; }
  .eoacs-checkout-grid { grid-template-columns: 1fr; gap: 13px; }
  .eoacs-checkout-summary { position: static; grid-row: 1; }
  .eoacs-checkout-form-card { padding: 20px; }
}
@media (max-width: 600px) {
  .eoacs-checkout-header { height: 62px; }
  .eoacs-checkout-main { padding: 18px 14px 34px; }
  .eoacs-checkout-back { margin-bottom: 12px; }
  .eoacs-checkout-eyebrow { font-size: 10px; margin-bottom: 6px; }
  .eoacs-checkout-intro { margin-bottom: 17px; }
  .eoacs-checkout-intro h1 { font-size: 32px; line-height: 1.08; }
  .eoacs-checkout-intro > p:last-child { font-size: 13px; line-height: 1.45; }
  .eoacs-checkout-summary { padding: 14px 15px; }
  .eoacs-checkout-summary-label { margin-bottom: 9px; }
  .eoacs-checkout-summary-main { grid-template-columns: 54px minmax(0,1fr); gap: 10px; }
  .eoacs-checkout-art, .eoacs-checkout-page .eoacs-checkout-cover { width: 54px; height: 54px; }
  .eoacs-checkout-summary h2 { font-size: 14px; }
  .eoacs-checkout-summary-details > span { font-size: 11px; }
  .eoacs-checkout-summary-total { margin-top: 12px; padding-top: 10px; }
  .eoacs-checkout-summary-total strong { font-size: 18px; }
  .eoacs-checkout-summary-note { display: none; }
  .eoacs-checkout-form-card { padding: 18px 15px; }
  .eoacs-checkout-card-heading { margin-bottom: 14px; padding-bottom: 13px; }
  .eoacs-checkout-card-heading h2 { font-size: 20px; }
  .eoacs-checkout-page .woocommerce .woocommerce-info { font-size: 12px; padding: 10px 12px; }
  .eoacs-checkout-page .woocommerce .woocommerce-billing-fields > h3 { margin-top: 20px; }
}

/* Checkout polish: calm hierarchy, legible fields and one clear primary action. */
.eoacs-checkout-header { border-bottom: 1px solid #363d45; }
.eoacs-checkout-security svg { stroke: #d7dde2; }
.eoacs-checkout-intro h1 .eoacs-checkout-period { color: inherit; }
.eoacs-checkout-intro > p:last-child { color: #43505a; font-size: 14px; }
.eoacs-checkout-eyebrow, .eoacs-checkout-summary-label { color: #34485e; }
.eoacs-checkout-card-heading { margin-bottom: 16px; padding-bottom: 12px; }
.eoacs-checkout-card-heading h2 { font-size: 21px; }
.eoacs-checkout-page .woocommerce .woocommerce-billing-fields > h3 { display: none; }
.eoacs-checkout-page .woocommerce form .form-row label { color: #25323d; font-size: 14px; font-weight: 650; }
.eoacs-checkout-page .woocommerce form .input-text,
.eoacs-checkout-page .woocommerce form select { color: #172431; font-size: 15px; }
.eoacs-checkout-page .woocommerce .woocommerce-form-login-toggle,
.eoacs-checkout-page .woocommerce .woocommerce-form-coupon-toggle { margin-bottom: 8px; }
.eoacs-checkout-page .wc-block-components-notice-banner.is-info,
.eoacs-checkout-page .woocommerce .woocommerce-info {
  border: 1px solid #e2e5e7;
  border-radius: 8px;
  background: #f8fafb;
  color: #33414d;
  font-size: 13px;
  padding: 10px 12px;
}
.eoacs-checkout-page .wc-block-components-notice-banner.is-info a,
.eoacs-checkout-page .woocommerce .woocommerce-info a {
  color: #263f58;
  font-weight: 700;
  border-bottom: 1px solid #9aa9b8;
}
.eoacs-checkout-page .wc-block-components-notice-banner.is-info a:hover,
.eoacs-checkout-page .woocommerce .woocommerce-info a:hover { color: #14263b; }
.eoacs-checkout-page .woocommerce button.button:not(#place_order),
.eoacs-checkout-page .woocommerce a.button:not(#place_order) {
  border: 1px solid #cbd3d9;
  background: #fff;
  color: #243b53;
  box-shadow: none;
}
.eoacs-checkout-page .woocommerce button.button:not(#place_order):hover,
.eoacs-checkout-page .woocommerce a.button:not(#place_order):hover {
  border-color: #8e9cac;
  background: #f5f8fa;
  color: #14263b;
  box-shadow: none;
}
.eoacs-checkout-page .woocommerce form .eoacs-adult-confirmation,
.eoacs-checkout-page .woocommerce form .eoacs-whatsapp-service-consent { background: #fff; }
.eoacs-checkout-page .woocommerce form .eoacs-adult-confirmation input[type="checkbox"],
.eoacs-checkout-page .woocommerce form .eoacs-whatsapp-service-consent input[type="checkbox"] { accent-color: #243b53; }
.eoacs-checkout-summary-details > span { color: #43515e; font-size: 13px; font-weight: 600; }
.eoacs-checkout-page .select2-container--default .select2-selection--single {
  height: 50px;
  min-height: 50px;
  display: flex;
  align-items: center;
  margin: 0;
  background: #fff;
}
.eoacs-checkout-page .select2-container--default .select2-selection--single .select2-selection__rendered {
  display: flex;
  align-items: center;
  width: 100%;
  height: 48px;
  line-height: 1.3;
  padding: 0 40px 0 13px !important;
  margin: 0 !important;
  color: #172431;
  font-size: 15px;
}
.eoacs-checkout-page .select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 50%;
  right: 12px;
  height: 24px;
  transform: translateY(-50%);
}
.eoacs-payment-assurance { align-items: center; gap: 9px; padding: 10px 12px; background: #f8faf9; border-color: #e0e9e3; }
.eoacs-payment-assurance strong { margin: 0; font-size: 13px; }
.eoacs-payment-assurance span { font-size: 12px; }
@media (max-width: 600px) {
  .eoacs-checkout-intro > p:last-child { font-size: 13px; }
  .eoacs-checkout-summary-details > span { font-size: 12px; }
  .eoacs-checkout-page .wc-block-components-notice-banner.is-info,
  .eoacs-checkout-page .woocommerce .woocommerce-info { font-size: 13px; }
}

/* A warmer checkout, with a fuller desktop summary and a compact final consent group. */
.eoacs-checkout-header {
  background: linear-gradient(110deg, #172339 0%, #1d2c42 66%, #262837 100%);
  border-bottom: 2px solid #bf3850;
}
.eoacs-checkout-security svg { stroke: #f28a9a; }
.eoacs-checkout-intro h1 .eoacs-checkout-period { color: #c63750; }
.eoacs-checkout-eyebrow { color: #b52d47; }
.eoacs-checkout-eyebrow span { color: #ba8590; }
@media (min-width: 801px) {
  .eoacs-checkout-main { max-width: 1120px; }
  .eoacs-checkout-grid { grid-template-columns: minmax(0, 1.52fr) minmax(340px, .98fr); }
  .eoacs-checkout-summary { padding: 24px; }
  .eoacs-checkout-summary-main { grid-template-columns: 88px minmax(0, 1fr); gap: 16px; }
  .eoacs-checkout-art,
  .eoacs-checkout-page .eoacs-checkout-cover { width: 88px; height: 88px; }
  .eoacs-checkout-summary h2 { font-size: 17px; line-height: 1.28; margin-bottom: 7px; }
  .eoacs-checkout-summary-details > span { font-size: 12px; }
  .eoacs-checkout-summary-total { margin-top: 21px; padding-top: 17px; }
}
.eoacs-checkout-summary .eoacs-checkout-summary-includes {
  display: grid;
  gap: 9px;
  margin: 20px 0 0;
  padding: 15px 0 0;
  border-top: 1px solid #e9e4df;
  color: #3a4754;
  font-size: 12px;
  font-weight: 600;
}
.eoacs-checkout-summary .eoacs-checkout-summary-includes li { align-items: center; }
.eoacs-checkout-summary .eoacs-checkout-summary-includes li::before { color: #bd3850; }
.eoacs-checkout-summary-mobile-note { display: none; }
.eoacs-checkout-page .woocommerce-checkout #payment .form-row.place-order {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-checkout-consents,
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper { display: contents; }
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-adult-confirmation { order: 1; }
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper > .form-row { order: 2; }
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper > .woocommerce-terms-and-conditions { order: 3; }
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-whatsapp-service-consent { order: 4; }
.eoacs-checkout-page .woocommerce-checkout #payment #place_order { order: 5; width: 100%; }
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-payment-assurance {
  order: 6;
  justify-content: center;
  align-items: flex-start;
  gap: 8px;
  margin: 12px 0 0;
  padding: 0 5px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #445965;
}
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-payment-assurance svg {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  margin-top: 1px;
  stroke: #244f55;
}
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-payment-assurance span {
  display: inline;
  color: #445965;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.45;
}
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper > .woocommerce-privacy-policy-text { order: 7; }
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-checkout-consents .form-row {
  float: none;
  width: 100%;
  margin: 0 0 8px;
  padding: 11px 13px;
  border: 1px solid #e3e0df;
  border-radius: 9px;
  background: #fff;
}
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-checkout-consents label { font-size: 12.5px; line-height: 1.42; font-weight: 500; }
.eoacs-checkout-page .woocommerce-checkout #payment .eoacs-checkout-consents input[type="checkbox"] { width: 17px; height: 17px; flex-basis: 17px; accent-color: #a92e45; }
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper > .form-row {
  float: none;
  width: 100%;
  margin: 0 0 7px;
  padding: 11px 13px;
  border: 1px solid #e3e0df;
  border-radius: 9px;
  background: #fff;
}
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper > .form-row label { font-size: 12.5px; line-height: 1.42; font-weight: 500; }
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-privacy-policy-text,
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-privacy-policy-text p {
  margin: 0;
  color: #67717b;
  font-size: 11px;
  line-height: 1.45;
  text-align: center;
}
.eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-privacy-policy-text { padding: 8px 5px 0; }
@media (max-width: 800px) {
  .eoacs-checkout-summary .eoacs-checkout-summary-includes { display: none; }
  .eoacs-checkout-summary-mobile-note { display: block; margin: 11px 0 0; color: #4e5b67; font-size: 11.5px; font-weight: 600; }
}
@media (max-width: 600px) {
  .eoacs-checkout-page .woocommerce-checkout #payment .eoacs-checkout-consents .form-row,
  .eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper > .form-row { padding: 8px 11px; }
  .eoacs-checkout-page .woocommerce-checkout #payment .eoacs-checkout-consents label,
  .eoacs-checkout-page .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper > .form-row label { font-size: 12px; line-height: 1.4; }
  .eoacs-checkout-page .woocommerce-checkout #payment .eoacs-checkout-consents input[type="checkbox"] { width: 16px; height: 16px; flex-basis: 16px; }
}

/* Course access after a verified WooCommerce order. */
.eoacs-welcome-main { width: min(100% - 48px, 1320px); margin: 0 auto; padding: clamp(36px, 5vw, 76px) 0 60px; }
.eoacs-welcome-card { display: grid; grid-template-columns: minmax(0, 1.22fr) minmax(280px, .78fr); overflow: hidden; border: 1px solid var(--eoacs-line); border-radius: 20px; background: #fff; box-shadow: 0 25px 70px rgba(23, 31, 39, .08); }
.eoacs-welcome-copy { padding: clamp(32px, 5vw, 70px); align-self: center; }
.eoacs-welcome-icon { width: 48px; height: 48px; margin: 19px 0 21px; display: grid; place-items: center; border-radius: 50%; background: #e9f5ee; color: #256e47; font-size: 25px; font-weight: 750; }
.eoacs-welcome-confirmation { width: 100%; margin: 25px 0 30px; padding: clamp(18px, 2vw, 27px); display: flex; align-items: center; gap: 20px; border: 1px solid #343941; border-radius: 16px; background: #20252d; color: #fff; box-shadow: 0 15px 30px rgba(29, 35, 42, .13); }
.eoacs-welcome-confirmation-icon { width: 64px; height: 64px; flex: 0 0 64px; display: grid; place-items: center; border-radius: 50%; background: var(--eoacs-red); color: #fff; font-size: 32px; font-weight: 750; }
.eoacs-welcome-confirmation strong, .eoacs-welcome-confirmation span:last-child { display: block; }
.eoacs-welcome-confirmation strong { color: #fff; font-size: clamp(21px, 2vw, 29px); font-weight: 780; letter-spacing: -.035em; line-height: 1.2; }
.eoacs-welcome-confirmation span:last-child { margin-top: 5px; color: #e5e9ed; font-size: 15px; font-weight: 500; line-height: 1.4; }
.eoacs-welcome-icon.is-waiting { background: #fff2e5; color: #9f5a1a; }
.eoacs-welcome-copy h1 { max-width: 590px; margin: 0 0 16px; color: var(--eoacs-ink); font: 750 clamp(32px, 4vw, 51px)/1.13 "Avenir Next", Inter, "Helvetica Neue", Arial, sans-serif; letter-spacing: -.045em; }
.eoacs-welcome-copy > p:not(.eoacs-checkout-eyebrow):not(.eoacs-welcome-help) { max-width: 590px; margin: 0 0 28px; color: #43505d; font-size: 16px; line-height: 1.65; }
.eoacs-welcome-primary { min-height: 50px; width: fit-content; padding: 12px 19px; display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid var(--eoacs-red); border-radius: 8px; background: var(--eoacs-red); color: #fff !important; font-size: 14px; font-weight: 750; text-decoration: none; transition: background .2s ease, box-shadow .2s ease, transform .2s ease; }
.eoacs-welcome-primary:hover, .eoacs-welcome-primary:focus-visible { background: var(--eoacs-red-dark); border-color: var(--eoacs-red-dark); box-shadow: 0 11px 24px rgba(191, 39, 61, .2); transform: translateY(-1px); }
.eoacs-welcome-help { margin: 22px 0 0; color: #52606b; font-size: 14px; }
.eoacs-welcome-help a { font-weight: 700; text-underline-offset: 3px; }
.eoacs-welcome-course { min-height: 420px; display: flex; flex-direction: column; background: #20252a; color: #fff; }
.eoacs-welcome-course img { width: 100%; aspect-ratio: 16/9; display: block; object-fit: cover; }
.eoacs-welcome-course > div { padding: 28px 32px 34px; margin-top: auto; }
.eoacs-welcome-course span { color: #ef9ead; font-size: 11px; font-weight: 800; letter-spacing: .15em; }
.eoacs-welcome-course h2 { margin: 9px 0; color: #fff; font: 730 clamp(23px, 2.5vw, 34px)/1.2 "Avenir Next", Inter, "Helvetica Neue", Arial, sans-serif; letter-spacing: -.03em; }
.eoacs-welcome-course p { margin: 0; color: #d4d7da; font-size: 13px; }
.eoacs-welcome-receipt { margin: 18px 3px 0; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; color: #4a5662; font-size: 13px; }
.eoacs-welcome-woo-hooks { margin-top: 28px; color: var(--eoacs-ink); }
.eoacs-welcome-woo-hooks .woocommerce-order-details, .eoacs-welcome-woo-hooks .woocommerce-customer-details { padding: 26px; border: 1px solid var(--eoacs-line); border-radius: 12px; background: #fff; }
.eoacs-welcome-woo-hooks .woocommerce-order-details h2, .eoacs-welcome-woo-hooks .woocommerce-customer-details h2 { margin-top: 0; color: #1f2933; font-size: 22px; font-weight: 750; }
@media (max-width: 760px) { .eoacs-welcome-main { width: min(100% - 32px, 600px); padding: 28px 0 45px; } .eoacs-welcome-card { grid-template-columns: 1fr; } .eoacs-welcome-copy { padding: 31px 24px; } .eoacs-welcome-course { min-height: 0; } .eoacs-welcome-course > div { padding: 20px 24px 25px; } .eoacs-welcome-woo-hooks .woocommerce-order-details, .eoacs-welcome-woo-hooks .woocommerce-customer-details { padding: 18px; } }
.eoacs-welcome-card:is(.is-setup, .is-ready) { grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr); align-items: center; }
.eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-copy { padding: clamp(34px, 4vw, 64px); }
.eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-copy h1 { max-width: 650px; font-size: clamp(39px, 4vw, 60px); line-height: 1.07; }
.eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-copy > p:not(.eoacs-checkout-eyebrow):not(.eoacs-welcome-help) { color: #263441; font-size: 18px; font-weight: 600; line-height: 1.6; }
.eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-course { min-height: 0; align-self: center; margin: 34px 34px 34px 0; overflow: hidden; border-radius: 16px; box-shadow: 0 18px 42px rgba(19, 24, 30, .18); }
.eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-course > div { margin-top: 0; padding: 27px 31px 32px; }
.eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-course p { color: #f2f3f5; font-size: 14px; font-weight: 600; line-height: 1.5; }
.eoacs-welcome-card.is-ready .eoacs-welcome-confirmation { margin: 27px 0 32px; }
.eoacs-welcome-card.is-ready .eoacs-welcome-primary { min-height: 58px; padding: 15px 22px; font-size: 16px; font-weight: 800; border-radius: 10px; box-shadow: 0 12px 25px rgba(170, 41, 64, .18); }
.eoacs-welcome-card.is-ready .eoacs-welcome-help { color: #35414d; font-size: 15px; font-weight: 600; }
.eoacs-welcome-password { margin: 28px 0 0; padding: clamp(22px, 2.4vw, 30px); border: 1px solid #e2e1df; border-radius: 14px; background: #f8f7f5; }
.eoacs-welcome-step { display: block; margin-bottom: 7px; color: var(--eoacs-red-dark); font-size: 11px; font-weight: 800; letter-spacing: .14em; }
.eoacs-welcome-password h2 { margin: 0 0 7px; color: #1f2933; font-size: clamp(24px, 2.4vw, 29px); font-weight: 750; letter-spacing: -.035em; line-height: 1.2; }
.eoacs-welcome-password p { margin: 0 0 21px; color: #4a5662; font-size: 15px; line-height: 1.55; }
.eoacs-welcome-password form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.eoacs-welcome-password label { display: grid; min-width: 0; gap: 8px; color: #263441; font-size: 14px; font-weight: 700; }
.eoacs-welcome-password input { box-sizing: border-box; min-width: 0; width: 100%; min-height: 52px; padding: 12px 14px; border: 1px solid #bfc7cf; border-radius: 9px; background: #fff; color: #1f2933; font: inherit; }
.eoacs-welcome-password input:focus-visible { outline: 3px solid rgba(231, 53, 74, .17); border-color: var(--eoacs-red); }
.eoacs-welcome-password-hint { grid-column: 1 / -1; margin-top: -3px; color: #53606c; font-size: 13px; }
.eoacs-checkout-page .eoacs-welcome-password button { grid-column: 1 / -1; min-height: 54px; padding: 12px 20px; display: flex; align-items: center; justify-content: space-between; gap: 15px; border: 1px solid var(--eoacs-red); border-radius: 9px; background: var(--eoacs-red); color: #fff; font: inherit; font-size: 15px; font-weight: 750; text-align: left; cursor: pointer; transition: background .18s ease, transform .18s ease, box-shadow .18s ease; }
.eoacs-checkout-page .eoacs-welcome-password button:hover, .eoacs-checkout-page .eoacs-welcome-password button:focus-visible { background: var(--eoacs-red-dark); border-color: var(--eoacs-red-dark); box-shadow: 0 10px 24px rgba(170, 41, 64, .2); transform: translateY(-1px); }
.eoacs-welcome-woo-hooks .woocommerce-order-details, .eoacs-welcome-woo-hooks .woocommerce-customer-details, .eoacs-welcome-woo-hooks table.shop_table th, .eoacs-welcome-woo-hooks table.shop_table td, .eoacs-welcome-woo-hooks address { color: #34414d; font-size: 14px; }
.eoacs-welcome-page .eoacs-welcome-card.is-setup .eoacs-welcome-copy > p:not(.eoacs-checkout-eyebrow):not(.eoacs-welcome-help) { color: #263441 !important; font-size: 18px !important; font-weight: 600 !important; }
.eoacs-welcome-page .eoacs-welcome-password p { color: #35414d !important; font-size: 16px !important; font-weight: 600 !important; }
.eoacs-welcome-page .eoacs-welcome-password-hint { color: #35414d !important; font-size: 14px !important; font-weight: 600 !important; }
.eoacs-welcome-page .eoacs-welcome-receipt, .eoacs-welcome-page .eoacs-welcome-help { color: #35414d !important; font-size: 14px !important; font-weight: 600 !important; }
.eoacs-welcome-page .eoacs-welcome-woo-hooks .woocommerce-order-details, .eoacs-welcome-page .eoacs-welcome-woo-hooks .woocommerce-customer-details, .eoacs-welcome-page .eoacs-welcome-woo-hooks table.shop_table th, .eoacs-welcome-page .eoacs-welcome-woo-hooks table.shop_table td, .eoacs-welcome-page .eoacs-welcome-woo-hooks address { color: #263441 !important; font-weight: 600 !important; }
.eoacs-welcome-page .eoacs-welcome-card.is-setup .eoacs-welcome-course p { color: #f2f3f5 !important; font-weight: 600 !important; }
.eoacs-welcome-page .eoacs-welcome-password .eoacs-welcome-password-error { margin: 0 0 19px; padding: 13px 15px; border: 1px solid #e7b7c1; border-radius: 9px; background: #fff0f2; color: #86233a !important; font-size: 14px !important; font-weight: 700 !important; line-height: 1.45; }
.eoacs-welcome-page .eoacs-welcome-password .eoacs-welcome-password-error[hidden] { display: none !important; }
.eoacs-welcome-page .eoacs-welcome-password input[aria-invalid="true"] { border-color: #bb354e; box-shadow: 0 0 0 3px rgba(187, 53, 78, .14); }
.eoacs-welcome-woo-hooks:empty { display: none; }
@media (max-width: 900px) { .eoacs-welcome-card:is(.is-setup, .is-ready) { grid-template-columns: 1fr; } .eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-course { width: auto; margin: 0 34px 34px; } }
@media (max-width: 560px) { .eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-copy { padding: 28px 22px 30px; } .eoacs-welcome-confirmation { gap: 14px; padding: 17px; } .eoacs-welcome-confirmation-icon { width: 50px; height: 50px; flex-basis: 50px; font-size: 25px; } .eoacs-welcome-confirmation strong { font-size: 21px; } .eoacs-welcome-confirmation span:last-child { font-size: 13px; } .eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-copy h1 { font-size: clamp(36px, 9vw, 46px); } .eoacs-welcome-password form { grid-template-columns: 1fr; } .eoacs-welcome-card:is(.is-setup, .is-ready) .eoacs-welcome-course { margin: 0 22px 26px; } }

/* Distinct, restrained payment choices; the selected gateway remains readable on mobile. */
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods { display: grid; gap: 10px; }
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li {
  margin: 0;
  padding: 15px 17px;
  border: 1px solid #dfe3e5;
  border-radius: 11px;
  background: #fff;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.is-selected {
  border-color: #b84055;
  background: #fffafb;
  box-shadow: 0 0 0 2px rgba(184, 64, 85, .08);
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li > input[type="radio"] { accent-color: #ad3149; }
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li > label { color: #202b35; font-size: 14px; font-weight: 750; }
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_stripe > label::before,
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_bacs > label::before { content: ''; display: inline-block; width: 24px; height: 24px; margin: 0 9px 0 3px; vertical-align: middle; background: center / contain no-repeat; }
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_stripe > label::before { background-image: url('./icon-payment-card.svg'); }
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_bacs > label::before { background-image: url('./icon-payment-bank.svg'); }
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li .payment_box { margin-top: 11px; padding-top: 12px; border-top: 1px solid #eee6e7; font-size: 13px; font-weight: 500; line-height: 1.58; }
.eoacs-checkout-page .woocommerce-checkout #payment .payment_method_bacs .payment_box p { margin: 0 0 7px; }
.eoacs-welcome-page .eoacs-welcome-woo-hooks .woocommerce-bacs-bank-details { padding: 24px 27px; border: 1px solid #e2e1df; border-radius: 12px; background: #fff; }
.eoacs-welcome-page .eoacs-welcome-woo-hooks .woocommerce-bacs-bank-details h2 { margin: 0 0 12px; font-size: 22px; }
.eoacs-welcome-page .eoacs-welcome-woo-hooks > p { padding: 22px 25px; border: 1px solid #e2e1df; border-radius: 12px; background: #fff; line-height: 1.65; }
.eoacs-transfer-details { max-width: 1040px; margin: 22px auto 0; padding: clamp(24px, 4vw, 42px); border: 1px solid #e2e1df; border-radius: 18px; background: #fff; box-shadow: 0 16px 36px rgba(18, 35, 51, .06); color: #263441; }
.eoacs-transfer-details h2 { margin: 5px 0 12px; color: #172a48; font-size: clamp(25px, 3vw, 34px); line-height: 1.15; }
.eoacs-transfer-details > p { max-width: 710px; line-height: 1.6; }
.eoacs-transfer-details dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; margin: 24px 0; }
.eoacs-transfer-details dl > div { padding: 15px 17px; border: 1px solid #e8e6e3; border-radius: 10px; background: #fbfaf8; }
.eoacs-transfer-details dt { margin-bottom: 5px; color: #63707d; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; }
.eoacs-transfer-details dd { margin: 0; color: #192d45; font-size: 17px; font-weight: 750; overflow-wrap: anywhere; }
.eoacs-transfer-details .eoacs-transfer-next { max-width: none; margin-bottom: 0; padding-top: 17px; border-top: 1px solid #e8e6e3; }
.eoacs-welcome-page .eoacs-welcome-card.is-transfer .eoacs-welcome-copy > p:not(.eoacs-checkout-eyebrow):not(.eoacs-welcome-help) { color: #263441; font-size: 16px; font-weight: 600; line-height: 1.6; }
.eoacs-welcome-page .eoacs-welcome-card.is-transfer .eoacs-welcome-course p { color: #eef0f2; font-weight: 600; }
.eoacs-welcome-page .eoacs-transfer-details h2 { color: #172a3b; font-weight: 750; letter-spacing: -.035em; }
.eoacs-welcome-page .eoacs-transfer-details > p:not(.eoacs-checkout-eyebrow) { color: #263441; font-size: 15px; font-weight: 600; line-height: 1.6; }
.eoacs-welcome-page .eoacs-transfer-details > p strong { color: #172a3b; font-weight: 800; }
.eoacs-welcome-page .eoacs-transfer-details dt { color: #536170; }
@media (max-width: 560px) {
  .eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li { padding: 13px 14px; }
  .eoacs-welcome-page .eoacs-welcome-woo-hooks .woocommerce-bacs-bank-details,
  .eoacs-welcome-page .eoacs-welcome-woo-hooks > p { padding: 18px; }
  .eoacs-transfer-details { margin-top: 14px; border-radius: 14px; }
  .eoacs-transfer-details dl { grid-template-columns: 1fr; }
  .eoacs-welcome-card.is-transfer .eoacs-welcome-copy { padding: 26px 23px 28px; }
  .eoacs-welcome-card.is-transfer .eoacs-welcome-icon { margin: 14px 0 16px; }
  .eoacs-welcome-card.is-transfer .eoacs-welcome-course { min-height: 0; }
  .eoacs-welcome-card.is-transfer .eoacs-welcome-course img,
  .eoacs-welcome-card.is-transfer .eoacs-welcome-course p { display: none; }
  .eoacs-welcome-card.is-transfer .eoacs-welcome-course > div { padding: 15px 23px 18px; }
  .eoacs-welcome-card.is-transfer .eoacs-welcome-course h2 { margin: 5px 0 0; font-size: 18px; }
}

/* Payment picker: quiet labels, real payment marks and a clickable card surface. */
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods { gap: 9px; }
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li {
  cursor: pointer;
  border-color: #dedfdf;
  border-radius: 10px;
  box-shadow: 0 1px 2px rgba(20, 29, 39, .025);
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.is-selected {
  border-color: #606971;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(32, 42, 51, .11);
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li > input[type="radio"] {
  width: 17px;
  height: 17px;
  margin-right: 10px;
  vertical-align: middle;
  accent-color: #202b35;
  cursor: pointer;
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li > label {
  display: inline-flex;
  align-items: center;
  max-width: calc(100% - 35px);
  min-height: 29px;
  margin: 0;
  vertical-align: middle;
  color: #252b30;
  font-family: "Avenir Next", Inter, "Helvetica Neue", Arial, sans-serif;
  font-size: 15px;
  font-weight: 630;
  line-height: 1.25;
  letter-spacing: -.01em;
  cursor: pointer;
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_stripe > label::before {
  width: 23px;
  height: 23px;
  margin: 0 11px 0 0;
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_bacs > label {
  font-size: 0;
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_bacs > label::before {
  width: 78px;
  height: 29px;
  margin: 0;
  background-image: url('./spei-logo.svg');
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_woo-mercado-pago-basic > label img {
  order: -1;
  width: 28px;
  height: 28px;
  margin: 0 10px 0 0;
  object-fit: contain;
  filter: grayscale(1);
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li .payment_box {
  cursor: default;
}
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_bacs .payment_box,
.eoacs-checkout-page .woocommerce-checkout #payment ul.payment_methods > li.payment_method_woo-mercado-pago-basic .payment_box {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid #ece9e5;
}
.eoacs-checkout-page #payment .eoacs-spei-summary-intro {
  margin: 0 0 12px;
  color: #53606c;
  font-size: 13px;
  line-height: 1.5;
}
.eoacs-checkout-page #payment .eoacs-spei-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}
.eoacs-checkout-page #payment .eoacs-spei-step {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  min-width: 0;
  padding: 13px 12px;
  border: 1px solid #e8e6e2;
  border-radius: 8px;
  background: #f8f7f5;
}
.eoacs-checkout-page #payment .eoacs-spei-step > span {
  flex: 0 0 auto;
  color: #a52d43;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .03em;
}
.eoacs-checkout-page #payment .eoacs-spei-step strong {
  display: block;
  margin-bottom: 4px;
  color: #24303b;
  font-size: 12px;
  font-weight: 740;
  line-height: 1.35;
}
.eoacs-checkout-page #payment .eoacs-spei-step p {
  margin: 0;
  color: #5d6872;
  font-size: 11px;
  font-weight: 450;
  line-height: 1.45;
}
/* Checkout Pro redirects to Mercado Pago; its long promotional panel is not a form. */
.eoacs-checkout-page #payment .payment_method_woo-mercado-pago-basic .mp-checkout-pro-benefits-title,
.eoacs-checkout-page #payment .payment_method_woo-mercado-pago-basic .mp-checkout-pro-benefits,
.eoacs-checkout-page #payment .payment_method_woo-mercado-pago-basic .mp-checkout-pro-payment-methods { display: none !important; }
.eoacs-checkout-page #payment .payment_method_woo-mercado-pago-basic .mp-checkout-pro-container,
.eoacs-checkout-page #payment .payment_method_woo-mercado-pago-basic .mp-checkout-pro-content,
.eoacs-checkout-page #payment .payment_method_woo-mercado-pago-basic .mp-checkout-pro-redirect {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.eoacs-checkout-page #payment .payment_method_woo-mercado-pago-basic .mp-checkout-pro-redirect-title {
  margin: 0 0 4px;
  color: #26323d;
  font-size: 13px;
  font-weight: 680;
}
.eoacs-checkout-page #payment .payment_method_woo-mercado-pago-basic .mp-checkout-pro-redirect-description {
  margin: 0;
  color: #65707a;
  font-size: 12px;
  line-height: 1.45;
}
.eoacs-checkout-page #payment #mp-checkout-pro-root.mp-checkout-pro-container .mp-checkout-pro-content .mp-checkout-pro-redirect {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
.eoacs-checkout-page #payment #mp-checkout-pro-root .mp-checkout-pro-redirect-title,
.eoacs-checkout-page #payment #mp-checkout-pro-root .mp-checkout-pro-redirect-description {
  justify-content: flex-start !important;
  text-align: left !important;
}
@media (max-width: 640px) {
  .eoacs-checkout-page #payment .eoacs-spei-steps { grid-template-columns: 1fr; }
  .eoacs-checkout-page #payment .eoacs-spei-step { padding: 11px 12px; }
  .eoacs-checkout-page #payment .eoacs-spei-step p { font-size: 12px; }
}

/* Approved-payment confirmation: high-contrast copy. */
.eoacs-welcome-page .eoacs-welcome-card .eoacs-welcome-copy > p:not(.eoacs-checkout-eyebrow):not(.eoacs-welcome-help) {
  color: #263441 !important;
  font-weight: 600 !important;
}
.eoacs-welcome-page .eoacs-welcome-card .eoacs-welcome-course p {
  color: #eef0f2 !important;
  font-weight: 600 !important;
}
