:root{--bg:#0b0b0c;--bg2:#0f0f11;--card:#141416;--line:rgba(255,255,255,.09);--line2:rgba(201,160,118,.35);--bronze:#c49a6c;--bronze2:#d6bb9d;--bronze3:#a57c55;--text:#f2eee9;--muted:#9c9792;--display:"Cormorant Garamond",Garamond,"Times New Roman",serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}
.wrap{width:min(1240px,100% - 64px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:var(--bronze);color:#000;padding:8px 14px;z-index:100}.skip:focus{left:10px}
h1,h2,h3,h4,h5,h6,.num,.price{font-variant-numeric:lining-nums}h1,h2,h3,h4,h5,h6{font-family:var(--display);font-weight:300;line-height:1.05;margin:0 0 .5em;color:#fff;letter-spacing:0}
h1{font-size:clamp(3rem,6.4vw,5.4rem)}h2{font-size:clamp(2rem,3vw,2.5rem);line-height:1.1}h3{font-size:1.4rem;font-weight:400}
p{margin:0 0 1em}
.eyebrow{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze);font-weight:500;margin:0 0 16px}
.muted{color:var(--muted)}
.btn{display:inline-flex;align-items:center;gap:12px;padding:13px 26px;border-radius:999px;background:linear-gradient(180deg,#dcc3a8,#c9a886);color:#1a130c;font-weight:500;text-decoration:none;border:1px solid transparent;cursor:pointer;font:500 .95rem var(--sans);transition:filter .2s,transform .2s,box-shadow .2s}
.btn:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 10px 28px rgba(201,160,118,.22)}
.btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.55);padding:9px 22px;font-size:.85rem}.btn-outline:hover{border-color:var(--bronze2);color:var(--bronze2);box-shadow:none}
.arrow::after{content:"\2192";font-size:1.05em;line-height:1}
.link{display:inline-flex;gap:10px;align-items:center;color:#fff;text-decoration:none;font-size:.9rem;font-weight:500;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:3px}.link:hover{color:var(--bronze2);border-color:var(--bronze2)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--bronze2);outline-offset:3px}
/* header */
.site-header{position:absolute;inset:0 0 auto;z-index:50}
.site-header.solid{position:relative;background:var(--bg);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:96px;gap:30px}
.brand{display:block;line-height:0}.brand .logo{height:50px;width:auto}
.nav-menu{display:flex;align-items:center;gap:44px}
.nav-links{display:flex;gap:38px}
.nav-links a{color:#e9e5e0;text-decoration:none;font-size:.86rem;font-weight:500;padding:6px 0;border-bottom:1px solid transparent}
.nav-links a:hover{color:var(--bronze2)}.nav-links a[aria-current=page]{color:var(--bronze2);border-color:var(--bronze)}
.nav-cta{margin-left:22px}
.nav-login{margin-left:52px;color:#a9a39c;text-decoration:none;font-size:.76rem;font-weight:500;letter-spacing:.04em;white-space:nowrap}.nav-login:hover{color:var(--bronze2)}
.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:10px;cursor:pointer}
.nav-toggle span{display:block;height:1.5px;background:#fff;margin:6px 0;transition:.3s}
/* hero */
.hero{position:relative;min-height:min(100vh,860px);display:flex;align-items:center;overflow:hidden;padding:130px 0 90px;background:var(--bg)}
.hero-bg,.hero-bg img{position:absolute;inset:0;width:100%;height:100%}.hero-bg img{object-fit:cover;object-position:right center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,9,.92) 0%,rgba(8,8,9,.72) 32%,rgba(8,8,9,.3) 50%,rgba(8,8,9,0) 68%),linear-gradient(0deg,var(--bg) 0%,rgba(11,11,12,0) 20%),linear-gradient(180deg,rgba(8,8,9,.6) 0%,rgba(8,8,9,0) 20%)}
.hero-inner{position:relative;z-index:1}
.hero-copy{max-width:700px;border-left:1px solid var(--line2);padding:34px 0 34px 30px}
.hero h1{margin-bottom:28px}.hero .lead{color:#ddd8d2;font-size:1.02rem;max-width:440px;margin-bottom:34px}
/* page hero (inner pages) */
.page-hero{padding:80px 0 60px;border-bottom:1px solid var(--line)}
.page-hero .hero-copy{max-width:760px;padding:10px 0 10px 30px}.page-hero h1{font-size:clamp(2.6rem,5.2vw,4.2rem)}
.page-hero .lead{color:#ddd8d2;max-width:620px;font-size:1.05rem;margin:0}
/* rows */
.row{padding:74px 0;border-top:1px solid var(--line)}.row:first-of-type{border-top:0}
.split{display:grid;grid-template-columns:310px 1fr;gap:56px;align-items:start}
.split-head{padding-right:10px}.split-head h2{margin:0;font-size:clamp(1.9rem,2.6vw,2.3rem)}
.divided{border-left:1px solid var(--line);padding-left:56px}
.services{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}
.service .ico{width:34px;height:34px;margin-bottom:18px}
.ico{fill:none;stroke:var(--bronze);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.service h3{margin:0 0 8px;font-size:1.3rem}.service p{color:var(--muted);font-size:.86rem;margin:0;max-width:190px}
.work-head p:not(.eyebrow){color:var(--muted);font-size:.9rem;max-width:230px;margin:16px 0 30px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{position:relative;display:block;border-radius:4px;overflow:hidden;background:var(--card);border:1px solid var(--line);text-decoration:none;color:#fff;aspect-ratio:216/226}
.card img{width:100%;height:78%;object-fit:cover;transition:transform .6s}
.card:hover img{transform:scale(1.04)}
.card .cap{position:absolute;inset:auto 0 0;padding:60px 20px 18px;background:linear-gradient(0deg,#121214 45%,rgba(18,18,20,0))}
.card h3{margin:0 0 2px;font-size:1.3rem}.card .meta{font-size:.78rem;color:var(--muted)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;list-style:none;margin:0;padding:0}
.step .num{display:flex;align-items:center;gap:16px;color:var(--bronze);font-family:var(--display);font-size:1.35rem;margin-bottom:14px}
.step .num::after{content:"";flex:1;height:1px;background:var(--line)}
.step h3{margin:0 0 8px;font-size:1.3rem}.step p{color:var(--muted);font-size:.86rem;margin:0;max-width:200px}
/* investment */
.invest{margin:10px 0 80px;border:1px solid var(--line);border-radius:4px;display:grid;grid-template-columns:330px 1fr;overflow:hidden;background:#0d0d0f}
.invest-copy{padding:40px 40px;border-right:1px solid var(--line)}
.invest-copy h2{font-size:clamp(1.9rem,2.7vw,2.35rem);margin-bottom:14px}
.invest-copy p{font-size:.9rem;margin:0 0 4px;color:#e1dcd6}.invest-copy .small{color:var(--muted);font-size:.82rem}
.invest-copy .link{margin-top:24px}
.invest-art{position:relative;min-height:220px;background:url(/assets/img/ribbon-band.webp) center/cover no-repeat}
.invest-art .btn{position:absolute;right:28px;bottom:36px}
/* project pages */
.project-hero{min-height:min(92vh,820px)}
.crumb{color:var(--bronze);text-decoration:none}.crumb:hover{color:var(--bronze2)}
.btn-lg{padding:18px 38px;font-size:1.05rem}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.gal-item{margin:0;border-radius:4px;overflow:hidden;border:1px solid var(--line)}.gal-item img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.gal-wide{grid-column:1/-1}.gal-wide img{aspect-ratio:16/8}
.view-cta{margin-top:40px;text-align:center}
.cards-2{grid-template-columns:repeat(2,1fr)}
.project>a{display:block}
/* pricing page */
.plan.plan-main{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:44px;border-color:var(--line2);background:linear-gradient(180deg,#18150f,#121214)}
.plan-main h2{margin-bottom:4px}.plan-main .price{font-size:3.6rem}.plan-main .muted{margin:10px 0 26px;max-width:380px}
.plans.plans-2{grid-template-columns:repeat(2,1fr);max-width:900px}
.plan{position:relative}.badge{position:absolute;top:-12px;left:30px;margin:0;background:linear-gradient(180deg,#dcc3a8,#c9a886);color:#1a130c;font-size:.68rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:4px 12px;border-radius:999px}
.btn-outline-bronze{background:transparent;color:var(--bronze2);border-color:var(--line2)}.btn-outline-bronze:hover{border-color:var(--bronze2);box-shadow:none}
/* inner page content */
.detail{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.panel{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:34px}
.panel .ico{width:34px;height:34px;margin-bottom:18px}.panel h2{font-size:1.85rem;margin-bottom:12px}
.panel p,.panel li{color:#cfcac4;font-size:.93rem}.panel ul{padding-left:18px;margin:0}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.plan{border:1px solid var(--line);border-radius:4px;padding:30px;background:var(--card);display:flex;flex-direction:column}
.plan.featured{border-color:var(--line2)}
.plan .price{font-family:var(--display);font-weight:300;font-size:3rem;color:#fff;margin:6px 0 4px;line-height:1.1}
.plan .price small{font-family:var(--sans);font-size:.85rem;color:var(--muted)}
.plan .note{color:var(--bronze2);font-size:.85rem;margin-bottom:16px}.plan ul{padding-left:18px;color:#cfcac4;font-size:.9rem;margin:0 0 24px;flex:1}
.plan .btn{align-self:flex-start}
.fine{color:var(--muted);font-size:.88rem;margin-top:26px}
.project{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center;padding:56px 0;border-top:1px solid var(--line)}
.project:first-child{border-top:0;padding-top:0}
.project img{border-radius:4px;border:1px solid var(--line);width:100%;aspect-ratio:216/172;object-fit:cover}
.tag{display:inline-block;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze2);border:1px solid var(--line2);border-radius:999px;padding:3px 11px;margin-bottom:14px}
.project h2{margin-bottom:6px}.project .meta{color:var(--muted);font-size:.85rem;margin-bottom:16px}.project p{color:#cfcac4}
.prose p{color:#cfcac4;max-width:680px;font-size:1rem}
.checks{list-style:none;padding:0;margin:0;display:grid;gap:10px}.checks li{position:relative;padding-left:26px;color:#cfcac4}
.checks li::before{content:"";position:absolute;left:2px;top:9px;width:10px;height:5px;border-left:1.5px solid var(--bronze);border-bottom:1.5px solid var(--bronze);transform:rotate(-45deg)}
/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;align-items:start}
.contact-grid aside p{color:#cfcac4}.contact-grid aside a{color:var(--bronze2)}
.form{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:34px;display:grid;gap:18px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form label{display:grid;gap:7px;font-size:.84rem;color:#d6d1cb}.opt{color:var(--muted)}
.form input,.form textarea{width:100%;background:#0c0c0d;border:1px solid rgba(255,255,255,.13);border-radius:4px;color:var(--text);padding:13px 14px;font:inherit;font-size:1rem}
.form input:focus,.form textarea:focus{border-color:var(--bronze)}.form .invalid{border-color:#d46a5a}.form textarea{resize:vertical}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.form button{justify-self:start}.form button[disabled]{opacity:.6;cursor:wait}
.form-status{margin:0;min-height:1.4em;font-size:.95rem}.form-status.ok{color:#9fd3a2}.form-status.err{color:#f0a394}
/* footer */
.site-footer{border-top:1px solid var(--line);padding:46px 0 30px}
.foot{display:grid;grid-template-columns:auto 1fr auto auto;gap:40px;align-items:center}
.foot .brand .logo{height:46px}
.foot-tag{border-left:1px solid var(--line);padding-left:36px}.foot-tag p{margin:0;color:#fff;font-size:1.25rem;font-family:var(--display);font-weight:400}.foot-tag small{color:var(--muted);font-size:.8rem}
.foot nav{display:flex;gap:28px}.foot nav a{color:#e9e5e0;text-decoration:none;font-size:.82rem;font-weight:500}.foot nav a:hover{color:var(--bronze2)}
.social{display:flex;gap:14px}.social a{display:grid;place-items:center;width:32px;height:32px;color:#e9e5e0}.social svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4}
.social a:hover{color:var(--bronze2)}
.legal{margin-top:30px;color:#6f6a65;font-size:.76rem;display:flex;gap:18px;flex-wrap:wrap}.legal a{color:#8d8781}
.page-404{padding:80px 0 120px}
/* reveal */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* responsive */
@media (max-width:1100px){.nav-links{gap:24px}.nav-login{margin-left:20px}.nav-cta{margin-left:16px}.split{grid-template-columns:1fr;gap:34px}.divided{border-left:0;padding-left:0}.foot{grid-template-columns:auto 1fr;row-gap:24px}.foot nav{grid-column:1}.social{justify-self:end}}
@media (max-width:900px){
 .nav-toggle{display:block}
 .nav-menu{position:fixed;inset:0 0 auto;top:0;padding:110px 32px 32px;flex-direction:column;align-items:stretch;gap:0;background:rgba(11,11,12,.98);border-bottom:1px solid var(--line);transform:translateY(-100%);transition:transform .3s;z-index:-1}
 .nav-links{flex-direction:column;gap:0}.nav-links a{padding:14px 0;border-bottom:1px solid var(--line);font-size:1.05rem}.nav-links a[aria-current=page]{border-color:var(--line)}
 .nav-login{margin:20px 0 0;font-size:.9rem}
 .nav-cta{margin:18px 0 0;align-self:flex-start}
 .site-header.open .nav-menu{transform:none}
 .site-header.open .nav-toggle span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.site-header.open .nav-toggle span:nth-child(2){opacity:0}.site-header.open .nav-toggle span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
 .services{grid-template-columns:1fr 1fr;row-gap:40px}.steps{grid-template-columns:1fr 1fr;row-gap:36px}
 .invest{grid-template-columns:1fr}.invest-copy{border-right:0;border-bottom:1px solid var(--line)}
 .detail,.plans,.plans.plans-2,.plan.plan-main,.contact-grid,.project{grid-template-columns:1fr}.plan.plan-main{gap:26px;padding:30px}.project{gap:24px}
}
@media (max-width:640px){
 .gallery{grid-template-columns:1fr}.gal-wide img{aspect-ratio:4/3}.cards-2{grid-template-columns:1fr}.btn-lg{padding:16px 30px}.project-hero{min-height:auto}
 .wrap{width:calc(100% - 40px)}.nav{height:80px}.brand .logo{height:40px}
 .hero{min-height:auto;padding:min(80vw,400px) 0 56px;align-items:flex-end}
 .hero-bg{bottom:auto;height:min(112vw,560px)}.hero-bg img{object-position:60% 40%}
 .hero-shade{background:linear-gradient(180deg,rgba(8,8,9,.6) 0,rgba(8,8,9,0) 90px,rgba(8,8,9,0) min(50vw,250px),rgba(11,11,12,.85) min(88vw,440px),var(--bg) min(112vw,560px))}
 .hero-copy{padding:18px 0 18px 20px}.hero .lead{font-size:.98rem}
 .row{padding:56px 0}.cards{grid-template-columns:1fr}.card{aspect-ratio:auto}.card img{height:auto;aspect-ratio:216/172}.card .cap{position:relative;padding:16px 18px 18px;background:#121214}
 .services{grid-template-columns:1fr 1fr;gap:30px 20px}.steps{grid-template-columns:1fr}
 .invest{margin-bottom:56px}.invest-copy{padding:30px 24px}.invest-art{min-height:170px}.invest-art .btn{right:16px;bottom:16px;padding:11px 18px;font-size:.88rem}
 .row2{grid-template-columns:1fr}.form{padding:22px}.panel{padding:24px}
 .foot{grid-template-columns:1fr;text-align:left}.foot-tag{border-left:0;padding-left:0}.foot nav{flex-wrap:wrap;gap:18px}.social{justify-self:start}
}
