:root{
  --ink:#14181d; --ink-2:#3d454e; --mut:#7b858f;
  --br:#c9a227; --br-2:#e3c257; --br-soft:#f7f0dc;
  --bg:#fbfaf7; --card:#fff; --line:#e8e3d8; --line-2:#f0ece3;
  --e:cubic-bezier(.22,.61,.36,1);
  --wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:"Inter","Segoe UI",system-ui,-apple-system,sans-serif;
  font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
:focus-visible{outline:3px solid var(--br);outline-offset:3px;border-radius:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:24px}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:12px 20px;z-index:999}
.skip:focus{left:0}

.top{position:sticky;top:0;z-index:50;background:rgba(251,250,247,.85);
  backdrop-filter:blur(12px) saturate(155%);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:26px;height:74px}
.logo{display:flex;align-items:baseline;gap:1px;font-weight:800;font-size:20px;letter-spacing:-.025em}
.logo i{font-style:normal;color:var(--br)}
.nav{display:flex;gap:24px;margin-left:auto;font-size:14.5px;color:var(--ink-2)}
.nav a{position:relative;padding:4px 0;white-space:nowrap}
.nav a::after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:0;background:var(--br);transition:width .35s var(--e)}
.nav a:hover::after,.nav a[aria-current]::after{width:100%}
.nav a[aria-current]{color:var(--ink);font-weight:600}
.lang{display:flex;gap:6px;font-size:13px;color:var(--mut)}
.lang a{padding:3px 7px;border:1px solid var(--line);border-radius:2px}
.lang a[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}
.tel{font-weight:700;font-size:15.5px;white-space:nowrap}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 26px;
  border-radius:2px;font-weight:600;font-size:15px;border:1px solid var(--ink);background:var(--ink);
  color:#fff;position:relative;overflow:hidden;transition:.35s var(--e);cursor:pointer;font-family:inherit}
.btn::before{content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.22) 50%,transparent 65%);
  transform:translateX(-100%) skewX(-18deg);transition:transform .8s var(--e)}
.btn:hover::before{transform:translateX(120%) skewX(-18deg)}
.btn:hover{background:var(--br);border-color:var(--br);color:var(--ink)}
.ico-btn{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;
  flex:0 0 46px;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:2px;
  transition:.35s var(--e);position:relative;overflow:hidden}
.ico-btn::before{content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.25) 50%,transparent 65%);
  transform:translateX(-100%) skewX(-18deg);transition:transform .8s var(--e)}
.ico-btn:hover::before{transform:translateX(120%) skewX(-18deg)}
.ico-btn:hover{background:var(--br);border-color:var(--br);color:var(--ink)}
.ico-btn svg{position:relative;z-index:1}
.btn-g{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-g:hover{background:var(--ink);color:#fff;border-color:var(--ink)}

.eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:11.5px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;color:var(--br)}
.eyebrow::before{content:"";width:34px;height:1.5px;background:var(--br)}

h1{font-size:clamp(32px,4.6vw,54px);line-height:1.07;letter-spacing:-.035em;font-weight:800;margin:20px 0 0}
h1 em{font-style:normal;color:var(--br)}
h2{font-size:clamp(25px,3.2vw,35px);letter-spacing:-.03em;font-weight:800;margin:16px 0 0;line-height:1.16}
h3{letter-spacing:-.02em}
.lead{font-size:17.5px;color:var(--ink-2);max-width:56ch;margin:20px 0 0}

.crumbs{font-size:13px;color:var(--mut);padding-block:22px 0}
.crumbs a:hover{color:var(--br)}
.crumbs span{margin:0 7px;opacity:.55}

.hero{padding-block:76px 70px}
.hero.inner{padding-block:34px 58px}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center}
.pills{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0 0}
.pill{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:999px;
  border:1px solid var(--line);background:#fff;font-size:12.5px;font-weight:600;color:var(--ink-2)}
.pill b{color:var(--br)}
.cta{display:flex;gap:12px;margin:32px 0 0;flex-wrap:wrap}

.form-card{background:var(--card);border:1px solid var(--line);padding:32px;position:relative}
.form-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--br),var(--br-2))}
.form-card h2,.form-card h3{margin:0;font-size:20px}
.form-card>p{margin:8px 0 22px;font-size:13.5px;color:var(--mut)}
label{display:block;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:var(--mut);margin:0 0 7px}
input,textarea{width:100%;padding:13px 15px;border:1px solid var(--line);background:#fdfcfa;
  font-size:15px;font-family:inherit;margin-bottom:16px;border-radius:2px;transition:.3s var(--e);color:var(--ink)}
