/*
Theme Name: Center Mirrors Static
Theme URI: https://example.com/
Author: Center Mirrors
Author URI: https://example.com/
Description: Static React/Vite landing site packaged as a WordPress theme.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: center-mirrors-static
*/

.cm-skip-link {
    position: absolute;
    left: -9999px;
}

.cm-skip-link:focus {
    left: 1rem;
    top: 1rem;
    z-index: 100000;
    background: #fff;
    color: #100f0e;
    padding: .75rem 1rem;
}

.cm-header {
    position: fixed;
    top: var(--wp-admin--admin-bar--height, 0);
    left: 0;
    right: 0;
    z-index: 9999;
    padding: 1.5rem 0;
    transition: background .3s ease, border-color .3s ease;
}

.cm-header-inner {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 4rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.cm-logo,
.cm-footer-logo {
    font-family: Fraunces, serif;
    font-size: clamp(1.5rem, 2vw, 2rem);
    color: #1c1b1a;
    text-decoration: none;
}

.cm-primary-menu,
.cm-footer-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    gap: 2.5rem;
}

.cm-primary-menu a {
    color: rgba(28, 27, 26, .82);
    font-family: Inter, sans-serif;
    font-size: .75rem;
    letter-spacing: .18em;
    text-transform: uppercase;
    text-decoration: none;
}

.cm-primary-menu > li:last-child > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #1c1b1a;
    color: #f7f3ec;
    padding: .95rem 1.5rem;
}

.cm-footer {
    background: #100f0e;
    color: #f7f3ec;
    padding: 5rem 4rem 2rem;
}

.cm-footer-inner {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 2fr auto;
    gap: 2rem;
    align-items: start;
}

.cm-footer-logo,
.cm-footer a {
    color: #f7f3ec;
}

.cm-footer-brand p,
.cm-footer-copy {
    color: rgba(247, 243, 236, .6);
}

.cm-footer-menu {
    justify-content: center;
    flex-wrap: wrap;
}

.cm-footer-menu a {
    color: rgba(247, 243, 236, .8);
    text-decoration: none;
}

.cm-wp-content {
    max-width: 980px;
    margin: 0 auto;
    padding: 10rem 1.5rem 5rem;
}

.cm-entry-title {
    font-family: Fraunces, serif;
    font-size: clamp(2.5rem, 6vw, 5rem);
    line-height: 1.05;
    color: #1c1b1a;
    margin: 0 0 2rem;
}

.cm-entry-content,
.cm-entry-description,
.cm-post-card {
    font-family: Inter, sans-serif;
    color: #1c1b1a;
    line-height: 1.7;
}

.cm-post-list {
    display: grid;
    gap: 2rem;
}

.cm-post-card {
    border-bottom: 1px solid #d9d2c5;
    padding-bottom: 2rem;
}

.cm-post-card a {
    color: #1c1b1a;
    text-decoration: none;
}

@media (max-width: 900px) {
    .cm-header-inner {
        padding: 0 1.5rem;
    }

    .cm-primary-navigation {
        display: none;
    }

    .cm-footer {
        padding: 4rem 1.5rem 2rem;
    }

    .cm-footer-inner {
        grid-template-columns: 1fr;
    }
}
