﻿/* ====== СБРОС ====== */
*, *::before, *::after { padding:0; margin:0; box-sizing:border-box; }
html, body { max-width:100%; overflow-x:hidden; scroll-behavior:smooth; }
body {
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 1em;
    color: var(--dark);
    background: var(--white);
    line-height: 1.6;
}
img { max-width:100%; display:block; }
a { text-decoration:none; color:#000000; }
h1,h2,h3,h4,h5,h6 { font-weight:normal; font-family:'Playfair Display', Georgia, serif; }

/* ====== ПЕРЕМЕННЫЕ ====== */
:root{
    --gold: #ffd700;         /* Яркий золотой для кнопок и акцентов */
    --gold-dark: #e6c200;    /* Чуть темнее для эффекта при наведении */
    --gold-light: #fff9db;   /* Очень светлый золотой для фонов секций */
    --dark: #16324a;
    --white: #fff;
    --shadow: 0 10px 30px rgba(255, 215, 0, 0.2);
}

/* ====== БАЗА ====== */
.container { max-width:1100px; margin:0 auto; padding:0 20px; }
section { padding:70px 0; scroll-margin-top: 80px; }
h2 { font-size:clamp(26px,5vw,38px); text-align:center; margin-bottom:12px; }
h2::after { content:''; display:block; width:60px; height:4px; background:var(--gold); border-radius:2px; margin:14px auto 0; }
.section-sub { text-align:center; color:#6b8299; margin-bottom:40px; }

/* ====== ШАПКА ====== */
.header { position:fixed; top:0; left:0; right:0; background: linear-gradient(to right, #D19E1D, #FFD86E, #E3A812); backdrop-filter:blur(10px); z-index:100; transition:.3s; }
.header.scrolled { box-shadow:0 4px 20px rgba(255, 215, 0, 0.2); }
.header-in { display:flex; align-items:center; justify-content:space-between; height:70px; gap:15px; }
.logo { display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--dark); }
.logo-circle { width:46px; height:46px; background:var(--gold); border-radius:50%; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.logo-circle img { width:100%; height:100%; object-fit:cover; }
.logo-name { font-family:'Playfair Display',serif; font-size:24px; font-weight:700; }
.nav { display:flex; gap:26px; }
.nav a { text-decoration:none; color:var(--dark); font-weight:600; font-size:15px; transition:.2s; }
.nav a:hover { color:var(--gold-dark); }
.header-phone { display:flex; align-items:center; gap:12px; }
.phone-link { color:var(--dark); text-decoration:none; font-weight:700; font-size:15px; white-space:nowrap; }

/* ====== КНОПКИ ====== */
.btn { 
    display:inline-block; 
    background: linear-gradient(180deg, #d19e1d, #ffd86e, #e3a812);
    color:#000000; 
    padding:12px 26px; 
    border-radius:30px; 
    text-decoration:none; 
    font-weight:700; 
    transition:.25s; 
    font-size:15px; 
    border:none; 
    cursor:pointer; 
}
.btn:hover { 
    background:var(--gold-dark); 
    transform:translateY(-2px); 
    box-shadow:0 8px 20px rgba(255, 215, 0, 0.4); 
}
.btn-white { 
    background:#fff; 
    color:#000000; 
    border: 2px solid var(--gold);
}
.btn-white:hover { 
    background:var(--gold); 
    color:#000000; 
}

.burger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:5px; }
.burger span { width:26px; height:3px; background:var(--dark); border-radius:2px; transition:.3s; }

/* ====== ГЕРОЙ ====== */
.hero {
    padding:140px 0 80px;
    text-align:center;
    position:relative;
    background:
        linear-gradient(rgba(255, 249, 219, 0.85), rgba(255, 236, 153, 0.85)),
        url('images/fon.jpg') center/cover no-repeat;
}
.hero h1 { font-size:clamp(32px,7vw,58px); margin-bottom:16px; }
.hero h1 span { color:hsl(45.86deg, 64.61%, 52.35%); }
.hero p { font-size:clamp(16px,2.5vw,20px); color:#41617e; max-width:600px; margin:0 auto 32px; }
.hero-btns { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }
.hero-badge { display:inline-block; background:#fff; color:#000000; padding:8px 20px; border-radius:30px; font-weight:600; font-size:14px; margin-bottom:20px; box-shadow:var(--shadow); border: 1px solid var(--gold); }

/* ====== УСЛУГИ ====== */
.services-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:24px; }
.service-card { background:#fff; border-radius:20px; padding:30px 24px; text-align:center; box-shadow:var(--shadow); transition:.3s; }
.service-card:hover { transform:translateY(-8px); }
.service-photo { width:100%; height:190px; border-radius:16px; overflow:hidden; margin-bottom:18px; }
.service-photo img { width:100%; height:100%; object-fit:cover; transition:.5s; }
.service-card:hover .service-photo img { transform:scale(1.08); }
.service-card h3 { font-size:20px; margin-bottom:8px; }
.service-card p { font-size:14px; color:#6b8299; margin-bottom:14px; }
.price { color:var(--gold-dark); font-weight:700; font-size:18px; }

/* ====== О НАС ====== */
.about { background:var(--gold-light); }
.about-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:24px; }
.about-item { text-align:center; padding:20px; }
.about-item .num { font-size:40px; font-weight:700; color:var(--gold-dark); font-family:'Playfair Display',serif; }
.about-item h3 { margin:8px 0; }
.about-item p { font-size:14px; color:#6b8299; }

/* ====== РАБОТЫ ====== */
.works-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:20px; }
.work { height:260px; border-radius:20px; position:relative; overflow:hidden; transition:.3s; }
.work:hover { transform:scale(1.03); }
.work img { width:100%; height:100%; object-fit:cover; transition:.5s; }
.work:hover img { transform:scale(1.08); }
.work span { position:absolute; bottom:0; left:0; right:0; padding:14px; text-align:center; font-size:15px; color:#fff; font-weight:600; background:linear-gradient(transparent, rgba(22,50,74,.8)); }

/* ====== МАСТЕРА ====== */
.masters-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.master-card { background:#fff; border-radius:20px; padding:30px 24px; text-align:center; box-shadow:var(--shadow); transition:.3s; }
.master-card:hover { transform:translateY(-8px); }
.master-avatar { width:110px; height:110px; border-radius:50%; margin:0 auto 16px; display:flex; align-items:center; justify-content:center; border:4px solid var(--gold-light); overflow:hidden; background:linear-gradient(135deg, #fff9db, #ffd700); }
.master-avatar img { width:100%; height:100%; object-fit:cover; }
.master-card h3 { font-size:24px; }
.master-role { color:var(--gold-dark); font-weight:600; font-size:14px; margin:6px 0 10px; }
.master-desc { font-size:14px; color:#6b8299; margin-bottom:14px; }
.master-phone { display:block; font-weight:700; color:var(--dark); text-decoration:none; font-size:17px; margin-bottom:16px; }
.master-btns { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.masters-dots { display:none; justify-content:center; gap:8px; margin-top:16px; }
.masters-dots .dot { width:10px; height:10px; border-radius:50%; background:var(--gold-light); cursor:pointer; transition:.3s; }
.masters-dots .dot.active { background:var(--gold); width:26px; border-radius:6px; }
.swipe-hint { display:none; text-align:center; color:#6b8299; font-size:13px; margin-top:10px; }

/* ====== ОТЗЫВЫ ====== */
.reviews { background:var(--gold-light); }
.reviews-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:24px; }
.review { background:#fff; border-radius:20px; padding:28px; box-shadow:var(--shadow); }
.review .stars { color:#ffd700; font-size:18px; margin-bottom:12px; }
.review p { font-size:14px; margin-bottom:14px; }
.review .name { font-weight:700; color:var(--gold-dark); }

/* ====== КОНТАКТЫ ====== */
.contacts-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:stretch; }
.contact-card { background:var(--gold-light); border-radius:20px; padding:34px; }
.contact-line { display:flex; gap:14px; align-items:flex-start; margin-bottom:20px; }
.contact-line .ic { font-size:24px; }
.contact-line b { display:block; margin-bottom:2px; }
.contact-line a { color:var(--gold-dark); font-weight:700; text-decoration:none; font-size:18px; }
.contact-btns { display:flex; gap:12px; flex-wrap:wrap; margin-top:24px; }
.map-wrap { border-radius:20px; overflow:hidden; background:var(--gold-light); min-height:450px; border:4px solid var(--gold); box-shadow:0 0 0 8px rgba(255, 215, 0, 0.15), var(--shadow); }
.map-wrap iframe { display:block; width:100%; height:450px; border:0; }

/* ====== ПОДВАЛ ====== */
.footer { background: linear-gradient(to right, #D19E1D, #FFD86E, #E3A812); color:year; padding:30px 0; text-align:center; font-size:14px; }
.footer a { color:black; text-decoration:none; }
.footer2 {
    width:100%;
   background: linear-gradient(to right, #D19E1D, #FFD86E, #E3A812);
    padding:40px 20px;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:26px;
    text-align:center;
    border-top:1px solid rgba(255,255,255,.08);
}
.footer2text { flex:1 1 240px; max-width:340px; font-size:16px; line-height:1.6; color:black; }
.footer2text b { color:#fff; }
.footer2text a { color:black; font-weight:700; text-decoration:none; }
.footer2text a:hover { text-decoration:underline; }
.footer2IMGvnutri { width:90px; height:90px; border-radius:50%; border:3px solid #ffd700; }
.Icona { width:56px; height:56px; transition:.3s; }
.Icona:hover { transform:scale(1.12); }

/* ====== WHATSAPP ====== */
.wa-float { position:fixed; bottom:22px; right:22px; width:58px; height:58px; background:#25d366; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:30px; text-decoration:none; box-shadow:0 8px 25px rgba(37,211,102,.5); z-index:99; transition:.3s; }
.wa-float:hover { transform:scale(1.1); }

/* ====== АНИМАЦИЯ ====== */
.reveal { opacity:0; transform:translateY(26px); transition:.7s ease; }
.reveal.visible { opacity:1; transform:none; }

/* ====== ПРОГРЕСС / FONDATO ====== */
.Progress {
    width:100%;
    background-color: var(--gold-light);
    padding:30px;
}
.Progress_conteiner {
    background: url("images/progress/Progress4.jpg") center/cover no-repeat;
    background-color:#fff;
    display:flex;
    flex-direction:column;
    border-radius:20px;
    overflow:hidden;
}
.Progress_conteiner1 { display:flex; flex-direction:row; width:100%; }
.Progress_block { padding:30px; width:50%; min-height:460px; display:flex; flex-direction:column; background:rgba(255,255,255,.95); }
.Progress_Girl {
    width:100%;
    height:400px;
    background: url("images/progress/ProgressGirl.jpg") center/cover no-repeat;
    border-radius:16px;
}
.Progress_text {
    width:100%;
    font-size:24px;
    font-weight:700;
    font-family:Arial, sans-serif;
    text-align:left;
    padding:8px 0 8px 30px;
    color:var(--dark);
}
.Progress_text_desc {
    font-size:16px !important;
    font-weight:400 !important;
    margin-top:10px;
    color:#4a6680;
}
.Progress_logo {
    width:100%;
    height:80px;
    margin-top:auto;
    background: url("images/progress/Progress_logo.jpg") center/cover no-repeat;
}
.Progress_conteiner2 { width:100%; background:rgba(255,255,255,.95); }
.Progress_text_1 {
    width:100%;
    font-size:22px;
    font-weight:700;
    font-family:Arial, sans-serif;
    text-align:center;
    padding:20px;
    color:var(--dark);
}
.Progress_button { width:100%; padding:20px; display:flex; justify-content:center; }
.Progress_button_1 {
    display:inline-block;
    padding:14px 40px;
    font-size:15px;
    font-weight:700;
    font-family:Arial, sans-serif;
    text-align:center;
    background:var(--gold);
    color:#000000;
    border-radius:50px;
    border:2px solid var(--gold);
    transition:.3s;
    cursor:pointer;
}
.Progress_button_1:hover { 
    background:var(--gold-dark); 
    color:#000000; 
    border-color:var(--gold-dark); 
}

/* ====== БЕШТАУ ====== */
.Beshtau { width:100%; background:#fff; padding:30px; }
.Beshtau_conteiner,
.Beshtau_conteiner1,
.Beshtau_conteiner2 {
    width:100%;
    height:450px;
    background-size:cover;
    background-position:center;
    border-radius:20px;
}
.Beshtau_conteiner  { background-image:url("images/Beshtau/1.jpg"); }
.Beshtau_conteiner1 { background-image:url("images/Beshtau/2.jpg"); }
.Beshtau_conteiner2 { background-image:url("images/Beshtau/3.jpg"); }
.Raspisanie1ukovoditel {
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:24px;
    font-weight:600;
    padding:20px;
    text-align:center;
    color:var(--dark);
}

/* ====== АДАПТАЦИЯ ====== */
@media (max-width:860px) {
    .burger { display:flex; }
    .nav { position:fixed; top:70px; left:0; right:0; background:#fff; flex-direction:column; padding:24px; gap:18px; transform:translateY(-160%); transition:.35s; box-shadow:0 15px 30px rgba(255, 215, 0, 0.2); }
    .nav.open { transform:translateY(0); }
    .header-phone .btn { display:none; }
    .contacts-grid { grid-template-columns:1fr; }
    .map-wrap { min-height:320px; }
    .map-wrap iframe { height:320px; }
    section { padding:50px 0; }
    .hero { padding:120px 0 60px; }

    .masters-grid {
        display:flex;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        gap:16px;
        padding-bottom:8px;
        scrollbar-width:none;
    }
    .masters-grid::-webkit-scrollbar { display:none; }
    .master-card { flex:0 0 100%; scroll-snap-align:center; }
    .masters-dots { display:flex; }
    .swipe-hint { display:block; }
}

@media (max-width:600px) {
    .Progress { padding:15px; }
    .Progress_conteiner1 { flex-direction:column; }
    .Progress_block { width:100%; min-height:auto; padding:20px; }
    .Progress_Girl { height:250px; }
    .Progress_text { font-size:18px; padding:6px 0 6px 15px; }
    .Progress_text_desc { font-size:14px !important; padding-left:15px !important; }
    .Progress_text_1 { font-size:18px; padding:15px; }
    .Progress_logo { height:60px; }
    .Progress_button_1 { font-size:13px; padding:12px 28px; }

    .Beshtau { padding:15px; }
    .Beshtau_conteiner { height:280px; }
    .Beshtau_conteiner1,
    .Beshtau_conteiner2 { height:180px; }
    .Raspisanie1ukovoditel { font-size:18px; }
}

@media (max-width:480px) {
    .phone-link { font-size:13px; }
    .logo-name { font-size:20px; }
    .logo-circle { width:40px; height:40px; }
}