/*
 * JADE EMPIRE AUTO — Главные стили
 * mobile:<600 | tablet:600-1024 | desktop:1024-1600 | wide:1600-2400 | ultra:>2400
 */

:root {
  --black:#080c09; --dark:#0d1410; --card:#111a14;
  --border:rgba(201,168,76,.18);
  --gold-c:#c9a84c;
  --gold:linear-gradient(160deg,#6a4e10,#c9a84c,#e8c96a,#b88a28,#f0d070,#c9a84c,#8a6010);
  --jade:#4a9a7a; --jade2:#2a7a5a;
  --text:#f0ede8; --muted:rgba(240,237,232,.5);
  --accent:#c9a84c; --accent2:#4a9a7a;
  --page-px:clamp(16px,4vw,80px);
  --section-py:clamp(48px,6vw,100px);
  --content-max:1400px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:var(--black);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}

::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-track{background:rgba(255,255,255,.03)}
::-webkit-scrollbar-thumb{background:rgba(201,168,76,.35);border-radius:3px}

h1,h2,h3,h4{font-family:'Bebas Neue','Oswald',sans-serif;letter-spacing:1px;line-height:1.05}
h1{font-size:clamp(52px,9vw,120px)}
h2{font-size:clamp(32px,5vw,64px)}
h3{font-size:clamp(22px,3vw,38px)}

/* Nav */
nav{position:sticky;top:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:0 var(--page-px);height:clamp(52px,5vw,70px);background:rgba(8,12,9,.92);backdrop-filter:blur(20px);border-bottom:0.5px solid var(--border);gap:16px}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.nav-logo img{height:clamp(28px,3.5vw,44px);width:auto}
.nav-menu{display:flex;align-items:center;list-style:none;gap:clamp(12px,2vw,32px);flex:1;justify-content:center}
.nav-menu a{font-size:clamp(10px,1vw,12px);letter-spacing:2px;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s}
.nav-menu a:hover{color:var(--gold-c)}
.nav-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.nav-burger{display:none;background:none;border:none;color:var(--text);font-size:22px;cursor:pointer;padding:4px}
.nav-drawer{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(8,12,9,.97);z-index:300;flex-direction:column;align-items:center;justify-content:center;gap:28px}
.nav-drawer.open{display:flex}
.nav-drawer a{font-family:'Bebas Neue','Oswald',sans-serif;font-size:clamp(28px,6vw,44px);letter-spacing:4px;text-decoration:none;color:var(--text);transition:color .2s}
.nav-drawer a:hover,.nav-drawer a:active{color:var(--gold-c)}
.nav-drawer-close{position:absolute;top:20px;right:24px;background:none;border:none;color:var(--muted);font-size:28px;cursor:pointer}

/* Buttons */
.btn-primary{display:inline-block;padding:clamp(10px,1.2vw,14px) clamp(20px,2.5vw,36px);font-family:'Montserrat',sans-serif;font-size:clamp(10px,1vw,12px);font-weight:600;letter-spacing:2.5px;text-transform:uppercase;background:var(--gold);color:#0a0a06;border:none;cursor:pointer;text-decoration:none;transition:opacity .2s}
.btn-primary:hover{opacity:.85}
.btn-outline{display:inline-block;padding:clamp(10px,1.2vw,14px) clamp(20px,2.5vw,36px);font-family:'Montserrat',sans-serif;font-size:clamp(10px,1vw,12px);font-weight:500;letter-spacing:2px;text-transform:uppercase;background:transparent;color:var(--text);border:0.5px solid rgba(255,255,255,.3);cursor:pointer;text-decoration:none;transition:all .2s}
.btn-outline:hover{border-color:var(--gold-c);color:var(--gold-c)}

/* Forms */
.form-group{margin-bottom:16px}
.form-label{display:block;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.form-control{width:100%;padding:12px 14px;background:#0d1410;border:0.5px solid var(--border);color:#c9a84c;font-family:'Montserrat',sans-serif;font-size:14px;outline:none;transition:border-color .2s;appearance:none}
.form-control:focus{border-color:var(--gold-c)}
.form-control::placeholder{color:rgba(201,168,76,.35)}
textarea.form-control{min-height:100px;resize:vertical;color:var(--text)}
textarea.form-control::placeholder{color:rgba(240,237,232,.3)}
input.form-control{color:var(--text)}
input.form-control::placeholder{color:rgba(240,237,232,.3)}
select.form-control{background:#0d1410 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c9a84c' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:36px;cursor:pointer;color:#c9a84c}
select.form-control option{background:#0d1410;color:#c9a84c;font-family:'Montserrat',sans-serif}
select.form-control option:checked,select.form-control option:hover{background:#1a2e1a;color:#e8c96a}
.submit-btn{width:100%;padding:14px;background:var(--gold);border:none;color:#0a0a06;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:opacity .2s}
.submit-btn:hover{opacity:.85}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}

/* Tabs */
.tab-row{display:flex;gap:2px;background:rgba(255,255,255,.03);border:0.5px solid var(--border);padding:4px;margin-bottom:20px}
.tab-btn{flex:1;padding:8px;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-family:'Montserrat',sans-serif;border:none;cursor:pointer;transition:all .2s;background:transparent;color:var(--muted)}
.tab-btn.active{background:var(--gold);color:#0a0a06;font-weight:700}
.tab-content{display:none}
.tab-content.active{display:block}

/* Modal */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);z-index:4000;display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;pointer-events:none;transition:opacity .3s}
.modal-overlay.open{opacity:1;pointer-events:all}
/* .modal = старый класс, алиас для .modal-box */
.modal{background:var(--dark);border:0.5px solid var(--border);width:100%;max-width:480px;max-height:90vh;overflow-y:auto;padding:clamp(20px,3vw,36px);position:relative}
.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--muted);font-size:20px;line-height:1;cursor:pointer;padding:4px 8px;transition:color .2s;z-index:10}
.modal-close:hover{color:var(--text)}
.modal-box{background:var(--dark);border:0.5px solid var(--border);width:100%;max-width:480px;max-height:90vh;overflow-y:auto;padding:clamp(20px,3vw,36px)}
.modal-title{font-family:'Bebas Neue','Oswald',sans-serif;font-size:clamp(22px,3vw,32px);letter-spacing:2px;margin-bottom:20px;background:var(--gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* Notif */
.notif{position:fixed;bottom:24px;right:24px;z-index:9999;background:#111a14;border:0.5px solid rgba(74,154,122,.4);padding:14px 20px;font-size:13px;color:var(--text);display:flex;gap:10px;align-items:center;box-shadow:0 4px 20px rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:opacity .3s;max-width:calc(100vw - 32px)}
.notif.open{opacity:1;pointer-events:all}
.notif-icon{color:#4a9a7a;font-size:18px}

/* Sections */
.section{padding:var(--section-py) var(--page-px)}
.section-tag{font-size:10px;letter-spacing:4px;text-transform:uppercase;background:var(--gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px}
.section-divider{border:none;border-top:0.5px solid var(--border)}
.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:clamp(28px,4vw,56px);gap:24px;flex-wrap:wrap}
.section-desc{font-size:13px;color:var(--muted);max-width:280px;text-align:right;line-height:1.6}

/* Cards */
.card{background:var(--card);border:0.5px solid var(--border);transition:border-color .2s}
.card:hover{border-color:rgba(201,168,76,.35)}

/* Reveal animation */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}

/* Float buttons */
.float-feedback{position:fixed;bottom:32px;left:32px;z-index:400}
.scroll-top-btn{position:fixed;bottom:32px;right:32px;z-index:400;width:44px;height:44px;background:rgba(201,168,76,.15);border:0.5px solid rgba(201,168,76,.4);color:var(--gold-c);font-size:18px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none}
.scroll-top-btn.visible{opacity:1;pointer-events:all}
.scroll-top-btn:hover{background:rgba(201,168,76,.3)}

/* ══ MOBILE < 600px ══ */
@media(max-width:599px){
  :root{--page-px:16px;--section-py:40px}
  .nav-menu{display:none}
  .nav-burger{display:block}
  .nav-actions .btn-outline{display:none}
  h1{font-size:clamp(40px,13vw,60px)}
  h2{font-size:clamp(26px,9vw,40px)}
  .section-header{flex-direction:column;align-items:flex-start;gap:10px}
  .section-desc{text-align:left;max-width:100%}
  .form-row{grid-template-columns:1fr}
  .modal-overlay{align-items:flex-end;padding:0}
  .modal-box{max-width:100%;max-height:92vh;border-bottom:none}
  .float-feedback{bottom:16px;left:16px}
  .scroll-top-btn{bottom:16px;right:16px;width:40px;height:40px}
  .notif{bottom:12px;right:12px;left:12px}
}

/* ══ TABLET 600-1024px ══ */
@media(min-width:600px) and (max-width:1023px){
  :root{--page-px:28px;--section-py:56px}
  .nav-menu{gap:14px}
  .nav-menu li:nth-child(n+5){display:none}
}

/* ══ WIDE 1600-2400px ══ */
@media(min-width:1600px){
  :root{--content-max:1600px;--page-px:clamp(48px,5vw,120px);--section-py:clamp(72px,6vw,120px)}
  html{font-size:17px}
  .nav-menu{gap:40px}
}

/* ══ ULTRAWIDE > 2400px ══ */
@media(min-width:2400px){
  :root{--content-max:2100px;--page-px:160px;--section-py:140px}
  html{font-size:20px}
  nav{height:80px}
}

/* ── Алиасы для совместимости со старым HTML ── */
.nav-links { display:flex;align-items:center;list-style:none;gap:clamp(12px,2vw,32px);flex:1;justify-content:center }
.nav-links li { list-style:none }
.nav-links a { font-size:clamp(10px,1vw,12px);letter-spacing:2px;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s }
.nav-links a:hover { color:var(--gold-c) }
.nav-right { display:flex;align-items:center;gap:12px;flex-shrink:0 }

@media(max-width:599px) {
  .nav-links { display:none }
  .nav-right .btn-outline { display:none }
}
@media(min-width:600px) and (max-width:1023px) {
  .nav-links { gap:14px }
  .nav-links li:nth-child(n+4) { display:none }
}
