@charset "UTF-8";
:root{font-family:Arial,Helvetica,sans-serif;color:#191d20;background:#4e2695;font-synthesis:none;--purple:#8049d1;--gold:#ffd76a;--ink:#20272c}
*{box-sizing:border-box}body{margin:0;min-height:100svh;padding:clamp(20px,4.6vw,72px);padding-bottom:23px;display:flex;flex-direction:column;justify-content:center;overflow-x:hidden;background:radial-gradient(ellipse at 18% 0%,#b97aff 0,transparent 54%),radial-gradient(ellipse at 100% 10%,#7a3cce 0,transparent 60%),linear-gradient(142deg,#8445d1,#21163f 92%)}
button,a,select{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #7741c9;outline-offset:6px}button:disabled{cursor:default;opacity:.35}button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ambient{position:fixed;inset:-20%;pointer-events:none;opacity:.4;background:radial-gradient(ellipse at 25% 25%,#b687ff,transparent 48%);filter:blur(50px);animation:ambient 18s ease-in-out infinite alternate}
.experience{position:relative;isolation:isolate;width:100%;max-width:1680px;aspect-ratio:auto;height:min(900px,calc(100svh - 142px));min-height:540px;max-height:900px;margin:0 auto;background:#eeedeb;box-shadow:0 35px 90px #0d062859;overflow:hidden;touch-action:pan-y;border:1px solid #ffffff2b}
.sky{position:absolute;z-index:-3;inset:0;background:radial-gradient(ellipse at 36% 39%,#f7f6ed 0,transparent 43%),linear-gradient(#aeb5c2 0%,#c9cbd2 26%,#f4f1e7 49%,#ebe8e4 50%,#f7f6f3 79%,#e3e4e4 100%)}
.haze{position:absolute;inset:30% -20% 37%;filter:blur(35px);background:#fffbf594;z-index:-2}.stars{position:absolute;inset:0 0 54%;opacity:.4;z-index:-1;background-image:radial-gradient(circle,#fff 1px,transparent 1.3px),radial-gradient(circle,#fff 1px,transparent 1.3px);background-size:147px 127px,213px 169px;background-position:37px 46px,91px 19px;mask-image:linear-gradient(#000,transparent)}
.header{position:absolute;top:35px;left:4.1%;right:4.1%;display:flex;align-items:center;gap:46px;z-index:6;font-size:9px;letter-spacing:.025em;font-weight:700}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}.brand-dot{width:8px;height:8px;background:#252d31;border-radius:50%;box-shadow:0 0 0 4px #20272c08}.header nav{display:flex;gap:26px}.nav-link{font-size:9px;padding:8px 0;position:relative}.nav-link:after{content:"";position:absolute;height:1px;background:currentColor;bottom:2px;left:0;right:100%;transition:right .3s}.nav-link:hover:after{right:0}.header-end{margin-left:auto;font-size:8px;font-weight:400;letter-spacing:.13em;display:flex;align-items:center;gap:24px}.tiny-cross{font-size:18px;font-weight:300}
.title-wrap{position:absolute;top:15%;left:0;right:0;text-align:center;z-index:1;pointer-events:none;will-change:transform;transition:opacity .35s,filter .35s}.eyebrow{font-size:8px;letter-spacing:.28em;color:#fffce8cc;margin:0 0 9px;opacity:0;animation:fade-up .9s .6s forwards}h1{font-size:clamp(75px,10.9vw,187px);font-weight:300;color:#fffef7;margin:0;line-height:.98;letter-spacing:-.09em;white-space:nowrap;opacity:0;animation:title-reveal 1.3s .2s cubic-bezier(.2,.7,.1,1) forwards}.title-light{font-weight:200;letter-spacing:-.08em;margin-right:.07em}h1 strong{font-weight:800;letter-spacing:-.085em}.title-wrap.changing{opacity:0;filter:blur(9px);transform:translateY(-12px)}
#world{position:absolute;inset:0;width:100%;height:100%;z-index:2;outline:none;pointer-events:none}.landscape-grain{position:absolute;z-index:3;inset:48% 0 0;pointer-events:none;opacity:.16;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.27' filter='url(%23n)'/%3E%3C/svg%3E");mask-image:linear-gradient(transparent,#000)}
.invitation{position:absolute;left:5.5%;top:42%;z-index:4;opacity:0;animation:fade-up 1s .8s forwards}.invitation-number{display:block;font-size:8px;letter-spacing:.14em;margin-bottom:15px;color:#6d7174}.book-button{padding:4px 0;font-size:clamp(17px,1.55vw,25px);letter-spacing:-.045em;font-weight:600;display:flex;gap:13px;align-items:center}.book-button span{font-size:25px;font-weight:300;transition:transform .35s}.book-button:hover span{transform:rotate(90deg)}.invitation p{font-size:10px;line-height:1.65;letter-spacing:-.01em;color:#686c70;margin-top:12px;max-width:165px}.coordinates{position:absolute;right:3.8%;top:17%;display:flex;gap:36px;writing-mode:vertical-rl;z-index:4}.coordinates div{display:flex;gap:6px;align-items:center}.coordinates span{font-size:17px;font-weight:400;letter-spacing:-.03em}.coordinates small{font-size:6px;letter-spacing:.12em;color:#52585e}
.journey{position:absolute;left:6%;right:6%;height:24%;top:65%;z-index:5;opacity:0;animation:fade-up 1.4s .5s forwards}.journey-line{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke-linecap:round}.track{stroke:url(#lineGradient);stroke-width:3;filter:drop-shadow(0 1px 0 #fff);vector-effect:non-scaling-stroke}.track-shadow{stroke:#c4b2d6;stroke-width:7;opacity:.1;filter:blur(4px);vector-effect:non-scaling-stroke}.traveler{fill:#fff;stroke:#fff;stroke-width:2;filter:drop-shadow(0 0 4px #7139b8);opacity:0}.journey-stops{position:absolute;inset:0}.stop{position:absolute;left:var(--x);top:var(--y);padding:0;width:44px;height:44px;margin:-22px 0 0 -22px;overflow:visible}.stop-marker{position:absolute;left:13px;top:13px;width:18px;height:18px;background:#824bc9;border-radius:50%;display:grid;place-items:center;border:3px solid #a37bd6;box-shadow:0 1px 4px #5f377935;transition:transform .4s,box-shadow .4s,background .4s}.stop-marker span{width:4px;height:4px;background:#eee3fc;border-radius:50%;transition:transform .4s}.stop:hover .stop-marker,.stop:focus-visible .stop-marker{transform:scale(1.3);box-shadow:0 0 0 7px #9b6ad326}.stop.active .stop-marker{transform:scale(1.45);background:#7a40c7;border-color:#8850cc;box-shadow:0 0 0 6px #8a53cb12}.stop.active .stop-marker span{transform:scale(.65)}.stop-info{position:absolute;top:46px;left:22px;min-width:100px;transform:translateX(-50%);text-align:center;display:flex;flex-direction:column;gap:6px;white-space:nowrap}.stop-info small{font-size:6px;letter-spacing:.06em;color:#72777a}.stop-info>span{font-size:11px;letter-spacing:-.035em;color:#3a3e42;transition:color .3s}.stop.active .stop-info>span{color:#6c37b5}.stop:first-child .stop-info{transform:translateX(-24%);text-align:left}.stop:last-child .stop-info{transform:translateX(-78%);text-align:right}
.stage-footer{position:absolute;bottom:3.2%;left:4.1%;right:3.2%;display:flex;align-items:center;z-index:6;gap:20px}.concept-label{font-size:6px;letter-spacing:.13em;display:flex;align-items:center;gap:6px;color:#74787a}.concept-label>span:first-child{display:block;width:3px;height:3px;background:#9a7cb3;border-radius:50%}.motion-hint{margin:auto;font-size:6px;letter-spacing:.16em;color:#737678;display:flex;align-items:center;gap:8px}.motion-hint>span{font-size:16px;letter-spacing:0}.motion-hint i{height:10px;width:1px;background:#b4b5b4;margin:0 5px}.controls{display:flex;align-items:center;gap:13px;margin-left:auto}.motion-control{width:25px;height:30px;display:grid;place-items:center;color:#5a5c60}.motion-control svg{width:14px;height:14px;stroke-width:1.4}.previous-control{display:grid;place-items:center;width:32px;height:40px;transition:transform .3s}.next-control{width:48px;height:48px;border-radius:50%;background:#ffda75;display:grid;place-items:center;box-shadow:0 4px 16px #9d7a2520;transition:transform .3s,background .3s}.next-control:hover{transform:translateX(3px);background:#ffe29c}.previous-control:hover{transform:translateX(-3px)}
.outside-caption{width:100%;max-width:1680px;display:flex;justify-content:space-between;margin:18px auto 0;color:#e1ccf782;font-size:7px;letter-spacing:.15em;z-index:1}.outside-plus{margin:0 9px;color:#eddcff}.loading{position:absolute;inset:0;z-index:9;background:linear-gradient(135deg,#e3e1e6,#f0ede5);display:flex;align-items:center;justify-content:center;gap:13px;transition:opacity 1s,visibility 1s;font-size:8px;letter-spacing:.25em;color:#7848b5}.loading.ready{opacity:0;visibility:hidden}.loader-orbit{width:20px;height:20px;border:1px solid #b9a7cc;border-top-color:#7a45c3;border-radius:50%;animation:spin 1s linear infinite}
.dialog{width:min(510px,calc(100vw - 32px));max-height:90svh;overflow-y:auto;border:0;border-radius:3px;background:#f8f6f0;color:#25292b;padding:48px;box-shadow:0 30px 120px #14052c66}.dialog::backdrop{background:#25133d70;backdrop-filter:blur(14px)}.dialog[open]{animation:dialog-in .4s cubic-bezier(.2,.7,.1,1)}.close-dialog{position:absolute;right:22px;top:16px;font-size:29px;font-weight:300;width:30px;height:36px;line-height:1}.dialog-eyebrow{font-size:7px;letter-spacing:.2em;color:#8354ac;margin:8px 0 28px}.dialog h2{font-size:53px;line-height:1;letter-spacing:-.065em;font-weight:400;margin:0 0 25px}.dialog h2 em{font-style:normal;color:#854bc1}.dialog-copy{font-size:13px;line-height:1.7;color:#737273}.about-note{font-size:10px;color:#8e8a91;line-height:1.6;border-top:1px solid #ded9de;margin-top:22px;padding-top:16px}.primary-button{width:100%;display:flex;align-items:center;justify-content:space-between;margin-top:25px;background:#8047c2;color:#fff;padding:17px 20px;font-size:12px;text-align:left;transition:background .3s}.primary-button:hover{background:#6e37b0}.primary-button span{font-size:20px;font-weight:300}.places-list{margin-top:30px}.places-list button{display:flex;align-items:center;width:100%;padding:18px 0;border-bottom:1px solid #ded9de;text-align:left;gap:23px;transition:padding .3s}.places-list button:hover{padding-left:10px}.places-list small{font-size:9px;color:#9d79be}.places-list span{font-size:18px;letter-spacing:-.04em}.places-list em{display:block;font-size:10px;color:#8a858a;font-style:normal;letter-spacing:0;margin-top:5px}.places-list b{font-size:20px;margin-left:auto;font-weight:400;color:#8b55ba}form label{display:block;font-size:8px;letter-spacing:.15em;margin:24px 0 10px;color:#7a6b84}select{width:100%;border:1px solid #d8d2dc;background:#fffdf9;padding:13px;font:inherit;font-size:13px;color:#4f4559;border-radius:0}.stepper{border:1px solid #d8d2dc;display:flex;align-items:center;justify-content:space-between}.stepper button{font-size:23px;padding:8px 19px}.stepper output{font-size:12px;color:#756c7c}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.canvas-fallback{position:absolute;inset:26% 31% 35%;z-index:2;perspective:900px}.fallback-orb{width:100%;height:100%;border-radius:48% 52% 45% 55%;background:repeating-linear-gradient(-8deg,#f5f3eb 0 9%,#b3aca6 10%,#734e3e 12% 19%,#e0ddd8 20%);box-shadow:inset -28px -10px 45px #4b4d6666,20px 35px 40px -25px #666;transform:rotate(-9deg);animation:float 6s ease-in-out infinite}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes ambient{to{transform:translate(5%,5%) scale(1.1)}}@keyframes fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes title-reveal{from{opacity:0;transform:translateY(35px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes dialog-in{from{opacity:0;transform:translateY(25px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes float{50%{transform:translateY(-8px) rotate(-7deg)}}
@media(min-width:1700px){h1{font-size:185px}.book-button{font-size:25px}}
@media(max-height:700px) and (min-width:651px){body{padding-top:32px}.experience{height:calc(100svh - 110px);min-height:430px}}
@media(max-width:1000px){body{padding:28px 25px 20px}.experience{min-height:590px;aspect-ratio:1.45}.header{gap:30px}.header-end{font-size:6px;gap:12px}.title-wrap{top:19%}h1{font-size:12.5vw}.invitation{left:5%;top:42%}.invitation p{font-size:9px;max-width:130px}.coordinates{right:3%;gap:20px}.coordinates span{font-size:14px}.coordinates small{font-size:5px}.stop-info>span{font-size:10px}.stop-info small{font-size:5px}.motion-hint{font-size:5px;letter-spacing:.05em}.concept-label{font-size:5px}.next-control{width:42px;height:42px}.journey{top:67%;height:21%}}
@media(max-width:650px){body{padding:15px 12px 18px;justify-content:center;min-height:100svh}.experience{min-height:710px;height:calc(100svh - 71px);max-height:900px;aspect-ratio:auto}.header{top:23px;left:6%;right:6%;gap:0;justify-content:space-between;font-size:8px}.header nav{gap:22px}.nav-link{font-size:8px}.brand{gap:8px}.brand-dot{width:6px;height:6px}.header-end{display:none}.title-wrap{top:16.5%}.eyebrow{font-size:6px;letter-spacing:.21em;margin-bottom:11px}h1{font-size:19vw;letter-spacing:-.085em}.invitation{top:56%;left:7%;}.invitation-number{font-size:6px;margin-bottom:7px}.book-button{font-size:18px;gap:13px}.book-button span{font-size:23px}.invitation p{font-size:9px;line-height:1.55;margin:7px 0 0;max-width:135px}.coordinates{top:29%;right:5%;gap:23px}.coordinates span{font-size:12px}.coordinates small{font-size:5px}.journey{top:76%;height:12%;left:5%;right:5%}.stop-info{top:45px;min-width:70px;gap:5px}.stop-info>span{font-size:8px}.stop-info small{font-size:4.4px;letter-spacing:0}.stop-marker{width:13px;height:13px;left:15.5px;top:15.5px;border-width:2px}.stop-marker span{width:3px;height:3px}.track{stroke-width:2}.stage-footer{bottom:3%;left:6%;right:5%;gap:8px}.concept-label{font-size:4.5px;letter-spacing:.08em;max-width:90px;line-height:1.8;flex-wrap:wrap}.desktop-only,.motion-hint{display:none}.controls{gap:10px}.next-control{width:42px;height:42px}.previous-control{width:28px}.outside-caption{font-size:5px;letter-spacing:.06em;margin-top:13px}.outside-caption>span:last-child{font-size:4.5px}.dialog{padding:42px 30px}.dialog h2{font-size:45px}.dialog-copy{font-size:12px}}
@media(max-width:650px){.title-wrap.long-title h1{font-size:14.8vw}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.loading{transition:none}}
/* Epsom's navy and gold identity, with the cinematic journey as its opening. */
:root{--navy:#132039;--gold:#d4a94e;--purple:#b08c49;background:#101c32;color:#17243b}
html{scroll-behavior:smooth;scroll-padding-top:28px}body{display:block;min-height:100svh;padding:0;background:#f7f5f0;overflow-x:hidden;isolation:isolate}.ambient{z-index:-1;inset:0 0 auto;height:100svh;opacity:.15;background:radial-gradient(ellipse at 10% 0%,#6e8bbd,transparent 70%);animation:none}
.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;gap:32px;margin:0 auto;padding:0 max(4.5vw,24px);background:#101c32;color:#fff}.epsom-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.epsom-brand img{display:block}.epsom-brand>span{font-size:20px;font-weight:650;letter-spacing:-.05em}.epsom-brand small{display:block;font-size:6px;letter-spacing:.24em;font-weight:400;color:#acb7cb;margin-top:5px}.site-header nav{display:flex;gap:28px;margin-left:auto;margin-right:30px;font-size:11px;color:#c5cad5}.site-header nav a{transition:color .25s}.site-header nav a:hover{color:#edce8b}.header-actions{display:flex;gap:23px;align-items:center;font-size:11px}.header-actions #language{font-size:9px;color:#fff;white-space:nowrap;padding:8px 0}.header-actions #language span{color:#8591a7;margin-left:3px}.header-actions .login{color:#cbd1dc}.join-button{display:inline-flex;align-items:center;justify-content:center;gap:23px;padding:14px 21px;background:#dbb568;color:#15223a;border-radius:50px;font-size:11px;font-weight:600;transition:background .25s,transform .25s;white-space:nowrap}.join-button:hover{background:#edcd8b;transform:translateY(-2px)}
.hero-shell{padding:0 4.5vw 35px;background:radial-gradient(ellipse at 28% 5%,#314b77 0,transparent 65%),linear-gradient(120deg,#1c2e4e,#101a2e 80%);position:relative}.experience{height:calc(100svh - 185px);min-height:520px;max-height:780px;border:1px solid #e3e0d15c;box-shadow:0 25px 65px #07102152;scroll-margin-top:20px}.experience .sky{background:radial-gradient(ellipse at 34% 41%,#fbf6e9 0,transparent 43%),linear-gradient(#9baabd 0%,#c6ccd3 28%,#f0f0e6 49%,#ebe9e2 50%,#f8f6ef 78%,#e0e1dd 100%)}.experience .header{top:27px;font-size:7px;font-weight:500;letter-spacing:.09em}.experience .brand-dot{background:#b08c49;width:5px;height:5px;box-shadow:0 0 0 3px #b08c490e}.experience .header-end{font-size:7px;letter-spacing:.14em}.title-wrap{top:16%}.title-wrap h1{font-size:clamp(80px,11.3vw,180px);letter-spacing:-.08em}.eyebrow{font-size:7px;letter-spacing:.26em;color:#fffbf0}.invitation{top:43%;left:5.3%;}.invitation-number{font-size:7px;letter-spacing:.16em;color:#716f68;margin-bottom:10px}.book-button{font-size:clamp(16px,1.65vw,25px);letter-spacing:-.05em;gap:10px}.book-button>span:first-child{font-size:inherit;font-weight:600}.book-button>span:last-child{font-size:23px;font-weight:300}.book-button:hover>span:first-child{transform:none}.book-button:hover>span:last-child{transform:translate(3px,-3px)}.invitation p{font-size:10px;max-width:185px;margin:12px 0 15px;color:#676d71}.free-call{font-size:6px;letter-spacing:.14em;color:#9d7b3f}.coordinates{top:18%;gap:22px;right:3.3%;color:#364357}.coordinates span{font-size:14px}.coordinates small{font-size:5px;letter-spacing:.1em}.journey{top:66%;height:22%;left:6%;right:6%}.track{stroke-width:2.5}.track-shadow{stroke:#cdb780}.stop-marker{background:#182944;border:3px solid #b99b62;box-shadow:0 1px 4px #1b2c3e20}.stop-marker span{background:#f5dfb6}.stop.active .stop-marker{background:#192b45;border-color:#b99b62;box-shadow:0 0 0 6px #bfa15d19}.stop:hover .stop-marker,.stop:focus-visible .stop-marker{box-shadow:0 0 0 7px #bca16c26}.stop.active .stop-info>span{color:#97722c}.stop-info>span{font-size:10px;color:#465162}.stop-info small{font-size:5.5px;color:#7c8085;letter-spacing:.06em}.stop:first-child .stop-info{transform:translateX(-20%)}.stop:last-child .stop-info{transform:translateX(-80%)}.next-control{background:#dfbd73;color:#14263e;width:43px;height:43px}.next-control:hover{background:#ebce94}.controls{gap:10px}.concept-label{font-size:5px;color:#79818a}.concept-label>span:first-child{background:#b89b64}.motion-hint{font-size:5.5px;letter-spacing:.08em;color:#7b828b}.outside-caption{margin-top:18px;font-size:6px;color:#aab6cc;letter-spacing:.14em}.outside-caption a{color:#c9cdd7}.outside-plus{color:#bd9b5f}.loading{background:linear-gradient(130deg,#d7dde1,#f2efe5);color:#81704a}.loader-orbit{border-color:#c8bda3;border-top-color:#947135}
.section{max-width:1240px;margin:0 auto;padding:105px 0;position:relative}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:48px}.section-kicker{font-size:8px;letter-spacing:.19em;color:#a78341;font-weight:600;margin:0 0 19px}.section h2{font-size:clamp(38px,4.2vw,62px);font-weight:400;letter-spacing:-.06em;line-height:1.06;margin:0;color:#17263e}.section h2 em{font-style:normal;color:#9c7c46}.section-intro{font-size:13px;color:#7a7d82;line-height:1.8;max-width:320px;margin:0 0 5px}.people-section{padding-bottom:100px}.role-tabs{display:flex;gap:25px;margin-bottom:30px;border-bottom:1px solid #dddcd7}.role-tabs button{padding:0 4px 17px;display:flex;gap:9px;align-items:center;font-size:12px;color:#8a8b8c;position:relative}.role-tabs button:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#b9995a;transform:scaleX(0);transform-origin:left;transition:transform .3s}.role-tabs button[aria-selected=true]{color:#1c2e4c}.role-tabs button[aria-selected=true]:after{transform:scaleX(1)}.role-dot{width:5px;height:5px;border-radius:50%;display:block}.student-dot{background:#5b80b1}.parent-dot{background:#9b84b5}.coach-dot{background:#c69561}.recruiter-dot{background:#6e9e89}.role-panel{display:grid;grid-template-columns:1.12fr 1fr;min-height:460px;gap:95px;align-items:center}.role-photo{position:relative;align-self:stretch;min-height:460px;overflow:hidden;background:#22344f}.role-photo>img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;object-position:center 30%;filter:saturate(.7);transition:opacity .3s,transform 1.2s}.role-photo:hover>img{transform:scale(1.035)}.role-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0d1a31aa)}.photo-caption{position:absolute;bottom:26px;left:27px;color:#e9e6de;font-size:7px;letter-spacing:.17em;z-index:1}.photo-orbit{position:absolute;right:24px;top:22px;width:51px;height:51px;border:1px solid #fffffd5e;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:29px;letter-spacing:-.1em;font-family:Georgia,serif;font-style:italic;color:#f5f1e8}.photo-orbit span{font-size:12px;position:relative;top:-6px;font-family:Arial}.role-copy{padding:25px 0;max-width:410px}.role-copy .section-kicker{font-size:7px;margin-bottom:22px}.role-copy h3{font-size:43px;line-height:1.09;font-weight:400;letter-spacing:-.055em;margin:0 0 23px}.role-copy>p:not(.section-kicker){font-size:13px;line-height:1.8;color:#7a7d82;margin:0 0 20px}.role-copy ul{list-style:none;padding:0;margin:0 0 30px}.role-copy li{font-size:11px;color:#5c6674;padding:10px 0;border-bottom:1px solid #e5e2dc;display:flex;align-items:center;gap:11px;line-height:1.5}.role-copy li:before{content:'+';color:#af8b47}.text-link{font-size:12px;display:inline-flex;gap:45px;align-items:center;padding:8px 0;border-bottom:1px solid #ac8a4c;color:#263650}.text-link>span:last-child{font-size:20px;transition:transform .3s}.text-link:hover>span:last-child{transform:translate(3px,-3px)}
.ecosystem-section{border-top:1px solid #e2ded6;padding-top:95px}.app-list{border-top:1px solid #dedbd3}.app-row{display:grid;grid-template-columns:65px 200px 1fr 58px;gap:35px;align-items:center;padding:28px 0;border-bottom:1px solid #dedbd3;transition:padding .3s}.app-row:hover{padding-left:12px;padding-right:12px}.app-row>img{width:54px;height:54px;object-fit:contain;border-radius:13px}.app-index{font-size:6px;letter-spacing:.13em;color:#a28e70}.app-row h3{font-size:27px;font-weight:400;letter-spacing:-.04em;margin:7px 0 0}.app-row p{font-size:12px;line-height:1.8;color:#82838a;max-width:480px}.app-arrow{width:45px;height:45px;border:1px solid #d2c7b3;border-radius:50%;display:grid;place-items:center;font-size:20px;color:#8d7346;transition:background .3s,color .3s}.app-row:hover .app-arrow{background:#172740;color:#ecd4a1;border-color:#172740}
.packages-section{padding-top:30px;padding-bottom:95px}.packages-section .section-intro{max-width:330px}.package-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid #dcd7cd}.package{padding:28px 22px 25px;display:flex;flex-direction:column;border-right:1px solid #dcd7cd;background:#faf8f3;min-height:337px;transition:background .3s}.package:last-child{border-right:0}.package.featured{background:#1c2e4b;color:#fff}.package:hover{background:#f0ece1}.package.featured:hover{background:#223856}.package-number{font-size:6px;letter-spacing:.1em;color:#a6977a;margin:0 0 30px;display:flex;justify-content:space-between;gap:8px;white-space:nowrap}.package-number span{color:#c1a26a;font-size:5px}.package h3{font-size:19px;font-weight:400;letter-spacing:-.03em;margin:0 0 15px}.package .price{font-size:29px;letter-spacing:-.05em;margin:0 0 25px;white-space:nowrap}.price span{font-size:6px;letter-spacing:.04em;margin-left:6px;color:#9a958c}.package .package-scope{font-size:10px;line-height:1.5;color:#747363;margin:0 0 11px}.featured .package-scope{color:#dcc08c}.package>p:not(.package-number,.price,.package-scope){font-size:10px;line-height:1.7;color:#8a8b89;margin:0 0 25px}.featured>p:not(.package-number,.price,.package-scope){color:#b0bbcb}.package>a{font-size:9px;margin-top:auto;display:flex;justify-content:space-between;gap:10px;padding-top:15px;border-top:1px solid #ded9cf}.featured>a{border-color:#415069;color:#dfc287}.price-note{font-size:9px;line-height:1.8;color:#96918a;max-width:1000px;margin:20px 0 0}
.faq-section{border-top:1px solid #dedbd3;display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;padding-top:85px}.faq-list details{border-bottom:1px solid #dedbd3;padding:22px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{cursor:pointer;font-size:15px;font-weight:400;letter-spacing:-.02em;list-style:none;display:flex;gap:20px;justify-content:space-between}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';color:#a58956;font-size:19px;line-height:1}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:12px;line-height:1.9;color:#7c8189;margin:18px 30px 0 0}
.closing-section{position:relative;text-align:center;background:radial-gradient(ellipse at 50% 120%,#314c78,transparent 60%),#101c32;padding:80px 24px 85px;color:#f8f5ee;overflow:hidden}.closing-section>img{margin-bottom:15px}.closing-section .section-kicker{color:#b99d67;font-size:7px}.closing-section h2{font-size:clamp(38px,5vw,70px);line-height:1.08;letter-spacing:-.065em;font-weight:400;margin:24px 0 35px}.closing-section h2 em{color:#d3b477;font-style:normal}.closing-actions{display:flex;align-items:center;justify-content:center;gap:30px}.closing-actions .join-button{padding:16px 25px;font-size:12px}.whatsapp-link{font-size:11px;color:#c4cbd9;border-bottom:1px solid #7b8291;padding:8px 0}.closing-note{font-size:8px;letter-spacing:.04em;color:#8694ac;margin:22px 0 0}.site-footer{display:flex;align-items:center;gap:35px;background:#101c32;color:#d8e0ee;border-top:1px solid #29364c;padding:27px 5vw}.site-footer .epsom-brand span{font-size:15px}.site-footer p{font-size:8px;color:#7d8ba4;margin-left:auto}.site-footer nav{display:flex;gap:24px;font-size:9px;color:#9eabbf}.back-top{width:32px;height:32px;border:1px solid #3b485f;border-radius:50%;display:grid;place-items:center;color:#cfbb95}
.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.motion-ready .reveal.visible{opacity:1;transform:none}
@media(min-width:1700px){.title-wrap h1{font-size:180px}.book-button{font-size:25px}}
@media(max-width:1400px){.section{margin-left:7%;margin-right:7%}.role-panel{gap:65px}.site-header nav{gap:22px;margin-right:15px}.package{padding:25px 17px}.package-number span{display:none}}
@media(max-width:1100px){.site-header{height:84px;gap:20px}.site-header nav{gap:17px;margin-right:0;font-size:10px}.header-actions{gap:15px}.epsom-brand>span{font-size:17px}.epsom-brand img{width:30px;height:30px}.header-actions .login{display:none}.hero-shell{padding:0 3vw 28px}.experience{height:calc(100svh - 160px);min-height:520px;aspect-ratio:auto}.section-heading{gap:40px}.role-panel{gap:45px;min-height:410px}.role-photo{min-height:410px}.role-copy h3{font-size:36px}.app-row{grid-template-columns:60px 160px 1fr 45px;gap:25px}.package-grid{grid-template-columns:1fr 1fr}.package{border-bottom:1px solid #dcd7cd;min-height:310px}.package:nth-child(2n){border-right:0}.package:nth-child(n+3){border-bottom:0}.package .price{font-size:31px}.faq-section{gap:50px}}
@media(max-width:800px){.site-header nav{display:none}.site-header{padding:0 5vw}.site-header .login{display:inline}.experience{min-height:555px}.title-wrap h1{font-size:13vw}.experience .header-end{display:none}.coordinates{gap:15px}.invitation p{max-width:145px;font-size:9px}.book-button{font-size:18px}.section{padding-top:75px;padding-bottom:75px;margin-left:7%;margin-right:7%}.section-heading{align-items:flex-start;gap:35px}.section-intro{font-size:11px;max-width:230px}.role-panel{gap:32px;min-height:390px}.role-photo{min-height:390px}.role-copy h3{font-size:30px}.role-copy>p:not(.section-kicker){font-size:11px}.role-copy li{font-size:10px}.app-row{grid-template-columns:50px 125px 1fr 35px;gap:18px}.app-row h3{font-size:23px}.app-row p{font-size:10px}.app-row img{width:45px;height:45px}.app-arrow{width:35px;height:35px}.package{padding:25px 19px}.faq-section{grid-template-columns:1fr;gap:40px}.site-footer{gap:20px}.site-footer p{display:none}.site-footer nav{margin-left:auto}}
@media(max-width:650px){html{scroll-padding-top:15px}.site-header{height:78px;padding:0 5vw;gap:10px}.epsom-brand{gap:5px}.epsom-brand>span{font-size:16px}.epsom-brand small{font-size:4.5px;letter-spacing:.17em}.header-actions{gap:13px}.header-actions .login{display:none}.header-actions #language{font-size:8px}.header-actions #language span{display:none}.join-button{padding:12px 15px;font-size:10px;gap:10px}.site-header .epsom-brand img{width:28px;height:28px}.hero-shell{padding:0 12px 25px}.experience{height:calc(100svh - 137px);min-height:660px;max-height:850px}.experience .header{top:23px;font-size:5px;left:7%;right:7%}.experience .brand{gap:6px}.title-wrap{top:17%}.title-wrap h1{font-size:19vw}.title-wrap.long-title h1{font-size:15.5vw}.eyebrow{font-size:5.5px}.invitation{top:56%;left:7%}.invitation-number{font-size:6px}.book-button{font-size:17px}.book-button>span:last-child{font-size:21px}.invitation p{font-size:8px;max-width:155px;line-height:1.7;margin:8px 0}.free-call{font-size:5px}.coordinates{right:5%;top:29%;gap:20px}.coordinates span{font-size:10px}.coordinates small{font-size:4px}.journey{top:77%;height:11%;left:6%;right:6%}.stop-info>span{font-size:7px;letter-spacing:-.04em}.stop-info small{font-size:4px;letter-spacing:0}.stop-info{min-width:65px;top:43px;gap:5px}.stop-marker{border-width:2px}.stop:first-child .stop-info{transform:translateX(-20%)}.stop:last-child .stop-info{transform:translateX(-80%)}.track{stroke-width:2}.stage-footer{bottom:3%;left:6%;right:5%}.concept-label{font-size:4px;max-width:120px;letter-spacing:.08em}.controls{gap:8px}.next-control{width:38px;height:38px}.outside-caption{font-size:4px;letter-spacing:.08em;margin-top:14px}.section{padding:64px 0;margin-left:7%;margin-right:7%}.section-heading{display:block;margin-bottom:32px}.section h2{font-size:40px}.section-kicker{font-size:6px;margin-bottom:15px}.section-intro{font-size:12px;line-height:1.8;max-width:100%;margin-top:22px}.role-tabs{gap:0;justify-content:space-between;margin-bottom:23px}.role-tabs button{font-size:10px;gap:6px;padding:0 3px 14px}.role-dot{width:4px;height:4px}.role-panel{display:flex;flex-direction:column;gap:0;align-items:stretch}.role-photo{height:320px;min-height:320px}.role-copy{padding:33px 0 0;max-width:100%}.role-copy .section-kicker{font-size:6px;margin-bottom:15px}.role-copy h3{font-size:35px;margin-bottom:18px}.role-copy>p:not(.section-kicker){font-size:12px}.role-copy li{font-size:10px}.photo-caption{font-size:5px;left:20px;bottom:22px}.photo-orbit{height:42px;width:42px;font-size:24px}.app-row{grid-template-columns:43px 1fr 35px;column-gap:18px;row-gap:12px;padding:25px 0}.app-row p{grid-column:2;grid-row:2;font-size:11px;margin:0;line-height:1.7}.app-row img{grid-column:1;grid-row:1;width:43px;height:43px}.app-row>div{grid-column:2;grid-row:1}.app-arrow{grid-column:3;grid-row:1}.app-index{font-size:5px}.app-row h3{font-size:24px;margin-top:5px}.app-row:hover{padding-left:0;padding-right:0}.package-grid{grid-template-columns:1fr 1fr}.package{padding:22px 16px;min-height:307px}.package:nth-child(3){border-right:1px solid #dcd7cd}.package:nth-child(2n){border-right:0}.package:nth-child(4){border-bottom:1px solid #dcd7cd}.package:last-child{grid-column:span 2;min-height:260px;border-right:0}.package .price{font-size:30px}.package h3{font-size:18px}.package-number{margin-bottom:24px}.package .package-scope{font-size:9px}.package>p:not(.package-number,.price,.package-scope){font-size:9px}.package>a{font-size:9px}.price-note{font-size:8px;line-height:1.8}.faq-section{gap:33px}.faq-list summary{font-size:13px}.faq-list details{padding:20px 0}.faq-list details p{font-size:11px}.closing-section{padding:58px 24px 65px}.closing-section>img{width:55px;height:55px}.closing-section h2{font-size:38px;margin:22px 0 27px}.closing-section .section-kicker{font-size:6px}.closing-actions{flex-direction:column;gap:14px}.closing-actions .join-button{font-size:11px;padding:15px 24px}.whatsapp-link{font-size:10px}.closing-note{font-size:7px;margin-top:19px}.site-footer{padding:25px 5vw;gap:12px;flex-wrap:wrap;justify-content:space-between}.site-footer .epsom-brand{gap:3px}.site-footer .epsom-brand span{font-size:12px}.site-footer .epsom-brand img{width:23px;height:23px}.site-footer nav{font-size:8px;gap:15px;margin:0}.back-top{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .reveal{opacity:1;transform:none}.role-photo>img{transition:none}}

.motion-hint>span:last-child{font-size:5.5px;letter-spacing:.08em}

@media(min-width:651px){.invitation{top:38%}}
/* A quiet world behind the journey, with cursor and scroll parallax. */
.page-globe{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;user-select:none;contain:paint}
.globe-image{display:block;position:absolute;height:auto;max-width:none;pointer-events:none;user-select:none;clip-path:circle(44.6% at 50% 50%);will-change:transform;backface-visibility:hidden}
.page-globe .globe-image{width:clamp(650px,84vw,1050px);left:79%;top:60%;opacity:.18;mix-blend-mode:multiply;transform:translate3d(calc(-50% + var(--globe-x,0px)),calc(-50% + var(--globe-y,0px) + var(--globe-page-scroll,0px)),0)}
.site-header,.hero-shell,.closing-section,.site-footer{position:relative;z-index:1}
.section{z-index:1}
.hero-globe{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:paint}
.hero-globe .globe-image{width:clamp(600px,66vw,940px);left:73%;top:39%;opacity:.30;mix-blend-mode:multiply;transform:translate3d(calc(-50% + var(--globe-x,0px)),calc(-50% + var(--globe-y,0px) + var(--globe-hero-scroll,0px)),0)}
@media(max-width:650px){.hero-globe .globe-image{width:157%;left:72%;top:36%;opacity:.24}.page-globe .globe-image{width:160vw;left:91%;top:61%;opacity:.13}}
@media(prefers-reduced-motion:reduce){.globe-image{will-change:auto!important;transform:translate(-50%,-50%)!important}}