input:focus,textarea:focus{border-color:var(--br);background:#fff;outline:none;box-shadow:0 0 0 3px var(--br-soft)}
.form-card .btn{width:100%}
.note{font-size:11.5px;color:var(--mut);margin:14px 0 0;line-height:1.5}
.fb{margin:14px 0 0;padding:12px 14px;font-size:13.5px;display:none}
.fb.ok{display:block;background:#eef8f0;border:1px solid #cfe8d6;color:#1f6b38}
.fb.err{display:block;background:#fdf0ee;border:1px solid #f3d3cd;color:#a33224}

section{padding-block:74px;border-top:1px solid var(--line)}
.sec-head{max-width:62ch;margin-bottom:42px}
.sec-head p{color:var(--ink-2);margin:14px 0 0;font-size:16px}

.svc{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.svc article{background:var(--card);padding:34px 30px;transition:.4s var(--e);position:relative;display:flex;flex-direction:column}
.svc article::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--br);transition:width .45s var(--e)}
.svc article:hover{background:#fff;transform:translateY(-4px);z-index:2;box-shadow:0 22px 50px rgba(201,162,39,.16)}
.svc article:hover::after{width:100%}
.svc figure{margin:0 0 20px;overflow:hidden;background:var(--line-2);aspect-ratio:16/10}
.svc figure img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--e)}
.svc article:hover figure img{transform:scale(1.05)}
.svc .n{font-size:12px;font-weight:800;color:var(--br);letter-spacing:.16em}
.pic{margin:0 0 26px;overflow:hidden;border:1px solid var(--line);background:var(--line-2)}
.pic img{width:100%;height:auto;display:block}
.pic figcaption{font-size:12.5px;color:var(--mut);padding:11px 14px;background:#fff;border-top:1px solid var(--line)}
.svc h3{font-size:20px;margin:14px 0 11px}
.svc p{font-size:14.5px;color:var(--ink-2);margin:0 0 20px;flex:1}
.price{display:flex;align-items:baseline;gap:8px;padding-top:16px;border-top:1px dashed var(--line)}
.price b{font-size:25px;font-weight:800;letter-spacing:-.03em}
.price span{font-size:12.5px;color:var(--mut)}

.grid-2{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}
.body-txt p{color:var(--ink-2);margin:0 0 16px}
.body-txt h2{margin-top:34px}
.checks{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.checks li{position:relative;padding-left:28px;font-size:15px;color:var(--ink-2)}
.checks li::before{content:"";position:absolute;left:0;top:8px;width:14px;height:8px;
  border-left:2px solid var(--br);border-bottom:2px solid var(--br);transform:rotate(-45deg)}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;text-align:center}
.stats .v{font-size:clamp(32px,4.4vw,48px);font-weight:800;letter-spacing:-.04em}
.stats .v i{font-style:normal;color:var(--br)}
.stats .k{font-size:13px;color:var(--mut);margin-top:6px}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:s}
.step{background:#fff;border:1px solid var(--line);padding:28px 24px;transition:.35s var(--e)}
.step:hover{transform:translateY(-5px);box-shadow:0 18px 44px rgba(201,162,39,.13);border-color:var(--br)}
.step::before{counter-increment:s;content:"0" counter(s);display:block;font-size:12px;font-weight:800;
  color:var(--br);letter-spacing:.16em;margin-bottom:12px}
.step h3{margin:0 0 8px;font-size:17px}
.step p{margin:0;font-size:14px;color:var(--ink-2)}

.zones{display:flex;flex-wrap:wrap;gap:9px}
.zone{padding:11px 18px;border:1px solid var(--line);background:#fff;font-size:14px;transition:.3s var(--e)}
.zone:hover{border-color:var(--br);color:var(--br);transform:translateY(-2px)}

.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.post{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:.4s var(--e)}
.post:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(201,162,39,.16);border-color:var(--br)}
.post-img{display:block;overflow:hidden;aspect-ratio:16/10;background:var(--line-2)}
.post-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--e)}
.post:hover .post-img img{transform:scale(1.05)}
.post-b{padding:24px 24px 26px;display:flex;flex-direction:column;flex:1}
.post-b time{font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--br)}
.post-b h2,.post-b h3{font-size:19px;margin:11px 0 10px;line-height:1.3}
.post-b h2 a:hover,.post-b h3 a:hover{color:var(--br)}
.post-b p{font-size:14.5px;color:var(--ink-2);margin:0 0 18px;flex:1}
.more{font-size:14px;font-weight:700;color:var(--br)}
.more:hover{letter-spacing:.02em}

.art{max-width:74ch}
.art h2{font-size:clamp(22px,2.6vw,28px);margin:38px 0 14px}
.art p{color:var(--ink-2);margin:0 0 16px;font-size:16.5px}
.art ul{margin:0 0 20px;padding-left:20px}
.art li{margin-bottom:9px;color:var(--ink-2);font-size:16px}
.art strong{color:var(--ink)}
.art-cta{margin:40px 0 0;padding:28px;background:var(--br-soft);border-left:3px solid var(--br);
  display:flex;gap:26px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.art-cta strong{font-size:17px;display:block;margin-bottom:6px}
.art-cta p{margin:0;font-size:14.5px;color:var(--ink-2)}

.tbl{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);font-size:15px}
.tbl th{text-align:left;padding:15px 18px;background:var(--ink);color:#fff;font-size:12.5px;
  letter-spacing:.1em;text-transform:uppercase;font-weight:700}
