.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-34366 .elementor-element.elementor-element-c795410.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-34366 .elementor-element.elementor-element-c795410 .elementor-heading-title{color:#000000;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-34366 .elementor-element.elementor-element-87bc2f1.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-34366 .elementor-element.elementor-element-b3d2e23.xpro-widget-bg-overlay:before{transition:background 0.3s;}/* Start custom CSS for section, class: .elementor-element-745ace3 */.txmy-cat-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

@media (max-width: 768px) {
    .txmy-cat-grid {
        grid-template-columns: 1fr;
    }
}

.txmy-cat-box {
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.1);
    background: #fff;
}

.txmy-cat-box a {
    text-decoration: none;
    color: inherit;
    display: block;
}

.txmy-cat-image {
    position: relative;
    width: 100%;
    padding-top: 56.25%; /* 16:9 */
    background-size: cover;
    background-position: center;
    border-radius: 12px 12px 0 0;
}

.txmy-cat-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5); /* 50% dark overlay */
    z-index: 1;
}

.txmy-cat-title {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    padding: 10px 20px;
    background: rgba(0,0,0,0.3);
    border-radius: 6px;
}

.txmy-cat-description {
    padding: 16px;
    font-size: 0.95rem;
    color: #333;
    text-align: center;
}/* End custom CSS */