/* ================================
   FONTS
================================ */
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

/* ================================
   TOKENS
================================ */
:root{
    /* Typography */
    --font-sans: "IBM Plex Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    --font-display: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

    /* Brand (Evergreen + Gold) */
    --aguila: #7b5a10;             /* evergreen */
    --aguila-2: #caa24a;           /* premium gold */
    --aguila-soft: rgba(11,59,46,.08);
    --aguila-soft-2: rgba(202,162,74,.16);

    /* Base UI */
    --bg:#ffffff;
    --ink:#0f172a;                 /* navy ink */
    --muted:#7b5a10;               /* gold-ish text */
    --muted2:#64748b;
    --line:rgba(15,23,42,.10);
    --soft:#f6f7f9;
    --card:#ffffff;

    /* Radius + Shadows */
    --shadow: 0 18px 60px rgba(15,23,42,.08);
    --shadow2: 0 10px 30px rgba(15,23,42,.06);
    --r-xl:24px;
    --r-lg:18px;
    --r-md:14px;

    /* Layout */
    --max:1120px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
    margin:0;
    font-family: var(--font-sans);
    color:var(--ink);
    background: var(--bg);
    letter-spacing:-0.01em;
    line-height:1.55;
}
/* Headings + UI typography */
h1,h2,h3,.brand__name,.kicker,.btn,.pillBtn,.nav a{ font-family: var(--font-display); }
h1,h2,h3{ letter-spacing:-.04em; }
h1{ font-weight: 700; }
h2{ font-weight: 600; }
h3{ font-weight: 400; }
a{color:inherit; text-decoration:none}
.container{max-width:var(--max); margin:0 auto; padding:0 18px}

/* progress */
.progress{
    position:fixed; top:0; left:0; right:0;
    height:2px; background:transparent; z-index:100;
}
.progress span{
    display:block; height:100%; width:0%;
    background: rgba(15,23,42,.85);
}

/* header */
.header{
    position:sticky; top:0; z-index:50;
    background: rgba(255,255,255,.86);
    border-bottom:1px solid rgba(15,23,42,.08);
    backdrop-filter: blur(10px);
}
.header__row{
    display:flex; align-items:center; justify-content:space-between;
    gap:14px; padding:14px 0;
}
.brand{display:flex; align-items:center; gap:10px; font-weight:800}
.brand__mark{
    width:28px; height:28px; border-radius:10px;
    background: linear-gradient(135deg, rgba(15,23,42,.95), rgba(15,23,42,.55));
    box-shadow: 0 14px 40px rgba(15,23,42,.14);
}
.brand__name{letter-spacing:-.02em}
.brand--stack{
    display:flex;
    flex-direction:column;
    gap:6px;
    align-items:flex-start;
    line-height:1;
}

.brand__logo{
    width:200px;
    height:auto;
    display:block;
}
.nav{display:flex; gap:14px; align-items:center}
.nav a{
    padding:8px 10px;
    border-radius:999px;
    color:var(--muted);
    font-weight:600;
    font-size:14px;
}
.nav a:hover{background: rgba(15,23,42,.04); color: var(--ink)}

.header__actions{display:flex; gap:10px; align-items:center}
.hamburger{
    display:none;
    width:44px; height:40px;
    border-radius:12px;
    border:1px solid rgba(15,23,42,.12);
    background: rgba(15,23,42,.02);
    cursor:pointer;
}
.hamburger span{display:block; height:2px; margin:7px 10px; background: var(--ink); opacity:.75}

.mobile{display:none}
.mobile__panel{
    display:grid; gap:12px;
    padding: 14px 18px 18px;
}
.mobile__panel a{font-weight:700; color: var(--muted)}
.mobile__panel a:hover{color:var(--ink)}

/* buttons */
.btn{
    display:inline-flex; align-items:center; justify-content:center;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(15,23,42,.14);
    background: transparent;
    color: var(--ink);
    font-weight: 700;
    cursor:pointer;
    transition: transform .18s ease, background .18s ease;
}
.btn:hover{transform: translateY(-1px); background: rgba(15,23,42,.03)}
.btn--primary{
    background: var(--ink);
    color:#fff;
    border-color: var(--ink);
    box-shadow:none;
}
.btn--primary:hover{background:#0b1220}
.btn--ghost{background: transparent}
.btn--sm{padding: 8px 12px; font-size: 13px}

.pillBtn{
    border:1px solid rgba(15,23,42,.12);
    background: rgba(255,255,255,.9);
    border-radius:999px;
    padding: 10px 12px;
    font-weight: 800;
    cursor:pointer;
    transition: transform .18s ease, background .18s ease;
}
.pillBtn:hover{transform: translateY(-1px); background: rgba(15,23,42,.03)}
.pillBtn--icon{width:42px; height:42px; display:grid; place-items:center; padding:0}

/* small bits */
.tiny{font-size:18px}
.muted{color:var(--muted)}
.kicker{
    font-weight:800;
    letter-spacing:.12em;
    text-transform: uppercase;
    color: var(--muted2);
    font-size: 12px;
    margin:0 0 10px;
}
.chip{
    display:inline-flex; align-items:center; gap:8px;
    padding: 8px 12px;
    border-radius:999px;
    border:1px solid rgba(15,23,42,.12);
    background: rgba(15,23,42,.02);
    font-weight:700;
    color: var(--ink);
    font-size: 13px;
}
.chip--muted{color: var(--muted)}
.chip--light{background: rgba(255,255,255,.82)}
.iconBtn{
    width:40px; height:40px;
    border-radius: 999px;
    border:1px solid rgba(15,23,42,.12);
    display:grid; place-items:center;
    color: var(--muted);
    font-weight:800;
}
.iconBtn:hover{background: rgba(15,23,42,.03); color: var(--ink)}

/* hero */
.hero{padding: 70px 0 34px}
.hero__grid{
    display:grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 26px;
    align-items: start;
}
.hero__top{display:flex; gap:10px; flex-wrap:wrap; margin-bottom: 14px}
.hero h1{
    margin:0 0 18px;
    font-size: clamp(36px, 4.5vw, 62px);
    line-height:1.02;
    letter-spacing:-0.045em;
}
.hero__cta{display:flex; gap:10px; flex-wrap:wrap; margin-bottom: 18px}
.hero__social{display:flex; gap:10px; flex-wrap:wrap}

.heroCard{
    border-radius: var(--r-xl);
    background: var(--card);
    box-shadow: var(--shadow);
    border:1px solid rgba(15,23,42,.08);
    overflow:hidden;
}
.heroCard__image{
    position:relative;
    height: 360px;
    overflow: hidden;
    background: #f3f4f6;
}
.heroImg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit: cover;
    transform: scale(1.03);
}
.imgOverlay{
    position:absolute;
    inset:0;
    background:
            radial-gradient(900px 360px at 18% 10%, rgba(255,255,255,.35), transparent 60%),
            linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.02));
    pointer-events:none;
}
/* --- Torn paper effect --- */
.torn{
    border-radius: var(--r-xl);
    border: 1px solid rgba(15,23,42,.08);
    box-shadow: var(--shadow);
}

/* The “paper” layer that looks torn */
.torn::before,
.torn::after{
    content:"";
    position:absolute;
    pointer-events:none;
    z-index: 2;
    background: #fff;
    opacity: .96;

    /* paper micro texture */
    background-image:
            radial-gradient(circle at 30% 30%, rgba(0,0,0,.08) 0 1px, transparent 2px),
            radial-gradient(circle at 70% 70%, rgba(0,0,0,.06) 0 1px, transparent 2px),
            radial-gradient(circle at 30% 70%, rgba(0,0,0,.05) 0 1px, transparent 2px);
    background-size: 18px 18px;
    background-blend-mode: multiply;

    filter: drop-shadow(0 10px 18px rgba(15,23,42,.12));
}

/* TOP torn paper */
.torn::before{
    left:-16px;
    top:-18px;
    width: 82%;
    height: 110px;

    /* irregular torn edge using mask */
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 200'%3E%3Cpath d='M0,40 C30,30 55,65 85,52 C120,35 140,78 175,62 C210,46 230,88 265,72 C295,58 320,95 350,78 C388,57 405,102 438,90 C470,80 505,110 535,92 C560,80 580,95 600,88 L600,0 L0,0 Z'/%3E%3C/svg%3E");
    -webkit-mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 200'%3E%3Cpath d='M0,40 C30,30 55,65 85,52 C120,35 140,78 175,62 C210,46 230,88 265,72 C295,58 320,95 350,78 C388,57 405,102 438,90 C470,80 505,110 535,92 C560,80 580,95 600,88 L600,0 L0,0 Z'/%3E%3C/svg%3E");
    mask-size: 100% 100%;
    mask-repeat: no-repeat;
}

