    :root{
    --dark:#111827;
    --dark-2:#0f172a;
    --text:#111827;
    --muted:#6b7280;
    --line:#e5e7eb;
    --bg:#ffffff;
    --soft:#f5f6f8;
    --orange:#f97316;

    --radius:18px;
    --shadow:0 10px 30px rgba(17,24,39,.08);

    font-size: 20px;
    }

    *{box-sizing:border-box}
    html,body{margin:0;padding:0}
    body{
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    
    background:var(--bg);
    }

    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}

    .container{
    width:min(1180px, calc(100% - 40px));
    margin:0 auto;
    }

    .muted{color:var(--muted)}

    .header{
    position:sticky; /* или fixed */
    top:0;
    z-index:1000;

    /* glass */
    background: rgba(255,255,255,.55);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    border-bottom: 1px solid rgba(15,23,42,.10);
    }
    .header__inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    height:72px;
    }



    .header a:hover{
    color:#0f172a;
    opacity:.85;
    }

    .logo{font-weight:800; letter-spacing:.5px}
    .nav{display:flex; gap:22px; align-items:center}
    .nav__link{font-weight:600;}
    .nav__link:hover{color:#f97316}
    .header__actions{display:flex; gap:10px; align-items:center}

    /* базовая кнопка */
    .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    padding:12px 18px;
    border-radius:14px;

    background:#fff;
    color:#0f172a;
    border:1px solid rgba(15,23,42,.12);

    font-weight:800;
    text-decoration:none;
    cursor:pointer;

    transition: background .15s ease, color .15s ease, border-color .15s ease, transform .15s ease;
    }

    /* hover: становится оранжевой */
    .btn:hover{
    background: var(--orange);
    color:#fff;
    border-color: transparent;
    transform: translateY(-1px);
    }

    /* focus (чтоб не было колхоза для клавиатуры) */
    .btn:focus-visible{
    outline: 3px solid rgba(249,115,22,.35);
    outline-offset: 2px;
    }

    /* активное нажатие */
    .btn:active{
    transform: translateY(0);
    }

    /* если у тебя есть "btn--block" */
    .btn--block{
    width:100%;
    }

    /* второстепенная кнопка (если хочешь чтобы тоже была белой, но с другим бордером) */
    .btn--outline{
    background: transparent;
    border:1px solid rgba(15,23,42,.18);
    }
    .btn--outline:hover{
    background: var(--orange);
    color:#fff;
    border-color: transparent;
    }


    .section{padding:70px 0}
    .section--gray{background:#6b6b6b; color:#fff}
    .section__title{
    font-size:44px;
    line-height:1.05;
    text-align:center;
    margin:0 0 22px 0;
    font-weight:900;
    }
    .section__title--left{text-align:left}

    .footer{
    border-top:1px solid var(--line);
    padding:50px 0;
    background:#fff;
    }
    .footer__grid{
    display:grid;
    grid-template-columns: 1.3fr 1fr 1fr 1fr;
    gap:30px;
    }
    .footer__title{font-weight:800; margin-bottom:12px}
    .footer__link{display:block; margin:8px 0; color:#334155}
    .footer__link:hover{color:#000}
    .footer__contact{display:flex; gap:10px; margin:10px 0; color:#334155}

    .social{display:flex; gap:10px; margin-top:14px}
    .social__link{
    width:38px; height:38px;
    border:1px solid var(--line);
    border-radius:12px;
    display:flex; align-items:center; justify-content:center;
    color:#334155;
    }
    .social__link:hover{border-color:#cbd5e1;color:#000}

    .modal{
    position:fixed;
    inset:0;
    display:none;
    z-index:100;
    }
    .modal.is-open{display:block}
    .modal__backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.55);
    }
    .modal__dialog{
    position:relative;
    width:min(720px, calc(100% - 24px));
    margin:60px auto;
    background:#fff;
    border-radius:18px;
    box-shadow:var(--shadow);
    padding:22px 22px 18px;
    }
    .modal__close{
    position:absolute;
    top:14px; right:16px;
    border:0;
    background:transparent;
    font-size:28px;
    cursor:pointer;
    color:#64748b;
    }
    .modal__title{
    margin:0 0 6px 0;
    font-size:32px;
    font-weight:900;
    }
    .modal__subtitle{margin:0 0 18px 0; color:#64748b}

    .form__label{
    display:block;
    margin:12px 0 8px;
    font-weight:700;
    color:#111827;
    }
    .form__input, .form__textarea{
    width:100%;
    border:1px solid var(--line);
    border-radius:12px;
    padding:12px 12px;
    font-size:16px;
    outline:none;
    }
    .form__input:focus, .form__textarea:focus{
    border-color:#93c5fd;
    box-shadow:0 0 0 4px rgba(59,130,246,.15);
    }
    .form__hint{margin-top:10px; font-weight:700}

    @media (max-width: 980px){
    .footer__grid{grid-template-columns: 1fr 1fr}
    .nav{display:none}
    }
    @media (max-width: 560px){
    .footer__grid{grid-template-columns: 1fr}
    }


    .btn--orange,
    .btn--dark{
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid rgba(15,23,42,.12) !important;
    }

    .btn--orange:hover,
    .btn--dark:hover{
    background: var(--orange) !important;
    color:#fff !important;
    border-color: transparent !important;
    }

    :root{
    --btn-h: 46px;        /* единая высота */
    --btn-minw: 220px;    /* единая ширина (минимум) */
    --btn-fs: 17px;       /* единый размер текста */
    }

    .btn{
    height: var(--btn-h);
    min-width: var(--btn-minw);

    font-size: 17px;
    line-height: 1;
    font-weight: 800;

    padding: 0 18px;          /* чтобы высоту не ломало */
    white-space: nowrap;       /* не переносить текст */
    }

    /* если кнопка на всю ширину */
    .btn--block{
    width: 100%;
    min-width: 0;
    }

    /* если хочешь компактные кнопки (например, в карточках) */
    .btn--sm{
    --btn-h: 40px;
    --btn-minw: 180px;
    --btn-fs: 17px;
    }

    .logo,
.nav__link{
  color:#fff !important;
  font-weight:900;
  -webkit-text-stroke: 0.9px #000;   /* белая обводка */
  text-shadow: none !important;    /* никакого размытия */
}

/* чтобы при наведении не становилось оранжевым */
.nav__link:hover{
  color:#fff !important;
  -webkit-text-stroke: 0.9px #000;
  text-shadow:none !important;
  transform:none !important;
  opacity:1 !important;
}

/* размер текста навбара + лого */
.logo{
  font-size: 22px;      /* можешь 20-26px */
  line-height: 1;
}

.nav__link{
  font-size: 20 px;      /* можешь 16-20px */
  line-height: 1;
}

.footer{
  border-top:1px solid var(--line);
  padding:50px 0;
  background:#fff;
}

.footer__grid{
  display:grid;
  grid-template-columns: 1.3fr 1fr 1fr 1fr;
  gap:30px;
  align-items:start;
}

.footer__logo{
  font-weight:900;
  letter-spacing:.5px;
  color:#0f172a;      /* нормальный цвет в футере */
  font-size:22px;
  line-height:1;
  margin-bottom:10px;
}

.footer__title{
  font-weight:900;
  margin-bottom:12px;
  color:#0f172a;
}

.footer__link{
  display:block;
  margin:8px 0;
  color:#334155;
}
.footer__link:hover{ color:#0f172a; }

.footer__contact{
  display:flex;
  gap:10px;
  align-items:center;
  margin:10px 0;
  color:#334155;
}
a.footer__contact:hover{ color:#0f172a; }

@media (max-width: 980px){
  .footer__grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .footer__grid{ grid-template-columns: 1fr; }
}

/* Контакты в хедере: убрать “серую кнопку”, сделать как обычный пункт меню */
.nav__link--contact{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

/* На всякий: если браузер/стили дают фон на focus/active */
.nav__link--contact:focus,
.nav__link--contact:active{
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Если хочешь аккуратный фокус (доступность) вместо серого пятна */
.nav__link--contact:focus-visible{
  outline: none;
  border-radius: 10px;
  box-shadow: 0 0 0 3px rgba(255,255,255,.22);
}

.auth{
  display:flex;
  align-items:center;
  gap:12px;
}
.auth__user{
  font-weight:900;
  font-size:14px;
  color: var(--text, #111827);
  opacity:.9;
}
