.hero{
      background:linear-gradient(180deg,#f0f5ff 0%,#ffffff 100%);
      padding:72px 0 56px;
      width:100%;
    }

    .hero .wrap{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:40px;
      align-items:stretch;
      max-width:1300px;
      margin:0 auto;
      padding:0 60px;
    }

    .hero-left{
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }

    .hero-maincopy p{
      color:var(--muted);
      font-size:1.05rem;
      margin:0 0 12px;
    }

    .hero-notes{
      margin:16px 0 24px;
      padding-left:1.2rem;
      color:var(--muted);
      font-size:.95rem;
      line-height:1.45;
    }

    .hero-notes li{
      margin-bottom:8px;
    }

    .hero-notes li::marker{
      content:"§ ";
      color:#0071CE;
      font-weight:bold;
    }

    .hero-ctas{
      margin-top:auto;
      display:flex;
      flex-wrap:wrap;
      gap:14px;
    }

    .hero .card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:var(--radius);
      padding:22px;
      box-shadow:var(--shadow);
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }

    .breadcrumbs .container{
      max-width:1300px;
      margin:0 auto;
      padding:12px 60px;
    }

    .breadcrumbs .sep{
      margin:0 8px;
      color:var(--muted);
    }

    .pricing-divider{
      height:1px;
      background:var(--line);
      margin-top:40px;
      margin-bottom:0;
    }

    .pricing-teaser{
      padding:80px 60px 60px;
      max-width:1300px;
      margin:0 auto;
    }

    .pricing-teaser h2{
      font-size:2rem;
      margin-bottom:24px;
    }

    .pricing-teaser h3{
      font-size:1.25rem;
      margin:30px 0 10px;
    }

    .pricing-teaser p{
      line-height:1.6;
    }

    .service-points{
      list-style:none;
      padding:0;
      margin:18px 0 26px;
    }

    .service-points li{
      position:relative;
      padding-left:28px;
      margin-bottom:10px;
      color:var(--muted);
      line-height:1.5;
    }

    .service-points li::before{
      content:"§";
      position:absolute;
      left:0;
      top:0;
      color:#0071CE;
      font-weight:bold;
    }

    .related-content{
      margin-top:34px;
      padding-top:22px;
      border-top:1px solid var(--line);
    }

    .related-content h3{
      margin:0 0 12px;
      font-size:1.05rem;
    }

    .related-content-links{
      display:flex;
      flex-wrap:wrap;
      gap:8px 18px;
    }

    .related-content a{
      position:relative;
      padding-left:20px;
      font-size:.92rem;
      font-weight:600;
      text-decoration:none;
    }

    .related-content a::before{
      content:"§";
      position:absolute;
      left:0;
      color:#0071CE;
      font-weight:bold;
    }

    .related-content a:hover{
      text-decoration:underline;
    }

    .contact{
      max-width:1300px;
      margin:0 auto;
      padding:80px 60px;
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:60px;
    }

    .contact .panel{
      background:#fff;
      border:1px solid var(--line);
      border-radius:16px;
      padding:32px 36px;
      box-shadow:var(--shadow);
    }

    .contact h2{
      font-size:1.7rem;
      margin-top:0;
    }

    .contact label{
      display:block;
      font-weight:600;
      margin:8px 0 6px;
    }

    .contact input,
    .contact select,
    .contact textarea{
      width:100%;
      padding:12px;
      border:1px solid var(--line);
      border-radius:10px;
      font-size:1rem;
      margin-bottom:10px;
    }

    .contact button{
      margin-top:14px;
      background:#0071CE;
      color:#fff;
      border:none;
      padding:14px 22px;
      font-weight:600;
      border-radius:10px;
      cursor:pointer;
    }

    .contact button:hover{
      background:#0058a1;
      transform:translateY(-1px);
    }

    .alt-contact{
      margin-top:24px;
      padding-top:18px;
      border-top:1px solid var(--line);
      font-size:.95rem;
    }

    .faq{
      background:var(--surface);
      border-radius:16px;
      border:1px solid var(--line);
      padding:32px;
      box-shadow:var(--shadow-sm);
    }

    .faq h2{
      margin-top:0;
      margin-bottom:18px;
      font-size:1.6rem;
      color:var(--ink);
    }

    .faq details{
      background:#fff;
      border:1px solid var(--line);
      border-radius:10px;
      padding:14px 16px;
      margin-bottom:12px;
    }

    .faq summary{
      font-weight:600;
      cursor:pointer;
      list-style:none;
    }

    .faq summary::-webkit-details-marker{
      display:none;
    }

    .faq p{
      color:var(--muted);
      margin-top:10px;
      font-size:.95rem;
    }

    @media(max-width:1100px){

      .hero .wrap,
      .breadcrumbs .container,
      .pricing-teaser,
      .contact{
        padding-left:28px;
        padding-right:28px;
      }

    }

    @media(max-width:980px){

      .hero .wrap{
        grid-template-columns:1fr;
      }

      .contact{
        grid-template-columns:1fr;
      }

      .hero .card{
        margin-top:24px;
      }

    }
