:root{--ivory:#F3EEE3;--sand:#E7DECD;--stone:#D3C8B4;--line:#CDC2AD;--forest:#1D2A20;--forest-2:#26362A;--olive:#4B5434;--olive-hi:#5C6740;--clay:#8E5F42;--ink:#1F231D;--muted:#575B50;--on-dark:#EFE9DC;--on-dark-2:#C3BDA9;--c-primary:var(--olive);--serif:"Bodoni Moda",Didot,"Bodoni 72",Georgia,serif;--sans:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;--ease-out:cubic-bezier(.23,1,.32,1);--ease-io:cubic-bezier(.77,0,.175,1);--gut:clamp(16px,4.5vw,64px);--max:1320px;--nav-h:72px;--s1:clamp(72px,10vw,144px)}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 8px);-webkit-text-size-adjust:100%}body{margin:0;font:400 17px/1.6 var(--sans);color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;overflow-x:clip}::selection{background:var(--olive);color:var(--ivory)}img{max-width:100%;display:block}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;margin:0;letter-spacing:-.015em;text-wrap:balance;font-optical-sizing:auto}h2{font-size:clamp(2.1rem,4.4vw,3.6rem)}h3{font-size:1.35rem;line-height:1.2}p{margin:0}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gut)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:var(--gut);top:-60px;z-index:100;background:var(--forest);color:var(--ivory);padding:10px 16px;text-decoration:none}.skip:focus{top:10px}:focus-visible{outline:2px solid var(--clay);outline-offset:3px}.lead{font-size:clamp(1.05rem,1.4vw,1.2rem);color:var(--muted);max-width:56ch}.btn{--bg:var(--olive);--fg:var(--ivory);display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:0 1.6rem;border:1px solid var(--bg);border-radius:2px;background:var(--bg);color:var(--fg);font:500 .98rem/1 var(--sans);letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .16s var(--ease-out);-webkit-tap-highlight-color:transparent;user-select:none}.btn svg{width:20px;height:20px;fill:currentColor}.btn:active{transform:scale(.97)}.btn[disabled]{opacity:.55;cursor:progress;transform:none}.btn-quiet{--bg:transparent;--fg:var(--ink);border-color:var(--ink)}.btn-quiet-dark{--bg:transparent;--fg:var(--on-dark);border-color:#efe9dc8c}.btn-wa{--bg:#1B6B43;--fg:#fff}.btn-sm{min-height:42px;padding:0 1.1rem;font-size:.9rem}.btn-block{width:100%}.btn-icon{padding:0;width:52px}@media (hover:hover) and (pointer:fine){.btn-primary:hover{--bg:var(--forest)}.btn-quiet:hover{--bg:var(--ink);--fg:var(--ivory)}.btn-quiet-dark:hover{--bg:var(--on-dark);--fg:var(--forest)}.btn-wa:hover{--bg:#145536}}.nav{position:fixed;inset:0 0 auto;z-index:50;height:var(--nav-h);background:transparent;transition:background-color .25s ease,box-shadow .25s ease}.nav.solid{background:#f3eee3f5;box-shadow:0 1px 0 var(--line)}.nav-in{display:flex;align-items:center;gap:2rem;height:100%}.brand{font:400 1.3rem/1 var(--serif);text-decoration:none;letter-spacing:-.01em;margin-right:auto;display:flex;align-items:center;gap:.7rem;min-height:44px}.brand img{height:34px;width:auto}.links{display:flex;gap:1.9rem}.links a{font-size:.94rem;text-decoration:none;padding:.4rem 0;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .25s var(--ease-out)}@media (hover:hover) and (pointer:fine){.links a:hover{background-size:100% 1px}}.burger{display:none;width:48px;height:48px;border:0;background:none;color:var(--ink);cursor:pointer;margin-right:-12px}.burger svg,.lb button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}@media (max-width:960px){.burger{display:grid;place-items:center}.nav-cta{display:none}.links{position:fixed;inset:var(--nav-h) 0 0;flex-direction:column;gap:0;padding:12px var(--gut) 40px;background:var(--ivory);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s var(--ease-out),transform .25s var(--ease-out),visibility 0s .25s}.links.open{opacity:1;visibility:visible;transform:none;transition:opacity .2s var(--ease-out),transform .25s var(--ease-out)}.links a{font:400 1.9rem/1.2 var(--serif);padding:16px 0;border-bottom:1px solid var(--line);background:none}.nav.menu{background:var(--ivory)}}.hero{padding-top:var(--nav-h);min-height:100svh;display:flex}.hero-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,5vw,88px);align-items:stretch;padding-bottom:clamp(24px,4vw,56px);padding-top:clamp(16px,3vw,40px)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(8px,2vw,24px) 0}.place{font-size:.95rem;color:var(--muted);margin-bottom:clamp(20px,3vw,36px)}.hero h1{font-size:clamp(2.6rem,5.2vw,5.1rem);line-height:1.02;letter-spacing:-.025em;max-width:13ch}.hero-text{font-size:clamp(1.05rem,1.35vw,1.2rem);color:var(--muted);max-width:42ch;margin:clamp(20px,2.4vw,32px) 0 clamp(28px,3vw,40px)}.cta{display:flex;flex-wrap:wrap;gap:12px}.facts{display:grid;grid-template-columns:repeat(3,minmax(0,max-content));justify-content:start;gap:0;margin:clamp(36px,5vw,64px) 0 0;border-top:1px solid var(--line)}.facts div{padding:16px 28px 0 0;margin-right:28px}.facts div+div{border-left:1px solid var(--line);padding-left:28px}.facts dt{font-size:.82rem;color:var(--muted)}.facts dd{margin:4px 0 0;font:400 1.15rem/1.2 var(--serif);white-space:nowrap}.hero-frame{position:relative;min-height:min(78svh,760px);border-radius:min(22vw,320px) min(22vw,320px) 0 0;overflow:hidden;background:var(--forest);isolation:isolate}.hero-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:settle 1.4s var(--ease-out) both}@keyframes settle{0%{transform:scale(1.04)}to{transform:none}}.hero-empty{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:28px;color:var(--on-dark-2)}.hero-empty .arch{width:min(46%,240px);fill:none;stroke:currentColor;stroke-width:1;opacity:.6}.hero-empty span{font:400 clamp(1.4rem,2.2vw,2rem)/1 var(--serif);color:var(--on-dark);letter-spacing:-.01em}.hero-frame.has-img .hero-empty{display:none}.s{padding:var(--s1) 0}.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end;margin-bottom:clamp(40px,5vw,72px)}.intro-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,112px)}.intro h2{font-size:clamp(2.4rem,4.8vw,4.2rem);max-width:11ch}.intro .lead{font-size:clamp(1.15rem,1.6vw,1.4rem);color:var(--ink);max-width:40ch}.modes{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(40px,5vw,72px);border-top:1px solid var(--line)}.mode{padding:24px 24px 0 0}.mode+.mode{padding-left:24px;border-left:1px solid var(--line)}.mode h3{margin-bottom:10px}.mode p{color:var(--muted);font-size:.98rem}.mode strong{color:var(--ink);font-weight:600}.amen{background:var(--sand)}.amen-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,112px);align-items:start}.am{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--stone)}.am li{display:flex;align-items:baseline;gap:14px;padding:20px 0;border-bottom:1px solid var(--stone);font:400 clamp(1.25rem,1.8vw,1.6rem)/1.2 var(--serif)}.am li:nth-child(odd){padding-right:24px}.am li:nth-child(2n){padding-left:24px;border-left:1px solid var(--stone)}.am li small{display:block;font:400 .9rem/1.4 var(--sans);color:var(--muted);margin-top:4px}.count{color:var(--muted);justify-self:end}.gal{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:clamp(120px,14vw,220px);gap:clamp(8px,1vw,14px)}.gal button{position:relative;padding:0;border:0;overflow:hidden;cursor:zoom-in;background:var(--stone);grid-column:span var(--c,4);grid-row:span var(--r,2)}.gal img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}@media (hover:hover) and (pointer:fine){.gal button:hover img{transform:scale(1.025)}}.book{background:var(--ivory);border-top:1px solid var(--line)}.book-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,5vw,88px);align-items:start}.cal-col{position:sticky;top:calc(var(--nav-h) + 24px)}.seg{display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid var(--ink);padding:3px;margin:0 0 20px;width:100%;border-radius:2px}.seg label{position:relative;cursor:pointer}.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.seg span{display:grid;place-items:center;min-height:46px;padding:0 12px;font-size:.95rem;font-weight:500;transition:background-color .2s ease,color .2s ease;text-align:center}.seg input:checked+span{background:var(--forest);color:var(--ivory)}.seg input:focus-visible+span{outline:2px solid var(--clay);outline-offset:2px}.seg-sm span{min-height:40px;font-size:.9rem}.cal{background:#fbf8f1;border:1px solid var(--line);padding:clamp(16px,2vw,24px)}.cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.cal-h strong{font:400 1.35rem/1 var(--serif)}.cal-h button{width:44px;height:44px;border:1px solid var(--line);background:transparent;cursor:pointer;display:grid;place-items:center;color:var(--ink);transition:background-color .2s ease,transform .16s var(--ease-out)}.cal-h button:active{transform:scale(.95)}.cal-h button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.cal-h button[disabled]{opacity:.35;cursor:default}@media (hover:hover) and (pointer:fine){.cal-h button:not([disabled]):hover{background:var(--sand)}}.cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}.cal-g .dw{font-size:.75rem;color:var(--muted);padding:6px 0 8px;font-weight:500}.cal-g button{aspect-ratio:1;min-height:40px;border:0;background:transparent;font:500 .95rem var(--sans);font-variant-numeric:tabular-nums;color:var(--ink);cursor:pointer;transition:background-color .15s ease,color .15s ease}@media (hover:hover) and (pointer:fine){.cal-g button:not(.busy):not(.past):not(.sel):hover{background:var(--sand)}}.cal-g .past{color:#a8a291;cursor:default}.cal-g .busy{color:#a8a291;cursor:not-allowed;text-decoration:line-through;background:repeating-linear-gradient(135deg,transparent 0 5px,rgba(142,95,66,.12) 5px 6px)}.cal-g .rng{background:#e2e0cc}.cal-g .sel{background:var(--forest);color:var(--ivory)}.cal-g .today{box-shadow:inset 0 -2px 0 var(--clay)}.legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;font-size:.8rem;color:var(--muted)}.legend i{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-1px}.sum{margin-top:16px;padding:14px 16px;border-left:2px solid var(--olive);background:var(--sand);font-weight:500;min-height:52px}form.q{display:grid;gap:28px}form.q fieldset{border:0;margin:0;padding:0;display:grid;gap:14px}form.q legend{font:400 1.5rem/1.2 var(--serif);padding:0;margin-bottom:14px}form.q label{display:block;font-size:.92rem;font-weight:500}form.q label>input,form.q label>textarea{display:block;margin-top:6px}.opt{font-weight:400;color:var(--muted)}form.q input:not([type=checkbox]):not([type=radio]),form.q textarea{font:inherit;font-size:1rem;padding:.8rem .9rem;border:1px solid var(--stone);border-radius:2px;background:#fbf8f1;min-height:50px;width:100%;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease}form.q input:focus,form.q textarea:focus{outline:none;border-color:var(--olive);box-shadow:0 0 0 3px #4b54342e}form.q [aria-invalid=true]{border-color:#9b2c1f!important}form.q textarea{resize:vertical;min-height:96px}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.people{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.stepper{display:grid;gap:8px;padding:16px;border:1px solid var(--line);background:#fbf8f1}.step-ctl{display:grid;grid-template-columns:48px 1fr 48px;align-items:center}.step-ctl button{height:48px;border:1px solid var(--stone);background:var(--ivory);cursor:pointer;display:grid;place-items:center;color:var(--ink);transition:background-color .15s ease,transform .12s var(--ease-out)}.step-ctl button:active{transform:scale(.94)}.step-ctl button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.step-ctl button[disabled]{opacity:.35;cursor:default}form.q .step-ctl input:not([type=checkbox]){text-align:center;font:400 1.6rem/1 var(--serif);border:0;background:transparent;min-height:48px;padding:0;-moz-appearance:textfield}.step-ctl input::-webkit-inner-spin-button{-webkit-appearance:none}.cap{display:grid;gap:6px;font-size:.82rem;color:var(--muted)}.bar{height:3px;background:var(--line);overflow:hidden}.bar i{display:block;height:100%;background:var(--olive);transform-origin:left;transition:transform .25s var(--ease-out)}.cap.full .cap-t{color:var(--clay);font-weight:600}.switch{display:flex!important;margin:0;align-items:center;gap:14px;cursor:pointer;min-height:44px;grid-template-columns:none}.switch input{appearance:none;width:44px;height:26px;border-radius:13px;background:var(--stone);position:relative;cursor:pointer;flex:none;margin:0;transition:background-color .2s ease}.switch input:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .2s var(--ease-out)}.switch input:checked{background:var(--olive)}.switch input:checked:after{transform:translate(18px)}.switch span{font-size:1rem;font-weight:500}.reveal{display:grid;gap:14px;padding:4px 0 8px 58px}.reveal:not([hidden]){animation:in .22s var(--ease-out)}@keyframes in{0%{opacity:0;transform:translateY(-4px)}}.note,.fine{font-size:.85rem;color:var(--muted)}.fine{text-align:center}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.msg{color:#9b2c1f;font-weight:500;min-height:0}.msg:empty{display:none}.ok-box{grid-column:2;padding:clamp(28px,4vw,48px);background:var(--forest);color:var(--on-dark);display:grid;gap:16px;justify-items:start;outline:none}.ok-box h3{font-size:clamp(1.8rem,3vw,2.4rem)}.ok-num{font-variant-numeric:tabular-nums;color:var(--on-dark-2);font-size:.95rem}.ok-box p{max-width:46ch}.ok-box .btn-block{width:100%;min-height:56px;font-size:1.05rem}.steps{list-style:none;margin:4px 0;padding:0;display:grid;gap:8px;width:100%}.steps li{display:flex;align-items:center;gap:12px;color:var(--on-dark-2);font-size:.95rem}.steps li:before{content:"";flex:none;width:18px;height:18px;border-radius:50%;border:1.5px solid currentColor}.steps li.done{color:var(--on-dark)}.steps li.done:before{background:var(--on-dark);border-color:var(--on-dark);box-shadow:inset 0 0 0 4px var(--forest)}.steps li.now{color:var(--on-dark);font-weight:600}.ok-status{font-size:.92rem;color:var(--on-dark)}.ok-msg{width:100%;border-color:#efe9dc33}.ok-msg summary{font:500 .95rem var(--sans);padding:12px 0}.ok-msg pre{white-space:pre-wrap;font:400 .88rem/1.5 var(--sans);color:var(--on-dark-2);background:#0000002e;padding:14px;margin:0 0 12px;max-height:260px;overflow:auto}.ok-more{font-size:.92rem}.ok-more a{color:var(--on-dark)}.ok-fine{font-size:.82rem;color:var(--on-dark-2)}.loc{background:var(--forest);color:var(--on-dark)}.loc-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(32px,6vw,112px);align-items:end}.loc h2{color:var(--on-dark-2);font-size:clamp(1.4rem,2vw,1.8rem);margin-bottom:24px}.addr{font:400 clamp(2.6rem,6vw,5.6rem)/1 var(--serif);font-style:normal;letter-spacing:-.025em}.loc .lead{color:var(--on-dark-2);margin-bottom:28px}.street{margin-top:20px;color:var(--on-dark-2);max-width:40ch}.faq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,112px)}details{border-bottom:1px solid var(--line)}#faq-l details:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;font:400 clamp(1.15rem,1.6vw,1.35rem)/1.3 var(--serif);min-height:44px}summary::-webkit-details-marker{display:none}summary:after{content:"";flex:none;width:12px;height:12px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-3px,-3px);transition:transform .2s var(--ease-out)}details[open] summary:after{transform:rotate(-135deg) translate(-3px,-3px)}details p{padding:0 0 22px;color:var(--muted);max-width:62ch;white-space:pre-line}.foot{background:var(--forest-2);color:var(--on-dark-2);padding:clamp(56px,7vw,96px) 0 calc(40px + env(safe-area-inset-bottom));font-size:.95rem}.foot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 48px}.foot-name{font:400 1.6rem/1.1 var(--serif);color:var(--on-dark);margin-bottom:8px}.foot a{color:var(--on-dark)}.foot-links{display:grid;gap:4px;align-content:start}.foot-links a{display:inline-flex;align-items:center;min-height:44px}.foot-det details{border-color:#efe9dc2e}.foot-det summary{font:500 .95rem var(--sans);padding:14px 0;color:var(--on-dark)}.foot-det details p{color:var(--on-dark-2)}.foot-legal{grid-column:1/-1;padding-top:28px;border-top:1px solid rgba(239,233,220,.15);font-size:.85rem}.bar-m{display:none}@media (max-width:760px){.bar-m{display:grid;grid-template-columns:1fr 52px;gap:8px;position:fixed;inset:auto 0 0;z-index:40;padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom));background:#f3eee3f7;box-shadow:0 -1px 0 var(--line);transition:transform .25s var(--ease-out)}.bar-m.hide{transform:translateY(110%)}.foot{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}.lb{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#0f1510;color:#fff}.lb::backdrop{background:#0f1510}.lb[open]{display:grid;place-items:center;animation:lbin .22s var(--ease-out)}@keyframes lbin{0%{opacity:0}}.lb img{max-width:calc(100vw - 32px);max-height:calc(100dvh - 120px);object-fit:contain}.lb button{position:absolute;width:52px;height:52px;border:1px solid rgba(255,255,255,.3);background:#0f151099;color:#fff;cursor:pointer;display:grid;place-items:center;border-radius:50%;transition:background-color .2s ease,transform .16s var(--ease-out)}.lb button:active{transform:scale(.94)}@media (hover:hover) and (pointer:fine){.lb button:hover{background:#ffffff24}}.lb-x{top:16px;right:16px}.lb-pv{left:16px;top:50%;margin-top:-26px}.lb-nx{right:16px;top:50%;margin-top:-26px}.lb-n{position:absolute;bottom:20px;left:0;right:0;text-align:center;font-size:.9rem;color:#c9c3b2;font-variant-numeric:tabular-nums}.cookie{position:fixed;left:var(--gut);bottom:calc(16px + env(safe-area-inset-bottom));z-index:60;max-width:400px;background:var(--forest);color:var(--on-dark);padding:20px;font-size:.92rem;box-shadow:0 12px 32px -12px #0006}.cookie div{display:flex;gap:8px;margin-top:14px}.cookie .btn{min-height:44px;font-size:.9rem}@media (max-width:760px){.cookie{right:var(--gut);bottom:calc(84px + env(safe-area-inset-bottom))}}@media (max-width:1080px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.modes{grid-template-columns:1fr}.mode,.mode+.mode{padding:20px 0;border-left:0;border-bottom:1px solid var(--line)}}@media (max-width:860px){.hero{min-height:auto}.hero-grid{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:12px}.hero-frame{order:-1;min-height:0;aspect-ratio:4/4.2;border-radius:46vw 46vw 0 0}.hero h1{max-width:16ch}.intro-grid,.amen-grid,.faq-grid,.loc-grid,.sec-head,.book-grid{grid-template-columns:1fr}.count{justify-self:start}.cal-col{position:static}.ok-box{grid-column:auto}.gal{grid-template-columns:repeat(6,1fr);grid-auto-rows:clamp(110px,26vw,200px)}.gal button{grid-column:span 3;grid-row:span 2}.gal button:first-child,.gal button:last-child:nth-child(2n){grid-column:span 6}.foot-grid{grid-template-columns:1fr}}@media (max-width:520px){body{font-size:16px}.hero-frame{aspect-ratio:5/4;border-radius:40vw 40vw 0 0}.cta .btn{flex:1 1 100%}.facts{grid-template-columns:1fr 1fr 1fr}.facts div{padding:12px 10px 0 0;margin:0}.facts div+div{padding-left:10px}.facts dd{font-size:1rem;white-space:normal}.am{grid-template-columns:1fr}.am li:nth-child(n){padding-left:0;padding-right:0;border-left:0}.two,.people{grid-template-columns:1fr}.reveal{padding-left:0}.s{padding:64px 0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
