/* =====================================
   THE PULSE — INTELLIO MEDIA
===================================== */

.pulse-page{
    background:#DFDAC8;
    padding:90px 7vw 120px;
}

.pulse-wrap{
    max-width:1500px;
    margin:0 auto;
}

/* =====================================
   HERO
===================================== */

.pulse-header{
    text-align:center;
    max-width:900px;
    margin:0 auto 90px;
}

.pulse-label{
    display:block;
    margin-bottom:20px;

    font-family:"DM Mono",monospace;
    font-size:11px;
    letter-spacing:.32em;
    text-transform:uppercase;

    color:#0C52B3;
}

.pulse-header h1{
    font-family:"Playfair Display",serif;
    font-size:clamp(52px,5vw,88px);
    line-height:.92;
    letter-spacing:-.045em;
    font-weight:900;

    color:#3C362F;

    margin-bottom:28px;
}

.pulse-header p{
    max-width:700px;
    margin:0 auto;

    font-family:"DM Sans",sans-serif;
    font-size:19px;
    line-height:1.85;

    color:rgba(60,54,47,.72);
}

/* =====================================
   GRID
===================================== */

.pulse-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:60px;
}

/* =====================================
   CARD
===================================== */

.pulse-card{
    background:rgba(255,255,255,.22);

    backdrop-filter:blur(12px);

    overflow:hidden;

    transition:
    transform .45s ease,
    box-shadow .45s ease;
}

.pulse-card:hover{
    transform:translateY(-10px);

    box-shadow:
    0 25px 60px rgba(0,0,0,.08);
}

.pulse-image-wrap{
    display:block;
    overflow:hidden;
}

.pulse-image{
    width:100%;
    aspect-ratio:16/10;

    object-fit:cover;

    transition:1s ease;
}

.pulse-card:hover .pulse-image{
    transform:scale(1.06);
}

/* =====================================
   CONTENT
===================================== */

.pulse-content{
    padding:34px;
}

.pulse-date{
    margin-bottom:18px;

    font-family:"DM Mono",monospace;
    font-size:11px;
    letter-spacing:.22em;
    text-transform:uppercase;

    color:#0C52B3;
}

.pulse-title{
    margin-bottom:18px;
}

.pulse-title a{
    text-decoration:none;

    font-family:"Playfair Display",serif;
    font-size:clamp(28px,2vw,42px);
    line-height:.96;
    letter-spacing:-.03em;
    font-weight:900;

    color:#3C362F;

    transition:.3s ease;
}

.pulse-title a:hover{
    color:#0C52B3;
}

.pulse-excerpt{
    margin-bottom:24px;

    font-family:"DM Sans",sans-serif;
    font-size:17px;
    line-height:1.9;

    color:rgba(60,54,47,.72);
}

.pulse-read{
    display:inline-flex;
    align-items:center;

    text-decoration:none;

    font-family:"DM Mono",monospace;
    font-size:12px;
    letter-spacing:.18em;
    text-transform:uppercase;

    color:#0C52B3;

    transition:.3s ease;
}

.pulse-read:hover{
    transform:translateX(6px);
}

/* =====================================
   LOADING / EMPTY
===================================== */

.pulse-loading,
.pulse-empty{
    text-align:center;

    padding:80px 20px;

    font-family:"DM Mono",monospace;
    font-size:12px;
    letter-spacing:.22em;
    text-transform:uppercase;

    color:#0C52B3;
}

/* =====================================
   TABLET
===================================== */

@media(max-width:980px){

    .pulse-grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .pulse-header{
        margin-bottom:70px;
    }

    .pulse-header h1{
        font-size:clamp(46px,9vw,72px);
    }
}

/* =====================================
   MOBILE
===================================== */

@media(max-width:600px){

    .pulse-page{
        padding:70px 20px 90px;
    }

    .pulse-header h1{
        font-size:clamp(42px,13vw,60px);
        line-height:.95;
    }

    .pulse-header p{
        font-size:16px;
    }

    .pulse-content{
        padding:26px;
    }

    .pulse-title a{
        font-size:32px;
    }

    .pulse-excerpt{
        font-size:16px;
    }
}