/*
Theme Name: Shekinah Miramar
Theme URI: https://shekinahmiramar.com/
Author: Ludova
Author URI: https://ludova.biz
Description: A warm, editorial church theme for Shekinah Miramar Church.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: shekinah-miramar
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: church, community, custom-logo, custom-menu, featured-images, full-width-template, one-column

STYLE REMINDER — RADIANT WELCOME:
Contemporary sacred editorial design. Preserve the ivory canvas, navy depth, Shekinah Gold focus,
soft sun-arc geometry, and unhurried typography when extending this theme.
*/

:root{--ink:#11263b;--deep:#091929;--ivory:#fbf8f1;--sand:#eee6d6;--clay:#c96e4a;--gold:#cfa64d;--gold-soft:#ebdba8;--mist:#dbe3de;--white:#fffdf8;--serif:"DM Serif Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:16px}.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}.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;top:8px;left:8px;padding:12px;background:var(--white);z-index:99;color:var(--ink)}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,textarea{font:inherit}.site{overflow:hidden}.wrap{padding-left:clamp(1.25rem,9vw,10rem);padding-right:clamp(1.25rem,9vw,10rem)}
.site-header{height:88px;display:flex;align-items:center;gap:2rem;padding:0 clamp(1.25rem,4vw,4.6rem);background:rgba(251,248,241,.98);border-bottom:1px solid rgba(17,38,59,.08);position:relative;z-index:20}.brand{display:inline-flex;align-items:center;gap:.75rem;min-width:max-content}.brand-mark{width:40px;height:40px;object-fit:contain}.brand-copy{display:flex;flex-direction:column;line-height:.9;font-family:var(--serif);font-size:1.45rem;letter-spacing:-.04em}.brand-copy small{margin-top:.34rem;font-family:var(--sans);font-size:.54rem;text-transform:uppercase;letter-spacing:.28em;font-weight:700}.site-nav{display:flex;align-items:center;gap:clamp(1.1rem,2.6vw,2.6rem);margin:auto}.site-nav a{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700;transition:color .18s var(--ease)}.site-nav a:hover{color:var(--clay)}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;transition:transform .16s var(--ease),background .18s var(--ease),color .18s var(--ease)}.header-cta{padding:.82rem 1rem;border:1px solid var(--ink);text-transform:uppercase;letter-spacing:.1em;font-size:.64rem;font-weight:700}.header-cta:hover{background:var(--ink);color:var(--ivory);transform:translateY(-2px)}.menu-toggle{display:none;background:transparent;border:0;color:var(--ink);padding:.45rem;font-size:1.4rem}.mobile-nav{display:none}
.hero{min-height:min(700px,calc(100vh - 88px));position:relative;display:flex;align-items:flex-end;color:var(--white);isolation:isolate}.hero-media,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-media{background:center/cover no-repeat}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,18,30,.92),rgba(5,18,30,.68) 36%,rgba(5,18,30,.08) 75%),linear-gradient(0deg,rgba(5,18,30,.7),transparent 52%)}.hero-content{width:min(760px,85%);margin:0 0 clamp(5rem,10vw,8rem) clamp(1.25rem,11vw,12rem)}.eyebrow{display:flex;align-items:center;gap:.65rem;margin:0 0 1.25rem;color:var(--clay);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em}.eyebrow:before{content:"";display:inline-block;width:24px;height:1px;background:currentColor}.eyebrow.light{color:var(--gold-soft)}h1,h2,h3,blockquote,p{margin-top:0}h1,h2,blockquote{font-family:var(--serif);letter-spacing:-.055em;font-weight:400}h1{font-size:clamp(4.1rem,8.2vw,8.1rem);line-height:.88;margin:0 0 1.5rem}h1 em,h2 em{color:var(--gold);font-weight:inherit}.hero-intro{max-width:420px;color:rgba(255,253,248,.84);font-size:1rem;line-height:1.7}.hero-actions,.connect-actions{display:flex;align-items:center;gap:1.6rem;margin-top:2.25rem;flex-wrap:wrap}.button{min-height:49px;padding:.92rem 1.2rem;border:1px solid transparent;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.11em}.button.gold{background:var(--gold);color:var(--deep)}.button.gold:hover{background:var(--gold-soft);transform:translateY(-2px)}.button.ivory{background:var(--ivory);color:var(--ink)}.button.ivory:hover{background:var(--gold-soft);transform:translateY(-2px)}.button.navy{background:var(--ink);color:var(--ivory)}.button.navy:hover{background:var(--clay);transform:translateY(-2px)}.text-link{display:inline-flex;align-items:center;gap:.45rem;width:max-content;border-bottom:1px solid var(--ink);padding-bottom:.35rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;transition:gap .18s var(--ease),color .18s var(--ease)}.text-link:hover{gap:.75rem;color:var(--clay)}.text-link.light{color:var(--white);border-color:rgba(255,255,255,.64)}.text-link.light:hover{color:var(--gold-soft)}.hero-scroll{position:absolute;left:clamp(1.25rem,4vw,4.6rem);bottom:1.45rem;display:flex;align-items:center;gap:.6rem;color:rgba(255,253,248,.7);font-size:.61rem;text-transform:uppercase;letter-spacing:.16em;font-weight:700}.sun-arc{position:absolute;border:1px solid rgba(207,166,77,.72);border-radius:50%;pointer-events:none}.hero-arc{width:540px;height:540px;right:-230px;top:-285px;opacity:.65}
.welcome{display:grid;grid-template-columns:1.07fr .93fr;gap:clamp(2.5rem,8vw,10rem);padding-top:clamp(5rem,11vw,9rem);padding-bottom:clamp(5rem,11vw,9rem)}.display-title{font-size:clamp(3rem,5.5vw,5.7rem);line-height:.94;margin-bottom:0}.welcome-body{padding-top:2.4rem;align-self:end}.lead-copy{max-width:465px;font-size:clamp(1.05rem,1.65vw,1.35rem);line-height:1.68;color:#445465;margin-bottom:2rem}.signature-line{display:inline-flex;align-items:center;gap:.55rem;margin-top:1.65rem;color:var(--ink);font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}.signature-line img{width:21px;height:21px;object-fit:contain}
.visit{position:relative;display:grid;grid-template-columns:minmax(280px,.92fr) minmax(350px,1.08fr) minmax(280px,.88fr);min-height:470px;overflow:hidden;color:var(--ivory);background:var(--ink)}.visit-art{position:relative;min-height:100%;overflow:hidden;border-right:1px solid rgba(255,255,255,.08)}.visit-sun{position:absolute;left:-150px;bottom:-115px;width:340px;aspect-ratio:1;background:var(--clay);border-radius:50%}.visit-arc{position:absolute;border:1px solid rgba(207,166,77,.68);border-radius:50%}.visit-arc.one{width:430px;height:430px;left:-165px;bottom:-155px}.visit-arc.two{width:590px;height:590px;left:-245px;bottom:-230px;opacity:.6}.visit-mark{position:absolute;right:clamp(2rem,7vw,8rem);top:2.5rem;width:80px;height:80px;object-fit:contain;opacity:.48}.visit-content{position:relative;z-index:2;padding:clamp(4.5rem,8vw,7.2rem) clamp(1.25rem,5vw,5rem)}.visit-content h2{margin-bottom:1.4rem}.visit-content p{max-width:380px;color:#b9c5cf;line-height:1.65;margin-bottom:2rem}.visit-details{position:relative;z-index:2;align-self:center;margin:3rem clamp(1.25rem,5vw,4.5rem) 3rem 0;padding:1.8rem 0;border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.24)}.visit-details article+article{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.16)}.visit-details strong{display:block;color:var(--gold-soft);font-size:.67rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:.55rem}.visit-details p{margin:0;color:var(--ivory);opacity:.9;font-size:.9rem;line-height:1.6}
.story{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,9vw,10rem);align-items:center;padding-top:clamp(5rem,11vw,9.5rem);padding-bottom:clamp(5rem,11vw,9.5rem)}.story-image-wrap{position:relative;padding:0 2rem 2rem 0}.story-image-wrap:after{content:"";position:absolute;inset:2rem 0 0 2rem;border:1px solid var(--gold);z-index:-1}.story-image{width:100%;height:min(530px,48vw);object-fit:cover}.story-stamp{position:absolute;right:.1rem;bottom:.15rem;width:min(250px,62%);padding:.9rem 1.1rem;display:flex;align-items:center;justify-content:space-between;background:var(--ivory);font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.story-stamp i{display:block;width:4px;height:4px;border-radius:50%;background:var(--clay)}.story-copy{padding-top:2rem}.story-copy blockquote{font-size:clamp(2.5rem,4.15vw,4.35rem);line-height:.98;margin:0 0 1.5rem}.story-copy p{max-width:440px;color:#526171;line-height:1.75;margin-bottom:2rem}
.ministries{padding:clamp(5rem,10vw,8.5rem) 0;background:var(--deep);color:var(--ivory)}.ministries-heading{display:flex;justify-content:space-between;align-items:end;gap:4rem;padding-bottom:clamp(3rem,6vw,5rem)}.ministries-heading p{max-width:330px;margin-bottom:.35rem;color:#b7c3cc;line-height:1.65}.ministry-list{display:grid;grid-template-columns:repeat(3,1fr)}.ministry-card{height:clamp(390px,35vw,560px);position:relative;z-index:0;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:1.55rem;color:var(--white);border-right:1px solid rgba(255,255,255,.18)}.ministry-card:last-child{border-right:0}.ministry-card img,.ministry-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover}.ministry-card img{transition:transform .65s var(--ease)}.ministry-card:hover img{transform:scale(1.05)}.ministry-shade{z-index:-1;background:linear-gradient(0deg,rgba(3,14,24,.92),rgba(3,14,24,.1) 65%)}.ministry-top{display:flex;justify-content:space-between;color:var(--gold-soft);font-size:.66rem;font-weight:700;letter-spacing:.14em}.ministry-copy h3{font-family:var(--serif);font-size:clamp(2.1rem,3vw,3.35rem);font-weight:400;letter-spacing:-.045em;line-height:.96;margin-bottom:.85rem}.ministry-copy p{max-width:300px;margin:0;color:rgba(255,255,255,.77);font-size:.88rem;line-height:1.6}
.connect{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,9vw,10rem);align-items:center;padding-top:clamp(5rem,11vw,9.5rem);padding-bottom:clamp(5rem,11vw,9.5rem)}.connect-feature{position:relative;min-height:min(440px,42vw);display:grid;place-items:center;overflow:hidden;background:var(--mist)}.connect-feature:before{content:"";position:absolute;left:-18%;top:-48%;width:84%;aspect-ratio:1;border:1px solid rgba(17,38,59,.24);border-radius:50%}.connect-feature:after{content:"";position:absolute;right:-26%;bottom:-40%;width:91%;aspect-ratio:1;border:1px solid rgba(201,110,74,.55);border-radius:50%}.connect-note{position:relative;z-index:1;width:min(77%,350px);min-height:290px;display:flex;flex-direction:column;padding:1.7rem;background:var(--ivory);box-shadow:18px 20px 0 rgba(17,38,59,.08);transform:rotate(-3deg)}.connect-note img{width:46px;height:46px;object-fit:contain;margin-bottom:auto}.connect-note-label{margin:1.7rem 0 .75rem;color:var(--clay);font-size:.59rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}.connect-note-quote{font-family:var(--serif);font-size:clamp(1.55rem,2.3vw,2.05rem);letter-spacing:-.045em;line-height:1;margin-bottom:1.3rem}.connect-note small{font-size:.56rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}.connect-copy h2{max-width:600px;margin-bottom:1.35rem}.connect-copy>p{max-width:480px;color:#526171;line-height:1.75}
.closing{position:relative;overflow:hidden;padding:clamp(5rem,10vw,8.5rem) 1.25rem;background:var(--clay);color:var(--ivory);text-align:center}.closing-inner{position:relative;z-index:1}.closing .eyebrow{justify-content:center}.closing .eyebrow:after{content:"";display:inline-block;width:24px;height:1px;background:currentColor}.closing h2{font-size:clamp(3.5rem,6.5vw,6.4rem);margin-bottom:2rem}.closing-arc{width:760px;height:760px;top:-525px;right:-320px;border-color:rgba(255,255,255,.28)}.site-footer{padding:3.7rem clamp(1.25rem,9vw,10rem) 1.5rem;background:var(--deep);color:var(--ivory)}.footer-top{display:grid;grid-template-columns:1fr 1fr auto;gap:3rem;align-items:center;padding-bottom:3rem}.footer-top p{max-width:300px;margin:0;color:#adbbc6;font-size:.88rem;line-height:1.65}.footer-social{display:flex;gap:.55rem}.footer-social a{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.23);color:var(--gold-soft);font-size:.65rem;font-weight:700;text-transform:uppercase;transition:background .18s var(--ease),color .18s var(--ease)}.footer-social a:hover{background:var(--gold);color:var(--ink)}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.16);color:#93a4b1;font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;line-height:1.5}
@media(max-width:900px){.site-header{height:76px}.site-nav,.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}.mobile-nav.open{display:flex;position:absolute;top:76px;left:0;right:0;flex-direction:column;gap:1.25rem;padding:1.6rem 1.25rem 2rem;background:var(--ivory);box-shadow:0 16px 30px rgba(9,25,41,.11)}.mobile-nav a{font-family:var(--serif);font-size:2.2rem;letter-spacing:-.04em}.hero{min-height:680px}.hero-content{margin-left:clamp(1.25rem,8vw,5rem)}.welcome,.story,.connect{grid-template-columns:1fr;gap:3rem}.welcome-body{padding-top:0}.visit{grid-template-columns:.5fr 1fr}.visit-art{grid-row:span 2}.visit-content{grid-column:2}.visit-details{grid-column:2;margin:0 clamp(1.25rem,5vw,3rem) 3.5rem}.ministries-heading{display:block}.ministries-heading p{margin-top:1.5rem}.ministry-list{grid-template-columns:1fr}.ministry-card{height:400px;border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}.footer-top{grid-template-columns:1fr auto}.footer-top p{grid-column:1/-1;grid-row:2}}
@media(max-width:600px){.brand-mark{width:35px;height:35px}.brand-copy{font-size:1.25rem}.hero{min-height:625px}.hero-content{width:calc(100% - 2.5rem);margin-bottom:6.4rem}h1{font-size:clamp(3.55rem,16vw,5rem)}.hero-scroll{bottom:1.35rem}.hero-arc{width:400px;height:400px;top:-260px;right:-235px}.wrap{padding-left:1.25rem;padding-right:1.25rem}.welcome,.story,.connect{padding-top:4.6rem;padding-bottom:4.6rem}.visit{display:block}.visit-art{min-height:140px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}.visit-content{padding:3.7rem 1.25rem 2rem}.visit-details{margin:0 1.25rem;padding-bottom:3.4rem}.visit-mark{top:1.5rem;right:1.3rem;width:58px;height:58px}.story-image{height:390px}.story-image-wrap{padding-right:1rem;padding-bottom:1rem}.story-image-wrap:after{inset:1rem 0 0 1rem}.story-copy blockquote{font-size:2.8rem}.ministries-heading{padding-bottom:3rem}.ministry-card{height:370px}.connect-feature{min-height:360px}.connect-actions{align-items:flex-start;flex-direction:column}.footer-top{grid-template-columns:1fr;gap:1.8rem}.footer-social{grid-row:2}.footer-top p{grid-column:auto;grid-row:3}.footer-bottom{display:block}.footer-bottom span+span{display:block;margin-top:.65rem}}
@media(prefers-reduced-motion:no-preference){.hero-content,.welcome>*,.story>*,.connect>*{animation:reveal .68s var(--ease) both}.welcome>*:last-child,.story>*:last-child,.connect>*:last-child{animation-delay:.11s}}@keyframes reveal{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
