body
{
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    line-height: 1.6;
    background-color: #f9f9f9;
    color: #333;
}
.main-header
{
    position: sticky;
    top: 0;
    z-index: 1000;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:15px 60px;

    background:linear-gradient(135deg,#003366,#005ea8);

    box-shadow:0 8px 25px rgba(0,0,0,.18);
}
.logo
{
    display:flex;
    align-items:center;
}
.logo img
{
    width:220px;
    height:auto;
    transition:.35s;
}
.logo img:hover
{
    transform:scale(1.05);
}
.main-header nav ul
{
    display:flex;
    list-style:none;
    gap:18px;
    margin:0;
    padding:0;
}
.main-header nav ul li
{
    list-style:none;
}
.main-header nav ul li a
{
    display:block;
    padding:12px 26px;
    color:white;
    text-decoration:none;
    font-size:17px;
    font-weight:bold;
    border-radius:50px;
    transition:.35s;
}
.main-header nav ul li a:hover
{
    background:white;
    color:#004080;
    transform:translateY(-3px);
    box-shadow:0 10px 20px rgba(255,255,255,.20);
}
.main-header nav ul li a.activo
{
    background:white;
    color:#004080;
}
@media(max-width:900px)
{
.main-header
{
    flex-direction:column;
    padding:20px;
}
.logo
{
    margin-bottom:20px;
}
.main-header nav ul
{
    flex-wrap:wrap;
    justify-content:center;
}
}
@media(max-width:600px)
{
.logo img
{
    width:170px;
}
.main-header nav ul
{
    flex-direction:column;
    width:100%;
}
.main-header nav ul li
{
    width:100%;
}
.main-header nav ul li a
{
    text-align:center;
}
}
#detalle-propiedad
{
    max-width:1300px;
    margin:50px auto;
    padding:40px;
    background:#ffffff;
    border-radius:20px;
    box-shadow:0 15px 40px rgba(0,0,0,.12);
}
#detalle-propiedad h2
{
    text-align:center;
    font-size:2.5rem;
    color:#004080;
    margin-bottom:40px;
    position:relative;
}
#detalle-propiedad h2::after
{
    content:"";
    width:120px;
    height:5px;
    background:#007BFF;
    display:block;
    margin:15px auto 0;
    border-radius:20px;
}
.galeria
{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:18px;
    margin-bottom:40px;
}
.galeria .imagen-activa
{
    width:100%;
    max-width:900px;
    height:520px;
    object-fit:cover;
    border-radius:18px;
    box-shadow:0 15px 35px rgba(0,0,0,.18);
}
.galeria img:not(.imagen-activa)
{
    width:150px;
    height:110px;
    object-fit:cover;
    border-radius:12px;
    cursor:pointer;
    transition:.35s;
    border:3px solid transparent;
}
.galeria img:not(.imagen-activa):hover
{
    transform:scale(1.08);
    border-color:#007BFF;
    box-shadow:0 10px 20px rgba(0,0,0,.20);
}
.btn-anterior,
.btn-siguiente
{
    padding:14px 28px;
    border:none;
    border-radius:50px;
    background:linear-gradient(135deg,#004080,#008cff);
    color:white;
    font-size:16px;
    font-weight:bold;
    cursor:pointer;
    transition:.35s;
    margin-top:15px;
}
.btn-anterior:hover,
.btn-siguiente:hover
{
    transform:translateY(-4px);
    box-shadow:0 15px 30px rgba(0,0,0,.20);
}
@media(max-width:768px)
{
#detalle-propiedad
{
    padding:20px;
}
#detalle-propiedad h2
{
    font-size:1.8rem;
}
.galeria .imagen-activa
{
    height:280px;
}
.galeria img:not(.imagen-activa)
{
    width:90px;
    height:70px;
}
.btn-anterior,
.btn-siguiente
{
    width:100%;
}
}
.info-propiedad
{
    background:#ffffff;
    margin-top:40px;
    padding:35px;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.10);
    border-left:6px solid #007BFF;
}
.info-propiedad p
{
    font-size:17px;
    line-height:1.9;
    color:#444;
    margin-bottom:18px;
    text-align:justify;
}
.info-propiedad strong
{
    color:#004080;
}
.info-propiedad p:nth-child(3)
{
    background:linear-gradient(135deg,#0d6efd,#004080);
    color:white;
    padding:18px;
    border-radius:12px;
    font-size:26px;
    font-weight:bold;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,.15);
}
.info-propiedad p:nth-child(3) strong
{
    color:white;
}
.info-propiedad p:nth-child(4)
{
    background:#f4f8ff;
    padding:15px;
    border-left:5px solid #0d6efd;
    border-radius:10px;
}
.info-propiedad p:nth-child(6)
{
    background:#fafafa;
    padding:18px;
    border-radius:10px;
}
.mas-detalles
{
    margin-top:35px;
    font-size:24px;
    color:#004080;
    font-weight:bold;
    border-bottom:3px solid #0d6efd;
    padding-bottom:12px;
}
.info-propiedad p:last-child
{
    background:#dff6dd;
    color:#0b6b2b;
    border-left:6px solid #28a745;
    padding:18px;
    border-radius:10px;
    font-weight:bold;
}
@media(max-width:768px)
{
.info-propiedad
{
    padding:20px;
}

.info-propiedad p
{
    font-size:15px;
}
.info-propiedad p:nth-child(3)
{
    font-size:20px;
}
.mas-detalles
{
    font-size:20px;
}
}
.btn-whatsapp
{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    width:fit-content;
    margin:45px auto;
    padding:18px 40px;
    background:linear-gradient(135deg,#25D366,#128C7E);
    color:white;
    font-size:20px;
    font-weight:bold;
    text-decoration:none;
    border-radius:50px;
    box-shadow:0 15px 35px rgba(37,211,102,.35);
    transition:.35s ease;
    letter-spacing:.5px;
}
.btn-whatsapp:hover
{
    transform:translateY(-6px);
    box-shadow:0 20px 45px rgba(37,211,102,.45);
    background:linear-gradient(135deg,#128C7E,#25D366);
}
.btn-whatsapp:active
{
    transform:scale(.98);
}
@media(max-width:768px)
{
.btn-whatsapp
{
    width:100%;
    padding:16px;
    font-size:17px;
}
}
.mapa-detalle
{
    margin:60px 0;
    background:#ffffff;
    padding:20px;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.12);
    overflow:hidden;
}
.mapa-detalle iframe
{
    width:100%;
    height:500px;
    border:none;
    border-radius:15px;
    transition:.35s;
}
.mapa-detalle:hover
{
    transform:translateY(-5px);
    box-shadow:0 20px 45px rgba(0,0,0,.18);
    transition:.35s;
}
@media(max-width:768px)
{
.mapa-detalle
{
    padding:12px;
}
.mapa-detalle iframe
{
    height:300px;
}
}
.btn-regresar
{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    width:fit-content;
    margin:60px auto 20px;
    padding:18px 40px;
    background:linear-gradient(135deg,#004080,#007BFF);
    color:white;
    text-decoration:none;
    font-size:18px;
    font-weight:bold;
    border-radius:50px;
    box-shadow:0 15px 35px rgba(0,64,128,.25);
    transition:.35s;
    letter-spacing:.5px;
}
.btn-regresar:hover
{
    background:linear-gradient(135deg,#007BFF,#004080);
    transform:translateY(-6px);
    box-shadow:0 20px 40px rgba(0,64,128,.35);
}
.btn-regresar:active
{
    transform:scale(.97);
}
@media(max-width:768px)
{
.btn-regresar
{
    width:100%;
    padding:16px;
    font-size:17px;
}
}
footer
{
    background:linear-gradient(135deg,#00264d,#004080);
    color:white;
    padding:50px 20px 25px;
    margin-top:70px;
    text-align:center;
}
.social-links
{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:25px;
    flex-wrap:wrap;
    margin-bottom:30px;
}
.social-links a
{
    display:flex;
    align-items:center;
    gap:12px;
    padding:15px 28px;
    background:rgba(255,255,255,.10);
    color:white;
    text-decoration:none;
    font-size:17px;
    font-weight:bold;
    border-radius:50px;
    border:1px solid rgba(255,255,255,.15);
    transition:.35s;
}
.social-links i
{
    font-size:28px;
    color:#25D366;
}
.social-links a:hover
{
    background:#25D366;
    color:white;
    transform:translateY(-5px);
    box-shadow:0 15px 35px rgba(37,211,102,.40);
}
.social-links a:hover i
{
    color:white;
}
footer p
{
    margin-top:25px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.20);
    color:#d9d9d9;
    font-size:15px;
}
@media(max-width:768px)
{
.social-links
{
    flex-direction:column;
}

.social-links a
{
    width:90%;
    justify-content:center;
}
}