/* =========================================
   OPTIVIEW TWO COLUMN - MAIN LAYOUT
   ========================================= */
.optiview-two-column {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto 1fr;
    gap: 30px 50px;
    align-items: start;
    padding: 70px 24px;
}

.optiview-headings { grid-area: title; }
.optiview-image-area { grid-area: image; }
.optiview-content-area { grid-area: content; }

/* Default positioning (Image on the right) */
.optiview-two-column,
.optiview-two-column.image-on-right {
    grid-template-areas: 
        "title image"
        "content image" !important;
}

/* Alternative positioning (Image on the left) */
.optiview-two-column.image-on-left {
    grid-template-areas: 
        "image title"
        "image content" !important;
}

/* =========================================
   TYPOGRAPHY & CONTENT STYLES
   ========================================= */
.optiview-title {
    font-size: 40px;
    padding-bottom: 20px !important;
    margin-bottom: 0;
    line-height: 1.1;
    color: #ffffff;
}

.optiview-eyebrow {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
    display: inline-block;
}

.optiview-subheading {
    font-size: 20px;
    font-weight: 600;
    margin-top: 5px;
    margin-bottom: 15px;
    line-height: 1.4;
    display: inline-block;
}

.optiview-paragraph p {
    word-break: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    max-width: 100%;
}

.optiview-paragraph {
    font-size: 1.1rem;
    line-height: 1.5;
    margin-bottom: 20px;
	color: #fff !important;
	font-weight: 500 !important;
}

.optiview-paragraph p {
	color: #fff !important;
	font-weight: 500 !important;
}

/* =========================================
   MEDIA (IMAGES & VIDEO)
   ========================================= */
.optiview-media {
    width: 100%;
    height: auto;
    border-radius: 8px;
    display: block;
}

/* =========================================
   LIST & BUTTON STYLES
   ========================================= */
.optiview-check-list {
    list-style: none;
    padding: 0;
    margin: 30px 0;
}

.optiview-check-list li {
    display: flex;
    align-items: center; /* Vertically center the icon with the text */
    column-gap: 0.5em; /* Requested spacing */
    margin-bottom: 20px;
    font-size: 17px;
    color: #fff;
    font-weight: 500;
}

.optiview-check-list li::before {
    content: "";
    display: inline-block;
    flex-shrink: 0; 
    
    width: 24px;
    height: 24px;
    text-align: center;
    margin-right: 10px;
    margin-bottom: 0px;
    border-radius: 25px;
    
    /* 1. White checkmark SVG (Top layer) */
    /* 2. Theme's global color gradient (Bottom layer) */
    background-image: 
        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>'),
        linear-gradient(99deg, var(--global-color-9), var(--global-color-8));
        
    /* Sizing and positioning for both layers */
    background-size: 14px, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

.optiview-two-column .gb-button-32267258 {
    margin-top: 0px !important;
}

/* =========================================
   MOBILE RESPONSIVE
   ========================================= */
@media (max-width: 768px) {

    .optiview-two-column,
    .optiview-two-column.image-on-right,
    .optiview-two-column.image-on-left {
        grid-template-columns: 1fr !important; 
        padding: 40px 24px;
        margin: 0px;
        
        /* HERE IS THE SOLUTION FOR THOMAS: Title -> Image -> Content */
        grid-template-areas: 
            "title"
            "image"
            "content" !important;
        gap: 20px;
    }
    
    .optiview-title {
        font-size: 28px;
        text-align: left;
    }
    
    .optiview-check-list li {
        align-items: flex-start; 
    }

    .optiview-check-list li::before {
        margin-top: 2px;
    }
}

.optiview-subheading {
    color: transparent;
    font-size: 16px !important;
    text-transform: uppercase;
    line-height: 1.58;
    font-weight: 600;
    letter-spacing: 0.15em;
    background-clip: text;
}