:root{--ink:#161615;--coal:#242321;--cream:#f7f0e6;--paper:#fffaf2;--muted:#6f6a62;--steel:#7c858b;--bronze:#b98545;--bronze-dark:#8b6332;--line:rgba(22,22,21,.14);--shadow:0 22px 70px rgba(0,0,0,.16);--radius:8px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}::selection{background:var(--bronze);color:white}
.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.eyebrow{color:var(--bronze);font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800}.lead{font-size:clamp(1.05rem,1.8vw,1.28rem);color:#47423b;max-width:820px}.dark .lead,.dark p{color:#d8d0c4}.section{padding:92px 0}.section.tight{padding:56px 0}.dark{background:var(--coal);color:#fff}.soft{background:var(--cream)}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.08;margin:0 0 18px;font-weight:500}h1{font-size:clamp(2.6rem,7vw,5.9rem);max-width:1000px}h2{font-size:clamp(2rem,4vw,3.6rem)}h3{font-size:clamp(1.25rem,2vw,1.8rem)}p{margin:0 0 16px}.grid{display:grid;gap:24px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.site-header{position:fixed;inset:0 0 auto;z-index:50;transition:.25s;background:linear-gradient(rgba(0,0,0,.46),rgba(0,0,0,0));color:white}.site-header.scrolled,.site-header.open{background:rgba(255,250,242,.96);backdrop-filter:blur(14px);box-shadow:0 12px 35px rgba(0,0,0,.08);color:var(--ink)}.nav{height:82px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:12px;flex:0 0 auto}.brand img{width:190px;height:auto;background:transparent;padding:0;border-radius:0;box-shadow:none}.site-header.scrolled .brand img,.site-header.open .brand img{box-shadow:none}.nav-links{display:flex;gap:18px;margin-left:auto;align-items:center;font-size:.95rem}.nav-links a{padding:8px 0;border-bottom:1px solid transparent}.nav-links a:hover,.nav-links a.active{border-color:var(--bronze);color:var(--bronze)}.nav-actions{display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--bronze);background:var(--bronze);color:white;min-height:46px;padding:12px 18px;border-radius:var(--radius);font-weight:800;letter-spacing:.01em;cursor:pointer;transition:.22s}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(185,133,69,.25)}.btn.secondary{background:transparent;color:inherit;border-color:rgba(255,255,255,.55)}.site-header.scrolled .btn.secondary{border-color:var(--line)}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}.dark .btn.ghost{color:white;border-color:rgba(255,255,255,.25)}.hamburger{display:none;margin-left:auto;background:transparent;border:0;color:inherit;width:44px;height:44px;cursor:pointer}.hamburger span{display:block;height:2px;background:currentColor;margin:7px 8px}
.hero{min-height:92vh;display:grid;align-items:end;position:relative;color:white;overflow:hidden;background:#111}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.32)),var(--hero);background-size:cover;background-position:center;transform:scale(1.03);will-change:transform}.hero:after{content:"";position:absolute;inset:auto 0 0;height:28%;background:linear-gradient(transparent,rgba(0,0,0,.64))}.hero .container{position:relative;z-index:1;padding:160px 0 76px}.hero p{max-width:850px;font-size:clamp(1.08rem,2vw,1.38rem);color:#eee4d7}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.16);margin-top:52px;border:1px solid rgba(255,255,255,.16)}.stat{padding:18px;background:rgba(0,0,0,.22)}.stat strong{display:block;font-size:1.45rem;color:#fff}.stat span{color:#d9d0c2;font-size:.92rem}
.card{background:rgba(255,255,255,.62);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.05);transition:.22s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-body{padding:24px}.card p{color:#5f594f}.service-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#1f1e1c;color:#d7a25b;margin-bottom:18px;font-weight:900}.media{aspect-ratio:16/10;object-fit:cover;width:100%;background:#ddd}.split-card{min-height:420px;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;color:white;background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.78)),var(--image);background-size:cover;background-position:center;border-radius:var(--radius);overflow:hidden}.check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:26px 0 0;padding:0;list-style:none}.check-list li{padding-left:28px;position:relative}.check-list li:before{content:"";position:absolute;left:0;top:.65em;width:12px;height:12px;border:2px solid var(--bronze);transform:rotate(45deg)}
.steps{counter-reset:step}.step{padding:28px;border-top:1px solid rgba(255,255,255,.2)}.step:before{counter-increment:step;content:"0" counter(step);color:var(--bronze);font-weight:900}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.filter{border:1px solid var(--line);background:white;border-radius:999px;padding:9px 14px;cursor:pointer}.filter.active,.filter:hover{background:var(--ink);color:white}.projects{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{cursor:pointer}.project-card .media{aspect-ratio:4/3}.project-meta{color:var(--bronze);font-weight:800;font-size:.84rem;text-transform:uppercase;letter-spacing:.08em}.cta-band{padding:68px 0;background:linear-gradient(90deg,rgba(22,22,21,.88),rgba(22,22,21,.62)),url('https://images.unsplash.com/photo-1504917595217-d4dc5ebe6122?auto=format&fit=crop&w=1800&q=78');background-size:cover;background-position:center;color:white}
.page-hero{padding:168px 0 86px;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.28)),var(--hero);background-size:cover;background-position:center;color:white}.page-hero p{max-width:840px;color:#f2e9dc;font-size:1.2rem}.service-row{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding:34px 0;border-top:1px solid var(--line)}.pill-list{display:flex;flex-wrap:wrap;gap:10px}.pill{border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:white}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:900}.blog-card time{color:var(--muted);font-size:.9rem}.article-content{max-width:820px}.article-content h2{font-size:2rem;margin-top:34px}.contact-panel{background:white;border:1px solid var(--line);padding:28px;border-radius:var(--radius)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field.full{grid-column:1/-1}label{display:block;font-weight:800;margin-bottom:6px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius);padding:12px;background:#fff;color:var(--ink)}textarea{min-height:150px;resize:vertical}.honeypot{position:absolute;left:-9999px}.success{display:none;margin-top:14px;color:#286d37;font-weight:800}.map{min-height:330px;background:linear-gradient(135deg,#ddd6ca,#f8f2e8);display:grid;place-items:center;border-radius:var(--radius);border:1px solid var(--line);color:#59534b;text-align:center;padding:24px}
.site-footer{background:#151514;color:#f8f1e8;padding:64px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}.site-footer img{width:220px;background:transparent;padding:0;border-radius:0;margin-bottom:18px}.site-footer a:hover{color:var(--bronze)}.site-footer ul{padding:0;margin:0;list-style:none}.site-footer li{margin:7px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.16);margin-top:34px;padding-top:18px;color:#bbb}
.cookie{position:fixed;z-index:80;left:20px;right:20px;bottom:20px;background:#171716;color:white;border:1px solid rgba(255,255,255,.18);box-shadow:var(--shadow);padding:18px;display:none;max-width:760px;border-radius:var(--radius)}.cookie.show{display:block}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.prefs{display:none;margin-top:14px;border-top:1px solid rgba(255,255,255,.18);padding-top:12px}.prefs label{font-weight:600}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:90;display:none;align-items:center;justify-content:center;padding:24px}.modal.show{display:flex}.modal-card{background:var(--paper);max-width:860px;width:100%;border-radius:var(--radius);overflow:hidden}.modal-card button{float:right;margin:12px}.reveal{opacity:0;transform:translateY(24px);transition:.65s}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.nav-links,.nav-actions{display:none}.hamburger{display:block}.site-header.open .nav-links,.site-header.open .nav-actions{display:flex}.site-header.open .nav{height:auto;min-height:82px;align-items:flex-start;flex-wrap:wrap;padding-bottom:18px}.site-header.open .nav-links{order:3;flex-direction:column;align-items:flex-start;width:100%;margin-left:0}.site-header.open .nav-actions{order:4;width:100%;flex-wrap:wrap}.two,.three,.four,.projects,.footer-grid{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.service-row{grid-template-columns:1fr}.hero{min-height:820px}}
@media(max-width:640px){.container{width:min(100% - 28px,var(--max))}.section{padding:64px 0}.hero .container{padding-bottom:48px}.two,.three,.four,.projects,.footer-grid,.check-list,.form-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.brand img{width:150px;padding:0}.nav{height:72px}.page-hero{padding-top:132px}.hero-actions .btn,.cta-band .btn{width:100%}.card-body{padding:20px}h1{font-size:2.72rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Luxe Studio inspired refinement */
:root{--ink:#2c2b29;--coal:#292928;--cream:#f3eee5;--paper:#fff;--muted:#64625f;--steel:#777b7d;--bronze:#d4a06a;--bronze-dark:#b9844d;--line:rgba(44,43,41,.12);--shadow:0 24px 70px rgba(35,33,30,.09);--radius:8px;--max:1240px}
body{background:var(--paper);color:var(--ink);font-size:16px}
.container{width:min(var(--max),calc(100% - 48px))}
.section{padding:106px 0}
.soft{background:var(--cream)}
.dark{background:#292929}
.eyebrow{display:block;color:var(--bronze);font-size:.82rem;letter-spacing:.28em;font-weight:800;margin-bottom:18px}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;color:inherit;letter-spacing:-.01em}
h1{font-size:clamp(3rem,6.2vw,5.6rem)}
h2{font-size:clamp(2rem,3.2vw,3.05rem)}
h3{font-size:clamp(1.28rem,1.65vw,1.68rem)}
.lead{color:#55524e;line-height:1.72}
.site-header{background:linear-gradient(rgba(17,18,20,.48),rgba(17,18,20,0));border-top:3px solid rgba(212,160,106,.9)}
.site-header.scrolled,.site-header.open{background:rgba(255,255,255,.96);box-shadow:0 10px 32px rgba(0,0,0,.06);border-top-color:var(--bronze)}
.nav{height:96px}
.brand img{width:148px;padding:0;background:transparent;border-radius:0;box-shadow:none}
.site-logo img{
  display:block;
  max-height:72px;
  width:auto;
  background:transparent;
}

/* Production override: never draw a panel behind the transparent logo. */
.site-logo,
.site-logo img,
.brand.site-logo,
.brand.site-logo img,
.site-footer .site-logo,
.site-footer .site-logo img{
  background:transparent!important;
  background-color:transparent!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
}

/* Production override: never draw a panel behind the transparent logo. */
.site-logo,
.site-logo img,
.brand.site-logo,
.brand.site-logo img,
.site-footer .site-logo,
.site-footer .site-logo img{
  background:transparent!important;
  background-color:transparent!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
}
.site-header.scrolled .brand img,.site-header.open .brand img{box-shadow:none}
.nav-links{gap:26px;margin-left:auto;font-weight:800}
.nav-links a{border-bottom:0;position:relative}
.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--bronze);transform:scaleX(0);transition:.22s}
.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1)}
.nav-links a:hover,.nav-links a.active{color:inherit}
.btn{min-height:50px;padding:13px 24px;border-radius:8px;background:#f0c62d;border-color:#f0c62d;color:#fff;text-transform:uppercase;font-size:.92rem;letter-spacing:.04em}
.btn:hover{box-shadow:0 16px 38px rgba(212,160,106,.28)}
.btn.secondary{background:transparent;border:2px solid rgba(255,255,255,.88);color:#fff}
.site-header.scrolled .btn.secondary,.site-header.open .btn.secondary{color:var(--ink);border-color:#6f6d69}
.btn.ghost{background:transparent;color:var(--ink);border:2px solid #6f6d69}
.hero{min-height:94vh;align-items:center}
.hero:before{background:linear-gradient(90deg,rgba(31,35,42,.72),rgba(31,35,42,.28)),var(--hero);background-size:cover;background-position:center}
.hero .container{padding:180px 0 80px}
.hero h1{max-width:780px;color:#fff;text-shadow:0 2px 28px rgba(0,0,0,.18)}
.hero h1::first-line{color:#fff}
.hero p{max-width:710px;font-weight:800;color:#f5f2ee}
.stats{background:transparent;border:0;gap:24px;max-width:900px}
.stat{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);border-radius:8px;text-align:center}
.stat strong{font-family:Georgia,'Times New Roman',serif;color:var(--bronze);font-size:2rem}
.card{background:#fff;border:0;border-radius:8px;box-shadow:var(--shadow)}
.card:hover{transform:translateY(-6px);box-shadow:0 30px 80px rgba(35,33,30,.14)}
.card-body{padding:34px}
.four .card{text-align:center}
.service-icon{width:72px;height:72px;margin:6px auto 26px;background:linear-gradient(135deg,#eef4f6,#fff);color:var(--bronze);border:1px solid rgba(212,160,106,.28);box-shadow:0 14px 35px rgba(0,0,0,.08)}
.card a:not(.btn){display:inline-block;color:var(--bronze-dark);font-weight:800;border-bottom:2px solid var(--bronze);line-height:1.2;margin-top:8px}
.split-card{border-radius:8px;min-height:460px;box-shadow:var(--shadow)}
.check-list li:before{border-color:var(--bronze);background:transparent}
.steps{align-items:start;text-align:center}
.step{border-top:0;padding:28px 22px}
.step:before{display:block;font-family:Georgia,'Times New Roman',serif;font-size:3rem;line-height:1;color:var(--bronze);margin-bottom:22px}
.step h3:after,.site-footer h3:after{content:"";display:block;width:28px;height:2px;background:var(--bronze);margin:12px auto 0}
.dark .eyebrow,.dark .step:before{color:var(--bronze)}
.dark h2,.dark h3{color:#fff}
.filters{justify-content:center;gap:14px;margin:34px 0 44px}
.filter{padding:13px 24px;border:2px solid #6f6d69;background:#fff;border-radius:16px;text-transform:uppercase;letter-spacing:.04em;font-weight:900;color:#666}
.filter.active,.filter:hover{background:var(--bronze);border-color:var(--bronze);color:#fff}
.projects{gap:28px}
.project-card{border-radius:8px;overflow:hidden}
.project-card .media{aspect-ratio:1.02/1;transition:.35s}
.project-card:hover .media{transform:scale(1.035)}
.project-meta{color:var(--bronze-dark);letter-spacing:.04em}
.cta-band{padding:88px 0;background:linear-gradient(90deg,rgba(41,41,41,.92),rgba(41,41,41,.68)),url('https://images.unsplash.com/photo-1504917595217-d4dc5ebe6122?auto=format&fit=crop&w=1800&q=78');text-align:center}
.cta-band p{max-width:760px;margin-inline:auto}
.cta-band .hero-actions{justify-content:center}
.page-hero{padding:190px 0 104px;background:linear-gradient(90deg,rgba(31,35,42,.74),rgba(31,35,42,.3)),var(--hero);background-size:cover;background-position:center}
.page-hero h1{max-width:900px;color:#fff}
.service-row{padding:46px 0;gap:54px}
.pill{background:#fff;border:0;box-shadow:0 10px 24px rgba(35,33,30,.06);padding:11px 16px}
.faq details{background:#fff;margin-bottom:12px;border:0;border-radius:8px;padding:20px 24px;box-shadow:0 12px 32px rgba(35,33,30,.06)}
.contact-panel{background:#fff;border:0;border-radius:8px;padding:38px;box-shadow:var(--shadow)}
input,select,textarea{border-color:#ddd8d1;border-radius:7px;padding:14px 16px}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(212,160,106,.42);outline-offset:2px}
.map{border:0;background:#efe9df;box-shadow:inset 0 0 0 1px rgba(44,43,41,.08)}
.site-footer{background:#101010;color:#eee;padding:76px 0 26px}
.site-footer img{width:172px;background:transparent;padding:0;border-radius:0}
.site-footer h3{font-size:1.18rem;color:#fff}
.site-footer h3:after{margin-left:0}
.site-footer p,.site-footer li{color:#bbb}
.footer-grid{gap:58px}
.footer-bottom{color:#aaa}

@media(max-width:980px){.nav{height:84px}.nav-links{gap:16px}.brand img{width:138px}.section{padding:82px 0}.hero{min-height:820px}.stats{max-width:none}}
@media(max-width:640px){.container{width:min(100% - 28px,var(--max))}.section{padding:66px 0}.brand img{width:126px;padding:0}.nav{height:74px}.hero .container{padding-top:142px}.hero-actions{gap:12px}.stats{gap:12px}.filter{width:100%;border-radius:12px}.card-body,.contact-panel{padding:24px}.page-hero{padding-top:142px}}
.site-logo img{
  display:block;
  max-height:72px;
  width:auto;
  background:transparent;
}

/* Production override: never draw a panel behind the transparent logo. */
.site-logo,
.site-logo img,
.brand.site-logo,
.brand.site-logo img,
.site-footer .site-logo,
.site-footer .site-logo img{
  background:transparent!important;
  background-color:transparent!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
}
