
/* October 29 responsive layout and motion review */
.planner-page{padding-bottom:32px}
.planner-after{border-bottom:1px solid var(--line);padding-bottom:32px}
.enrol-planning-help a{color:#245140;font-weight:600;text-decoration:underline;text-underline-offset:4px}
html[data-theme="dark"] .enrol-planning-help a{color:#b9ddc8}
.enrol-form input:not([type=checkbox]),.enrol-form select,.enrol-form textarea,.planner-form input,.planner-form select{font:400 16px/1.5 Arial,Helvetica,sans-serif;color:var(--ink);opacity:1}
.enrol-form input::placeholder,.enrol-form textarea::placeholder,.planner-form input::placeholder{color:#596862;opacity:1;font-weight:400}
html[data-theme="dark"] :is(.enrol-form,.planner-form) :is(input,textarea)::placeholder{color:#afc0b8;opacity:1}
:is(.enrol-form,.planner-form) select:disabled{opacity:1;color:var(--muted)}
/* Prevent two entrance animations from acting on the same content. */
.planner-intro,.planner-layout,.hero-copy,.hero-art,.enrol-drop-in{animation:none!important}
.directory-intro > .reveal-managed{animation:none!important}
.journey{position:relative;border-radius:32px 32px 0 0;padding-top:72px;isolation:isolate}
.journey::before{content:"";position:absolute;top:22px;left:50%;width:42px;height:3px;border-radius:3px;background:var(--gold);opacity:.7;transform:translateX(-50%);pointer-events:none}
@media(max-width:700px){.journey{border-radius:28px 28px 0 0;padding-top:64px}.planner-after{padding-bottom:28px}.planner-page{padding-bottom:24px}}
/* Tap feedback is available on touch as well as hover-capable devices. */
:where(button,a.button,.planner-whatsapp,.academy-social-links a,.subject-nav button,.guide-topics a){transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,translate .16s ease}
:where(button,a.button,.planner-whatsapp,.academy-social-links a,.subject-nav button,.guide-topics a):active{translate:0 1px}
@media(hover:hover){:where(button,a.button,.planner-whatsapp,.academy-social-links a,.subject-nav button,.guide-topics a):hover{box-shadow:0 3px 10px #15382b14}}
/* Keep payment SVG animations working in Safari with explicit durations. */
.currency-running .currency-progress-ring{animation-duration:9s;animation-play-state:running}
.currency-running .tuition-packet{animation-play-state:running}
@media(prefers-reduced-motion:reduce){:where(button,a.button,.planner-whatsapp,.academy-social-links a,.subject-nav button,.guide-topics a){transition:none}:where(button,a.button):active{translate:none}}

/* Identical journey shape regardless of the preceding section. */
section.journey{margin-top:0;border-radius:32px 32px 0 0;padding-top:72px}
section.journey::before{top:22px;width:42px}
@media(max-width:700px){section.journey{border-radius:28px 28px 0 0;padding-top:64px}section.journey::before{top:20px;width:36px}}
