/* Reset */
*{margin:0;padding:0;box-sizing:border-box}

:root{
--primary:#1f4ba5;
--primary-dark:#173b85;
--secondary:#f59e0b;
--accent:#10b981;
--text:#1f2937;
--text-sec:#6b7280;
--text-light:#9ca3af;
--bg:#fff;
--bg-sec:#f9fafb;
--bg-dark:#111827;
--border:#e5e7eb;
--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);
--shadow-md:0 4px 6px -1px rgba(0,0,0,.1);
--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1);
--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1);
--gradient:linear-gradient(135deg,#2f5597 0%,#1f3f83 100%);
--radius:12px;
--radius-lg:16px
}

html,body{overflow-x:hidden;max-width:100vw}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;line-height:1.6;color:var(--text);background:var(--bg);position:relative}
.container{max-width:1200px;margin:0 auto;padding:0 20px;width:100%}

/* Typography */
h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:1rem}
h1{font-size:3.5rem}
h2{font-size:2.5rem}
h3{font-size:1.75rem}
h4{font-size:1.25rem}
p{margin-bottom:1rem;color:var(--text-sec);word-wrap:break-word}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:var(--radius);font-weight:500;text-decoration:none;cursor:pointer;transition:all .3s ease;font-size:.95rem;white-space:nowrap}
.btn-primary{background:var(--gradient);color:#fff;box-shadow:var(--shadow-md)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.btn-outline{background:transparent;color:var(--primary);border:2px solid var(--primary)}
.btn-outline:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}
.btn-large{padding:1rem 2rem;font-size:1.1rem}
.btn-full{width:100%}

