:root {
      --primary:#0078D7;
      --accent:#FFB400;
      --bg:#F5F7FA;
      --text:#222222;
      --radius-lg:14px;
    }
    body {
      font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      background:var(--bg);
      color:var(--text);
      margin:0;
      padding:0;
    }
    h1,h2,h3,h4 {
      font-family:"Montserrat","Inter",system-ui,sans-serif;
      font-weight:700;
      color:#111;
    }
    a {color:var(--primary);}
    .btn {
      display:inline-block;
      padding:0.9rem 1.8rem;
      border-radius:999px;
      border:0;
      font-weight:600;
      font-size:0.95rem;
      cursor:pointer;
      text-decoration:none;
      transition:all .2s ease;
      white-space:nowrap;
    }
    .btn-primary {
      background:var(--primary);
      color:#fff;
    }
    .btn-primary:hover {
      background:#005faf;
      color:#fff;
    }
    .btn-outline {
      background:transparent;
      color:#fff;
      border:1px solid rgba(255,255,255,.7);
    }
    .btn-outline:hover {
      background:#fff;
      color:var(--primary);
    }
    .btn-light {
      background:#fff;
      color:var(--primary);
      border:1px solid rgba(0,0,0,0.04);
    }
    .btn-light:hover {
      background:#f3f6fb;
    }
    header, section {
      position:relative;
      z-index:1;
    }
    .section-padding {
      padding:4rem 0;
    }
    @media (max-width:640px){
      .section-padding {
        padding:3rem 0;
      }
    }
    /* HERO */
    #hero {
      min-height:90vh;
      display:flex;
      align-items:center;
      color:#fff;
      position:relative;
      overflow:hidden;
    }
    #hero::before {
      content:"";
      position:absolute;
      inset:0;
      background:url("img/image_bc121a7e-2ca8-4563-8016-4ffb8df2d6ed.png") center/cover no-repeat;
      z-index:-2;
    }
    #hero::after {
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(120deg,rgba(0,0,0,0.75) 0%,rgba(0,0,0,0.45) 40%,rgba(0,0,0,0.2) 100%);
      z-index:-1;
    }
    .hero-inner {
      padding:5rem 0 4rem;
    }
    .hero-title {
      font-size:2.6rem;
      line-height:1.15;
      margin-bottom:1rem;
    }
    .hero-subtitle {
      font-size:1.25rem;
      margin-bottom:1.2rem;
    }
    .hero-text {
      font-size:1rem;
      max-width:32rem;
      margin-bottom:1.8rem;
      opacity:.95;
    }
    .hero-badges {
      display:flex;
      flex-wrap:wrap;
      gap:0.6rem 1.2rem;
      margin-bottom:2rem;
      font-size:0.9rem;
    }
    .hero-badge {
      display:inline-flex;
      align-items:center;
      gap:0.4rem;
      padding:0.25rem 0.9rem;
      border-radius:999px;
      background:rgba(0,0,0,0.35);
      border:1px solid rgba(255,255,255,0.15);
      backdrop-filter:blur(10px);
    }
    .hero-form-card {
      background:rgba(255,255,255,0.97);
      border-radius:var(--radius-lg);
      padding:1.8rem 1.6rem;
      box-shadow:0 22px 45px rgba(0,0,0,0.28);
      color:#111;
    }
    .hero-form-card h3 {
      font-size:1.25rem;
      margin-bottom:0.4rem;
    }
    .hero-form-card p {
      font-size:0.9rem;
      margin-bottom:1.2rem;
      color:#555;
    }
    .form-group {
      margin-bottom:0.75rem;
    }
    .form-group label {
      font-size:0.8rem;
      font-weight:500;
      margin-bottom:0.2rem;
      display:block;
    }
    .form-group input,
    .form-group textarea {
      width:100%;
      border-radius:10px;
      border:1px solid #d5d9e2;
      padding:0.55rem 0.75rem;
      font-size:0.9rem;
      outline:none;
      transition:border .15s ease, box-shadow .15s ease;
    }
    .form-group input:focus,
    .form-group textarea:focus {
      border-color:var(--primary);
      box-shadow:0 0 0 1px rgba(0,120,215,.15);
    }
    .form-note {
      font-size:0.7rem;
      color:#888;
      margin-top:0.4rem;
      line-height:1.4;
    }
    /* ABOUT */
    #about {
      background:#fff;
    }
    .section-title {
      font-size:2rem;
      margin-bottom:0.5rem;
    }
    .section-subtitle {
      font-size:1.05rem;
      color:#555;
      margin-bottom:1.2rem;
    }
    .check-list {
      list-style:none;
      padding:0;
      margin:1rem 0 0;
    }
    .check-list li {
      position:relative;
      padding-left:1.35rem;
      margin-bottom:0.45rem;
      font-size:0.95rem;
    }
    .check-list li::before {
      content:"✓";
      position:absolute;
      left:0;
      top:0;
      color:var(--primary);
      font-weight:700;
      font-size:0.85rem;
    }
    .about-card {
      background:#f7f9fc;
      border-radius:var(--radius-lg);
      padding:1.6rem 1.5rem;
      border:1px solid #e2e6f0;
      font-size:0.9rem;
    }
    .about-metrics {
      display:flex;
      flex-wrap:wrap;
      gap:1.5rem;
      margin-top:1.5rem;
    }
    .about-metric strong {
      display:block;
      font-size:1.3rem;
      color:var(--primary);
    }
    .about-metric span {
      font-size:0.85rem;
      color:#555;
    }
    /* FAQ */
    #faq {
      background:transparent;
    }
    .faq-item {
      border-radius:12px;
      border:1px solid #e0e4ee;
      padding:1rem 1.1rem;
      margin-bottom:0.7rem;
      background:#fff;
      cursor:pointer;
    }
    .faq-question {
      display:flex;
      justify-content:space-between;
      align-items:center;
      font-weight:600;
      font-size:0.98rem;
    }
    .faq-answer {
      margin-top:0.55rem;
      font-size:0.9rem;
      color:#555;
      display:none;
    }
    .faq-item.active .faq-answer {
      display:block;
    }
    .faq-toggle {
      font-size:1.3rem;
      color:#999;
      margin-left:0.75rem;
    }
    /* CTA */
    #cta {
      background:linear-gradient(120deg,#0078D7 0%,#0053a3 50%,#002a60 100%);
      color:#fff;
    }
    .cta-inner {
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1.5rem;
    }
    .cta-title {
      font-size:1.7rem;
      margin-bottom:0.5rem;
    }
    .cta-text {
      max-width:32rem;
      font-size:0.98rem;
    }
    /* ADVANTAGES */
    #advantages {
      background:transparent;
    }
    .adv-grid {
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:1.2rem;
      margin-top:1.5rem;
    }
    @media (max-width:640px){
      .adv-grid {
        grid-template-columns:1fr;
      }
    }
    .adv-card {
      background:#fff;
      border-radius:var(--radius-lg);
      padding:1.3rem 1.2rem;
      border:1px solid #e1e5f0;
      font-size:0.9rem;
    }
    .adv-card h4 {
      font-size:1rem;
      margin-bottom:0.35rem;
    }
    .adv-tag {
      display:inline-block;
      font-size:0.7rem;
      padding:0.15rem 0.6rem;
      border-radius:999px;
      background:#e6f1ff;
      color:#205493;
      margin-bottom:0.4rem;
      font-weight:600;
      letter-spacing:0.02em;
      text-transform:uppercase;
    }
    /* CONTACTS */
    #contacts {
      background:#fff;
    }
    .contacts-grid {
      display:grid;
      grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
      gap:1.8rem;
    }
    @media (max-width:800px){
      .contacts-grid {
        grid-template-columns:1fr;
      }
    }
    .contacts-list {
      list-style:none;
      padding:0;
      margin:1rem 0 1.5rem;
      font-size:0.96rem;
    }
    .contacts-list li {
      margin-bottom:0.45rem;
    }
    .map-placeholder {
      background:#f3f5fb;
      border-radius:var(--radius-lg);
      border:1px solid #dde2f0;
      height:260px;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:0.9rem;
      color:#777;
    }
    /* FOOTER */
    #footer {
      background:#0f1724;
      color:#c9d1e5;
      font-size:0.86rem;
      padding:1.6rem 0;
    }
    .footer-brand {
      font-weight:700;
      color:#fff;
    }
    .footer-links a {
      color:#c9d1e5;
      margin-left:1.2rem;
      font-size:0.86rem;
    }
    .footer-links a:hover {
      text-decoration:underline;
    }
    /* COOKIE */
    .cookie-banner {
      position:fixed;
      bottom:1rem;
      left:50%;
      transform:translateX(-50%);
      max-width:480px;
      width:calc(100% - 2rem);
      background:#fff;
      border-radius:12px;
      box-shadow:0 18px 40px rgba(15,23,42,0.35);
      padding:0.9rem 1rem;
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:0.7rem;
      font-size:0.8rem;
      z-index:50;
    }
    .cookie-banner p {
      margin:0;
      color:#555;
    }
    .cookie-banner button {
      border-radius:999px;
      border:0;
      padding:0.4rem 0.9rem;
      background:var(--primary);
      color:#fff;
      font-size:0.8rem;
      font-weight:600;
      cursor:pointer;
    }
    @media (max-width:480px){
      .cookie-banner {
        flex-direction:column;
        align-items:stretch;
      }
      .cookie-banner button {
        align-self:flex-end;
      }
    }

img {
    max-width: 100%;
    height: auto;
}

