.tripetto-runner-chat *,
.tripetto-runner-classic * {
    font-size: 18px !important;
    line-height: 1.7 !important;
}

.tripetto-runner-chat input,
.tripetto-runner-classic input,
.tripetto-runner-chat textarea,
.tripetto-runner-classic textarea {
    font-size: 18px !important;
}

.tripetto-runner-chat button,
.tripetto-runner-classic button {
    font-size: 16px !important;
}

/* Workshop card equal height fix */
.elementor-element-a074882,
.elementor-element-98e42cd,
.elementor-element-4435fe9,
.elementor-element-920b0ac,
.elementor-element-f077880 {
	  --align-items: stretch !important;
	  align-items: stretch !important;
}

/* Make card wrappers fill grid cell height */
.elementor-element-a3f2cf2,
.elementor-element-9fb4708,
.elementor-element-7ad987e,
.elementor-element-f630c99,
.elementor-element-fa12da8,
.elementor-element-ac4517c,
.elementor-element-1099fd7,
.elementor-element-62bf0aa,
.elementor-element-67f2d69,
.elementor-element-3eba60d,
.elementor-element-425ad7a,
.elementor-element-c9717ba,
.elementor-element-b3dde30 {
	  height: 100%;
	  align-self: stretch;
}

/* Make inner cards stretch and push button to bottom */
.elementor-element-fde9bcf,
.elementor-element-995e0c2,
.elementor-element-3fb0622,
.elementor-element-44bd414,
.elementor-element-2a2b605,
.elementor-element-2e56356,
.elementor-element-7ad987e,
.elementor-element-f630c99,
.elementor-element-164a2dd,
.elementor-element-fa12da8,
.elementor-element-ffc69a1,
.elementor-element-ac4517c,
.elementor-element-ef555ee,
.elementor-element-8a4eca6,
.elementor-element-2677298,
.elementor-element-9f0daa3,
.elementor-element-3eba60d,
.elementor-element-07ac8a5,
.elementor-element-1acd744,
.elementor-element-9f4ac91 {
	  display: flex !important;
	  flex-direction: column !important;
	  justify-content: space-between !important;
	  height: 100%;
}
}
}
}

/* Fix hero CTA buttons to stay on one line on mobile */
@media (max-width: 767px) {
  .elementor-element-84af739 .elementor-button {
    padding: 12px 16px !important;
    font-size: 13px !important;
  }
  .elementor-element-84af739 .elementor-button-text {
    white-space: nowrap !important;
  }
  .elementor-element-0a62a16 {
    --padding-left: 20px !important;
    --padding-right: 20px !important;
  }
}

/* ====================================
   BLOG PAGE - CLEAN REDESIGN
   Left sidebar with categories + card grid
   ==================================== */

/* 1. Layout: flex row - sidebar LEFT, content RIGHT */
.blog .content_wrap,
.archive .content_wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 28px !important;
    padding: 30px 24px !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* 2. Override theme width on .content to allow flex growth */
body.body_style_wide:not(.expand_content) .blog [class*="content_wrap"] > .content,
body.body_style_wide:not(.expand_content) .archive [class*="content_wrap"] > .content {
    width: auto !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    float: none !important;
}

/* 3. Override sidebar theme width */
body.body_style_wide:not(.expand_content) .blog [class*="content_wrap"] > .sidebar,
body.body_style_wide:not(.expand_content) .archive [class*="content_wrap"] > .sidebar {
    width: 230px !important;
    min-width: 230px !important;
    max-width: 230px !important;
}

/* 4. Sidebar to LEFT */
.blog .sidebar.widget_area,
.archive .sidebar.widget_area {
    order: -1 !important;
    width: 230px !important;
    min-width: 230px !important;
    max-width: 230px !important;
    flex-shrink: 0 !important;
    position: sticky !important;
    top: 80px !important;
    float: none !important;
    padding: 0 !important;
    background: transparent !important;
    display: block !important;
}

/* 5. Main content takes remaining width */
.blog .content,
.archive .content {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    float: none !important;
}

/* 6. Sidebar inner padding reset */
.blog .sidebar .sidebar_inner,
.archive .sidebar .sidebar_inner {
    padding: 0 !important;
}

/* 7. Fix widget display */
.blog .sidebar .widget,
.archive .sidebar .widget {
    display: block !important;
    background: #fafafa !important;
    border: 1px solid #ebebeb !important;
    border-radius: 10px !important;
    padding: 16px !important;
    margin-bottom: 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* 8. Hide empty widgets in sidebar */
.blog .sidebar .sidebar_inner > .widget:nth-child(2):not(.widget_search),
.archive .sidebar .sidebar_inner > .widget:nth-child(2):not(.widget_search) {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: none !important;
    min-height: 0 !important;
    display: none !important;
}

/* 9. Sidebar headings */
.blog .sidebar .widget .wp-block-heading,
.archive .sidebar .widget .wp-block-heading {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    color: #222 !important;
    margin: 0 0 12px 0 !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #e0e0e0 !important;
}

/* 10. Sidebar category list - no bullets */
.blog .sidebar ul,
.archive .sidebar ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.blog .sidebar ul li,
.archive .sidebar ul li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
    list-style: none !important;
}

.blog .sidebar ul li::before,
.archive .sidebar ul li::before,
.blog .sidebar ul li::marker,
.archive .sidebar ul li::marker {
    display: none !important;
    content: none !important;
}

.blog .sidebar ul li:last-child,
.archive .sidebar ul li:last-child {
    border-bottom: none !important;
}

.blog .sidebar ul li a,
.archive .sidebar ul li a {
    display: block !important;
    padding: 7px 8px !important;
    color: #222 !important;
    font-size: 13px !important;
    text-decoration: none !important;
    border-radius: 5px !important;
    transition: all 0.15s !important;
    line-height: 1.4 !important;
}