/* RIGHT torn paper */
.torn::after{
    right:-18px;
    top: 32px;
    width: 140px;
    height: 78%;

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 600'%3E%3Cpath d='M160,0 C150,30 180,55 166,85 C150,120 190,140 170,175 C155,205 195,230 175,265 C160,295 195,320 180,350 C165,388 195,405 182,438 C170,470 190,505 176,535 C165,560 185,580 176,600 L200,600 L200,0 Z'/%3E%3C/svg%3E");
    -webkit-mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 600'%3E%3Cpath d='M160,0 C150,30 180,55 166,85 C150,120 190,140 170,175 C155,205 195,230 175,265 C160,295 195,320 180,350 C165,388 195,405 182,438 C170,470 190,505 176,535 C165,560 185,580 176,600 L200,600 L200,0 Z'/%3E%3C/svg%3E");
    mask-size: 100% 100%;
    mask-repeat: no-repeat;
}

/* make sure badge/nav stay on top */
.heroCard__badge, .heroCard__nav{ z-index: 3; position:absolute; }
.tear{
    position:absolute;
    background: rgba(15,23,42,.85);
    opacity:.16;
    filter: blur(0px);
    border-radius: 18px;
}
.tear--top{top: 12px; left: 18px; right: 120px; height: 80px}
.tear--right{top: 26px; right: 12px; width: 120px; bottom: 80px}

.heroCard__badge{
    position:absolute;
    right: 18px;
    bottom: 18px;
    display:flex;
    gap:10px;
    align-items:center;
    padding: 12px 12px;
    border-radius: 16px;
    border:1px solid rgba(15,23,42,.12);
    background: rgba(255,255,255,.86);
    box-shadow: var(--shadow2);
}
.badgeIcon{
    width:34px; height:34px;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(15,23,42,.9), rgba(15,23,42,.55));
}
.badgeTitle{font-weight:900; line-height:1; color: #ffffff}
.badgeSub{font-weight:700; color: var(--muted); font-size: 12px}

.heroCard__nav{
    position:absolute;
    left: 18px;
    bottom: 18px;
    display:flex; gap:8px;
}
.dot{
    width:10px; height:10px;
    border-radius:999px;
    border:1px solid rgba(15,23,42,.22);
    background: rgba(255,255,255,.9);
    cursor:pointer;
}
.dot.is-active{background: rgba(15,23,42,.85)}

.heroCard__footer{
    display:flex; justify-content:space-between; align-items:center;
    padding: 14px 14px;
    border-top: 1px solid rgba(15,23,42,.08);
    background: rgba(255,255,255,.9);
}
.heroCard__footerLeft{display:flex; gap:10px; color: var(--muted2); font-weight:700}
.heroCard__footerRight{display:flex; gap:10px}

/* strip cards */
.strip{padding: 10px 0 46px}
.strip__grid{
    display:grid;
    grid-template-columns: 1.15fr 1fr 1fr;
    gap: 16px;
}
.panel{
    border-radius: var(--r-xl);
    border:1px solid rgba(15,23,42,.08);
    background: #fff;
    box-shadow: var(--shadow2);
    padding: 18px;
    display:flex; flex-direction:column; justify-content:space-between;
    min-height: 240px;
}
.panel__top{display:flex; flex-direction:column; gap:4px; margin-bottom: 10px}
.panel h3{
    margin:0;
    font-size: 22px;
    letter-spacing:-.03em;
    line-height:1.15;
}
.panel__actions{display:flex; gap:10px; align-items:center; margin-top: 16px}

.tileCard{
    border-radius: var(--r-xl);
    border:1px solid rgba(15,23,42,.08);
    background:#fff;
    box-shadow: var(--shadow2);
    overflow:hidden;
    display:flex; flex-direction:column;
    min-height: 240px;
}
.tileCard__imgWrap{ border-radius: inherit; overflow:hidden; }
.tileCard__photo{ width:100%; height:100%; object-fit:cover; display:block; }
.tileCard__img{
    height: 200px;
    background: linear-gradient(180deg, #f1f2f4, #ffffff);
}
.img--a{
    background:
            radial-gradient(320px 180px at 30% 20%, rgba(15,23,42,.10), transparent 60%),
            linear-gradient(180deg, #f1f2f4, #ffffff);
}
.img--b{
    background:
            radial-gradient(320px 180px at 70% 30%, rgba(15,23,42,.10), transparent 60%),
            linear-gradient(180deg, #f1f2f4, #ffffff);
}
.tileCard__footer{
    padding: 14px 14px;
    display:flex; justify-content:space-between; align-items:center;
    gap: 12px;
}
.tileCard__title{font-weight:900; letter-spacing:-.02em}
.tileCard__sub{color: var(--muted); font-weight:700; font-size: 12px}

/* sections */
.section{padding: 90px 0}
.section--soft{background: var(--soft)}
.centerHead{text-align:center; max-width: 860px; margin: 0 auto 38px}
.centerHead h2{margin:0 0 10px; font-size: clamp(28px, 3.2vw, 44px); letter-spacing:-.04em; line-height:1.08}
.sub{margin:0; color: var(--muted); font-weight:600}

.splitHead{
    display:grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 16px;
    align-items:end;
    margin-bottom: 26px;
}
.splitHead h2{margin:0; font-size: clamp(26px, 3vw, 42px); letter-spacing:-.04em; line-height:1.08}
.splitHead__right .sub{margin-bottom: 12px}
.miniActions{display:flex; gap:10px; align-items:center; justify-content:flex-start}

/* about grid */
.aboutGrid{
    display:grid;
    grid-template-columns: 1.3fr .7fr;
    gap: 16px;
    align-items: stretch;
    margin-bottom: 16px;
}
/* Kill any decorative blobs/pseudo elements inside the video card */
.videoCard::before,
.videoCard::after { content: none !important; }

.videoCard { position: relative; }

/* Thumbnail button becomes the card surface */
.videoThumb{
    position: relative;
    width: 100%;
    border: 0;
    padding: 0;
    border-radius: inherit;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    cursor: pointer;
    background: transparent;
    display: block;
}

.videoThumb__img{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.videoThumb__overlay{
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.45));
}

.videoThumb__meta{
    position: absolute;
    top: 14px;
    left: 14px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    z-index: 2;
}

.videoThumb__play{
    position: absolute;
    left: 16px;
    bottom: 16px;
    z-index: 2;
    width: 54px;
    height: 54px;
    border-radius: 999px;
    background: rgba(255,255,255,.92);
    display: grid;
    place-items: center;
    box-shadow: 0 14px 30px rgba(0,0,0,.18);
}

/* Embed container (same size) */
.videoEmbed{
    position: relative;
    width: 100%;
    border-radius: inherit;
    overflow: hidden;
    aspect-ratio: 16 / 9;
}

.videoEmbed iframe{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
/* Soft overlay so chips + play look premium */
.videoCard__overlay{
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.35));
    pointer-events: none;
}

/* Ensure your existing play button sits above */
.videoCard .play{
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 2;
}

/* Keep chips on top-right or bottom-left (choose) */
.videoCard__meta{
    position: absolute;
    top: 16px;
    right: 16px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    z-index: 2;
}
.play{
    position:absolute;
    left: 18px; bottom: 18px;
    width: 56px; height: 56px;
    border-radius: 999px;
    border:1px solid rgba(15,23,42,.12);
    background: rgba(255,255,255,.86);
    display:grid; place-items:center;
    cursor:pointer;
}
.play__icon{font-weight:900}
.videoCard__meta{
    position:absolute;
    right: 18px; bottom: 18px;
    display:flex; gap:10px; flex-wrap:wrap;
    justify-content:flex-end;
}

.profileCard{
    border-radius: var(--r-xl);
    border:1px solid rgba(15,23,42,.08);
    background:#fff;
    box-shadow: var(--shadow2);
    padding: 16px;
    display:flex; flex-direction:column; justify-content:space-between;
}
.profileCard__top{display:flex; justify-content:space-between; gap:12px; align-items:flex-start}
.profileCard h3{margin:0; font-size: 20px; letter-spacing:-.03em}
.avatar{
    width:46px; height:46px;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(15,23,42,.9), rgba(15,23,42,.55));
}
.profileCard__mid{margin: 12px 0}
.quote{margin:6px 0 0; color: var(--muted); font-weight:650}
.profileCard__actions{display:flex; gap:10px; align-items:center}

/* stats */
.statsGrid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 16px;
}
.stat{
    position: relative;
    border: 1px solid rgba(15,23,38,.10);
    background: #fff;
    padding: 12px 14px 12px;   /* was 18px+ */
    border-radius: 14px;      /* slightly sharper */
    box-shadow: 0 6px 18px rgba(19,26,40,.05);
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
/* Brand accent bar */
.stat::before{
    content:"";
    position:absolute;
    left:0; top:0; bottom:0;
    width: 4px;
    background: linear-gradient(180deg, var(--aguila), var(--aguila-2));
    opacity: .95;
}

/* Subtle brand wash in the corner */
.stat::after{
    content:"";
    position:absolute;
    right:-60px;
    top:-60px;
    width:160px;
    height:160px;
    border-radius:999px;
    background: radial-gradient(circle, var(--aguila-soft-2) 0%, transparent 60%);
    pointer-events:none;
}

.stat__label{
    color: rgba(15,23,38,.62);
    font-weight: 600;
    letter-spacing: .2px;
    margin-bottom: 8px;
}

.stat__value{
    font-weight: 800;
    font-size: clamp(28px, 3.2vw, 44px);
    line-height: 1;
    color: var(--aguila);
    display:flex;
    align-items: baseline;
    gap: 4px;
}

.stat__value .plus{
    color: var(--aguila-2);
    font-weight: 800;
}

/* Hover (premium, not loud) */
.stat:hover{
    transform: translateY(-2px);
    border-color: rgba(11,59,46,.22);
    box-shadow: 0 18px 44px rgba(19,26,40,.10);
}
.statsGrid .stat:nth-child(1)::before{ background: var(--aguila); }
.statsGrid .stat:nth-child(2)::before{ background: var(--aguila-2); }
.statsGrid .stat:nth-child(3)::before{ background: linear-gradient(180deg, var(--aguila), var(--aguila-2)); }
.plus{color: var(--muted2); font-weight:800}

/* services */
.servicesGrid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}
.service{
    border-radius: var(--r-xl);
    border:1px solid rgba(15,23,42,.08);
    background:#fff;
    box-shadow: var(--shadow2);
    padding: 18px;
}
.service h3{margin:0 0 8px; letter-spacing:-.03em}
.service p{margin:0 0 14px; color: var(--muted); font-weight:650}
.service__meta{display:flex; gap:8px; flex-wrap:wrap}
/* Industries grid spacing */
.servicesGrid--industries{
    gap: 12px;
}

