/*
Theme Name: Heritage Olive California
Theme URI: https://heritageolivecalifornia.com
Author: Heritage Olive California
Description: Custom luxury specimen olive tree theme for Heritage Olive California.
Version: 2.0.0
Text Domain: heritage-olive-california
*/
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Inter:wght@400;500;600&family=IBM+Plex+Mono:wght@500&display=swap');
:root{--grove:#2B3A26;--grove-deep:#202B1C;--limestone:#EDE7D9;--limestone-light:#F5F1E6;--umber:#4A3B2A;--gold:#A6812C;--sage:#B9C4A6;--paper:#FBF9F4}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:'Inter',sans-serif;color:var(--umber);background:var(--paper);-webkit-font-smoothing:antialiased}.display,h1,h2,h3{font-family:'Fraunces',serif}.mono{font-family:'IBM Plex Mono',monospace;letter-spacing:.06em}a{color:inherit;text-decoration:none}
.site-nav{display:flex;align-items:center;justify-content:space-between;padding:14px 48px;background:var(--paper);border-bottom:1px solid rgba(74,59,42,.08);position:relative;z-index:10}.brand img{height:76px;width:auto;display:block}.nav-links{display:flex;gap:28px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;align-items:center}.nav-links a{opacity:.75}.nav-links a:hover,.nav-links a.active{opacity:1;color:var(--gold)}.nav-cta,.btn{font-size:12px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--umber);padding:12px 20px;border-radius:2px;display:inline-block}.btn-light{border-color:var(--limestone-light);color:var(--limestone-light)}.btn-gold{background:var(--gold);border-color:var(--gold);color:#fff}
.hero{min-height:72vh;background:linear-gradient(90deg,rgba(32,43,28,.88),rgba(32,43,28,.35)),linear-gradient(135deg,#566447,#20291A);display:flex;align-items:center;padding:80px 8vw;color:var(--limestone-light)}.hero-inner{max-width:760px}.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sage);display:block;margin-bottom:18px}.hero h1{font-size:clamp(48px,7vw,86px);line-height:.98;font-weight:500;margin:0 0 24px}.hero p{font-size:19px;line-height:1.65;max-width:660px;color:rgba(245,241,230,.82)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.section{padding:90px 48px}.section-inner{max-width:1180px;margin:0 auto}.section-kicker{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.section h2{font-size:clamp(34px,5vw,56px);font-weight:500;color:var(--grove);margin:12px 0 18px}.lead{font-size:17px;line-height:1.75;max-width:760px}.cream{background:var(--limestone-light)}.grove{background:var(--grove);color:var(--limestone-light)}.grove h2{color:var(--limestone-light)}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:44px}.feature{border-top:1px solid rgba(74,59,42,.2);padding-top:22px}.feature h3{font-size:24px;color:var(--grove);font-weight:500;margin:0 0 10px}.feature p{line-height:1.65;opacity:.76}
.pagehead{background:var(--grove);color:var(--limestone-light);padding:64px 48px 56px;text-align:center}.pagehead h1{font-size:clamp(32px,4.4vw,48px);font-weight:500;margin:0}.pagehead p{max-width:600px;margin:16px auto 0;font-size:16px;color:rgba(245,241,230,.78);line-height:1.6}.filters{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;padding:32px 48px;background:var(--limestone-light);border-bottom:1px solid rgba(74,59,42,.1)}.filter-pill{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:9px 16px;border:1px solid rgba(74,59,42,.25);border-radius:20px;opacity:.75}.filter-pill.active{background:var(--grove);color:var(--limestone-light);border-color:var(--grove);opacity:1}.collection{padding:80px 48px 100px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:1180px;margin:0 auto}.specimen{background:var(--limestone-light);border:1px solid rgba(74,59,42,.12);transition:.25s}.specimen:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(43,58,38,.14)}.specimen-photo{aspect-ratio:4/3;background:linear-gradient(135deg,#3B4A2F,#20291A)}.specimen-tag{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:var(--grove);color:var(--limestone-light)}.specimen-id{font-size:12px}.specimen-status{font-size:10px;text-transform:uppercase;color:var(--sage)}.reserved{color:#D9A441}.placed{color:rgba(245,241,230,.4)}.specimen-body{padding:20px 18px 24px}.specimen-body h3{font-size:19px;font-weight:500;color:var(--grove);margin:0 0 6px}.specimen-meta{font-size:13px;opacity:.65;line-height:1.5;margin-bottom:16px}.specimen-cta{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:2px;display:inline-block}
.process{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px}.step{padding:24px;border:1px solid rgba(74,59,42,.15)}.step .num{color:var(--gold);font-family:'IBM Plex Mono',monospace}.step h3{font-size:22px;color:var(--grove);font-weight:500}.content-page{min-height:55vh}.content-page .wp-content{max-width:850px;margin:0 auto;font-size:17px;line-height:1.8}
footer{padding:58px 48px 38px;background:var(--grove-deep);color:rgba(245,241,230,.65)}.footer-inner{max-width:1180px;margin:0 auto;text-align:center}.footer-brand{font-family:'Fraunces',serif;font-size:25px;color:var(--limestone-light);margin-bottom:10px}.fine{font-size:12px;opacity:.7;margin-top:10px}
@media(max-width:900px){.site-nav{padding:12px 20px}.nav-links{display:none}.brand img{height:48px}.hero{padding:70px 24px}.section,.collection{padding:65px 24px}.grid,.feature-grid,.process{grid-template-columns:1fr}.pagehead{padding:54px 24px}.filters{padding:26px 20px}.nav-cta{font-size:10px;padding:10px 12px}}


/* v1.1 — branded hero */
.hero.hero-branding{min-height:82vh;background:linear-gradient(180deg,#31412b 0%,#202f1d 100%);display:flex;align-items:center;justify-content:center;padding:72px 7vw 64px;color:var(--limestone-light);text-align:center}
.hero-centered{width:min(1040px,100%);max-width:none;margin:0 auto;display:flex;flex-direction:column;align-items:center}
.hero-logo{width:min(760px,82vw);height:auto;display:block;margin:0 auto 30px;filter:drop-shadow(0 18px 32px rgba(0,0,0,.12));background:transparent}
.hero-statement{font-size:clamp(20px,2.35vw,34px)!important;line-height:1.6!important;max-width:1040px!important;margin:0 auto!important;color:rgba(245,241,230,.9)!important;font-weight:400}
.hero-actions{justify-content:center;margin-top:42px}
.hero-actions .btn{font-size:14px;padding:18px 34px;min-width:280px}
.hero-markets{margin:48px auto 0!important;font-size:13px!important;line-height:1.6!important;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,241,230,.58)!important;max-width:940px!important}
@media(max-width:900px){.brand img{height:62px}.hero.hero-branding{min-height:auto;padding:52px 22px 48px}.hero-logo{width:min(690px,96vw);margin-bottom:22px}.hero-statement{font-size:21px!important;line-height:1.55!important}.hero-actions{width:100%;gap:12px;margin-top:30px}.hero-actions .btn{width:100%;min-width:0;padding:16px 18px}.hero-markets{margin-top:34px!important;font-size:11px!important;letter-spacing:.12em}}

/* =========================================
   HERITAGE OLIVE HERO - FINAL
   ========================================= */

.hero.hero-branding {
    background: #102c19 !important;
    background-image: none !important;
    min-height: auto;
    padding: 70px 40px 65px;
}

.hero-centered {
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
}

.hero-logo {
    display: block;
    width: min(100%, 1000px);
    height: auto;
    margin: 0 auto 35px;
    object-fit: contain;
}

.hero-statement {
    max-width: 1100px;
    margin: 0 auto 45px;
    color: #f5f1e6;
    font-size: clamp(24px, 2.2vw, 36px);
    line-height: 1.5;
    text-align: center;
    font-weight: 400;
}

.hero-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-bottom: 42px;
}

.hero-actions .btn {
    min-width: 300px;
    text-align: center;
}

.hero-markets {
    color: #b9b6a7;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 14px;
    text-align: center;
    margin: 0;
}

@media (max-width: 768px) {

    .hero.hero-branding {
        padding: 40px 20px 45px;
    }

    .hero-logo {
        width: 100%;
        margin-bottom: 28px;
    }

    .hero-statement {
        font-size: 22px;
        margin-bottom: 30px;
    }

    .hero-actions {
        flex-direction: column;
    }

    .hero-actions .btn {
        width: 100%;
        min-width: 0;
    }

    .hero-markets {
        font-size: 11px;
        line-height: 1.8;
    }
}

/* =========================================
   OUR PROCESS PAGE
   Original Heritage Olive Design
   ========================================= */

.process-steps {
    padding: 60px 48px 60px;
    background: var(--paper);
    max-width: 900px;
    margin: 0 auto;
}
.pstep {
    display: grid;
    grid-template-columns: 90px 1fr;
    gap: 28px;
    padding: 36px 0;
    border-bottom: 1px solid rgba(74,59,42,0.12);
}

.pstep:last-child {
    border-bottom: none;
}

.pstep-num {
    font-family: 'Fraunces', serif;
    font-size: 44px;
    font-weight: 500;
    color: var(--gold);
    opacity: 0.4;
}

.pstep h3 {
    font-family: 'Fraunces', serif;
    font-size: 22px;
    font-weight: 500;
    color: var(--grove);
    margin-bottom: 10px;
}

.pstep p {
    font-size: 15px;
    line-height: 1.7;
    opacity: 0.85;
}

.credibility {
    background: var(--grove);
    color: var(--limestone-light);
    text-align: center;
    padding: 56px 48px;
    margin-top: 20px;
}

.credibility .display {
    font-size: 22px;
    margin-bottom: 8px;
}

.credibility p {
    font-size: 14px;
    color: rgba(245,241,230,0.75);
}

@media (max-width: 700px) {
    .process-steps {
        padding: 60px 24px 40px;
    }

    .pstep {
        grid-template-columns: 55px 1fr;
        gap: 18px;
        padding: 28px 0;
    }

    .pstep-num {
        font-size: 34px;
    }

    .credibility {
        padding: 45px 24px;
    }
}

/* =========================================
   PROJECTS PAGE
   ========================================= */
.section-head{max-width:640px;margin:0 auto 56px;text-align:center}.section-head h2{font-family:'Fraunces',serif;font-size:32px;font-weight:500;color:var(--grove);margin:12px 0 14px}.section-head p{font-size:15px;opacity:.7;line-height:1.6}
.projects{padding:80px 48px 100px;background:var(--paper)}
.project{max-width:1100px;margin:0 auto 80px;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.project:nth-of-type(even){grid-template-columns:.9fr 1.1fr}.project:nth-of-type(even) .project-photo{order:2}
.project-photo{aspect-ratio:4/3;background:linear-gradient(135deg,#3B4A2F,#20291A);border-radius:2px;position:relative;display:flex;align-items:center;justify-content:center}
.photo-note{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(245,241,230,.72);border:1px solid rgba(245,241,230,.28);padding:10px 14px}
.project-info h3{font-family:'Fraunces',serif;font-size:26px;font-weight:500;color:var(--grove);margin:0 0 14px}
.project-specs{background:var(--limestone-light);border-left:3px solid var(--gold);padding:16px 20px;margin:18px 0;font-size:13px;line-height:1.9;font-family:'IBM Plex Mono',monospace}
.project-specs span{opacity:.6}.project-info p{font-size:15px;line-height:1.7;opacity:.85}
.triptych{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2px;max-width:1100px;margin:0 auto 100px;background:rgba(74,59,42,.15)}
.triptych div{aspect-ratio:1/1;background:linear-gradient(135deg,#3B4A2F,#20291A);position:relative}.triptych span{position:absolute;bottom:12px;left:12px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--limestone-light);background:rgba(32,41,26,.6);padding:4px 10px}

/* =========================================
   TRADE PROFESSIONALS PAGE
   ========================================= */
.trade-body{max-width:700px;margin:0 auto;padding:70px 48px 24px;text-align:center}.trade-body p{font-size:16px;line-height:1.75;opacity:.85}
.benefits{padding:50px 48px 90px;background:var(--paper)}.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;max-width:900px;margin:0 auto;background:rgba(74,59,42,.12)}
.benefit{background:var(--limestone-light);padding:26px 28px;font-size:14px;display:flex;align-items:center;gap:12px}.benefit .mark{font-family:'IBM Plex Mono',monospace;color:var(--gold);font-size:13px}
.trade-form{background:var(--grove);color:var(--limestone-light);padding:70px 48px;text-align:center}.trade-form h2{font-size:30px;margin:0 0 14px}.trade-form p{max-width:520px;margin:0 auto 30px;color:rgba(245,241,230,.78);font-size:15px;line-height:1.65}

/* =========================================
   ABOUT PAGE
   ========================================= */
.about-section{max-width:1100px;margin:0 auto;padding:90px 48px 100px;display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}.about-copy p{font-size:17px;line-height:1.8;margin:0 0 22px}.division-note{font-family:'IBM Plex Mono',monospace;font-size:12px!important;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.about-visual {
    position: relative;
    overflow: hidden;
    background: none;
    padding: 0;
}

.about-visual img {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    object-position: center;
}

.about-visual span {
    display: none;
}

/* =========================================
   CONTACT PAGE
   ========================================= */
.contact-wrap{max-width:760px;margin:0 auto;padding:70px 48px 100px}.contact-wrap>p.lead{text-align:center;font-size:16px;line-height:1.7;opacity:.8;margin:0 auto 40px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .full{grid-column:1/-1}.field label{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--umber);opacity:.7;margin-bottom:8px}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(74,59,42,.25);background:var(--limestone-light);padding:12px 14px;font-family:'Inter',sans-serif;font-size:14px;color:var(--umber);border-radius:2px}.field textarea{min-height:130px;resize:vertical}.submit-row{margin-top:28px;text-align:center}.submit-row .btn{cursor:pointer}.form-message{padding:14px 16px;margin:0 0 28px;font-size:14px;border-left:3px solid}.form-message.success{background:#eef4e9;border-color:var(--grove);color:var(--grove)}.form-message.error{background:#fbefeb;border-color:#9a4f3f;color:#7c3d31}

/* =========================================
   MOBILE NAV + PAGE RESPONSIVE
   ========================================= */
.nav-toggle{display:none;background:transparent;border:1px solid rgba(74,59,42,.3);padding:9px 12px;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--umber)}
@media(max-width:900px){
  .site-nav{flex-wrap:wrap;gap:12px}.nav-toggle{display:inline-block;margin-left:auto}.nav-cta{display:none}.nav-links{display:none;width:100%;flex-direction:column;align-items:flex-start;gap:0;padding:8px 0 4px}.nav-links.open{display:flex}.nav-links a{width:100%;padding:12px 0;border-top:1px solid rgba(74,59,42,.1)}
  .projects{padding:60px 24px 70px}.project,.project:nth-of-type(even){grid-template-columns:1fr;gap:28px;margin-bottom:60px}.project:nth-of-type(even) .project-photo{order:0}.triptych{grid-template-columns:1fr;margin-bottom:70px}
  .benefits{padding:40px 24px 70px}.benefits-grid{grid-template-columns:1fr}.trade-body{padding:55px 24px 20px}.trade-form{padding:55px 24px}
  .about-section{grid-template-columns:1fr;padding:60px 24px 70px;gap:36px}.contact-wrap{padding:55px 24px 70px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}
}
