/*
Theme Name: Majal Community
Description: A bilingual-ready parent-site theme for a cultural and community space.
Version: 1.0.0
Requires at least: 6.3
Requires PHP: 7.4
Text Domain: majal-community
*/

:root{--cream:#f3ead6;--pink:#e5b2aa;--coral:#dc806f;--forest:#173f39;--green:#226b60;--yellow:#e7c86e;--white:#fff;--max:1440px;--pad:clamp(1.25rem,4vw,4rem);--radius:1.25rem}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--forest);font-family:Arial,Helvetica,sans-serif;line-height:1.55}img{display:block;max-width:100%;height:auto}a{color:inherit}.wrap{width:min(100%,var(--max));margin:auto;padding-inline:var(--pad)}.section{padding-block:clamp(4.5rem,9vw,8rem)}.eyebrow{margin:0 0 1rem;text-transform:uppercase;font-size:.76rem;font-weight:800;letter-spacing:.15em}.section-title{max-width:1050px;margin:0;font-size:clamp(3rem,7vw,7rem);line-height:.94;letter-spacing:-.055em}.section-title em,.display-serif{font-family:Georgia,serif;font-weight:400;font-style:italic}.lead{max-width:760px;font-size:clamp(1.1rem,2vw,1.5rem)}
.site-header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--cream) 94%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid rgba(23,63,57,.17)}.header-inner{min-height:78px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem}.brand{text-decoration:none;font-size:1.45rem;font-weight:900;letter-spacing:-.05em}.brand em{font-family:Georgia,serif;font-weight:400}.main-menu,.language-switcher{display:flex;align-items:center;gap:clamp(.8rem,2vw,2rem);list-style:none;margin:0;padding:0}.main-menu{justify-content:center}.main-menu a,.language-switcher a{text-decoration:none;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.main-menu a:hover,.main-menu a:focus-visible{text-decoration:underline;text-underline-offset:.4em}.header-tools{display:flex;align-items:center;gap:1.25rem}.support-link{white-space:nowrap;text-transform:uppercase;font-size:.78rem;font-weight:800;letter-spacing:.09em;text-underline-offset:.35em}.menu-toggle{display:none;border:0;background:transparent;color:inherit;font:inherit;font-weight:800}
.hero{min-height:calc(100svh - 78px);position:relative;overflow:hidden;background:var(--pink);display:grid;align-items:end;padding-block:clamp(6rem,14vh,11rem) clamp(4rem,9vh,7rem)}.hero:before{content:"";position:absolute;width:clamp(250px,34vw,540px);aspect-ratio:1;background:var(--coral);border-radius:50%;right:4%;top:9%}.hero:after{content:"";position:absolute;width:min(62vw,840px);aspect-ratio:1;border:clamp(12px,1.5vw,23px) solid var(--green);border-radius:50%;left:-25%;bottom:-54%}.hero-copy{position:relative;z-index:2;max-width:980px}.hero h1{max-width:980px;margin:0;font-size:clamp(4rem,9vw,9rem);line-height:.88;letter-spacing:-.065em}.hero h1 em{display:block;color:var(--cream);font-family:Georgia,serif;font-weight:400;text-shadow:0 3px 5px rgba(23,63,57,.22)}.hero .lead{margin-top:2rem}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.35rem;border:2px solid currentColor;text-decoration:none;font-weight:800}.button:hover,.button:focus-visible{background:var(--forest);color:var(--cream)}.text-link{font-weight:800;text-underline-offset:.35em}
.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,8vw,9rem);align-items:start}.intro-copy{font-size:clamp(1.4rem,3vw,2.4rem);line-height:1.25;margin:0}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(23,63,57,.25);border:1px solid rgba(23,63,57,.25);margin-top:4rem}.value{background:var(--cream);padding:clamp(1.5rem,3vw,3rem)}.value strong{display:block;font-size:1.25rem;margin-bottom:.5rem}
.space{background:var(--green);color:var(--white)}.space-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem}.gallery{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:repeat(2,minmax(220px,34vh));gap:1rem}.gallery figure{margin:0;overflow:hidden;background:rgba(255,255,255,.12);position:relative}.gallery figure:first-child{grid-row:1/3}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.gallery figure:hover img{transform:scale(1.025)}.gallery-empty{height:100%;display:grid;place-items:center;padding:2rem;text-align:center;border:1px dashed rgba(255,255,255,.6)}
.events{background:var(--cream)}.event-list{margin-top:3rem;border-top:1px solid currentColor}.event-card{display:grid;grid-template-columns:9rem 1fr auto;gap:clamp(1rem,4vw,4rem);align-items:center;padding:1.5rem 0;border-bottom:1px solid currentColor}.event-date{font-family:Georgia,serif;font-style:italic;font-size:1.45rem}.event-card h3{font-size:clamp(1.4rem,3vw,2.5rem);line-height:1.1;margin:.25rem 0}.event-card p{margin:.35rem 0}.event-card>a{font-weight:800;text-underline-offset:.35em}.empty-events{padding:2rem 0;border-bottom:1px solid currentColor}
.support{background:var(--coral);position:relative;overflow:hidden}.support:after{content:"";position:absolute;width:420px;aspect-ratio:1;border:18px solid var(--forest);border-radius:50%;right:-190px;bottom:-230px}.support-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(3rem,8vw,8rem);align-items:end}.support-panel{border:2px solid currentColor;padding:clamp(1.5rem,4vw,3rem)}.support-panel .button{width:100%;margin-top:1rem}
.newsletter{background:var(--forest);color:var(--white)}.newsletter-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);align-items:end}.newsletter-form{display:grid;grid-template-columns:1fr auto;gap:.75rem}.newsletter-form label{grid-column:1/-1}.newsletter-form input[type=email]{min-width:0;border:2px solid var(--white);background:transparent;color:var(--white);padding:1rem;font:inherit}.newsletter-form input::placeholder{color:rgba(255,255,255,.75)}.newsletter-form button{border:2px solid var(--white);background:var(--white);color:var(--forest);padding:1rem 1.4rem;font-weight:800;cursor:pointer}.newsletter-note{grid-column:1/-1;font-size:.82rem;opacity:.8}.newsletter .mc4wp-form input[type=submit]{padding:1rem 1.4rem;font-weight:800}
.visit{background:var(--yellow)}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem)}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.visit-details strong{display:block;margin-bottom:.4rem}.site-footer{background:var(--cream);padding-block:2rem;border-top:1px solid rgba(23,63,57,.2)}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:2rem}.footer-links{display:flex;gap:1.25rem;list-style:none;padding:0;margin:0}.footer-small{font-size:.82rem;margin-top:1rem;opacity:.8}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:960px){.header-inner{grid-template-columns:1fr auto}.menu-toggle{display:block}.main-nav{display:none;grid-column:1/-1}.main-nav.is-open{display:block;padding-bottom:1.25rem}.main-menu{align-items:flex-start;flex-direction:column}.header-tools .language-switcher{display:none}.intro-grid,.support-grid,.newsletter-grid,.visit-grid{grid-template-columns:1fr}.values{grid-template-columns:1fr}.event-card{grid-template-columns:7rem 1fr}.event-card>a{grid-column:2}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:minmax(340px,55vh) minmax(180px,28vh)}.gallery figure:first-child{grid-column:1/-1;grid-row:auto}}
@media(max-width:620px){.site-header{position:relative}.header-inner{min-height:68px}.header-tools{gap:.75rem}.support-link{display:none}.hero{min-height:calc(100svh - 68px)}.hero:before{right:-35%;top:8%}.space-heading{display:block}.gallery{display:block}.gallery figure{min-height:260px;margin-top:1rem}.event-card{grid-template-columns:1fr;gap:.25rem}.event-card>a{grid-column:auto;margin-top:.5rem}.newsletter-form{grid-template-columns:1fr}.visit-details{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