/* Industry card upgrade */
.service--industry{
    position: relative;
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.85);
    backdrop-filter: blur(6px);
    border-radius: 18px;
    padding: 16px 16px 14px;
    box-shadow: 0 10px 26px rgba(19,26,40,.06);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    overflow: hidden;
}

/* Brand accent line on top */
.service--industry::before{
    content:"";
    position:absolute;
    left:0; right:0; top:0;
    height: 3px;
    background: linear-gradient(90deg, var(--aguila), var(--aguila-2));
    opacity: .95;
}

/* Subtle corner glow */
.service--industry::after{
    content:"";
    position:absolute;
    right:-60px;
    top:-60px;
    width:160px;
    height:160px;
    border-radius:999px;
    background: radial-gradient(circle, rgba(202,162,74,.18) 0%, transparent 60%);
    pointer-events:none;
}

/* Header row (icon + title) */
.service--industry .service__head{
    display:flex;
    align-items:center;
    gap: 10px;
    margin-bottom: 8px;
}

.service--industry h3{
    margin: 0;
    font-size: 16px;
    letter-spacing: -0.2px;
}

/* Icon badge */
.service--industry .service__icon{
    width: 36px;
    height: 36px;
    display:grid;
    place-items:center;
    border-radius: 12px;
    background: rgba(11,59,46,.08);
    border: 1px solid rgba(11,59,46,.12);
    font-size: 18px;
}

/* Copy */
.service--industry p{
    margin: 0 0 12px;
    color: rgba(15,23,38,.72);
    line-height: 1.5;
}

/* Tags */
.service--industry .service__meta{
    display:flex;
    flex-wrap:wrap;
    gap: 8px;
}

.service--industry .tag{
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.7);
    color: rgba(15,23,38,.72);
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}

/* Hover state */
.service--industry:hover{
    transform: translateY(-2px);
    border-color: rgba(11,59,46,.20);
    box-shadow: 0 18px 44px rgba(19,26,40,.10);
}

.service--industry:hover .service__icon{
    background: rgba(11,59,46,.12);
    border-color: rgba(11,59,46,.18);
}
.tag{
    padding: 6px 10px;
    border-radius: 999px;
    border:1px solid rgba(15,23,42,.10);
    background: rgba(15,23,42,.02);
    font-weight:800;
    font-size:12px;
    color: var(--muted);
}
/* IMPACT section with background image */
.impactSection{
    position: relative;
    overflow: hidden;
    padding: 74px 0; /* slightly richer spacing */
    color: #fff;
}

/* Background image layer */
.impactSection__bg{
    position:absolute;
    inset:0;
    background:
            linear-gradient(180deg, rgba(7,12,20,.30) 0%, rgba(7,12,20,.72) 70%),
            radial-gradient(circle at 18% 20%, rgba(202,162,74,.18), transparent 45%),
            radial-gradient(circle at 78% 30%, rgba(11,59,46,.22), transparent 50%),
            url('/img/sliders/3.jpg');
    background-size: cover;
    background-position: center;
    filter: saturate(1.05) contrast(1.05);
    transform: scale(1.02);
}

/* Keep content above background */
.impactSection .container{
    position: relative;
    z-index: 1;
}

