/* Presentation only: WordPress, Ninja Forms and WooCommerce keep ownership
   of all fields, validation, submissions, amounts and payment controls. */
body.otds-interior { color:#172441; background:#f5f7fb; }
body.otds-interior #zak-content { padding:44px 0 64px; background:#f5f7fb; }
body.otds-interior.zak-site-layout--no_sidebar #zak-content > .zak-container > .zak-row { display:block; }
body.otds-interior.zak-site-layout--no_sidebar :is(#primary,#zak-primary) { max-width:none; }
body.otds-interior.otds-registration-page :is(#primary,#zak-primary),
body.otds-interior.otds-contact-page :is(#primary,#zak-primary),
body.otds-interior.otds-legacy-payment-page :is(#primary,#zak-primary) { max-width:960px; margin-left:auto; margin-right:auto; }
body.otds-interior #zak-content > .zak-container { width:min(calc(100% - 64px),1180px); max-width:1180px; }
body.otds-interior :is(#primary,#zak-primary) { width:100%; margin:0; border:0; padding:0; }
body.otds-interior .zak-post-content { padding:0; }
body.otds-interior .zakra-article-page { margin:0; padding:0; border:0; }
body.otds-interior .zak-entry-header:empty { display:none; }
body.otds-interior .zak-page-header { padding:32px 0; background:#18274d; border:0; }
body.otds-interior .zak-page-header .zak-container { width:min(calc(100% - 64px),1180px); max-width:1180px; }
body.otds-interior .zak-page-title { margin:0; color:#fff; font:800 clamp(28px,3.4vw,42px)/1.2 Raleway,Montserrat,sans-serif; }
body.otds-interior .zak-page-header .zak-breadcrumbs { color:#e0e7f8; }
body.otds-interior .zak-page-header .zak-breadcrumbs a { color:#fff; }
body.otds-interior .entry-content { color:#172441; font:400 16px/1.75 Montserrat,"Segoe UI",sans-serif; }
body.otds-interior .entry-content p { margin-bottom:1.25em; }
body.otds-interior .entry-content a:not(.otds-btn):not(.otds-directory-card):not(.otds-registration-link):not(.button) { text-underline-offset:4px; }
body.otds-interior .entry-content :is(h2,h3,h4) { color:#172441; line-height:1.3; }
body.otds-interior .entry-content :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #3c54a4; outline-offset:4px; }
body.otds-interior .entry-content iframe { max-width:100%; }
body.otds-interior .entry-content .wp-caption { max-width:100%; }
body.otds-interior .entry-content img { max-width:100%; height:auto; }
.otds-ui.otds-page-guide { padding:34px 38px; border:1px solid #dce2ee; border-top:4px solid #3c54a4; border-radius:8px; margin:0 0 32px; background:#fff; }
.otds-ui.otds-page-guide h1 { margin:0 0 16px; color:#172441; font-size:clamp(29px,3.4vw,42px); line-height:1.2; font-weight:800; }
.otds-ui.otds-page-guide .otds-eyebrow { color:#3c54a4; margin-bottom:12px; }
.otds-ui.otds-page-guide .otds-page-lead { max-width:850px; color:#53617c; font-size:17px; margin-bottom:24px; }
.otds-ui.otds-page-guide .otds-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0 0 22px; font-size:13px; color:#53617c; }
.otds-ui.otds-page-guide .otds-breadcrumbs a { color:#29418d; }
.otds-ui.otds-page-guide .otds-button-row { align-items:center; }
.otds-ui .otds-progress { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:0; list-style:none; margin:0 0 24px; }
.otds-ui .otds-progress li { display:flex; align-items:center; gap:10px; margin:0; padding:13px 15px; background:#f3f5fa; border:1px solid #dce2ee; border-radius:5px; color:#53617c; font-weight:600; font-size:13px; line-height:1.45; }
.otds-ui .otds-progress li > span { flex:0 0 26px; width:26px; height:26px; display:flex; align-items:center; justify-content:center; background:#fff; border:1px solid #dce2ee; border-radius:50%; color:#29418d; font-size:13px; }
.otds-ui .otds-progress .otds-step-current { color:#172441; border-color:#aebbdc; background:#edf1fc; }
.otds-ui .otds-progress .otds-step-current > span { background:#3c54a4; border-color:#3c54a4; color:#fff; }
.otds-ui .otds-campus-switch { margin:26px 0 0; border-top:1px solid #dce2ee; padding-top:10px; }
.otds-ui .otds-campus-switch summary { display:list-item; padding:12px 0; min-height:48px; font-weight:700; color:#29418d; }
.otds-ui .otds-campus-link-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:6px 0 12px; }
.otds-ui .otds-campus-link-grid a { padding:10px 14px; border:1px solid #dce2ee; border-radius:5px; min-height:46px; }
.otds-ui .otds-campus-link-grid a[aria-current] { background:#edf1fc; border-color:#3c54a4; font-weight:700; }
.otds-ui .otds-campus-registration { border-top:1px solid #dce2ee; padding-top:26px; margin-top:22px; scroll-margin-top:24px; }
.otds-ui .otds-campus-registration > summary { display:flex; align-items:center; justify-content:space-between; gap:18px; cursor:pointer; min-height:48px; padding:10px 0; color:#29418d; list-style:none; }
.otds-ui .otds-campus-registration > summary::-webkit-details-marker { display:none; }
.otds-ui .otds-campus-registration > summary::after { content:""; width:9px; height:9px; border-right:2px solid #3c54a4; border-bottom:2px solid #3c54a4; transform:rotate(45deg); margin-right:5px; }
.otds-ui .otds-campus-registration[open] > summary::after { transform:rotate(225deg); }
.otds-ui .otds-campus-registration h2 { display:inline; font-size:22px; margin:0; color:#29418d; }
.otds-ui .otds-campus-registration[open] > summary { margin-bottom:14px; }
.otds-ui .otds-campus-course-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.otds-ui .otds-campus-course-grid a { display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:58px; padding:12px 15px; border:1px solid #dce2ee; border-radius:5px; color:#29418d; font-weight:650; font-size:14px; line-height:1.45; text-decoration:none; }
.otds-ui .otds-campus-course-grid a:hover { background:#edf1fc; border-color:#3c54a4; }
.otds-ui .otds-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:30px; }
.otds-ui .otds-directory-card { display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:25px; border:1px solid #dce2ee; border-radius:6px; background:#f8faff; color:#172441; text-decoration:none; }
.otds-ui .otds-directory-card:hover { border-color:#3c54a4; background:#edf1fc; text-decoration:none; }
.otds-ui .otds-directory-card .otds-eyebrow { font-size:10px; margin:0; letter-spacing:.1em; }
.otds-ui .otds-directory-card h2 { font-size:24px; margin:0; line-height:1.3; }
.otds-ui .otds-directory-card p { color:#53617c; font-size:14px; margin:0; }
.otds-ui .otds-directory-cta { display:flex; align-items:center; justify-content:space-between; gap:20px; width:100%; margin-top:auto; padding-top:13px; color:#29418d; font-size:14px; font-weight:700; }
.otds-ui.otds-original-directory { border:1px solid #dce2ee; border-radius:6px; padding:12px 20px; }
.otds-ui.otds-original-directory > summary { padding:10px 0; font-size:14px; font-weight:650; color:#29418d; min-height:44px; }
.otds-original-content { min-width:0; }
body.otds-resource-page .otds-original-content,
body.otds-campus-page .otds-original-content { background:white; border:1px solid #dce2ee; border-radius:8px; padding:34px 38px; }
body.otds-resource-page .otds-original-content > :is(p,ul,ol,h2,h3,h4) { max-width:900px; }
body.otds-resource-page .otds-original-content h2 { font:750 27px/1.3 Raleway,Montserrat,sans-serif; border-top:1px solid #dce2ee; padding-top:26px; margin-top:32px; }
body.otds-campus-page .otds-original-content > p { color:#172441; line-height:1.9; }
body.otds-campus-page .otds-original-content span[style*="color"] { color:#29418d !important; font-weight:700; }
body.otds-campus-page .otds-original-content iframe[src*="maps"] { display:block; width:100%; height:420px; margin:25px 0; border-radius:6px; }
body.otds-campus-page .otds-original-content hr { border-color:#dce2ee; margin:28px 0; }
body.otds-course-page .otds-course-guide { padding:32px 36px; border-left:0; border-top:4px solid #3c54a4; border-radius:8px; background:white; }
body.otds-course-page .elementor-accordion .elementor-accordion-item { border:1px solid #dce2ee; border-radius:6px; overflow:hidden; margin-bottom:12px; background:#fff; }
body.otds-course-page .elementor-accordion .elementor-tab-title { color:#172441 !important; background:#fff; font:700 17px/1.5 Montserrat,"Segoe UI",sans-serif !important; padding:19px 23px; min-height:58px; }
body.otds-course-page .elementor-accordion .elementor-tab-title.elementor-active { background:#edf1fc; color:#29418d !important; }
body.otds-course-page .elementor-accordion .elementor-tab-title a { color:inherit !important; font:inherit !important; }
body.otds-course-page .elementor-accordion .elementor-tab-content { padding:25px; color:#172441; font:400 16px/1.75 Montserrat,"Segoe UI",sans-serif; border-top:1px solid #dce2ee; background:#fff; }
body.otds-course-page .elementor-accordion .elementor-accordion-icon { color:#3c54a4 !important; }
body.otds-course-page .elementor-accordion .elementor-accordion-icon svg { fill:#3c54a4 !important; }
body.otds-course-page .elementor-alert { border-color:#3c54a4; border-radius:6px; background:#edf1fc; color:#172441; }

/* Ninja Forms: the original fields, DOM order and interaction stay intact. */
body.otds-enhanced .nf-form-cont { color:#172441; font:400 16px/1.65 Montserrat,"Segoe UI",sans-serif; scroll-margin-top:24px; }
body.otds-interior .nf-form-cont { background:#fff; border:1px solid #dce2ee; border-radius:8px; padding:30px; margin:0 auto 28px; max-width:900px; box-sizing:border-box; }
body.otds-course-page .elementor-accordion .nf-form-cont { padding:24px; background:#f8faff; }
body.otds-enhanced .nf-form-cont * { box-sizing:border-box; }
body.otds-enhanced .nf-form-cont .nf-form-fields-required { color:#53617c; font-size:14px; margin:0 0 24px; }
body.otds-enhanced .nf-form-cont .nf-field-container { margin-bottom:24px; }
body.otds-enhanced .nf-form-cont .nf-field-label { margin-bottom:8px; padding:0; }
body.otds-enhanced .nf-form-cont .nf-field-label :is(label,.nf-label-span) { color:#172441; font-weight:650; font-size:15px; line-height:1.5; }
body.otds-enhanced .nf-form-cont .ninja-forms-req-symbol { color:#b31d29; }
body.otds-enhanced .nf-form-cont :is(input[type="text"],input[type="email"],input[type="tel"],input[type="url"],input[type="number"],input[type="date"],input[type="password"],select,textarea) { width:100%; max-width:100%; min-height:50px; padding:12px 14px; border:1px solid #aebbd0; border-radius:5px; background:#fff; color:#172441; font:400 16px/1.5 Montserrat,"Segoe UI",sans-serif; box-shadow:none; }
body.otds-enhanced .nf-form-cont textarea { min-height:140px; resize:vertical; }
body.otds-enhanced .nf-form-cont input::placeholder,
body.otds-enhanced .nf-form-cont textarea::placeholder { color:#62708a; opacity:1; }
body.otds-enhanced .nf-form-cont :is(input,select,textarea,button):focus-visible { outline:3px solid #3c54a4; outline-offset:3px; border-color:#3c54a4; }
body.otds-enhanced .nf-form-cont :is(input,select,textarea)[aria-invalid="true"] { border-color:#b31d29; background:#fffafa; }
body.otds-enhanced .nf-form-cont .nf-field-description { color:#53617c; font-size:14px; margin:8px 0; }
body.otds-enhanced .nf-form-cont :is(.list-radio-wrap,.list-checkbox-wrap) ul { padding:0; margin:0; list-style:none; }
body.otds-enhanced .nf-form-cont :is(.list-radio-wrap,.list-checkbox-wrap) li { display:flex; gap:12px; align-items:center; border:1px solid #dce2ee; border-radius:5px; background:#f8faff; min-height:50px; padding:12px 14px !important; margin:0 0 8px !important; }
body.otds-enhanced .nf-form-cont :is(.list-radio-wrap,.list-checkbox-wrap) li:has(input:checked) { border-color:#3c54a4; background:#edf1fc; }
body.otds-enhanced .nf-form-cont :is(.list-radio-wrap,.list-checkbox-wrap) li:focus-within { outline:3px solid #3c54a4; outline-offset:2px; }
body.otds-enhanced .nf-form-cont :is(.list-radio-wrap,.list-checkbox-wrap) li input { margin:0 !important; flex:0 0 20px; width:20px; height:20px; accent-color:#3c54a4; }
body.otds-enhanced .nf-form-cont :is(.list-radio-wrap,.list-checkbox-wrap) li label { flex:1; color:#172441; font-size:15px; font-weight:500; line-height:1.5; padding:0 !important; margin:0 !important; cursor:pointer; }
body.otds-enhanced .nf-form-cont .checkbox-wrap input[type="checkbox"] { width:20px; height:20px; margin:0; accent-color:#3c54a4; }
body.otds-enhanced .nf-form-cont .html-container { padding:18px 20px; background:#f3f5fa; border-left:3px solid #3c54a4; border-radius:0 5px 5px 0; color:#172441; font-size:15px; line-height:1.7; }
body.otds-enhanced .nf-form-cont .html-container p { margin:0 0 12px; }
body.otds-enhanced .nf-form-cont .html-container p:last-child { margin-bottom:0; }
body.otds-enhanced .nf-form-cont .html-container :is(span,strong,b) { color:inherit; }
body.otds-enhanced .nf-form-cont .hr-container hr { border-color:#dce2ee; margin:28px 0; }
body.otds-enhanced .nf-form-cont .nf-error-msg { color:#991724; background:#fff2f3; border-left:3px solid #b31d29; padding:9px 12px; margin-top:10px; font-size:14px; line-height:1.5; }
body.otds-enhanced .nf-form-cont .nf-error-msg:empty { display:none; }
body.otds-enhanced .nf-form-cont .nf-response-msg:not(:empty) { padding:20px; background:#edf7f0; color:#1c5130; border:1px solid #95bda3; border-radius:5px; }
body.otds-enhanced .nf-form-cont .submit-wrap :is(input,button) { background:#c8232b; border:1px solid #c8232b; color:#fff; font:650 16px/1.5 Montserrat,"Segoe UI",sans-serif; padding:14px 24px; min-height:52px; height:auto; max-width:100%; white-space:normal; border-radius:5px; box-shadow:none; cursor:pointer; }
body.otds-enhanced .nf-form-cont .submit-wrap :is(input,button):hover { background:#aa1b24; border-color:#aa1b24; }
body.otds-enhanced .nf-form-cont .submit-wrap :is(input,button):disabled { opacity:.6; cursor:wait; }
body.otds-enhanced .nf-form-cont .file_upload-container .nf-field-element :is(button,input[type="button"]) { background:#edf1fc; color:#29418d; border:1px solid #aebbdc; border-radius:5px; padding:12px 18px; min-height:48px; font-weight:650; max-width:100%; white-space:normal; }
body.otds-enhanced .nf-form-cont .file_upload-container .nf-field-element input[type="file"] { max-width:100%; }
body.otds-registration-page .otds-original-content > p:first-child { color:#172441; font-weight:650; }
body.otds-registration-page .otds-original-content > p:first-child :is(span,strong) { background:transparent !important; color:#172441 !important; }
body.otds-contact-page .otds-original-content { max-width:900px; margin:auto; }
body.otds-registration-page .otds-original-content > p:has(> img[src$="/fill-form.jpg"]:only-child) { display:none; }

/* Native WooCommerce and PayPal controls retain their IDs, names and hooks. */
body.otds-commerce-page :is(.woocommerce,#zak-primary) { color:#172441; font:400 16px/1.65 Montserrat,"Segoe UI",sans-serif; }
body.otds-commerce-page :is(.woocommerce-info,.woocommerce-message,.woocommerce-error) { background:#fff; border-radius:6px; border-top-color:#3c54a4; color:#172441; font-size:15px; box-shadow:none; }
body.otds-commerce-page .woocommerce-error { border-top-color:#b31d29; }
body.otds-commerce-page .woocommerce-error::before { color:#b31d29; }
body.otds-commerce-page .woocommerce-info::before,
body.otds-commerce-page .woocommerce-message::before { color:#3c54a4; }
body.otds-commerce-page .woocommerce-breadcrumb { color:#53617c; font-size:13px; margin-bottom:28px; }
body.otds-commerce-page .woocommerce-breadcrumb a { color:#29418d; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .summary { background:#fff; border:1px solid #dce2ee; border-radius:8px; padding:30px; box-sizing:border-box; }
.otds-ui.otds-payment-help { background:transparent; }
.otds-ui.otds-payment-help h2 { font-size:29px; margin-bottom:14px; }
.otds-ui.otds-payment-help p { color:#53617c; font-size:15px; }
.otds-ui.otds-payment-help .otds-eyebrow { color:#3c54a4; font-size:11px; }
.otds-ui.otds-payment-help .otds-small { padding:14px; background:#f3f5fa; border-radius:5px; font-size:13px; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .woocommerce-product-gallery { background:#fff; border:1px solid #dce2ee; border-radius:8px; padding:15px; box-sizing:border-box; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product :is(.price,.woocommerce-variation-price) { color:#172441; font-size:30px; font-weight:750; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .variations { margin:24px 0; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .variations th { vertical-align:middle; padding:12px 16px 12px 0; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .variations td { padding:12px 0; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) :is(select,input.input-text,textarea.input-text) { color:#172441; background:#fff; border:1px solid #aebbd0; border-radius:5px; font:400 16px/1.5 Montserrat,"Segoe UI",sans-serif; min-height:48px; padding:11px 13px; max-width:100%; box-shadow:none; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) .quantity input.qty { padding:8px; width:70px; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) :is(a.button,button.button,input.button) { min-height:48px; padding:13px 20px; background:#3c54a4; border:1px solid #3c54a4; color:#fff; border-radius:5px; font:650 15px/1.4 Montserrat,"Segoe UI",sans-serif; text-decoration:none; white-space:normal; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) :is(a.button,button.button,input.button):hover { color:#fff; background:#29418d; border-color:#29418d; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) :is(a.button.alt,button.button.alt,input.button.alt) { background:#c8232b; border-color:#c8232b; color:#fff; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) :is(a.button.alt,button.button.alt,input.button.alt):hover { background:#aa1b24; border-color:#aa1b24; color:#fff; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) :is(button.button,input.button):disabled { opacity:.6; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) :is(a,button,input,select,textarea):focus-visible { outline:3px solid #3c54a4; outline-offset:4px; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) .woocommerce-tabs ul.tabs { padding-left:0; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) .woocommerce-tabs .panel { background:#fff; border:1px solid #dce2ee; border-radius:6px; padding:25px; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) .woocommerce-tabs .panel h2 { color:#172441; font-size:26px; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) table.shop_table { background:white; border:1px solid #dce2ee; border-radius:6px; border-collapse:separate; color:#172441; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) table.shop_table :is(td,th) { padding:16px; border-color:#dce2ee; line-height:1.5; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) table.shop_table thead { background:#edf1fc; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) table.shop_table th { font-size:14px; font-weight:700; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) .cart_totals { background:white; border:1px solid #dce2ee; border-radius:8px; padding:25px; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) .cart_totals h2 { font-size:27px; color:#172441; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) .cart_totals table { border:0; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) form .form-row label { color:#172441; font-size:15px; font-weight:650; line-height:1.6; margin-bottom:7px; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) form .form-row .required { color:#b31d29; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) form .form-row { margin-bottom:16px; }
body.otds-commerce-page .woocommerce-checkout .col2-set { background:#fff; border:1px solid #dce2ee; border-radius:8px; padding:28px; box-sizing:border-box; }
body.otds-commerce-page .woocommerce-checkout :is(h3,#order_review_heading) { color:#172441; font-size:25px; line-height:1.3; margin-bottom:22px; }
body.otds-commerce-page .woocommerce-checkout #payment { background:#fff; border:1px solid #dce2ee; border-radius:8px; }
body.otds-commerce-page .woocommerce-checkout #payment ul.payment_methods { border-color:#dce2ee; padding:22px; }
body.otds-commerce-page .woocommerce-checkout #payment .payment_box { background:#edf1fc; color:#172441; border-radius:5px; font-size:14px; }
body.otds-commerce-page .woocommerce-checkout #payment .payment_box::before { border-bottom-color:#edf1fc; }
body.otds-commerce-page .woocommerce-checkout #payment .place-order { padding:22px; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) ul.products li.product { padding:18px; border:1px solid #dce2ee; border-radius:6px; background:#fff; box-sizing:border-box; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) ul.products li.product .woocommerce-loop-product__title { color:#172441; font-size:21px; line-height:1.3; }
body.otds-commerce-page :is(.woocommerce,#zak-primary) ul.products li.product .price { color:#172441; font-size:20px; }
body.otds-commerce-page .select2-container .select2-selection--single { border:1px solid #aebbd0; border-radius:5px; min-height:48px; height:auto; padding:8px; }
body.otds-commerce-page .select2-container .select2-selection__arrow { top:12px; }
@media(max-width:1000px) {
  .otds-ui .otds-directory-grid,.otds-ui .otds-campus-course-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:768px) {
  body.otds-interior #zak-content { padding:28px 0 44px; }
  body.otds-interior #zak-content > .zak-container,
  body.otds-interior .zak-page-header .zak-container { width:calc(100% - 32px); }
  .otds-ui.otds-page-guide { padding:24px; }
  body.otds-course-page .otds-course-guide { padding:24px; }
  .otds-ui .otds-progress { grid-template-columns:1fr; gap:8px; }
  .otds-ui .otds-progress li { padding:10px 13px; }
  body.otds-resource-page .otds-original-content,
  body.otds-campus-page .otds-original-content { padding:24px; }
  body.otds-interior .nf-form-cont { padding:24px; }
  body.otds-course-page .elementor-accordion .elementor-tab-content { padding:18px; }
  body.otds-course-page .elementor-accordion .nf-form-cont { padding:18px; }
  body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .summary { padding:24px; }
  body.otds-commerce-page .woocommerce-checkout .col2-set { padding:20px; }
  body.otds-commerce-page :is(.woocommerce,#zak-primary) table.shop_table :is(td,th) { padding:12px; }
  body.otds-commerce-page :is(.woocommerce,#zak-primary) .cart_totals { padding:20px; }
}
@media(max-width:520px) {
  .otds-ui .otds-directory-grid,.otds-ui .otds-campus-course-grid,.otds-ui .otds-campus-link-grid { grid-template-columns:1fr; }
  .otds-ui.otds-page-guide { padding:22px 19px; }
  .otds-ui .otds-directory-card { padding:22px; }
  .otds-ui.otds-page-guide h1 { font-size:29px; }
  body.otds-interior .nf-form-cont { padding:20px 16px; }
  body.otds-enhanced .nf-form-cont .nf-row { display:block; }
  body.otds-enhanced .nf-form-cont .nf-cell { width:100% !important; }
  body.otds-enhanced .nf-form-cont .html-container { padding:15px; }
  body.otds-enhanced .nf-form-cont .submit-wrap :is(input,button) { width:100%; padding:14px 15px; }
  body.otds-resource-page .otds-original-content,
  body.otds-campus-page .otds-original-content { padding:22px 19px; }
  body.otds-campus-page .otds-original-content iframe[src*="maps"] { height:300px; }
  body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .variations th,
  body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .variations td { display:block; width:100%; padding:8px 0; }
  body.otds-commerce-page :is(.woocommerce,#zak-primary) div.product .variations select { width:100%; }
  body.otds-commerce-page :is(.woocommerce,#zak-primary) .coupon { display:flex; flex-wrap:wrap; gap:8px; }
}
@media(prefers-reduced-motion:reduce) {
  body.otds-interior { scroll-behavior:auto; }
}

/* Single-product templates have no sidebar in the current school theme. */
body.otds-commerce-page.single-product #zak-content > .zak-container > .zak-row { display:block; }
body.otds-commerce-page.single-product :is(#primary,#zak-primary) { max-width:none; }
.otds-ui.otds-payment-help h2 { color:#172441; }

/* Keep course payment screens focused on their native controls. The original
   sidebar widget configuration remains available in WordPress. */
body.otds-commerce-page #zak-content > .zak-container > .zak-row { display:block; }
body.otds-commerce-page :is(#primary,#zak-primary) { max-width:none; }
body.otds-commerce-page #zak-secondary { display:none; }
body.otds-commerce-page .woocommerce-Price-amount { white-space:nowrap; }
body.otds-checkout-page .woocommerce-checkout-review-order-table .product-total { min-width:115px; }
body.otds-checkout-page .woocommerce-checkout-review-order-table .product-total { text-align:right; }
body.otds-cart-page .otds-original-content > .woocommerce:has(.woocommerce-cart-form) { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr); gap:28px; align-items:start; }
body.otds-cart-page .woocommerce .woocommerce-notices-wrapper { grid-column:1 / -1; }
body.otds-cart-page .woocommerce .woocommerce-cart-form,
body.otds-cart-page .woocommerce .cart-collaterals,
body.otds-cart-page .woocommerce .cart_totals { width:100%; float:none; margin:0; }
body.otds-cart-page .woocommerce table.cart .product-thumbnail img { width:70px; min-width:50px; }
body.otds-cart-page .woocommerce table.cart .product-remove { padding:8px; }
body.otds-cart-page .woocommerce a.remove { display:flex; align-items:center; justify-content:center; width:38px; height:38px; font-size:24px; }
body.otds-cart-page .woocommerce .wc-proceed-to-checkout { padding-bottom:0; }
@media(max-width:1000px) {
  body.otds-cart-page .otds-original-content > .woocommerce:has(.woocommerce-cart-form) { grid-template-columns:1fr; }
}

/* Registration shortcuts and section headings add no form controls. */
.otds-ui .otds-form-jumps { margin-top:26px; padding-top:22px; border-top:1px solid #dce2ee; }
.otds-ui .otds-form-jumps[hidden] { display:none; }
.otds-ui .otds-form-jumps > p { color:#53617c; font-size:13px; font-weight:650; margin:0 0 12px; }
.otds-ui .otds-form-jump-links { display:flex; flex-wrap:wrap; gap:8px; }
.otds-ui .otds-form-jump-links a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 14px; border:1px solid #c3cde0; border-radius:5px; color:#29418d; background:#f8faff; font-size:13px; font-weight:650; line-height:1.4; text-decoration:none; }
.otds-ui .otds-form-jump-links a:hover { color:#172441; background:#edf1fc; border-color:#3c54a4; }
.otds-ui .otds-form-jump-links a:focus-visible { outline:3px solid #3c54a4; outline-offset:3px; }
body.otds-registration-page .nf-form-cont .otds-form-section-heading { margin:34px 0 22px; padding-top:24px; border-top:1px solid #dce2ee; color:#172441; font:750 23px/1.35 Raleway,Montserrat,sans-serif; scroll-margin-top:28px; }
body.otds-registration-page .nf-form-cont .otds-form-section-heading:focus { outline:3px solid #3c54a4; outline-offset:6px; border-radius:2px; }
body.otds-registration-page #otds-registration-form { scroll-margin-top:26px; }
.otds-ui .otds-payment-route { display:flex; flex-wrap:wrap; gap:8px 12px; padding:0; margin:0 0 22px; list-style:none; color:#53617c; font-size:12px; font-weight:650; }
.otds-ui .otds-payment-route li { margin:0; display:flex; align-items:center; gap:12px; }
.otds-ui .otds-payment-route li + li::before { content:"→"; color:#77839a; }
.otds-ui .otds-payment-route [aria-current="step"] { color:#29418d; }
.otds-ui.otds-payment-help .otds-button-row { margin-top:16px; gap:12px; }
.otds-ui .otds-payment-support { margin-top:22px; padding-top:18px; border-top:1px solid #dce2ee; color:#53617c; font-size:13px; line-height:1.7; }
.otds-ui .otds-payment-support a { font-weight:650; color:#29418d; }
@media(max-width:520px) {
  .otds-ui .otds-form-jump-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .otds-ui .otds-form-jump-links a { padding:12px 10px; text-align:center; }
  .otds-ui .otds-form-jump-links a:last-child:nth-child(odd) { grid-column:1 / -1; }
  body.otds-registration-page .nf-form-cont .otds-form-section-heading { font-size:21px; margin-top:30px; }
}


