/* Theme CSS */

/* Global Layout */
body {
    /* Removed max-width constraint to allow full-width blocks */
    margin: 0;
    padding: 0;
}

/* Proper WordPress block layout support */
.wp-site-blocks {
    padding: 0;
}

/* Content area constraint - apply to content, not body */
.wp-block-post-content,
.wp-block-query-loop,
.wp-block-site-content,
.entry-content {
    max-width: var(--wp--style--global--content-size);
    margin: 0 auto;
}

/* Wide blocks support */
.alignwide {
    max-width: var(--wp--style--global--wide-size);
    margin: 0 auto;
}

/* Full-width blocks support */
.alignfull {
    width: 100vw;
    max-width: none;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

/* Layout */
.tsta-site {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.tsta-site-content {
    flex: 1 0 auto;
    padding: 2rem 0;
}

.tsta-container {
    width: 100%;
    max-width: var(--wp--style--global--content-size);
    margin: 0 auto;
    padding: 0 1rem;
}

/* Header */
.tsta-site-header {
    padding: 1rem 0;
    background-color: var(--wp--preset--color--background);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.tsta-site-branding {
    display: flex;
    align-items: center;
}

.tsta-site-title {
    margin: 0;
    font-size: 1.5rem;
}

.tsta-site-title a {
    color: var(--wp--preset--color--foreground);
    text-decoration: none;
}

/* Navigation */
.tsta-main-navigation {
    display: flex;
    align-items: center;
}

.tsta-main-navigation ul {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}

.tsta-main-navigation li {
    margin: 0 1rem;
}

.tsta-main-navigation a {
    color: var(--wp--preset--color--foreground);
    text-decoration: none;
}

/* Content */
.tsta-entry-header {
    margin-bottom: 2rem;
}

.tsta-entry-title {
    margin: 0 0 1rem;
}

.tsta-entry-meta {
    color: #666;
    font-size: 0.875rem;
}

.tsta-entry-content {
    margin-bottom: 2rem;
}

/* Footer */
.tsta-site-footer {
    padding: 2rem 0;
    background-color: var(--wp--preset--color--background);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.tsta-site-info {
    text-align: center;
    font-size: 0.875rem;
    color: #666;
}

/* Responsive */
@media (max-width: 768px) {
    .tsta-main-navigation ul {
        flex-direction: column;
    }

    .tsta-main-navigation li {
        margin: 0.5rem 0;
    }
}

/* Accessibility */
.tsta-screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

.tsta-screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    clip-path: none;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}

/* Image Text Content Styles */
.wp-block-columns.alignwide {
    gap: 2rem;
    align-items: center;
}

.wp-block-columns.alignwide .wp-block-image {
    margin: 0;
}

.wp-block-columns.alignwide .wp-block-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.wp-block-columns.alignwide .wp-block-heading {
    margin-top: 0;
    color: var(--wp--preset--color--foreground);
}

.wp-block-columns.alignwide .wp-block-button__link {
    background-color: var(--wp--preset--color--button);
    color: var(--wp--preset--color--base);
    padding: 0.8rem 1.5rem;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.wp-block-columns.alignwide .wp-block-button__link:hover {
    opacity: 0.9;
}

/* Responsive styles */
@media (max-width: 768px) {
    .wp-block-columns.alignwide {
        flex-direction: column;
    }
    
    .wp-block-columns.alignwide .wp-block-column {
        flex-basis: 100% !important;
    }
}

/* Responsive content padding - apply to content areas, not body */
@media (max-width: 1200px) and (min-width: 769px) {
 
    .wp-block-query-loop,
    .wp-block-site-content,

    .tsta-container {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (max-width: 768px) {
 
    .wp-block-query-loop,
    .wp-block-site-content,
  
    .tsta-container {
        padding-left: 15px;
        padding-right: 15px;
    }
}

/* Footer block specific responsive handling */
@media (max-width: 768px) {
    .wp-block-tourseta-footer {
        padding-left: 0px;
        padding-right: 0px;
    }
}

/* Footer Block Full Support */
.wp-block-tourseta-footer {
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
}

/* Ensure footer content is properly constrained */
.wp-block-tourseta-footer .max-w-7xl {
    max-width: 80rem;
    margin: 0 auto;
    padding: 0 1rem;
}

/* Override any potential conflicts */
.wp-block-group.alignwide .wp-block-tourseta-footer {
    max-width: none !important;
    width: 100% !important;
} 