/*
Theme Name: Oakmont Church of God
Theme URI: https://oakmontcog.org/
Author: Oakmont Church of God
Description: Custom WordPress theme based on the Oakmont Church of God website design.
Version: 1.6.0
License: GPL-2.0-or-later
Text Domain: oakmont
*/


:root{
  --gold:#c9972b;
  --gold-dark:#a87816;
  --navy:#14243f;
  --black:#111111;
  --white:#ffffff;
  --gray:#f2f2f0;
  --gray-dark:#66635d;
  --border:#dedbd3;
  --shadow:0 12px 35px rgba(17,17,17,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  color:var(--black);
  background:var(--white);
  line-height:1.65;
}
a{color:inherit}
img{max-width:100%;display:block}
.container{width:min(1120px,92%);margin:auto}
.topbar{background:var(--black);color:#fff;font-family:Arial,sans-serif;font-size:.9rem}
.topbar .container{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0}
header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--border);backdrop-filter:blur(8px)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:.8rem 0}
.brand{display:flex;align-items:center;gap:.9rem;text-decoration:none}
.brand img{width:72px;height:72px;object-fit:contain}
.brand-text{line-height:1.05}
.brand-text strong{display:block;font-size:1.25rem;letter-spacing:.06em}
.brand-text span{font-family:Arial,sans-serif;color:var(--gold-dark);font-size:.72rem;letter-spacing:.18em}
nav ul{display:flex;list-style:none;margin:0;padding:0;gap:.35rem;font-family:Arial,sans-serif}
nav a{text-decoration:none;padding:.7rem 1rem;border-radius:999px;font-weight:700}
nav a:hover,nav a.active{background:var(--gold);color:#fff}
.menu{display:none;border:0;background:transparent;font-size:1.7rem}
.hero{position:relative;min-height:650px;display:grid;place-items:center;background:
linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.34)),
url("assets/oakmont-building.webp") center/cover}
.hero-content{color:#fff;max-width:760px;text-align:center;padding:5rem 0}
.kicker{font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.22em;color:#f0cb74;font-weight:800;font-size:.82rem}
h1,h2,h3{line-height:1.15;margin-top:0}
.hero h1{font-size:clamp(2.7rem,6vw,5rem);margin:.8rem 0 1rem}
.hero p{font-size:1.2rem;max-width:650px;margin:0 auto 2rem}
.btn{display:inline-block;background:var(--gold);color:#fff;text-decoration:none;border:2px solid var(--gold);padding:.85rem 1.3rem;border-radius:4px;font-family:Arial,sans-serif;font-weight:800}
.btn:hover{background:var(--gold-dark);border-color:var(--gold-dark)}
.btn.alt{background:transparent;color:#fff;border-color:#fff}
.section{padding:5rem 0}
.section.light{background:var(--gray)}
.section-head{text-align:center;max-width:760px;margin:0 auto 2.8rem}
.section-head h2{font-size:clamp(2rem,4vw,3rem)}
.section-head p{color:var(--gray-dark)}
.gold-line{width:75px;height:3px;background:var(--gold);margin:1rem auto 1.4rem}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.35rem}
.card{background:#fff;border:1px solid var(--border);padding:2rem;border-radius:8px;box-shadow:var(--shadow)}
.card .icon{font-size:2rem;color:var(--gold)}
.card h3{margin:.8rem 0 .6rem;font-size:1.45rem}
.card p{margin:0;color:var(--gray-dark)}
.schedule{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.schedule-card{border-top:4px solid var(--gold);background:#fff;padding:2rem;border:1px solid var(--border);box-shadow:var(--shadow)}
.schedule-card strong{font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-dark);font-size:.82rem}
.schedule-card h3{font-size:1.8rem;margin:.5rem 0}
.cta{background:var(--navy);color:#fff;text-align:center}
.cta p{max-width:700px;margin:0 auto 1.5rem;color:#e8e9ec}
.page-hero{background:var(--navy);color:#fff;padding:5rem 0 4rem;text-align:center}
.page-hero h1{font-size:clamp(2.4rem,5vw,4rem);margin:.6rem 0}
.page-hero p{max-width:700px;margin:auto;color:#e8e9ec}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:2rem;align-items:start}
.info-box{background:var(--gray);border-left:4px solid var(--gold);padding:1.6rem}
.info-box h3{margin-bottom:.35rem}
.info-box + .info-box{margin-top:1rem}
form{background:#fff;border:1px solid var(--border);padding:2rem;box-shadow:var(--shadow);border-radius:8px}
label{display:block;font-family:Arial,sans-serif;font-weight:700;margin:.9rem 0 .35rem}
input,textarea,select{width:100%;padding:.85rem;border:1px solid #c9c6bf;border-radius:4px;font:inherit;background:#fff}
textarea{min-height:150px;resize:vertical}
.form-note{font-size:.84rem;color:var(--gray-dark);margin-top:1rem}
.map-wrap{overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)}
.map-wrap iframe{width:100%;height:430px;border:0}
.scripture{background:var(--gray);padding:3rem 1.5rem;text-align:center}
.scripture blockquote{font-size:clamp(1.45rem,3vw,2.2rem);max-width:850px;margin:0 auto .8rem;font-style:italic}
.scripture cite{font-family:Arial,sans-serif;color:var(--gold-dark);font-weight:800}
footer{background:var(--black);color:#fff;padding:2.2rem 0;font-family:Arial,sans-serif}
.footer-grid{display:flex;justify-content:space-between;gap:2rem;align-items:center}
footer a{color:#f0cb74}
.small{font-size:.86rem;color:#c8c8c8}
@media(max-width:800px){
  .topbar .container{flex-direction:column;text-align:center}
  .menu{display:block}
  nav ul{display:none;position:absolute;left:0;right:0;top:88px;background:#fff;border-bottom:1px solid var(--border);padding:1rem;flex-direction:column}
  nav ul.open{display:flex}
  nav a{display:block}
  .brand-text{display:none}
  .grid,.schedule,.contact-grid{grid-template-columns:1fr}
  .hero{min-height:600px}
  .footer-grid{flex-direction:column;text-align:center}
}

.beliefs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.belief{display:flex;gap:1rem;align-items:flex-start;background:#fff;border:1px solid var(--border);padding:1.35rem 1.5rem;border-radius:6px}.belief span{font:900 13px Arial,sans-serif;color:var(--gold);letter-spacing:.08em}.belief p{margin:0}.beliefs-detail{margin-top:2.5rem;background:var(--gray);padding:2.3rem;border-top:4px solid var(--gold)}.external-beliefs{border-top:1px solid var(--border);padding-top:1.2rem;margin-top:1.5rem!important}.external-beliefs a{color:var(--gold-dark);font-weight:700}.staff-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.35rem}.staff-card{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.staff-photo{height:245px;background:#eee;display:grid;place-items:center;overflow:hidden}.staff-photo img{width:100%;height:100%;object-fit:cover}.staff-photo.placeholder{color:#777;font:700 14px Arial,sans-serif;text-align:center;background:linear-gradient(135deg,#eeeeeb,#d9d7d1)}.staff-copy{padding:1.35rem 1.5rem 1.5rem}.staff-copy>strong{font:700 13px Arial,sans-serif;color:var(--gold-dark)}.staff-copy h3{margin:.25rem 0;font-size:1.55rem}.staff-rule{height:2px;width:48px;background:var(--gold);margin:.7rem 0 1rem}.bio-placeholder{color:var(--gray-dark);font-size:.92rem;margin:0}.bio-placeholder p{margin:0}.giving-box{max-width:800px;margin:auto;text-align:center;background:#fff;border:1px solid var(--border);padding:3rem;box-shadow:var(--shadow);border-radius:8px}.giving-box h2{font-size:clamp(2rem,4vw,3rem)}.giving-placeholder{margin-top:2rem;padding:1.4rem;background:var(--gray);border:1px dashed #bbb;display:flex;flex-direction:column;gap:.3rem}.giving-placeholder span{color:var(--gray-dark);font:13px Arial,sans-serif}@media(max-width:1000px){.staff-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.beliefs{grid-template-columns:1fr}}@media(max-width:520px){.staff-grid{grid-template-columns:1fr}}

.vanco-button[aria-disabled="true"]{opacity:.62;cursor:not-allowed}.giving-placeholder small{font:12px Arial,sans-serif;color:var(--gray-dark)}.map-wrap{overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:4px}.map-wrap iframe{width:100%;height:430px;border:0}

.church-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.gallery-card{background:#fff;border:1px solid var(--border);border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}.gallery-photo{aspect-ratio:4/3;overflow:hidden;background:linear-gradient(135deg,#eeeeeb,#d9d7d1);display:grid;place-items:center;color:#777;font:700 13px Arial,sans-serif}.gallery-photo img{width:100%;height:100%;object-fit:cover;display:block}.gallery-caption{padding:1rem 1.1rem;min-height:52px;font-size:.95rem;color:var(--gray-dark);text-align:center}.gallery-caption:focus{outline:2px solid var(--gold)}
@media(max-width:800px){.church-gallery{grid-template-columns:1fr 1fr}}@media(max-width:520px){.church-gallery{grid-template-columns:1fr}}

/* WordPress integration */
nav ul li { list-style:none; }
nav .current-menu-item > a, nav .current_page_item > a, nav .current-menu-ancestor > a { background:var(--gold); color:#fff; }
.aligncenter { margin-left:auto; margin-right:auto; }
.wp-caption { max-width:100%; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }


/* Upcoming Events */
.events-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.35rem;align-items:start}
.event-card{background:#fff;border:1px solid var(--border);border-radius:8px;overflow:hidden;box-shadow:var(--shadow);height:100%}
.event-flyer{display:grid;place-items:center;aspect-ratio:8.5/11;background:linear-gradient(135deg,#eeeeeb,#d9d7d1);overflow:hidden;text-decoration:none}
.event-flyer img{width:100%;height:100%;object-fit:contain;display:block;background:#fff}
.pdf-flyer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;color:var(--navy);text-align:center;padding:1rem}
.pdf-flyer b{font:900 2rem Arial,sans-serif;color:var(--gold-dark)}
.pdf-flyer small{font:700 .82rem Arial,sans-serif;color:var(--gray-dark)}
.event-copy{padding:1.1rem 1.15rem 1.3rem}.event-copy h3{margin:0 0 .65rem;font-size:1.35rem}.event-details{font-size:.92rem;color:var(--gray-dark)}.event-details p{margin:.45rem 0}.event-view{display:inline-block;margin-top:.7rem;color:var(--gold-dark);font:800 .84rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:1050px){.events-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.events-gallery{grid-template-columns:1fr}}
/* Oakmont Facebook Header Button */
.header-facebook {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    text-decoration: none;
    font-weight: 700;
    white-space: nowrap;
    margin-left: 14px;
}

.header-facebook .facebook-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-family: Arial, sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
}

.header-facebook:hover {
    opacity: .8;
}

@media (max-width: 850px) {
    .header-facebook .facebook-label {
        display: none;
    }

    .header-facebook {
        margin-left: 8px;
    }
}
/* Oakmont Instagram Header Button */
.header-instagram {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    text-decoration: none;
    font-weight: 700;
    white-space: nowrap;
    margin-left: 10px;
}

.header-instagram .instagram-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-family: Arial, sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
}

.header-instagram:hover {
    opacity: .8;
}

@media (max-width: 850px) {
    .header-instagram .instagram-label {
        display: none;
    }

    .header-instagram {
        margin-left: 6px;
    }
}