:root{--black:#0b0b0b;--dark:#111;--dark2:#181818;--gold:#c9a96e;--gray:#8f8f8f;--white:#fff;--line:rgba(201,169,110,.2);--font:'Montserrat',Arial,sans-serif;--dark-2:#1A1A1A;--dark-3:#222222;--gray-light:#CCCCCC;--transition:all 0.4s cubic-bezier(0.25,0.46,0.45,0.94);}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font);background:var(--black);color:var(--white);font-weight:300;line-height:1.8}
a{color:inherit}
.header{position:sticky;top:0;z-index:10;background:rgba(11,11,11,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.header-inner{height:74px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{font-size:1.35rem;letter-spacing:.35em;text-decoration:none;text-transform:uppercase}
.nav{display:flex;gap:24px;align-items:center}
.nav a{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--gray);transition:.25s}
.nav a:hover,.nav a.active{color:var(--gold)}
.btn{border:1px solid var(--gold);padding:12px 22px;color:var(--gold)!important}
.hero{padding:110px 5% 70px;background:radial-gradient(circle at 82% 12%,rgba(201,169,110,.13),transparent 34%),linear-gradient(180deg,#0b0b0b,#101010)}
.kicker{display:flex;gap:16px;align-items:center;color:var(--gold);font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;margin-bottom:26px}
.kicker:before{content:"";width:44px;height:1px;background:var(--gold)}
h1{font-size:clamp(2.35rem,6vw,5.1rem);line-height:1.08;font-weight:300;max-width:1050px}
.gold{color:var(--gold)}
.lead{max-width:820px;color:#c9c9c9;margin-top:30px;font-size:1rem}
.actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}
.action{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 30px;border:1px solid rgba(255,255,255,.22);text-decoration:none;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}
.action.primary{background:var(--gold);color:#0b0b0b;border-color:var(--gold);font-weight:500}
.content{padding:72px 5%;max-width:1240px;margin:auto}
.intro{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-bottom:48px}
.intro p{color:#bdbdbd;font-size:.95rem}
h2{font-weight:300;font-size:clamp(1.55rem,3vw,2.8rem);line-height:1.2;margin-bottom:24px}
.price-section{margin-top:34px;background:var(--dark);border:1px solid rgba(255,255,255,.08)}
.price-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px;border-bottom:1px solid rgba(255,255,255,.08)}
.price-head h2{margin:0;font-size:clamp(1.25rem,2.4vw,2rem)}
.price-head a{color:var(--gold);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.price-row{display:flex;justify-content:space-between;gap:22px;padding:18px 28px;border-bottom:1px solid rgba(255,255,255,.06);border-right:1px solid rgba(255,255,255,.06)}
.price-row:nth-child(2n){border-right:0}
.price-name{color:#ededed;font-size:.92rem}
.price-note{display:block;color:var(--gray);font-size:.75rem;margin-top:4px}
.price-value{color:var(--gold);white-space:nowrap;font-weight:400}
.seo-block{margin-top:62px;padding:38px;background:linear-gradient(135deg,rgba(201,169,110,.08),rgba(255,255,255,.02));border:1px solid var(--line)}
.seo-block p{color:#c4c4c4;margin-top:14px}
.faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:34px}
.faq-card{background:var(--dark2);border:1px solid rgba(255,255,255,.08);padding:26px}
.faq-card h3{font-size:1rem;font-weight:500;margin-bottom:10px}
.faq-card p{color:#b9b9b9;font-size:.9rem}
footer{border-top:1px solid rgba(255,255,255,.08);padding:40px 5%;display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;color:var(--gray);font-size:.78rem}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-links a{text-decoration:none}
.footer-links a:hover{color:var(--gold)}
@media(max-width:820px){.nav{display:none}.intro,.price-grid,.faq{grid-template-columns:1fr}.price-row{border-right:0}.header-inner{height:68px}.hero{padding-top:82px}.content{padding-top:46px}.price-head{display:block}.price-head a{display:inline-block;margin-top:12px}.logo{font-size:1.15rem}.action{width:100%}}
.site-header{position:sticky;top:0;z-index:950;background:rgba(10,10,10,.94);border-bottom:1px solid rgba(201,169,110,.16);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
@media (max-width: 980px) {
.site-header__inner {
min-height: 74px;
align-items: center;
flex-direction: row;
flex-wrap: wrap;
padding: 16px 5%;
gap: 0;
}
.site-header__left {
width: auto;
flex: 1 1 auto;
justify-content: flex-start;
}
.site-header__contacts { display: none; }
.site-burger { display: flex; }
.site-legacy-burger { display: flex !important; }
.site-nav {
display: none;
width: 100%;
flex: 0 0 100%;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 8px;
margin: 16px 0 0;
}
.site-header.menu-open .site-nav { display: grid; }
.site-nav-link,
.site-services-menu > summary,
.site-nav-cta {
display: flex;
align-items: center;
justify-content: center;
min-height: 42px;
border: 1px solid rgba(255,255,255,.08);
background: rgba(255,255,255,.02);
font-size: .62rem;
padding: 0 8px;
text-align: center;
}
.site-services-menu { min-width: 0; }
.site-services-list {
position: absolute;
top: calc(100% + 8px);
left: 0;
right: auto;
transform: none;
width: min(86vw, 300px);
z-index: 960;
}
.site-nav-cta {
border-color: rgba(201,169,110,.65);
background: rgba(201,169,110,.08);
}
}
@media (max-width: 560px) {
.site-logo { font-size: 1.12rem; letter-spacing: .3em; }
.site-header__inner { padding: 16px 5%; }
.site-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.site-services-list { width: 90vw; }
.site-nav-link,
.site-services-menu > summary,
.site-nav-cta { font-size: .6rem; }
}
.mobile-menu {
position: fixed;
inset: 0;
z-index: 900;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 96px 28px 42px;
background: rgba(10,10,10,.98);
transform: translateX(100%);
transition: transform .5s cubic-bezier(.77,0,.175,1);
overflow-y: auto;
}
.mobile-menu.active { transform: translateX(0); }
.mobile-menu ul { list-style: none; margin: 0; padding: 0; text-align: center; width: min(100%, 360px); }
.mobile-menu li { margin: 0; overflow: visible; }
.mobile-menu a,
.mobile-services-toggle {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 11px 0;
border: 0;
background: transparent;
color: var(--white, #fff);
font-family: inherit;
font-size: clamp(1.45rem, 6vw, 1.85rem);
font-weight: 300;
line-height: 1.2;
letter-spacing: .1em;
text-decoration: none;
cursor: pointer;
transition: color .25s ease;
}
.mobile-services-toggle::after {
content: '+';
color: var(--gold, #c9a96e);
font-size: 1rem;
line-height: 1;
}
.mobile-services.open .mobile-services-toggle::after { content: '−'; }
.mobile-services-list {
max-height: 0;
overflow: hidden;
transition: max-height .35s ease;
margin: 0;
}
.mobile-services.open .mobile-services-list { max-height: 420px; }
.mobile-services-list a {
padding: 8px 0;
color: var(--gray, #9a9a9a);
font-size: .78rem;
font-weight: 500;
letter-spacing: .16em;
text-transform: uppercase;
white-space: normal;
}
.mobile-cta { margin-top: 30px; width: min(100%, 330px); }
.mobile-cta .btn-primary,
.mobile-cta a {
width: 100%;
min-height: 50px;
display: flex;
align-items: center;
justify-content: center;
background: var(--gold, #c9a96e);
color: var(--black, #0b0b0b);
font-size: .72rem;
font-weight: 500;
letter-spacing: .18em;
text-transform: uppercase;
text-decoration: none;
}
.mobile-contacts { margin-top: 28px; text-align: center; }
.mobile-contacts a,
.mobile-contacts span {
display: block;
color: var(--gray, #9a9a9a);
font-size: .82rem;
line-height: 1.8;
text-decoration: none;
}
@media (max-width: 980px) {
.site-header { z-index: 1100; }
.site-header__inner {
min-height: 74px;
align-items: center;
flex-direction: row;
flex-wrap: nowrap;
padding: 16px 5%;
gap: 16px;
}
.site-header__left { width: auto; flex: 1 1 auto; justify-content: flex-start; }
.site-header__contacts { display: none; }
.site-nav,
.site-header.menu-open .site-nav { display: none !important; }
.site-burger { display: flex; position: relative; z-index: 1200; }
}
.mobile-menu {
justify-content: flex-start !important;
padding: 92px 30px 30px !important;
overflow-y: auto;
}
.mobile-menu ul {
width: min(100%, 330px) !important;
}
.mobile-menu li {
margin: 0 !important;
}
.mobile-menu a,
.mobile-services-toggle {
min-height: auto !important;
padding: 9px 0 !important;
font-size: clamp(1.18rem, 5vw, 1.48rem) !important;
line-height: 1.2 !important;
letter-spacing: .13em !important;
}
.mobile-services-toggle::after {
content: '+';
margin-left: 4px;
color: var(--gold, #c9a96e);
font-size: .95rem;
}
.mobile-services.open .mobile-services-toggle::after {
content: '−';
}
.mobile-services-list {
max-height: 0;
overflow: hidden;
border-top: 0 solid rgba(201,169,110,.18);
border-bottom: 0 solid rgba(201,169,110,.18);
transition: max-height .32s ease, padding .32s ease, border-width .32s ease;
}
.mobile-services.open .mobile-services-list {
max-height: 320px;
padding: 6px 0 8px;
border-top-width: 1px;
border-bottom-width: 1px;
}
.mobile-services-list a {
padding: 7px 0 !important;
color: var(--gray, #9a9a9a) !important;
font-size: .68rem !important;
font-weight: 500 !important;
line-height: 1.35 !important;
letter-spacing: .14em !important;
text-transform: uppercase !important;
}
.mobile-cta {
margin-top: 22px !important;
width: min(100%, 320px) !important;
}
.mobile-contacts {
margin-top: 20px !important;
}
.site-header {
position: fixed !important;
top: 0;
left: 0;
right: 0;
width: 100%;
}
body {
padding-top: 74px;
}
.mobile-cta {
margin-top: 18px !important;
width: min(100%, 280px) !important;
}
.mobile-cta .btn-primary,
.mobile-cta a {
min-height: 44px !important;
padding: 0 22px !important;
font-family: 'Montserrat', sans-serif !important;
font-size: .68rem !important;
font-weight: 500 !important;
line-height: 1 !important;
letter-spacing: .18em !important;
text-transform: uppercase !important;
}
.mobile-contacts {
margin-top: 18px !important;
}
.mobile-contacts a,
.mobile-contacts span {
font-family: 'Montserrat', sans-serif !important;
font-weight: 300 !important;
}
@media (max-width: 560px) {
.mobile-cta { width: min(100%, 276px) !important; }
.mobile-cta .btn-primary,
.mobile-cta a {
min-height: 42px !important;
font-size: .62rem !important;
letter-spacing: .17em !important;
}
}
.mobile-menu a,
.mobile-services-toggle {
font-family: 'Montserrat', sans-serif !important;
font-weight: 300 !important;
color: rgba(255,255,255,.92) !important;
letter-spacing: .14em !important;
}
.mobile-services-list a {
font-weight: 300 !important;
color: rgba(190,190,190,.88) !important;
}
.mobile-contacts a,
.mobile-contacts span {
font-weight: 300 !important;
color: rgba(170,170,170,.88) !important;
}
@media (max-width: 768px) {
.reviews-grid {
display: flex !important;
gap: 16px;
overflow-x: auto;
overflow-y: hidden;
scroll-snap-type: x mandatory;
scrollbar-width: none;
-webkit-overflow-scrolling: touch;
margin-left: -5%;
margin-right: -5%;
padding: 0 5% 12px;
}
.reviews-grid::-webkit-scrollbar {
display: none;
}
.reviews-grid .review-card {
flex: 0 0 min(82vw, 330px);
width: min(82vw, 330px);
padding: 28px;
scroll-snap-align: start;
}
}
.reviews { background: var(--black); }
.reviews-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 30px;
}
.review-card {
background: var(--dark-2);
padding: 40px;
position: relative;
overflow: hidden;
transition: var(--transition);
}
.review-card::before {
content: '"';
position: absolute;
top: 20px; right: 30px;
font-size: 6rem;
color: var(--gold);
opacity: 0.08;
line-height: 1;
font-family: Georgia, serif;
}
.review-card:hover { transform: translateY(-4px); }
.review-stars {
display: flex;
gap: 4px;
margin-bottom: 20px;
}
.review-star { color: var(--gold); font-size: 0.9rem; }
.review-text {
font-size: 0.85rem;
color: var(--gray-light);
line-height: 1.8;
margin-bottom: 30px;
}
.review-author {
display: flex;
align-items: center;
gap: 14px;
}
.review-avatar {
width: 44px; height: 44px;
background: var(--dark-3);
border: 1px solid rgba(201,169,110,0.2);
display: flex;
align-items: center;
justify-content: center;
font-size: 0.75rem;
color: var(--gold);
font-weight: 500;
flex-shrink: 0;
}
.review-name {
font-weight: 500;
font-size: 0.85rem;
letter-spacing: 0.05em;
}
.review-date {
font-size: 0.72rem;
color: var(--gray);
margin-top: 3px;
}
.reviews-trust {
display: inline-flex;
align-items: center;
gap: 14px;
margin-top: 24px;
padding: 12px 16px;
border: 1px solid rgba(201,169,110,0.3);
color: var(--gray-light);
font-size: 0.74rem;
letter-spacing: 0.04em;
text-decoration: none;
transition: var(--transition);
}
.reviews-trust span {
text-decoration: none;
border-bottom: 0;
}
.reviews-trust:hover {
border-color: var(--gold);
color: var(--white);
}
.reviews-trust-score {
color: var(--gold);
font-size: 1.15rem;
font-weight: 500;
}
.reviews-trust-arrow {
color: var(--gold);
}
.review-source {
display: inline-flex;
align-items: center;
gap: 8px;
margin-top: 24px;
color: var(--gray);
font-size: 0.68rem;
letter-spacing: 0.1em;
text-transform: uppercase;
border: 0;
padding: 0;
text-decoration: none;
}
.review-source::before {
content: '';
width: 5px;
height: 5px;
flex: 0 0 5px;
border-radius: 50%;
background: var(--gold);
opacity: 0.8;
}
@media (max-width: 768px) {
.reviews-trust {
align-items: flex-start;
flex-wrap: wrap;
gap: 8px 12px;
}
}
.delay-1 { transition-delay: 0.1s; }
.delay-2 { transition-delay: 0.2s; }
.delay-3 { transition-delay: 0.3s; }
.delay-4 { transition-delay: 0.4s; }
