/* Shared program advisor. Every visual and state stays inside this component. */
.advisor-section{position:relative;isolation:isolate;padding:100px 0 110px;background:#0c0d15;color:#f6f3fc;overflow:clip;scroll-margin-top:95px}
.advisor-section::before{content:'';position:absolute;inset:10% -15% -5%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 75% 30%,#8d78df1f,transparent 48%),radial-gradient(ellipse at 14% 80%,#74d3dd0d,transparent 40%)}
.advisor-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.advisor-intro .eyebrow{color:#c4b7e3;font-size:14px;letter-spacing:.12em;margin:0 0 22px}
.advisor-intro h2{font-family:var(--font);font-size:clamp(34px,3.5vw,52px);font-weight:650;line-height:1.35;letter-spacing:0;margin:0 0 23px}
.advisor-intro>p:last-child{font-size:18px;line-height:1.85;color:#bbb4ca;max-width:430px}
.advisor-panel{min-width:0;padding:30px;border:1px solid #ded5ff23;border-radius:24px;background:linear-gradient(135deg,#ffffff0b,#ffffff03);box-shadow:0 24px 70px #00000024;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.advisor-panel fieldset{border:0;padding:0;margin:0;min-width:0}
.advisor-label{display:block;font-size:17px;font-weight:600;line-height:1.6;margin-bottom:13px}
.advisor-panel textarea{display:block;resize:vertical;box-sizing:border-box;width:100%;min-height:142px;max-height:360px;border:1px solid #ffffff26;border-radius:13px;background:#06071070;color:#fff;padding:17px 18px;font:inherit;font-size:18px;line-height:1.7;outline-offset:4px}
.advisor-panel textarea::placeholder{color:#9790aa;opacity:1}
.advisor-panel textarea:focus{border-color:#bdb0e8;outline:2px solid #bdb0e84d}
.advisor-hint{display:flex;justify-content:space-between;gap:15px;margin:10px 0 20px;color:#a9a0bc;font-size:14px;line-height:1.65}
.advisor-hint [data-advisor-count]{white-space:nowrap;font-variant-numeric:tabular-nums}
.advisor-examples{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.advisor-examples button{min-height:40px;padding:8px 12px;border:1px solid #ffffff1c;border-radius:999px;color:#d6cee5;background:#ffffff04;font:inherit;font-size:14px;line-height:1.5;text-align:left}
.advisor-examples button:hover{background:#ffffff0c;border-color:#ffffff4c}
.advisor-submit{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:50px;padding:12px 23px;border:0;border-radius:999px;background:#e6dcff;color:#21172e;font:inherit;font-size:16px;font-weight:650;line-height:1.5}
.advisor-submit:hover{background:#f3edff}.advisor-submit:disabled{cursor:wait;opacity:.55}
.advisor-submit svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.advisor-state{margin-top:17px;color:#b8afc9;font-size:14px;line-height:1.8;min-height:26px}
.advisor-state.is-error{color:#ffd0ca}
.advisor-results{grid-column:1/-1;min-width:0;padding-top:12px;scroll-margin-top:112px}
.advisor-results h3{font-family:var(--font);font-size:28px;line-height:1.45;letter-spacing:0;font-weight:650;margin:14px 0 14px;scroll-margin-top:112px}
.advisor-mode{display:inline-flex;align-items:center;border:1px solid #c1b1eb40;border-radius:999px;padding:6px 12px;color:#d9ccee;font-size:14px;line-height:1.4}
.advisor-mode[data-mode="catalogue"]{border-color:#90c5c53b;color:#c3e0de}
.advisor-answer{white-space:pre-line;font-size:18px;line-height:1.9;color:#d6cee2;max-width:950px;margin:0 0 28px}
.advisor-cards{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;padding:0;margin:0}
.advisor-card{min-width:0;border-top:1px solid color-mix(in srgb,var(--advisor-accent,#b4a1dd) 45%,transparent);padding-top:23px}
.advisor-card-title{display:flex;gap:15px;align-items:center;margin-bottom:18px}.advisor-card-title img{width:64px;height:64px;object-fit:contain;flex:0 0 auto}
.advisor-card-title h4{font-family:'Neraru Latin',var(--font);font-size:24px;line-height:1.35;letter-spacing:-.03em;font-weight:650;margin:0 0 5px}
.advisor-card-category{font-size:15px;color:#b9aecb;line-height:1.6;margin:0}
.advisor-card-reason{font-size:17px;line-height:1.9;color:#d2c9df;margin:0}
.advisor-card-actions{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:18px}
.advisor-link{display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:500;color:#eadfff;border-bottom:1px solid #a391c766}
.advisor-link:hover{color:#fff;border-color:var(--advisor-accent,#c8b5ff)}
.advisor-link--open{color:#c9d8e7}.advisor-card-status{display:inline-block;font-size:14px;color:#cfbedc;margin:13px 0 0}
.advisor-followup{font-size:17px;color:#d6c6ea;line-height:1.85;margin:30px 0 0;padding-left:19px;border-left:2px solid #a58bcd77}
.program-detail-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;margin-top:18px;color:#e8def7;font-size:16px;line-height:1.5;border-bottom:1px solid #b2a0c752;padding:7px 0}
.program-detail-link svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.program-detail-link:hover{border-color:currentColor;color:#fff}
@media(max-width:960px){.advisor-layout{grid-template-columns:1fr;gap:32px}.advisor-intro>p:last-child{max-width:680px}.advisor-section{padding:75px 0}.advisor-intro h2{font-size:40px}.advisor-panel{padding:27px}.advisor-results{padding-top:0}}
@media(max-width:520px){.advisor-section{padding:60px 0 65px}.advisor-layout{gap:26px}.advisor-intro h2{font-size:34px;margin-bottom:18px}.advisor-intro .eyebrow{margin-bottom:16px}.advisor-intro>p:last-child{font-size:17px}.advisor-panel{padding:20px 17px;border-radius:19px}.advisor-panel textarea{font-size:17px;min-height:132px;padding:14px}.advisor-hint{flex-wrap:wrap;gap:4px}.advisor-hint [data-advisor-count]{margin-left:auto}.advisor-examples{gap:7px}.advisor-examples button{min-height:44px;font-size:14px;padding:8px 11px}.advisor-submit{width:100%;min-height:50px}.advisor-cards{grid-template-columns:1fr;gap:28px}.advisor-results h3{font-size:26px}.advisor-answer{font-size:17px}.advisor-card-title h4{font-size:23px}}
@media(prefers-reduced-motion:reduce){.advisor-section *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
