*{box-sizing:border-box}body{font-family:Arial;margin:0;color:#20243a;line-height:1.6}a{text-decoration:none;color:inherit}.container{width:92%;max-width:1120px;margin:auto}header{position:sticky;top:0;background:#fff;border-bottom:1px solid #eee;z-index:5}.nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:15px}.logo{font-weight:800;display:flex;align-items:center;gap:8px}.mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#8b1e3f;color:white}nav{display:flex;gap:18px;font-size:14px;font-weight:bold}nav .active{color:#8b1e3f}.btn{display:inline-block;padding:12px 18px;border-radius:8px;font-weight:bold}.primary{background:#8b1e3f;color:white}.wa{background:#188a4b;color:white}.hero{padding:75px 0;background:linear-gradient(135deg,#fff7f8,#f7f4ef)}h1{font-size:clamp(40px,5vw,60px);line-height:1.1}h1 span{color:#8b1e3f}.hero p{font-size:18px;color:#626778}.badge{display:inline-block;background:#f3dce3;color:#8b1e3f;padding:6px 12px;border-radius:20px;font-weight:bold;font-size:13px}.grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}.card,.contact-box{padding:28px;border:1px solid #eee;border-radius:15px;background:#fff;box-shadow:0 8px 25px #0000000b}section{padding:70px 0}.alt{background:#faf8f5}.head{text-align:center;margin-bottom:35px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.num{width:36px;height:36px;border-radius:50%;background:#8b1e3f;color:#fff;display:grid;place-items:center;font-weight:bold}.list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.list div{padding:15px;border:1px solid #eee;border-radius:10px}.contact{display:grid;grid-template-columns:.75fr 1.25fr;gap:25px}.row{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-weight:bold;font-size:14px;margin:10px 0 5px}input,select,textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font:inherit}textarea{min-height:110px}.msg{padding:10px;border-radius:8px;margin-bottom:12px;display:none}.success{display:block;background:#e8f7ee;color:#176a39}.error{display:block;background:#fdeaea;color:#9b2020}footer{background:#191923;color:#fff;padding:28px 0}.foot{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}@media(max-width:800px){nav{display:none}.grid,.contact{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.list{grid-template-columns:1fr}}@media(max-width:500px){.steps,.row{grid-template-columns:1fr}}






/* ===== MOBILE HAMBURGER MENU ===== */

.menu-toggle {
    display: none;
    background: #8b1e3f;
    color: #fff;
    border: none;
    border-radius: 8px;
    width: 44px;
    height: 44px;
    font-size: 24px;
    cursor: pointer;
}

@media (max-width: 800px) {

    header {
        position: relative;
    }

    .nav {
        min-height: 64px;
        flex-direction: row;
        padding: 10px 0;
        position: relative;
    }

    .menu-toggle {
        display: block;
    }

    .nav nav {
        display: none !important;
        position: absolute;
        top: 64px;
        left: 0;
        width: 100%;
        background: #fff;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 10px 4%;
        box-shadow: 0 10px 25px rgba(0,0,0,.12);
        border-top: 1px solid #eee;
        z-index: 1000;
    }

    .nav nav.show {
        display: flex !important;
    }

    .nav nav a {
        display: block;
        padding: 14px 10px;
        border-bottom: 1px solid #eee;
        font-size: 15px;
    }

    .nav > .btn.primary {
        display: none;
    }

    .logo {
        font-size: 14px;
        max-width: 230px;
    }

    .mark,
    .logo-mark {
        width: 38px;
        height: 38px;
        flex-shrink: 0;
    }

    .hero {
        padding: 45px 0;
    }

    section {
        padding: 45px 0;
    }

    h1 {
        font-size: 38px;
    }

    .hero p {
        font-size: 16px;
    }

    .actions {
        flex-direction: column;
    }

    .actions .btn {
        width: 100%;
        text-align: center;
    }

    .card,
    .contact-box {
        padding: 20px;
    }
}

@media (max-width: 500px) {

    h1 {
        font-size: 34px;
    }

    .hero {
        padding: 38px 0;
    }

    section {
        padding: 38px 0;
    }
}