/* Head text spacing + readability */
.impactSection__head .kicker{ color: rgba(255,255,255,.75); }
.impactSection__head h2{ color:#fff; }
.impactSection__head .sub{ color: rgba(255,255,255,.78); }
/* Cinematic animated grain overlay */
.impactSection__grain{
    position: absolute;
    inset: -60px;            /* bigger than section to avoid edges during movement */
    z-index: 0;
    pointer-events: none;
    opacity: .07;            /* subtle */
    mix-blend-mode: overlay; /* looks modern on dark overlays */
    background-image: url("/img/grain.png");
    background-repeat: repeat;
    background-size: 220px 220px;
    animation: grainMove 7s steps(8) infinite;
}

/* Ensure bg stays behind grain, and content above both */
.impactSection__bg{ z-index: -2; }
.impactSection__grain{ z-index: -1; }
.impactSection .container{ position: relative; z-index: 1; }

@keyframes grainMove{
    0%   { transform: translate3d(0,0,0); }
    10%  { transform: translate3d(-2%, -4%, 0); }
    20%  { transform: translate3d(-6%, 2%, 0); }
    30%  { transform: translate3d(4%, -8%, 0); }
    40%  { transform: translate3d(-4%, 6%, 0); }
    50%  { transform: translate3d(-8%, 0%, 0); }
    60%  { transform: translate3d(6%, 4%, 0); }
    70%  { transform: translate3d(0%, 8%, 0); }
    80%  { transform: translate3d(-6%, 2%, 0); }
    90%  { transform: translate3d(6%, -4%, 0); }
    100% { transform: translate3d(0,0,0); }
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce){
    .impactSection__grain{ animation: none; }
}
/* Impact stats: glass cards */
.statsGrid--impact{ gap: 10px; }

.stat--impact{
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(8px);
    box-shadow: 0 14px 40px rgba(0,0,0,.18);
}

.stat--impact::before{
    background: linear-gradient(180deg, var(--aguila-2), rgba(255,255,255,.25));
    width: 3px;
}

.stat--impact .stat__label{ color: rgba(255,255,255,.70); }
.stat--impact .stat__value{ color: #fff; }
.stat--impact .stat__value .plus{ color: var(--aguila-2); }

.stat--impact:hover{
    border-color: rgba(255,255,255,.22);
    box-shadow: 0 18px 52px rgba(0,0,0,.24);
}

/* Impact panel: premium glass + gold accent */
.panel--impact{
    margin-top: 18px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(10px);
    box-shadow: 0 18px 56px rgba(0,0,0,.22);
}

.panel--impact h3{ color:#fff; }
.panel--impact .sub{ color: rgba(255,255,255,.78); }
.panel--impact .tiny{ color: rgba(255,255,255,.75); }
.panel--impact .tiny.muted{ color: rgba(255,255,255,.55); }

/* Make buttons pop on dark background */
.impactSection .btn--primary{
    box-shadow: 0 14px 34px rgba(0,0,0,.22);
}

.impactSection .btn--ghost{
    border-color: rgba(255,255,255,.22);
    color: rgba(255,255,255,.92);
}

/* projects */
.filters{display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end}
.filter{
    padding: 9px 12px;
    border-radius: 999px;
    border:1px solid rgba(15,23,42,.12);
    background: rgba(15,23,42,.02);
    font-weight:800;
    color: var(--muted);
    cursor:pointer;
}
.filter.is-active{background: var(--ink); color:#fff; border-color: var(--ink)}

.projectGrid{
    display:grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
.project{
    border-radius: var(--r-xl);
    border:1px solid rgba(15,23,42,.08);
    background:#fff;
    box-shadow: var(--shadow2);
    overflow:hidden;
}
.project__img{
    height: 240px;
    background: linear-gradient(180deg, #f1f2f4, #ffffff);
}
.p1{background: radial-gradient(400px 240px at 30% 30%, rgba(15,23,42,.12), transparent 60%), linear-gradient(180deg,#f1f2f4,#fff)}
.p2{background: radial-gradient(400px 240px at 70% 20%, rgba(15,23,42,.12), transparent 60%), linear-gradient(180deg,#f1f2f4,#fff)}
.p3{background: radial-gradient(400px 240px at 40% 70%, rgba(15,23,42,.12), transparent 60%), linear-gradient(180deg,#f1f2f4,#fff)}
.p4{background: radial-gradient(400px 240px at 80% 60%, rgba(15,23,42,.12), transparent 60%), linear-gradient(180deg,#f1f2f4,#fff)}
.project__foot{
    padding: 14px 14px;
    display:flex; align-items:center; justify-content:space-between; gap:12px;
}
.project__title{margin:0; font-weight:900; letter-spacing:-.02em}
.project__sub{margin:2px 0 0; color: var(--muted); font-weight:700; font-size: 12px}

/* form */
.form{
    max-width: 900px;
    margin: 0 auto;
    border-radius: var(--r-xl);
    border:1px solid rgba(15,23,42,.08);
    background:#fff;
    box-shadow: var(--shadow2);
    padding: 16px;
}
.form__row{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
label{display:grid; gap:8px; font-weight:800; color: var(--muted)}
input, textarea{
    border-radius: 14px;
    border: 1px solid rgba(15,23,42,.14);
    background:#fff;
    padding: 12px 12px;
    color: var(--ink);
    outline:none;
    font: inherit;
}
input:focus, textarea:focus{
    border-color: rgba(15,23,42,.40);
    box-shadow: 0 0 0 4px rgba(15,23,42,.08);
}
.form__actions{display:flex; gap:12px; align-items:center; margin-top: 10px}
.hint{margin:0; color: var(--muted); font-weight:800}

/* footer */
.footer{
    padding: 26px 0 46px;
    border-top: 1px solid rgba(15,23,42,.08);
    background: #fafafa;
}
.footer__row{
    display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap;
}

/* reveal */
.reveal{opacity:0; transform: translateY(12px); transition: opacity .6s ease, transform .6s ease}
.reveal.is-in{opacity:1; transform: translateY(0)}

/* responsive */
@media (max-width: 980px){
    .nav{display:none}
    .hamburger{display:inline-block}
    .mobile{display:block}
    .hero__grid{grid-template-columns:1fr}
    .strip__grid{grid-template-columns:1fr}
    .splitHead{grid-template-columns:1fr}
    .aboutGrid{grid-template-columns:1fr}
    .servicesGrid{grid-template-columns:1fr}
    .projectGrid{grid-template-columns:1fr}
    .form__row{grid-template-columns:1fr}
    .filters{justify-content:flex-start}
}
/* Thesis section background */
.thesisSection{
    position: relative;
    overflow: hidden;
    padding: 74px 0;
    color: #fff;
}

.thesisSection__bg{
    position: absolute;
    inset: 0;
    background:
            linear-gradient(180deg, rgba(7,12,20,.35) 0%, rgba(7,12,20,.86) 78%),
            radial-gradient(circle at 20% 18%, rgba(202,162,74,.18), transparent 52%),
            radial-gradient(circle at 80% 28%, rgba(11,59,46,.25), transparent 55%),
            url("/img/industry/indus.jpg");
    background-size: cover;
    background-position: center;
    filter: saturate(1.05) contrast(1.05);
    transform: scale(1.02);
}

/* Subtle animated grain (cinematic) */
.thesisSection__grain{
    position:absolute;
    inset:-60px;
    pointer-events:none;
    opacity:.07;
    mix-blend-mode: overlay;
    background-image:url("/img/industry/grain.png");
    background-repeat:repeat;
    background-size:220px 220px;
    animation: grainMove 7s steps(8) infinite;
}

.thesisSection .container{ position: relative; z-index: 1; }
.thesisSection__head .kicker{ color: rgba(255,255,255,.76); }
.thesisSection__head h2{ color: #fff; }
.thesisSection__head .sub{ color: rgba(255,255,255,.78); }

/* Grid for the 3 cards */
.thesisGrid{
    margin-top: 14px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

@media (max-width: 980px){
    .thesisGrid{ grid-template-columns: 1fr; }
}

/* Glass cards */
.thesisCard{
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(10px);
    box-shadow: 0 18px 52px rgba(0,0,0,.22);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    overflow: hidden;
    position: relative;
}

.thesisCard::before{
    content:"";
    position:absolute;
    left:0; right:0; top:0;
    height:3px;
    background: linear-gradient(90deg, var(--aguila), var(--aguila-2));
    opacity:.95;
}

.thesisCard__top{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom: 8px;
}

.thesisNo{
    width: 34px;
    height: 34px;
    border-radius: 12px;
    display:grid;
    place-items:center;
    font-weight: 800;
    color: #fff;
    background: rgba(11,59,46,.28);
    border: 1px solid rgba(255,255,255,.16);
}

.thesisCard h3{ color:#fff; margin: 0 0 6px; }
.thesisCard .sub{ color: rgba(255,255,255,.78); margin:0; }

.thesisCard:hover{
    transform: translateY(-2px);
    border-color: rgba(255,255,255,.22);
    box-shadow: 0 22px 64px rgba(0,0,0,.28);
}

/* CTA panel inside thesis section */
.thesisCta{
    margin-top: 16px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(12px);
    box-shadow: 0 18px 56px rgba(0,0,0,.24);
}

.thesisCta h3{ color:#fff; }
.thesisCta .sub{ color: rgba(255,255,255,.80); }

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
    .thesisSection__grain{ animation: none; }
}

/* Reuse your existing grain animation keyframes if already added.
   If not, include them once globally: */
@keyframes grainMove{
    0%   { transform: translate3d(0,0,0); }
    10%  { transform: translate3d(-2%, -4%, 0); }
    20%  { transform: translate3d(-6%, 2%, 0); }
    30%  { transform: translate3d(4%, -8%, 0); }
    40%  { transform: translate3d(-4%, 6%, 0); }
    50%  { transform: translate3d(-8%, 0%, 0); }
    60%  { transform: translate3d(6%, 4%, 0); }
    70%  { transform: translate3d(0%, 8%, 0); }
    80%  { transform: translate3d(-6%, 2%, 0); }
    90%  { transform: translate3d(6%, -4%, 0); }
    100% { transform: translate3d(0,0,0); }
}
/* Industries Page Hero */
.pageHero--industries{
    position: relative;
    overflow: hidden;
    padding-top: 74px;
    padding-bottom: 40px;
}

/* Background wash */
.pageHero--industries .pageHero__bg{
    position:absolute;
    inset:0;
    background:
            radial-gradient(circle at 18% 10%, rgba(202,162,74,.16), transparent 48%),
            radial-gradient(circle at 78% 22%, rgba(11,59,46,.14), transparent 55%),
            linear-gradient(180deg, rgba(247,248,251,1) 0%, rgba(247,248,251,.65) 55%, rgba(247,248,251,1) 100%),
            url("/img/about.jpg");
    background-size: cover;
    background-position: center;
    opacity: .9;
    filter: saturate(1.05);
}

/* Grain (subtle) */
.pageHero--industries .pageHero__grain{
    position:absolute;
    inset:-60px;
    pointer-events:none;
    opacity:.05;
    mix-blend-mode: multiply;
    background-image:url("/img/ui/grain.png");
    background-repeat:repeat;
    background-size:220px 220px;
    animation: grainMove 7s steps(8) infinite;
}

/* Ensure content above bg */
.pageHero--industries .container{ position: relative; z-index: 1; }

/* Improve typography */
.pageHero--industries h1{
    font-size: clamp(34px, 4.2vw, 56px);
    letter-spacing: -0.9px;
    line-height: 1.06;
    margin: 10px 0 10px;
}
.pageHero--industries .sub{
    max-width: 62ch;
    color: rgba(15,23,38,.72);
}

/* Remove inline CTA spacing by styling */
.pageHero--industries .hero__cta{ margin-top: 14px; }
.pageHero--industries .hero__top{ margin-top: 14px; }

/* Card polish */
.heroCard--industries{
    box-shadow: 0 22px 58px rgba(19,26,40,.12);
    border: 1px solid rgba(15,23,38,.10);
}

/* Add a premium accent stroke to the image area */
.heroCard--industries .heroCard__image{
    position: relative;
}
.heroCard--industries .heroCard__image::after{
    content:"";
    position:absolute;
    inset:0;
    border-radius: inherit;
    border: 1px solid rgba(255,255,255,.18);
    pointer-events:none;
}

/* Stats overlay on image */
.heroCard__stats{
    position:absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px;
    z-index: 2;
}

.miniStat{
    border: 1px solid rgba(255,255,255,.22);
    background: rgba(255,255,255,.10);
    backdrop-filter: blur(10px);
    border-radius: 14px;
    padding: 10px 12px;
    box-shadow: 0 18px 44px rgba(0,0,0,.16);
}

.miniStat__label{
    font-size: 12px;
    color: rgba(255,255,255,.72);
    font-weight: 600;
}

.miniStat__value{
    margin-top: 2px;
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    letter-spacing: -0.2px;
}

/* Make badge feel more "brand" */
.heroCard__badge{
    border: 1px solid rgba(255,255,255,.22);
    background: rgba(255,255,255,.10);
    backdrop-filter: blur(10px);
}

/* Better grid on smaller screens */
@media (max-width: 980px){
    .pageHero--industries{ padding-top: 64px; }
    .heroCard__stats{ grid-template-columns: 1fr; }
}
/* Ventures page hero background */
.pageHero--ventures{ position:relative; overflow:hidden; padding-top:74px; padding-bottom:40px; }
.pageHero--ventures .pageHero__bg{
    position:absolute; inset:0;
    background:
            radial-gradient(circle at 18% 10%, rgba(202,162,74,.16), transparent 48%),
            radial-gradient(circle at 78% 22%, rgba(11,59,46,.14), transparent 55%),
            linear-gradient(180deg, rgba(247,248,251,1) 0%, rgba(247,248,251,.65) 55%, rgba(247,248,251,1) 100%),
            url("/img/ventures/ventures-bg.jpg");
    background-size: cover;
    background-position: center;
    opacity:.9;
}
.pageHero--ventures .pageHero__grain{
    position:absolute; inset:-60px; pointer-events:none;
    opacity:.05; mix-blend-mode:multiply;
    background-image:url("/img/ui/grain.png");
    background-repeat:repeat; background-size:220px 220px;
    animation: grainMove 7s steps(8) infinite;
}
.pageHero--ventures .container{ position:relative; z-index:1; }

/* Venture grid */
.ventureGrid{
    margin-top: 14px;
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
@media (max-width: 980px){
    .ventureGrid{ grid-template-columns: 1fr; }
}

/* Venture card */
.ventureCard{
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.85);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 10px 26px rgba(19,26,40,.06);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ventureCard:hover{
    transform: translateY(-2px);
    border-color: rgba(11,59,46,.20);
    box-shadow: 0 18px 44px rgba(19,26,40,.10);
}

.ventureCard__img{
    height: 180px;
    background-size: cover;
    background-position: center;
    position: relative;
}
.ventureCard__img::after{
    content:"";
    position:absolute; inset:0;
    background: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.22));
}

.ventureCard__body{
    padding: 14px 14px 14px;
}
.ventureCard__body h3{
    margin: 10px 0 6px;
    letter-spacing: -0.2px;
}
.ventureCard__body p{
    margin: 0 0 12px;
    color: rgba(15,23,38,.72);
    line-height: 1.5;
}

/* Badges */
.ventureCard__meta{ display:flex; flex-wrap:wrap; gap:8px; }
.badge{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.75);
    color: rgba(15,23,38,.76);
}
.badge--brand{
    border-color: rgba(11,59,46,.22);
    background: rgba(11,59,46,.08);
    color: var(--aguila);
}
.badge--gold{
    border-color: rgba(202,162,74,.30);
    background: rgba(202,162,74,.14);
    color: #7b5a10;
}

/* Tags */
.ventureCard__tags{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom: 12px; }

/* Actions */
.ventureCard__actions{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 10px;
}

/* Placeholder styling */
.ventureCard.is-placeholder .ventureCard__img{ filter: grayscale(1); opacity:.9; }

/* Impact page hero */
.pageHero--impact{ position:relative; overflow:hidden; padding-top:74px; padding-bottom:40px; }
.pageHero--impact .pageHero__bg{
    position:absolute; inset:0;
    background:
            linear-gradient(180deg, rgba(7,12,20,.10) 0%, rgba(7,12,20,.00) 45%, rgba(247,248,251,1) 100%),
            radial-gradient(circle at 18% 10%, rgba(202,162,74,.18), transparent 48%),
            radial-gradient(circle at 78% 22%, rgba(11,59,46,.14), transparent 55%);
            /*url("/img/impact.jpg");*/
    background-size: cover;
    background-position: center;
    opacity: .95;
}
.pageHero--impact .pageHero__grain{
    position:absolute; inset:-60px; pointer-events:none;
    opacity:.05; mix-blend-mode:multiply;
    background-image:url("/img/ui/grain.png");
    background-repeat:repeat; background-size:220px 220px;
    animation: grainMove 7s steps(8) infinite;
}
.pageHero--impact .container{ position:relative; z-index:1; }

/* About hero */
.pageHero--about{ position:relative; overflow:hidden; padding-top:74px; padding-bottom:40px; }
.pageHero--about .pageHero__bg{
    position:absolute; inset:0;
    background:
            radial-gradient(circle at 18% 10%, rgba(202,162,74,.16), transparent 48%),
            radial-gradient(circle at 78% 22%, rgba(11,59,46,.14), transparent 55%),
            linear-gradient(180deg, rgba(247,248,251,1) 0%, rgba(247,248,251,.65) 55%, rgba(247,248,251,1) 100%),
            url("/img/map.jpg");
    background-size: cover; background-position: center;
    opacity:.9;
}
.pageHero--about .pageHero__grain{
    position:absolute; inset:-60px; pointer-events:none;
    opacity:.05; mix-blend-mode:multiply;
    background-image:url("/img/ui/grain.png");
    background-repeat:repeat; background-size:220px 220px;
    animation: grainMove 7s steps(8) infinite;
}
.pageHero--about .container{ position:relative; z-index:1; }

/* Contact hero */
.pageHero--contact{ position:relative; overflow:hidden; padding-top:74px; padding-bottom:40px; }
.pageHero--contact .pageHero__bg{
    position:absolute; inset:0;
    background:
            radial-gradient(circle at 18% 10%, rgba(202,162,74,.16), transparent 48%),
            radial-gradient(circle at 78% 22%, rgba(11,59,46,.14), transparent 55%),
            linear-gradient(180deg, rgba(247,248,251,1) 0%, rgba(247,248,251,.65) 55%, rgba(247,248,251,1) 100%),
            url("/img/contact.jpg");
    background-size: cover; background-position: center;
    opacity:.9;
}
.pageHero--contact .pageHero__grain{
    position:absolute; inset:-60px; pointer-events:none;
    opacity:.05; mix-blend-mode:multiply;
    background-image:url("/img/ui/grain.png");
    background-repeat:repeat; background-size:220px 220px;
    animation: grainMove 7s steps(8) infinite;
}
.pageHero--contact .container{ position:relative; z-index:1; }

/* About story grid */
.aboutStoryGrid{
    margin-top: 14px;
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 12px;
}
@media (max-width: 980px){
    .aboutStoryGrid{ grid-template-columns: 1fr; }
}

/* Team */
.teamGrid{
    margin-top: 14px;
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 12px;
}
@media (max-width: 980px){
    .teamGrid{ grid-template-columns: 1fr; }
}

.teamCard{
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.85);
    border-radius: 18px;
    overflow:hidden;
    box-shadow: 0 10px 26px rgba(19,26,40,.06);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.teamCard:hover{
    transform: translateY(-2px);
    border-color: rgba(11,59,46,.20);
    box-shadow: 0 18px 44px rgba(19,26,40,.10);
}

.teamCard__avatar{
    height: 180px;
    background-size: cover;
    background-position: center;
    position: relative;
}
.teamCard__avatar::after{
    content:"";
    position:absolute; inset:0;
    background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.18));
}
.teamCard__body{ padding: 14px; }
.teamCard__body h3{ margin: 0 0 6px; letter-spacing: -0.2px; }

/* Contact cards */
.contactCards{
    margin-top: 16px;
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px;
}
@media (max-width: 980px){
    .contactCards{ grid-template-columns: 1fr; }
}

.contactCard{
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.85);
    border-radius: 16px;
    padding: 12px 14px;
    box-shadow: 0 10px 22px rgba(19,26,40,.06);
}
.contactCard__value{
    margin: 6px 0 0;
    font-weight: 800;
    letter-spacing: -0.2px;
}
.contactCard__value a{ color: var(--aguila); text-decoration: none; }
.contactCard__value a:hover{ text-decoration: underline; }

/* Contact form panel */
.contactPanel{
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.90);
    box-shadow: 0 18px 44px rgba(19,26,40,.10);
}

/* Map card */
.mapCard{
    margin-top: 14px;
    border-radius: 18px;
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.85);
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(19,26,40,.08);
}
.mapCard iframe{ width:100%; height: 420px; border:0; display:block; }
.mapCard__placeholder{
    padding: 28px;
    text-align: center;
}
.valuesGrid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
@media (max-width: 980px){
    .valuesGrid{ grid-template-columns: 1fr; }
}

.valueCard{
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.85);
    border-radius: 18px;
    padding: 16px;
    box-shadow: 0 10px 26px rgba(19,26,40,.06);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    position: relative;
    overflow: hidden;
}
.valueCard::before{
    content:"";
    position:absolute;
    left:0; right:0; top:0;
    height: 3px;
    background: linear-gradient(90deg, var(--aguila), var(--aguila-2));
    opacity: .95;
}
.valueCard:hover{
    transform: translateY(-2px);
    border-color: rgba(11,59,46,.20);
    box-shadow: 0 18px 44px rgba(19,26,40,.10);
}
.valueIcon{
    width: 38px;
    height: 38px;
    display:grid;
    place-items:center;
    border-radius: 14px;
    background: rgba(11,59,46,.08);
    border: 1px solid rgba(11,59,46,.12);
    font-weight: 900;
    color: var(--aguila);
    margin-bottom: 10px;
}
.valueCard h3{ margin: 0 0 6px; letter-spacing: -0.2px; }
.valueCard p{ margin: 0; color: rgba(15,23,38,.72); line-height: 1.5; }

/* ================================
   CONTACT PAGE — PREMIUM STYLES
================================ */

/* =========================
   CONTACT HERO (reference style)
========================= */
.pageHero--contact{ position:relative; overflow:hidden; padding-top:78px; padding-bottom:52px; }

.contactHero{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 18px;
    align-items: start;
}

@media (max-width: 980px){
    .contactHero{ grid-template-columns: 1fr; }
}

/* Background wash */
.contactHero__bg{
    position:absolute; inset:0;
    background:
            radial-gradient(circle at 15% 18%, rgba(202,162,74,.22), transparent 55%),
            radial-gradient(circle at 78% 18%, rgba(11,59,46,.16), transparent 55%),
            linear-gradient(180deg, rgba(247,248,251,1) 0%, rgba(247,248,251,.65) 55%, rgba(247,248,251,1) 100%),
            url("/img/contact.jpg");
    background-size: cover;
    background-position: center;
    filter: saturate(1.05);
    opacity: .96;
}

.contactHero__grain{
    position:absolute; inset:-60px;
    pointer-events:none;
    opacity:.05;
    mix-blend-mode:multiply;
    background-image:url("/img/ui/grain.png");
    background-repeat:repeat;
    background-size:220px 220px;
    animation: grainMove 7s steps(8) infinite;
}

/* Left typography */
.contactHero__title{
    margin: 10px 0 12px;
    font-size: clamp(40px, 4.9vw, 66px);
    line-height: 1.02;
    letter-spacing: -1.0px;
}

.contactHero__sub{ max-width: 58ch; }

.contactHero__chips{
    margin-top: 14px;
    display:flex;
    flex-wrap:wrap;
    gap: 10px;
}

/* Contact info cards row */
.contactInfoGrid{
    margin-top: 16px;
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 12px;
}

@media (max-width: 980px){
    .contactInfoGrid{ grid-template-columns: 1fr; }
}

.contactInfoCard{
    border-radius: 18px;
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.92);
    box-shadow: 0 12px 28px rgba(19,26,40,.08);
    padding: 14px 14px;
    min-height: 110px;
}

.contactInfoCard__value{
    margin: 8px 0 0;
    font-weight: 900;
    letter-spacing: -0.25px;
    line-height: 1.25;
}

.contactInfoCard__value a{
    color: var(--aguila);
    text-decoration: none;
}
.contactInfoCard__value a:hover{ text-decoration: underline; }

/* Right floating form card */
.contactHero__right{ display:flex; justify-content:flex-end; }

.contactFormCard{
    width: min(640px, 100%);
    border-radius: 22px;
    border: 1px solid rgba(15,23,38,.12);
    background: rgba(255,255,255,.95);
    box-shadow: 0 26px 70px rgba(19,26,40,.18);
    padding: 18px;
}

.contactFormCard__head{
    margin-bottom: 12px;
}

/* Form styles */
.contactForm label{
    display:block;
    font-weight: 700;
    font-size: 13px;
    color: rgba(15,23,38,.86);
    margin-bottom: 10px;
}

.contactForm input,
.contactForm textarea{
    width: 100%;
    margin-top: 8px;
    border: 1px solid rgba(15,23,38,.12);
    background: rgba(255,255,255,.98);
    border-radius: 14px;
    padding: 12px 12px;
    font: inherit;
    outline: none;
    transition: box-shadow .18s ease, border-color .18s ease;
}

.contactForm textarea{ resize: vertical; min-height: 160px; }

.contactForm input:focus,
.contactForm textarea:focus{
    border-color: rgba(11,59,46,.34);
    box-shadow: 0 0 0 4px rgba(11,59,46,.12);
}

.contactForm__row{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

@media (max-width: 980px){
    .contactForm__row{ grid-template-columns: 1fr; }
}

.contactForm__actions{
    margin-top: 12px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap: 12px;
}

.contactForm .btn--primary{
    border-radius: 999px;
    padding-left: 18px;
    padding-right: 18px;
}
/* Make 2 cards span nicely (Email/Phone wider, Location narrower) */
.contactInfoGrid{
    grid-template-columns: 1.25fr .75fr;  /* was 3 columns */
}

/* Email/Phone split inside one card */
.contactInfoCard--split{
    display:flex;
    flex-direction: column;
    gap: 12px;
}

.contactInfoLine .tiny{ margin: 0; }
.contactInfoLine .contactInfoCard__value{ margin: 6px 0 0; }

.contactInfoDivider{
    height: 1px;
    background: rgba(15,23,38,.10);
}

/* Location pin button */
.contactInfoCard{ position: relative; }
.contactInfoPin{
    position:absolute;
    right: 12px;
    bottom: 12px;
}
/* Map card */
.mapCard{
    margin-top: 14px;
    border-radius: 18px;
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.90);
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(19,26,40,.08);
}

.mapCard iframe{ width:100%; height: 420px; border:0; display:block; }

.mapCard__placeholder{
    padding: 28px;
    text-align: center;
}
/* Mission section — balanced layout */
.missionRow{
    margin-top: 14px;
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 14px;
    align-items: stretch;
}
@media (max-width: 980px){
    .missionRow{ grid-template-columns: 1fr; }
}

/* 3 cards grid */
.missionCards{
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
@media (max-width: 980px){
    .missionCards{ grid-template-columns: 1fr; }
}

/* Make cards feel tighter + premium */
.missionCard{
    border-radius: 18px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(15,23,38,.10);
    box-shadow: 0 12px 28px rgba(19,26,40,.06);
}
.missionCard h3{ margin-top: 10px; }

/* Right art card — SAME visual weight as cards */
.missionArt{
    height: 100%;
    min-height: 320px;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid rgba(15,23,38,.10);
    background:
            radial-gradient(circle at 30% 20%, rgba(202,162,74,.20), transparent 55%),
            radial-gradient(circle at 80% 60%, rgba(11,59,46,.12), transparent 55%),
            linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,.86));
    box-shadow: 0 18px 44px rgba(19,26,40,.10);
    position: relative;
    display:flex;
}

/* If it’s an illustration, contain it (not cover) */
.missionArt img{
    width: 100%;
    height: 100%;
    object-fit: contain;         /* key change */
    padding: 26px;               /* breathing space */
    display:block;
    opacity: .95;
    filter: contrast(1.02) saturate(1.02);
}

/* Subtle vignette overlay */
.missionArt::after{
    content:"";
    position:absolute; inset:0;
    background: radial-gradient(circle at 50% 40%, rgba(0,0,0,0), rgba(0,0,0,.10));
    pointer-events:none;
}

/* Footer inside image card (removes that ugly separate panel) */
.missionArt__footer{
    position:absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    z-index: 2;
    display:flex;
    flex-direction: column;
    gap: 10px;
}

.missionArt__chips{
    display:flex;
    gap: 8px;
    flex-wrap: wrap;
}

/* CTA row inside */
.missionArt__cta{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 12px;
    border-radius: 16px;
    background: rgba(255,255,255,.80);
    border: 1px solid rgba(15,23,38,.10);
    box-shadow: 0 10px 22px rgba(19,26,40,.08);
    backdrop-filter: blur(6px);
}

/* Mission layout: image left, stacked cards right */
.missionStack{
    margin-top: 14px;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 14px;
    align-items: stretch;
}

@media (max-width: 980px){
    .missionStack{ grid-template-columns: 1fr; }
}

/* Left image card */
.missionArt--left{
    height: 100%;
    min-height: 460px;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid rgba(15,23,38,.10);
    background:
            radial-gradient(circle at 28% 18%, rgba(202,162,74,.20), transparent 56%),
            radial-gradient(circle at 82% 66%, rgba(11,59,46,.12), transparent 56%),
            linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,.88));
    box-shadow: 0 18px 44px rgba(19,26,40,.10);
    position: relative;
    display: flex;
}

.missionArt--left img{
    width: 100%;
    height: 100%;
    object-fit: contain;   /* for illustration */
    padding: 34px;
    display: block;
    opacity: .96;
    filter: contrast(1.02) saturate(1.02);
}

/* If you switch to a photo, uncomment:
.missionArt--left img{ object-fit: cover; padding:0; }
*/

.missionArt--left::after{
    content:"";
    position:absolute; inset:0;
    background: radial-gradient(circle at 50% 38%, rgba(0,0,0,0), rgba(0,0,0,.10));
    pointer-events:none;
}

/* Footer chips + CTA inside image */
.missionArt__footer{
    position:absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    z-index: 2;
    display:flex;
    flex-direction: column;
    gap: 10px;
}

.missionArt__chips{
    display:flex;
    gap: 8px;
    flex-wrap: wrap;
}

.missionArt__cta{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 12px;
    border-radius: 16px;
    background: rgba(255,255,255,.82);
    border: 1px solid rgba(15,23,38,.10);
    box-shadow: 0 10px 22px rgba(19,26,40,.08);
    backdrop-filter: blur(6px);
}

/* Right stacked cards */
.missionStack__right{
    display:flex;
    flex-direction: column;
    gap: 12px;
}

.missionRowCard{
    border-radius: 18px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(15,23,38,.10);
    box-shadow: 0 12px 28px rgba(19,26,40,.06);
}

.missionRowCard h3{
    margin-top: 10px;
    letter-spacing: -0.3px;
}

/* Make the right side vertically match the left better on big screens */
@media (min-width: 981px){
    .missionRowCard{ flex: 1; }
}
/* ================================
   VALUES SECTION — IMAGE BACKGROUND
================================ */
.valuesSection{
    position: relative;
    overflow: hidden;
}

/* Background image + brand wash */
.valuesSection__bg{
    position:absolute;
    inset:0;
    background:
            radial-gradient(circle at 18% 18%, rgba(202,162,74,.18), transparent 55%),
            radial-gradient(circle at 78% 22%, rgba(11,59,46,.14), transparent 58%),
            linear-gradient(180deg, rgba(246,247,249,.92), rgba(246,247,249,.86)),
            url("/img/sliders/5.jpg"); /* <-- change to your real image */
    background-size: cover;
    background-position: center;
    filter: saturate(1.05) contrast(1.03);
    transform: scale(1.02);
    opacity: .95;
    z-index: 0;
}

/* Subtle animated grain */
.valuesSection__grain{
    position:absolute;
    inset:-60px;
    pointer-events:none;
    opacity:.05;
    mix-blend-mode:multiply;
    background-image:url("/img/map.svg");
    background-repeat:repeat;
    background-size:220px 220px;
    animation: grainMove 7s steps(8) infinite;
    z-index: 1;
}

/* Keep content above background */
.valuesSection .container{
    position: relative;
    z-index: 2;
}

/* Make cards slightly more “glass” so background feels premium */
.valuesSection .valueCard{
    background: rgba(255,255,255,.88);
    backdrop-filter: blur(6px);
    border: 1px solid rgba(15,23,38,.10);
    box-shadow: 0 14px 36px rgba(19,26,40,.08);
}
.valuesSection .panel{
    background: rgba(255,255,255,.90);
    backdrop-filter: blur(8px);
}
@media (prefers-reduced-motion: reduce){
    .valuesSection__grain{ animation: none; }
}

/* =========================
   BILLBOARD HERO — FIXED/POLISHED
   Paste at END of styles.css
   ========================= */

.billboardHero{
    position: relative;
    margin: 22px auto 0;
    overflow: hidden;
    min-height: clamp(520px, 72vh, 780px);
    background: #0f172a;
    box-shadow: 0 22px 60px rgb(15, 23, 41);
}

/* Add space under sticky headers if needed */
.header + main .billboardHero{
    margin-top: 0;
}

.billboardHero__bg{ position:absolute; inset:0; }
.billboardHero__bg img{
    width:100%;
    height:100%;
    object-fit:cover;
    transform: scale(1.04);
    filter: saturate(1.05) contrast(1.05);
}

/* premium overlay: darker left & bottom, clearer mid */
.billboardHero__overlay{
    position:absolute; inset:0;
    background:
            linear-gradient(90deg,
            rgba(6, 8, 14, .92) 0%,
            rgba(6, 8, 14, .62) 44%,
            rgba(6, 8, 14, .80) 100%
            ),
            linear-gradient(180deg,
            rgba(6, 8, 14, .35) 0%,
            rgba(6, 8, 14, .55) 55%,
            rgba(6, 8, 14, .86) 100%
            );
}

/* bottom-left glow (your style) */
.billboardHero__glow{
    position:absolute; inset:0;
    background:
            radial-gradient(860px 560px at 8% 90%, rgb(123, 90, 16), transparent 64%),
            radial-gradient(520px 420px at 0% 100%, rgb(123, 90, 16), transparent 62%);
    mix-blend-mode: screen;
    opacity: .92;
    pointer-events:none;
}

/* Content wrapper */
.billboardHero__content{
    position: relative;
    z-index: 2;
    height: 100%;
    padding: clamp(28px, 5vw, 64px) 18px 22px;
}

/* TRUE GRID: Left title + Right copy */
.billboardHero__grid{
    display: grid;
    grid-template-columns: 1.25fr .95fr;
    gap: clamp(18px, 3.2vw, 52px);
    align-items: end;
    min-height: calc(clamp(520px, 72vh, 780px) - 110px);
}

/* Left */
.billboardHero__left{ max-width: 720px; }
.billboardHero__kicker{
    margin: 0 0 12px;
    font-size: 12px;
    letter-spacing: .24em;
    text-transform: uppercase;
    color: rgba(255,255,255,.72);
}
.billboardHero__title{
    margin: 0;
    color: #fff;
    font-weight: 800;
    line-height: .92;
    letter-spacing: -0.03em;
    font-size: clamp(42px, 5.4vw, 94px);
    text-shadow: 0 18px 60px rgba(0,0,0,.55);
}

/* Right */
.billboardHero__right{
    display: grid;
    gap: 14px;
    align-content: end;
    justify-items: start;
    padding-bottom: 12px; /* helps align with big title baseline */
}

.billboardHero__lead{
    margin: 0;
    max-width: 50ch;
    color: rgba(255,255,255,.85);
    font-size: clamp(15px, 1.25vw, 18px);
    line-height: 1.65;
    text-shadow: 0 14px 50px rgba(0,0,0,.55);
}

/* Chips */
.billboardHero__chips{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 4px;
}

.heroChip{
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.10);
    color: rgba(255,255,255,.90);
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 13px;
    backdrop-filter: blur(10px);
}

/* Explore bottom center */
.billboardHero__bottom{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 18px;
    padding-bottom: 6px;
}

.exploreBtn{
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: rgba(255,255,255,.86);
    font-weight: 600;
}
.exploreBtn__icon{
    width: 46px;
    height: 46px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.92);
    color: #0b0d12;
    box-shadow: 0 18px 45px rgba(0,0,0,.28);
}
.exploreBtn__text{
    font-size: 14px;
    letter-spacing: .02em;
}

/* Responsive */
@media (max-width: 980px){
    .billboardHero__grid{
        grid-template-columns: 1fr;
        align-items: start;
        min-height: auto;
    }
    .billboardHero__right{
        padding-bottom: 0;
    }
    .billboardHero__bottom{
        margin-top: 22px;
    }
}

@media (max-width: 560px){
    .billboardHero{
        border-radius: 18px;
        min-height: 560px;
    }
    .billboardHero__content{
        padding: 26px 14px 18px;
    }
    .billboardHero__title{
        font-size: clamp(44px, 12vw, 64px);
    }
}
.service__list{
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 8px;
}

.service__list li{
    position: relative;
    padding-left: 18px;
    color: rgb(15, 23, 41); /* adjust if your cards are light */
    line-height: 1.5;
    font-size: 14px;
}

.service__list li::before{
    content: "•";
    position: absolute;
    left: 0;
    top: 0;
    color: rgba(255,255,255,.55); /* adjust if your cards are light */
}
/* Card image header */
.service--industry{
    overflow: hidden; /* ensures rounded corners clip image */
}

.service__media{
    position: relative;
    height: 150px;
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 14px;
}

.service__media img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.03);
    transition: transform .45s ease;
    display: block;
}

.service__shade{
    position: absolute;
    inset: 0;
    background: linear-gradient(
            180deg,
            rgba(0,0,0,.10) 0%,
            rgba(0,0,0,.35) 70%,
            rgba(0,0,0,.55) 100%
    );
}

.service--industry:hover .service__media img{
    transform: scale(1.08);
}

/* Optional: tighter spacing so content feels connected */
.service--industry .service__head{
    margin-top: 2px;
}

/* ===========================
   VENTURES GRID — FULL FIX
   =========================== */

.ventureGrid{
    display:grid;
    grid-template-columns: repeat(12, 1fr);
    gap:18px;
    align-items: stretch;
    margin-top: 14px;
}

@media (max-width: 1024px){
    .ventureGrid{ grid-template-columns: repeat(6, 1fr); }
}
@media (max-width: 640px){
    .ventureGrid{ grid-template-columns: repeat(1, 1fr); }
}

/* Card spans */
.ventureCard{
    grid-column: span 4;
    display:flex;
    flex-direction:column;
    border-radius:18px;
    background:#fff;
    overflow:hidden;
    box-shadow: 0 14px 40px rgba(0,0,0,.08);
    border: 1px solid rgba(15, 23, 42, .06);
    min-height: 100%;
    transition: transform .2s ease, box-shadow .2s ease;
}

.ventureCard:hover{
    transform: translateY(-4px);
    box-shadow: 0 18px 60px rgba(0,0,0,.12);
}

@media (max-width: 1024px){
    .ventureCard{ grid-column: span 3; }
}
@media (max-width: 640px){
    .ventureCard{ grid-column: span 1; }
}

/* EVEN IMAGE HEIGHT */
.ventureCard__media{
    position:relative;
    width:100%;
    height:220px;
    /*background:#0b1220;*/
    overflow:hidden;
}

.ventureCard__media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transform: scale(1.02);
}

/* subtle overlay */
.ventureCard__media::after{
    content:"";
    position:absolute;
    inset:0;
    background: linear-gradient(to bottom, rgba(0,0,0,.00), rgba(0,0,0,.28));
}

/* BODY alignment */
.ventureCard__body{
    display:flex;
    flex-direction:column;
    gap:12px;
    padding:16px 16px 14px;
    flex:1;
}

/* Meta badges */
.ventureCard__meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

/* Title consistent */
.ventureCard h3{
    margin:0;
    font-size:18px;
    line-height:1.25;
    letter-spacing:-0.2px;
    min-height: calc(1.25em * 2);
}

/* Same description height */
.ventureCard p{
    margin:0;
    color:#475569;
    line-height:1.6;

    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;

    min-height: calc(1.6em * 3);
}

/* Tags */
.ventureCard__tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:2px;
}

