:root {
    --gold: #d4af37;
    --gold-light: #f4d585;
    --dark: #0c0c0c;
    --text: #e0e0e0;
    --bg: #080808;
}

* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Inter',sans-serif; background:var(--dark); color:var(--text); line-height:1.7; overflow-x:hidden; }
h1,h2,h2,h3,h4 { font-family:'Playfair Display',serif; color:white; }
.container { max-width:1400px; margin:0 auto; padding:0 5%; }

/* NAVBAR */
nav {
    position:fixed; top:0; left:0; width:100%; padding:8px 0;
    background:rgba(12,12,12,.96); backdrop-filter:blur(20px);
    z-index:1000; transition:all .4s ease;
}
nav.scrolled { padding:18px 0; background:rgba(10,10,10,.99); }
nav .container { display:flex; justify-content:space-between; align-items:center; }
.logo { font-size:32px; color:var(--gold); font-weight:700; text-decoration:none; }
.nav-links a { color:white; text-decoration:none; margin:0 30px; font-weight:500; position:relative; }
.nav-links a::after { content:''; position:absolute; bottom:-8px; left:50%; width:0; height:2px; background:var(--gold); transition:.5s; transform:translateX(-50%); }
.nav-links a:hover::after, .nav-links a.active::after { width:70%; }
.hamburger { display:none; cursor:pointer; }
.hamburger span { display:block; width:32px; height:3px; background:var(--gold); margin:7px 0; transition:.4s; }
.hamburger.active span:nth-child(1) { transform:rotate(45deg) translate(9px,9px); }
.hamburger.active span:nth-child(2) { opacity:0; }
.hamburger.active span:nth-child(3) { transform:rotate(-45deg) translate(8px,-8px); }

/* HERO */
.hero { height:100vh; position:relative; display:flex; align-items:center; justify-content:center; text-align:center; overflow:hidden; }
.hero-video { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(to bottom,rgba(0,0,0,.45),rgba(0,0,0,.9)); }
.hero-content { z-index:2; max-width:1100px; padding:0 20px; }
.hero h1 { font-size:7.2rem; line-height:1.1; margin-bottom:20px; }
.sub { font-size:1.25rem; opacity:.92; }

/* КРАСИВЫЕ КНОПКИ БЕЗ ОБВОДКИ */
.btn {
    display: inline-block;
    padding: 26px 82px;
    background: linear-gradient(135deg, #d4af37, #f4d585);
    color: #000;
    font-weight: 700;
    font-size: 1.32rem;
    letter-spacing: 1.3px;
    border-radius: 80px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: all .5s cubic-bezier(0.23, 1, 0.32, 1);
    box-shadow: 0 15px 35px rgba(212, 175, 55, .45), 0 5px 15px rgba(0, 0, 0, .3);
    text-transform: uppercase;
}
.btn span { position: relative; z-index: 2; }
.btn::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #f4d585, #d4af37);
    border-radius: 80px;
    transform: translateY(100%);
    transition: transform .6s ease;
}
.btn:hover::before { transform: translateY(0); }
.btn:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 55px rgba(212, 175, 55, .55), 0 10px 25px rgba(0, 0, 0, .4);
}
.btn.large { padding: 30px 100px; font-size: 1.5rem; }

/* СЕКЦИЯ PRICING — КРАСИВЫЙ ФОН + ТЁМНЫЙ ОВЕРЛЕЙ */
#pricing {
    background-image: url('img/1.jpg');
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    position: relative;
}
#pricing::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(8,8,8,.90);
    z-index: 1;
}
#pricing > .container { position: relative; z-index: 2; }

/* ОБЩИЕ СЕКЦИИ */
.section { padding:160px 0; }
.bg-dark { background:var(--bg); }
.title { font-size:4.8rem; text-align:center; margin-bottom:100px; position:relative; }
.title::after { content:''; width:120px; height:4px; background:var(--gold); position:absolute; bottom:-30px; left:50%; transform:translateX(-50%); }

/* GRID & АККОРДЕОН */
.grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }
.grid-2 img { width:100%; border-radius:20px; box-shadow:0 30px 80px rgba(0,0,0,.7); transition:.6s; }
.grid-2 img:hover { transform:scale(1.02); }

.accordion .acc-item { margin:25px 0; }
.acc-header { padding:22px; background:rgba(212,175,55,.1); border-radius:12px; display:flex; justify-content:space-between; align-items:center; font-weight:600; cursor:pointer; transition:.4s; }
.acc-header:hover { background:rgba(212,175,55,.2); }
.acc-header span { font-size:1.8rem; transition:.3s; }
.acc-body { max-height:0; overflow:hidden; padding:0 22px; transition:all .6s; background:rgba(0,0,0,.4); border-radius:0 0 12px 12px; }
.acc-item.active .acc-body { max-height:600px; padding:25px 22px; }
.acc-item.active span { transform:rotate(45deg); }

/* УСЛУГИ */
.services-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(360px,1fr)); gap:40px; }
.service-card { background:rgba(255,255,255,.04); border-radius:20px; overflow:hidden; position:relative; transition:all .7s ease; }
.service-card:hover { transform:translateY(-30px); box-shadow:0 40px 80px rgba(212,175,55,.35); }
.service-card img { width:100%; height:280px; object-fit:cover; transition:.7s; }
.service-card:hover img { transform:scale(1.07); }
.service-card h3 { padding:35px 35px 12px; font-size:1.8rem; color:var(--gold); }
.service-card > p { padding:0 35px 20px; }
.details { padding:0 35px 40px; opacity:0; transform:translateY(20px); transition:all .8s; }
.service-card:hover .details { opacity:1; transform:translateY(0); }

/* ЦЕНЫ — чуть выделяем на фоне */
.pricing-table { max-width:900px; margin:40px auto 0; font-size:1.4rem; line-height:2.8; }
.pricing-table div {
    padding:25px 45px; background:rgba(212,175,55,.12); border-radius:18px;
    margin:14px 0; transition:all .5s ease; backdrop-filter:blur(8px);
}
.pricing-table div:hover {
    background:rgba(212,175,55,.22);
    transform:translateX(20px);
}

/* КОНТАКТЫ И ФУТЕР */
.contact-info { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:60px; margin:90px 0; font-size:1.4rem; }
.contact-info div { display:flex; align-items:center; justify-content:center; gap:22px; }
.contact-info i { color:var(--gold); font-size:1.9rem; }

footer { padding:120px 0 50px; background:#050505; border-top:1px solid rgba(212,175,55,.2); }
.footer-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:60px; margin-bottom:80px; }
.footer-col h4 { color:var(--gold); margin-bottom:25px; }
.footer-col a, .footer-col p { color:#aaa; text-decoration:none; line-height:2.1; transition:.3s; }
.footer-col a:hover { color:var(--gold); }
.copyright { text-align:center; padding-top:40px; border-top:1px solid rgba(212,175,55,.1); color:#777; }

/* АДАПТИВ */
@media (max-width:992px) {
    .hamburger { display:block; }
    .nav-links { position:fixed; top:0; right:-100%; width:80%; height:100vh; background:var(--dark); flex-direction:column; justify-content:center; align-items:center; transition:.6s; gap:50px; font-size:2rem; }
    .nav-links.active { right:0; }
    .hero h1 { font-size:4.8rem; }
    .grid-2 { grid-template-columns:1fr; gap:60px; }
    .title { font-size:3.8rem; }
    .btn { padding:20px 60px; font-size:1.2rem; }
    .btn.large { padding:26px 80px; font-size:1.35rem; }
}