.blog .sidebar ul li a:hover,
.archive .sidebar ul li a:hover {
    background: #ff72aa !important;
    color: #fff !important;
    padding-left: 12px !important;
}

/* 11. Merge CATEGORIES heading and list boxes */
.blog .sidebar .sidebar_inner > .widget:nth-child(3),
.archive .sidebar .sidebar_inner > .widget:nth-child(3) {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 8px !important;
}

.blog .sidebar .sidebar_inner > .widget:nth-child(4),
.archive .sidebar .sidebar_inner > .widget:nth-child(4) {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-top: none !important;
    padding-top: 4px !important;
    margin-top: 0 !important;
}

/* 12. Posts grid layout - 2 columns */
.blog .posts_container.classic_2,
.archive .posts_container.classic_2 {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
    width: 100% !important;
}

/* 13. Remove column wrapper constraints */
.blog .posts_container.classic_2 .column-1_2,
.archive .posts_container.classic_2 .column-1_2 {
    display: block !important;
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* 14. Post article cards - SaaS style: white bg, no border, bottom glow */
.blog .post_item.post_layout_classic_2,
.archive .post_item.post_layout_classic_2 {
    background: #fff !important;
    border: none !important;
    border-radius: 12px !important;
    overflow: visible !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.06), 0 8px 24px rgba(0,0,0,0.06), 0 16px 32px -8px rgba(0,0,0,0.08) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.blog .post_item.post_layout_classic_2:hover,
.archive .post_item.post_layout_classic_2:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.06), 0 16px 32px rgba(0,0,0,0.10), 0 24px 48px -8px rgba(255,114,170,0.20) !important;
}

/* 15. Post featured image */
.blog .post_item.post_layout_classic_2 .post_featured img,
.archive .post_item.post_layout_classic_2 .post_featured img {
    width: 100% !important;
    height: 165px !important;
    object-fit: cover !important;
    display: block !important;
}

/* 16. Post header area */
.blog .post_item.post_layout_classic_2 .post_header,
.archive .post_item.post_layout_classic_2 .post_header {
    padding: 16px 18px 4px !important;
}

/* 17. Category tags - pink brand colour, slightly rounded */
.blog .post_item.post_layout_classic_2 .post_category,
.archive .post_item.post_layout_classic_2 .post_category {
    margin-bottom: 10px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
}

.blog .post_item.post_layout_classic_2 .post_category a,
.archive .post_item.post_layout_classic_2 .post_category a {
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    color: #fff !important;
    background: #ff72aa !important;
    padding: 3px 9px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    display: inline-block !important;
    white-space: nowrap !important;
    line-height: 1.6 !important;
}

.blog .post_item.post_layout_classic_2 .post_meta_item_cat_separator,
.archive .post_item.post_layout_classic_2 .post_meta_item_cat_separator {
    display: none !important;
}

/* 18. Post title - prominent, black, larger */
.blog .post_item.post_layout_classic_2 .post_title,
.archive .post_item.post_layout_classic_2 .post_title {
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 0 0 8px !important;
}

.blog .post_item.post_layout_classic_2 .post_title a,
.archive .post_item.post_layout_classic_2 .post_title a {
    color: #111 !important;
    text-decoration: none !important;
}

.blog .post_item.post_layout_classic_2 .post_title a:hover,
.archive .post_item.post_layout_classic_2 .post_title a:hover {
    color: #ff72aa !important;
}

/* 19. Post meta (date/comments) - small, grey */
.blog .post_item.post_layout_classic_2 .post_meta,
.archive .post_item.post_layout_classic_2 .post_meta {
    padding: 0 18px 10px !important;
    font-size: 11px !important;
    color: #888 !important;
}

/* 20. Post excerpt - smaller than title, dark grey */
.blog .post_item.post_layout_classic_2 .post_content,
.archive .post_item.post_layout_classic_2 .post_content {
    padding: 0 18px 18px !important;
    flex: 1 !important;
}

.blog .post_item.post_layout_classic_2 .post_content_inner p,
.archive .post_item.post_layout_classic_2 .post_content_inner p {
    font-size: 13px !important;
    color: #444 !important;
    line-height: 1.65 !important;
    margin: 0 !important;
    font-weight: 400 !important;
}

/* 21. Remove sticky corner triangle */
.sticky:not(.post_layout_custom) .label_sticky {
    display: none !important;
}

/* 22. Pagination */
.blog .navigation.pagination,
.archive .navigation.pagination {
    grid-column: 1 / -1 !important;
    margin-top: 10px !important;
}

/* 23. Search widget styling */
.blog .sidebar .wp-block-search__input,
.archive .sidebar .wp-block-search__input {
    border: 1px solid #e0e0e0 !important;
    border-radius: 5px !important;
    padding: 8px 10px !important;
    font-size: 13px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    color: #222 !important;
}

/* 24. Responsive */
@media (max-width: 768px) {
    .blog .content_wrap,
    .archive .content_wrap {
        flex-direction: column !important;
    }
    .blog .sidebar.widget_area,
    .archive .sidebar.widget_area {
        order: 0 !important;
        width: 100% !important;
        min-width: unset !important;
        max-width: 100% !important;
        position: static !important;
    }
    .blog .posts_container.classic_2,
    .archive .posts_container.classic_2 {
        grid-template-columns: 1fr !important;
    }
    body.body_style_wide:not(.expand_content) .blog [class*="content_wrap"] > .content,
    body.body_style_wide:not(.expand_content) .archive [class*="content_wrap"] > .content {
        width: 100% !important;
    }
}