@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&display=swap');:root{--bg:#071426;--bg2:#0b1b30;--gold:#c9a55d;--gold2:#f1d18d;--white:#f7f8fa;--muted:#a5afbf;--line:rgba(201,165,93,.22)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{max-width:1200px;margin:auto;padding-left:28px;padding-right:28px}.glow{position:absolute;pointer-events:none;top:0;right:-250px;width:900px;height:900px;background:radial-gradient(circle,rgba(29,58,89,.34),transparent 65%)}.header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1144px)/2));border-bottom:1px solid rgba(255,255,255,.08);position:relative;z-index:5}.brand{display:inline-flex;align-items:center;gap:11px;font-family:Outfit,sans-serif;font-size:22px;font-weight:800;letter-spacing:1px;line-height:1}.brand small{display:block;letter-spacing:3.4px;font-size:8px;margin-top:7px;font-weight:500;color:#c4cbd6}.mark{display:grid;place-items:center;width:43px;height:43px;border:2px solid var(--gold);color:var(--gold);font-size:18px;letter-spacing:-3px;clip-path:polygon(20% 0,80% 0,100% 20%,100% 80%,80% 100%,20% 100%,0 80%,0 20%);padding-right:3px}.gold,em{color:var(--gold)}nav{display:flex;align-items:center;gap:31px}nav a{font-size:13px;color:#c5cbd5;transition:color .2s}nav a:hover{color:var(--gold)}.nav-cta{border:1px solid var(--gold);padding:13px 19px;color:var(--gold)}.nav-cta span{margin-left:10px}.menu{display:none;background:none;border:0;color:white;font-size:26px}.hero{position:relative;min-height:710px;padding-top:140px;padding-bottom:110px}.eyebrow,.kicker{font-size:11px;font-weight:700;letter-spacing:2.8px;color:var(--gold)}.eyebrow{display:flex;align-items:center;gap:12px}.pulse{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Outfit,sans-serif}h1{font-size:clamp(55px,6.3vw,96px);line-height:1.02;letter-spacing:-3px;font-weight:600;margin:25px 0}h1 em,h2 em{font-style:normal;font-weight:400}.hero>p{max-width:575px;color:var(--muted);font-size:17px;line-height:1.8}.actions{display:flex;gap:13px;margin-top:32px}.btn{display:inline-flex;align-items:center;gap:25px;padding:17px 24px;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.primary{background:var(--gold);color:#0a1726}.primary:hover{background:var(--gold2)}.secondary{border:1px solid #415065;color:white}.hero-art{position:absolute;right:20px;top:120px;width:450px;height:450px;z-index:-1;opacity:.65}.orbit{position:absolute;border:1px solid rgba(201,165,93,.19);border-radius:50%;inset:30px}.orbit2{inset:0;border-style:dashed;animation:spin 60s linear infinite}.hero-monogram{position:absolute;inset:95px 70px;display:flex;align-items:center;justify-content:center;font-family:Outfit,sans-serif;font-weight:800;font-size:170px;letter-spacing:-45px;color:transparent;-webkit-text-stroke:2px var(--gold);filter:drop-shadow(0 0 25px rgba(201,165,93,.2))}.hero-monogram span{color:rgba(210,217,226,.2);-webkit-text-stroke:2px #9ca8b6}.orbit-label{position:absolute;font-size:9px;letter-spacing:2px;color:var(--gold)}.orbit-label.top{top:35px;right:0}.orbit-label.bottom{bottom:20px;left:0}@keyframes spin{to{transform:rotate(360deg)}}.scroll-note{position:absolute;bottom:38px;left:28px;color:#758296;font-size:10px;letter-spacing:2px}.scroll-note span{margin-left:14px;color:var(--gold)}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0a192b}.strip-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:23px;padding-bottom:23px;color:#aab3c0;font-size:10px;letter-spacing:1.5px}.strip i{width:4px;height:4px;border-radius:50%;background:var(--gold);flex-shrink:0}.section{padding-top:125px;padding-bottom:125px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-top:20px;margin-bottom:55px}.section-head h2{font-size:clamp(40px,4.2vw,62px);font-weight:500;line-height:1.1;letter-spacing:-1.7px;margin:0}.section-head>p{max-width:390px;color:var(--muted);line-height:1.85;font-size:15px;margin:0}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.principles>div{padding:28px 0;border-top:1px solid var(--line)}.principles strong{color:var(--gold);font-size:12px}.principles h3{font-size:23px;margin:25px 0 10px;font-weight:500}.principles p,.services p,.steps p,.product-teasers p{color:var(--muted);line-height:1.8;font-size:14px}.section-dark{background:#0b1b30}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.09)}.services article{background:#0b1b30;padding:35px;min-height:280px;position:relative;transition:background .2s}.services article:hover{background:#10253d}.service-icon{color:var(--gold);font-size:34px}.number{float:right;color:#68758a;font-size:11px}.services h3{font-size:21px;font-weight:500;margin:28px 0 12px}.services .arrow{position:absolute;bottom:24px;right:28px;color:var(--gold)}.product{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:linear-gradient(125deg,#122b42,#091728);border:1px solid var(--line);padding:45px;align-items:center}.pill{display:inline-block;border:1px solid var(--gold);color:var(--gold);font-size:10px;letter-spacing:2px;padding:9px 12px}.product h3{font-size:clamp(42px,5vw,70px);letter-spacing:-2px;margin:25px 0 4px}.dot{color:var(--gold)}.product-copy>p{color:#e1e6eb}.product-copy .muted{color:var(--muted);line-height:1.8;font-size:14px;max-width:420px;margin:25px 0}.text-link{font-size:13px;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:7px}.text-link span{margin-left:14px}.dashboard{background:#081522;border:1px solid #2e4356;border-radius:10px;padding:22px;box-shadow:0 30px 60px #0004;transform:perspective(900px) rotateY(-5deg)}.dash-top,.dash-bottom{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#9aabc0}.dash-top span:first-child{color:var(--gold)}.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.dash-grid>div{border:1px solid #263b50;border-radius:5px;padding:18px}.dash-grid small,.dash-grid span{display:block;color:#9daec0;font-size:10px}.dash-grid strong{display:block;color:#e7eef6;font-size:32px;margin:12px 0}.bars{height:110px;display:flex;align-items:end;gap:11px;padding:15px;border:1px solid #263b50;margin-bottom:18px}.bars span{flex:1;background:linear-gradient(var(--gold),#806333);border-radius:2px 2px 0 0}.dash-bottom{justify-content:center}.product-teasers{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.product-teasers>div{border:1px solid var(--line);padding:28px}.product-teasers span{color:var(--gold);font-size:10px;letter-spacing:2px}.product-teasers h3{font-size:23px;font-weight:500;margin:16px 0 8px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.steps>div{border-top:1px solid var(--gold);padding-top:25px}.steps span{color:var(--gold);font-size:13px}.steps h3{font-size:25px;font-weight:500;margin:35px 0 12px}.contact{text-align:center}.contact h2{font-size:clamp(55px,7vw,94px);line-height:1.05;font-weight:500;letter-spacing:-2px;margin:25px 0}.contact>p{max-width:520px;margin:0 auto 32px;color:var(--muted);line-height:1.8}.contact .contact-note{font-size:11px;margin-top:18px;color:#7d8999}footer{background:#05101f;border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-top:65px;padding-bottom:60px}.footer-main p{color:var(--muted);font-size:13px;line-height:1.7;margin-top:23px}.footer-main h4{font-size:11px;color:var(--gold);letter-spacing:2px;margin:0 0 24px}.footer-main a:not(.brand),.footer-main div>span{display:block;font-size:13px;color:#a9b4c3;margin:0 0 13px}.footer-bottom{border-top:1px solid #1d2b3d;padding-top:24px;padding-bottom:24px;display:flex;justify-content:space-between;gap:20px;color:#8490a0;font-size:11px}.footer-bottom span:last-child{color:var(--gold)}@media(max-width:1000px){.hero-art{opacity:.2;right:-130px}.services{grid-template-columns:repeat(2,1fr)}.strip-inner{flex-wrap:wrap;justify-content:center}.section-head{align-items:start}}@media(max-width:720px){.header{height:75px;padding:0 20px}.menu{display:block}nav{display:none;position:absolute;top:75px;left:0;right:0;background:#0b1b30;flex-direction:column;align-items:stretch;gap:0;padding:15px 25px 25px;border-bottom:1px solid var(--line)}nav.open{display:flex}nav a{padding:15px}.wrap{padding-left:22px;padding-right:22px}.hero{padding-top:105px;min-height:650px}.hero-art{width:330px;height:330px;top:170px;right:-140px}.hero-monogram{font-size:110px;inset:80px 45px}.hero h1{font-size:clamp(49px,11vw,72px);letter-spacing:-2px}.hero>p{font-size:15px}.actions{flex-wrap:wrap}.section{padding-top:80px;padding-bottom:80px}.section-head{display:block;margin-bottom:35px}.section-head>p{margin-top:25px}.principles,.services,.product,.product-teasers,.steps,.footer-main{grid-template-columns:1fr}.services article{min-height:240px}.product{padding:25px}.dashboard{transform:none}.steps{gap:25px}.steps h3{margin:20px 0 10px}.footer-main{gap:20px}.footer-bottom{flex-direction:column}.strip-inner{font-size:9px}.brand{font-size:18px}.mark{width:37px;height:37px}.contact h2{letter-spacing:-1px}}


