/* Nascar — phase 2. All measurements remain adjustable without Elementor. */
:root{--font-nascar:"Nascar Open Sans",Arial,Helvetica,sans-serif;--color-text:#072c73;--color-heading:#072c73;--color-accent:#d13359;--color-accent-dark:#ad2147;--color-soft:#fff3f8;--color-white:#fff;--container:1100px;--header-height:88px;--radius:6px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--color-text);font-family:var(--font-nascar);line-height:1.55;-webkit-font-smoothing:antialiased}img,svg{max-width:100%;height:auto}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid #285b92;outline-offset:3px}.screen-reader-text{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.screen-reader-text:focus{clip-path:none;width:auto;height:auto;z-index:9999;background:#fff;padding:12px}.nascar-container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}
.site-header{position:relative;z-index:50;background:#fff;border-bottom:1px solid #eee7eb}.site-header__inner{min-height:var(--header-height);display:flex;align-items:center;justify-content:space-between;gap:32px}.site-logo{display:inline-flex;align-items:center;flex:none;text-decoration:none}.site-logo img{display:block;max-width:210px;max-height:67px;width:auto;object-fit:contain}.site-logo__wordmark{font-size:clamp(23px,3vw,31px);font-weight:800;letter-spacing:-.035em;color:var(--color-accent)}.site-logo__wordmark span{font-weight:400;color:#606068}.site-nav{margin-left:auto}.site-nav>ul{display:flex;align-items:center;gap:clamp(14px,2vw,28px);list-style:none;padding:0;margin:0}.site-nav li{position:relative;list-style:none}.site-nav a{display:block;padding:15px 0;text-decoration:none;color:#41414a;font-size:14px;font-weight:600;line-height:1.3;transition:color .18s}.site-nav a:hover,.site-nav .current-menu-item>a,.site-nav .current-menu-ancestor>a{color:var(--color-accent)}.site-nav .sub-menu{display:none;position:absolute;left:-14px;top:100%;min-width:215px;z-index:5;background:white;padding:10px 16px;box-shadow:0 14px 40px #1d15221f;border-radius:0 0 8px 8px}.site-nav .sub-menu a{padding:11px 2px}.site-nav .menu-item-has-children:hover>.sub-menu,.site-nav .menu-item-has-children:focus-within>.sub-menu{display:block}.site-nav>ul>li:last-child>a{padding:13px 24px;border:1px solid var(--color-accent);background:var(--color-accent);color:#fff;border-radius:var(--radius);white-space:nowrap}.site-nav>ul>li:last-child>a:hover{background:var(--color-accent-dark)}
.site-menu-toggle{display:none;width:44px;height:44px;border:1px solid #eee;border-radius:5px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px}.site-menu-toggle span{display:block;width:21px;height:2px;background:#333;transition:transform .2s,opacity .2s}.site-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.site-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.site-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg)}
.site-main{min-height:35vh}.entry-content{margin-block:48px}.nascar-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 32px;border:1px solid var(--color-accent);border-radius:var(--radius);text-decoration:none;background:var(--color-accent);color:#fff;font-size:15px;font-weight:700;transition:background .2s,transform .2s}.nascar-button:hover{background:var(--color-accent-dark);transform:translateY(-2px)}.site-footer{padding:34px 0;background:#f8f6f7;color:#666}.site-footer .menu{display:flex;flex-wrap:wrap;gap:20px;list-style:none;padding:0}.site-footer a{text-decoration:none}
@media(max-width:1050px){:root{--header-height:72px}.site-header__inner{gap:15px}.site-logo img{max-width:175px;max-height:56px}.site-menu-toggle{display:flex;margin-left:auto}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #f0e8ec;padding:10px max(20px,calc((100vw - var(--container))/2)) 22px;max-height:calc(100dvh - var(--header-height));overflow-y:auto;box-shadow:0 18px 25px #0000000c}.site-nav.is-open{display:block}.site-nav>ul{display:block}.site-nav a{padding:13px 0;font-size:16px}.site-nav .sub-menu{position:static;display:block;box-shadow:none;padding:0 0 0 18px;min-width:0;background:transparent}.site-nav .sub-menu a{font-size:14px;padding:10px 0}.site-nav>ul>li:last-child>a{display:inline-flex;margin-top:10px;padding:12px 25px}}
@media(max-width:600px){.nascar-container{width:min(calc(100% - 32px),var(--container))}.site-logo img{max-width:150px}.site-footer{padding:24px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* Shared geometry: all custom sections align to the same 1100px grid. */
.nascar-container {
    width: min(1100px, calc(100% - 40px));
    max-width: 100%;
    margin-inline: auto;
}

/* The front page may use Gutenberg's constrained layout. Let custom
   full-width sections escape it without affecting their inner container. */
.site-main > .entry-content,
.site-main > .entry-content > .wp-block-post-content {
    max-width: none;
}

@media (max-width: 600px) {
    .nascar-container {
        width: calc(100% - 32px);
    }
}


/*
 * Nascar Amaxa — thin branded scrollbar.
 * Firefox uses scrollbar-width/color; Chromium and Safari use ::-webkit-scrollbar.
 */
html {
    scrollbar-width: thin;
    scrollbar-color: #EC616C #F9F9F9;
}

::-webkit-scrollbar {
    width: 7px;
    height: 7px;
}

::-webkit-scrollbar-track {
    background: #F9F9F9;
}

::-webkit-scrollbar-thumb {
    background: #EC616C;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: #D13359;
}


/* -----------------------------------------------------------
   Footer — Nascar Amaxa
   ----------------------------------------------------------- */
.site-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 67px;
    padding: 20px 0;
    background-color: #222222;
    color: #818181;
}

.site-footer__inner {
    width: min(1100px, calc(100% - 32px));
    margin-inline: auto;
}

.site-footer__copyright {
    margin: 0;
    color: #818181;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
}

/* Full-width Gutenberg sections in standard WordPress pages. */
.page .site-main > article > .entry-content { margin-block: 0; }
.page .site-main > article > .entry-content > .wp-block-acf-nascar-scars-heading,
.page .site-main > article > .entry-content > .wp-block-acf-nascar-scars-content { max-width: none; }


/* -----------------------------------------------------------
   Site-wide sticky footer

   Keep the footer at the bottom of short pages while allowing it
   to follow content naturally on longer pages. No fixed positioning.
   ----------------------------------------------------------- */
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh;
}

body > .site-main {
    flex: 1 0 auto;
    width: 100%;
}

body > .site-header,
body > .site-footer {
    flex-shrink: 0;
}

body > .site-footer {
    margin-top: auto;
}
