/* Page chrome for legacy financial tools; field names, values and handlers stay source-owned. */
body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-shell.site-main { width: min(calc(100% - 2rem), 88rem); padding-block: clamp(1rem, 3vw, 2.5rem); }
body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-native { overflow: clip; padding: clamp(.65rem, 1.6vw, 1.35rem); border: 1px solid rgb(209 172 128 / 40%); border-radius: 1.7rem; background: #26231f; box-shadow: 0 24px 60px rgb(38 35 31 / 20%); color: #f6f0e7; }
body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-source { min-width: 0; overflow: clip; border: 1px solid rgb(209 172 128 / 26%); border-radius: 1.15rem; background: #26231f; color: #f6f0e7; }

/* Calculator: override only presentation tokens and the full-bleed source root. */
body.gstudio-native-site.gstudio-native-calculator .gcalc-root { --gc-bg-main: #26231f; --gc-bg-card: #302b25; --gc-accent: #d1ac80; --gc-accent-glow: #e1c49a; --gc-green: #b9c99c; --gc-text: #fff8ee; --gc-text-2: #d2c7b9; --gc-border: rgb(209 172 128 / 30%); width: 100%; max-width: 100%; margin: 0; padding: clamp(1rem, 3vw, 2rem); overflow: clip; border-radius: 1rem; background: #26231f; color: #f6f0e7; font-family: var(--gs-font-body, Montserrat, sans-serif); }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(h1, h2, h3, h4, button, input, select, textarea) { font-family: inherit; }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(.gcalc-block, .gcalc-course-card, .gcalc-total-box, .gcalc-modal-content) { border-color: rgb(209 172 128 / 34%); border-radius: 1rem; background: #302b25; color: #f6f0e7; box-shadow: 0 12px 32px rgb(0 0 0 / 17%); }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(.gcalc-header h1, .gcalc-block-title, .gcalc-course-card-title, .gcalc-modal-title) { color: #fff8ee; }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root .gcalc-total-amount { color: #34d399; }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(.gcalc-header p, .gcalc-note, .gcalc-course-card-sub, .gcalc-payment-note, .gcalc-total-meta, .gcalc-required-note) { color: #d2c7b9; }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(.gcalc-badge, .gcalc-pill, .gcalc-option-item, .gcalc-lesson-row) { border-color: rgb(209 172 128 / 34%); background: rgb(209 172 128 / 8%); color: #f4e8d8; }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(.gcalc-option-item.is-selected, .gcalc-pill.is-active, .gcalc-badge--selected) { border-color: #d1ac80; background: rgb(209 172 128 / 17%); }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(.gcalc-btn-cta, .gcalc-submit, button[type="submit"]) { border: 1px solid #e1c49a; border-radius: .7rem; background: linear-gradient(135deg, #e1c49a, #c7a477); color: #26231f; font-weight: 750; box-shadow: 0 8px 22px rgb(0 0 0 / 18%); }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(.gcalc-btn-secondary, .gcalc-course-card--link) { border-color: rgb(209 172 128 / 44%); background: transparent; color: #e4c89f; }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { border-color: #85715a; border-radius: .5rem; background: #f5f0e7; color: #26231f; }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root :is(input, select, textarea, button, a):focus-visible { outline: 3px solid #e1c49a; outline-offset: 3px; }
body.gstudio-native-site.gstudio-native-calculator .gcalc-root [hidden] { display: none !important; }

/* Payment/options page: retain pricing and contract plugin behavior; unify the visual palette. */
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing { --gp-dark: #26231f; --gp-gold: #d1ac80; --gp-gold-soft: rgb(209 172 128 / 14%); --gp-cream: #eee7dc; --gp-text: #f6f0e7; --gp-muted: #c9beaf; --gp-radius: 16px; --gp-shadow: 0 14px 36px rgb(0 0 0 / 22%); max-width: 76rem; color: #f6f0e7; font-family: var(--gs-font-body, Montserrat, sans-serif); }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-hero { border: 1px solid rgb(209 172 128 / 42%); background: radial-gradient(ellipse at 50% 0%, rgb(209 172 128 / 17%), transparent 55%), linear-gradient(135deg, #332e28, #26231f 72%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-section--muted { border: 1px solid rgb(209 172 128 / 28%); background: #302b25; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-section__head h2,
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-card h3 { color: #fff8ee; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-card__price strong { color: #34d399; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-section__head p,
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-card__desc { color: #d2c7b9; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-card__price-old { color: #f87171; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-card__from { color: #d2c7b9; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-card,
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-compare { border-color: rgb(209 172 128 / 32%); background: #302b25; color: #f6f0e7; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-payment { border-color: #e3ddd5; background: #fbfaf8; color: #1f1f1f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-payment h3 { color: #1f1f1f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-payment p { color: #665f58; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-payment__tag { background: #efe5db; color: #26231f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-payment__tag--save { background: #dcfce7; color: #067647; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-payment__tag--plus { background: #fee2e2; color: #b42318; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-card--featured { border-color: #d1ac80; background: linear-gradient(155deg, rgb(209 172 128 / 17%), #302b25 60%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-cta { border: 1px solid #d1ac80; background: #d1ac80; color: #26231f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-cta--gold { background: linear-gradient(135deg, #e1c49a, #c7a477); color: #26231f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-table th { background: #26231f; color: #fff8ee; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-table td { border-color: rgb(209 172 128 / 24%); color: #e3d8ca; }

/* Contract form: dark panels, clear warm fields, original validation/hidden states untouched. */
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form-wrap { max-width: 76rem; margin-inline: auto; color: #f6f0e7; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-form-section,
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card,
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-price-summary { border-color: rgb(209 172 128 / 34%); border-radius: 1rem; background: #302b25; color: #f6f0e7; box-shadow: inset 0 1px 0 rgb(255 255 255 / 5%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(.gstudio-form-section h2, .gstudio-form-section h3, .gstudio-form-section h4, .gstudio-field-label, .gstudio-choice-title, .gstudio-choice-price, .gstudio-payment-head) { color: #fff8ee; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(p, small, .gstudio-field-help, .gstudio-choice-description) { color: #d2c7b9; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-step-number { background: #d1ac80; color: #26231f; box-shadow: none; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-credit-monthly-preview { border-color: rgb(209 172 128 / 42%); background: rgb(209 172 128 / 10%); color: #f4e8d8; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { border-color: #85715a; border-radius: .5rem; background: #f5f0e7; color: #26231f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(button, input[type="submit"]) { border-color: #d1ac80; border-radius: .65rem; background: #d1ac80; color: #26231f; font-weight: 750; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(a, button, input, select, textarea):focus-visible { outline: 3px solid #e1c49a; outline-offset: 3px; }
body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) :is(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #e1c49a; outline-offset: 3px; }

@media (max-width: 760px) {
    body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-shell.site-main { width: min(calc(100% - 1rem), 88rem); padding-block: .5rem 1.25rem; }
    body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-native { padding: .45rem; border-radius: 1.1rem; }
    body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-source { border-radius: .85rem; }
    body.gstudio-native-site.gstudio-native-calculator .gcalc-root { padding: .85rem; }
    body.gstudio-native-site.gstudio-native-payment .gstudio-choice-grid--courses,
    body.gstudio-native-site.gstudio-native-payment .gstudio-choice-grid--payments { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 420px) {
    body.gstudio-native-site.gstudio-native-payment .gstudio-choice-grid--courses,
    body.gstudio-native-site.gstudio-native-payment .gstudio-choice-grid--payments { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-native *,
    body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-native *::before,
    body.gstudio-native-site:is(.gstudio-native-calculator, .gstudio-native-payment) .gstudio-commerce-content-native *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Contract wizard: target the actual form markup, not the pricing-card class names. */
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form { gap: clamp(.85rem, 1.6vw, 1.35rem); font-family: var(--gs-font-body, Montserrat, sans-serif); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-form-section { padding: clamp(1rem, 2.2vw, 2rem); border-radius: 1.15rem; background: linear-gradient(145deg, rgb(55 49 42 / 98%), rgb(42 38 33 / 98%)); box-shadow: inset 0 1px 0 rgb(255 255 255 / 6%), 0 14px 34px rgb(0 0 0 / 15%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-wizard-hero { border-color: #e3ddd5; background: var(--gs-paper, #fbfaf8); color: var(--gs-text, #1f1f1f); box-shadow: inset 0 1px 0 #fff, 0 12px 30px rgb(38 35 31 / 10%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-wizard-hero h2 { color: var(--gs-text, #1f1f1f); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-wizard-hero p:not(.gstudio-kicker) { color: var(--gs-muted, #665f58); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-wizard-hero .gstudio-kicker { color: #6b4a2f !important; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-more-services { color: #e4c89f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-more-services:hover { color: #fff0d4; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-step-head { margin-bottom: .35rem; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-step-head h3 { color: #fff8ee; line-height: 1.2; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card { min-height: 8rem; border-color: rgb(209 172 128 / 30%); background: linear-gradient(150deg, #38332d, #302b25); color: #f6f0e7; box-shadow: inset 0 1px 0 rgb(255 255 255 / 4%), 0 8px 22px rgb(0 0 0 / 12%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card strong { color: #fff8ee; line-height: 1.35; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card > span:not(.gstudio-choice-check) { color: #d8cdbf; line-height: 1.55; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card em { color: #e4c89f; font-style: normal; font-weight: 750; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card:hover { border-color: #d1ac80; background: linear-gradient(150deg, #443a2f, #332e28); box-shadow: 0 14px 30px rgb(0 0 0 / 22%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card:focus-within { outline: 3px solid #e1c49a; outline-offset: 3px; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card:has(input:checked) { border-color: #e1c49a; background: linear-gradient(150deg, rgb(209 172 128 / 19%), #38332d 70%); box-shadow: inset 0 0 0 1px rgb(225 196 154 / 24%), 0 12px 28px rgb(0 0 0 / 20%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card .gstudio-choice-check { background: transparent; color: transparent !important; opacity: 0; transform: scale(.7); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card:has(input:checked) .gstudio-choice-check { background: #e1c49a; color: #26231f !important; opacity: 1; transform: scale(1); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-field-label { color: #f4e8d8; line-height: 1.5; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-field-help,
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-consent-note { color: #d2c7b9; line-height: 1.65; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-check { border-color: rgb(209 172 128 / 30%); border-radius: .75rem; background: rgb(255 255 255 / 3%); color: #f4e8d8; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-check a { color: #f0d2a3; text-decoration-thickness: .08em; text-underline-offset: .18em; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-check a:hover { color: #fff0d4; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { min-height: 3rem; border: 1px solid #9b8468; border-radius: .65rem; background: #f7f2e9; color: #26231f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(input, select, textarea)::placeholder { color: #74695d; opacity: 1; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-price-summary__row,
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-summary div { border-color: #cbb99f; border-radius: .75rem; background: #f5f0e7; color: #40372e; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(.gstudio-price-summary__row span, .gstudio-summary span) { color: #62574b; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(.gstudio-price-summary__row strong, .gstudio-summary strong) { color: #26231f; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-price-summary__row strong { color: #067647; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-summary [data-summary-amount] > strong { color: #067647; font-size: clamp(1.5rem, 2.2vw, 1.875rem); font-weight: 800; line-height: 1.2; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-submit { min-height: 3.25rem; border: 1px solid #e1c49a; border-radius: .75rem; background: linear-gradient(135deg, #e1c49a, #c7a477); color: #26231f; font-weight: 800; box-shadow: 0 10px 26px rgb(0 0 0 / 20%); transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-submit:hover { transform: translateY(-2px); filter: brightness(1.06); box-shadow: 0 14px 32px rgb(0 0 0 / 28%); }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form :is(.gstudio-field-error, .gstudio-validation-error) { color: #ffb4ab; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-contract-error { border-color: #ffb4ab; background: #fff1f0; color: #8f1d17; }
body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-contract-success { border-color: rgb(209 172 128 / 44%); border-radius: 1rem; background: #302b25; color: #fff8ee; }

@media (max-width: 760px) {
    body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-form-section { padding: 1rem; border-radius: .9rem; }
    body.gstudio-native-site.gstudio-native-payment .gstudio-contract-form .gstudio-choice-card { min-height: 0; }
}

/* light-surfaces v1 */
/* ---- Light page shells (payment, calculator, registration): brown stays on inner cards ---- */
body.gstudio-native-site :is(.gstudio-commerce-content-native,.gstudio-commerce-content-source,.gcalc-root) {
  background: #fbfaf8 !important; color: #26231f !important; border-color: #e3ddd5 !important; box-shadow: none !important;
}
body.gstudio-native-site .gstudio-commerce-content-native { box-shadow: 0 18px 48px rgb(38 35 31 / 8%) !important; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-section--muted { background: #f3ede4 !important; }
body.gstudio-native-site.gstudio-native-payment .gstudio-pricing-card--featured { background: #38312a !important; }

/* auto-derived text colours */
.gstudio-pricing-section__head h2 { color: #26231f !important; }
.gstudio-pricing-section__head p { color: #4a433b !important; }
.gstudio-pricing-compare td.is-highlighted { color: #fff8ee !important; }
.gstudio-pricing-term span { color: #4a433b !important; }
.gstudio-pricing-faq-note { color: #4a433b !important; }
.gcalc-header .gcalc-badge { color: #26231f !important; }
.gcalc-header h1 { color: #26231f !important; }
.gcalc-header p { color: #4a433b !important; }
.gstudio-honeypot span { color: #4a433b !important; }
