/*
Theme Name: Great Needs Ministry Refresh
Description: Donation-focused child theme for Great Needs Ministry.
Template: hello-elementor
Version: 1.0.4
Text Domain: greatneeds-refresh
*/
:root{--navy:#102b36;--navy-deep:#09202a;--rose:#b73561;--rose-dark:#92254a;--cream:#faf8f3;--sand:#e9e2d6;--ink:#233640;--muted:#53636a;--white:#fff;--max:1180px}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}img{max-width:100%;display:block}button,a{touch-action:manipulation}a:focus-visible,summary:focus-visible{outline:3px solid #ffbf58;outline-offset:4px}
    .wrap{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 25px;border-radius:4px;background:var(--rose);color:#fff;text-decoration:none;font-size:.91rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:background .2s,transform .2s}.button:hover{background:var(--rose-dark);transform:translateY(-2px)}.button-outline{background:transparent;border:2px solid rgba(255,255,255,.86);padding:11px 23px}.button-outline:hover{background:#fff;color:var(--navy)}
    .hero{min-height:100svh;position:relative;display:flex;flex-direction:column;isolation:isolate;color:#fff;background:var(--navy-deep)}.hero-slides{position:absolute;inset:0;z-index:-2;overflow:hidden}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease}.hero-slide.is-active{opacity:1}.hero-slide picture{display:block;width:100%;height:100%}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,25,34,.84) 0%,rgba(5,25,34,.67) 43%,rgba(5,25,34,.25) 100%),linear-gradient(0deg,rgba(5,25,34,.34),transparent 45%)}.hero-controls{position:absolute;z-index:3;right:max(24px,calc((100vw - var(--max))/2));bottom:25px;display:flex;align-items:center;gap:8px}.hero-controls button{min-width:35px;min-height:35px;border:1px solid rgba(255,255,255,.72);background:rgba(5,25,34,.45);color:#fff;cursor:pointer;font-size:1rem}.hero-controls button:hover,.hero-controls button:focus-visible{background:var(--rose)}.hero-controls .slide-dot{width:10px;height:10px;min-width:10px;min-height:10px;border-radius:50%;padding:0;border:1px solid #fff;background:transparent}.hero-controls .slide-dot[aria-current="true"]{background:#fff}.hero-controls .pause-button{min-width:54px;padding:0 7px;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
    .site-header{position:relative;z-index:2;border-bottom:1px solid rgba(255,255,255,.25)}.header-row{min-height:88px;display:flex;align-items:center;gap:30px}.brand{color:#fff;text-decoration:none;display:block;flex:none}.brand img{width:175px;height:auto;filter:brightness(0) invert(1)}.main-nav{display:flex;align-items:center;gap:27px;margin-left:auto}.main-nav a:not(.button){color:#fff;text-decoration:none;font-size:.87rem;font-weight:700}.main-nav a:not(.button):hover{text-decoration:underline;text-underline-offset:6px}.main-nav .button{min-height:42px;padding:10px 19px;font-size:.78rem}.mobile-nav{display:none}
    .hero-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(350px,.7fr);align-items:start;gap:clamp(30px,6vw,85px);flex:1;padding-block:90px 100px}.hero-copy{max-width:700px;padding-top:80px}.eyebrow{margin:0 0 22px;color:#f0c2d3;font-size:.76rem;font-weight:800;letter-spacing:.21em;text-transform:uppercase}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(3.3rem,6vw,6rem);line-height:1;letter-spacing:-.055em;margin:0 0 29px;font-weight:700;text-wrap:balance}.hero-lead{max-width:595px;font-size:clamp(1rem,1.65vw,1.2rem);font-weight:600;line-height:1.55;margin:0 0 34px}.hero-actions{display:flex;flex-wrap:wrap;gap:13px}.donation-card{background:#fff;color:var(--ink);padding:22px;box-shadow:0 24px 60px rgba(0,0,0,.24);border-radius:4px;min-width:0}.donation-card .section-kicker{margin-bottom:5px}.donation-card h2{font-family:Georgia,serif;font-size:clamp(1.6rem,2vw,2rem);line-height:1.15;color:var(--navy);margin:0 0 10px}.donation-card p{font-size:.89rem;margin:0 0 10px;color:var(--muted)}.donation-form{display:block;width:100%;height:1200px;border:0;background:#fff}.donation-card .other-ways{display:block;text-align:center;margin-top:12px;color:var(--rose);font-size:.78rem;font-weight:800}.scroll-cue{position:absolute;left:max(24px,calc((100vw - var(--max))/2));bottom:30px;color:#fff;text-decoration:none;font-size:.71rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.scroll-cue::after{content:" ↓";font-size:1.2rem;vertical-align:-1px;margin-left:5px}
    .verse{background:#fff;border-bottom:1px solid var(--sand);padding:38px 0}.verse .wrap{display:flex;align-items:center;gap:35px}.verse-mark{flex:none;font-family:Georgia,serif;font-size:5rem;color:var(--rose);line-height:.8}.verse blockquote{margin:0;max-width:980px;font-family:Georgia,serif;font-size:clamp(1.12rem,2vw,1.55rem);line-height:1.45;color:var(--navy)}.verse cite{display:block;margin-top:10px;font-family:Arial,sans-serif;font-size:.78rem;font-style:normal;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--rose)}
    section{scroll-margin-top:20px}.section{padding:100px 0}.section-kicker{margin:0 0 12px;color:var(--rose);font-size:.77rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.section h2{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:clamp(2.35rem,4vw,4rem);line-height:1.1;letter-spacing:-.035em;margin:0 0 20px}.section-intro{max-width:720px;margin:0 0 36px;color:var(--muted);font-size:1.1rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.initiative{min-height:280px;background:#fff;border:1px solid #e7e1d9;box-shadow:0 16px 35px rgba(16,43,54,.04);padding:31px;display:flex;flex-direction:column;align-items:flex-start}.initiative-number{font-weight:800;color:var(--rose);font-size:.8rem;letter-spacing:.14em}.initiative h3{font-family:Georgia,serif;color:var(--navy);font-size:1.65rem;line-height:1.15;margin:30px 0 13px}.initiative p{font-size:.94rem;color:var(--muted);margin:0 0 25px}.text-link{margin-top:auto;font-size:.81rem;font-weight:800;text-decoration:none;color:var(--rose);text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid currentColor;padding-bottom:4px}.text-link:hover{color:var(--rose-dark)}
    .story{padding:0;background:var(--navy);color:#fff}.story-grid{display:grid;grid-template-columns:1fr 1fr;min-height:560px}.story-image{width:100%;height:100%;min-height:380px;object-fit:cover}.story-copy{padding:72px max(40px,calc((100vw - var(--max))/2)) 72px 70px;display:flex;flex-direction:column;justify-content:center}.story .section-kicker{color:#f0c2d3}.story h2{color:#fff}.story p{font-size:1.02rem;color:#d9e1e3;max-width:460px}.story .button{align-self:flex-start;margin-top:16px}
    .projects{background:#fff}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.project-card{border:1px solid var(--sand);text-decoration:none;background:var(--cream);overflow:hidden;transition:transform .2s,box-shadow .2s}.project-card:hover{transform:translateY(-4px);box-shadow:0 18px 35px rgba(16,43,54,.13)}.project-card img{width:100%;height:290px;object-fit:cover}.project-card div{padding:27px 29px 30px}.project-card h3{font-family:Georgia,serif;font-size:1.6rem;line-height:1.2;color:var(--navy);margin:0 0 10px}.project-card p{color:var(--muted);font-size:.94rem;margin:0 0 13px}.project-card span{font-size:.8rem;color:var(--rose);font-weight:800;text-transform:uppercase;letter-spacing:.06em}
    .donate-band{background:var(--rose);color:#fff;padding:80px 0}.donate-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.donate-band h2{font-family:Georgia,serif;font-size:clamp(2.2rem,4vw,3.7rem);line-height:1.1;letter-spacing:-.035em;margin:0 0 10px;max-width:700px}.donate-band p{margin:0;max-width:650px}.donate-band .button{background:#fff;color:var(--rose);flex:none}.donate-band .button:hover{background:var(--cream)}
    .about{background:var(--cream)}.about-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.about-photo{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.about-photo img{width:100%;height:370px;object-fit:cover}.about-photo img:nth-child(2){height:300px}.about p:not(.section-kicker){color:var(--muted);font-size:1.02rem}.about .text-link{display:inline-block;margin-top:20px}
    .footer{background:var(--navy-deep);color:#fff;padding:60px 0 26px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:50px}.footer h2{font-size:1.45rem;line-height:1.15;margin:0 0 18px}.footer p{color:#d3dfe2;margin:0 0 12px}.footer h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.15em;color:#f0c2d3;margin:0 0 20px}.footer nav a,.footer .contact-links a{display:block;color:#fff;text-decoration:none;margin:0 0 9px;font-size:.91rem}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);margin-top:48px;padding-top:20px;color:#afc0c5;font-size:.78rem}.preview-label{position:fixed;right:12px;bottom:12px;z-index:20;background:#fff;color:var(--navy);box-shadow:0 3px 15px #0002;border-radius:3px;padding:8px 10px;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
    @media(max-width:950px){.main-nav{gap:15px}.main-nav a:not(.button){font-size:.78rem}.brand{font-size:1.15rem}.hero-body{gap:30px}.donation-card{padding:24px}.story-copy{padding:55px 35px}.about-grid{gap:35px}}
    @media(max-width:700px){.wrap{width:min(calc(100% - 36px),var(--max))}.site-header{background:rgba(9,32,42,.45)}.header-row{min-height:72px}.brand img{width:145px}.main-nav{display:none}.mobile-nav{display:block;margin-left:auto;position:relative}.mobile-nav summary{list-style:none;cursor:pointer;border:1px solid rgba(255,255,255,.65);padding:6px 12px;font-size:1.3rem;line-height:1}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:0;top:44px;min-width:220px;background:var(--navy-deep);padding:15px;box-shadow:0 12px 30px #0004}.mobile-nav nav a{display:block;color:#fff;text-decoration:none;padding:9px 5px;font-weight:700}.hero::after{background:linear-gradient(90deg,rgba(5,25,34,.83),rgba(5,25,34,.55)),linear-gradient(0deg,rgba(5,25,34,.42),transparent 55%)}.hero-body{grid-template-columns:1fr;gap:35px;padding-block:70px 100px}.hero-copy{padding-top:0}.hero h1{font-size:clamp(3.1rem,12vw,5.4rem)}.hero-lead{font-size:1.04rem}.donation-card{max-width:480px;width:100%}.scroll-cue{left:18px}.hero-controls{right:18px;bottom:15px}.hero-controls .slide-dot{display:none}.verse .wrap{gap:12px}.verse-mark{font-size:3.8rem}.section{padding:70px 0}.grid-3,.projects-grid,.story-grid,.about-grid,.footer-grid{grid-template-columns:1fr}.initiative{min-height:240px}.story-copy{padding:65px 18px}.story-image{min-height:320px}.project-card img{height:230px}.donate-band .wrap{display:block}.donate-band .button{margin-top:25px}.about-photo img{height:240px}.about-photo img:nth-child(2){height:210px}.footer-grid{gap:30px}.preview-label{font-size:.6rem}}
    /* Keep the first view within the screen while preserving Zeffy's own scrolling. */
    .hero{height:100svh;min-height:0}.header-row{min-height:76px}.brand img{width:118px}
    .hero-body{min-height:0;align-items:center;padding-block:110px 44px}.hero-copy{padding-top:0}
    .hero .eyebrow{margin-bottom:11px}.hero h1{font-size:clamp(3rem,5vw,4.7rem);margin-bottom:18px;max-width:660px}
    .hero-lead{margin-bottom:20px}.donation-card{padding:15px 16px}.donation-card .section-kicker{font-size:.67rem;margin-bottom:2px}
    .donation-card h2{font-size:1.45rem;margin-bottom:8px}.donation-card p{font-size:.8rem;line-height:1.35;margin-bottom:8px}
    .donation-form{height:clamp(360px,calc(100svh - 340px),540px)}.donation-card .other-ways{margin-top:6px}
    .hero-controls{bottom:14px}.scroll-cue{bottom:15px}
    .site-header{position:fixed;inset:0 0 auto;z-index:50;background:rgba(9,32,42,.97);backdrop-filter:blur(10px);box-shadow:0 3px 16px rgba(5,25,34,.2)}
    section{scroll-margin-top:110px}
    .about-brand{display:block;width:min(210px,65%);height:auto;margin:0 0 22px}
    .projects-brand{display:block;width:min(185px,55%);height:auto;margin:0 0 18px}
    @media(max-width:700px){.hero{height:auto;min-height:100svh}.brand img{width:105px}.hero-body{padding-block:105px 70px;gap:22px}.hero h1{font-size:clamp(2.7rem,10vw,4.2rem)}.hero-lead{margin-bottom:16px}.donation-form{height:clamp(360px,56svh,520px)}.about-brand{width:170px}}
    @media(max-height:700px) and (min-width:701px){.hero h1{font-size:clamp(2.8rem,4.5vw,3.7rem)}.hero-lead{font-size:.95rem}.donation-form{height:calc(100svh - 325px);min-height:300px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.project-card,.hero-slide{transition:none}}

.inner-page{padding-top:92px}
.inner-page .site-header{background:var(--navy-deep)}
.page-hero{background:linear-gradient(110deg,#09202a,#17414e);color:#fff;padding:84px 0 90px}
.page-hero .eyebrow{margin-bottom:17px}.page-hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,5.5vw,5.3rem);letter-spacing:-.04em;line-height:1.04;max-width:960px;margin:0 0 20px}
.page-hero p:last-child{max-width:760px;font-size:1.13rem;line-height:1.55;margin:0;color:#e4ecee}
.branded-page-hero{padding:58px 0 64px}.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:56px;align-items:center}
.page-hero-brand{display:grid;place-items:center;background:#fff;border-radius:4px;min-height:250px;padding:18px;box-shadow:0 15px 40px #05192233}
.page-hero-brand img{display:block;width:220px;height:auto}
.content-section{padding:78px 0;background:#fff}.content-section.alt{background:var(--cream)}
.content-section h2{font-family:Georgia,serif;font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.13;color:var(--navy);margin:0 0 18px}
.content-section p{max-width:760px;color:var(--muted);font-size:1.04rem;margin:0 0 18px}
.content-section .button{margin-top:10px}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.content-card{background:var(--cream);border:1px solid var(--sand);overflow:hidden}.content-card picture{display:block}.content-card img{width:100%;height:250px;object-fit:cover}.content-card .card-copy{padding:28px}.content-card h2{font-size:1.6rem}.content-card p{font-size:.94rem}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-grid figure{margin:0;background:var(--cream)}.gallery-grid picture{display:block}.gallery-grid img{display:block;width:100%;height:260px;object-fit:cover}.gallery-grid figcaption{padding:10px 12px;color:var(--muted);font-size:.78rem;line-height:1.35}
.split-content{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.split-content picture img{width:100%;height:400px;object-fit:cover}
.donate-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:50px;align-items:start}.donate-layout .donation-card{box-shadow:0 12px 45px #102b3622;border:1px solid var(--sand)}
.notice{border-left:4px solid var(--rose);background:var(--cream);padding:18px 22px;max-width:900px;color:var(--ink);font-size:.92rem}
.contact-lines a{display:block;color:var(--rose);font-weight:800;margin:10px 0}.inline-link{color:var(--rose);font-weight:800;text-underline-offset:4px}
@media(max-width:800px){.content-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.donate-layout,.split-content{grid-template-columns:1fr}.page-hero{padding:62px 0 70px}.page-hero-grid{gap:30px;grid-template-columns:minmax(0,1fr) 200px}.page-hero-brand{min-height:200px}.page-hero-brand img{width:165px}}
@media(max-width:600px){.inner-page{padding-top:82px}.content-grid,.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:240px}.content-section{padding:60px 0}.page-hero h1{font-size:clamp(2.6rem,11vw,4rem)}.page-hero-grid{display:flex;flex-direction:column;align-items:stretch}.page-hero-brand{order:-1;width:170px;min-height:0;padding:12px}.page-hero-brand img{width:135px}}

.site-header{display:block;box-sizing:border-box;width:100%;padding:0;left:0;right:0}
body .site-header:not(.dynamic-header){max-width:none;width:100%;margin-inline:0}
body.admin-bar .site-header{top:32px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
