.legal-footer{flex-wrap:wrap}.footer .legal-footer{align-items:flex-start}.footer-nav{display:flex;flex-wrap:wrap;gap:10px 24px;max-width:760px}.footer-nav a,.footer-nav button{display:inline-flex;align-items:center;min-height:44px}.footer-nav button{background:none;border:0;padding:0;color:inherit;font:inherit;font-size:.875rem;text-decoration:underline;text-underline-offset:5px;cursor:pointer}.footer-note{flex-basis:100%;max-width:100%;font-size:.8125rem;color:#cbd4c7;line-height:1.65}.equal-note{font-size:.875rem!important;margin-top:22px;color:var(--muted)}
.privacy-banner{position:fixed;z-index:1500;bottom:18px;left:50%;transform:translateX(-50%);width:min(980px,calc(100% - 32px));padding:22px 26px;background:#f8f7f2;color:#26342a;border:1px solid #c7cfbf;box-shadow:0 7px 40px #09110c35;font-size:.9375rem}.privacy-banner h2{font:500 1.05rem/1.4 var(--sans);margin:0 0 6px}.privacy-banner p{max-width:90ch;line-height:1.55}.privacy-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.privacy-actions button,.privacy-secondary{border:1px solid #6e7c67;border-radius:3px;background:#fff;color:#26342a;padding:11px 17px;font:500 .875rem/1.3 var(--sans);min-height:44px;cursor:pointer}.privacy-actions [data-privacy-accept],.privacy-actions [data-privacy-reject]{background:#263c2b;color:white;border-color:#263c2b;flex:1}.privacy-actions button:hover{outline:2px solid #94a48a;outline-offset:2px}.privacy-banner a,.privacy-dialog a{color:inherit;text-underline-offset:3px}.privacy-dialog{border:1px solid #b7c3ae;background:#f8f7f2;color:#26342a;padding:28px;width:min(620px,calc(100% - 30px));max-height:calc(100dvh - 32px);overflow:auto}.privacy-dialog::backdrop{background:#0c170da8}.privacy-dialog h2{font-size:1.65rem;margin-bottom:12px}.privacy-dialog>p{font-size:.9375rem}.privacy-close{float:right;min-width:44px;min-height:44px;border:1px solid #b7c3ae;background:transparent;font-size:1.4rem;color:inherit}.privacy-category{display:grid;grid-template-columns:24px 1fr;gap:12px;padding:18px 0;border-bottom:1px solid #d5dccc}.privacy-category input{width:21px;height:21px;accent-color:#314b34;margin-top:4px}.privacy-category strong{font-size:.9375rem;display:block}.privacy-category small{display:block;line-height:1.55;margin-top:5px;font-size:.8125rem}.privacy-status{font-size:.8125rem;color:#4d5e47;margin-top:16px}.privacy-save{width:100%;margin-top:12px}.map-consent{position:absolute;inset:0;z-index:600;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:30px;text-align:center;background:#e3e8dd}.map-consent h3{font-size:1.9rem;max-width:22ch}.map-consent p{font-size:.9375rem;max-width:48ch;line-height:1.6}.map-consent a{font-size:.875rem}.map-consent button{white-space:normal}.map-consent-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 14px 12px;font-size:.8125rem}.map-consent-controls button{min-height:44px;border:0;background:none;text-decoration:underline;text-underline-offset:4px;cursor:pointer;color:#344c34}.privacy-banner[hidden],.map-consent[hidden],.privacy-status[hidden],.map-loading[hidden]{display:none!important}
.legal-page{max-width:880px;margin:0 auto;padding:70px 25px 90px}.legal-page h1{font-size:clamp(2.25rem,5vw,3.5rem);margin:12px 0 20px}.legal-page h2{font-size:1.65rem;line-height:1.3;margin:38px 0 14px}.legal-page p,.legal-page li{font-size:1rem;line-height:1.8}.legal-page p+p{margin-top:16px}.legal-page ul{padding-left:22px;margin-top:14px}.legal-page li+li{margin-top:8px}.legal-page a{text-underline-offset:4px}.legal-page .legal-meta{font-size:.8125rem;color:var(--muted)}.legal-alert{padding:20px 23px;border-left:3px solid #a77742;background:#ecebdf;margin:24px 0}.legal-index{display:flex;flex-wrap:wrap;gap:10px 20px;margin:24px 0;font-size:.875rem}.legal-page table{width:100%;border-collapse:collapse;font-size:.875rem}.legal-page th,.legal-page td{text-align:left;vertical-align:top;padding:12px 10px;border-bottom:1px solid #cdd4c4;line-height:1.6}.legal-page .table-scroll{overflow-x:auto;margin-block:22px}.legal-page .legal-back{display:inline-flex;margin-top:40px}.legal-page .privacy-status{font-size:.875rem}.legal-page [id]{scroll-margin-top:35px}
@media(max-width:760px){.privacy-banner{bottom:8px;width:calc(100% - 16px);padding:16px;max-height:75dvh;overflow:auto}.privacy-banner p{font-size:.8125rem}.privacy-actions{gap:8px}.privacy-actions [data-privacy-settings]{flex-basis:100%}.privacy-dialog{padding:20px}.footer .legal-footer{display:block}.footer-nav{margin-top:18px;gap:3px 20px}.footer-note{margin-top:20px}.map-consent{padding:22px}.map-consent h3{font-size:1.55rem}.legal-page{padding-top:40px}.legal-page th,.legal-page td{padding-inline:6px}}
.map-frame{position:relative}.map-consent-controls [hidden]{display:none}
[data-privacy-settings][hidden]{display:none!important}
/* Optional invitation and editable photo positions share the site's typography. */
.exit-popup{border:1px solid #738377;border-radius:12px;background:#17271f;color:#f5f2e9;width:min(540px,calc(100vw - 32px));padding:42px;box-shadow:0 24px 90px #0008}.exit-popup::backdrop{background:#0d1918bb}.exit-popup h2{font:400 32px/1.25 Lora,serif;margin:12px 0 20px}.exit-popup p{font-size:17px;line-height:1.7;color:#d4dfd4;margin-bottom:28px}.exit-close{position:absolute;right:16px;top:12px;background:transparent;border:0;color:inherit;font-size:30px;cursor:pointer}.exit-popup .button{background:#bd421d;color:white}.cms-photo{margin:0;width:100%}.cms-photo img{display:block;width:100%;height:auto;max-height:650px;object-fit:contain}.cms-photo figcaption{padding:14px 0;font-size:16px;line-height:1.5}.exit-popup:focus{outline:none}@media(max-width:600px){.exit-popup{padding:32px 24px}.exit-popup h2{font-size:27px}}
