.special-page{--special-ink:#20374d;--special-accent:#347f8a;--special-header:72px}
.special-page main p,.special-page main h2,.special-page main h3{word-break:keep-all;overflow-wrap:break-word}
.special-intro{padding:68px 0 46px;background:#fff;color:var(--special-ink)}
.special-intro-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:end}
.special-eyebrow{font-size:12px;font-weight:650;letter-spacing:.12em;color:#578a93;margin-bottom:17px}
.special-intro h2{font-size:42px;font-weight:450;line-height:1.42;letter-spacing:-.045em}.special-intro h2 strong{font-weight:700;color:#2b6673}
.special-intro-copy{max-width:490px;padding-bottom:5px}.special-intro-copy p{font-size:16px;line-height:1.95;color:#607588}.special-intro-copy small{display:block;margin-top:18px;font-size:12px;color:#8a9aa7;letter-spacing:.07em}
.special-jump{position:sticky;top:var(--special-header);z-index:70;background:#fffffff5;border-top:1px solid #e4ebed;border-bottom:1px solid #dbe5e8;backdrop-filter:blur(12px)}
.special-jump ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:0;padding:0}
.special-jump li{min-width:0}.special-jump a{display:flex;align-items:center;justify-content:center;gap:13px;padding:22px 8px;position:relative;color:#6d7f8c;font-size:14px;font-weight:550;transition:color .2s,background .2s}
.special-jump a:after{content:"";position:absolute;bottom:0;left:22px;right:22px;height:3px;background:#388490;transform:scaleX(0);transition:transform .2s}
.special-jump a span{font-size:11px;letter-spacing:.03em;color:#92a7ae}.special-jump a:hover,.special-jump a[aria-current=location]{color:#216370;background:#eff7f7}.special-jump a[aria-current=location]:after{transform:scaleX(1)}
.special-stage{padding:66px 0;scroll-margin-top:165px;color:var(--special-ink);background:#fff}
.special-stage:nth-child(even){background:#f4f7f8}
.special-stage-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr);align-items:center;gap:48px}
.special-stage-copy{min-width:0}
@media(min-width:821px){.special-stage--reverse .special-stage-grid{grid-template-columns:minmax(0,7fr) minmax(0,3fr)}}
.special-stage--reverse .special-stage-visual{order:2}.special-stage--reverse .special-stage-copy{order:1}
.special-stage-visual{min-width:0;margin:0;position:relative}
.special-photo-frame{border-radius:16px;overflow:hidden;position:relative;background:#dce6e8;box-shadow:0 12px 35px #213d5010}
.special-photo-frame img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .6s ease}
.special-photo-frame:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff33;border-radius:inherit;pointer-events:none}
.special-stage-visual figcaption{display:flex;align-items:center;gap:12px;margin-top:15px;font-size:11px;color:#8497a2;letter-spacing:.02em}.special-stage-visual figcaption:before{content:"";width:25px;height:1px;background:#b6c6cc}
.special-stage-heading{display:flex;align-items:center;gap:19px;margin-bottom:17px}
.special-stage-number{font-size:52px;line-height:1;font-weight:350;letter-spacing:-.055em;color:#a3bdc5;font-variant-numeric:tabular-nums}
.special-stage-kicker{font-size:12px;color:#4d7e87;letter-spacing:.08em;font-weight:650}
.special-stage h2{font-size:42px;line-height:1.4;letter-spacing:-.04em;font-weight:650;margin-bottom:17px}
.special-stage-description{font-size:15px;line-height:1.95;color:#6a7e8e;margin-bottom:24px;max-width:none}
.special-programs{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:0 24px;margin:0;padding:0;list-style:none;border-top:1px solid #dbe5e8}
.special-programs li{padding:16px 0 13px;min-width:0;border-bottom:1px solid #e1e9ec}.special-programs h3{font-size:15px;line-height:1.6;font-weight:650;color:#2a5165}.special-programs p{font-size:12px;line-height:1.8;color:#7a8e9a;margin-top:5px}
.special-stage--experience{background:#1e394a!important;color:white;position:relative;overflow:hidden}.special-stage--experience .special-stage-number{color:#668c9b}.special-stage--experience .special-stage-kicker{color:#9ec5cc}.special-stage--experience .special-stage-description{color:#b9cbd3}.special-stage--experience .special-programs{border-color:#ffffff24}.special-stage--experience .special-programs li{border-color:#ffffff1c}.special-stage--experience .special-programs h3{color:#edf6f8}.special-stage--experience .special-programs p{color:#a8c0cb}.special-stage--experience figcaption{color:#9bb4c1}.special-stage--experience figcaption:before{background:#6c8b9b}
.special-stage--last{background:#f4f7f8!important}
/* Closing invitation */
.special-finish{position:relative;isolation:isolate;overflow:hidden;padding:100px 0 105px;background:radial-gradient(ellipse at 50% 115%,#47616a80,transparent 62%),linear-gradient(115deg,#112a3c,#1c394b 55%,#102635);text-align:center;color:#fff;border-top:1px solid #d9c49465}
.special-finish:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 88% 0%,#dfc98e18,transparent 46%);pointer-events:none}
.special-finish:after{content:"ABC";position:absolute;bottom:-.22em;left:50%;transform:translateX(-50%);font-size:clamp(220px,30vw,440px);font-weight:750;line-height:1;letter-spacing:.06em;color:#ffffff04;z-index:-1;pointer-events:none}
.special-finish-orbit{position:absolute;width:1100px;height:1100px;border:1px solid #daca9e16;border-radius:50%;top:65px;left:50%;transform:translateX(-50%);z-index:-1;pointer-events:none}
.special-finish-orbit:before,.special-finish-orbit:after{content:"";position:absolute;inset:65px;border:1px solid #daca9e10;border-radius:50%}.special-finish-orbit:after{inset:130px}
.special-finish .wrap{position:relative}
.special-finish .special-eyebrow{display:flex;justify-content:center;align-items:center;gap:17px;margin:0 0 27px;color:#dfcba0;font-size:12px;letter-spacing:.22em}
.special-finish .special-eyebrow:before,.special-finish .special-eyebrow:after{content:"";width:36px;height:1px;background:#d9c49480}
.special-finish h2{font-size:clamp(38px,3.9vw,56px);line-height:1.42;letter-spacing:-.045em;font-weight:500}.special-finish h2 strong{font-weight:700;color:#ead4a4}
.special-finish p:not(.special-eyebrow){margin:24px auto 35px;max-width:620px;color:#c0cdd5;font-size:16px;line-height:1.9}
.special-finish-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.special-action{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-width:230px;min-height:60px;padding:18px 25px;background:linear-gradient(110deg,#eeddb8,#d9bd80);color:#253343;border:1px solid #eed9aa;border-radius:8px;font-size:16px;font-weight:650;box-shadow:0 8px 26px #00000020;transition:transform .25s,box-shadow .25s,background .25s}.special-action span{font-size:22px;line-height:1;transition:transform .25s}
.special-action--secondary{background:#ffffff08;color:#f3f5f6;border:1px solid #a7bac466;box-shadow:none}
.special-finish a:focus-visible{outline-color:#f2d498}
@media(hover:hover){.special-action:hover{transform:translateY(-3px);background:linear-gradient(110deg,#f8e9c8,#e6cb92);box-shadow:0 12px 32px #00000035}.special-action:hover span{transform:translateX(3px)}.special-action--secondary:hover{background:#ffffff14;box-shadow:none}}
.special-page a:focus-visible{outline:3px solid #2f6bff;outline-offset:4px}
@media(hover:hover){.special-stage-visual:hover img{transform:scale(1.025)}}
@media(min-width:1121px) and (max-width:1600px){.special-page .special-intro>.wrap,.special-page .special-jump>.wrap,.special-page .special-stage>.wrap{padding-right:76px}}
@media(max-width:1120px){.special-page{--special-header:64px}.special-stage-grid{gap:34px}.special-stage h2{font-size:39px}.special-intro-grid{gap:34px}.special-intro h2{font-size:36px}}
@media(max-width:820px){.special-intro{padding:44px 0 35px}.special-intro-grid{grid-template-columns:1fr;gap:23px}.special-intro-copy{max-width:620px}.special-intro-copy p{font-size:15px}.special-intro-copy small{margin-top:12px}.special-jump a{flex-direction:column;gap:6px;padding:14px 4px;font-size:12px}.special-jump a:after{left:8px;right:8px}.special-stage{padding:43px 0;scroll-margin-top:155px}.special-stage-grid{grid-template-columns:1fr;gap:28px}.special-stage--reverse .special-stage-visual,.special-stage--reverse .special-stage-copy{order:initial}.special-stage-visual{max-width:560px;width:100%}.special-photo-frame img{aspect-ratio:3/2;object-position:center 40%}.special-stage-number{font-size:43px}.special-stage h2{font-size:38px}.special-stage-description{font-size:15px}.special-programs{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;gap:0 20px}.special-programs h3{font-size:15px}.special-programs p{font-size:13px}.special-finish{padding:68px 0 72px}.special-finish h2{font-size:clamp(27px,4.8vw,38px)}.special-finish p:not(.special-eyebrow){font-size:14px;margin:22px auto 29px}.special-finish .special-eyebrow{font-size:10px;gap:12px;margin-bottom:23px}.special-finish-orbit{width:760px;height:760px}.special-finish-actions{max-width:490px;margin:auto}.special-action{flex:1;min-width:200px;font-size:15px}.special-stage-visual figcaption{margin-top:10px}}
@media(max-width:400px){.special-intro h2{font-size:32px}.special-jump a{font-size:11px}.special-programs{gap:0 15px}.special-programs h3{font-size:14px}.special-programs p{font-size:12px}.special-stage h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.special-page{scroll-behavior:auto}.special-jump a,.special-jump a:after,.special-photo-frame img,.special-action{transition:none}.special-stage-visual:hover img{transform:none}}

@media(max-width:480px){.special-finish-actions{flex-direction:column;max-width:350px;gap:12px}.special-action{width:100%;min-height:58px}.special-finish .special-eyebrow:before,.special-finish .special-eyebrow:after{width:22px}}
@media(prefers-reduced-motion:reduce){.special-action,.special-action span{transition:none}.special-action:hover,.special-action:hover span{transform:none}}

/* Keep campaign photographs covered throughout hover transitions. */
:is(.special-stage--experience,.special-stage--practice,.special-stage--opportunity,.special-stage--last) .special-photo-frame{aspect-ratio:5/4;background:#1e394a;isolation:isolate;clip-path:inset(0 round 16px)}
:is(.special-stage--experience,.special-stage--practice,.special-stage--opportunity,.special-stage--last) .special-photo-frame img{position:absolute;inset:-2px;width:calc(100% + 4px);height:calc(100% + 4px);max-width:none;aspect-ratio:auto;object-fit:cover;object-position:center;transform:scale(1.01);transform-origin:center;backface-visibility:hidden}
:is(.special-stage--experience,.special-stage--practice,.special-stage--opportunity,.special-stage--last) .special-photo-frame:after{box-shadow:none}
@media(hover:hover){:is(.special-stage--experience,.special-stage--practice,.special-stage--opportunity,.special-stage--last) .special-stage-visual:hover img{transform:scale(1.04)}}
@media(prefers-reduced-motion:reduce){:is(.special-stage--experience,.special-stage--practice,.special-stage--opportunity,.special-stage--last) .special-photo-frame img,:is(.special-stage--experience,.special-stage--practice,.special-stage--opportunity,.special-stage--last) .special-stage-visual:hover img{transform:none;transition:none}}
