:root{--pre-ink:#183c31;--pre-muted:#6b7c74;--pre-green:#88c394;--pre-deep:#286d54;--pre-cream:#fffaf2;--pre-gold:#efc15f;--pre-line:rgba(40,109,84,.15);--pre-shadow:0 24px 65px rgba(31,74,56,.13)}
.prepath-page{min-height:calc(100svh - 80px);padding:clamp(12px,2vw,24px);color:var(--pre-ink);background:radial-gradient(circle at 9% 8%,rgba(136,195,148,.2),transparent 28%),radial-gradient(circle at 93% 90%,rgba(239,193,95,.17),transparent 25%),#f8f3e9}
.prepath-page *{box-sizing:border-box}
.prepath-shell{width:min(1080px,100%);min-height:min(690px,calc(100svh - 108px));margin:auto;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:clip;border:1px solid var(--pre-line);border-radius:32px;background:rgba(255,255,255,.96);box-shadow:var(--pre-shadow);position:relative}
.prepath-header{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:13px 20px;border-bottom:1px solid var(--pre-line);background:linear-gradient(100deg,#edf7ee,#fffaf0);position:relative;z-index:2}
.prepath-brand{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:#fff;box-shadow:0 8px 20px rgba(40,109,84,.12)}.prepath-brand img{width:58px;height:58px;object-fit:contain}
.prepath-header__copy p,.prepath-header__copy h1{margin:0}.prepath-header__copy p,.prepath-kicker{color:var(--pre-deep);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.prepath-header__copy h1{color:var(--pre-ink);font-size:clamp(1.25rem,2.3vw,2rem);line-height:1.12}
.prepath-map{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 17px;border:1px solid var(--pre-line);border-radius:999px;color:var(--pre-deep);background:#fff;font-weight:800;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.prepath-map:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(40,109,84,.12)}
.prepath-progress{padding:12px 24px 0}.prepath-progress__meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.78rem}.prepath-progress__meta span{color:var(--pre-muted)}.prepath-progress__track{height:7px;overflow:hidden;border-radius:999px;background:#e9eee9}.prepath-progress__track span{display:block;width:25%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pre-green),var(--pre-deep),var(--pre-green));background-size:200% 100%;transition:width .42s cubic-bezier(.22,1,.36,1);animation:preProgress 3s linear infinite}
.prepath-form{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;padding:0 24px 18px;position:relative;z-index:1}.prepath-stage{min-height:0;overflow:auto;padding:clamp(20px,3vw,38px) clamp(2px,2vw,24px) 18px;animation:preStageIn .42s cubic-bezier(.22,1,.36,1) both}.prepath-stage[hidden]{display:none}.prepath-stage__intro{text-align:center;max-width:760px;margin:0 auto 22px}.prepath-stage__intro p,.prepath-stage__intro h2{margin:0}.prepath-stage__intro h2{margin-top:5px;font-size:clamp(1.65rem,3.4vw,2.55rem);line-height:1.08}.prepath-stage__intro>span{display:block;max-width:680px;margin:9px auto 0;color:var(--pre-muted);line-height:1.5}
.prepath-facts{display:grid;grid-template-columns:.7fr .8fr 1.5fr;gap:14px;max-width:930px;margin:32px auto 0}.prepath-facts article,.prepath-finance>article{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid var(--pre-line);border-radius:22px;background:#f8fbf7;transition:transform .22s ease,box-shadow .22s ease}.prepath-facts i,.prepath-finance>article>i{width:46px;height:46px;display:grid;place-items:center;flex:0 0 auto;border-radius:15px;background:#e5f2e6;color:var(--pre-deep)}.prepath-facts small,.prepath-facts strong,.prepath-finance b,.prepath-finance small{display:block}.prepath-facts small,.prepath-finance small{color:var(--pre-muted)}.prepath-stage__note{display:flex;align-items:center;gap:12px;max-width:800px;margin:18px auto 0;padding:15px 18px;border-radius:18px;background:#fff6dc;color:#69541d;line-height:1.45}
.prepath-choice,.prepath-options{max-width:1000px;margin:0 auto;border:0;padding:0}.prepath-choice legend,.prepath-options legend{padding:0 0 10px;font-weight:800}.prepath-choice__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.prepath-choice label,.prepath-options label{cursor:pointer}.prepath-choice input,.prepath-options input{position:absolute;opacity:0;pointer-events:none}.prepath-choice label>span{min-height:142px;display:grid;place-items:center;align-content:center;gap:4px;padding:16px;border:2px solid transparent;border-radius:22px;background:#f5f8f4;text-align:center;transition:.2s ease}.prepath-choice label>span i{font-size:1.35rem;color:var(--pre-deep)}.prepath-choice label>span small{color:var(--pre-muted)}.prepath-choice label>span strong{margin-top:4px;color:var(--pre-deep)}.prepath-choice input:checked+span{border-color:var(--pre-green);background:#eaf6eb;box-shadow:0 10px 25px rgba(40,109,84,.12);transform:translateY(-2px);animation:preSelect .28s ease}.prepath-choice.is-invalid{padding:10px;border:1px solid #c7614e;border-radius:24px}
.prepath-options{margin-top:18px}.prepath-options>div{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.prepath-options label>span{min-height:60px;display:flex;flex-direction:column;justify-content:center;padding:11px 16px 11px 48px;position:relative;border:1px solid var(--pre-line);border-radius:16px;background:#fff}.prepath-options label>span:before{content:"";position:absolute;left:16px;width:20px;height:20px;border:2px solid #a9b8af;border-radius:6px}.prepath-options input:checked+span{border-color:var(--pre-green);background:#eef8ef}.prepath-options input:checked+span:before{content:"✓";display:grid;place-items:center;border-color:var(--pre-deep);background:var(--pre-deep);color:#fff;font-weight:800}.prepath-options b,.prepath-options small{display:block}.prepath-options small{color:var(--pre-muted)}.prepath-options__family{grid-column:1/-1}.prepath-options__family>span{background:#fff8e7!important}
.prepath-finance{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:12px;max-width:1000px;margin:auto}.prepath-finance__annual{display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:center;background:linear-gradient(135deg,#286d54,#548a65)!important;color:#fff;border:0!important}.prepath-finance__annual>span{font-weight:700}.prepath-finance__annual strong{display:block;margin:2px 0;font-size:2rem;color:#ffdc82}.prepath-documents{max-width:1000px;margin:14px auto 0;padding:17px 20px;border:1px solid var(--pre-line);border-radius:20px}.prepath-documents h3{margin:0 0 10px}.prepath-documents>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.prepath-documents span{padding:8px 10px;border-radius:12px;background:#f4f8f3;font-size:.88rem}.prepath-documents i{margin-right:6px;color:var(--pre-deep)}.prepath-legal{display:flex;gap:8px;max-width:1000px;margin:12px auto 0;color:var(--pre-muted);font-size:.85rem;line-height:1.45}
.prepath-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:1000px;margin:auto}.prepath-summary>div{padding:15px;border-radius:17px;background:#f3f8f3}.prepath-summary span,.prepath-summary strong{display:block}.prepath-summary span{margin-bottom:4px;color:var(--pre-muted);font-size:.78rem}.prepath-acknowledgement{display:flex;gap:12px;max-width:1000px;margin:14px auto;padding:14px;border:1px solid var(--pre-line);border-radius:17px;background:#fff;cursor:pointer}.prepath-acknowledgement input{width:22px;height:22px;flex:0 0 auto;accent-color:var(--pre-deep)}.prepath-acknowledgement strong,.prepath-acknowledgement small{display:block}.prepath-acknowledgement small{margin-top:3px;color:var(--pre-muted)}.prepath-destinations{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:1000px;margin:auto}.prepath-destination{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border:0;border-radius:20px;text-align:left;cursor:pointer}.prepath-destination>span{display:grid;grid-template-columns:auto 1fr;column-gap:11px}.prepath-destination>span>i{grid-row:1/3;width:38px;height:38px;display:grid;place-items:center;border-radius:12px}.prepath-destination b,.prepath-destination small{display:block}.prepath-destination small{opacity:.78}.prepath-destination--primary{background:var(--pre-deep);color:#fff}.prepath-destination--primary>span>i{background:rgba(255,255,255,.14)}.prepath-destination--visit{background:#f5c85f;color:#493608}.prepath-destination--visit>span>i{background:rgba(255,255,255,.35)}
.prepath-error{max-width:1000px;margin:10px auto 0;padding:10px 13px;border-radius:12px;background:#fae6e1;color:#973b2d;font-weight:700}.prepath-navigation{display:flex;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--pre-line);background:transparent!important;color:inherit!important}.prepath-navigation button{min-height:48px;padding:0 20px;border-radius:999px;font-weight:800;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.prepath-navigation button:hover{transform:translateY(-2px)}.prepath-back{border:1px solid var(--pre-line);background:#fff;color:var(--pre-deep)}.prepath-next{margin-left:auto;border:0;background:var(--pre-deep);color:#fff;box-shadow:0 10px 24px rgba(40,109,84,.2)}.prepath-next i,.prepath-back i{margin:0 5px}
@keyframes preStageIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}@keyframes preCardIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes preProgress{to{background-position:-200% 0}}@keyframes preSelect{50%{transform:translateY(-4px) scale(1.015)}to{transform:translateY(-2px) scale(1)}}
@media(max-width:720px){.prepath-page{min-height:calc(100svh - 68px);padding:6px}.prepath-shell{min-height:calc(100svh - 76px);border-radius:22px}.prepath-header{grid-template-columns:1fr auto;gap:10px;padding:10px 12px}.prepath-header__copy p{display:none}.prepath-header__copy h1{font-size:1.08rem}.prepath-map{width:43px;height:43px;min-height:43px;padding:0;justify-content:center}.prepath-map span{display:none}.prepath-progress{padding:9px 14px 0}.prepath-progress__meta{font-size:.7rem}.prepath-form{padding:0 12px 10px}.prepath-stage{padding:15px 1px 10px}.prepath-stage__intro{margin-bottom:14px}.prepath-stage__intro h2{font-size:1.5rem}.prepath-stage__intro>span{font-size:.86rem}.prepath-facts{grid-template-columns:1fr;gap:8px;margin-top:18px}.prepath-facts article{padding:12px 14px}.prepath-facts i{width:38px;height:38px}.prepath-choice__grid{grid-template-columns:1fr 1fr;gap:8px}.prepath-choice label>span{min-height:105px;padding:10px}.prepath-choice label:last-child{grid-column:1/-1}.prepath-options{margin-top:11px}.prepath-options>div{grid-template-columns:1fr;gap:6px}.prepath-options label>span{min-height:52px;padding-top:7px;padding-bottom:7px}.prepath-options__family{grid-column:auto}.prepath-finance{grid-template-columns:1fr;gap:7px}.prepath-finance>article{padding:12px 14px}.prepath-finance__annual strong{font-size:1.7rem}.prepath-documents{margin-top:9px;padding:12px}.prepath-documents>div{grid-template-columns:1fr 1fr;gap:5px}.prepath-documents span{padding:6px 7px;font-size:.72rem}.prepath-legal{font-size:.74rem;margin-top:8px}.prepath-summary{grid-template-columns:1fr;gap:6px}.prepath-summary>div{padding:10px 12px}.prepath-acknowledgement{margin:9px auto;padding:11px;font-size:.82rem}.prepath-destinations{grid-template-columns:1fr;gap:8px}.prepath-destination{min-height:70px;padding:10px 13px}.prepath-navigation{padding-top:8px}.prepath-navigation button{min-height:44px;padding:0 16px}.prepath-stage[data-prepath-stage="4"] .prepath-stage__intro{margin-bottom:9px}}
@media(max-width:380px){.prepath-header__copy h1{font-size:.9rem}.prepath-stage__intro>span{font-size:.8rem}.prepath-choice label>span strong{font-size:.78rem}.prepath-options small{font-size:.7rem}.prepath-documents>div{grid-template-columns:1fr}.prepath-destination small{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.prepath-stage{animation:none}.prepath-progress__track span,.prepath-choice input:checked+span{transition:none}}

.prepath-shell:before,.prepath-shell:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0}.prepath-shell:before{width:260px;height:260px;right:-150px;top:140px;background:rgba(136,195,148,.1)}.prepath-shell:after{width:180px;height:180px;left:-110px;bottom:-90px;background:rgba(239,193,95,.1)}
.prepath-facts article{opacity:0;animation:preCardIn .45s cubic-bezier(.22,1,.36,1) forwards}.prepath-facts article:nth-child(1){animation-delay:.08s}.prepath-facts article:nth-child(2){animation-delay:.16s}.prepath-facts article:nth-child(3){animation-delay:.24s}.prepath-facts article:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(40,109,84,.1)}
/* Family pricing: the second child activates the sibling reduction automatically. */
.prepath-choice--children { margin-bottom: 18px; }
.prepath-choice--children .prepath-choice__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.prepath-finance__annual small { display: block; margin-top: 5px; color: #26714f; font-weight: 700; }
.prepath-finance__monthly { border-color: rgba(38,113,79,.18) !important; background: #edf7ef !important; }
@media (max-width: 680px) { .prepath-choice--children .prepath-choice__grid { grid-template-columns: 1fr; } }
