:root{--bg:#0e0e12;--card:#17171f;--accent:#c9a66b;--txt:#e9e9ee;--muted:#9a9aa8}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI',system-ui,sans-serif;background:var(--bg);color:var(--txt);line-height:1.6}
.container{max-width:1140px;margin:0 auto;padding:0 20px}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;object-fit:cover}
.btn{display:inline-block;background:var(--accent);color:#161612;padding:13px 26px;border-radius:40px;font-weight:600;border:none;cursor:pointer;transition:.2s;font-size:15px}
.btn:hover{background:#e0bd82;transform:translateY(-2px)}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn-block{display:block;width:100%;text-align:center}
.section-title{font-size:34px;font-weight:700;letter-spacing:-.5px}
.section-sub{color:var(--muted);margin-top:6px;margin-bottom:30px}

.nav{position:sticky;top:0;z-index:50;background:rgba(14,14,18,.85);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-size:22px;font-weight:800;letter-spacing:-1px}
.logo span{color:var(--accent)}
.menu{display:flex;gap:22px;align-items:center}
.menu a{color:var(--muted);font-size:15px;transition:.2s}
.menu a:hover{color:#fff}
.nav-cta{background:var(--accent);color:#161612!important;padding:8px 18px;border-radius:30px;font-weight:600}

.hero{position:relative;min-height:88vh;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,14,.85),rgba(10,10,14,.35))}
.hero-content{position:relative;z-index:2;max-width:640px}
.hero-kicker{color:var(--accent);text-transform:uppercase;letter-spacing:3px;font-size:13px;font-weight:600;margin-bottom:16px}
.hero h1{font-size:62px;line-height:1.05;font-weight:800;letter-spacing:-2px}
.hero-sub{margin:22px 0 32px;font-size:18px;color:#d5d5dd;max-width:520px}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap}

.best{padding:80px 20px}
.best-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}
.best-grid img{border-radius:14px;aspect-ratio:3/4;transition:.3s}
.best-grid img:hover{transform:scale(1.03)}

.about{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;align-items:center;padding:60px 20px}
.about-photo img{border-radius:18px;aspect-ratio:3/4}
.about-text p{color:#c7c7d2;margin:14px 0}
.stats{display:flex;gap:34px;margin-top:24px}
.stats b{display:block;font-size:32px;color:var(--accent)}
.stats span{color:var(--muted);font-size:14px}

.portfolio{padding:80px 0;background:#12121a}
.genre-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.genre{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:1/1}
.genre img{height:100%;transition:.4s}
.genre:hover img{transform:scale(1.08)}
.genre span{position:absolute;inset:0;display:flex;align-items:flex-end;padding:18px;font-size:20px;font-weight:700;background:linear-gradient(transparent,rgba(0,0,0,.7))}

.services{padding:80px 20px}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.price-card{background:var(--card);border:1px solid rgba(255,255,255,.07);border-radius:18px;padding:34px 28px;transition:.3s}
.price-card.featured{border-color:var(--accent);transform:scale(1.04)}
.price-card h3{font-size:22px}
.price-card .price{font-size:34px;font-weight:800;color:var(--accent);margin:14px 0}
.price-card ul{list-style:none;margin:0 0 24px}
.price-card li{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);color:#c7c7d2;font-size:15px}

.reviews{padding:80px 0;background:#12121a}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:36px}
.review-card{background:var(--card);border-radius:16px;padding:28px;font-size:15px}
.review-card p{color:#d5d5dd;font-style:italic}
.review-card b{display:block;margin-top:14px;color:var(--accent)}
.review-form{display:flex;gap:12px;flex-wrap:wrap}
.review-form input{flex:1;min-width:180px;padding:13px 16px;border-radius:30px;border:1px solid rgba(255,255,255,.12);background:#1c1c26;color:#fff}

.blog{padding:80px 20px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.post{background:var(--card);border-radius:16px;overflow:hidden;transition:.3s}
.post:hover{transform:translateY(-5px)}
.post img{aspect-ratio:16/10}
.post-body{padding:20px}
.post-body time{color:var(--accent);font-size:13px}
.post-body h3{margin:8px 0;font-size:19px}
.post-body p{color:#b7b7c2;font-size:14px}

.contacts{padding:80px 0;background:#12121a}
.contacts-inner{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.contacts-info p{color:#c7c7d2;margin:10px 0}
.c-line a{color:var(--accent)}
.socials{display:flex;gap:16px;margin-top:20px}
.socials a{border:1px solid rgba(255,255,255,.2);padding:8px 18px;border-radius:30px;font-size:14px;transition:.2s}
.socials a:hover{background:var(--accent);color:#161612;border-color:var(--accent)}
.contacts-form input,.contacts-form textarea{width:100%;padding:14px 16px;margin-bottom:12px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#1c1c26;color:#fff;font-family:inherit}
.ok{background:#1e3a1e;padding:18px;border-radius:12px;color:#b6e0b6}
.err{background:#3a1e1e;padding:14px;border-radius:12px;color:#e0b6b6;margin-bottom:14px}

.footer{padding:30px 0;text-align:center;color:var(--muted);font-size:14px}

@media(max-width:900px){
.menu{gap:14px}.menu a:not(.nav-cta){display:none}
.hero h1{font-size:42px}
.best-grid{grid-template-columns:repeat(2,1fr)}
.about{grid-template-columns:1fr}
.genre-grid,.price-grid,.review-grid,.blog-grid{grid-template-columns:1fr}
.price-card.featured{transform:none}
.contacts-inner{grid-template-columns:1fr}
}