@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--bg:#101312;--panel:#181c1a;--gold:#d9b776;--bright:#ead1a0;--text:#f4f4f0;--muted:#c1c5c0;--line:#ffffff20;--max:1320px;color-scheme:dark;font-family:'DM Sans',Arial,sans-serif;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);line-height:1.7}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;color:var(--gold);line-height:1.2;font-weight:500}h1{font-size:clamp(2.9rem,5.65vw,5.55rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,3.15vw,3rem);letter-spacing:-.045em}h3{font-size:1.3rem;letter-spacing:-.02em}p{margin:1.15rem 0;color:var(--text)}em{font-style:normal;color:var(--bright)}button{border:0}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.skip{position:fixed;top:-100px;left:16px;z-index:9999;background:var(--gold);color:#101312;padding:10px}.skip:focus{top:10px}.header{position:fixed;inset:0 0 auto;z-index:100;transition:background .3s,box-shadow .3s,border-color .3s;border-bottom:1px solid #ffffff24;background:linear-gradient(#070c0db0,transparent)}.header.scrolled,.header.menu-open{background:#101312f5;backdrop-filter:blur(18px);box-shadow:0 6px 35px #0003}.nav-wrap{max-width:1440px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;transition:padding .3s}.scrolled .nav-wrap{padding-top:15px;padding-bottom:15px}.brand{display:inline-block;flex-shrink:0}.brand img{width:226px;height:auto}.header nav{display:flex;align-items:center;gap:34px;color:var(--gold);font-size:.94rem}.header nav>a{position:relative;padding:8px 0}.header nav>a:after{content:'';position:absolute;bottom:0;left:0;height:1px;width:0;background:var(--gold);transition:width .25s}.header nav>a:hover:after,.header nav>a[aria-current]:after{width:100%}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--gold);color:#161a16;padding:15px 25px;min-height:54px;font-size:.94rem;font-weight:650;border:1px solid var(--gold);border-radius:3px;transition:background .25s,transform .25s,box-shadow .25s;text-align:center;line-height:1.5}.button:hover{background:var(--bright);transform:translateY(-2px);box-shadow:0 8px 25px #0002}.nav-cta{background:transparent;color:var(--gold);min-height:46px;padding:11px 21px;gap:24px}.nav-cta:hover{color:#101312}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;overflow:hidden}.home-hero{min-height:780px;min-height:100svh;display:flex;align-items:center}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.home-hero .hero-photo{object-position:60% center;animation:hero-arrive 1.5s ease-out both}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(5,13,17,.88),rgba(8,15,18,.66) 40%,rgba(4,12,14,.1) 78%),linear-gradient(0deg,#101312b8,transparent 30%,#03080b20)}.hero-content{width:100%;max-width:1440px;margin:0 auto;padding:170px 5% 160px}.hero-content .eyebrow{margin-bottom:24px}.eyebrow{color:var(--gold);font-size:.76rem;font-weight:600;letter-spacing:.18em;line-height:1.6;margin:0 0 18px;text-transform:uppercase}.small-line{display:inline-block;width:32px;height:1px;background:var(--gold);vertical-align:middle;margin-right:14px}.hero h1{max-width:1000px;color:var(--gold)}.hero-description{max-width:520px;font-size:1.1rem;color:#fafaf3e6;line-height:1.85;margin:28px 0 32px}.hero-buttons{display:flex;gap:15px;flex-wrap:wrap}.button-outline{color:var(--text);background:transparent;border-color:#ffffff73;min-width:146px}.button-outline:hover{background:#ffffff12}.hero-bottom{position:absolute;bottom:30px;left:5%;right:5%;border-top:1px solid #ffffff36;padding-top:23px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.7rem;font-weight:500;letter-spacing:.16em}.hero-bottom a{color:var(--gold)}.hero-bottom a span{font-size:1.2rem;margin-left:20px}.service-ribbon{display:flex;justify-content:center;align-items:center;gap:4%;background:#1b201c;border-bottom:1px solid var(--line);padding:27px 4%;color:var(--gold);font-size:1rem}.service-ribbon i{font-style:normal;font-size:1.2rem}.section{max-width:1440px;padding:100px 5%;margin:auto}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.intro-text p:first-child{margin-top:0}.intro-text{max-width:590px}.intro-text .text-link{margin-top:12px}.text-link{display:inline-flex;align-items:center;gap:25px;color:var(--gold);font-size:.95rem;border-bottom:1px solid #d9b77670;padding-bottom:5px;transition:gap .25s}.text-link:hover{gap:34px}.services-section{padding-top:30px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:40px}.section-heading .text-link{flex-shrink:0}.section-heading h2{max-width:740px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.service-card{display:flex;flex-direction:column;background:var(--panel);border:1px solid #ffffff0b;transition:transform .35s,border-color .35s;min-width:0}.service-card:hover{transform:translateY(-6px);border-color:#d9b77665}.card-image{height:270px;position:relative;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;object-position:center 34%;transition:transform .6s;opacity:.9}.service-card:hover img{transform:scale(1.05)}.card-number{position:absolute;top:18px;left:20px;font-size:.8rem;letter-spacing:.14em;color:var(--text);text-shadow:0 1px 4px #000}.card-arrow{position:absolute;right:18px;bottom:18px;width:37px;height:37px;border:1px solid #ffffff70;border-radius:50%;display:grid;place-items:center;background:#13191555;font-size:1.2rem}.card-copy{padding:28px;display:flex;flex-direction:column;flex:1}.category{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#c1c5c0;margin-bottom:12px}.card-copy h3{font-size:1.45rem}.card-copy p{font-size:.97rem;line-height:1.75;margin:16px 0 24px}.card-copy .text-link{align-self:start;font-size:.86rem;border:0;margin-top:auto}.quick-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:30px;margin-top:28px}.quick-services a{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:22px 0;color:var(--gold);font-size:.98rem}.quick-services a:hover{color:var(--bright);border-color:var(--gold)}.quick-services span{font-size:1.2rem}.approach{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:40px;align-items:center}.approach-image{height:620px;position:relative;overflow:hidden}.approach-image img{width:100%;height:100%;object-fit:cover;object-position:52%;filter:brightness(.78)}.image-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#08120cd9);padding:60px 30px 30px;font-size:.75rem;letter-spacing:.14em;color:white}.approach-copy h2{margin-bottom:38px}.step{display:flex;gap:25px;border-top:1px solid var(--line);padding-top:24px;margin-top:20px}.step>span{font-size:.8rem;color:var(--gold);padding-top:4px}.step h3{font-size:1.12rem}.step p{font-size:.95rem;margin:10px 0 0}.cta-band{padding:65px max(5%,calc((100vw - 1296px)/2));background:#20261f;border-top:1px solid #d9b77624;border-bottom:1px solid #d9b77624;display:flex;justify-content:space-between;align-items:center;gap:40px}.cta-band .eyebrow{margin-bottom:14px}.cta-band p:last-child{font-size:.96rem;margin-bottom:0}.cta-band .button{flex-shrink:0}footer{max-width:1440px;margin:auto;padding:70px 5% 28px}.footer-grid{display:grid;grid-template-columns:1.6fr .7fr 1.2fr 1.1fr;gap:35px}.footer-grid .brand img{width:210px}.footer-grid p,.footer-grid a:not(.brand){font-size:.875rem;line-height:1.95}.footer-grid h3{font-size:.93rem;margin:0 0 23px}.footer-grid>div>a:not(.brand){display:block;margin:8px 0}.footer-grid a:hover{color:var(--gold)}.footer-grid p{margin-top:18px}.footer-bottom{margin-top:55px;border-top:1px solid var(--line);padding-top:25px;font-size:.78rem;color:var(--muted);display:flex;justify-content:space-between;gap:24px}.footer-bottom a{color:var(--gold);margin-right:180px}.contact-float{position:fixed;bottom:25px;right:26px;z-index:90;background:var(--gold);color:#111b12;display:flex;align-items:center;gap:12px;box-shadow:0 6px 30px #0007;border-radius:50px;padding:16px 21px;font-size:.85rem;font-weight:650;transition:transform .25s}.contact-float:hover{transform:translateY(-3px)}.contact-float svg{width:25px;height:25px}.inner-hero{min-height:530px;display:flex;align-items:end}.inner-hero .hero-content{padding-top:175px;padding-bottom:75px}.inner-hero h1{font-size:clamp(2.7rem,4.8vw,4.5rem);max-width:1000px}.inner-hero .hero-description{margin-bottom:0;max-width:640px}.inner-hero .hero-photo{object-position:center 35%}.inner-hero .hero-shade{background:linear-gradient(90deg,#0b100ff2,#0b100f97 65%,#0b100f60),linear-gradient(0deg,#10131280,transparent)}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 40px}.filter{padding:12px 18px;background:transparent;color:var(--gold);border:1px solid #ffffff30;border-radius:30px;font-size:.88rem;transition:background .2s}.filter.active,.filter:hover{background:var(--gold);color:#111b12;border-color:var(--gold)}.all-cards{row-gap:35px}.all-cards [hidden]{display:none}.breadcrumb{display:flex;flex-wrap:wrap;gap:14px;max-width:1440px;padding:28px 5% 0;margin:auto;font-size:.85rem;color:var(--muted)}.breadcrumb a{color:var(--gold)}.detail-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:8%;padding-top:55px}.lead{font-size:1.14rem}.subheading{font-size:1.5rem;margin:38px 0 20px}.service-list{list-style:none;padding:0;margin:0}.service-list li{padding:14px 0;display:flex;gap:17px;border-bottom:1px solid var(--line)}.service-list span{color:var(--gold)}.service-note{border-left:2px solid var(--gold);background:var(--panel);padding:24px 28px;margin:34px 0}.service-note h3{font-size:1.05rem}.service-note p{margin:10px 0 0;font-size:.94rem}.enquiry-card{align-self:start;position:sticky;top:125px;background:var(--panel);padding:35px;border:1px solid #d9b77630}.enquiry-card h2{font-size:2.2rem}.enquiry-card p{font-size:.97rem}.enquiry-card .button{width:100%;gap:12px;padding:15px;margin-top:14px}.aside-call{display:block;text-align:center;font-size:.86rem;margin:20px 0;color:var(--gold)}.aside-foot{border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:.83rem;line-height:1.9}details{border-bottom:1px solid var(--line);padding:21px 0}summary{cursor:pointer;color:var(--gold);font-size:1.02rem;line-height:1.5;padding-right:16px}details p{font-size:.95rem;margin-bottom:0}.related{padding-top:30px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.value-grid>div{border-top:1px solid #d9b77660;padding-top:25px}.value-grid span{color:var(--gold);font-size:.85rem}.value-grid h3{margin-top:23px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-option{display:flex;align-items:center;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.contact-option>span:last-child{margin-left:auto;color:var(--gold)}.contact-option strong{display:block;color:var(--gold);font-weight:500}.contact-option small{display:block;color:var(--text);font-size:.85rem;margin-top:2px;overflow-wrap:anywhere}.contact-option:hover strong{color:var(--bright)}.contact-icon{border:1px solid #d9b77655;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;color:var(--gold);flex-shrink:0}.office{margin-top:38px}.office h3{margin-top:30px}.office p{font-size:.95rem}.enquiry-form{background:var(--panel);padding:40px;align-self:start;border:1px solid var(--line)}.enquiry-form h2{font-size:2rem;margin-bottom:28px}.enquiry-form label{display:block;font-size:.88rem;margin:19px 0 8px;color:var(--gold)}input,select,textarea{width:100%;background:#101312;border:1px solid #ffffff30;border-radius:2px;padding:13px 15px;color:var(--text);min-height:50px;font-size:1rem}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#a5aaa4}.form-note{font-size:.82rem;color:var(--muted)}.enquiry-form .button{width:100%;margin-top:8px}.email-compose{display:block;background:none;color:var(--gold);margin:15px auto 0;padding:8px}.enquiry-form #form-status{font-size:.85rem;color:var(--gold)}dialog{max-width:min(530px,calc(100vw - 32px));width:100%;background:#171e19;border:1px solid #d9b77670;color:var(--text);padding:45px;border-radius:7px;box-shadow:0 40px 120px #0008;max-height:calc(100svh - 32px);overflow:auto}dialog::backdrop{background:#020805cc;backdrop-filter:blur(7px)}dialog[open]{animation:dialog-in .25s ease-out}dialog h2{font-size:2.1rem}dialog p{font-size:.94rem}dialog .contact-option{gap:15px}.close-dialog{position:absolute;top:12px;right:13px;color:var(--gold);background:none;font-size:1.8rem;width:40px;height:40px}.dialog-foot{margin-bottom:0;color:var(--muted)}.dialog-foot a{color:var(--gold)}.reveal{transition:opacity .65s ease,transform .65s ease}.motion .reveal:not(.visible){opacity:0;transform:translateY(24px)}@keyframes hero-arrive{from{transform:scale(1.04)}to{transform:scale(1)}}@keyframes dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.hero-content{padding-left:72px;padding-right:72px}.hero-bottom{left:max(5%,calc((100vw - 1296px)/2));right:max(5%,calc((100vw - 1296px)/2))}}
@media(max-width:1100px){.header nav{gap:22px}.brand img{width:198px}.nav-wrap{padding:23px 4%}.section{padding:75px 5%}.cards{gap:20px}.card-image{height:235px}.card-copy{padding:23px}.footer-grid{grid-template-columns:1.3fr .7fr 1fr;gap:30px}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid>div:last-child p{display:inline-block;margin:0 30px 0 0}.footer-grid>div:last-child>a{display:inline-block}.approach{gap:5%}.approach-image{height:610px}.enquiry-card{padding:25px}.detail-layout{gap:5%}.contact-layout{gap:5%}.enquiry-form{padding:30px}}
@media(max-width:800px){.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;background:transparent;padding:12px;width:46px;height:46px}.menu-toggle span{height:1px;width:25px;background:var(--gold);transition:transform .25s}.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}.header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px 5% 30px;background:#101312;box-shadow:0 20px 30px #0005;border-top:1px solid var(--line)}.menu-open nav{display:flex;flex-direction:column;align-items:stretch;gap:14px;max-height:calc(100svh - 100px);overflow:auto}.header nav>a{padding:8px 0}.nav-cta{margin-top:5px}.nav-wrap,.scrolled .nav-wrap{padding:16px 5%}.home-hero{min-height:780px;min-height:100svh}.hero-content{padding:155px 6% 155px}.hero-shade{background:linear-gradient(90deg,#071015e8,#0710158a),linear-gradient(0deg,#10131299,transparent)}.hero h1{font-size:clamp(2.9rem,7.5vw,4.6rem)}.hero-bottom{bottom:26px;left:6%;right:6%;font-size:.65rem}.hero-bottom>span:last-child{display:none}.hero-description{max-width:480px}.service-ribbon{font-size:.82rem;gap:3%;padding:24px 3%}.intro-section{gap:6%}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero~.section .cards .service-card:last-child{grid-column:1/-1}.quick-services{grid-template-columns:repeat(2,minmax(0,1fr))}.approach{grid-template-columns:1fr;gap:45px}.approach-image{height:410px}.approach-copy{max-width:650px}.cta-band{align-items:start;flex-direction:column;gap:25px;padding:50px 5%}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto}.footer-grid>div:last-child p{display:block;margin-top:18px}.footer-bottom a{margin-right:0}.footer-bottom{padding-bottom:65px}.section-heading{align-items:start;flex-direction:column;gap:22px}.detail-layout{grid-template-columns:1fr;gap:45px}.enquiry-card{position:static;max-width:650px;padding:32px}.inner-hero{min-height:490px}.inner-hero .hero-content{padding:155px 5% 55px}.value-grid{gap:22px}.contact-layout{grid-template-columns:1fr;gap:50px}.enquiry-form{max-width:650px}.contact-layout>div{max-width:650px}.related .cards .service-card:last-child{grid-column:auto}}
@media(max-width:540px){.brand img{width:184px}.hero-content{padding:145px 6% 135px}.hero h1{font-size:clamp(2.65rem,10.5vw,3.6rem);line-height:1.14;letter-spacing:-.05em}.hero-content .eyebrow{font-size:.65rem;letter-spacing:.13em;margin-bottom:25px}.small-line{width:20px;margin-right:8px}.hero-description{font-size:1rem;margin-top:24px}.hero-buttons{gap:12px}.hero-buttons .button{padding:14px 17px;gap:18px;font-size:.87rem}.hero-buttons .button-outline{min-width:112px}.hero-bottom{font-size:.57rem;letter-spacing:.07em;gap:10px}.hero-bottom a span{margin-left:8px}.service-ribbon{display:grid;grid-template-columns:1fr 1fr;text-align:center;row-gap:12px;font-size:.85rem}.service-ribbon i{display:none}.section{padding:60px 6%}.intro-section{grid-template-columns:1fr;gap:28px}.intro-text p{font-size:.97rem}.cards{grid-template-columns:1fr}.card-image{height:270px}.card-copy{padding:26px}.home-hero~.section .cards .service-card:last-child{grid-column:auto}.quick-services{grid-template-columns:1fr;margin-top:15px}.quick-services a{padding:19px 0}.approach{padding-top:10px}.approach-image{height:400px}.approach-copy h2{margin-bottom:30px}.step{gap:19px}.cta-band{padding:45px 6%}.footer-grid{grid-template-columns:1fr 1fr;column-gap:20px;row-gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:nth-child(3){grid-column:1/-1;grid-row:3}.footer-grid>div:last-child{grid-column:2;grid-row:2}.footer-grid h3{margin-bottom:15px}.footer-grid p,.footer-grid a:not(.brand){font-size:.8rem;overflow-wrap:anywhere}.footer-bottom{font-size:.7rem;flex-direction:column;gap:10px;margin-top:30px}.contact-float{right:18px;bottom:18px;padding:15px;border-radius:50%}.contact-float span{display:none}.inner-hero{min-height:465px}.inner-hero h1{font-size:2.9rem;overflow-wrap:anywhere}.inner-hero .hero-description{font-size:1rem}.inner-hero .hero-photo{object-position:center 25%}.filter-bar{gap:8px}.filter{font-size:.79rem;padding:10px 13px}.breadcrumb{padding:22px 6% 0;font-size:.75rem;gap:10px}.detail-layout{padding-top:35px}.lead{font-size:1.03rem}.service-note{padding:22px}.enquiry-card{padding:28px}.value-grid{grid-template-columns:1fr;gap:25px}.value-grid h3{margin-top:15px}.contact-option{gap:13px}.contact-option small{font-size:.81rem}.contact-icon{width:38px;height:38px}.enquiry-form{padding:27px 21px}.enquiry-form h2{font-size:1.75rem}dialog{padding:40px 24px 27px}dialog h2{font-size:1.85rem}dialog .contact-icon{display:none}.contact-option>span:last-child{flex-shrink:0}.contact-option>span:nth-child(2){min-width:0}.service-list{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal:not(.visible){opacity:1;transform:none}}
/* Cinematic depth, native scrolling and practical service guides. */
.reading-progress{position:fixed;inset:0 auto auto 0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--gold);z-index:150;pointer-events:none}.cinema{display:block;min-height:800px;min-height:100svh;perspective:1400px}.hero-slide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;visibility:hidden;transition:opacity 1s,visibility 1s;isolation:isolate}.hero-slide.is-active{opacity:1;visibility:visible}.hero-slide .hero-photo{z-index:-2;animation:none;will-change:transform;object-position:62% center}.hero-slide .hero-shade{z-index:-1;background:linear-gradient(90deg,#061015eb,#081314ad 50%,#06120f35),linear-gradient(0deg,#101312d9,transparent 40%)}.hero-slide .hero-content{position:relative;padding-top:180px;padding-bottom:170px;z-index:1}.hero-slide .hero-title{font-size:clamp(2.7rem,4.7vw,4.7rem);line-height:1.13;letter-spacing:-.055em;max-width:850px}.hero-slide .hero-description{max-width:500px}.hero-slide.is-active .hero-content{animation:slide-content .9s ease both}.hero-depth{position:absolute;width:280px;height:350px;right:7%;top:31%;perspective:1100px;transform-style:preserve-3d;z-index:2;transform:translate3d(0,var(--depth-y,0px),0)}.depth-card{position:absolute;inset:0;border:1px solid #d9b77670;border-radius:12px;overflow:hidden;box-shadow:0 35px 70px #0009;transform-style:preserve-3d;transition:transform .6s,box-shadow .6s;background:#1b231e}.depth-card img{height:100%;width:100%;object-fit:cover}.depth-card>span{position:absolute;inset:auto 0 0;padding:70px 22px 24px;background:linear-gradient(transparent,#08120ff2);color:var(--gold);font-size:1.4rem;line-height:1.4}.depth-card small{display:block;font-size:.63rem;letter-spacing:.15em;color:white;margin-bottom:10px}.depth-back{transform:translate3d(65px,-45px,-100px) rotateY(-16deg) rotateZ(9deg)}.depth-front{transform:translate3d(-25px,35px,50px) rotateY(-16deg) rotateZ(-8deg)}.depth-front:hover{transform:translate3d(-30px,20px,85px) rotateY(-4deg) rotateZ(-3deg)}.depth-back:hover{transform:translate3d(80px,-65px,50px) rotateY(-3deg) rotateZ(4deg);z-index:3}.cinema-controls{position:absolute;left:5%;right:5%;bottom:35px;display:flex;align-items:center;gap:35px;border-top:1px solid #ffffff40;padding-top:22px;z-index:4}.slide-dots{display:flex;gap:18px}.slide-dot{background:none;color:#e5dcc9;padding:8px 2px;min-width:40px;border-top:2px solid #ffffff40;font-size:.8rem}.slide-dot.active{color:var(--gold);border-color:var(--gold)}.slide-actions{display:flex;gap:10px}.slide-actions button,.review-controls button{background:transparent;border:1px solid #d9b77670;color:var(--gold);min-width:44px;height:44px;border-radius:50%;font-size:1.1rem}.slide-actions [data-slide-pause]{border-radius:24px;padding:0 17px;font-size:.8rem;min-width:86px}.slide-actions button:hover,.review-controls button:hover{background:var(--gold);color:var(--bg)}.scroll-cue{margin-left:auto;color:var(--gold);font-size:.72rem;letter-spacing:.12em}.service-card{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(var(--lift,0px));transition:transform .2s ease-out,border-color .3s;box-shadow:0 15px 45px #0001}.service-card:hover{--lift:-5px;transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(var(--lift,0px));box-shadow:0 20px 45px #0005}.card-copy{position:relative}.page-jumps{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:35px}.page-jumps a{font-size:.8rem;color:var(--gold);padding:8px 13px;border:1px solid #d9b77650;border-radius:24px}.page-jumps a:hover{background:#d9b77615}.guide-block{margin-top:55px;padding-top:35px;border-top:1px solid #d9b77650;scroll-margin-top:115px}.guide-block h2{font-size:2rem}.guide-title{display:flex;gap:20px;justify-content:space-between;align-items:center}.guide-title .eyebrow{margin-bottom:10px}.print-checklist{flex-shrink:0;background:transparent;color:var(--gold);font-size:.8rem;padding:10px 13px;border:1px solid #d9b77670;border-radius:3px}.documents{background:#1a211b;padding:30px}.documents>p{font-size:.93rem}.documents fieldset{border:0;padding:0;margin:24px 0 0;min-width:0}.check-item{display:flex;gap:15px;padding:15px 0;border-top:1px solid var(--line);align-items:start;font-size:.94rem;cursor:pointer}.check-item input{width:19px;height:19px;min-height:0;flex-shrink:0;margin:4px 0 0;accent-color:var(--gold)}.check-item:has(input:checked) span{color:var(--gold)}.check-progress{color:var(--gold);font-size:.85rem!important}.documents .check-note{font-size:.77rem;color:var(--muted)}.variant summary{font-size:1.1rem}.variant h4{font-size:.86rem;font-weight:600;color:var(--gold);margin:18px 0 0}.variant p{margin:10px 0 0}.process-list{list-style:none;padding:0;margin:25px 0}.process-list li{display:flex;align-items:start;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.process-list span{color:var(--gold);font-size:.8rem;padding-top:3px}.process-list p{margin:0}.source-links{padding-top:10px}.source-links h3{font-size:1rem;margin-bottom:15px}.source-links a{display:block;color:var(--gold);font-size:.85rem;padding:5px 0;overflow-wrap:anywhere}.source-links p{font-size:.75rem;color:var(--muted)}.reviews-section{padding-top:50px;padding-bottom:110px}.review-intro{max-width:300px;font-size:.92rem}.review-slider{border:1px solid #d9b77640;background:radial-gradient(ellipse at 100% 0,#d9b77615,transparent 60%),#19201a;padding:45px 55px;position:relative;perspective:1000px}.review-card{min-height:235px;animation:review-arrive .6s ease both}.review-card[hidden]{display:none}.quote-mark{display:block;font:5rem/1 Georgia,serif;color:var(--gold);height:55px}.review-card blockquote{font-family:Georgia,serif;font-size:clamp(1.6rem,2.7vw,2.5rem);line-height:1.45;font-weight:400;margin:5px 0 25px;max-width:1000px;color:#f2e8d3}.review-author{display:flex;gap:15px;align-items:center}.initials{width:45px;height:45px;border-radius:50%;border:1px solid #d9b77670;display:grid;place-items:center;font-size:.85rem;color:var(--gold)}.review-author h3{font-size:1rem}.review-author p{font-size:.75rem;color:var(--muted);margin:3px 0}.review-controls{margin-top:30px;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.review-controls p{font-size:.78rem;margin:0;color:var(--muted)}#review-count{color:var(--gold)}.review-controls>div{display:flex;gap:10px}.review-source{font-size:.75rem;color:var(--muted)}.review-source a{color:var(--gold)}@keyframes slide-content{from{opacity:0;transform:translate3d(0,22px,0)}to{opacity:1;transform:none}}@keyframes review-arrive{from{opacity:0;transform:rotateY(-6deg) translateX(18px)}to{opacity:1;transform:none}}
@media(min-width:1440px){.hero-depth{right:max(7%,calc((100vw - 1270px)/2))}.cinema-controls{left:max(5%,calc((100vw - 1296px)/2));right:max(5%,calc((100vw - 1296px)/2))}}
@media(max-width:1150px){.hero-depth{width:210px;height:280px;right:6%;top:34%}.hero-slide .hero-title{font-size:4.4vw;max-width:65%}.hero-slide .hero-description{max-width:48%}}
@media(max-width:900px){.hero-depth{display:none}.hero-slide .hero-title{font-size:clamp(2.8rem,7vw,4.5rem);max-width:100%}.hero-slide .hero-description{max-width:530px}.guide-title{flex-direction:column;align-items:start;gap:15px}.review-slider{padding:35px}}
@media(max-width:540px){.cinema{min-height:780px;min-height:max(760px,100svh)}.hero-slide .hero-content{padding:145px 6% 170px}.hero-slide .hero-title{font-size:clamp(2.7rem,10vw,3.5rem)}.cinema-controls{left:6%;right:6%;bottom:25px;gap:16px;flex-wrap:wrap}.slide-dots{gap:12px}.slide-actions{margin-left:auto;gap:7px}.slide-actions button{min-width:38px;height:40px}.slide-actions [data-slide-pause]{min-width:73px;padding:0 12px}.scroll-cue{width:100%;margin:0;font-size:.64rem}.hero-slide .hero-buttons{gap:10px}.hero-slide .hero-buttons .button{padding:13px 16px;font-size:.82rem}.documents{padding:24px 20px}.guide-block h2{font-size:1.75rem}.page-jumps a{font-size:.75rem;padding:8px 10px}.reviews-section{padding-bottom:60px}.review-slider{padding:27px 22px}.review-card{min-height:290px}.review-controls p>span:last-child{display:none}.review-card blockquote{font-size:1.65rem}.review-controls{gap:10px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-content,.review-card,.depth-card,.service-card{animation:none!important;transition:none!important}.hero-photo,.hero-depth{transform:none!important}.service-card:hover{transform:none}.reading-progress{display:none}}
@media print{body{background:white;color:black}header,footer,.cta-band,.contact-float,dialog,.reading-progress,.hero,.breadcrumb,.enquiry-card,.related,.page-jumps,.print-checklist{display:none!important}.section{padding:0;max-width:none}.detail-layout{display:block}h1,h2,h3,h4,p,a,span,label{color:black!important}.guide-block{page-break-inside:auto}.documents{background:white;border:1px solid #999;padding:20px}.check-item{break-inside:avoid}.source-links a{word-break:break-all}.motion .reveal{opacity:1;transform:none}}
@media(min-width:541px){.cinema{min-height:max(800px,100svh)}}
/* Homepage service discovery */
.service-spotlight{position:absolute;right:5%;top:50%;transform:translateY(-48%);z-index:3;width:355px;padding:22px;background:#0e1918df;border:1px solid #d9b77660;border-radius:16px;backdrop-filter:blur(18px);box-shadow:0 30px 70px #0007;perspective:1000px}.spotlight-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.spotlight-heading .eyebrow{font-size:.75rem;margin:0;letter-spacing:.1em}.spotlight-heading>a{font-size:.875rem;color:var(--gold)}.spotlight-group{display:grid;gap:12px}.spotlight-group[hidden],[data-document-panel][hidden]{display:none}.spotlight-card{display:flex;align-items:center;gap:15px;min-height:100px;border:1px solid #ffffff20;border-radius:9px;background:#1c2824;overflow:hidden;animation:service-enter .65s ease both;animation-delay:calc(var(--order)*.09s);transition:transform .25s,border-color .25s}.spotlight-card:hover{transform:translateX(-6px) rotateY(-3deg);border-color:var(--gold)}.spotlight-card>img{width:80px;height:105px;object-fit:cover;flex-shrink:0}.spotlight-card>div{padding:12px 12px 12px 0}.spotlight-card h3{font-size:1.05rem;line-height:1.35}.spotlight-docs{display:inline-block;font-size:.875rem;margin-top:9px;color:#eee5d5;text-decoration:underline;text-underline-offset:4px}.spotlight-controls{display:flex;gap:8px;align-items:center;margin-top:17px}.spotlight-controls>span{font-size:.875rem;color:var(--gold);margin-right:auto}.spotlight-controls button{min-width:40px;min-height:40px;border:1px solid #d9b77660;border-radius:22px;background:transparent;color:var(--gold)}.spotlight-controls [data-services-pause]{padding:0 12px;font-size:.875rem}.home-documents{display:grid;grid-template-columns:1fr 1.1fr;gap:7%;align-items:start}.home-documents label{display:block;margin:25px 0 10px;color:var(--gold)}.home-documents select{width:100%;padding:14px;background:#202a25;color:white;border:1px solid #d9b77680;border-radius:4px}.home-documents .requirements-note{font-size:.875rem;color:var(--muted)}.home-document-panel{background:#19231e;border:1px solid #d9b77650;padding:32px;border-radius:12px}.home-document-panel h3{font-size:1.6rem}.home-document-panel ul{padding-left:22px;margin:24px 0}.home-document-panel li{padding:10px 0;border-bottom:1px solid #ffffff18}.home-document-panel .text-link{font-size:.95rem}.hero-slide .hero-title{max-width:calc(100% - 390px)}.hero-slide .hero-description{max-width:min(500px,calc(100% - 400px))}@keyframes service-enter{from{opacity:0;transform:translateY(16px) rotateX(-10deg)}to{opacity:1;transform:none}}@media(max-width:1100px) and (min-width:901px){.service-spotlight{width:315px;right:4%;padding:18px}.hero-slide .hero-title{max-width:calc(100% - 335px)}.hero-slide .hero-description{max-width:calc(100% - 345px)}}@media(max-width:900px){.cinema{display:flex;flex-direction:column;min-height:0!important;padding-top:135px}.hero-slide{align-items:flex-start}.hero-slide .hero-content{padding:0 6%}.hero-slide.is-active{position:relative}.hero-slide .hero-title,.hero-slide .hero-description{max-width:100%}.service-spotlight{position:relative;top:auto;right:auto;transform:none;width:88%;margin:30px auto 0}.cinema-controls{position:relative;left:auto;right:auto;bottom:auto;width:88%;margin:30px auto}.home-documents{grid-template-columns:1fr;gap:30px}.hero-slide .hero-photo,.hero-slide .hero-shade{position:fixed}.hero-slide{position:absolute}.hero-slide.is-active{isolation:auto}.hero-slide .hero-photo{position:absolute;height:100%;min-height:1300px}.hero-slide .hero-shade{position:absolute;min-height:1300px}.spotlight-card>img{height:90px}.spotlight-card{min-height:90px}}@media(prefers-reduced-motion:reduce){.spotlight-card{animation:none;transition:none}.spotlight-card:hover{transform:none}}@media(max-width:540px){.home-document-panel{padding:24px}.cinema .hero-title{font-size:2.65rem}.spotlight-heading{flex-wrap:wrap}}
/* Readable service-specific document requirements. */
.requirement-group{padding:1.5rem 0;border-bottom:1px solid rgba(210,172,96,.22);scroll-margin-top:7rem}
.requirement-group h3{font-size:1.2rem;line-height:1.45;color:var(--gold,#d2ac60);margin:0 0 1rem}
.required-document-list{padding-left:1.4rem;margin:0;list-style:disc}
.required-document-list li{padding:.3rem 0;line-height:1.7;font-size:1rem;overflow-wrap:anywhere}
.requirement-detail{margin:1rem 0 0;font-size:1rem;line-height:1.65}

/* Native document accordions: full-width touch and keyboard targets. */
.requirement-group{padding:0;margin:14px 0;border:1px solid #d9b77638;border-radius:10px;background:#111b16;overflow:hidden}
.requirement-group>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;padding:19px 22px;list-style:none;font-size:1.1rem;font-weight:500;transition:background .2s}
.requirement-group>summary::-webkit-details-marker{display:none}
.requirement-group>summary:hover{background:#d9b7760c}
.requirement-group>summary:focus-visible{outline-offset:-4px;border-radius:10px}
.requirement-toggle{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid #d9b77680;border-radius:50%;font-size:1.55rem;line-height:1;color:var(--gold)}
.requirement-toggle .collapse-symbol{display:none}
.requirement-group[open] .expand-symbol{display:none}
.requirement-group[open] .collapse-symbol{display:block}
.requirement-group[open]>summary{border-bottom:1px solid #d9b77622;background:#d9b77608}
.requirement-content{padding:20px 24px 26px}
.requirement-group[open] .requirement-content{animation:requirements-reveal .24s ease-out}
@keyframes requirements-reveal{from{opacity:.3;transform:translateY(-5px)}to{opacity:1;transform:none}}
/* Dimensional homepage: layered glass, staggered entrances and pointer depth. */
.cinema{perspective:1600px}
.service-spotlight{background:linear-gradient(135deg,#26342bf2,#0b1515f2);border-color:#dfbf8077;box-shadow:0 42px 85px #0009,inset 0 1px 0 #fff2;transform-style:preserve-3d;transform:translateY(-48%) rotateX(var(--scene-x,0deg)) rotateY(var(--scene-y,0deg));transition:transform .25s ease-out;isolation:isolate}
.service-spotlight::before,.service-spotlight::after{content:'';position:absolute;inset:0;border:1px solid #d9b77635;border-radius:16px;pointer-events:none;z-index:-1;transform-origin:center;background:linear-gradient(135deg,#d9b7760a,transparent)}
.service-spotlight::before{transform:translate3d(14px,15px,-40px) rotateZ(3deg)}
.service-spotlight::after{transform:translate3d(25px,30px,-80px) rotateZ(5deg)}
.spotlight-group{transform-style:preserve-3d;perspective:1000px}
.spotlight-card{position:relative;transform-style:preserve-3d;background:linear-gradient(115deg,#29372c,#14231e);border-color:#d9b77635;box-shadow:0 8px 16px #0003;animation:service-depth-enter .8s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:calc(var(--order)*.1s)}
.spotlight-card>img{transition:transform .5s ease,filter .5s ease;filter:saturate(.85)}
.spotlight-card:hover,.spotlight-card:focus-within{transform:translate3d(-5px,-2px,16px) rotateY(-3deg);box-shadow:8px 16px 25px #0005;border-color:var(--gold)}
.spotlight-card:hover>img{transform:scale(1.06);filter:saturate(1.1)}
.spotlight-card h3 a{display:inline-block;min-height:28px}
.spotlight-controls button:hover{background:var(--gold);color:var(--bg)}
.cinema .hero-slide.is-active .hero-content{animation:hero-depth-enter 1s cubic-bezier(.2,.7,.2,1) both;transform-origin:left center}
.cinema .hero-buttons .button{box-shadow:0 8px 0 #0002,0 18px 32px #0004}
.cinema .hero-buttons .button:hover{transform:translateY(-4px);box-shadow:0 10px 0 #0002,0 24px 36px #0005}
.service-ribbon{background:linear-gradient(100deg,#141d19,#263326,#141d19);box-shadow:inset 0 1px 0 #d9b77644,0 20px 45px #0002}
@keyframes service-depth-enter{from{opacity:0;transform:translate3d(20px,25px,-70px) rotateX(-12deg) rotateY(-9deg)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes hero-depth-enter{from{opacity:0;transform:translate3d(-15px,15px,-35px) rotateY(3deg)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(max-width:900px){.service-spotlight{transform:none;max-width:600px}.service-spotlight::before{transform:translate3d(7px,8px,-20px) rotateZ(1deg)}.service-spotlight::after{display:none}}
@media(max-width:540px){.requirement-group>summary{padding:16px;gap:12px;font-size:1rem}.requirement-content{padding:16px 18px 22px}.requirement-toggle{flex-basis:32px;width:32px;height:32px}.spotlight-card:hover,.spotlight-card:focus-within{transform:none}}
@media(prefers-reduced-motion:reduce){.requirement-group[open] .requirement-content,.cinema .hero-slide.is-active .hero-content,.spotlight-card{animation:none!important}.service-spotlight{transition:none;transform:translateY(-48%)}.spotlight-card:hover,.spotlight-card:focus-within,.cinema .hero-buttons .button:hover{transform:none}.spotlight-card>img{transition:none}.spotlight-card:hover>img{transform:none}}
@media(max-width:900px) and (prefers-reduced-motion:reduce){.service-spotlight{transform:none}}
/* Keep the navigator clean and consistent across page headers. */
.service-spotlight::before,.service-spotlight::after{display:none;content:none}
.inner-hero{min-height:740px;align-items:center}
.inner-hero .hero-content{padding-top:180px;padding-bottom:110px}
.inner-hero h1,.inner-hero .hero-description{max-width:calc(100% - 410px)}
.inner-hero .service-spotlight{top:55%;transform:translateY(-48%) rotateX(var(--scene-x,0deg)) rotateY(var(--scene-y,0deg))}
@media(max-width:1100px) and (min-width:901px){.inner-hero h1,.inner-hero .hero-description{max-width:calc(100% - 350px)}}
@media(max-width:900px){.inner-hero{min-height:0;display:flex;flex-direction:column;align-items:stretch;padding:145px 0 40px}.inner-hero .hero-content{padding:0 6%}.inner-hero h1,.inner-hero .hero-description{max-width:100%}.inner-hero .service-spotlight{top:auto;transform:none;margin-top:30px}}
@media(prefers-reduced-motion:reduce) and (min-width:901px){.inner-hero .service-spotlight{transform:translateY(-48%)}}

/* Photo cinema: three distinct camera moves, no video download required. */
.cinema .hero-slide .hero-photo{animation:none;transform:scale(1.13);transform-origin:50% 48%;backface-visibility:hidden}
.cinema .hero-slide.is-active .hero-photo{animation:photo-camera-one 9s ease-in-out both}
.cinema .hero-slide.is-active[data-slide="1"] .hero-photo{animation-name:photo-camera-two}
.cinema .hero-slide.is-active[data-slide="2"] .hero-photo{animation-name:photo-camera-three}
.cinema[data-motion-paused="true"] .hero-slide .hero-photo{animation-play-state:paused}
@keyframes photo-camera-one{from{transform:perspective(1800px) translate3d(-1.3%,var(--photo-scroll,0px),0) scale(1.13) rotateY(-1deg)}to{transform:perspective(1800px) translate3d(1.3%,var(--photo-scroll,0px),0) scale(1.23) rotateY(1deg)}}
@keyframes photo-camera-two{from{transform:perspective(1800px) translate3d(1.4%,var(--photo-scroll,0px),0) scale(1.23) rotateY(1deg)}to{transform:perspective(1800px) translate3d(-1.4%,var(--photo-scroll,0px),0) scale(1.13) rotateY(-1deg)}}
@keyframes photo-camera-three{from{transform:perspective(1800px) translate3d(0,calc(var(--photo-scroll,0px) + 1%),0) scale(1.14) rotateX(1deg)}to{transform:perspective(1800px) translate3d(-1%,calc(var(--photo-scroll,0px) - 1%),0) scale(1.24) rotateX(-1deg)}}
@media(max-width:900px){.cinema .hero-slide.is-active .hero-photo{animation-name:photo-camera-mobile}}
@keyframes photo-camera-mobile{from{transform:scale(1.06)}to{transform:scale(1.15)}}
@media(prefers-reduced-motion:reduce){.cinema .hero-slide.is-active .hero-photo{animation:none!important;transform:none!important}}
/* Scroll-controlled WebGL architectural experience. */
.tower-experience{position:relative;min-height:190svh;background:radial-gradient(ellipse at 74% 48%,#233c3b 0,#101b1d 33%,#0c1213 70%);border-bottom:1px solid #d9b77630}
.tower-stage{position:sticky;top:90px;min-height:calc(100svh - 90px);max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:5%;padding:20px 5%}
.tower-copy{max-width:490px}.tower-copy h2{font-size:clamp(2.3rem,4.3vw,4rem)}.tower-copy>p:not(.eyebrow){max-width:410px}.tower-instruction{font-size:.9rem;color:var(--gold);margin-top:30px}
.tower-visual{position:relative;height:calc(100svh - 150px);min-height:400px;max-height:850px;overflow:hidden}
#dubai-tower{display:block;width:100%;height:100%;touch-action:pan-y;cursor:grab;outline-offset:-5px}#dubai-tower:active{cursor:grabbing}#dubai-tower[hidden]{display:none}
.tower-fallback{width:100%;height:100%;object-fit:cover;border-radius:12px}.tower-ready .tower-fallback{display:none}
.tower-caption{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:space-between;gap:15px;color:var(--gold);font-size:.75rem;letter-spacing:.12em;pointer-events:none}
.tower-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tower-controls[hidden]{display:none}.tower-controls button{min-width:44px;min-height:44px;background:#d9b7760a;border:1px solid #d9b77665;border-radius:6px;color:var(--gold);padding:8px 14px}.tower-controls button:hover{background:#d9b77622}.tower-controls [data-tower-motion]{font-size:.9rem}
.tower-unavailable{min-height:0}.tower-unavailable .tower-stage{position:relative;top:auto}
@media(max-width:700px){.tower-experience{min-height:170svh}.tower-stage{top:76px;min-height:0;grid-template-columns:1fr;gap:0;padding:25px 6% 10px}.tower-copy h2{font-size:2rem}.tower-copy>p:not(.eyebrow){margin:12px 0;font-size:.95rem}.tower-copy .eyebrow{margin-bottom:8px}.tower-copy .button{display:none}.tower-visual{height:48svh;min-height:280px}.tower-controls button{padding:6px 12px}.tower-caption{font-size:.65rem}.tower-copy{max-width:none}.tower-copy h2 br{display:none}}
@media(prefers-reduced-motion:reduce){.tower-experience{min-height:0}.tower-stage{position:relative;top:0}}
/* Gold and midnight-blue visual direction. */
:root{--bg:#0b111b;--panel:#121e2a;--blue:#74bfe7;--line:#9ac9e224}
.header:not(.scrolled):not(.menu-open){background:linear-gradient(#06101c70,transparent);border-bottom-color:#c7dfef20;backdrop-filter:none}
.header.scrolled,.header.menu-open{background:#091321f5}
.hero-slide .hero-shade{background:linear-gradient(90deg,#06101ceb,#081527ae 53%,#06132238),linear-gradient(0deg,#0b111bdd,transparent 40%)}
.service-spotlight{background:linear-gradient(135deg,#172c3cf2,#0a1422f2);border-color:#d9b77666;box-shadow:0 30px 75px #0007,inset 0 1px 0 #b7dcef20}
.spotlight-card{background:linear-gradient(115deg,#21394a,#101e2b);border-color:#79b5d338}
.spotlight-docs{color:#bddff1}.spotlight-card:hover,.spotlight-card:focus-within{border-color:var(--blue)}
.hero-whatsapp{border-color:#84c8e4;color:#cfebfa;background:#102e434f}
.tower-experience{background:radial-gradient(ellipse at 70% 42%,#173e58 0,#102332 34%,#080f18 72%)}
.tower-copy em{color:#b8dff5}.tower-instruction{color:var(--blue)}
.tower-contact{display:flex;gap:18px;flex-wrap:wrap;align-items:center}.tower-contact .text-link{font-size:.95rem}
.service-ribbon{background:linear-gradient(100deg,#0e1b28,#1d3344,#0e1b28)}
.documents{background:#121f2c}.requirement-group{background:#0c1723}.requirement-group>summary:hover{background:#75bde00b}
.service-card.service-arrived{animation:service-scroll-arrive .7s cubic-bezier(.18,.65,.3,1) backwards;animation-delay:var(--arrival-delay,0s)}
@keyframes service-scroll-arrive{from{opacity:0;transform:perspective(1100px) translate3d(0,36px,-65px) rotateX(8deg)}to{opacity:1;transform:perspective(1100px) translate3d(0,0,0) rotateX(0)}}
@media(max-width:700px){.tower-contact .button{display:inline-flex;font-size:.9rem;padding:10px 16px;min-height:44px}.tower-contact{gap:12px}.tower-visual{height:43svh;min-height:240px}.tower-caption{letter-spacing:.07em}.service-card.service-arrived{animation-name:service-mobile-arrive;animation-duration:.35s;animation-delay:0s}.service-spotlight{backdrop-filter:none}.spotlight-card{animation:service-mobile-arrive .35s ease backwards}.hero-slide .hero-buttons .button{min-height:46px;padding:11px 14px;font-size:.875rem;gap:10px}.cinema .hero-buttons{gap:10px}}
@keyframes service-mobile-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.service-card.service-arrived{animation:none!important}}

/* Photographic hero: shared full-bleed backdrop, stable text layers. */
.cinema{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;min-height:100svh!important;padding:0!important;perspective:none;transform:none;clip-path:inset(0);isolation:isolate;overflow:hidden;background:#0b111b}
.cinema .hero-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#0b111b}
.cinema .hero-backdrop .photo-frame{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-width:none;object-fit:cover;object-position:60% center;opacity:0;visibility:visible;transform:translate3d(0,var(--photo-scroll,0px),0) scale(var(--photo-zoom,1.05));transition:opacity 1.2s ease;animation:none;will-change:transform,opacity}
.cinema .hero-backdrop .photo-frame.is-active{opacity:1;animation:photo-drift 18s ease-in-out infinite alternate}
.cinema[data-motion-paused="true"] .photo-frame{animation-play-state:paused!important}
.photo-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,12,22,.9),rgba(5,12,22,.64) 50%,rgba(5,12,22,.45)),linear-gradient(0deg,#0b111b,transparent 35%);z-index:1}
.cinema .hero-slide,.cinema .hero-slide.is-active{position:relative;inset:auto;grid-area:1/1;min-width:0;align-items:center;isolation:auto;transform:none}
.cinema .hero-slide .hero-content{width:100%;padding:190px 5% 90px;transform:none!important;z-index:2}
.cinema .hero-slide .hero-title{max-width:calc(100% - 420px)}
.cinema .hero-description{max-width:min(570px,calc(100% - 420px))}
.cinema .hero-buttons{max-width:calc(100% - 420px);flex-wrap:wrap}
.cinema .cinema-controls{position:relative;grid-area:2/1;left:auto;right:auto;bottom:auto;width:90%;margin:0 auto 30px;z-index:4}
.cinema .service-spotlight{top:48%;z-index:3}
img{display:block;max-width:100%}
.inner-hero{overflow:hidden}
.inner-hero>.hero-photo{inset:0;width:100%;height:100%;object-fit:cover}
@keyframes photo-drift{from{transform:translate3d(0,var(--photo-scroll,0px),0) scale(var(--photo-zoom,1.05))}to{transform:translate3d(-1%,calc(var(--photo-scroll,0px) - 1%),0) scale(calc(var(--photo-zoom,1.05) + .04))}}
@media(max-width:1000px){.cinema .hero-slide .hero-title{font-size:clamp(2.4rem,4.7vw,4rem)}}
@media(max-width:900px){
.cinema{grid-template-rows:auto auto auto;min-height:0!important}
.cinema .hero-backdrop{position:absolute;inset:0}
.cinema .hero-backdrop .photo-frame{object-position:58% center;animation:none!important;transform:scale(1.04)!important}
.cinema .hero-slide .hero-content{padding:155px 6% 16px!important;width:100%}
.cinema .hero-slide .hero-title,.cinema .hero-description,.cinema .hero-buttons{max-width:100%;width:auto}
.cinema .hero-title{font-size:clamp(2.15rem,7.5vw,3.7rem)!important;line-height:1.1}
.cinema .service-spotlight{grid-area:2/1;position:relative;top:auto;right:auto;transform:none;width:88%;margin:22px auto}
.cinema .cinema-controls{grid-area:3/1;width:88%;margin:8px auto 28px;flex-wrap:wrap;gap:16px}
.cinema .photo-scrim{background:linear-gradient(180deg,rgba(5,12,22,.72),rgba(5,12,22,.77) 45%,#0b111b)}
.inner-hero>.hero-photo{min-height:0;object-position:center}
}
@media(prefers-reduced-motion:reduce){.cinema .hero-backdrop .photo-frame{animation:none!important;transform:none!important;transition:none}}
/* Compact video players stay within the service article on every screen. */
.service-video .youtube-frame{width:100%;max-width:480px;aspect-ratio:16/9;margin:24px 0 12px;background:#060c14;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.youtube-frame iframe{display:block;width:100%;height:100%;border:0}
.youtube-channel{display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.youtube-channel .button{white-space:normal;text-align:center;flex-shrink:0;max-width:100%}
@media(max-width:900px){.youtube-channel{flex-direction:column;align-items:flex-start}.service-video .youtube-frame{max-width:100%}}

/* Place each service video immediately beneath its main heading. */
.inner-hero .hero-service-video{width:480px;max-width:calc(100% - 410px);margin:22px 0 18px;padding:0;border:0;position:relative;z-index:1}
.inner-hero .hero-service-video .youtube-frame{margin:0 0 10px;max-width:100%}
.inner-hero .hero-service-video .text-link{font-size:.875rem}
@media(max-width:1100px) and (min-width:901px){.inner-hero .hero-service-video{max-width:calc(100% - 350px)}}
@media(max-width:900px){.inner-hero .hero-service-video{width:480px;max-width:100%;margin:24px 0 18px}}
.additional-phones{display:flex;flex-wrap:wrap;gap:10px 24px;margin:18px 0;color:var(--gold)}
.customer-stats{display:grid;grid-template-columns:1fr 1fr;gap:32px;text-align:center;padding-top:40px;padding-bottom:40px;border-block:1px solid var(--line)}
.customer-stats strong{display:block;font-size:clamp(2.5rem,6vw,4rem);line-height:1.15;color:var(--gold);font-variant-numeric:tabular-nums}.customer-stats span{display:block;margin-top:10px}
.compact-scroll{padding-top:28px;padding-bottom:28px;overflow:hidden}.compact-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.compact-heading h2{font-size:1.5rem}.compact-heading button{background:transparent;border:1px solid var(--line);border-radius:4px;color:var(--text);padding:8px 12px;font-size:.875rem}.sample-note{font-size:.875rem;color:var(--muted);margin:10px 0 18px}
.scroll-window{overflow:hidden}.scroll-track{display:flex;width:max-content;animation:customer-scroll 40s linear infinite}.scroll-copy{display:flex;gap:16px;padding-right:16px}.sample-review{width:300px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.sample-review p{font-size:.95rem;margin:10px 0}.sample-review>span:last-child{font-size:.875rem;color:var(--muted)}.sample-label{font-size:.75rem;color:var(--gold)}
.sample-partner{width:230px;min-height:100px;padding:18px;display:flex;flex-direction:column;justify-content:center;gap:10px;text-align:center;border:1px solid var(--line);border-radius:8px}.sample-partner strong{font-size:1.4rem;letter-spacing:.08em;color:var(--gold)}.sample-partner span{font-size:.75rem;color:var(--muted)}
.compact-scroll:hover .scroll-track,.compact-scroll:focus-within .scroll-track,.compact-scroll.is-paused .scroll-track{animation-play-state:paused}
@keyframes customer-scroll{to{transform:translateX(-50%)}}
@media(max-width:540px){.customer-stats{gap:16px}.customer-stats span{font-size:.875rem}.compact-heading{align-items:flex-start}.sample-review{width:260px}}
@media(prefers-reduced-motion:reduce){.scroll-track{animation:none}.scroll-window{overflow-x:auto}.scroll-copy[aria-hidden]{display:none}.compact-heading button{display:none}}

/* Fictional partner wordmarks for the explicitly labelled design preview. */
.sample-partner{width:280px;min-height:130px;background:linear-gradient(140deg,#172433,#0c141e);gap:18px}
.partner-wordmark{display:flex;align-items:center;justify-content:center;gap:14px;text-align:left;min-height:55px}
.partner-wordmark .partner-monogram{display:flex;align-items:center;justify-content:center;width:52px;height:52px;flex-shrink:0;border:1px solid currentColor;border-radius:50%;font-size:1.25rem;font-weight:700;letter-spacing:-.08em;color:var(--gold)}
.partner-wordmark strong{display:block;letter-spacing:.02em;font-size:1.55rem;line-height:1.1}.partner-wordmark small{display:block;margin-top:7px;font-size:.7rem;letter-spacing:.24em;color:var(--muted)}
.logo-style-1 .partner-monogram{border-radius:8px;color:#8acbea}.logo-style-1 strong{color:#8acbea;font-weight:800;letter-spacing:-.04em}
.logo-style-2 .partner-monogram{border-radius:0;border-width:0 0 2px;color:#d3c1ef;font-family:Georgia,serif;font-style:italic;font-size:1.7rem}.logo-style-2 strong{font-family:Georgia,serif;font-style:italic;color:#d3c1ef}
.logo-style-3 .partner-monogram{border-radius:5px;color:#b8d2c7;border-style:double;border-width:3px}.logo-style-3 strong{font-size:1.35rem;text-transform:uppercase;letter-spacing:.06em;color:#b8d2c7}
.sample-person{display:block;color:var(--gold)!important}
/* Scroll-controlled Dubai photo story; standard flow is the mobile fallback. */
.scroll-story{position:relative;background:var(--bg)}
.scroll-story.is-scroll-active{height:320svh}
.scroll-story.is-scroll-active .scroll-cinema{position:sticky;top:0;height:100svh;min-height:100svh!important}
.scroll-cinema .hero-backdrop{position:absolute!important;inset:0;z-index:0}
.scroll-cinema .hero-slide{z-index:1;pointer-events:none;transition:opacity .65s,visibility .65s}
.scroll-cinema .hero-slide.is-active{pointer-events:auto}
.cinema.scroll-cinema .hero-backdrop .photo-frame{animation:none!important;transform:translate3d(var(--scene-pan,0%),var(--scene-rise,0%),0) scale(var(--scene-scale,1.06))!important;transition:opacity .9s ease;will-change:transform,opacity}
.cinema.scroll-cinema .hero-slide .hero-content{animation:none!important}
.scroll-cinema .hero-title{color:#fff;letter-spacing:-.055em;line-height:1.04}
.scroll-cinema .hero-title em{color:var(--bright)}
.scroll-story.is-scroll-active .hero-content{padding-top:145px!important;padding-bottom:55px!important}
.scroll-story.is-scroll-active .hero-title{font-size:clamp(2.75rem,4.5vw,5rem)!important}
.scroll-story.is-scroll-active .cinema-controls{margin-bottom:28px;padding-bottom:15px;border-bottom:1px solid #ffffff35}
.scroll-story.is-scroll-active .cinema-controls:after{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--gold);transform:scaleX(var(--story-progress,0));transform-origin:left}
.scroll-cinema .photo-scrim{background:linear-gradient(90deg,#06101ce8,#07122185 60%,#07122155),linear-gradient(0deg,#0b111b,transparent 28%)}
@media(prefers-reduced-motion:reduce){.cinema.scroll-cinema .hero-backdrop .photo-frame{transform:none!important;transition:none}.scroll-cinema .hero-slide{transition:none}}

/* User-provided Dubai footage, beneath the headline and dark readability layer. */
.cinema .hero-backdrop .hero-video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity .6s ease;pointer-events:none}
.cinema.video-ready .hero-backdrop .hero-video{opacity:1}
.cinema.video-ready .hero-backdrop .photo-frame{opacity:0!important}
.cinema [data-slide-pause][hidden]{display:none}
@media(prefers-reduced-motion:reduce){.cinema .hero-backdrop .hero-video{transition:none}}
