/* Clearing: shared look for every inner page. Loads after style.css and photos.css. */
:root{--night:#0b1a17;--gold-d:#7E5F2A;--gold-l:#E8D3A6;--serif:"Source Serif 4",Georgia,serif;--display:"Source Serif 4",Georgia,serif;--radius:6px;--wrap:min(1180px,calc(100% - 2.5rem))}
html{font-size:18px}
body{line-height:1.6;background:var(--parchment);overflow-x:clip}
h1,h2,h3,h4{text-wrap:balance}
p,li{text-wrap:pretty}
h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:0;line-height:1.15}
h3{font-family:var(--serif);font-weight:600}
h4{font-family:var(--sans);font-style:normal;font-weight:700;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-d)}
.page-hero h4,.section--green h4,.section--dark h4,.cta-block h4{color:var(--gold-l)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}

/* Header */
.site-header,.site-header.scrolled{position:sticky;top:0;padding:0;background:var(--night)!important;border-bottom:1px solid rgba(176,138,79,.35);box-shadow:none!important}
.site-header .wrap{padding-block:.5rem;gap:1rem;width:min(1320px,calc(100% - 2rem))}
.logo-img img{height:52px;width:auto;max-width:200px}
.site-nav{gap:.25rem;flex-wrap:nowrap}
.site-nav a{font:600 16px/1 var(--sans);letter-spacing:0;text-transform:none;color:rgba(245,241,232,.82);display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;white-space:nowrap;text-align:center}
.site-nav a::after{left:12px;right:12px;bottom:6px}
.site-nav a:hover,.site-nav a.active{color:var(--gold-l)}
.site-nav a.btn{margin-left:.5rem;padding:0 20px;color:#1b1409;background:var(--gold);border:2px solid var(--gold);border-radius:6px}
.site-nav a.btn:hover{background:#c49b5c;color:#1b1409}
.hamburger{border:1.5px solid rgba(176,138,79,.75);border-radius:22px;min-width:48px;min-height:44px}
.hamburger span{background:var(--gold-l);height:2px}
@media (max-width:1219px){
 .hamburger{display:flex}
 .site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--night);padding:1rem;gap:.5rem;border-top:1px solid rgba(176,138,79,.3);box-shadow:0 14px 30px rgba(0,0,0,.4)}
 .site-nav.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .site-nav a,.site-nav a.btn{margin:0;min-height:48px;border:1.5px solid rgba(176,138,79,.4);border-radius:6px;white-space:normal;line-height:1.15;padding:6px 10px;text-wrap:balance}
 .site-nav a.btn{background:var(--gold);border-color:var(--gold)}
 .site-nav a::after{display:none}
}

/* Hero */
.page-hero{padding:4.5rem 0 3.75rem;background:radial-gradient(ellipse 70% 90% at 50% 0,rgba(176,138,79,.22),transparent 65%),var(--night);border-bottom:1px solid rgba(176,138,79,.3)}
.page-hero::before{display:none}
.page-hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,5.2vw,3.5rem);max-width:22ch;line-height:1.12}
.page-hero .lead{color:rgba(245,241,232,.82);font-size:1.1rem;max-width:56ch}
.gold-rule{background:var(--gold)}

