*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#17332c;background:#fbfaf5;font:1rem/1.65 system-ui,Segoe UI,sans-serif}a{color:inherit}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #bd7a39;outline-offset:3px}.skip{position:absolute;left:.5rem;top:-10rem;background:#fff;z-index:4}.skip:focus{top:.5rem}.top{display:flex;align-items:center;justify-content:space-between;padding:1rem max(5vw,1rem);background:#fffdf7;gap:1rem}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;font-size:1.45rem;line-height:1.04}.brand small{display:block;letter-spacing:.14em;font-size:.55rem;margin-top:.3rem}.top nav{display:flex;gap:1.3rem;align-items:center;font-size:.92rem;font-weight:650}.top nav a{text-decoration:none}.button{display:inline-flex;justify-content:center;align-items:center;background:#e6bc79;color:#142b23;text-decoration:none;border:1px solid transparent;border-radius:.5rem;padding:.76rem 1.15rem;font-weight:750;cursor:pointer;transition:background .18s,transform .18s}.button:hover{background:#f3d4a5;transform:translateY(-2px)}.button.small{padding:.45rem .75rem;background:#214a3b;color:white}.button.outline{color:#fff;background:#162e28aa;border-color:#b3c5b6}.hero{position:relative;isolation:isolate;display:grid;min-height:36rem;align-items:center;background:#18372c;color:white;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#142c25f5 0%,#142c25dc 37%,#142c2538 100%)}.hero-body{padding:5rem max(7vw,1.4rem);max-width:56rem;animation:appear .65s ease both}.hero h1,h2{font-family:Georgia,serif;line-height:1.06;letter-spacing:-.035em;margin:.25em 0 .42em}.hero h1{font-size:clamp(3rem,6.6vw,6rem);max-width:12ch}.hero-body>p:not(.eyebrow){max-width:51ch;font-size:1.15rem;color:#f2eee5}.eyebrow{letter-spacing:.16em;font-size:.74rem;font-weight:800;margin:0;color:#556b58}.hero .eyebrow{color:#f3ce95}.actions,.trust{display:flex;gap:1rem;flex-wrap:wrap}.actions{margin-top:1.5rem}.trust{justify-content:center;gap:clamp(1rem,5vw,4rem);background:#e4ebdc;padding:.9rem 1.2rem;font-size:.89rem;font-weight:700}.wrap{width:min(1120px,90%);margin:auto;padding:4.2rem 0}.section-head{max-width:44rem;margin-bottom:1.8rem}h2{font-size:clamp(2.1rem,4.6vw,4rem)}h3{line-height:1.2}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.cards article{padding:1.35rem;border:1px solid #dce4d8;background:#fff;border-radius:.8rem;transition:box-shadow .18s,transform .18s}.cards article:hover{transform:translateY(-3px);box-shadow:0 10px 23px #17332c12}.cards p{font-size:.94rem}.icon{display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:.6rem;color:#214a3b;background:#e5edde;font-size:1.3rem}.band{background:#e8eee4}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,5vw,5rem);align-items:center}.split img{width:100%;height:23rem;object-fit:cover;border-radius:.8rem}.steps{padding-left:1.55rem}.steps li{padding:.65rem .45rem}.steps span{display:block}.questions{max-width:780px}.questions details{border-bottom:1px solid #c8d3c8;padding:.8rem 0}.questions summary{cursor:pointer;font-weight:750}.contact{background:#183a2e;color:#fff}.contact .eyebrow{color:#f0cd99}.contact form{background:#fffdf8;color:#17332c;padding:1.5rem;border-radius:.8rem}.contact label{display:block;font-weight:650;margin-bottom:.68rem}.contact input,.contact textarea{width:100%;display:block;border:1px solid #a4b6a6;border-radius:.42rem;padding:.5rem;background:#fff;color:#17332c}.form-note,#contact-status{font-size:.86rem}footer{padding:1rem 5vw;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:space-between;font-size:.85rem;background:#fffdf8}@keyframes appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:820px){.cards{grid-template-columns:repeat(2,1fr)}.top nav a:not(.button){display:none}.hero::after{background:#142c25a6}}@media(max-width:560px){.cards,.split{grid-template-columns:1fr}.hero{min-height:33rem}.hero-body{padding:3rem 1.35rem}.wrap{padding:2.8rem 0}.split img{height:15rem}.top nav .button{font-size:.78rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.hero-product{margin:0;min-width:0;border:1px solid #ffffff5c;background:#fcfaf3;color:#16372c;border-radius:.8rem;overflow:hidden;box-shadow:0 22px 60px #071c1a8c}
.hero-product img{display:block;width:100%;height:auto;aspect-ratio:8/5}
.hero-product figcaption{font-size:.74rem;padding:.5rem .8rem;background:#f5f1e8}
.window-bar{display:flex;align-items:center;gap:.6rem;font-size:.72rem;padding:.52rem .75rem;font-weight:750;background:#ecf0e8}
.window-bar span:first-child{width:.55rem;height:.55rem;background:#719181;border-radius:50%}
.hero-product{width:min(90%,46rem);margin:0 auto 2rem;animation:appear .6s .15s both}
.capability-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.capability-grid ul{padding-left:1.12rem;margin-bottom:0;font-size:.93rem}
.capability-grid li+li{margin-top:.55rem}
.product-tour{background:#eaf0e7}
.has-reveal [data-reveal]{transition:opacity .58s ease,transform .58s cubic-bezier(.22,.72,.24,1)}
.has-reveal [data-reveal]:not(.seen):not(:focus-within){opacity:.16;transform:translateY(20px)}
@media(min-width:1070px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2.25rem;padding:4.3rem 5vw;min-height:38rem}.hero-body{padding:0;max-width:none}.hero h1{font-size:clamp(3.2rem,5.45vw,5.9rem)}.hero-product{width:100%;margin:0;transform:perspective(1000px) rotateY(-3deg)}.hero::after{background:linear-gradient(90deg,#142c25f5 0%,#142c25dc 39%,#142c2547 100%)}}
@media(max-width:1070px){.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.has-reveal [data-reveal]:not(.seen){opacity:1;transform:none}.hero-product{transform:none}}

.top{border-top:3px solid #b49a61}
.hero-kicker{display:flex;align-items:center;gap:.55rem}
.ui-icon{width:1.22rem;height:1.22rem;vertical-align:-.19rem;flex:0 0 auto}
.hero-product{border-color:#c1a56d9c}
.window-bar{background:#e6eee6;border-bottom:2px solid #b49a61}
.trust span{display:inline-flex;align-items:center;gap:.45rem}
.capability-grid article{
    --folio-ink:#265744;--folio-bg:#e6eee5;
    position:relative;background:#fffdfa;border-inline-start:3px solid var(--folio-ink)
}
.capability-grid [data-module="baptism"],.capability-grid [data-module="search"]{--folio-ink:#286180;--folio-bg:#e3eef5}
.capability-grid [data-module="marriage"]{--folio-ink:#824d58;--folio-bg:#f5e9ec}
.capability-grid [data-module="print"],.capability-grid [data-module="ledger"]{--folio-ink:#805b23;--folio-bg:#f5ecd8}
.capability-grid [data-module="users"]{--folio-ink:#664872;--folio-bg:#eee5f1}
.capability-grid .icon{border-radius:1.25rem 1.25rem .45rem .45rem;background:var(--folio-bg);color:var(--folio-ink)}
.capture-carousel{background:#fffdf8;border:1px solid #c8d6c9;border-radius:1rem;box-shadow:0 18px 42px #1b392717;padding:clamp(.8rem,2.5vw,1.45rem)}
.capture-carousel [hidden]{display:none!important}
.carousel-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem}
.carousel-toolbar p{margin:0;text-align:center;font-weight:750;font-size:.85rem;line-height:1.3}
.carousel-toolbar button,.carousel-selectors button{
    border:1px solid #adc1b2;border-radius:.5rem;background:#e6eee7;color:#18372b;
    cursor:pointer;font-weight:720;padding:.55rem .85rem;transition:background .18s,color .18s
}
.carousel-toolbar button:hover,.carousel-selectors button:hover{background:#cfdfd2}
.carousel-slide{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(0,1fr);align-items:center;gap:clamp(1rem,2.5vw,2rem);margin:0}
.carousel-slide + .carousel-slide{margin-top:1rem}
.capture-carousel.is-ready .carousel-slide{margin-top:0}
.capture-frame{background:#eef2eb;border:1px solid #c4d0c6;border-radius:.65rem;overflow:hidden;touch-action:pan-y}
.capture-frame img{display:block;width:100%;height:auto;aspect-ratio:8/5}
.carousel-slide figcaption{padding:.5rem 0}
.carousel-slide figcaption h3{margin:.25rem 0 .65rem;font:700 clamp(1.45rem,3.1vw,2.4rem)/1.08 Georgia,serif}
.carousel-slide figcaption p:not(.eyebrow){margin:0 0 .85rem}
.capture-zoom{padding:.5rem .75rem;background:#e7eee7;border-color:#aec1b1}
.carousel-selectors{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.1rem;padding-top:.9rem;border-top:1px solid #d7e2d7}
.carousel-selectors button{font-size:.83rem;padding:.42rem .68rem}
.carousel-selectors button[aria-current="true"]{color:#fff;background:#203f33;border-color:#203f33}
.capture-dialog{width:min(96vw,1400px);max-width:none;max-height:96vh;padding:.75rem;background:#fffdf8;color:#18372b;border:1px solid #a9bdb0;border-radius:.8rem}
.capture-dialog::backdrop{background:#0e241deb}
.capture-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.65rem}
.capture-dialog-bar button{padding:.4rem .65rem}
.capture-detail{overflow:auto;max-height:79vh;border-radius:.45rem}
.capture-detail img{width:100%;height:auto;display:block}
.capture-detail.is-magnified img{width:200%;max-width:none}
@media(max-width:760px){.carousel-slide{grid-template-columns:minmax(0,1fr);gap:.65rem}.carousel-toolbar button{padding:.45rem .55rem;font-size:.84rem}}
@media(max-width:620px){.capability-grid{grid-template-columns:1fr}.hero-product{width:calc(100% - 2.7rem)}.capture-dialog-bar{flex-wrap:wrap}}