.tbl td{padding:15px 18px;border-top:1px solid var(--line-2);color:var(--ink-2)}
.tbl td:last-child{text-align:right;font-weight:800;color:var(--ink);white-space:nowrap}
.tbl tr:hover td{background:#fdfcf9}

.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{padding:21px 44px 21px 0;font-size:17px;font-weight:600;cursor:pointer;position:relative;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:8px;top:29px;width:9px;height:9px;
  border-right:2px solid var(--br);border-bottom:2px solid var(--br);transform:rotate(45deg);transition:transform .35s var(--e)}
.faq details[open] summary::after{transform:rotate(-135deg)}
.faq p{margin:0 0 22px;color:var(--ink-2);max-width:80ch;font-size:15.5px}

.rev-head{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;
  padding:22px 26px;background:#fff;border:1px solid var(--line);margin-bottom:22px}
.rev-score{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.rev-score b{font-size:40px;font-weight:800;letter-spacing:-.04em;line-height:1}
.rev-score span{font-size:14px;color:var(--mut)}
.stars{color:var(--br);letter-spacing:.12em;font-size:15px}
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rev-card{margin:0;background:#fff;border:1px solid var(--line);padding:26px 24px;
  display:flex;flex-direction:column;transition:.4s var(--e)}
.rev-card:hover{transform:translateY(-5px);box-shadow:0 20px 46px rgba(201,162,39,.15);border-color:var(--br)}
.rev-card blockquote{margin:13px 0 18px;font-size:15px;color:var(--ink-2);line-height:1.6;flex:1}
.rev-card figcaption{display:flex;justify-content:space-between;gap:12px;align-items:baseline;
  border-top:1px dashed var(--line);padding-top:14px}
.rev-card figcaption b{font-size:14.5px}
.rev-card figcaption span{font-size:12.5px;color:var(--mut)}

.map-load{width:100%;height:100%;border:0;background:transparent;cursor:pointer;font-family:inherit;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:20px;
  transition:.3s var(--e)}
.map-load:hover{background:rgba(201,162,39,.07)}
.map-load b{font-size:17px;color:var(--ink)}
.map-load span{font-size:14px;color:var(--ink-2)}
.map-load em{font-size:12px;color:var(--mut);font-style:normal}

.map{margin-top:32px;border:1px solid var(--line);height:340px;overflow:hidden;
  background:repeating-linear-gradient(45deg,#f4f2ec,#f4f2ec 12px,#f8f7f2 12px,#f8f7f2 24px);
  display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;color:var(--mut)}
.map b{color:var(--ink-2);font-size:15px}
.map span{font-size:13px}
.map iframe{width:100%;height:100%;border:0;display:block}

.cta-band{background:var(--ink);color:#fff;padding:56px 0;border:0}
.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap}
.cta-band h2{margin:10px 0 0;color:#fff}
.cta-band p{color:#a8aeb5;margin:10px 0 0;max-width:52ch}
.cta-band .btn{background:var(--br);border-color:var(--br);color:var(--ink)}
.cta-band .btn:hover{background:#fff;border-color:#fff}

footer{background:var(--ink);color:#c9cdd2;padding:54px 0 30px;border:0}
footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
footer h3{color:#fff;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 15px}
footer a{display:block;padding:5px 0;font-size:14.5px;color:#a8aeb5;transition:.25s var(--e)}
footer a:hover{color:var(--br-2)}
footer .about{font-size:14.5px;color:#a8aeb5;max-width:36ch;margin:14px 0 0}
.copy{border-top:1px solid #262c33;margin-top:36px;padding-top:20px;font-size:12.5px;color:#7b858f;
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

.callbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;
  background:var(--ink);border-top:2px solid var(--br)}
.callbar a{flex:1;text-align:center;padding:15px 8px;color:#fff;font-weight:700;font-size:15px}
.callbar a+a{border-left:1px solid #2a3138;color:var(--br-2)}

.rev{opacity:0;transform:translateY(24px);transition:opacity .7s var(--e),transform .7s var(--e)}
.rev.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}
  .rev{opacity:1;transform:none}html{scroll-behavior:auto}}

@media (max-width:980px){
  .nav{display:none}
  .hero-grid,.grid-2,.svc,.steps,footer .cols{grid-template-columns:1fr}
  .stats{grid-template-columns:repeat(2,1fr);gap:26px}
  .hero{padding-block:44px 40px}
  .hero.inner{padding-block:22px 34px}
  section{padding-block:54px}
  body{padding-bottom:56px}
  .callbar{display:flex}
  .checks{grid-template-columns:1fr}
}
