body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    display: flex;
}

nav {
    width: 250px;
    background-color: #f4f4f4;
    padding: 20px;
    height: 100vh;
    overflow-y: auto;
    border-right: 1px solid #ccc;
    position: fixed;
}

nav ul {
    list-style-type: none;
    padding: 0;
}

nav ul li {
    margin-bottom: 10px;
}

nav ul ul {
    margin-left: 20px;
    margin-top: 5px;
}

nav a {
    text-decoration: none;
    color: #333;
}

nav a:hover {
    color: #007bff;
}

main {
    margin-left: 270px;
    /* Width (250px) + Padding/Margin (20px) */
    padding: 20px;
    flex: 1;
}

/* Base image styles - do NOT force full width globally */
img {
    height: auto;
    border: 1px solid #ddd;
    margin: 10px 0;
    display: block;
}

/* ── Two-column layout: image on left (~35%), text on right ──────────────── */
/* The outer wrapper has "wNfPc" + "yYI8W" in its class name.
   Inside: JNdkSc-SmKAyb > jscontroller-div > .oKdM2c (image) + .oKdM2c (text) */
div[class*="hJDwNd-AhqUyc-wNfPc"][class*="yYI8W"] .JNdkSc-SmKAyb>div {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

/* Image cell (oKdM2c with Kzv0Me) */
div[class*="hJDwNd-AhqUyc-wNfPc"][class*="yYI8W"] .oKdM2c.ZZyype.Kzv0Me {
    flex: 0 0 35%;
    max-width: 35%;
}

/* Text cell (oKdM2c without Kzv0Me) */
div[class*="hJDwNd-AhqUyc-wNfPc"][class*="yYI8W"] .oKdM2c.ZZyype:not(.Kzv0Me) {
    flex: 1;
    min-width: 0;
}

/* Images inside the image column fill their 35% container */
div[class*="hJDwNd-AhqUyc-wNfPc"][class*="yYI8W"] .oKdM2c.ZZyype.Kzv0Me img,
.t3iYD img {
    max-width: 100%;
    width: 100% !important;
    margin: 0;
    border: none;
}

/* ── Full-width rows (banner/header images, qWD73c layout) ──────────────── */
div[class*="hJDwNd-AhqUyc-qWD73c"][class*="yYI8W"] .t3iYD img {
    max-width: 50%;
    width: 100% !important;
    margin: 0;
    border: none;
}