.visit-page{background:#101411;color:#f3ede2}.visit-page .top{color:#f3ede2}.visit-hero{min-height:700px;height:90svh;position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;text-align:center;padding:175px 7% 80px;background:radial-gradient(ellipse at 50% 80%,#4c49352b,transparent 70%),#0b110e}.visit-hero-copy{position:relative;z-index:2}.visit-hero .eyebrow{color:#d8b998;letter-spacing:4px}.visit-hero h1{font-size:clamp(44px,6vw,86px);line-height:1.3;letter-spacing:-.065em;font-weight:400;margin:32px 0 22px;text-shadow:0 0 60px #e5d3a32b}.visit-hero p{font-size:clamp(22px,2.7vw,36px);line-height:1.7;color:#cbc9bb;margin:0 0 35px}.visit-scroll{display:inline-block;padding:14px 25px;border:1px solid #b9a58c55;background:#16221c66;font-size:13px}.visit-halo{position:absolute;z-index:0;width:min(1000px,95vw);height:400px;top:35%;border:1px solid #d7ba8666;border-radius:50%;box-shadow:0 0 65px #cfb07d29,inset 0 0 45px #c5b89912;transform:rotate(-12deg);animation:visit-orbit 14s ease-in-out infinite alternate}.visit-halo:before{content:"";position:absolute;inset:-25%;border-radius:50%;background:conic-gradient(from 30deg,transparent,#668c6744,transparent,#d3ae7e55,transparent);filter:blur(60px);animation:visit-glow 22s linear infinite}.visit-horizon{position:absolute;bottom:30px;font-size:10px;letter-spacing:7px;color:#92978c}.visit-locations{padding:90px 7%;max-width:1200px;margin:auto;text-align:center}.visit-locations>h2{font-size:clamp(34px,4vw,58px);font-weight:400;line-height:1.4;letter-spacing:-.04em;margin:26px 0}.visit-intro{font-size:15px;line-height:2;color:#b0b2a7;margin-bottom:55px}.visit-cards{display:grid;grid-template-columns:1fr 1fr;gap:25px}.visit-card{background:linear-gradient(135deg,#252c244d,#161d19);border:1px solid #77836944;padding:40px 28px;position:relative;overflow:hidden}.visit-index{font-size:10px;letter-spacing:3px;color:#bda385}.visit-card h3{font-size:34px;font-weight:400;margin:23px 0}.visit-card p{font-size:16px;line-height:1.9;min-height:61px;margin:0 auto 20px;max-width:360px;word-break:keep-all}.visit-status{font-size:11px;color:#a4ad9a}.visit-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:25px}.visit-actions a,.visit-actions button{font-size:12px;padding:13px 18px;background:none;color:#e6d5bb;border:1px solid #8b917554}.visit-contact{margin-top:80px;padding:60px 20px;border-top:1px solid #656e5b55}.visit-contact h2{font-size:clamp(25px,3vw,39px);font-weight:400;line-height:1.5}.visit-contact p{color:#b0b2a7;font-size:14px;line-height:1.9}.visit-contact>a{display:block;font-size:clamp(36px,5vw,64px);letter-spacing:-.05em;color:#ddc4a0;margin:28px 0 15px}.visit-contact small{color:#9fa597;font-size:11px}.visit-page .footer{text-align:center;background:#0b110e;color:#949b8c}.visit-page a:focus-visible,.visit-page button:focus-visible{outline:2px solid #e7c99f;outline-offset:4px}.plain .visit-halo,.plain .visit-halo:before{animation:none}.visit-card:hover{border-color:#baa38188}@keyframes visit-orbit{to{transform:rotate(8deg) scale(1.07);box-shadow:0 0 95px #cfb07d3d,inset 0 0 45px #c5b89912}}@keyframes visit-glow{to{transform:rotate(360deg)}}@media(max-width:800px){.visit-hero{height:85svh;min-height:620px;padding-top:160px}.visit-hero h1{font-size:42px}.visit-hero p{font-size:25px}.visit-halo{width:120vw;height:300px;top:35%}.visit-horizon{letter-spacing:3px;font-size:9px}.visit-locations{padding:65px 6%}.visit-cards{grid-template-columns:1fr;gap:20px}.visit-card{padding:34px 20px}.visit-contact{margin-top:55px;padding:40px 0}}@media(prefers-reduced-motion:reduce){.visit-halo,.visit-halo:before{animation:none}}
.visit-scene{position:absolute;inset:0;margin:0;z-index:0;overflow:hidden;background:#111}
.visit-scene img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.5) saturate(.55);animation:visit-photo-breathe 22s ease-in-out infinite alternate}
.visit-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#07100d66,#07100d25 40%,#101411d9),radial-gradient(ellipse at center,transparent,#070b09aa)}
.visit-scene figcaption{position:absolute;z-index:1;bottom:57px;left:7%;right:7%;text-align:center;font-size:10px;color:#b5b9af;line-height:1.7}
.visit-hero h1{text-shadow:0 3px 35px #0009}
.visit-hero .eyebrow{color:#d5c6b6}
.visit-hero p{color:#e0ded4}
.visit-scroll{background:#10141177;backdrop-filter:blur(8px);border-color:#d5c6b666}
.visit-card{background:#19201c;border-color:#65706244}
.visit-card h3{font-size:clamp(25px,3vw,34px)}
.plain .visit-scene img{animation:none;transform:none}
@keyframes visit-photo-breathe{to{transform:scale(1.045)}}
@media(prefers-reduced-motion:reduce){.visit-scene img{animation:none;transform:none}}
.visit-hero{background:#0b110f}
.visit-scene{background:radial-gradient(ellipse at 50% 60%,#364c3625,transparent 65%),#0b110f}
.visit-scene img{display:none}
.visit-scene figcaption{display:none}
.visit-scene:before{content:"";position:absolute;inset:-35%;background:radial-gradient(ellipse at 25% 45%,#e4bb7770,transparent 42%),radial-gradient(ellipse at 75% 50%,#639a8266,transparent 43%),radial-gradient(ellipse at 50% 85%,#ad73483d,transparent 45%);filter:blur(55px);transform:translate3d(-6%,3%,0) scale(1);animation:visit-light-field 12s ease-in-out infinite alternate}
.visit-scene:after{inset:-30%;background:linear-gradient(115deg,transparent 36%,#fae6b80a 43%,#e2c78f40 49%,#bed9bd17 55%,transparent 64%);transform:translate3d(-20%,0,0) rotate(-10deg);animation:visit-light-sweep 17s ease-in-out infinite alternate;mix-blend-mode:screen;filter:blur(24px)}
.visit-hero-copy{animation:visit-copy-in 1.2s cubic-bezier(.2,.7,.2,1) both}
.visit-hero h1{text-shadow:0 0 65px #e4c99d40}
.visit-horizon{color:#b9c2b0}
.plain .visit-scene:before,.plain .visit-scene:after,.plain .visit-hero-copy{animation:none;transform:none}
@keyframes visit-light-field{to{transform:translate3d(6%,-5%,0) scale(1.12);filter:blur(70px)}}
@keyframes visit-light-sweep{to{transform:translate3d(20%,4%,0) rotate(8deg)}}
@keyframes visit-copy-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(max-width:800px){.visit-scene:before{filter:blur(40px);animation-duration:16s}.visit-scene:after{filter:blur(18px)}}
@media(prefers-reduced-motion:reduce){.visit-scene:before,.visit-scene:after,.visit-hero-copy{animation:none;transform:none}}
