/* =====================================================
   EMBASSY OF THE REPUBLIC OF NICARAGUA
   Official Landing Page
   Color Palette
===================================================== */

:root{

    --primary:#173559;
    --primary-light:#285483;
    --background:#f4f7fb;
    --white:#ffffff;
    --text:#173559;
    --muted:#6b7280;
    --border:#e7edf5;

    --radius:24px;

    --shadow:
        0 20px 50px rgba(0,0,0,.08);

}

/* ===================================================== */

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    background:var(--background);

    color:var(--text);

    font-family:Inter,sans-serif;

    line-height:1.65;

}

/* ===================================================== */

.container{

    width:min(1180px,92%);

    margin:auto;

}

/* ===================================================== */
/* HEADER */
/* ===================================================== */

header{

    background:var(--primary);

    color:white;

    padding:28px 0;

}

.header-content{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:30px;

}

.brand{

    display:flex;

    align-items:center;

    gap:22px;

}

.coat{

    width:95px;

    height:auto;

}

.brand h1{

    font-family:"Playfair Display",serif;

    font-size:2.2rem;

    font-weight:700;

    line-height:1.15;

}

.brand p{

    margin-top:8px;

    font-size:1.1rem;

    opacity:.9;

}

/* ===================================================== */
/* SOCIAL */
/* ===================================================== */

.social-icons{

    display:flex;

    gap:14px;

}

.social-icons a{

    width:52px;

    height:52px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    border:2px solid rgba(255,255,255,.35);

    color:white;

    text-decoration:none;

    transition:.35s;

}

.social-icons a:hover{

    background:white;

    color:var(--primary);

    transform:translateY(-3px);

}

/* ===================================================== */
/* HERO */
/* ===================================================== */

.hero{

    padding:35px 0;

}

.hero-grid{

    width:min(1400px,96%);

    margin:auto;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:18px;

}

.image-box{

    overflow:hidden;

    border-radius:22px;

    box-shadow:var(--shadow);

}

.image-box img{

    width:100%;

    height:390px;

    object-fit:cover;

    display:block;

    transition:.5s;

}

.image-box:hover img{

    transform:scale(1.05);

}

/* ===================================================== */
/* MAIN */
/* ===================================================== */

main{

    padding-bottom:70px;

}

/* ===================================================== */

.cards{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:35px;

}

/* ===================================================== */

.card{

    background:white;

    border-radius:28px;

    padding:40px;

    box-shadow:var(--shadow);

}

/* ===================================================== */

.card h2{

    display:flex;

    align-items:center;

    gap:14px;

    color:var(--primary);

    margin-bottom:25px;

    font-size:2rem;

    font-family:"Playfair Display",serif;

}

/* ===================================================== */

.info{

    display:flex;

    gap:18px;

    margin-top:28px;

    padding-top:24px;

    border-top:1px solid var(--border);

}

.info:first-of-type{

    border-top:none;

    margin-top:0;

    padding-top:0;

}

/* ===================================================== */

.info i{

    font-size:1.35rem;

    width:26px;

    color:var(--primary);

    margin-top:5px;

}

/* ===================================================== */

.info h3{

    font-size:1rem;

    margin-bottom:4px;

    font-weight:600;

}

.info p{

    color:#4b5563;

}

.info a{

    color:var(--primary);

    text-decoration:none;

    font-weight:500;

}

.info a:hover{

    text-decoration:underline;

}

/* ===================================================== */
/* BUTTON */
/* ===================================================== */

.button-wrapper{

    margin-top:40px;

    text-align:center;

}

.map-button{

    display:inline-block;

    background:var(--primary);

    color:white;

    padding:16px 38px;

    border-radius:14px;

    text-decoration:none;

    font-weight:600;

    transition:.35s;

    box-shadow:0 12px 25px rgba(23,53,89,.18);

}

.map-button:hover{

    background:var(--primary-light);

    transform:translateY(-3px);

}

/* ===================================================== */
/* FOOTER */
/* ===================================================== */

footer{

    background:var(--primary);

    color:white;

    text-align:center;

    padding:26px 0;

}

footer p{

    opacity:.9;

    font-size:.95rem;

}

/* ===================================================== */
/* RESPONSIVE */
/* ===================================================== */

@media (max-width:1000px){

.cards{

grid-template-columns:1fr;

}

.header-content{

flex-direction:column;

text-align:center;

}

.brand{

flex-direction:column;

}

.hero-grid{

grid-template-columns:1fr;

}

.image-box img{

height:280px;

}

.social-icons{

margin-top:10px;

}

}

@media (max-width:650px){

.brand h1{

font-size:1.7rem;

}

.card{

padding:28px;

}

.card h2{

font-size:1.6rem;

}

.hero{

padding:20px 0;

}

.image-box{

border-radius:18px;

}

}