:root{--accent:#1d3b30;--tint:#e4eadb;--cream:#f6f4ed;--text:#20392e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:13px/1.6 Arial,sans-serif;background:#fff;color:var(--text)}button,input,textarea{font:inherit}button{cursor:pointer}button,a,input,textarea,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b75137;outline-offset:3px}a{color:inherit}.sample-notice{background:#e6e9e0;color:#435640;font-size:9px;text-align:center;padding:6px 15px;letter-spacing:.025em}.demo-header{display:flex;align-items:center;justify-content:space-between;padding:20px 30px;gap:20px;border-bottom:1px solid #e1e6db}.church-brand{display:flex;align-items:center;gap:9px;min-width:0}.church-icon{font:30px Georgia,serif;color:var(--accent)}.church-name{font-weight:700;font-size:16px;letter-spacing:-.05em;overflow-wrap:anywhere}.church-name small{display:block;font-size:8px;letter-spacing:.16em;text-transform:uppercase;font-weight:400;margin-top:1px}.demo-nav{display:flex;gap:19px}.demo-nav button{border:0;padding:5px 0;background:transparent;color:#4f624f;font-size:10px}.demo-nav button[aria-pressed=true]{color:var(--accent);font-weight:700;border-bottom:1px solid var(--accent)}.church-hero{position:relative;min-height:320px;color:white;background:url('assets/worship.jpg') center 52%/cover;isolation:isolate;padding:45px 38px;display:flex;align-items:end}.church-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#10281ed4,#10281e30)}.overline{font-size:8px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}.church-hero h1{font:normal 55px/.98 Georgia,serif;letter-spacing:-.045em;margin:15px 0 17px;max-width:440px}.church-hero p{max-width:310px;font-size:11px;line-height:1.8;color:#e8ede2}.demo-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:var(--accent);border:1px solid var(--accent);color:#fff;padding:11px 17px;font-size:10px;text-decoration:none}.church-hero .demo-btn{background:var(--tint);border-color:var(--tint);color:var(--text)}.demo-btn.outline{color:var(--accent);background:transparent}.service-strip{display:grid;grid-template-columns:1fr 1fr;background:var(--cream);padding:22px 35px;gap:30px}.service-strip strong{font:normal 23px Georgia,serif;display:block;margin-top:6px}.service-strip p{font-size:10px;margin:4px 0;color:#597052}.small-action{border:0;background:transparent;color:var(--accent);text-decoration:underline;text-underline-offset:4px;padding:4px 0;font-size:10px}.church-section{padding:35px}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px;gap:15px}.section-title h2{font:normal 33px/1.1 Georgia,serif;letter-spacing:-.04em;margin:9px 0 0}.event-mini{border-top:1px solid #cdd7c5;display:flex;align-items:center;gap:18px;padding:18px 0}.date{background:var(--tint);color:var(--accent);font:bold 24px/1 Arial,sans-serif;min-width:50px;text-align:center;padding:10px}.date span{font-size:8px;display:block;margin-top:4px;letter-spacing:.08em}.event-mini h3{font:normal 21px Georgia,serif;margin:0 0 4px}.event-mini p{font-size:10px;color:#64745a;margin:0}.event-mini .small-action{margin-left:auto;font-size:18px;text-decoration:none;min-width:30px;min-height:35px}.welcome-note{padding:30px 35px;background:var(--tint)}.welcome-note h2{font:normal 30px Georgia,serif;letter-spacing:-.04em;margin:8px 0}.welcome-note p{font-size:11px;max-width:520px;line-height:1.8}.church-page{padding:35px}.church-page>h1{font:normal 45px/1.05 Georgia,serif;letter-spacing:-.04em;margin:12px 0 15px}.church-page>.intro-copy{font-size:11px;line-height:1.8;color:#5d7055;max-width:510px;margin-bottom:26px}.event-filters{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.event-filters button{font-size:10px;color:var(--accent);border:1px solid #c3ceb8;background:#fff;padding:7px 14px;border-radius:20px}.event-filters button[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.event-tile{border:1px solid #d4dccb;margin-bottom:15px;padding:20px;display:grid;grid-template-columns:55px 1fr;gap:20px}.event-tile .date{align-self:start}.event-tile .category{font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#5c7053}.event-tile h2{font:normal 25px/1.1 Georgia,serif;letter-spacing:-.03em;margin:8px 0}.event-tile p{font-size:11px;line-height:1.8;color:#5b6b53}.event-tile .small-action{font-size:10px}.ministry{border-top:1px solid #cdd7c5;padding:22px 0;display:grid;grid-template-columns:40px 1fr;gap:15px}.ministry .ministry-icon{width:34px;height:34px;border-radius:50%;background:var(--tint);display:grid;place-items:center;font:21px Georgia,serif;color:var(--accent)}.ministry h2{font:normal 25px Georgia,serif;margin:0 0 7px}.ministry p{font-size:11px;color:#5b6b53;line-height:1.8;max-width:480px}.form-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}.connect-form{display:grid;gap:12px}.connect-form label{font-size:10px;display:grid;gap:5px;font-weight:bold}.connect-form input,.connect-form textarea{width:100%;padding:10px;border:1px solid #aeba9f;background:#fafbf7;border-radius:0;font-size:12px;color:var(--text)}.form-note{font-size:9px;line-height:1.7;color:#64745a}.visit-card{background:var(--tint);padding:20px;align-self:start}.visit-card h2{font:normal 25px Georgia,serif;margin:0 0 13px}.visit-card p{font-size:10px;color:#4d6547;line-height:1.8}.visit-map{height:130px;position:relative;overflow:hidden;background:#d2ddc7;margin-bottom:18px}.visit-map:before{content:'';position:absolute;inset:-25px;background:repeating-linear-gradient(25deg,transparent 0 28px,#f5f6ed 29px 37px,transparent 38px 72px),repeating-linear-gradient(115deg,transparent 0 55px,#f5f6ed 56px 64px,transparent 65px 100px)}.map-pin{position:absolute;top:40px;left:calc(50% - 12px);width:26px;height:32px;border-radius:16px 16px 16px 0;transform:rotate(-45deg);background:var(--accent);display:grid;place-items:center}.map-pin:after{content:'+';color:#fff;transform:rotate(45deg);font-size:20px}.church-footer{padding:25px 35px;border-top:1px solid #d4dccb;display:flex;justify-content:space-between;gap:20px;font-size:8px;color:#64745a}.church-footer strong{font-size:10px;color:var(--accent)}.chat-toggle{position:fixed;right:18px;bottom:15px;background:var(--accent);color:#fff;border:0;border-radius:30px;padding:11px 17px;box-shadow:0 4px 18px #0002;font-size:10px;z-index:3}.chat-panel{position:fixed;bottom:67px;right:18px;width:min(290px,calc(100% - 36px));background:#fff;border:1px solid #b5c3a7;box-shadow:0 15px 50px #0002;z-index:4}.chat-panel header{background:var(--accent);color:#fff;padding:16px;display:flex;justify-content:space-between;font-size:11px}.chat-panel header button{border:0;color:#fff;background:transparent;font-size:17px;padding:0 3px}.chat-panel p{font-size:11px;line-height:1.8;padding:0 16px}.chat-panel label{font-size:10px;padding:0 16px;display:grid;gap:4px}.chat-panel input{padding:9px;width:100%;border:1px solid #aeba9f;min-width:0}.chat-panel form button{margin:13px 16px 16px}.chat-panel .form-note{font-size:9px}.demo-dialog{width:min(490px,calc(100% - 30px));border:0;padding:28px;background:var(--cream);color:var(--text);box-shadow:0 15px 60px #0004;max-height:90vh}.demo-dialog::backdrop{background:#0c241dcc}.demo-dialog .close{float:right;border:1px solid #bfcbb5;background:transparent;padding:2px 8px;font-size:20px;color:var(--text)}.demo-dialog h2{font:normal 34px/1.1 Georgia,serif;margin:25px 0 15px;letter-spacing:-.04em}.demo-dialog p{font-size:12px;line-height:1.9}.demo-dialog .demo-btn{margin-top:10px}.view[hidden],.event-tile[hidden],.chat-panel[hidden]{display:none}.demo-success{font:normal 29px/1.2 Georgia,serif;background:var(--tint);padding:25px}.demo-success p{font:11px/1.8 Arial,sans-serif}.standalone-bar{display:none;background:var(--accent);color:#fff;padding:9px 25px;justify-content:space-between;gap:15px;font-size:10px}.standalone-bar a{text-underline-offset:4px}
@media(min-width:1050px){body.standalone{max-width:1400px;margin:auto;background:var(--cream)}body.standalone .demo-header,body.standalone main,body.standalone .church-footer{background:#fff}body.standalone .church-hero{min-height:530px;padding:65px}body.standalone .church-hero h1{font-size:83px;max-width:670px}body.standalone .church-hero p{font-size:14px;max-width:440px}body.standalone .church-page{max-width:1050px;margin:auto;padding:60px 35px}body.standalone .church-section{padding:45px 65px}body.standalone .sample-notice{font-size:11px}}
@media(max-width:560px){.demo-header{padding:17px 20px;flex-wrap:wrap;gap:12px}.church-brand{width:100%}.church-name{font-size:16px}.demo-nav{gap:22px;width:100%;justify-content:space-between}.demo-nav button{font-size:10px}.church-hero{min-height:330px;padding:30px 24px}.church-hero h1{font-size:43px}.church-hero p{font-size:10px}.service-strip{padding:20px 24px;gap:16px;grid-template-columns:1fr 1fr}.service-strip strong{font-size:19px}.service-strip p{font-size:9px}.service-strip .overline{font-size:7px}.church-section,.church-page{padding:26px 24px}.section-title h2{font-size:28px}.church-page>h1{font-size:37px}.section-title .small-action{font-size:9px}.event-mini{gap:12px}.event-mini h3{font-size:19px}.date{font-size:22px;min-width:45px}.event-mini p{font-size:9px}.welcome-note{padding:25px 24px}.welcome-note h2{font-size:28px}.church-footer{padding:22px 24px}.event-tile{padding:16px;grid-template-columns:44px 1fr;gap:13px}.event-tile h2{font-size:23px}.event-tile p{font-size:10px}.form-layout{grid-template-columns:1fr}.chat-toggle{font-size:9px;padding:10px 14px}.standalone-bar{font-size:9px;padding:8px 15px}.church-page>.intro-copy{font-size:10px}}
[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