/* Sections, cards, buttons */
.section{padding:5rem 0}
.section--ivory{background:var(--ivory)}
.section--green{background:var(--green)}
.section--dark{background:var(--night)}
.section-intro .lead{font-size:1.1rem;color:var(--slate)}
.service-card,.who-card,.ministry-who-card,.feature-card,.platform-card,.tier-card,.value-item,.faq-item,.contact-detail{border-radius:6px}
.service-card,.who-card,.ministry-who-card,.feature-card,.platform-card,.tier-card:not(.tier-card--featured){background:var(--ivory);border:1px solid rgba(176,138,79,.55);box-shadow:0 6px 22px rgba(20,48,42,.08)}
.btn{font:700 17px/1.1 var(--sans);letter-spacing:0;text-transform:none;border-radius:6px;border-width:2px;padding:0 24px;min-height:48px;text-align:center;text-wrap:balance}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#1b1409}
.btn-gold:hover{background:#c49b5c;border-color:#c49b5c;color:#1b1409}
.btn-primary{background:var(--green);border-color:var(--green)}
input,select,textarea{border-radius:6px;font-size:16px}
input:focus,select:focus,textarea:focus{outline:3px solid var(--gold);outline-offset:1px}

/* Footer */
.site-footer{padding:3rem 0 2rem;text-align:center;background:var(--night);border-top:1px solid rgba(176,138,79,.35)}
.site-footer::before{display:none}
.site-footer .logo-img img{height:64px;max-width:220px}
.foot4{margin:14px auto 0;max-width:60ch;color:rgba(245,241,232,.82);font:400 16px/1.5 var(--sans);text-wrap:balance}
.foot4 a{color:var(--gold-l)}
.flinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;max-width:760px;margin:14px auto 0;padding:0;text-align:center}
.flinks a{display:flex;align-items:center;justify-content:center;min-height:44px;color:var(--gold-l);font:600 15px/1.2 var(--sans);text-decoration:underline;text-underline-offset:3px}
@media (min-width:560px){.flinks{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:860px){.flinks{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:1100px){.flinks{grid-template-columns:repeat(6,minmax(0,1fr));max-width:980px}}
.site-footer .footer-bottom{justify-content:center;text-align:center;margin-top:1.5rem;color:rgba(245,241,232,.6);font-size:.85rem;border-top:1px solid rgba(228,221,206,.12)}
@media (max-width:640px){html{font-size:17px}.section{padding:3.5rem 0}.page-hero{padding:3.25rem 0 2.75rem}}

.tier-card--featured{background:var(--green);border:1px solid var(--gold);border-radius:6px}
.process-steps{max-width:1180px}
.step-content p{max-width:none;font-size:.95rem;line-height:1.55;text-wrap:pretty}

/* Layout guards: no horizontal scroll, balanced rows at in-between widths */
.contact-grid>*,.tiers-grid>*,.platform-grid>*{min-width:0}
.contact-photo-panel{max-width:100%}
@media (max-width:1099px){
 .tiers-grid{grid-template-columns:1fr;max-width:640px;margin-inline:auto}
 .tier-card--featured{transform:none}
}
@media (max-width:1399px){
 .process-steps{flex-direction:column;max-width:680px;gap:0}
 .process-steps::before{display:none}
 .process-step{flex-direction:row;text-align:left;padding:0 0 2.25rem;gap:1.5rem}
 .process-step:not(:last-child)::after{content:'';position:absolute;left:1.75rem;top:3.5rem;bottom:0;width:1px;background:var(--gold);opacity:.25}
 .step-num{margin-bottom:0}
 .step-content{text-align:left}
}

/* About: principles cards (7 items: one column, then 4 + 3 centered) */
.services-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;max-width:760px;margin-inline:auto}
.service-card{padding:1.5rem 1.6rem}
.service-card-icon{width:34px;height:34px;color:var(--gold-d);margin-bottom:.75rem}
.service-card-icon svg{width:100%;height:100%}
.service-card h3{font-size:1.2rem;margin-bottom:.4rem;color:var(--green)}
.service-card p{color:var(--slate);font-size:.97rem}
@media (min-width:1100px){
 .services-grid{display:flex;flex-wrap:wrap;justify-content:center;max-width:1180px}
 .services-grid>.service-card{flex:0 1 calc(25% - 1rem);min-width:0}
}

.hl{display:block;text-wrap:balance}
.thank-you-wrap h1{font-size:clamp(1.75rem,7vw,2.8rem)}
.section--green h2,.section--dark h2{margin-bottom:1rem}
@media(min-width:1101px){.contact-grid{grid-template-columns:1.2fr 1fr;gap:4rem}}
.who-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-top:2rem}@media(min-width:700px){.who-grid{grid-template-columns:1fr 1fr}}.who-grid>*{min-width:0}
.value-list{max-width:860px;margin-inline:auto}
@media(max-width:480px){main h2{font-size:1.6rem}main h3{font-size:1.05rem}}
@media(max-width:420px){main h2{font-size:1.5rem}}
@media(max-width:380px){main h2{font-size:1.4rem}}