/* Actions pinned bottom */
.ventureCard__actions{
    display:flex;
    gap:10px;
    margin-top:auto;
    align-items:center;
}

/* Buttons consistent sizes */
.ventureCard__actions .btn{
    height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 14px;
}

.ventureCard__actions .pillBtn{
    width:38px;
    height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
}

/* Badge default look */
.badge{
    display:inline-flex;
    align-items:center;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    line-height:1;
    border:1px solid rgba(15,23,42,.10);
    background: rgba(2,6,23,.04);
}

/* Optional: special badge colors */
.badge--brand{
    background: rgba(99, 102, 241, .12);
    border-color: rgba(99, 102, 241, .30);
}
.badge--gold{
    background: rgba(245, 158, 11, .14);
    border-color: rgba(245, 158, 11, .30);
}

/* Tags look */
.tag{
    font-size:12px;
    padding:6px 10px;
    border-radius:999px;
    background: rgba(148,163,184,.15);
    border:1px solid rgba(148,163,184,.22);
    color:#0f172a;
}
.managementGrid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 14px;
}

.managementCard{
    border: 1px solid rgba(15,23,38,.10);
    background: rgba(255,255,255,.92);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 14px 40px rgba(0,0,0,.08);
    display:flex;
    flex-direction:column;
    min-height: 100%;
    transition: transform .2s ease, box-shadow .2s ease;
}

