/*
Theme Name: Trust the Brush
Author: Trust the Brush
Description: Custom classic theme for Trust the Brush.
Version: 0.6.1
Text Domain: trust-the-brush
*/
:root{--paper:#FBF6EF;--paper-alt:#F1E6DA;--ink:#2B241E;--ink-soft:#5B5148;--maroon:#7C2333;--maroon-deep:#591723;--charcoal:#524D46;--blush:#EAD9D3;--line:#E1D3C4;--card-bg:#FFFDFA;--shadow:0 18px 40px -22px rgba(43,36,30,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Jost',-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;margin:0;text-wrap:balance}p{margin:0}a{color:inherit}.wrap{max-width:1080px;margin:0 auto;padding:0 32px}
.review-banner{background:var(--maroon);color:#fff;text-align:center;font-size:13px;padding:9px 16px}.navbar{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}
nav{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;max-width:1080px;margin:0 auto}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand svg{width:36px;height:36px}.brand-word{font-family:'Alex Brush',cursive;font-size:27px;color:var(--maroon)}
.nav-links{display:flex;align-items:center;gap:6px;font-size:14px}.nav-links a{text-decoration:none;color:var(--ink-soft);padding:8px 14px;border-radius:20px}.nav-links a:hover{background:var(--paper-alt);color:var(--ink)}.nav-cta{background:var(--maroon);color:#fff!important;border-radius:3px!important}
.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 10px;border-radius:4px}.btn{display:inline-block;padding:13px 26px;border-radius:3px;text-decoration:none;border:1px solid transparent;font:inherit;cursor:pointer}.btn-primary{background:var(--maroon);color:#fff}.btn-ghost{border-color:var(--charcoal)}
section{padding:56px 32px}.alt{background:var(--paper-alt)}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--maroon);font-weight:600}.section-head{text-align:center;max-width:620px;margin:0 auto 38px}.section-head h2{font-size:32px;margin-top:10px}.muted{color:var(--ink-soft);line-height:1.65}
.hero{text-align:center;padding:64px 32px}.hero-mark{width:88px;height:88px;margin:0 auto 20px}.hero h1{font-size:52px;color:var(--maroon)}.hero .tagline{margin-top:10px;font:italic 18px 'Playfair Display',serif;color:var(--ink-soft)}.hero .sub{max-width:600px;margin:18px auto 0;color:var(--ink-soft);line-height:1.65}.hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.feature-card{max-width:820px;margin:0 auto;background:var(--card-bg);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:var(--shadow);display:grid;grid-template-columns:1.1fr 1fr}.feature-art{min-height:280px;background:var(--paper-alt)}.feature-art img{width:100%;height:100%;min-height:280px;object-fit:cover;display:block}.feature-copy{padding:32px;display:flex;flex-direction:column;justify-content:center}.feature-copy h3{font-size:24px;margin-top:8px}.feature-copy p{margin-top:10px;color:var(--ink-soft);line-height:1.6}.feature-copy .btn{margin-top:20px;align-self:flex-start}
.cards{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--card-bg);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}.card-image{aspect-ratio:4/3;background:var(--paper-alt);overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover}.card-body{padding:20px}.card h2,.card h3{font-size:21px}.card p{margin-top:8px;color:var(--ink-soft);line-height:1.5}.details{display:grid;gap:6px;margin:14px 0;color:var(--ink-soft);font-size:14px}.price{font:600 21px 'Playfair Display',serif;color:var(--maroon)}
.page-shell{max-width:980px;margin:0 auto}.page-intro{text-align:center;max-width:680px;margin:0 auto 38px}.page-intro h1{font-size:42px;color:var(--maroon);margin:8px 0 12px}.entry-content{line-height:1.7}.empty{padding:34px;text-align:center;border:1px dashed var(--line);border-radius:8px;color:var(--ink-soft)}
.painting-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.painting-card{text-decoration:none}.gallery-section{margin-top:46px}.gallery-section h2{font-size:29px;margin:6px 0 18px}
.single-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:start}.single-image{border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:var(--shadow);background:var(--paper-alt)}.single-copy h1{font-size:42px;color:var(--maroon);margin:6px 0 18px}.info-box{background:var(--paper-alt);border:1px solid var(--line);border-radius:6px;padding:18px;margin:20px 0}.back{display:inline-block;margin-bottom:22px;color:var(--maroon);font-weight:600;text-decoration:none}
.about-wrap{max-width:760px;margin:0 auto;text-align:center}.about-wrap .entry-content{text-align:left;margin-top:28px}.placeholder-copy{margin-top:28px;padding:24px;background:var(--paper-alt);border:1px solid var(--line);border-radius:8px;color:var(--ink-soft)}
.booking-wrap{max-width:820px;margin:0 auto}.ttb-booking-form{margin-top:30px;background:var(--card-bg);border:1px solid var(--line);border-radius:8px;padding:26px;box-shadow:var(--shadow)}.ttb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ttb-booking-form p{margin-bottom:16px}.ttb-booking-form label{display:block;font-weight:600;margin-bottom:6px}.ttb-booking-form input,.ttb-booking-form select,.ttb-booking-form textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:4px;background:#fff;font:inherit}.ttb-form-notice{padding:14px 16px;border-radius:5px;margin-bottom:16px}.ttb-form-notice.success{background:#edf6ed}.ttb-form-notice.error{background:#f9e8e8}
footer{background:var(--paper-alt);border-top:1px solid var(--line);padding:42px 32px}.foot-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr;gap:32px}.foot-col h4{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);margin:0 0 10px}.foot-bottom{max-width:1080px;margin:28px auto 0;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-soft)}
@media(max-width:850px){.cards,.painting-grid{grid-template-columns:repeat(2,1fr)}.single-layout,.feature-card{grid-template-columns:1fr}}
@media(max-width:720px){.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:12px 20px 18px;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.ttb-form-grid,.foot-grid{grid-template-columns:1fr}}
@media(max-width:560px){section,.hero{padding-left:20px;padding-right:20px}.wrap{padding:0 20px}.hero h1{font-size:42px}.cards,.painting-grid{grid-template-columns:1fr}}

.gallery-booking-cta{margin-top:46px;padding:28px;background:var(--paper-alt);border:1px solid var(--line);border-radius:8px}.gallery-booking-cta h2{margin-top:0;color:var(--maroon)}.gallery-booking-cta p{max-width:720px;margin-bottom:18px}

/* Reliable gallery/event card thumbnails */
.card-image{
    aspect-ratio:4/3;
    background:var(--paper-alt);
    overflow:hidden;
}
.card-image img{
    display:block;
    width:100%;
    height:100%;
    aspect-ratio:4/3;
    object-fit:cover;
}

/* About Renae */
.about-photo{
    max-width:420px;
    margin:28px auto 0;
    border-radius:8px;
    overflow:hidden;
    border:1px solid var(--line);
    box-shadow:var(--shadow);
}
.about-photo img{
    display:block;
    width:100%;
    height:auto;
}

/* Past Events */
.past-events-section{
    margin-top:64px;
    padding-top:48px;
    border-top:1px solid var(--line);
}
.past-event-link{
    display:block;
    height:100%;
    color:inherit;
    text-decoration:none;
}
