/* Reduce space above the header/navigation */
#masthead,
.site-header {
    padding-top: 20px !important;
    padding-bottom: 0px !important;
}

/* Target the inner header wrapper (Varia/Shawburn specific) */
#masthead .site-header-wrapper {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Reduce space around branding */
.site-branding {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Reduce space between header and page content */
.site-content,
#content {
    padding-top: 0px !important;
    margin-top: 0 !important;
}


/* === Ways We Can Work Together — Tile Alignment === */

/* Force the columns row to stretch all its columns to equal heights */
.wp-block-columns {
    display: flex !important;
    align-items: stretch !important;
}

/* Each column: flex container that fills the row's height */
.wp-block-columns > .wp-block-column {
    display: flex !important;
    flex-direction: column !important;
}

/* wp-block-group wrapper expands to fill the column */
.wp-block-columns > .wp-block-column > .wp-block-group {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
}

/* Inner container expands to fill the wp-block-group */
.wp-block-columns > .wp-block-column > .wp-block-group > .wp-block-group__inner-container {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
}

/* Normalize horizontal spacing on all wrappers so nothing gets indented */
.wp-block-columns > .wp-block-column,
.wp-block-columns > .wp-block-column > .wp-block-group,
.wp-block-columns > .wp-block-column > .wp-block-group > .wp-block-group__inner-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Normalize horizontal margins on all tile content so everything aligns to the same left edge */
.wp-block-columns .is-service-name,
.wp-block-columns .is-service-description,
.wp-block-columns .wp-block-image,
.wp-block-columns .wp-block-buttons {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Title: reserved space (up to 3 lines), text bottom-aligned */
.wp-block-columns .is-service-name {
    min-height: 4.5em !important;
    display: flex !important;
    align-items: flex-end !important;
    flex-shrink: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0.5em !important;
}

/* Image: fixed height */
.wp-block-columns .wp-block-image {
    margin-top: 0 !important;
    margin-bottom: 1em !important;
    flex-shrink: 0 !important;
}

.wp-block-columns .wp-block-image img {
    height: 280px !important;
    width: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    aspect-ratio: auto !important;
    display: block !important;
}

/* Description: grow to fill remaining space, pushing button down */
.wp-block-columns .is-service-description {
    flex: 1 1 auto !important;
    margin-bottom: 1em !important;
}

/* Button container: sits at bottom */
.wp-block-columns .wp-block-buttons {
    margin-top: auto !important;
    margin-bottom: 0 !important;
    flex-shrink: 0 !important;
}