.managementCard:hover{
    transform: translateY(-4px);
    box-shadow: 0 18px 60px rgba(0,0,0,.12);
}

.managementCard__photo{
    height: 380px;
    background:#0b1220;
    overflow:hidden;
}

.managementCard__photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.managementCard__body{
    padding: 16px;
    display:flex;
    flex-direction:column;
    gap: 8px;
    flex:1;
}

.managementCard__body h3{
    margin:0;
    font-size:20px;
}

.managementCard__role{
    margin:0;
    font-weight:800;
    color: var(--aguila);
}

.managementCard__summary{
    margin:0;
    color: rgba(15,23,42,.70);
    line-height:1.55;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height: calc(1.55em * 3);
}

.managementCard__actions{
    margin-top:auto;
    display:flex;
    gap:10px;
    align-items:center;
}

@media (max-width: 980px){
    .managementGrid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px){
    .managementGrid{
        grid-template-columns: 1fr;
    }

    .managementCard__photo{
        height: 240px;
    }
}

.leaderProfile{
    padding:140px 0 80px;
}

.leaderProfile__card{
    max-width:1100px;
    margin:auto;
    display:grid;
    grid-template-columns:420px 1fr;
    gap:60px;
    align-items:center;
}

.leaderProfile__image{
    border-radius:24px;
    overflow:hidden;
}

.leaderProfile__image img{
    width:100%;
    height:520px;
    object-fit:cover;
    display:block;
}

.leaderProfile__position{
    display:inline-block;
    color:#caa24a;
    font-weight:700;
    margin-bottom:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.leaderProfile__content h1{
    font-size:56px;
    line-height:1;
    margin-bottom:20px;
}

.leaderProfile__intro{
    font-size:18px;
    line-height:1.9;
    color:#475569;
    margin-bottom:24px;
}

.leaderProfile__tags{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.leaderProfile__tags span{
    padding:10px 16px;
    border-radius:999px;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    font-size:14px;
    font-weight:600;
}

.container--narrow{
    max-width:900px;
}

.profileArticle{
    font-size:18px;
    line-height:1.9;
}

.profileArticle h2{
    margin-bottom:24px;
    font-size:32px;
}

.profileArticle p{
    margin-bottom:24px;
    color:#475569;
}
