/* Lex & White Studios — isolated homepage styles. */
:root{color-scheme:dark;--dark:#0A0F1A;--blue:#3EA6FF;--silver:#E6EAF0;--light:#F7F8FA;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--silver);background:var(--dark);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--blue);outline-offset:7px;border-radius:2px}.skip-link{position:fixed;top:16px;left:16px;z-index:10;padding:12px 18px;background:var(--light);color:var(--dark);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.entrance{min-height:740px;min-height:100svh;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px 130px;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#10233755,transparent 48%),var(--dark)}
.identity{width:min(850px,90vw);text-align:center;position:relative}.horizon{display:block;width:100%;height:auto;margin:0 auto -12px;overflow:visible}.horizon-arc{transform-origin:400px 81px;animation:form-horizon 1.15s .35s both}.horizon-point{animation:light-appears .8s both}.wordmark{font-size:clamp(27px,5.2vw,62px);font-weight:400;line-height:1.3;letter-spacing:.27em;margin:0;padding-left:.27em;animation:reveal .85s 1.05s both}.wordmark>span{display:block}.wordmark .studios{font-size:.45em;letter-spacing:.65em;padding-left:.65em;margin-top:12px;color:#c7d3e0}.tagline{font-size:clamp(10px,1.45vw,15px);letter-spacing:.48em;padding-left:.48em;margin:37px 0 0;animation:reveal .8s 1.65s both}.enter{position:absolute;bottom:9%;font-size:12px;letter-spacing:.17em;text-transform:uppercase;display:flex;align-items:center;gap:18px;padding:14px 5px;color:#c7d3e0;animation:reveal .6s 2s both}.enter span{color:var(--blue);font-size:20px;transition:transform .25s}.enter:hover span{transform:translateY(4px)}
.studio{color-scheme:light;background:var(--light);color:var(--dark);scroll-margin-top:0}.studio:focus{outline:none}.studio-header{max-width:1280px;margin:auto;padding:32px 48px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #0a0f1a14;gap:30px}.small-brand{font-size:13px;font-weight:600;letter-spacing:.19em;line-height:1.8}.small-brand span{display:block;font-size:9px;letter-spacing:.38em}.studio-header nav{display:flex;gap:32px;font-size:13px}.studio nav a:hover{text-decoration:underline;text-underline-offset:5px}.studio-content{max-width:1280px;margin:auto;padding:105px 48px 100px}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:600;color:#526378;margin:0 0 27px}h2{font-size:clamp(40px,5.4vw,68px);line-height:1.08;letter-spacing:-.045em;font-weight:500;margin:0}.introduction{font-size:17px;line-height:1.8;color:#526071;margin:28px 0 64px}.destinations{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;scroll-margin-top:40px}.destination{border-top:1px solid #aebac8;position:relative;padding:24px 0 44px;transition:border-color .2s}.destination:hover{border-color:#1676bb}.destination-number{font-size:9px;letter-spacing:.14em;color:#526071}.destination h3{font-size:28px;font-weight:500;letter-spacing:-.025em;margin:30px 0 12px}.destination p{font-size:14px;line-height:1.65;color:#526071;max-width:205px;margin:0}.destination-arrow{display:block;color:#176fac;margin-top:25px;font-size:23px;transition:transform .2s}.destination:hover .destination-arrow{transform:translate(3px,-3px)}footer{max-width:1280px;margin:auto;padding:0 48px 30px}.footer-top{border-top:1px solid #0a0f1a20;padding:35px 0;display:flex;justify-content:space-between;align-items:center;gap:24px}.footer-top p{font-size:11px;letter-spacing:.13em;font-weight:600;line-height:1.8;margin:0}.footer-top p span{display:block;font-size:12px;letter-spacing:0;font-weight:400;color:#526071;margin-top:5px}footer nav{display:flex;gap:24px;flex-wrap:wrap;font-size:12px;color:#526071}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:18px;border-top:1px solid #0a0f1a14;color:#526071}.footer-bottom small{font-size:11px}.footer-bottom nav{font-size:11px}
@keyframes light-appears{from{opacity:0}to{opacity:1}}@keyframes form-horizon{from{opacity:0;transform:scaleX(.04)}to{opacity:1;transform:scaleX(1)}}@keyframes reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.identity{width:900px}}
@media(max-width:760px){.entrance{padding-bottom:130px}.identity{width:94vw}.horizon{margin-bottom:0}.wordmark{font-size:clamp(25px,6.1vw,44px);letter-spacing:.18em;padding-left:.18em}.tagline{margin-top:28px;font-size:10px;letter-spacing:.33em}.studio-header{padding:25px 24px;align-items:flex-start;flex-direction:column;gap:22px}.studio-header nav{width:100%;justify-content:space-between;gap:14px}.studio-content{padding:66px 24px 50px}.introduction{font-size:16px;margin-bottom:45px}.destinations{grid-template-columns:repeat(2,1fr);gap:20px}.destination h3{font-size:26px}.destination p{font-size:13px}.destination{padding-bottom:20px}.wide-only{display:none}footer{padding:0 24px 28px}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}footer nav{gap:20px}.enter{bottom:10%}}
@media(max-height:500px) and (orientation:landscape){.entrance{min-height:540px}.identity{width:550px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Align the studio masthead/footer with the wider Horizon site.
   The approved entrance, animation and destination layout are unchanged. */
.small-brand{display:inline-flex;align-items:center;gap:14px}
.home-brand-mark{width:58px;height:36px;flex-shrink:0;color:#17689f}
.small-brand .home-brand-text{font:inherit;letter-spacing:inherit}
.small-brand .home-brand-text>span{display:block;font-size:9px;letter-spacing:.38em}
.studio-header nav a{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
.studio footer{max-width:none;background:#0A0F1A;color:#E6EAF0;padding:44px max(48px,calc((100% - 1184px)/2)) 26px}
.studio .footer-top{border-top:0;padding-top:0}
.studio .footer-top p span,.studio footer nav,.studio .footer-bottom{color:#b6c5d8}
.studio .footer-bottom{border-color:#344154}
.studio footer nav a{display:inline-flex;align-items:center;min-height:44px}
.studio footer a:focus-visible{outline-color:#3EA6FF}
@media(max-width:760px){.studio footer{padding:36px 24px 24px}}
