/* Visibility fixes for text-bearing artwork and the practical-learning badge. */
.image-badge {
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    padding: 18px;
    overflow: visible;
    text-align: center;
}

.image-badge strong {
    font-size: 2.1rem;
    line-height: 1;
    white-space: nowrap;
}

.image-badge span {
    max-width: 120px;
    font-size: .6rem;
    line-height: 1.25;
    overflow-wrap: normal;
}

.course-image,
.course-row-image {
    background: #eadfcd;
}

.course-image img,
.course-row-image img {
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
}

@media (max-width: 900px) {
    .image-badge {
        padding: 13px;
    }

    .image-badge strong {
        font-size: 1.75rem;
    }

    .image-badge span {
        max-width: 100px;
        font-size: .52rem;
    }
}

@media (max-width: 600px) {
    .image-badge strong {
        font-size: 1.5rem;
    }

    .image-badge span {
        max-width: 88px;
        font-size: .48rem;
    }

    .course-row-image img {
        height: auto;
    }
}
.social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 25px;
}

.social-links a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 7px 14px 7px 7px;
    border: 1px solid rgba(232, 196, 153, .26);
    background: rgba(255, 255, 255, .025);
    color: rgba(255, 255, 255, .78);
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .04em;
    transition: background-color .2s, border-color .2s, color .2s, transform .2s;
}

.social-icon {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid rgba(232, 196, 153, .18);
    background: linear-gradient(145deg, rgba(232, 196, 153, .17), rgba(185, 79, 43, .15));
    color: #e8c499;
}

.social-icon svg {
    width: 17px;
    height: 17px;
    fill: currentColor;
}

.social-links a:hover {
    border-color: rgba(232, 196, 153, .72);
    background: rgba(232, 196, 153, .08);
    color: #fff;
    transform: translateY(-2px);
}

.social-links a:hover .social-icon {
    border-color: rgba(232, 196, 153, .5);
    background: #e8c499;
    color: #17110d;
}
.gallery-hero {
    background-image: linear-gradient(90deg, rgba(20,10,6,.82), rgba(20,10,6,.2)), url('../images/hero.jpg');
}
/* Professional course content */
.course-grid{grid-template-columns:repeat(2,1fr)}
.course-card:nth-child(2){transform:none}
.course-grid .course-card:last-child{grid-column:auto;width:auto}
.course-image{aspect-ratio:1/1;overflow:hidden}
.course-image img{height:100%;object-fit:cover}
.course-row-image{aspect-ratio:1/1;overflow:hidden}
.course-row-image img{height:100%;object-fit:cover}
.topics-title{margin:25px 0 12px;font-size:.72rem;letter-spacing:.11em;text-transform:uppercase}
.course-topics{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;margin:0 0 28px;padding:20px 0 20px 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:.84rem}
.certification-section{background:var(--ink);color:#fff}
.certification-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.18)}
.certification-card{min-height:280px;padding:40px;border-right:1px solid rgba(255,255,255,.18)}
.certification-card:first-child{border-left:1px solid rgba(255,255,255,.18)}
.certification-card span,.benefits-grid b{color:var(--rust);font-size:.7rem}
.certification-card h3{margin:70px 0 14px;font-size:2rem}
.certification-card p{max-width:470px;color:rgba(255,255,255,.62)}
.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.benefits-grid article{min-height:230px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.benefits-grid h3{margin:45px 0 12px;font-size:1.35rem}
.benefits-grid p{color:var(--muted);font-size:.86rem}
.founders-section{background:var(--cream)}
.founder-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.founder-profile{display:grid;grid-template-rows:auto 1fr;background:#fff}
.founder-photo{aspect-ratio:4/5;overflow:hidden;background:#eadfcd}
.founder-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.founder-copy{display:flex;flex-direction:column;padding:34px;border-top:1px solid var(--line)}
.founder-role{color:var(--rust);font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.founder-copy h3{margin:12px 0 18px;font-size:2rem}
.founder-copy p{color:var(--muted);font-size:.92rem;line-height:1.75}
.founder-social{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:22px}
.founder-social a{display:inline-flex;align-items:center;gap:18px;min-height:42px;padding:0 13px;border:1px solid var(--line);color:var(--ink);font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;transition:background-color .2s,border-color .2s,color .2s,transform .2s}
.founder-social a:hover{border-color:var(--rust);background:var(--rust);color:#fff;transform:translateY(-2px)}
@media(max-width:900px){.course-grid{grid-template-columns:1fr 1fr}.benefits-grid{grid-template-columns:1fr 1fr}.founder-grid{grid-template-columns:1fr}.founder-profile{grid-template-columns:.75fr 1fr;grid-template-rows:auto}.founder-photo{aspect-ratio:auto;min-height:100%}.founder-copy{border-top:0;border-left:1px solid var(--line)}}
@media(max-width:600px){.page-hero h1,.contact-copy h1{font-size:2.7rem;line-height:1.08}.course-grid,.certification-grid,.benefits-grid{grid-template-columns:1fr}.course-topics{grid-template-columns:1fr}.certification-card,.certification-card:first-child{border-left:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}.course-row-image{aspect-ratio:4/3}.founders-section .section-heading h2{font-size:2.3rem;line-height:1.08}.founder-profile{grid-template-columns:1fr}.founder-photo{aspect-ratio:4/5;min-height:0}.founder-copy{padding:26px;border-top:1px solid var(--line);border-left:0}.founder-copy h3{font-size:1.65rem}}
@media(max-width:600px){.hero-media img{object-position:54% center}}