/* CoreKnight V2 cinematic intro */
body.intro-active{overflow:hidden}
.cinematic-intro{position:fixed;inset:0;z-index:9999;background:radial-gradient(ellipse at 50% 45%,#10243a 0%,#071426 48%,#020812 100%);display:grid;place-items:center;overflow:hidden;isolation:isolate;transition:opacity .85s ease,visibility .85s ease}
.cinematic-intro.intro-exit{opacity:0;visibility:hidden;pointer-events:none}
.intro-grid{position:absolute;inset:-30%;opacity:.18;background-image:linear-gradient(rgba(201,165,93,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(201,165,93,.12) 1px,transparent 1px);background-size:70px 70px;transform:perspective(600px) rotateX(64deg) scale(1.5);animation:gridFloat 9s linear infinite}
.intro-halo{position:absolute;width:min(65vw,610px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(213,173,91,.12);box-shadow:0 0 0 55px rgba(213,173,91,.025),0 0 0 130px rgba(213,173,91,.015),inset 0 0 100px rgba(201,165,93,.04);animation:haloPulse 4s ease-in-out infinite}
.intro-center{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;width:100%;padding:24px;text-align:center}
.intro-overline{color:#c7a45b;font-size:10px;letter-spacing:.38em;font-weight:700;opacity:0;animation:reveal .8s .1s forwards}
.intro-symbol{width:min(45vw,340px);height:auto;margin:8px 0 -4px;overflow:visible;filter:drop-shadow(0 12px 20px rgba(0,0,0,.45))}
.ck-piece{transform-box:fill-box;transform-origin:center;opacity:0;animation:assemble 1.5s cubic-bezier(.2,.8,.2,1) forwards}
.ck-c{--tx:-170px;--ty:10px;--rot:-28deg;animation-delay:.2s}
.ck-inner{--tx:-65px;--ty:-140px;--rot:32deg;animation-delay:.55s}
.ck-k-top{--tx:190px;--ty:-110px;--rot:48deg;animation-delay:.85s}
.ck-k-bottom{--tx:170px;--ty:150px;--rot:-38deg;animation-delay:1.1s}
.ck-core{--tx:-40px;--ty:170px;--rot:50deg;animation-delay:1.35s}
.intro-wordmark{font-family:Outfit,Arial,sans-serif;font-weight:800;font-size:clamp(36px,7vw,82px);line-height:1;letter-spacing:-.035em;opacity:0;transform:translateY(22px);animation:reveal 1s 2.3s forwards}
.intro-wordmark span{color:#e3e8ee}.intro-wordmark strong{color:#d9af5b}
.intro-subtitle{margin-top:13px;font-size:clamp(8px,1.3vw,15px);letter-spacing:.25em;color:#dce1e9;opacity:0;animation:reveal .8s 2.65s forwards}
.intro-rule{width:min(380px,65vw);height:1px;background:rgba(201,165,93,.22);margin:25px 0 15px;overflow:hidden;opacity:0;animation:reveal .8s 2.9s forwards}
.intro-rule span{display:block;width:100%;height:100%;background:linear-gradient(90deg,transparent,#f6d88b,transparent);transform:translateX(-100%);animation:lightSweep 1.4s 3.05s forwards}
.intro-tagline{font-size:clamp(8px,1.2vw,12px);letter-spacing:.18em;color:#b7c0ce;opacity:0;animation:reveal .8s 3.15s forwards}
.intro-bottom{position:absolute;bottom:32px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px;letter-spacing:.19em;color:#9faab8;z-index:2}
#skip-intro{border:1px solid rgba(201,165,93,.4);background:rgba(6,18,33,.65);border-radius:4px;color:#e9d09a;padding:12px 17px;cursor:pointer;letter-spacing:.12em;transition:background .2s,border-color .2s}
#skip-intro:hover,#skip-intro:focus-visible{background:rgba(201,165,93,.15);border-color:#e7c779}
.intro-progress{position:absolute;bottom:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,#896221,#f6d88b,#896221);transform-origin:left;transform:scaleX(0);animation:progress 5.3s linear forwards}
@keyframes assemble{from{opacity:0;transform:translate(var(--tx),var(--ty)) rotate(var(--rot)) scale(.65);filter:blur(12px)}to{opacity:1;transform:translate(0,0) rotate(0) scale(1);filter:blur(0)}}
@keyframes reveal{to{opacity:1;transform:translateY(0)}}
@keyframes progress{to{transform:scaleX(1)}}
@keyframes lightSweep{to{transform:translateX(100%)}}
@keyframes gridFloat{to{background-position:0 70px,70px 0}}
@keyframes haloPulse{50%{transform:scale(1.07);opacity:.65}}
@media(max-width:600px){.intro-symbol{width:min(70vw,290px)}.intro-bottom{bottom:26px}.intro-status{font-size:8px;max-width:150px;line-height:1.6}.intro-tagline{max-width:300px;line-height:1.8}.intro-subtitle{letter-spacing:.15em}.intro-overline{letter-spacing:.2em}}
@media(prefers-reduced-motion:reduce){.intro-grid,.intro-halo,.ck-piece,.intro-overline,.intro-wordmark,.intro-subtitle,.intro-rule,.intro-rule span,.intro-tagline,.intro-progress{animation:none!important}.ck-piece,.intro-overline,.intro-wordmark,.intro-subtitle,.intro-rule,.intro-tagline{opacity:1!important;transform:none!important}}


/* V3: global locations and enquiry form */
.location-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:36px}
.location-card{border:1px solid rgba(213,173,91,.22);border-radius:14px;background:linear-gradient(145deg,rgba(214,174,94,.075),rgba(255,255,255,.015));padding:26px 18px;min-height:160px;transition:transform .25s,border-color .25s}
.location-card:hover{transform:translateY(-5px);border-color:rgba(213,173,91,.65)}
.location-card span{font-size:10px;letter-spacing:.18em;color:#d3b16d;font-weight:700}
.location-card h3{font-size:clamp(19px,2vw,27px);margin:24px 0 4px;color:#f2f3f5}
.location-card p,.location-note{color:#aeb9c9;font-size:13px}
.location-note{margin-top:18px}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,5vw,90px);align-items:start}
.contact-layout h2{font-size:clamp(38px,5vw,66px)}
.contact-points{display:grid;gap:12px;margin-top:28px;color:#d9b46c;font-size:13px}
.contact-form{background:#0c1c2d;border:1px solid rgba(213,173,91,.25);border-radius:18px;padding:clamp(20px,3vw,36px);display:grid;gap:19px;box-shadow:0 25px 65px rgba(0,0,0,.15)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form label{display:grid;gap:9px;font-size:12px;letter-spacing:.025em;color:#e4e9f1;text-align:left}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;min-width:0;box-sizing:border-box;background:#071426;border:1px solid #344358;border-radius:8px;padding:13px 14px;color:#f1f5f9;font:inherit;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#d9b46c;box-shadow:0 0 0 3px rgba(217,180,108,.12)}
.contact-form textarea{resize:vertical}
.contact-form .privacy-check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.5;color:#c0cad8}
.privacy-check input{margin-top:3px;accent-color:#d9b46c}
.contact-form button{cursor:pointer;border:0;width:100%;justify-content:center}
.contact-form button:disabled{opacity:.6;cursor:wait}
.form-status{min-height:18px;margin:0;font-size:13px;line-height:1.5}
.form-status.error{color:#ffadad}.form-status.success{color:#9be0b5}
.form-footnote{font-size:11px;color:#9aa9bc;margin:0;line-height:1.6}
@media(max-width:1000px){.location-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.contact-layout{grid-template-columns:1fr}.location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.location-grid,.form-row{grid-template-columns:1fr}.location-card{min-height:125px}.location-card h3{margin-top:15px}}
/* V3: three-dimensional reveal and zoom through the monogram */
.intro-symbol{transform-style:preserve-3d;perspective:900px;animation:ckRotate 1.8s 2.7s ease-in-out both}
.intro-center{transform-origin:center;animation:introZoom 1.15s 4.45s cubic-bezier(.65,0,.8,.3) both}
.cinematic-intro::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle at center,rgba(255,237,187,.3),transparent 50%);animation:flashReveal 1s 4.55s ease-in forwards}
@keyframes ckRotate{0%{transform:rotateY(-16deg) rotateX(8deg)}50%{transform:rotateY(13deg) rotateX(-4deg);filter:drop-shadow(0 0 30px rgba(234,193,110,.42))}100%{transform:rotateY(0) rotateX(0)}}
@keyframes introZoom{0%,30%{transform:scale(1);opacity:1}100%{transform:scale(2.2);opacity:0}}
@keyframes flashReveal{0%,40%{opacity:0}70%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.intro-symbol,.intro-center,.cinematic-intro::after{animation:none!important}}
