:root{--bg:#0b132b;--bg-deep:#070d1f;--gold:#c8a96e;--gold-bright:#d4af37;--gold-line:hsla(39,45%,61%,.25);--gold-line-hover:hsla(39,45%,61%,.55);--glass:rgba(20,30,45,.6);--glass-strong:rgba(16,24,38,.75);--text:#f8f9fa;--text-dim:rgba(248,249,250,.64);--text-faint:rgba(248,249,250,.4);--serif:"Playfair Display",serif;--sans:"Manrope",sans-serif;--body:"Inter",sans-serif;--maxw:1280px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--body);font-size:18px;line-height:1.5;font-weight:400;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(900px 600px at 88% -5%,hsla(39,45%,61%,.1),transparent 60%),radial-gradient(800px 700px at -8% 100%,hsla(39,45%,61%,.06),transparent 55%),radial-gradient(1200px 800px at 50% 40%,rgba(28,44,74,.45),transparent 70%)}footer,header,main{position:relative;z-index:1}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 48px}.display,h1,h2{font-family:var(--serif);font-weight:500;line-height:1.15;letter-spacing:.01em}h2{font-size:clamp(40px,4.5vw,64px)}.kicker{font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:16px}.kicker:before{content:"";width:48px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}.lead{color:var(--text-dim);max-width:56ch;text-wrap:pretty}.gold{color:var(--gold)}.glass{background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--gold-line);border-radius:16px}.lift{transition:transform .45s cubic-bezier(.22,.61,.36,1),box-shadow .45s,border-color .45s}.lift:hover{transform:translateY(-6px);border-color:var(--gold-line-hover);box-shadow:0 28px 60px -24px rgba(0,0,0,.65),0 0 0 1px hsla(39,45%,61%,.12)}.btn{font-family:var(--sans);font-weight:600;font-size:14px;letter-spacing:.14em;text-transform:uppercase;padding:18px 36px;border-radius:4px;cursor:pointer;text-decoration:none;display:inline-block;transition:all .35s ease;white-space:nowrap}.btn-gold{background:linear-gradient(135deg,#d9bc82,var(--gold) 55%,#a9854c);color:#10131f;border:1px solid transparent}.btn-gold:hover{box-shadow:0 12px 36px -10px hsla(39,45%,61%,.55);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--gold);border:1px solid var(--gold-line-hover)}.btn-ghost:hover{border-color:var(--gold);background:hsla(39,45%,61%,.08);transform:translateY(-2px)}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:all .45s ease;border-bottom:1px solid transparent}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:88px;max-width:1440px}.site-header.scrolled{background:rgba(11,19,43,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom-color:var(--gold-line)}.logo{display:flex;align-items:center;gap:14px;text-decoration:none}.logo-mark{width:44px;height:44px;border-radius:50%;border:1px solid var(--gold-line-hover);display:grid;place-items:center;color:var(--gold);background:radial-gradient(circle at 35% 30%,hsla(39,45%,61%,.18),transparent 70%)}.logo-text{font-family:var(--sans);font-weight:600;letter-spacing:.3em;font-size:14px;color:var(--text)}.logo-text em{font-style:normal;color:var(--gold)}.nav{display:flex;gap:40px}.nav a{font-family:var(--sans);font-weight:500;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-dim);text-decoration:none;transition:color .3s;position:relative;padding:6px 0}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--gold);transition:right .35s}.nav a:hover{color:var(--text)}.nav a:hover:after{right:0}.header-cta{padding:13px 26px;font-size:12px}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0;z-index:0}.hero-media .image-slot{width:100%;height:100%;display:block;--is-radius:0}.hero-scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(11,19,43,.55),rgba(11,19,43,.25) 40%,rgba(11,19,43,.92) 88%),radial-gradient(1000px 500px at 75% 20%,hsla(39,45%,61%,.12),transparent 60%)}.hero-content{position:relative;z-index:2;padding-top:180px}.hero h1{font-size:clamp(56px,7vw,104px);max-width:11ch;background:linear-gradient(120deg,#f4e8cf 0,var(--gold) 45%,#f8f9fa 90%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-tagline{font-family:var(--sans);font-weight:500;font-size:15px;letter-spacing:.42em;text-transform:uppercase;color:var(--text-dim);margin:28px 0 0}.hero-actions{display:flex;gap:20px;margin-top:48px;flex-wrap:wrap}.hero-stats{position:relative;z-index:2;margin-top:96px;border-radius:20px 20px 0 0;border-bottom:none;display:grid;grid-template-columns:repeat(4,1fr)}.stat{padding:40px 48px;border-right:1px solid var(--gold-line)}.stat:last-child{border-right:none}.stat b{font-family:var(--serif);font-size:72px;line-height:1;color:var(--gold)}.stat b,.stat span{display:block;font-weight:500}.stat span{margin-top:12px;font-family:var(--sans);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim)}section{padding:140px 0}.section-head{display:flex;flex-direction:column;gap:24px;margin-bottom:72px}.about-grid{display:grid;grid-template-columns:6fr 6fr;grid-gap:32px;gap:32px;align-items:stretch}.about-card{padding:64px;display:flex;flex-direction:column;gap:28px;position:relative}.about-card:before{content:"";position:absolute;left:0;top:64px;bottom:64px;width:2px;background:linear-gradient(180deg,var(--gold),transparent)}.signature{font-family:var(--serif);font-style:italic;font-size:30px;color:var(--gold);margin-top:auto}.sig-name{font-family:var(--sans);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint)}.about-media{position:relative;min-height:520px}.about-media .image-slot{width:100%;height:100%;position:absolute;inset:0}.about-media:after{content:"";position:absolute;inset:0;border-radius:16px;pointer-events:none;border:1px solid var(--gold-line);background:linear-gradient(200deg,hsla(39,45%,61%,.14),transparent 45%)}.values{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:32px;gap:32px;margin-top:32px}.value{padding:40px;display:flex;flex-direction:column;gap:14px}.value i{font-style:normal;font-family:var(--serif);font-size:20px;color:var(--gold)}.value h3{font-family:var(--sans);font-weight:600;font-size:17px;letter-spacing:.06em}.value p{font-size:15px;color:var(--text-dim)}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:32px;gap:32px}.service{padding:56px;display:flex;flex-direction:column;gap:20px;position:relative;overflow:hidden}.service:after{content:attr(data-num);position:absolute;right:36px;top:28px;font-family:var(--serif);font-size:78px;line-height:1;color:hsla(39,45%,61%,.12)}.service svg{width:44px;height:44px;stroke:var(--gold);stroke-width:1;fill:none;stroke-linecap:round;stroke-linejoin:round}.service h3{font-family:var(--serif);font-weight:500;font-size:28px;letter-spacing:.01em}.service p{font-size:16px;color:var(--text-dim);max-width:48ch}.service a{margin-top:8px;font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);text-decoration:none;display:inline-flex;align-items:center;gap:10px}.service a:after{content:"→";transition:transform .3s}.service a:hover:after{transform:translateX(6px)}.projects{background:linear-gradient(180deg,transparent,rgba(7,13,31,.7) 20%,rgba(7,13,31,.7) 80%,transparent)}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:32px;gap:32px}.project{display:flex;flex-direction:column;overflow:hidden;border-radius:16px}.project .image-slot{width:100%;height:300px;display:block;--is-radius:0}.project-body{padding:32px 36px 36px;display:flex;flex-direction:column;gap:10px;flex:1 1}.project-body small{font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}.project-body h3{font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.25}.project-body p{font-size:15px;color:var(--text-dim)}.quote-panel{padding:88px 96px;position:relative}.quote-panel:before{content:"\201C";position:absolute;left:88px;top:24px;font-family:var(--serif);font-size:160px;line-height:1;color:var(--gold);opacity:.45}.quote-panel blockquote{font-family:var(--serif);font-weight:500;font-size:clamp(24px,2.4vw,34px);line-height:1.4;max-width:30ch;margin:40px 0 0}.quote-attrib{margin-top:40px;display:flex;flex-direction:column;gap:6px}.quote-attrib b{font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:.06em}.quote-attrib span{font-size:14px;color:var(--gold)}.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:32px;gap:32px}.post{display:flex;flex-direction:column;overflow:hidden;border-radius:16px}.post .image-slot{width:100%;height:260px;display:block;--is-radius:0}.post-body{padding:32px 36px 40px;display:flex;flex-direction:column;gap:12px}.post-body time{font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--text-faint)}.post-body h3{font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.3}.post-body a{font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);text-decoration:none;margin-top:6px}.contact-band{padding:96px;display:grid;grid-template-columns:7fr 5fr;grid-gap:64px;gap:64px;align-items:center}.contact-band h2{font-size:clamp(36px,3.6vw,52px);max-width:18ch}.contact-side{display:flex;flex-direction:column;gap:24px;justify-self:end}.contact-side .phone{font-family:var(--serif);font-size:32px;color:var(--gold);text-decoration:none}.contact-side small{font-family:var(--sans);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--text-faint)}.site-footer{background:var(--bg-deep);border-top:1px solid var(--gold-line-hover);padding:96px 0 56px;margin-top:140px}.footer-grid{display:grid;grid-template-columns:4fr 3fr 3fr;grid-gap:64px;gap:64px}.footer-grid h4{font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:28px}.footer-grid p{font-size:15px;color:var(--text-dim)}.hours{display:flex;flex-direction:column;gap:14px;font-size:15px}.hours div{display:flex;justify-content:space-between;border-bottom:1px dashed rgba(248,249,250,.12);padding-bottom:12px}.hours span{color:var(--text-dim)}.hours b{font-weight:500;color:var(--text)}.footer-links{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px 32px;gap:14px 32px;list-style:none}.footer-links a{font-size:15px;color:var(--text-dim);text-decoration:none;transition:color .3s}.footer-links a:hover{color:var(--gold)}.footer-bottom{margin-top:80px;padding-top:32px;border-top:1px solid rgba(248,249,250,.08);display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:13px;color:var(--text-faint)}@media (prefers-reduced-motion:no-preference){.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.22,.61,.36,1)}.reveal.in{opacity:1;transform:none}}@media(max-width:1080px){.hero-stats{grid-template-columns:repeat(2,1fr)}.stat{border-bottom:1px solid var(--gold-line)}.about-grid,.blog-grid,.contact-band,.services-grid{grid-template-columns:1fr}.projects-grid{grid-template-columns:1fr 1fr}.values{grid-template-columns:1fr}.nav{display:none}}@media(max-width:720px){.wrap{padding:0 24px}.projects-grid{grid-template-columns:1fr}.quote-panel{padding:64px 32px}.quote-panel:before{left:32px}.footer-grid{grid-template-columns:1fr;gap:48px}.stat{padding:28px}.stat b{font-size:48px}}.page-hero{padding:200px 0 88px}.page-hero h1{font-size:clamp(48px,5.5vw,84px);max-width:14ch;background:linear-gradient(120deg,#f4e8cf 0,var(--gold) 45%,#f8f9fa 90%);-webkit-background-clip:text;background-clip:text;color:transparent}.page-hero .lead,.page-hero h1{margin-top:28px}.crumbs{font-family:var(--sans);font-weight:500;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-faint);display:flex;gap:14px}.crumbs a{color:var(--text-dim);text-decoration:none;transition:color .3s}.crumbs a:hover,.crumbs em{color:var(--gold)}.crumbs em,.crumbs i{font-style:normal}.crumbs i{color:var(--gold-line-hover)}.split{display:grid;grid-template-columns:5fr 7fr;grid-gap:64px;gap:64px;align-items:start}.split h2{font-size:clamp(32px,3.4vw,48px)}.prose{display:flex;flex-direction:column;gap:20px;color:var(--text-dim);font-size:17px}.prose b{color:var(--text);font-weight:500}.services-stack{display:flex;flex-direction:column;gap:32px}.service-detail{padding:64px;display:grid;grid-template-columns:7fr 5fr;grid-gap:56px;gap:56px;position:relative;overflow:hidden}.service-detail .num{font-family:var(--serif);font-size:18px;color:var(--gold);letter-spacing:.14em}.service-detail h3{font-family:var(--serif);font-weight:500;font-size:34px;margin:14px 0 18px}.service-detail p{color:var(--text-dim);font-size:16px;max-width:58ch}.service-detail .btn{margin-top:28px;align-self:flex-start}.service-detail ul{list-style:none;display:flex;flex-direction:column;gap:16px;border-left:1px solid var(--gold-line);padding-left:32px;align-self:center;margin:0}.service-detail li{font-size:15px;color:var(--text-dim);position:relative;padding-left:24px}.service-detail li:before{content:"—";position:absolute;left:0;color:var(--gold)}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:56px}.filter{font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:12px 24px;border-radius:100px;cursor:pointer;background:transparent;border:1px solid var(--gold-line);color:var(--text-dim);transition:all .3s}.filter:hover{border-color:var(--gold);color:var(--text)}.filter.active{background:hsla(39,45%,61%,.12);border-color:var(--gold);color:var(--gold)}.project .meta{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:18px;font-size:13px;color:var(--text-faint)}.articles{display:flex;flex-direction:column;gap:32px}.article-row{display:grid;grid-template-columns:4fr 8fr;overflow:hidden;border-radius:16px}.article-row .image-slot{width:100%;height:100%;min-height:260px;display:block;--is-radius:0}.article-body{padding:48px 56px;display:flex;flex-direction:column;gap:16px}.article-body time{font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}.article-body h3{font-family:var(--serif);font-weight:500;font-size:28px;line-height:1.25;max-width:26ch}.article-body p{font-size:16px;color:var(--text-dim);max-width:64ch}.article-body .more{margin-top:auto;font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);text-decoration:none;display:inline-flex;gap:10px}.article-body .more:after{content:"→";transition:transform .3s}.article-body .more:hover:after{transform:translateX(6px)}.contact-grid{display:grid;grid-template-columns:5fr 7fr;grid-gap:32px;gap:32px;align-items:start}.contact-info{padding:56px;display:flex;flex-direction:column;gap:40px}.contact-info .row small{display:block;font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--text-faint);margin-bottom:10px}.contact-info .row a,.contact-info .row b{font-family:var(--serif);font-weight:500;font-size:25px;color:var(--gold);text-decoration:none}.contact-info .row p{color:var(--text-dim);font-size:16px;line-height:1.6}.contact-form{padding:56px;display:flex;flex-direction:column;gap:24px}.contact-form h3{font-family:var(--serif);font-weight:500;font-size:30px}.field{display:flex;flex-direction:column;gap:10px}.field label{font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--text-faint)}.field input,.field textarea{background:rgba(11,19,43,.5);border:1px solid var(--gold-line);border-radius:6px;padding:16px 20px;color:var(--text);font-family:var(--body);font-size:16px;transition:border-color .3s;outline:none;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--gold)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px}.form-note{font-size:13px;color:var(--text-faint)}.form-success{padding:18px 24px;border:1px solid var(--gold);border-radius:8px;color:var(--gold);font-family:var(--sans);font-weight:500;font-size:15px;display:none}.form-success.show{display:block}.band{display:grid;grid-template-columns:repeat(4,1fr);border-radius:16px;overflow:hidden}.band .stat{border-bottom:none}@media(max-width:1080px){.article-row,.contact-grid,.service-detail,.split{grid-template-columns:1fr}.service-detail ul{border-left:none;padding-left:0;border-top:1px solid var(--gold-line);padding-top:24px}.band{grid-template-columns:1fr 1fr}}@media(max-width:720px){.page-hero{padding:160px 0 64px}.article-body,.contact-form,.contact-info,.service-detail{padding:32px}.form-row{grid-template-columns:1fr}}.image-slot{display:block;position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(20,30,45,.65),rgba(11,19,43,.65)),repeating-linear-gradient(45deg,hsla(39,45%,61%,.04) 0 12px,transparent 12px 24px);border:1px solid var(--gold-line)}.image-slot__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.image-slot__ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;font-family:var(--sans);font-weight:500;font-size:12px;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint)}