/*
 Theme Name:   Dialogue + Design Child Theme
 Theme URI:    https://www.dialogueanddesign.com
 Description:  Divi 5 Child Theme for Dialogue + Design Associates
 Author:       Webbones
 Author URI:   https://webbones.com
 Template:     Divi
 Version:      1.0.5
 Text Domain:  dialogueanddesign
*/

/* Custom CSS for Dialogue + Design */

/* ==========================================================================
   Typography: Cabin & Cabin Condensed (Per Client Brand Selection)
   ========================================================================== */
:root {
    --et_global_heading_font: 'Cabin', sans-serif;
    --et_global_body_font: 'Cabin', sans-serif;
}

body,
p,
li,
input,
textarea,
select,
.et_pb_text,
.et_pb_text p {
    font-family: 'Cabin', sans-serif !important;
}

/* Primary Headings */
h1,
h2,
.et_pb_heading h1,
.et_pb_heading h2,
.et_pb_text h1,
.et_pb_text h2 {
    font-family: 'Cabin', sans-serif !important;
    font-weight: 700 !important;
}

/* Smaller Headings, Subheads & Newsletter Title */
h3,
h4,
h5,
h6,
.et_pb_heading h3,
.et_pb_heading h4,
.et_pb_text h3,
.et_pb_text h4,
.newsletterContainer h4 {
    font-family: 'Cabin Condensed', sans-serif !important;
    font-weight: 700 !important;
}

/* Main Navigation */
.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu > li > a,
.et_pb_fullwidth_menu .et-menu > li > a {
    font-family: 'Cabin Condensed', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px;
}

/* Buttons */
.et_pb_button,
.newsletterContainer input[type="submit"] {
    font-family: 'Cabin Condensed', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px;
}

/* ==========================================================================
   Newsletter Signup Styles (Matching Mockup & Client Notes)
   ========================================================================== */
.newsletterContainer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}
.newsletterContainer h4 {
    width: 100%;
    margin: 0 0 6px 0;
    font-size: 15px;
    font-style: italic;
    color: #04989e;
    text-align: right;
    font-weight: 600;
}
.newsletterContainer input[type="email"] {
    padding: 8px 14px;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
    font-size: 14px;
    background-color: #ffffff;
    color: #333333;
    min-width: 210px;
    box-sizing: border-box;
}
.newsletterContainer input[type="submit"] {
    padding: 8px 18px;
    background-color: #e0724e;
    color: #ffffff;
    border: none;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
    transition: background-color 0.2s ease;
    box-sizing: border-box;
}
.newsletterContainer input[type="submit"]:hover {
    background-color: #c95d3a;
}

/* Footer Newsletter Alignment & Colors (Right-aligned as at top) */
.footer-newsletter .newsletterContainer {
    justify-content: flex-end;
}
.footer-newsletter .newsletterContainer h4 {
    text-align: right;
    color: #ffffff;
}

/* ==========================================================================
   Navigation Bar Refinements (Narrower height, spread out categories)
   ========================================================================== */
.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu-nav > ul.et-menu,
.et_pb_fullwidth_menu .et-menu-nav > ul.et-menu {
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 50px !important;
}
.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu > li,
.et_pb_fullwidth_menu .et-menu > li {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
}
.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu > li > a,
.et_pb_fullwidth_menu .et-menu > li > a {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    color: #ffffff !important;
}

/* ==========================================================================
   Mountain Section Two-Tone Teal Divider (Comp Match: #ffffff + #00989d + #004648)
   ========================================================================== */
.et-db #et-boc .et-l .mountain-course-section.section_has_divider.et_pb_top_divider .et_pb_top_inside_divider,
.mountain-course-section.section_has_divider.et_pb_top_divider .et_pb_top_inside_divider {
    background-image: url("data:image/svg+xml;utf8,<svg width='100%25' height='155px' viewBox='0 0 1280 165' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 53L55 36L120 46L380 118L575 79L801 121L958 88L1280 160V0H0Z' fill='%2300989d'/><path d='M0 10L203 51L467 27L543 38L587 33L727 60L917 27L967 31L1136 1L1280 41V0H0Z' fill='%23ffffff'/></svg>") !important;
    background-size: 100% 155px !important;
    height: 155px !important;
}

/* Position note-taking image to contact the bottom wavy divider */
.mountain-course-section .et_pb_row .et_pb_column_2_5 {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: center !important;
}
.mountain-course-section .et_pb_row .et_pb_column_2_5 .et_pb_image {
    margin-bottom: 35px !important;
    width: 100%;
    text-align: center;
}

/* ==========================================================================
   Collective Course Page Styles
   ========================================================================== */
.collective-card {
    background-color: #00989d;
    border-radius: 20px;
    padding: 36px 40px;
    color: #ffffff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}
.collective-card h3 {
    color: #ffffff !important;
    text-align: center;
    font-size: 22px;
    letter-spacing: 0.5px;
    margin-bottom: 24px !important;
}
.collective-card ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.collective-card ul li {
    position: relative;
    padding-left: 36px !important;
    margin-bottom: 16px !important;
    font-size: 20px;
    line-height: 1.4;
    color: #ffffff !important;
}
.collective-card ul li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: -2px;
    color: #f6ae50;
    font-weight: 700;
    font-size: 24px;
}



