/*
Theme Name: Bridge to Hope Academy
Theme URI: https://bridge-to-hope-academy.edenbuba25.chatgpt.site
Author: Bridge to Hope Academy
Description: Custom one-page WordPress theme for Bridge to Hope Academy.
Version: 1.3.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: bridge-to-hope
*/
:root{--ink:#10282a;--teal:#173b3c;--gold:#d99a45;--bronze:#9a5838;--cream:#f7f0e4;--paper:#fffdf8;--muted:#5d6865}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em}h2{font-size:clamp(2.25rem,4vw,4.25rem);line-height:1.03;margin-bottom:0}.section{padding:110px max(6vw,24px)}.eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:var(--bronze);margin-bottom:20px}.light{color:#efbd70}.site-header{height:86px;padding:0 max(4vw,24px);display:flex;align-items:center;justify-content:space-between;gap:28px;background:rgba(255,253,248,.96);border-bottom:1px solid #e6ded1;position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;object-fit:contain}.brand span{display:flex;flex-direction:column}.brand strong{font-family:Georgia,serif;font-size:1.18rem}.brand small{font-size:.66rem;text-transform:uppercase;letter-spacing:.24em;color:var(--bronze)}nav{display:flex;gap:28px;font-size:.84rem;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:3px;background:var(--gold);color:#172526;padding:16px 23px;font-weight:800;font-size:.88rem;box-shadow:0 8px 24px rgba(12,37,38,.13);cursor:pointer}.button-small{padding:12px 17px;font-size:.77rem}.hero{min-height:720px;padding:105px max(7vw,26px);background:linear-gradient(118deg,#102f31,#204849);color:white;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);align-items:center;gap:7vw;position:relative;overflow:hidden}.hero h1{font-size:clamp(3.4rem,6.6vw,7rem);line-height:.95;max-width:930px;margin-bottom:32px}.hero h1 em{color:#efb65f;font-weight:400}.hero-copy{font-size:1.16rem;line-height:1.75;color:#dce8e4;max-width:720px}.hero-actions{display:flex;align-items:center;gap:28px;margin:38px 0}.text-link{font-weight:800;font-size:.88rem}.text-link span{color:var(--gold);font-size:1.25rem}.hero-points{display:flex;flex-wrap:wrap;gap:14px 30px;border-top:1px solid rgba(255,255,255,.16);padding-top:25px;color:#cedbd7;font-size:.78rem;font-weight:700}.hero-points span:before{content:'✦';color:var(--gold);margin-right:8px}.hero-mark{text-align:center}.hero-mark img{width:min(380px,75vw);margin:auto;filter:drop-shadow(0 28px 45px rgba(0,0,0,.27))}.hero-mark p{max-width:330px;margin:24px auto 0;color:#eadbc4;font-family:Georgia,serif;font-style:italic;line-height:1.6}.intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;background:var(--cream)}.intro-copy{font-size:1.06rem;line-height:1.85;color:#4f605d}.intro-copy p:first-child{font-size:1.25rem;color:var(--ink)}.services{background:var(--teal);color:white}.section-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:9vw;align-items:end;margin-bottom:62px}.section-heading>p{color:#c7d8d3;line-height:1.8}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}.service-card{padding:34px 28px 40px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);min-height:310px}.service-card>span{color:var(--gold);font-family:Georgia,serif}.service-card h3{font-family:Georgia,serif;font-size:1.45rem;margin:48px 0 18px}.service-card p{color:#c9d7d3;font-size:.91rem;line-height:1.75}.approach{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw}.approach-heading>p:last-child{color:var(--muted);line-height:1.75;margin-top:28px}.steps{border-top:1px solid #d8d1c6}.step{display:flex;gap:30px;padding:32px 5px;border-bottom:1px solid #d8d1c6}.step>span{flex:0 0 46px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--cream);color:var(--bronze);font-family:Georgia,serif;font-weight:bold}.step h3{font-family:Georgia,serif;font-size:1.5rem;margin:3px 0 8px}.step p{color:var(--muted);line-height:1.65;margin:0}.difference{display:grid;grid-template-columns:.8fr 1.2fr;background:#112c2e;color:white}.difference-image{min-height:650px;display:grid;place-items:center;background:radial-gradient(circle,#31595a,#112c2e 70%);padding:70px}.difference-image img{width:410px;filter:drop-shadow(0 30px 40px rgba(0,0,0,.35))}.difference-copy{padding:105px 9vw 95px 8vw}.difference-copy>p{color:#c8d8d4;line-height:1.8;margin:30px 0}.difference-copy li{padding:12px 0;color:#cbd9d5;line-height:1.5}.founder{display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;align-items:center;background:var(--cream)}.founder-photo img{width:100%;aspect-ratio:4/4.7;object-fit:cover;object-position:61% center;border-bottom:8px solid var(--gold)}.founder-title{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);margin:16px 0 30px}.founder-copy>p:not(.eyebrow):not(.founder-title){color:#52615f;line-height:1.8}.founder-copy blockquote{margin:32px 0 0;padding:23px 0 3px 28px;border-left:3px solid var(--gold);font-family:Georgia,serif;font-size:1.35rem;font-style:italic;line-height:1.55}.consultation{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;background:var(--teal);color:white}.consultation-copy>p:not(.eyebrow){color:#cbd9d5;line-height:1.8;font-size:1.03rem;margin:28px 0}.consultation-form{background:var(--paper);color:var(--ink);padding:42px;box-shadow:0 30px 65px rgba(0,0,0,.18)}.consultation-form h3{font-family:Georgia,serif;font-size:1.75rem}.consultation-form label{display:flex;flex-direction:column;gap:8px;font-size:.74rem;font-weight:800;margin-bottom:17px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.consultation-form input,.consultation-form textarea{border:1px solid #d9d2c7;background:#fff;padding:14px;font:inherit;font-size:.9rem;color:var(--ink)}.consultation-form .button{width:100%}.notice{padding:13px;margin-bottom:20px;background:#e7f2e9;color:#285632;font-weight:700}.partner{padding:40px max(6vw,24px);display:flex;justify-content:space-between;gap:35px;align-items:center;background:var(--gold)}.partner p{max-width:830px;font-family:Georgia,serif;font-size:1.25rem;line-height:1.5;margin:0}footer{padding:54px max(6vw,24px) 34px;background:#0b2022;color:#c7d4d0;text-align:center}footer img{width:62px;margin:0 auto 18px}footer strong{display:block;font-family:Georgia,serif;color:white;font-size:1.2rem}footer small{display:block;margin-top:28px;color:#748a86}@media(max-width:980px){nav{display:none}.service-grid{grid-template-columns:1fr 1fr}.hero,.intro,.section-heading,.approach,.difference,.founder,.consultation{grid-template-columns:1fr}.hero-mark{display:none}}@media(max-width:620px){.section{padding:78px 22px}.site-header>.button{display:none}.hero{min-height:auto;padding:78px 22px}.hero h1{font-size:3.55rem}.hero-actions{align-items:flex-start;flex-direction:column}.service-grid{grid-template-columns:1fr}.field-row{grid-template-columns:1fr}.consultation-form{padding:28px 20px}.partner{flex-direction:column;align-items:flex-start}h2{font-size:2.65rem}}

/* Program and service pages */
.inner-page{margin:0}.program-hero{padding:105px max(7vw,26px);background:linear-gradient(118deg,#102f31,#204849);color:#fff}.program-hero h1{font-size:clamp(3.1rem,6vw,6.2rem);line-height:.98;max-width:1050px;margin-bottom:28px}.program-hero>p:not(.eyebrow){max-width:790px;color:#dce8e4;font-size:1.13rem;line-height:1.75}.light-link{color:#fff}.program-section{padding:100px max(7vw,26px);background:var(--paper)}.program-section.alt{background:var(--cream)}.program-heading{display:grid;grid-template-columns:.85fr 1.15fr;gap:4vw 9vw;align-items:end;margin-bottom:55px}.program-heading .eyebrow{grid-column:1/-1;margin-bottom:-12px}.program-heading>p:last-child{color:var(--muted);line-height:1.8;margin:0}.program-grid{display:grid;border-top:1px solid #d8d1c6;border-left:1px solid #d8d1c6}.program-grid.three{grid-template-columns:repeat(3,1fr)}.program-grid.four{grid-template-columns:repeat(4,1fr)}.program-card{padding:34px 28px 40px;border-right:1px solid #d8d1c6;border-bottom:1px solid #d8d1c6;min-height:295px}.program-card>span{color:var(--gold);font-family:Georgia,serif}.program-card h3{font-family:Georgia,serif;font-size:1.45rem;margin:45px 0 18px}.program-card p{color:var(--muted);font-size:.92rem;line-height:1.75}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;align-items:start}.check-list{list-style:none;margin:0;padding:0;border-top:1px solid #d8d1c6}.check-list li{position:relative;padding:18px 10px 18px 38px;border-bottom:1px solid #d8d1c6;color:#465653;line-height:1.5}.check-list li:before{content:'✦';position:absolute;left:8px;color:var(--gold)}.detail-copy{color:var(--muted);font-size:1.02rem;line-height:1.8}.price-note{padding:18px 20px;border-left:4px solid var(--gold);background:var(--cream);color:var(--ink);font-weight:700}.program-cta{padding:90px max(7vw,26px);text-align:center;background:var(--teal);color:#fff}.program-cta h2{max-width:820px;margin:0 auto 22px}.program-cta>p:not(.eyebrow){max-width:700px;margin:0 auto 30px;color:#cbd9d5;line-height:1.75}.program-pathways{padding:85px max(6vw,24px);background:var(--cream)}.pathway-intro{text-align:center;max-width:850px;margin:0 auto 42px}.pathway-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1180px;margin:auto}.pathway-card{padding:42px;background:var(--paper);border-top:5px solid var(--gold);box-shadow:0 18px 45px rgba(16,40,42,.08)}.pathway-card.featured{background:var(--teal);color:#fff}.pathway-card h3{font-family:Georgia,serif;font-size:2rem;margin:12px 0 16px}.pathway-card p{color:var(--muted);line-height:1.7}.pathway-card.featured p{color:#cbd9d5}.pathway-card .text-link{display:inline-block;margin-top:12px}.consultation-form select{border:1px solid #d9d2c7;background:#fff;padding:14px;font:inherit;font-size:.9rem;color:var(--ink);width:100%}
@media(max-width:980px){.program-heading,.split{grid-template-columns:1fr}.program-grid.four{grid-template-columns:1fr 1fr}}@media(max-width:700px){.program-hero{padding:78px 22px}.program-hero h1{font-size:3.3rem}.program-section{padding:72px 22px}.program-grid.three,.program-grid.four,.pathway-grid{grid-template-columns:1fr}.pathway-card{padding:30px}}

.whole-child-gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin:0 0 52px}.whole-child-gallery figure{margin:0;position:relative;overflow:hidden;background:#0b2022}.whole-child-gallery img{width:100%;height:360px;object-fit:cover;transition:transform .35s ease}.whole-child-gallery .gallery-main img{height:430px}.whole-child-gallery figure:hover img{transform:scale(1.015)}.whole-child-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:38px 24px 20px;background:linear-gradient(transparent,rgba(7,28,29,.88));color:#fff;font-family:Georgia,serif;font-size:1.05rem}.volunteer{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;background:#102f31;color:#fff}.volunteer-copy>p:not(.eyebrow){color:#cbd9d5;line-height:1.8;font-size:1.02rem}.volunteer-form{background:var(--paper);color:var(--ink);padding:42px;box-shadow:0 30px 65px rgba(0,0,0,.18)}.volunteer-form h3{font-family:Georgia,serif;font-size:1.75rem}.volunteer-form label{display:flex;flex-direction:column;gap:8px;font-size:.74rem;font-weight:800;margin-bottom:17px}.volunteer-form input,.volunteer-form textarea,.volunteer-form select{border:1px solid #d9d2c7;background:#fff;padding:14px;font:inherit;font-size:.9rem;color:var(--ink);width:100%}.volunteer-form .button{width:100%}
@media(max-width:980px){.whole-child-gallery,.volunteer{grid-template-columns:1fr}.whole-child-gallery img,.whole-child-gallery .gallery-main img{height:360px}}@media(max-width:620px){.whole-child-gallery img,.whole-child-gallery .gallery-main img{height:260px}.volunteer-form{padding:28px}}

.service-card-image{width:100%;height:120px;object-fit:cover;margin:24px 0 0;border-bottom:3px solid var(--gold)}.service-card-image+h3{margin-top:24px}@media(max-width:620px){.service-card-image{height:170px}}