/* Header */
.header{position:fixed;top:0;left:0;right:0;background:transparent;z-index:1000;width:100%}
.nav-container{display:flex;align-items:center;justify-content:space-between;padding:1rem 20px;max-width:1200px;margin:0 auto;width:100%}
.logo{display:flex;align-items:center;margin-right:auto;gap:.5rem;font-size:1.5rem;font-weight:700;color:var(--primary);position:relative}
.logo i{font-size:2rem}
.site-logo{height:180px;width:auto;display:block;filter:contrast(1.3) brightness(1.1) saturate(1.2);transition:filter .3s;margin-left:-140px}
.site-logo:hover{filter:contrast(1.5) brightness(1.2) saturate(1.4)}
.nav-menu{display:flex;list-style:none;gap:2rem;padding:0;margin:0}
.nav-menu li{position:relative;left:-20px}
.nav-menu a{text-decoration:none;color:#fff;font-weight:700;font-size:1rem;transition:all .25s;padding:8px 16px;border-radius:8px;background:rgba(31,63,131,0.75);backdrop-filter:blur(4px)}
.nav-menu a:hover{transform:translateY(-2px);background:rgba(31,63,131,1);box-shadow:0 4px 12px rgba(0,0,0,.3)}
.nav-buttons .btn-primary{background:rgba(31,63,131,0.75);backdrop-filter:blur(4px);border-radius:8px;font-weight:700;font-size:1rem;padding:8px 16px;box-shadow:none}
.nav-buttons .btn-primary:hover{transform:translateY(-2px);background:rgba(31,63,131,1);box-shadow:0 4px 12px rgba(0,0,0,.3)}
.nav-buttons{display:flex;gap:1rem}
.hamburger{display:none;flex-direction:column;cursor:pointer;gap:4px}
.hamburger span{width:25px;height:3px;background:var(--text);transition:all .3s}

/* Мобильные кнопки — скрыты на десктопе */
.mobile-nav-btns{display:none}

/* Hero */
.hero{padding:80px 0;background:linear-gradient(135deg,rgba(47,85,151,.35) 0%,rgba(31,63,131,.35) 100%),url('assets/background.jpg');background-position:center top;background-size:cover;min-height:100vh;color:#fff;position:relative;overflow:hidden;width:100%}
.hero-container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;z-index:1;width:100%}
.hero-title{font-size:3.5rem;font-weight:700;margin-bottom:1.5rem;line-height:1.1;margin-top:120px}
.highlight{background:linear-gradient(45deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* Features */
.features{padding:80px 0;width:100%}
.section-header{text-align:center;margin-bottom:4rem}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;width:100%}
.feature-card{background:#fff;padding:2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;transition:all .3s;border:1px solid var(--border);min-height:200px;display:flex;flex-direction:column;justify-content:center}
.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl)}
.feature-icon{width:80px;height:80px;background:var(--gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:2rem;color:#fff}
.feature-card h3{margin-bottom:1rem;color:var(--text);font-size:1.1rem;line-height:1.3}
.feature-card p{color:var(--text-sec);line-height:1.6}

/* Плеер */
.music-player{position:fixed;top:15px;right:15px;z-index:9999}
.globe{width:84px;height:84px;background:url('assets/globe.png') center/cover no-repeat;border-radius:50%;animation:spin 12s infinite linear;box-shadow:var(--shadow-lg);cursor:pointer}
@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}

.volume-control{position:fixed;right:8px;top:50%;transform:translateY(-50%);z-index:9998;display:flex;flex-direction:column;align-items:center;gap:8px}
.volume-slider-container{position:relative;width:4px;height:150px;background:rgba(255,255,255,0.2);border-radius:2px;backdrop-filter:blur(10px)}
.volume-slider{-webkit-appearance:none;appearance:none;width:150px;height:4px;background:transparent;transform:rotate(-90deg);position:absolute;top:50%;left:50%;margin-left:-75px;cursor:pointer}
.volume-fill{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,#0066ff,#4a9eff);border-radius:2px;transition:height 0.1s;pointer-events:none}
.volume-icon{font-size:18px;color:rgba(255,255,255,0.9)}

#languageDropdown{position:fixed;top:80px;right:15px;background:#fff;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,0.18);padding:12px 0;min-width:210px;display:none;z-index:9999;max-height:calc(100vh - 100px);overflow-y:auto;overscroll-behavior:contain}
#languageDropdown.show{display:block;animation:slideDown .3s ease}
.language-option{padding:12px 24px;cursor:pointer;display:flex;align-items:center;gap:12px;font-size:16px;transition:.2s;font-weight:500}

/* Контакты */
.contact{padding:80px 0;background:var(--bg-sec);width:100%;position:relative;overflow:hidden}
.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;max-width:100%}
.contact-details{display:flex;flex-direction:column;gap:1.5rem;width:100%}
.contact-item{display:flex;align-items:flex-start;gap:1rem;max-width:100%;width:100%}
.contact-item i{width:50px;height:50px;min-width:50px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.contact-item img{width:auto;max-height:100px;max-width:100%}
.contact-item div{flex:1;min-width:0;width:100%}
.contact-form{background:#fff;padding:2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:100%;width:100%}
.form-group{margin-bottom:1.5rem}
.form-group input,.form-group textarea{width:100%;padding:1rem;border:2px solid var(--border);border-radius:var(--radius);font-size:1rem;font-family:inherit;transition:all .3s}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}

/* Оверлей куки */
.contact-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--bg-sec);display:none;z-index:100;pointer-events:auto}
.contact-overlay.show{display:flex}
.cookie-banner-contact{position:relative;width:100%;height:100%;background:url('assets/car.jpg') center/cover no-repeat;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px}
.cookie-close{position:absolute;top:25px;right:25px;background:rgba(255,255,255,0.9);border:none;font-size:2.5rem;width:45px;height:45px;line-height:45px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#1f2937;box-shadow:0 4px 10px rgba(0,0,0,0.2);transition:all 0.3s}
.cookie-close:hover{background:#fff;transform:scale(1.1)}
.cookie-banner-contact p{font-size:1.2rem;color:#1f2937;max-width:600px;background:rgba(255,255,255,0.9);padding:20px;border-radius:12px;margin-bottom:30px;font-weight:600;box-shadow:0 4px 10px rgba(0,0,0,0.1);text-align:center}
.cookie-accept{padding:16px 40px;background:rgba(31,63,131,0.9);color:#fff;border:none;border-radius:12px;font-size:1.2rem;font-weight:bold;cursor:pointer;box-shadow:0 4px 16px rgba(31,63,131,0.4);transition:all .25s}
.cookie-accept:hover{transform:translateY(-2px);background:rgba(31,63,131,1);box-shadow:0 6px 16px rgba(31,63,131,0.5)}
.cookie-accept:active{transform:scale(0.95)}

/* Footer */
.footer{background:var(--bg-dark);color:#fff;padding:60px 0 20px;width:100%;overflow:hidden}
.footer-flex{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:0 20px}
.footer-tagline-inline{position:relative;white-space:nowrap;font-size:1.5rem;font-weight:700;color:#d4af37;margin-left:20px}
.social-links{display:flex;gap:22px;align-items:center}
.social-links a img{height:56px;width:auto;transition:transform .25s ease,filter .25s ease;filter:drop-shadow(0 2px 6px rgba(0,0,0,0.15))}
.social-links a:hover img{transform:translateY(-3px);filter:drop-shadow(0 6px 12px rgba(0,0,0,0.35))}
.btn-feedback{transition:all .25s ease!important}
.btn-feedback:hover{transform:translateY(-3px)!important;box-shadow:0 6px 16px rgba(0,0,0,.3)!important}
.footer-bottom{text-align:center;margin-top:15px;font-size:15px;color:#888}
.footer-bottom a{color:#aaa;text-decoration:underline;transition:color .2s}
.footer-bottom a:hover{color:#fff}

/* ── МОБАЙЛ 768px ── */
@media(max-width:768px){

  /* Хедер */
  .header{position:fixed!important;background:transparent!important;height:auto!important;z-index:1000}
  .nav-container{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:12px 15px!important}

  /* Скрываем десктопные элементы */
  .nav-menu,.nav-buttons,.hamburger{display:none!important}

  /* Логотип */
  .site-logo{height:58px!important;width:auto!important;margin:0!important;max-width:150px!important}

  /* Мобильные кнопки — столбик слева от глобуса */
  .mobile-nav-btns{
    display:flex!important;
    flex-direction:column;
    gap:5px;
    align-items:flex-end;
    margin-left:auto;
    margin-right:72px;
  }
  .mobile-nav-btns a{
    display:block;
    padding:6px 14px;
    border-radius:50px;
    font-size:0.82rem;
    font-weight:700;
    text-decoration:none;
    white-space:nowrap;
    color:#fff;
    background:var(--gradient);
    box-shadow:var(--shadow-md);
    transition:opacity .2s;
  }
  .mobile-nav-btns a:hover{opacity:.82}

  /* Глобус — верхний правый, 60px */
  .music-player{position:fixed!important;top:12px!important;right:12px!important;z-index:1001}
  .globe{width:60px!important;height:60px!important}

  /* Громкость */
  .volume-control{display:flex!important;right:4px;top:60%;transform:translateY(-50%)}
  .volume-slider-container{height:120px!important}
  .volume-slider{width:120px!important;margin-left:-60px!important}

  /* Языки под глобусом */
  #languageDropdown{top:80px!important;right:10px!important;max-height:calc(100vh - 100px)!important}

  /* Герой — вдвое короче */
  .hero{min-height:50vh!important;padding:60px 0 30px!important}
  .hero-title{font-size:2rem!important;margin-top:70px!important}
  .hero-subtitle{font-size:1rem!important;padding:0 10px}

  /* Сетка услуг 2 колонки */
  .features-grid{grid-template-columns:repeat(2,1fr)!important;gap:0.9rem!important}
  .feature-card{padding:1rem!important;min-height:auto!important}
  .feature-icon{width:46px!important;height:46px!important;font-size:1.1rem!important;margin-bottom:0.6rem!important}
  .feature-card h3{font-size:0.82rem!important;margin-bottom:0.35rem!important}
  .feature-card p{font-size:0.75rem!important;line-height:1.4!important}

  /* Контакты */
  .contact{padding:60px 20px}
  .contact-content{grid-template-columns:1fr;gap:2rem}
  .contact-item{flex-direction:row;align-items:flex-start;gap:1rem;width:100%}
  .contact-item img{max-width:100%;height:auto}
  #wechatQR{max-width:100%!important;height:auto!important}
  .contact-item p,.contact-item a{font-size:.9rem;word-break:break-all}
  .contact-form{padding:1.5rem;width:100%}
  .form-group input,.form-group textarea,.contact-form .btn{width:100%;max-width:100%;font-size:16px}

  /* Куки */
  .cookie-close{top:15px;right:15px;width:40px;height:40px;font-size:2rem}
  .cookie-banner-contact p{font-size:1rem;padding:15px;margin-bottom:20px}
  .cookie-accept{padding:12px 30px;font-size:1.1rem}

  /* Футер */
  .footer{padding:40px 20px 20px}
  .footer-flex{flex-direction:column;gap:1.5rem;text-align:center}
  .footer .logo{flex-direction:column!important;align-items:center!important;text-align:center}
  .footer-tagline-inline{position:static!important;display:block!important;margin:10px 0 0!important;font-size:1.2rem!important;white-space:normal!important;line-height:1.4!important;text-align:center!important;margin-left:0!important}
}

@media(max-width:480px){
  .site-logo{height:50px!important}
  .globe{width:54px!important;height:54px!important}
  .mobile-nav-btns{margin-right:66px}
  .features-grid{grid-template-columns:repeat(2,1fr)!important;gap:0.7rem!important}
  .contact{padding-left:15px;padding-right:15px}
  .contact-item{flex-direction:column;align-items:center;text-align:center;gap:.75rem}
  .contact-item i{width:45px;height:45px;min-width:45px;font-size:1.1rem}
  .contact-item img{max-height:200px;width:100%;object-fit:contain}
  .contact-item div{width:100%}
  .contact-item p,.contact-item a{font-size:.85rem}
}
