/*
==========================================================
CLARAUS ENTITY
==========================================================
*/

.entity-hero{

    display:grid;
    grid-template-columns:360px minmax(0,1fr);
    gap:72px;

    align-items:center;

    max-width:1180px;

    margin:80px auto;

    padding:0 20px;

}

.entity-image{

    width:360px;

}

.entity-image img{

    width:100%;
    display:block;

    border-radius:22px;

    aspect-ratio:1/1;

    object-fit:cover;

}

.entity-hero-content{

    width:100%;

    max-width:none;

}

.entity-title{

    font-size:clamp(46px,5vw,68px);

    font-weight:800;

    line-height:1.05;

    letter-spacing:-0.04em;

    color:#111827;

    margin:0 0 22px;

    white-space:normal;

    overflow-wrap:anywhere;

    word-break:break-word;

}

.entity-headline{

    font-size:34px;

    font-weight:700;

    line-height:1.35;

    color:#111827;

    margin:0 0 22px;

    white-space:nowrap;

}

.entity-company{

    margin:0 0 26px;

}

.entity-company a{

    color:#2563eb;

    text-decoration:none;

    font-size:18px;

}

.entity-company a:hover{

    text-decoration:underline;

}

.entity-company a::after{

    content:"↗";

    margin-left:6px;

    font-size:14px;

}

.entity-occupation{

    margin:0 0 24px;

    font-size:18px;

    line-height:1.6;

    font-weight:400;

    color:#4b5563;

}

.entity-summary{

    margin:0 0 26px;

    font-size:18px;

    line-height:1.6;

    font-weight:400;

    color:#4b5563;

}

.entity-summary p{

    margin:0;

}

.entity-links{

    display:flex;

    gap:24px;

    flex-wrap:wrap;

}

.entity-links a{

    color:#2563eb;

    text-decoration:none;

    font-weight:500;

}

.entity-links a:hover{

    text-decoration:underline;

}

/*
==========================================================
CONTENT
==========================================================
*/

.entity-content{

    max-width:1180px;

    margin:80px auto;

    padding:0 20px;

}

.entity-content h2{

    font-size:64px;

    font-weight:800;

    line-height:1.08;

    letter-spacing:-0.03em;

    margin:0 0 40px;

    color:#111827;

}

.entity-content p{

    font-size:24px;

    line-height:2;

    color:#374151;

    margin-bottom:28px;

}

.entity-social{

    display:flex;

    gap:12px;

    margin-top:24px;

    flex-wrap:wrap;

}

.entity-social a{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:10px 18px;

    border:1px solid #d1d5db;

    border-radius:999px;

    background:#fff;

    color:#111827 !important;

    text-decoration:none !important;

    font-size:14px;

    font-weight:600;

    transition:.25s;

}

.entity-social a:hover,

.entity-social a:focus{

    background:#111827 !important;

    color:#fff !important;

    border-color:#111827;

    text-decoration:none !important;

}

/*
==========================================================
TABLET
==========================================================
*/

@media (max-width:1024px){

    .entity-hero{

        grid-template-columns:280px minmax(0,1fr);

        gap:42px;

        margin:60px auto;

        padding:0 30px;

    }

    .entity-image{

        width:280px;

    }

    .entity-title{

        font-size:56px;

        white-space:normal;

    }

    .entity-headline{

        font-size:28px;

        white-space:normal;

    }

    .entity-company a{

        font-size:17px;

    }

    .entity-occupation,
    .entity-summary{

        font-size:17px;

        line-height:1.7;

    }

    .entity-social{

        gap:10px;

    }

    .entity-social a{

        font-size:13px;

        padding:9px 16px;

    }

    .entity-content{

        padding:0 30px;

    }

    .entity-content h2{

        font-size:48px;

    }

    .entity-content p{

        font-size:21px;

    }

}

/*
==========================================================
MOBILE
==========================================================
*/

@media (max-width:768px){

/* ---------- HERO ---------- */

.entity-hero{

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    text-align:center;

    gap:22px;

    margin:40px auto 50px;
    padding:0 22px;

    max-width:100%;

}

.entity-image{

    width:180px;
    margin:0 auto;

}

.entity-image img{

    width:100%;
    border-radius:18px;

}

.entity-hero-content{

    width:100%;
    max-width:100%;

    display:flex;
    flex-direction:column;
    align-items:center;

}

/* ---------- TITLE ---------- */

.entity-title{

    font-size:38px;
    line-height:1.12;
    letter-spacing:-0.03em;

    margin:0 0 16px;

    white-space:normal;

}

/* ---------- POSITION ---------- */

.entity-headline{

    font-size:23px;
    line-height:1.45;
    font-weight:700;

    margin:0 0 16px;

    white-space:normal;

}

/* ---------- COMPANY ---------- */

.entity-company{

    margin:0 0 16px;

}

.entity-company a{

    font-size:16px;

}

/* ---------- OCCUPATION ---------- */

.entity-occupation{

    width:100%;

    font-size:17px;
    line-height:1.75;

    margin:0 0 16px;

    color:#4b5563;

}

/* ---------- EDITORIAL SUMMARY ---------- */

.entity-summary{

    width:100%;

    font-size:17px;
    line-height:1.8;

    margin:0 0 26px;

    color:#4b5563;

}

.entity-summary p{

    margin:0;

}

/* ---------- SOCIAL ---------- */

.entity-social{

    display:flex;
    justify-content:center;
    align-items:center;

    flex-wrap:wrap;

    gap:10px;

    width:100%;

    margin-top:0;

}

.entity-social a{

    padding:9px 16px;

    font-size:13px;

}

/* ---------- BIOGRAPHY ---------- */

.entity-content{

    margin:55px auto;

    padding:0 22px;

}

.entity-content h2{

    font-size:34px;
    line-height:1.2;

    text-align:left;

    margin-bottom:24px;

}

.entity-content p{

    font-size:18px;
    line-height:1.9;

}

}

/* ==========================================================
   ENTITY META
========================================================== */

.entity-meta{

    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:24px;

    margin:48px 0;

    padding:32px;

    background:#fff;

    border:1px solid var(--cl-border);

    border-radius:18px;

    box-shadow:0 8px 30px rgba(15,23,42,.04);

}

.entity-meta-item{

    display:flex;

    flex-direction:column;

    gap:8px;

}

.entity-meta-label{

    font-size:13px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.08em;

    color:#9ca3af;

}

.entity-meta-value{

    font-size:18px;

    font-weight:600;

    color:var(--cl-text);

    line-height:1.5;

}

.entity-meta-value a{

    color:var(--cl-blue);

    text-decoration:none;

}

.entity-meta-value a:hover{

    text-decoration:underline;

}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width:768px){

    .entity-meta{

        grid-template-columns:1fr;

        gap:18px;

        padding:24px;

        margin:32px 0;

    }

}

/* ==========================================================
   CLARAUS BREADCRUMBS
========================================================== */

.claraus-breadcrumbs{

    display:flex;

    align-items:center;

    flex-wrap:wrap;

    gap:10px;

    margin:32px 0 40px;

    font-size:15px;

    color:var(--cl-muted);

}

.claraus-breadcrumbs a{

    color:var(--cl-muted);

    text-decoration:none;

    transition:.25s ease;

}

.claraus-breadcrumbs a:hover{

    color:var(--cl-blue);

}

.claraus-breadcrumbs span{

    color:#9ca3af;

}

.claraus-breadcrumbs .current{

    color:var(--cl-text);

    font-weight:600;

}

@media (max-width:768px){

    .claraus-breadcrumbs{

        margin:24px 0 32px;

        font-size:14px;

        gap:8px;

    }

}