/* ================================================
   TEAM GLAM — Editorial WYSIWYG Content Widget
   ================================================ */

.tg-ecw-wrap {
    width: 100%;
    background-color: #ffffff;
    padding: 100px 40px;
    box-sizing: border-box;
}

.tg-ecw-container {
    max-width: 920px;
    margin: 0 auto;
    width: 100%;
    text-align: left;
}

/* ── Lead Title & Subtitle ── */
.tg-ecw-lead-title {
    font-family: 'beaufort-pro', serif;
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 400;
    color: #111111;
    margin: 0 0 36px;
    line-height: 1.15;
    letter-spacing: -0.01em;
}

.tg-ecw-subtitle {
    font-family: 'beaufort-pro', serif;
    font-size: clamp(22px, 2.2vw, 30px);
    font-weight: 400;
    color: #111111;
    margin: 0 0 40px;
    line-height: 1.25;
}

/* ── WYSIWYG Content Body Formatting ── */
body .tg-ecw-body,
.tg-ecw-body {
    width: 100%;
    font-family: var(--tg-font-body, 'brandon-grotesque', sans-serif);
    font-size: var(--tg-p-size, 18px) !important;
    line-height: var(--tg-p-line-height, 1.3);
    letter-spacing: var(--tg-p-letter-spacing, -0.023em);
    color: #000000;
}

.tg-ecw-body p {
    margin: 0 0 24px;
    font-family: var(--tg-font-body, 'brandon-grotesque', sans-serif);
    font-size: var(--tg-p-size, 18px);
    line-height: var(--tg-p-line-height, 1.3);
    letter-spacing: var(--tg-p-letter-spacing, -0.023em);
}

.tg-ecw-body p:last-child {
    margin-bottom: 0;
}

/* Headings inside WYSIWYG */
.tg-ecw-body h1,
.tg-ecw-body h2,
.tg-ecw-body h3,
.tg-ecw-body h4 {
    font-family: var(--tg-font-heading, 'beaufort-pro', serif);
    font-weight: 400;
    color: #000000;
    margin: 44px 0 20px;
}

.tg-ecw-body h1 { 
    font-size: var(--tg-heading-1-size); 
    line-height: var(--tg-h1-line-height, 0.88); 
    letter-spacing: var(--tg-h1-letter-spacing, -0.01em); 
}
.tg-ecw-body h2 { 
    font-size: var(--tg-heading-2-size); 
    line-height: var(--tg-h2-line-height, 1.01); 
    letter-spacing: var(--tg-h2-letter-spacing, -0.01em); 
}
.tg-ecw-body h3 { 
    font-size: var(--tg-heading-3-size); 
    line-height: var(--tg-h3-line-height, 1.06); 
    letter-spacing: var(--tg-h3-letter-spacing, -0.01em); 
}
.tg-ecw-body h4 { 
    font-size: var(--tg-heading-4-size); 
    line-height: var(--tg-h4-line-height, 1.09); 
    letter-spacing: var(--tg-h4-letter-spacing, -0.01em); 
}

.tg-ecw-body h1:first-child,
.tg-ecw-body h2:first-child,
.tg-ecw-body h3:first-child,
.tg-ecw-body h4:first-child {
    margin-top: 0;
}

/* Links inside WYSIWYG */
.tg-ecw-body a {
    font-family: var(--tg-font-link, 'brandon-grotesque', sans-serif);
    font-size: var(--tg-a-size, 16px);
    letter-spacing: var(--tg-a-letter-spacing, -0.03em);
    color: #C9A96E;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: opacity 0.22s ease;
}

.tg-ecw-body a:hover {
    opacity: 0.75;
}

/* Lists inside WYSIWYG */
.tg-ecw-body ul,
.tg-ecw-body ol {
    margin: 0 0 28px 24px;
    padding: 0;
}

.tg-ecw-body li {
    margin-bottom: 12px;
    line-height: 1.6;
}

.tg-ecw-body li:last-child {
    margin-bottom: 0;
}

/* Bold & Quotes */
.tg-ecw-body strong,
.tg-ecw-body b {
    font-weight: 600;
    color: #111111;
}

.tg-ecw-body blockquote {
    border-left: 2px solid #111111;
    padding-left: 24px;
    margin: 36px 0;
    font-family: 'beaufort-pro', serif;
    font-size: clamp(20px, 2vw, 26px);
    color: #222222;
    font-style: italic;
    line-height: 1.35;
}

/* ── Responsive ── */
@media (max-width: 1024px) {
    .tg-ecw-wrap {
        padding: 60px 30px;
    }
}

@media (max-width: 767px) {
    .tg-ecw-wrap {
        padding: 40px 16px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }
    .tg-ecw-lead-title {
        font-size: clamp(28px, 7.5vw, 42px) !important;
        margin-bottom: 24px !important;
    }
    .tg-ecw-subtitle {
        font-size: clamp(20px, 5.5vw, 24px) !important;
        margin-bottom: 28px !important;
    }
    .tg-ecw-body h1,
    .tg-ecw-body h2,
    .tg-ecw-body h3,
    .tg-ecw-body h4 {
        margin: 32px 0 16px !important;
    }
}
