*{box-sizing:border-box}
:root{--bg:#f4f1eb;--paper:#fff;--ink:#151515;--muted:#6c675f;--dark:#111;--gold:#d0ad72;--line:rgba(21,21,21,.12);--radius:22px}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.55}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.shell{width:min(1180px,calc(100% - 40px));margin:auto}
.header{position:sticky;top:0;z-index:50;background:rgba(244,241,235,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{height:76px;display:flex;align-items:center;gap:28px}.brand img{width:180px;height:auto}.desktop-nav{display:flex;gap:28px;margin-left:auto}.desktop-nav a{font-size:14px;font-weight:700}.header-call{display:flex;align-items:center;gap:10px;padding:9px 13px;background:#fff;border:1px solid var(--line);border-radius:999px}.header-call span{font-size:11px;color:var(--muted)}.header-call strong{font-size:13px}.menu-btn{display:none;margin-left:auto;width:44px;height:44px;border:0;background:transparent}.menu-btn span{display:block;height:2px;background:#111;margin:6px}.mobile-menu{display:none;padding:0 20px 16px}.mobile-menu a{display:block;padding:13px 0;border-bottom:1px solid var(--line);font-weight:700}
.hero{background:#111;color:#fff}.hero-grid{min-height:720px;display:grid;grid-template-columns:1fr .9fr;gap:64px;align-items:center;padding:76px 0}.kicker{margin:0 0 16px;color:#d9c39f;text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:11px}.kicker.dark{color:#8c6a34}.hero h1,.section h2,.contact h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.04em;line-height:.94;margin:0}.hero h1{font-size:clamp(52px,7vw,94px)}.hero h1 em{color:#d0ad72;font-style:normal}.lead{max-width:650px;color:#c8c4bd;font-size:18px;margin:26px 0 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.button{min-height:52px;padding:0 22px;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-1px)}.gold{background:var(--gold);color:#111}.outline{border-color:rgba(255,255,255,.25);color:#fff}.stats{margin-top:46px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14);display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stats strong{font-size:23px}.stats span{display:block;font-size:11px;color:#9f9b94}.hero-art{margin:0;border-radius:28px;overflow:hidden;background:#252525;box-shadow:0 30px 80px rgba(0,0,0,.35);position:relative}.hero-art img{width:100%;aspect-ratio:3/2;object-fit:cover}.hero-art figcaption{position:absolute;right:16px;bottom:16px;background:rgba(17,17,17,.78);padding:9px 12px;border-radius:999px;font-size:11px;color:#eee}
.benefits{background:var(--gold)}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.benefit-grid span{padding:17px 12px;border-right:1px solid rgba(0,0,0,.15);font-size:12px;font-weight:800}.benefit-grid span:last-child{border-right:0}
.section{padding:108px 0}.section-head{display:grid;grid-template-columns:1fr .75fr;gap:64px;align-items:end;margin-bottom:46px}.section h2,.contact h2{font-size:clamp(42px,5vw,66px)}.section-head>p{margin:0;color:var(--muted);font-size:16px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.service{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:var(--radius);padding:27px;min-height:300px;display:flex;flex-direction:column}.service>span{font-size:11px;color:#8c6a34;font-weight:800}.service h3{margin:52px 0 10px;font-size:23px}.service p{margin:0;color:var(--muted);font-size:14px}.service a{margin-top:auto;font-weight:800;font-size:13px}
.dark-section{background:#111;color:#fff}.invert>p{color:#aaa59d}.projects{display:grid;grid-template-columns:1.25fr .875fr .875fr;gap:15px}.project{margin:0;position:relative;border-radius:var(--radius);overflow:hidden;min-height:360px;background:#222}.project img{width:100%;height:100%;object-fit:cover}.project figcaption{position:absolute;inset:auto 16px 16px 16px;background:rgba(17,17,17,.78);backdrop-filter:blur(8px);padding:13px 14px;border-radius:14px;display:flex;justify-content:space-between;gap:12px}.project figcaption span{font-size:11px;color:#ccc}.project figcaption strong{font-size:13px}
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.steps li{padding:28px 24px 0 0;display:grid;gap:42px}.steps strong{font-size:12px;color:#8c6a34}.steps span{display:grid;gap:5px;color:var(--muted);font-size:13px}.steps b{font-size:17px;color:var(--ink)}
.rating{justify-self:end;text-align:right}.rating strong{font-size:52px;line-height:1}.rating span{display:block;color:#9c7436;letter-spacing:.13em}.rating small{color:var(--muted)}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.reviews blockquote{margin:0;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:var(--radius);padding:28px;min-height:235px;display:flex;flex-direction:column}.reviews p{font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.35;margin:0}.reviews footer{margin-top:auto;padding-top:24px;color:var(--muted);font-size:12px}
.contact{background:#171717;color:#fff}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px}.contact-copy>p:not(.kicker){color:#aaa59d;max-width:480px}.contact-list{display:grid;gap:10px;margin-top:34px}.contact-list a{font-weight:800}.contact-list span{color:#aaa59d;font-size:13px}.contact-form{background:#f4f1eb;color:#171717;padding:30px;border-radius:26px}.two{display:grid;grid-template-columns:1fr 1fr;gap:13px}.contact-form label{display:block;margin-bottom:13px}.contact-form label>span{display:block;font-size:11px;font-weight:800;margin-bottom:6px;color:#635e57}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(0,0,0,.14);background:#fff;border-radius:13px;padding:14px 15px;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:#9e7a3d;box-shadow:0 0 0 3px rgba(158,122,61,.10)}.consent{display:flex!important;align-items:flex-start;gap:9px}.consent input{width:17px!important;height:17px;margin-top:2px}.consent span{margin:0!important;font-weight:500!important}.submit{border:0}.form-status{font-size:12px;margin:12px 0 0;color:#625b50}
.footer{background:#0e0e0e;color:#a9a59d;padding:34px 0 90px}.footer-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:center}.footer img{filter:invert(1) grayscale(1) brightness(3);opacity:.85}.footer p{font-size:12px}.footer a{color:#fff;font-size:13px;font-weight:800}
.tap-call{display:none}
.js-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.js-reveal.in{opacity:1;transform:none}
@media (max-width:980px){
  .desktop-nav,.header-call{display:none}.menu-btn{display:block}.mobile-menu.open{display:block}
  .hero-grid{grid-template-columns:1fr;gap:36px;min-height:auto;padding:64px 0}.hero-art{max-width:760px}.section-head{grid-template-columns:1fr;gap:20px}.cards{grid-template-columns:1fr 1fr}.projects{grid-template-columns:1fr 1fr}.project.wide{grid-column:1/-1}.steps{grid-template-columns:1fr 1fr;gap:28px}.reviews{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.rating{justify-self:start;text-align:left}.footer-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .shell{width:min(100% - 28px,1180px)}.nav{height:68px}.brand img{width:156px}.hero-grid{padding:50px 0 34px}.hero h1{font-size:50px}.lead{font-size:16px}.hero-art{border-radius:18px}.stats{gap:8px}.stats strong{font-size:18px}.stats span{font-size:10px}.benefit-grid{grid-template-columns:1fr 1fr}.benefit-grid span{border-bottom:1px solid rgba(0,0,0,.12)}.section{padding:74px 0}.cards{grid-template-columns:1fr}.service{min-height:250px}.service h3{margin-top:34px}.projects{grid-template-columns:1fr}.project.wide{grid-column:auto}.project{min-height:300px}.steps{grid-template-columns:1fr}.steps li{border-bottom:1px solid var(--line);padding-bottom:20px;gap:18px}.two{grid-template-columns:1fr}.contact-form{padding:20px}.footer{padding-bottom:100px}.tap-call{position:fixed;z-index:60;display:flex;left:12px;right:12px;bottom:12px;min-height:58px;background:#d0ad72;color:#111;border-radius:999px;align-items:center;justify-content:center;gap:10px;box-shadow:0 15px 45px rgba(0,0,0,.28)}.tap-call span{font-size:11px}.tap-call strong{font-size:15px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js-reveal{opacity:1;transform:none;transition:none}.button{transition:none}}


.reviews-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:-8px 0 18px}
.reviews-toolbar p{margin:0;color:var(--muted);font-size:13px}
.review-button{background:#111;color:#fff;border:1px solid #111;min-height:44px;padding:0 18px}
.review-card{margin:0;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:var(--radius);padding:28px;min-height:250px;display:flex;flex-direction:column}
.review-card .review-stars{color:#9c7436;letter-spacing:.12em;font-size:14px;margin-bottom:16px}
.review-card p{font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.35;margin:0}
.review-card footer{margin-top:auto;padding-top:24px;color:var(--muted);font-size:12px}
.reviews-note{margin:16px 0 0;color:var(--muted);font-size:12px}
.review-modal{width:min(650px,calc(100% - 26px));border:0;border-radius:26px;padding:0;background:#f4f1eb;color:#171717;box-shadow:0 30px 100px rgba(0,0,0,.38)}
.review-modal::backdrop{background:rgba(0,0,0,.64);backdrop-filter:blur(4px)}
.review-form{padding:28px}
.review-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}
.review-form-head h3{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:42px;letter-spacing:-.035em;font-weight:500}
.close-review{width:42px;height:42px;border-radius:50%;border:1px solid rgba(0,0,0,.13);background:#fff;font-size:27px;line-height:1;cursor:pointer}
.review-form label{display:block;margin-bottom:13px}
.review-form label>span,.star-picker>span{display:block;font-size:11px;font-weight:800;margin-bottom:6px;color:#635e57}
.review-form input,.review-form textarea{width:100%;border:1px solid rgba(0,0,0,.14);background:#fff;border-radius:13px;padding:14px 15px;outline:none}
.review-form input:focus,.review-form textarea:focus{border-color:#9e7a3d;box-shadow:0 0 0 3px rgba(158,122,61,.10)}
.star-picker{margin-bottom:17px}.stars{display:flex;gap:5px}
.stars button{border:0;background:transparent;padding:0 2px;font-size:29px;line-height:1;color:#c8c2b8;cursor:pointer}
.stars button.active{color:#9c7436}
.review-actions{display:flex;gap:10px;align-items:center}.light-outline{border:1px solid rgba(0,0,0,.18);background:transparent;color:#171717}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media (max-width:640px){
  .reviews-toolbar{align-items:flex-start;flex-direction:column}.review-button{width:100%}
  .review-form{padding:20px}.review-form-head h3{font-size:36px}.review-actions{flex-direction:column}.review-actions .button{width:100%}
}
