@font-face{font-family:Inter;src:url("../fonts/inter-300.ttf") format("truetype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../fonts/inter-400.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../fonts/inter-500.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../fonts/inter-600.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../fonts/inter-700.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("../fonts/playfair-400.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("../fonts/playfair-500.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("../fonts/playfair-600.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("../fonts/playfair-700.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
body .container{width:min(var(--container),calc(100% - 32px));max-width:none;margin-inline:auto}
:root{
--color-ink:#050507;--color-bg:#0b0b0f;--color-bg-soft:#08080c;--color-surface:#121218;--color-surface-raised:#181820;
--color-text:#f5f5f7;--color-white:#fff;--color-copy:#b8b8c2;--color-muted:#9a9aa6;--color-dim:#7a7a86;
--color-gold:#d4af37;--color-gold-bright:#ffd700;--color-gold-button:#b8962c;--color-gold-dark:#9a7b1f;
--color-line:rgba(255,255,255,.08);--color-gold-line:rgba(212,175,55,.2);
--font-sans:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Playfair Display",Georgia,serif;
--container:1233px;--header-height:80px;--section-space:110px;--radius-button:16px;--radius-card:0;
--shadow-header:0 4px 16px rgba(0,0,0,.3);--shadow-gold:0 14px 34px rgba(184,150,44,.25);--shadow-card:0 24px 70px rgba(0,0,0,.28);
--ease:cubic-bezier(.4,0,.2,1);--ease-out:cubic-bezier(.16,1,.3,1);--duration-fast:200ms;--duration-normal:300ms;--duration-slow:650ms;
--bg:var(--color-bg);--bg-deep:var(--color-ink);--panel:var(--color-surface);--text:var(--color-text);--muted:var(--color-muted);--gold:var(--color-gold);--gold-light:var(--color-gold-bright);--line:var(--color-gold-line)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;font-weight:400;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color var(--duration-normal),color var(--duration-normal),border-color var(--duration-normal)}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}.serif{font-family:var(--font-display)}.gold{color:var(--gold)}.section{padding:var(--section-space) 0}.section-head{text-align:center;max-width:760px;margin:0 auto 58px}.section-kicker{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.section-kicker:before,.section-kicker:after{content:"";width:44px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}.section-kicker:after{transform:scaleX(-1)}.section-title{margin:12px 0 16px;font:400 clamp(38px,4.2vw,56px)/1.2 var(--font-display)}.section-copy{margin:0;color:var(--muted);font-size:15px;line-height:1.75}.btn{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:15px 30px;overflow:hidden;border:1px solid transparent;border-radius:var(--radius-button);cursor:pointer;font-size:13px;font-weight:600;letter-spacing:.045em;transition:transform var(--duration-normal) var(--ease),color var(--duration-normal),border-color var(--duration-normal),background-color var(--duration-normal),box-shadow var(--duration-normal),filter var(--duration-normal)}.btn:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}.btn-gold{background:linear-gradient(135deg,var(--color-gold-button),var(--color-gold-dark));color:#09090b;box-shadow:var(--shadow-gold)}.btn-gold:before{content:"";position:absolute;z-index:-1;inset:-2px;transform:translateX(-120%) skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);transition:transform 650ms var(--ease)}.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 18px 42px rgba(184,150,44,.32)}.btn-gold:hover:before{transform:translateX(120%) skewX(-18deg)}.btn-outline{border-color:rgba(255,255,255,.3);color:#fff;background:rgba(0,0,0,.15);backdrop-filter:blur(6px)}.btn-outline:hover{transform:translateY(-2px);border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.04);box-shadow:0 12px 30px rgba(0,0,0,.2)}.arrow{font-size:19px;transition:transform var(--duration-normal) var(--ease)}.btn:hover .arrow{transform:translateX(4px)}
.site-header{position:fixed;z-index:1000;top:0;left:0;width:100%;height:var(--header-height);border-bottom:1px solid var(--color-line);background:rgba(11,11,15,.92);box-shadow:var(--shadow-header);backdrop-filter:blur(16px);transition:height var(--duration-normal) var(--ease),background-color var(--duration-normal),box-shadow var(--duration-normal)}.site-header.scrolled{height:72px;background:rgba(11,11,15,.98);box-shadow:0 8px 28px rgba(0,0,0,.36)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.site-logo img{width:145px;height:72px;object-fit:contain;transition:transform var(--duration-normal) var(--ease)}.site-logo:hover img{transform:scale(1.025)}.main-nav{display:flex;align-items:center;gap:31px}.nav-link,.nav-toggle{position:relative;padding:27px 0;border:0;background:none;color:#d4d4d7;font-size:13px;cursor:pointer;transition:color var(--duration-fast)}.nav-link:after,.nav-toggle:after{content:"";position:absolute;bottom:18px;left:0;width:0;height:1px;background:var(--gold);transition:width var(--duration-normal) var(--ease-out)}.nav-link:hover,.nav-link.active,.nav-toggle:hover{color:#fff}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-group{position:relative}.nav-dropdown{position:absolute;top:66px;left:-20px;width:230px;padding:10px;border:1px solid rgba(212,175,55,.18);background:#0d0d12;box-shadow:0 18px 44px rgba(0,0,0,.42);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity var(--duration-normal),visibility var(--duration-normal),transform var(--duration-normal) var(--ease-out)}.nav-group:hover .nav-dropdown{opacity:1;visibility:visible;transform:none}.nav-dropdown a{display:block;padding:11px 13px;color:#a8a8af;font-size:13px;transition:color var(--duration-fast),background-color var(--duration-fast),padding-left var(--duration-fast)}.nav-dropdown a:hover{padding-left:17px;color:var(--gold);background:rgba(212,175,55,.05)}.header-actions{display:flex;align-items:center;gap:18px}.language{display:flex;gap:7px;color:#777;font-size:11px}.language span:first-child{color:var(--gold)}.header-cta{min-height:47px;padding:11px 24px;border-radius:0}.menu-button{display:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.18);background:transparent;color:#fff;font-size:22px;transition:border-color var(--duration-fast),color var(--duration-fast),background-color var(--duration-fast)}.menu-button:hover{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.05)}.mobile-panel{display:none}
.hero{position:relative;min-height:720px;display:flex;align-items:center;overflow:hidden}.hero-bg,.page-hero-bg{position:absolute;inset:0;background-position:center;background-size:cover;animation:heroZoom 16s ease-out both}.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at center,rgba(11,11,15,.5),rgba(11,11,15,.7) 50%,rgba(11,11,15,.95)),linear-gradient(180deg,rgba(11,11,15,.6),rgba(11,11,15,.4) 40%,rgba(11,11,15,.4) 60%,rgba(11,11,15,.85))}.hero-content{position:relative;z-index:2;padding-top:60px;text-align:center}.hero-title{max-width:900px;margin:0 auto;font-size:clamp(48px,4.45vw,56px);font-weight:600;line-height:1.2;letter-spacing:-.025em;animation:fadeSlideUp 850ms var(--ease-out) 80ms both}.hero-title .hero-highlight{display:block;font-family:var(--font-display);font-style:italic;font-weight:400;color:var(--gold-light)}.hero-copy{max-width:620px;margin:24px auto 32px;color:var(--color-copy);font-size:16px;line-height:1.625;animation:fadeSlideUp 850ms var(--ease-out) 220ms both}.hero-buttons{display:flex;justify-content:center;gap:14px;animation:fadeSlideUp 850ms var(--ease-out) 360ms both}.hero-secondary-button{border-color:rgba(212,175,55,.55);background:rgba(5,5,7,.18)}.hero-secondary-button:hover{border-color:var(--gold-light);color:var(--gold-light);background:rgba(212,175,55,.06)}.scroll-cue{position:absolute;bottom:18px;left:50%;z-index:2;display:flex;transform:translateX(-50%);flex-direction:column;align-items:center;text-align:center;color:#8c8c92;font-size:9px;letter-spacing:.25em;text-transform:uppercase;animation:fadeIn 1s ease 900ms both}.scroll-cue-label{display:block}.scroll-mouse{position:relative;display:block;width:20px;height:31px;margin-top:9px;border:1px solid rgba(212,175,55,.55);border-radius:12px;background:rgba(5,5,7,.15)}.scroll-wheel{position:absolute;top:6px;left:50%;display:block;width:2px;height:6px;margin:0;transform:translateX(-50%);border-radius:2px;background:var(--gold);animation:mouseWheel 1.7s ease-in-out infinite}.scroll-line{display:block;width:1px;height:21px;margin-top:7px;background:linear-gradient(var(--gold),transparent);transform-origin:top;animation:scrollLine 1.8s ease-in-out infinite}
.stats{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#08080b}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:31px 0}.stat{text-align:center;position:relative}.stat:not(:last-child):after{content:"";position:absolute;right:0;top:50%;width:1px;height:60px;transform:translateY(-50%);background:linear-gradient(transparent,rgba(212,175,55,.45),transparent)}.stat-value{font-size:42px;font-weight:300;line-height:1;background:linear-gradient(#ffd700,#d4af37,#b8860b);-webkit-background-clip:text;color:transparent}.stat-label{margin-top:9px;color:#86868d;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.services{padding:100px 0 120px;background:#0b0b0f}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{position:relative;height:420px;overflow:hidden;background:#111;border-radius:12px}.service-image{position:absolute;inset:0;background-position:center;background-size:cover;transition:transform .65s var(--ease-out),filter .65s var(--ease-out)}.service-card:hover .service-image{transform:scale(1.07);filter:saturate(.85)}.service-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.7) 35%,transparent 72%);transition:background var(--duration-normal)}.service-card:hover .service-shade{background:linear-gradient(to top,rgba(0,0,0,.96),rgba(74,58,8,.42) 48%,rgba(0,0,0,.08))}.service-glow{position:absolute;inset:0;border:1px solid transparent;border-radius:inherit;box-shadow:inset 0 0 0 0 rgba(212,175,55,0);transition:border-color var(--duration-normal),box-shadow var(--duration-normal)}.service-card:hover .service-glow{border-color:rgba(212,175,55,.7);box-shadow:inset 0 0 48px rgba(212,175,55,.1)}.service-content{position:absolute;left:24px;right:24px;bottom:24px;transition:transform var(--duration-normal) var(--ease-out)}.service-card:hover .service-content{transform:translateY(-5px)}.service-number{font-size:10px;color:#c6a432;letter-spacing:.16em}.service-title{margin:12px 0;color:var(--gold-light);font:500 22px/1.18 "Playfair Display",serif}.service-line{width:32px;height:2px;background:linear-gradient(90deg,var(--gold-light),rgba(255,215,0,.35));transition:width var(--duration-normal)}.service-card:hover .service-line{width:52px}.service-description{margin:14px 0 0;color:#b3b3b8;font-size:12px;line-height:1.75}.service-arrow{position:absolute;right:0;bottom:0;color:var(--gold-light);opacity:0;transform:translateX(-10px);transition:opacity var(--duration-normal),transform var(--duration-normal) var(--ease-out)}.service-card:hover .service-arrow{opacity:1;transform:none}
.featured{padding:100px 0 120px;background:#0a0a0e}.project-mosaic{display:grid;grid-template-columns:1.416fr 1fr;grid-template-rows:300px 300px;gap:20px;margin-inline:8px}.project-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.06);border-radius:12px}.project-card:first-child{grid-row:1/3}.project-card-image{position:absolute;inset:0;background-position:center;background-size:cover;transition:transform .65s var(--ease-out),filter .65s var(--ease-out)}.project-card:hover .project-card-image{transform:scale(1.055);filter:saturate(.9)}.project-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(4,4,6,.96),rgba(4,4,6,.62) 36%,transparent 72%);transition:background var(--duration-normal)}.project-card:hover .project-card-overlay{background:linear-gradient(to top,rgba(4,4,6,.98),rgba(84,65,8,.38) 52%,rgba(4,4,6,.05))}.project-card-glow{position:absolute;inset:0;border:1px solid transparent;border-radius:inherit;transition:border-color var(--duration-normal),box-shadow var(--duration-normal)}.project-card:hover .project-card-glow{border-color:rgba(212,175,55,.65);box-shadow:inset 0 0 54px rgba(212,175,55,.08)}.project-card-content{position:absolute;left:34px;right:34px;bottom:32px;transition:transform var(--duration-normal) var(--ease-out)}.project-card:hover .project-card-content{transform:translateY(-4px)}.project-category{display:inline-flex;padding:6px 11px;background:rgba(212,175,55,.15);border:1px solid rgba(212,175,55,.25);color:var(--gold);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.project-card-title{margin:12px 0 4px;font:500 25px "Playfair Display",serif}.project-card:first-child .project-card-title{font-size:38px}.project-location{color:#a6a6ac;font-size:12px}.project-arrow{position:absolute;right:30px;top:30px;color:var(--gold-light);opacity:0;transform:translate(-10px,10px);transition:opacity var(--duration-normal),transform var(--duration-normal) var(--ease-out)}.project-card:hover .project-arrow{opacity:1;transform:none}.section-action{text-align:center;margin-top:42px}
.cta{position:relative;min-height:558.56px;padding:120px 0 140px;overflow:hidden;text-align:center;background:#08080c}.cta-backdrop{position:absolute;inset:0;background-image:linear-gradient(rgba(5,5,7,.78),rgba(5,5,7,.88)),var(--cta-image,none);background-position:center;background-size:cover}.cta-pattern{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(212,175,55,.095),transparent 42%),linear-gradient(rgba(212,175,55,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.018) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}.cta-rule{position:absolute;top:0;left:50%;width:min(60%,759px);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(212,175,55,.62),transparent)}.cta-content{position:relative;z-index:1;width:min(900px,calc(100% - 32px));margin-inline:auto}.cta-title{margin:32px 20px 24px;color:#fff;font:400 clamp(42px,4.4vw,56px)/1.2 var(--font-display)}.cta-copy{max-width:600px;margin:0 auto 48px;color:#9a9aa6;font-size:18px;font-weight:300;line-height:1.8}.cta-button{position:relative;display:inline-flex;min-height:61.59px;align-items:center;justify-content:center;gap:14px;padding:18px 40px;overflow:hidden;border-radius:6px;background:linear-gradient(135deg,#d4af37,#b8941e);box-shadow:0 0 30px rgba(212,175,55,.3),0 10px 40px rgba(0,0,0,.3);color:#0a0a0e;font-size:16px;font-weight:600;line-height:1.6;transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal),filter var(--duration-normal)}.cta-button:before{content:"";position:absolute;inset:-2px;transform:translateX(-125%) skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transition:transform 700ms var(--ease)}.cta-button span,.cta-button svg{position:relative}.cta-button svg{width:19px;height:19px;transition:transform var(--duration-normal) var(--ease-out)}.cta-button:hover{transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 0 38px rgba(212,175,55,.4),0 16px 44px rgba(0,0,0,.36)}.cta-button:hover:before{transform:translateX(125%) skewX(-18deg)}.cta-button:hover svg{transform:translateX(4px)}.cta-button:focus-visible{outline:2px solid var(--gold-light);outline-offset:5px}
.site-footer{border-top:1px solid rgba(212,175,55,.18);background:#050507;padding:0}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr .9fr;gap:55px}.footer-logo{width:161px;height:80px;object-fit:contain}.footer-about{max-width:320px;margin:18px 0;color:#808087;font-size:12px}.socials{display:flex;gap:9px}.socials a{display:grid;place-items:center;width:35px;height:35px;border:1px solid rgba(255,255,255,.12);color:#999;font-size:11px;transition:color var(--duration-fast),border-color var(--duration-fast),transform var(--duration-fast)}.socials a:hover{transform:translateY(-2px);border-color:var(--gold);color:var(--gold)}.footer-title{margin:8px 0 22px;font:500 16px var(--font-display)}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:11px 0;color:#828289;font-size:12px}.footer-links a{transition:color var(--duration-fast)}.footer-links a:hover{color:var(--gold)}.footer-contact li{display:flex;gap:10px}.footer-hours li{display:flex;justify-content:space-between;gap:10px}.footer-bottom{display:flex;min-height:98px;justify-content:space-between;align-items:center;margin:0;padding:22px 0;border:0;color:#66666d;font-size:10px}.legal-links{display:flex;gap:24px}.legal-links a{transition:color var(--duration-fast)}.legal-links a:hover{color:var(--gold)}
.page-hero{position:relative;min-height:450px;display:flex;align-items:center;padding-top:88px;overflow:hidden;background:#07070a}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(212,175,55,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.016) 1px,transparent 1px);background-size:50px 50px}.page-hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 50% 70%,rgba(212,175,55,.06),transparent 45%)}.page-hero-content{position:relative;text-align:center}.page-title{margin:0;font:500 clamp(48px,6vw,78px)/1.05 "Playfair Display",serif}.page-subtitle{max-width:650px;margin:20px auto 0;color:#a4a4aa}.gold-rule{width:80px;height:1px;margin:25px auto;background:linear-gradient(90deg,var(--gold),rgba(212,175,55,.15))}
.content-section{padding:95px 0;background:#09090d}.prose{color:#b6b6bc;line-height:2}.prose h2,.prose h3{color:#fff;font-family:var(--font-display)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split-image{min-height:560px;background-size:cover;background-position:center;box-shadow:var(--shadow-card)}.content-title{font:400 48px/1.2 var(--font-display);margin:0 0 22px}.content-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.content-card{padding:34px;border:1px solid rgba(212,175,55,.12);background:linear-gradient(145deg,rgba(18,18,24,.85),rgba(10,10,14,.95));box-shadow:0 18px 50px rgba(0,0,0,.14);transition:transform var(--duration-normal) var(--ease-out),border-color var(--duration-normal),box-shadow var(--duration-normal)}.content-card:hover{transform:translateY(-5px);border-color:rgba(212,175,55,.3);box-shadow:var(--shadow-card)}.content-card h3{font:500 22px var(--font-display);margin:0 0 12px}.content-card p{color:#96969d;font-size:13px}
.projects-list{padding:90px 0;background:#08080b}.project-list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.project-list-card{position:relative;height:420px;overflow:hidden}.project-list-card.featured-card{grid-column:1/-1;height:548px}.project-list-card img{width:100%;height:100%;object-fit:cover;transition:.6s}.project-list-card:hover img{transform:scale(1.04)}.project-list-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 38%,rgba(5,5,7,.7) 70%,rgba(5,5,7,.97))}.project-list-content{position:absolute;z-index:2;left:32px;right:32px;bottom:28px}.project-list-title{margin:10px 0 4px;font:500 30px "Playfair Display",serif}.filters{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-bottom:42px}.filter{padding:9px 17px;border:1px solid rgba(255,255,255,.12);color:#8e8e95;font-size:11px}.filter.active,.filter:hover{border-color:var(--gold);color:var(--gold)}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.blog-card{overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#0f0f14;box-shadow:0 16px 48px rgba(0,0,0,.12);transition:transform var(--duration-normal) var(--ease-out),border-color var(--duration-normal),box-shadow var(--duration-normal)}.blog-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,.26);box-shadow:var(--shadow-card)}.blog-image{height:230px;object-fit:cover;width:100%;transition:transform var(--duration-slow) var(--ease-out)}.blog-card:hover .blog-image{transform:scale(1.045)}.blog-body{padding:26px}.blog-date{color:var(--gold);font-size:10px;letter-spacing:.13em}.blog-title{margin:10px 0;font:500 23px/1.3 var(--font-display)}.blog-excerpt{color:#929299;font-size:13px}
.contact-shell{position:relative;padding:150px 0 90px;background-size:cover;background-position:center}.contact-shell:before{content:"";position:absolute;inset:0;background:rgba(7,7,10,.3)}.contact-grid{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:75px}.contact-title{font:500 42px/1.15 "Playfair Display",serif}.contact-info{display:grid;gap:20px;margin-top:40px}.contact-info-item{padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1)}.contact-info-label{color:var(--gold);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.contact-info-value{margin-top:5px;color:#dadade}.contact-form{padding:42px;background:rgba(10,10,14,.88);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field-full{grid-column:1/-1}.form-label{display:block;margin-bottom:7px;color:#aaaab0;font-size:11px}.form-control{width:100%;padding:14px 0;border:0;border-bottom:1px solid rgba(255,255,255,.22);outline:0;background:transparent;color:#fff}.form-control:focus{border-color:var(--gold)}textarea.form-control{min-height:120px;resize:vertical}.form-alert{margin-bottom:22px;padding:13px 16px;border:1px solid rgba(212,175,55,.35);background:rgba(212,175,55,.08);color:#e3cf8a;font-size:13px}.map-frame{width:100%;height:500px;border:0;filter:grayscale(1) invert(.9) contrast(.85)}
.pagination{display:flex;justify-content:center;gap:8px;margin-top:42px}.pagination a,.pagination span{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid rgba(255,255,255,.12);font-size:12px}.pagination .active{border-color:var(--gold);color:var(--gold)}
.fade-in{animation:fadeIn 700ms var(--ease-out) both}.fade-in-up{animation:fadeSlideUp 800ms var(--ease-out) both}.fade-in-left{animation:fadeSlideLeft 800ms var(--ease-out) both}.fade-in-right{animation:fadeSlideRight 800ms var(--ease-out) both}.delay-1{animation-delay:100ms}.delay-2{animation-delay:200ms}.delay-3{animation-delay:300ms}.delay-4{animation-delay:400ms}.reveal{opacity:0;transform:translateY(28px);transition:opacity 800ms var(--ease-out),transform 800ms var(--ease-out)}.reveal.is-visible{opacity:1;transform:none}.reveal-left{opacity:0;transform:translateX(-34px);transition:opacity 800ms var(--ease-out),transform 800ms var(--ease-out)}.reveal-right{opacity:0;transform:translateX(34px);transition:opacity 800ms var(--ease-out),transform 800ms var(--ease-out)}.reveal-left.is-visible,.reveal-right.is-visible{opacity:1;transform:none}.hover-lift{transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal)}.hover-lift:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeSlideUp{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:none}}@keyframes fadeSlideLeft{from{opacity:0;transform:translate3d(-36px,0,0)}to{opacity:1;transform:none}}@keyframes fadeSlideRight{from{opacity:0;transform:translate3d(36px,0,0)}to{opacity:1;transform:none}}@keyframes heroZoom{from{transform:scale(1.035)}to{transform:scale(1)}}@keyframes scrollLine{0%,100%{transform:scaleY(.25);opacity:.35}50%{transform:scaleY(1);opacity:1}}@keyframes mouseWheel{0%{opacity:0;transform:translate(-50%,0)}25%{opacity:1}70%{opacity:1}100%{opacity:0;transform:translate(-50%,9px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal,.reveal-left,.reveal-right{opacity:1;transform:none}}
@media(max-width:1000px){.main-nav,.header-actions .language,.header-cta{display:none}.menu-button{display:block}.mobile-panel{display:block;position:fixed;z-index:999;top:0;right:0;width:min(360px,88vw);height:100vh;padding:100px 28px 30px;background:#09090d;transform:translateX(100%);transition:.35s}.mobile-panel.open{transform:none}.mobile-panel a{display:block;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08)}.mobile-backdrop{position:fixed;z-index:998;inset:0;background:rgba(0,0,0,.7);opacity:0;visibility:hidden;transition:.3s}.mobile-backdrop.open{opacity:1;visibility:visible}.service-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.split{gap:35px}.content-card-grid,.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.container{width:min(100% - 32px,var(--container))}.section{padding:78px 0}.site-header{height:72px}.site-logo img{width:120px;height:60px}.hero{min-height:690px}.hero-title{font-size:43px}.hero-copy{font-size:14px}.hero-buttons{flex-direction:column;align-items:center}.hero-buttons .btn{width:230px}.stats-grid{grid-template-columns:1fr}.stat{padding:22px}.stat:not(:last-child):after{top:auto;right:15%;bottom:0;width:70%;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.4),transparent)}.service-grid{grid-template-columns:1fr}.service-card{height:390px}.project-mosaic{display:block}.project-card{height:410px;margin-bottom:14px}.project-card:first-child{height:480px}.cta{min-height:auto;padding:92px 0 104px}.cta-title{margin-top:0;font-size:42px}.cta-copy{font-size:16px;line-height:1.75}.cta-button{padding:16px 28px}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}.legal-links{flex-wrap:wrap;gap:12px}.page-hero{min-height:390px}.split{grid-template-columns:1fr}.split-image{min-height:430px}.content-card-grid,.blog-grid{grid-template-columns:1fr}.project-list-grid{grid-template-columns:1fr}.project-list-card.featured-card{grid-column:auto;height:440px}.project-list-card{height:390px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-form{padding:26px}.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}}
.cta-button svg{width:16px;height:16px}

html,body{font-family:Inter,sans-serif;background:#0b0b0f;color:#f5f5f7}
.bg-charcoal{background-color:#0b0b0f}
body>div#root>div>nav{height:76px!important}
main{padding-top:0!important}
main>section:first-child h1{font-family:Inter,sans-serif!important;font-size:56px!important;font-weight:700!important;line-height:1.15!important;letter-spacing:-.025em!important}
main>section:first-child h1>span:first-child{font-family:Inter,sans-serif!important;font-weight:700!important;line-height:1.15!important}
main>section:first-child h1>span:nth-child(2){font-family:Inter,sans-serif!important;font-style:normal!important;font-weight:700!important;line-height:1.15!important;letter-spacing:-.025em!important;color:#d4af37!important}
main>section:first-child .max-w-4xl{max-width:896px!important;gap:24px!important}
main>section:first-child .mt-10{margin-top:16px!important}
main>section:first-child a.sm\:min-w-\[200px\]{width:200px!important;min-width:200px!important;padding-left:28px!important;padding-right:28px!important}
main>section:first-child a.sm\:min-w-\[280px\]{width:280px!important;min-width:280px!important;padding-left:28px!important;padding-right:28px!important;color:#f5f5f7!important}
.animate-fade-in-up{animation:originalFadeInUp .8s cubic-bezier(.4,0,.2,1) both}
.scroll-reveal{opacity:0;transform:translate3d(0,34px,0);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}
.scroll-reveal.reveal-left{transform:translate3d(-34px,0,0)}
.scroll-reveal.reveal-right{transform:translate3d(34px,0,0)}
.scroll-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
.services-grid>.scroll-reveal:nth-child(2),.featured-projects-grid .scroll-reveal:nth-child(2){transition-delay:.1s}
.services-grid>.scroll-reveal:nth-child(3),.featured-projects-grid .scroll-reveal:nth-child(3){transition-delay:.2s}
.services-grid>.scroll-reveal:nth-child(4){transition-delay:.3s}
@keyframes originalFadeInUp{0%{opacity:0;transform:translate3d(0,30px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes heroScrollBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media(min-width:1024px){main>section:first-child h1{font-size:56px!important}}
@media(min-width:640px) and (max-width:1023px){main>section:first-child h1{font-size:3rem!important}}
@media(max-width:639px){main>section:first-child h1{font-size:2.25rem!important}}
@media(prefers-reduced-motion:reduce){.animate-fade-in-up{animation:none}.scroll-reveal{opacity:1;transform:none;transition:none}}

.service-hover-card{
will-change:transform,border-color,box-shadow;
transition:transform .5s cubic-bezier(.4,0,.2,1),border-color .5s cubic-bezier(.4,0,.2,1),box-shadow .5s cubic-bezier(.4,0,.2,1)!important
}
.service-hover-image{will-change:transform}
.service-hover-line{will-change:width}
@media(hover:hover) and (pointer:fine){
.service-hover-card:hover{
transform:translateY(-18px)!important;
border-color:rgba(212,175,55,.78)!important;
box-shadow:0 0 0 1px rgba(212,175,55,.16),0 18px 46px rgba(0,0,0,.48),0 0 22px rgba(212,175,55,.13)!important
}
.service-hover-card:hover .service-hover-image{transform:scale(1.05)!important}
.service-hover-card:hover .service-hover-line{width:48px!important}
}

.route-nav-item{
position:relative;
color:rgba(255,255,255,.85)!important
}
.route-nav-item>span{display:none!important}
.route-nav-item:after{
content:"";
position:absolute;
right:0;
bottom:-2px;
left:0;
height:1px;
background:#ffd700;
box-shadow:0 0 8px rgba(255,215,0,.6);
transform:scaleX(0);
transform-origin:center;
transition:transform .25s cubic-bezier(.4,0,.2,1)
}
.route-nav-item:hover,.route-nav-item.is-active{color:#ffd700!important}
.route-nav-item.is-active:after{transform:scaleX(1)}
.mobile-route-item{
background-color:transparent!important;
color:rgba(255,255,255,.85)!important
}
.mobile-route-item.is-active{
background-color:rgba(255,215,0,.1)!important;
color:#ffd700!important
}

.corporate-dropdown:before{
content:"";
position:absolute;
right:0;
bottom:100%;
left:0;
height:13px
}
.corporate-nav-group:hover .corporate-dropdown,
.corporate-nav-group:focus-within .corporate-dropdown{
opacity:1!important;
visibility:visible!important;
transform:translateX(-50%) translateY(0)!important
}
.corporate-nav-group:hover .corporate-nav-chevron,
.corporate-nav-group:focus-within .corporate-nav-chevron{
transform:rotate(180deg)!important
}
.corporate-dropdown-link:hover,
.corporate-dropdown-link:focus-visible,
.corporate-dropdown-link.is-active{
color:#ffd700!important;
background-color:rgba(212,175,55,.12)!important;
outline:0
}
.corporate-dropdown-link:hover>span,
.corporate-dropdown-link:focus-visible>span,
.corporate-dropdown-link.is-active>span{
background-color:#ffd700!important;
box-shadow:0 0 8px rgba(255,215,0,.45)
}
.corporate-dropdown-link:hover>svg,
.corporate-dropdown-link:focus-visible>svg,
.corporate-dropdown-link.is-active>svg{
opacity:1!important;
transform:translateX(0)!important
}
.header-quote-button{
will-change:transform,background,box-shadow,filter
}
.header-quote-button:hover,
.header-quote-button:focus-visible{
transform:translateY(-2px);
background:linear-gradient(135deg,#d4af37 0%,#b8962c 100%)!important;
box-shadow:0 0 32px rgba(212,175,55,.5),0 8px 22px rgba(0,0,0,.38)!important;
filter:brightness(1.08);
outline:0
}

.about-value-card,
.about-service-card{
will-change:transform,border-color,box-shadow;
transition:transform .4s cubic-bezier(.4,0,.2,1),border-color .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1)!important
}
.about-team-card{
will-change:transform
}
.about-team-card .rep-card{
will-change:border-color,box-shadow;
transition:border-color .5s cubic-bezier(.4,0,.2,1),box-shadow .5s cubic-bezier(.4,0,.2,1)!important
}
@media(hover:hover) and (pointer:fine){
.about-value-card:hover{
transform:translateY(-18px)!important;
border-color:rgba(212,175,55,.48)!important;
box-shadow:0 18px 46px rgba(0,0,0,.38),0 0 24px rgba(212,175,55,.08)!important
}
.about-team-card:hover .rep-card{
border-color:rgba(212,175,55,.58)!important;
box-shadow:0 0 64px rgba(212,175,55,.15),0 24px 64px rgba(0,0,0,.42),inset 0 0 24px rgba(212,175,55,.025)!important
}
.about-service-card:hover{
transform:translateY(-14px)!important;
border-color:rgba(212,175,55,.5)!important;
box-shadow:0 18px 48px rgba(0,0,0,.42),0 0 26px rgba(212,175,55,.09)!important
}
}

main>section{scroll-margin-top:96px}
.stats-section{
min-height:0!important;
padding-top:80px!important;
padding-bottom:80px!important
}
.luxury-scroll-section{
position:relative;
overflow:hidden;
isolation:isolate;
backface-visibility:hidden
}
.home-slide-section{
min-height:auto;
display:block
}
.home-slide-section>div:not([style*="position: absolute"]){
width:100%
}
.home-slide-section [style*="background-image"]{
will-change:transform;
transform:translateZ(0)
}
.section-kicker,
.project-category,
.blog-date,
.contact-info-label,
.stat-label,
[style*="text-transform: uppercase"]{
letter-spacing:.22em!important
}
@media(max-width:1023px){
.home-slide-section{
min-height:auto
}
}
@media(prefers-reduced-motion:reduce){
.home-slide-section,
.home-slide-section>*,
.home-slide-section [style*="background-image"]{
transform:none!important;
clip-path:none!important
}
}
