:root{--ch:#1f242b;--ch2:#2b323b;--gold:#c9a24f;--gold-d:#8a5a1f;--paper:#f6f1e7;--line:#e2d9c8}
.site-header{background:#fff;border-bottom:3px solid var(--gold);position:sticky;top:0;z-index:20}
.site-header .hbar{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1280px;margin:0 auto;padding:8px 20px}
.site-header .brand img{height:56px;width:auto}
.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:3px solid var(--gold);flex-direction:column;gap:0;padding:8px 20px 18px;box-shadow:0 12px 24px rgba(31,36,43,.18)}
.site-header nav.open{display:flex}
.site-header nav a{color:var(--ch);font-weight:600;font-size:16px;text-decoration:none;padding:13px 4px;border-bottom:1px solid var(--line)}
.site-header nav a[aria-current="page"]{color:var(--gold-d)}
.site-header nav a.nav-cta{background:var(--gold);color:var(--ch);border:0;border-radius:8px;text-align:center;margin-top:14px;padding:14px 16px;font-weight:700}
.menu-btn{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:48px;height:48px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:0 12px;cursor:pointer}
.menu-btn span{display:block;height:2px;background:var(--ch);border-radius:2px}
@media(min-width:1180px){.menu-btn{display:none}.site-header nav,.site-header nav.open{display:flex;position:static;flex-direction:row;align-items:center;gap:20px;padding:0;border:0;box-shadow:none;background:none}.site-header nav a{font-size:14px;padding:6px 0;border:0;white-space:nowrap}.site-header nav a:hover{color:var(--gold-d)}.site-header nav a.nav-cta{margin:0;padding:11px 16px}.site-header nav a.nav-cta:hover{background:#d8b366;color:var(--ch)}}
.h-wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.eyebrow{display:flex;align-items:center;gap:12px;color:var(--gold);font-weight:700;letter-spacing:.22em;text-transform:uppercase;font-size:13px;margin:0 0 18px}
.eyebrow:before{content:"";width:44px;height:3px;background:var(--gold);flex:none}
.eyebrow.dk{color:var(--gold-d)}.eyebrow.dk:before{background:var(--gold-d)}
.bt{display:inline-block;padding:15px 26px;border-radius:8px;font-weight:700;text-decoration:none;border:2px solid var(--gold);transition:transform .2s,background .2s,color .2s;font-size:16px;text-align:center}
.bt:hover{transform:translateY(-2px)}
.bt-gold{background:var(--gold);color:var(--ch)}.bt-gold:hover{background:#d8b366}
.bt-line{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}.bt-line:hover{border-color:var(--gold);color:var(--gold)}
.bt-dark{background:var(--ch);color:#fff;border-color:var(--ch)}.bt-dark:hover{background:var(--ch2)}
.bt-out{background:transparent;color:var(--ch);border-color:var(--ch)}.bt-out:hover{background:var(--ch);color:#fff}
.h-hero{background:var(--ch);color:#fff;padding:48px 0 56px}
.h-hero .grid2{display:grid;gap:36px;align-items:center}
.h-hero h1{color:#fff;font-size:clamp(2.5rem,8vw,4.4rem);line-height:1.05;margin:0 0 18px}
.h-hero .sub{color:var(--gold);font-weight:700;font-size:clamp(1rem,2.4vw,1.2rem);line-height:1.5;margin:0 0 20px}
.h-hero p.intro{color:#e6e0d3;max-width:560px;margin:0 0 14px}
.h-hero .row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.duo figure{margin:0}
.duo img{width:100%;height:340px;object-fit:cover;border-radius:10px;border:1px solid rgba(201,162,79,.5)}
.duo figcaption{color:var(--gold);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-top:10px;font-weight:700}
@media(min-width:900px){.h-hero{padding:80px 0 88px}.h-hero .grid2{grid-template-columns:1.1fr .9fr;gap:56px}.duo img{height:500px}}
.dual{display:grid;grid-template-columns:1fr}
.panel{display:flex;flex-direction:column}
.panel img{width:100%;height:260px;object-fit:cover}
.panel .in{padding:40px 24px 48px;flex:1;display:flex;flex-direction:column;align-items:flex-start}
.panel h2{font-size:clamp(1.8rem,4.5vw,2.5rem)}
.panel.res{background:var(--paper)}.panel.res h2{color:var(--ch)}
.panel.com{background:var(--ch);color:#e6e0d3}.panel.com h2{color:#fff}
ul.gl{list-style:none;padding:0;margin:8px 0 28px;display:grid;gap:10px;grid-template-columns:1fr}
ul.gl li{position:relative;padding-left:26px;font-weight:600}
ul.gl li:before{content:"";position:absolute;left:3px;top:.6em;width:9px;height:9px;background:var(--gold);transform:rotate(45deg)}
.panel.res ul.gl li:before{background:var(--gold-d)}
@media(min-width:900px){.dual{grid-template-columns:1fr 1fr}.panel img{height:340px}.panel .in{padding:56px 48px 64px}ul.gl{grid-template-columns:1fr 1fr 0}}
@media(min-width:900px){ul.gl{grid-template-columns:1fr}}
@media(min-width:1100px){ul.gl{grid-template-columns:1fr 1fr}}
.why{background:#fff;padding:80px 0}
.why h2,.projects h2,.contactband h2{font-size:clamp(1.9rem,5vw,2.8rem);max-width:720px}
.whyrow{display:grid;gap:30px;margin-top:40px}
.wi{border-top:3px solid var(--gold);padding-top:18px}
.wi .n{font-family:Georgia,serif;font-size:2.8rem;line-height:1;color:var(--gold-d);display:block;margin-bottom:10px}
.wi h3{font-size:1.2rem;color:var(--ch)}.wi p{margin:0}
@media(min-width:700px){.whyrow{grid-template-columns:1fr 1fr}}
@media(min-width:1050px){.whyrow{grid-template-columns:repeat(5,1fr);gap:26px}}
.projects{background:var(--paper);padding:80px 0}
.pgrid{display:grid;gap:22px;margin-top:36px}
.pc{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px}
.pc h3{font-size:1.3rem;margin-bottom:.3em}.pc p.note{margin:0 0 16px;font-size:15px;color:#444}
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.strip figure{margin:0}
.strip .lb{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-d);border-bottom:2px solid var(--gold);padding-bottom:4px;margin-bottom:8px}
.strip img{width:100%;max-width:206px;aspect-ratio:1/1;object-fit:cover;border-radius:6px;border:1px solid var(--line)}
.slotbox{background:var(--ch);border-radius:8px;padding:26px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;min-height:170px;border:1px solid var(--gold)}
.slotbox svg{width:54px;height:54px}.slotbox span{color:#e6e0d3;font-weight:600}
.pc.more{background:var(--ch);border-color:var(--ch);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:6px}
.pc.more h3{color:#fff}.pc.more p{color:#e6e0d3;margin:0 0 14px}
@media(min-width:760px){.pgrid{grid-template-columns:1fr 1fr}.pc{padding:26px}}
.contactband{background:var(--ch);color:#e6e0d3;padding:84px 0}
.contactband h2{color:#fff}
.cgrid{display:grid;gap:20px;margin:34px 0 26px}
.cbox{border:1px solid rgba(201,162,79,.55);border-radius:10px;padding:26px;background:var(--ch2)}
.cbox h3{color:#fff;margin-bottom:.3em}.cbox p{margin:0 0 16px}
.cband-foot{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.cband-foot a.tel{color:#fff;font-weight:700;font-size:1.25rem;text-decoration:none;border-bottom:2px solid var(--gold)}
.contactband .area{margin:0;max-width:720px}
.contactband a.more{color:var(--gold)}
@media(min-width:760px){.cgrid{grid-template-columns:1fr 1fr}}
.page-hero{background:var(--ch);color:#fff;padding:48px 0 56px}
.page-hero h1{color:#fff;font-size:clamp(2.2rem,6vw,3.6rem)}
.page-hero p{color:#e6e0d3;max-width:620px}
.page-hero .grid2{display:grid;gap:30px;align-items:center}
.page-hero img.ph{width:100%;height:300px;object-fit:cover;border-radius:10px;border:1px solid rgba(201,162,79,.5)}
.page-hero .row{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
@media(min-width:900px){.page-hero{padding:72px 0 80px}.page-hero .grid2{grid-template-columns:1.2fr .8fr;gap:50px}.page-hero img.ph{height:380px}}
.facts{padding:70px 0;background:#fff}
.facts ul{list-style:none;padding:0;margin:20px 0 28px;display:grid;gap:14px;max-width:720px}
.facts li{position:relative;padding-left:28px}
.facts li:before{content:"";position:absolute;left:3px;top:.6em;width:9px;height:9px;background:var(--gold-d);transform:rotate(45deg)}
.facts .split2{display:grid;gap:30px;align-items:center}
.facts img.ph{width:100%;height:320px;object-fit:cover;border-radius:10px}
@media(min-width:900px){.facts .split2{grid-template-columns:1.2fr .8fr;gap:56px}.facts img.ph{height:440px}}
.workpage{padding:64px 0;background:var(--paper)}
.workpage .proj{margin-top:22px}
.hfoot{background:var(--ch);color:#e6e0d3;padding:28px 0;font-size:15px;border-top:3px solid var(--gold)}
.hfoot a{color:#fff}
@media(prefers-reduced-motion:no-preference){.rv{opacity:0;transform:translateY(14px);transition:opacity .5s,transform .5s}.rv.in{opacity:1;transform:none}}
.workpage .proj{opacity:1!important;transform:none!important}
