/* Final layout layer for course pricing and server-backed forms. */
[hidden]{display:none!important}
.request-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.request-consent,.gift-form label.request-consent{display:flex;align-items:flex-start;gap:12px;margin:20px 0;font-size:14px;line-height:1.6;text-align:left}
.request-consent input[type=checkbox],.gift-form .request-consent input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:3px 0 0;padding:0;accent-color:#506640;appearance:auto}
.contact-reviewed .request-consent input[type=checkbox]{min-height:20px}
.gift-form .request-consent span{color:#3e4a32}
.request-consent a{text-decoration:underline;text-underline-offset:3px}
#mail-status{overflow-wrap:anywhere;line-height:1.6;margin-top:16px}
#mail-status[data-state=success]{padding:16px;border:1px solid currentColor;border-radius:6px}
button:disabled{opacity:.65;cursor:wait!important}
.reference-course .payment-options{align-items:stretch;gap:24px}
.reference-course .payment-options article{display:flex;flex-direction:column;min-height:0;padding:32px 24px;border:1px solid #ad8b46;background:#fcfaf2;gap:0}
.reference-course .payment-options article h3{font-size:clamp(25px,2.7vw,34px);line-height:1.2;margin:0 0 24px;min-height:0}
.reference-course .payment-options .plan-price{font-size:clamp(32px,3.4vw,46px);line-height:1.2;white-space:nowrap;margin:0 0 20px;color:#795519}
.reference-course .payment-options article>p:not(.plan-price){font-size:16px;line-height:1.65;margin:0 0 16px;color:#35402c}
.reference-course .payment-options .course-button{position:static;top:auto;transform:none;box-sizing:border-box;margin-top:auto;margin-bottom:0;min-height:52px;width:100%;padding:15px 18px;font-size:16px;line-height:1.35;background:#866121;color:#fff;text-align:center}
.reference-course .course-payment-plan{margin-top:28px}
.reference-course .course-register .course-payment .payment-note{color:#39472f;text-align:left;line-height:1.6}
.reference-course .course-payment-wrapper{background:#f4f1e6!important;color:#303c28!important;padding:36px!important}
.reference-course .course-payment-wrapper>h3,.reference-course .course-payment-wrapper>p,.reference-course .course-payment-wrapper h3{color:#303c28}
.currency-note{margin:28px 0;padding:24px;border:1px solid #bec7b0;border-radius:8px;text-align:left;background:#eaf0e1}
.reference-course .currency-note h3,.reference-course .course-payment h3{font-size:26px;margin:0 0 12px}
.currency-note p{font-size:17px!important;line-height:1.7}
.reference-course .course-payment{text-align:left}
.booking-steps{padding-left:24px;text-align:left;font-size:17px;line-height:1.7}
.booking-steps li{padding-left:6px;margin:12px 0}
.course-syllabus{margin-bottom:64px}
.course-syllabus ol{list-style:none;counter-reset:step;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0;margin:32px 0}
.course-syllabus li{counter-increment:step;border-top:1px solid #b4bba7;padding:24px 0;min-width:0}
.course-syllabus li:before{content:'0' counter(step);font:24px Georgia,serif;color:#82622c}
.reference-course .course-syllabus h3{font:400 27px/1.3 Georgia,serif;color:#33432b;margin:12px 0}
.course-syllabus p{font-size:17px;line-height:1.7}
.gift-form select{width:100%;box-sizing:border-box;min-height:48px;padding:12px;margin:0 0 20px;background:white;border:1px solid #bfc7b2;border-radius:5px;color:#283021;font:16px/1.5 system-ui}
.gift-form input[type=radio]{appearance:auto;width:20px;height:20px;flex:0 0 20px;padding:0;margin:2px 0 0;position:static;opacity:1;accent-color:#506640}
.gift-form label.gift-radio{align-items:flex-start;gap:12px}
.gift-radio strong{font-weight:600;color:#303c28}
.gift-actions button.course-button{background:#866121;color:#fff;border:0;border-radius:999px;padding:16px 24px;text-decoration:none;min-height:50px}
.gift-form>.course-button{background:#866121;color:#fff;border:0;font:600 17px/1.4 system-ui;padding:16px 24px}
.gift-review:focus{outline:2px solid #866121;outline-offset:4px}
.gift-review dl{font-size:16px}
.gift-review #order-receipt{overflow-wrap:anywhere}
.gift-review #order-status[data-state=error]{color:#8b2c20}
.gift-summary .gift-total strong{font-size:clamp(28px,3vw,40px)}
.information-page{max-width:780px!important;text-align:left}
.information-page h1{max-width:none}
.information-page h2{margin:36px 0 16px}
.information-page p{font-size:17px;line-height:1.8;overflow-wrap:anywhere}
.information-page a:not(.course-button){text-decoration:underline;text-underline-offset:4px}
.cohort-note{font-size:14px;line-height:1.6;color:#53673e}
:where(input,select,textarea,button,a):focus-visible{outline:2px solid #a87d31;outline-offset:4px}
@media(max-width:760px){
 .reference-course .course-inner{width:calc(100% - 40px);max-width:640px}
 .reference-course .payment-options{display:grid;grid-template-columns:1fr;gap:20px}
 .reference-course .course-payment-wrapper{padding:24px 18px!important}
 .reference-course .payment-options article{padding:28px 20px}
 .reference-course .payment-options .plan-price{font-size:36px}
 .reference-course .payment-options article h3{font-size:28px}
 .course-syllabus ol{grid-template-columns:1fr;gap:0}
 .reference-course .course-syllabus h3{font-size:26px}
 .gift-checkout .course-inner{width:calc(100% - 32px)}
 .gift-form,.gift-summary,.gift-review{padding:24px 20px}
 .gift-summary ul{line-height:1.8}
 .gift-summary li{margin:7px 0}
 .currency-note{padding:20px}
 .gift-review dl{grid-template-columns:1fr}
 .gift-review dd{margin-bottom:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*{scroll-behavior:auto!important}}

.gift-form>.checkout-fields{border:0;padding:0;margin:0;min-width:0}
.gift-form .checkout-fields>.course-button{width:100%;background:#866121;color:#fff;border:0;font:600 17px/1.4 system-ui;padding:16px 24px;cursor:pointer}

.program-olive .cohort-note{color:#edf0df}
.reference-course .payment-routes{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0 12px;text-align:left}
.reference-course .payment-routes .payment-route{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:22px;border:1px solid #acb59c;border-radius:8px;background:#fffdf7;color:#34402c;text-decoration:none;white-space:normal}
.reference-course .payment-routes .payment-route:hover{background:#eaf0e1;border-color:#687c50}
.payment-route>span{font-size:14px;line-height:1.5}
.payment-route strong{font:400 24px/1.3 Georgia,serif}
.payment-route small{font-size:14px;line-height:1.6;color:#536247}
.reference-course .bank-country-note{font-size:14px;line-height:1.7;text-align:left;color:#4b5840;margin:0 0 24px}
@media(max-width:760px){.reference-course .payment-routes{grid-template-columns:1fr}.reference-course .payment-routes .payment-route{padding:20px}}
