/* An immersive architectural scene, inspired by the depth and light of the reference. */
.header{background:#060e30;color:#edf4fc;height:88px}.brand strong{color:#eef5ff}.brand small{color:#a0b6d3}.nav a:after{background:#77cbff}.nav-cta{border-color:#597194}.menu span{background:#d7e7f6}.hero{margin:0;background:#050c2c;min-height:740px;height:calc(100svh - 88px);max-height:1060px}.hero-photo{background:radial-gradient(ellipse at 62% 42%,#152e6922,#070e3022 48%,#040820aa 90%),linear-gradient(150deg,#101b55,#040a29 70%)}.hero-shade{background:linear-gradient(90deg,#050d3233,transparent 45%),linear-gradient(0deg,#040a2999,transparent 24%);pointer-events:none}.hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-content{position:absolute;left:4.6%;right:auto;top:66px;padding:0;max-width:37%;width:37%;text-align:start;pointer-events:none}.hero-content .eyebrow{font-size:8px;letter-spacing:2.4px;margin-bottom:27px}.hero h1{font-size:clamp(58px,5.6vw,93px);line-height:1.5;font-weight:400;letter-spacing:-2px}.hero-description{font-size:13px;max-width:290px;line-height:2;color:#9bb0cf;margin-top:23px}.hero-outline{color:#91caff}.button-white{background:#f0f4f4;color:#143a6c}.hero-top{inset-inline:4.6%;top:24px;font-size:10px}.hero-location{opacity:.55}.hero-bottom{inset-inline:4.6%;bottom:26px}.scene-controls{position:absolute;left:43%;right:6%;bottom:145px;display:flex;gap:32px;justify-content:center}.scene-tab{display:flex;gap:9px;align-items:center;background:#19366855;border:1px solid #7196cc33;padding:13px 16px;color:#a1bce3;backdrop-filter:blur(6px);font-size:11px;transition:background .3s,border-color .3s,transform .3s}.scene-tab.active{border-color:#a9dbf388;background:#24539455;color:#e4f6ff;transform:translateY(-4px)}.scene-tab small{font:8px Arial;color:#7798c1;margin-inline-start:10px}.scene-dot{width:5px;height:5px;border-radius:50%;background:#7db8ff;box-shadow:0 0 10px #6abaff}.scene-tab.active .scene-dot{background:#daf9ff;box-shadow:0 0 15px #6df5ff}.scene-caption{position:absolute;right:6%;bottom:82px;display:flex;flex-direction:column;gap:9px;width:240px;color:#b2cbe5;font-size:11px}.scene-caption-kicker{font:7px Arial;letter-spacing:2px;color:#6f8ebd}.scene-progress{height:1px;background:#7595c633;margin-top:5px;direction:ltr}.scene-progress i{height:1px;display:block;width:0;background:#7ccfff;box-shadow:0 0 5px #7ccfff}.scene-caption #scene-caption-text{min-height:17px}.hero-caption{font-size:10px}.services-nav{position:relative}.services-toggle{display:flex;align-items:center;gap:9px;color:inherit;border:0;background:none;padding:8px 0;font-size:14px}.chevron{font:16px Arial;color:#8ba6c9;transition:transform .3s}.services-toggle[aria-expanded=true] .chevron{transform:rotate(180deg)}.service-links{position:absolute;top:48px;inset-inline-start:-22px;width:280px;background:#f3f5ee;padding:16px 22px;color:#213b51;box-shadow:0 15px 45px #0003;display:grid;z-index:25}.service-links[hidden]{display:none}.service-links a{display:flex;align-items:center;justify-content:space-between;font-size:13px;padding:13px 0;border-bottom:1px solid #d7ded9;transition:color .25s}.service-links a:last-child{border-bottom:0}.service-links a:hover{color:#1d65b7}.service-links a:after{display:none}.footer-brand strong{color:#143b86}.footer-brand small{color:#576777}[dir=ltr] .hero-content{left:4.6%;right:auto;max-width:38%;width:38%;padding:0;margin:0}[dir=ltr] .hero h1{font-size:clamp(58px,5.7vw,90px);line-height:1.1;letter-spacing:-4px;margin-bottom:26px}[dir=ltr] .hero-shade{background:linear-gradient(90deg,#050d3233,transparent 45%),linear-gradient(0deg,#040a2999,transparent 24%)}[dir=ltr] .hero-top,[dir=ltr] .hero-bottom{direction:ltr}[dir=ltr] .hero-caption{justify-content:start}[dir=ltr] .scene-controls{direction:ltr}[dir=ltr] .scene-caption{right:6%;left:auto}[dir=ltr] .services-toggle{font-size:12px}
@media(max-width:1100px){.hero-content{left:5%;top:90px;max-width:38%;width:38%}.hero h1{font-size:58px}.hero-content .eyebrow{font-size:7px}.hero-description{font-size:12px}.scene-controls{gap:10px;left:43%;right:4%;bottom:155px}.scene-tab{padding:11px;font-size:10px;gap:7px}.scene-tab small{margin-inline-start:0}.scene-caption{bottom:90px}.hero-top{font-size:9px}.services-toggle{font-size:13px}[dir=ltr] .hero h1{font-size:60px}}
@media(max-width:780px){.header{height:83px}.hero{--hero-scene-height:clamp(830px,calc(100svh - 83px),1080px);margin:0;height:auto;min-height:0;max-height:none;padding:calc(var(--hero-scene-height) * .43 + 62px) 0 32px}.hero-canvas{height:var(--hero-scene-height)}.hero-content,[dir=ltr] .hero-content{position:relative;top:auto;left:auto;right:auto;max-width:86%;width:86%;padding:0;margin:0 auto}.hero h1{font-size:52px;line-height:1.35}.hero h1 br{display:none}.hero h1 span{display:block}.hero-content .eyebrow{font-size:7px;letter-spacing:2px;margin:0 0 14px}.hero-description{font-size:12px;margin:15px 0 20px;max-width:330px}.hero-shade,[dir=ltr] .hero-shade{background:linear-gradient(0deg,#040a2966,transparent 50%)}.hero-top{display:none}.scene-controls{top:calc(var(--hero-scene-height) * .43 + 10px);bottom:auto;left:7%;right:7%;justify-content:center;gap:8px}.scene-tab{padding:9px 11px;font-size:9px}.scene-caption{right:7%;bottom:78px;width:210px;font-size:10px}.hero-caption{font-size:8px}.hero-bottom{inset-inline:7%;bottom:22px}.scene-tab small{font-size:7px}.nav{background:#0b173c;top:83px}.services-nav{width:100%}.services-toggle{width:100%;justify-content:space-between;font-size:14px}.service-links{position:static;background:#142448;box-shadow:none;color:#c7d8ed;width:100%;padding:0 16px;margin-top:10px;max-height:270px;overflow:auto}.service-links a{border-color:#ffffff11;font-size:12px}.service-links a:hover{color:white}[dir=ltr] .hero h1{font-size:50px;letter-spacing:-2px;line-height:1.1}[dir=ltr] .hero-content{top:auto}[dir=ltr] .scene-caption{right:7%}.footer-brand strong{color:#143b86}}
.material-image{background:#172c47;overflow:hidden}.material-image:before{content:'';position:absolute;inset:0;background:url('assets/photos/outdoor-seating-07.webp') center/cover}.material-image:after{z-index:1}
@media(prefers-reduced-motion:reduce){.scene-tab{transition:none}}

/* Capture gestures only over the drawing, leaving the page and controls scrollable. */
.scene-orbit{position:absolute;left:43%;right:0;top:0;bottom:200px;z-index:0;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}.scene-orbit.dragging{cursor:grabbing}
@media(max-width:780px){.scene-orbit{left:0;right:0;bottom:auto;height:calc(var(--hero-scene-height) * .43)}}
