
:root{--pine:#13392d;--deep:#0b291f;--cream:#f8f2e6;--gold:#e9bc67;--ink:#18382b;--muted:#536658;--red:#992e35}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--deep);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}h1,h2,h3{font-family:'Fraunces',Georgia,serif}a{color:inherit} .snow{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}.snow span{position:absolute;top:-25px;width:var(--s);height:var(--s);left:var(--x);background:rgba(255,255,255,var(--o));border-radius:50%;filter:blur(.3px);animation:fall var(--d) linear infinite;animation-delay:var(--delay)}@keyframes fall{to{transform:translate3d(var(--drift),110vh,0)}}@media(prefers-reduced-motion:reduce){.snow{display:none}*{scroll-behavior:auto!important}}.site{position:relative;max-width:1380px;margin:auto;z-index:0;box-shadow:0 0 80px #061d17}.nav{position:relative;z-index:2;padding:15px clamp(20px,5vw,75px);display:flex;align-items:center;justify-content:space-between;gap:14px;background:#102e24;color:var(--cream)}.brand{font-family:Fraunces,Georgia,serif;color:var(--gold);font-size:20px;font-weight:650;text-decoration:none}.links{display:flex;gap:23px;font-size:13px}.links a{text-decoration:none}.links a:hover{text-decoration:underline}.hero{position:relative;background:radial-gradient(circle at 75% 32%,#2d604a 0%,transparent 44%),linear-gradient(140deg,#123b2d,#0a271f);padding:clamp(38px,6vw,80px) 20px 56px;color:var(--cream);text-align:center;overflow:hidden}.hero:before,.hero:after{content:'✦';position:absolute;font-size:40px;color:var(--gold);opacity:.55}.hero:before{top:60px;left:8%}.hero:after{bottom:55px;right:10%}.tag{font-size:12px;letter-spacing:3px;color:var(--gold);font-weight:800;text-transform:uppercase}.original-logo{display:block;max-width:min(445px,78vw);width:100%;margin:13px auto 5px;mix-blend-mode:normal;filter:drop-shadow(0 12px 25px #0006)}.hero h1{font-size:clamp(39px,5.2vw,65px);margin:10px auto;font-weight:500;letter-spacing:-1.7px}.hero-intro{max-width:660px;margin:0 auto 24px;color:#f5ecd9;font-size:15px;line-height:1.75}.hero .subtitle{font-size:17px;color:#eee0c9;margin:0 0 20px}.hero-dates{display:inline-block;color:#efd6a6;border:1px solid #8f815e;border-radius:99px;padding:11px 17px;font-size:12px;font-weight:700;letter-spacing:.5px}.buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:23px}.btn{padding:13px 21px;border-radius:7px;display:inline-block;font-weight:800;font-size:13px;text-decoration:none;background:var(--gold);color:#17372a;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.outline{background:transparent;color:var(--cream);border:1px solid #a99c7f}.section{padding:58px clamp(20px,5vw,75px);background:var(--cream)}.heading{text-align:center;margin-bottom:25px}.heading h2{font-size:clamp(32px,4vw,48px);line-height:1.12;margin:8px 0 10px;font-weight:550}.heading p{font-size:15px;color:#365341;margin:0}.eyebrow{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:800;color:#9a6f34}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.card{background:#fffdf7;border:1px solid #dfd4bc;border-radius:10px;padding:27px 24px;min-height:210px;box-shadow:0 8px 24px #243b2710}.card .symbol{color:#a57931;font-size:27px}.card .small{color:#84652b;text-transform:uppercase;letter-spacing:1.4px;font-size:11px;font-weight:800;margin:12px 0 7px}.card h3{font-size:24px;margin:0 0 12px;font-weight:550}.card p{font-size:15px;line-height:1.65;margin:0;color:#19392b}.card a{color:#155d3f;font-weight:800}.count{padding:33px 20px;background:#e6dbc6;text-align:center}.count .units{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:15px}.unit b{font:600 clamp(29px,4vw,48px) Fraunces,Georgia,serif;display:block}.unit small{text-transform:uppercase;letter-spacing:1.5px;font-size:10px}.gallery{background:#f8f2e6}.gallery-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,.62fr);gap:15px;align-items:stretch;max-width:1050px;margin:auto}.photo-main{width:100%;height:auto;max-height:740px;object-fit:contain;object-position:center;border-radius:12px;display:block;background:#142d26}.gallery-side{background:#e8ddc8;border:1px dashed #af9d7c;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:22px}.gallery-side span{font-size:38px;color:#977744}.gallery-side b{font:500 23px Fraunces,serif}.gallery-side p{font-size:14px;color:#304b3a;line-height:1.6}.location{background:#e9dfcd}.location-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:28px;align-items:center}.address h2{font-size:42px;font-weight:500;margin:12px 0}.address p{line-height:1.8;margin-bottom:24px}.map{height:315px;border-radius:10px;border:1px solid #b8c1b4;overflow:hidden;background:#cad7c8}.map iframe{width:100%;height:100%;border:0}.footer{background:#102e24;color:#ede0c8;text-align:center;padding:34px 20px}.footer strong{font:italic 26px Fraunces,Georgia,serif;color:var(--gold)}.footer p{font-size:12px;opacity:.9}.footer a{color:var(--gold)}@media(max-width:720px){.nav{flex-direction:column}.links{gap:12px;flex-wrap:wrap;justify-content:center}.cards{grid-template-columns:1fr}.card{min-height:auto}.gallery-layout,.location-grid{grid-template-columns:1fr}.photo-main{height:auto;max-height:none}.gallery-side{min-height:170px}.hero{padding:37px 17px 43px}.section{padding:43px 18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.snow{display:none}}a:focus-visible{outline:3px solid #c18a2d;outline-offset:4px}.card a:hover,.footer a:hover{text-decoration:underline}
/* V6: readability and privacy refinements */
body{font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif}
h1,h2,h3,.brand,.footer strong{font-family:Georgia,'Times New Roman',serif}
.original-logo{width:100%;max-width:min(495px,87vw);filter:drop-shadow(0 14px 27px rgba(0,0,0,.35))}
.hero-intro{font-size:16px;line-height:1.8;color:#fff7e9}
.nav .links a,.footer a{color:#fff2d8}
.heading p{max-width:720px;margin:0 auto;line-height:1.65;color:#274a39}
.card{background:#fffdf7;color:#132f24}.card .small{color:#76521f}.card p{color:#18382b}
.card a{color:#125239}.gallery-side p{color:#244635}
.btn:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #eebc58;outline-offset:4px}
.map-consent{height:100%;display:grid;place-content:center;text-align:center;gap:13px;padding:25px;background:radial-gradient(circle at 70% 20%,#e1e5d4,transparent 65%),#d7dfd1;color:#17372b}
.map-consent p{max-width:420px;margin:0 auto;font-size:14px;line-height:1.55}.map-consent strong{font:600 25px Georgia,serif}
.map-consent button{cursor:pointer;border:none;margin:auto}.map iframe{width:100%;height:100%;border:0}
.legal-links{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-top:16px}.legal-links button{background:none;border:0;color:#f3d99c;text-decoration:underline;cursor:pointer;font:inherit;font-size:13px}
dialog.legal{border:1px solid #c6ae79;border-radius:15px;max-width:650px;width:calc(100% - 30px);max-height:80vh;overflow:auto;padding:27px;background:#fffaf1;color:#17372b;box-shadow:0 24px 70px #0009}dialog.legal::backdrop{background:#071b16c9;backdrop-filter:blur(3px)}dialog.legal h2{font-size:32px;margin:0 0 14px}dialog.legal h3{font-size:19px;margin:18px 0 6px}dialog.legal p,dialog.legal li{font-size:14px;line-height:1.65}dialog.legal .close-legal{background:#173c2d;color:white;border:0;border-radius:6px;padding:9px 14px;font-weight:700;cursor:pointer;float:right}
.notice{font-size:12px;color:#68532c;background:#f4e8cf;padding:10px 13px;border-radius:7px;border:1px solid #e2cfa9}
.gallery-side .newphotos{font-size:12px;max-width:240px;overflow-wrap:anywhere}
@media(max-width:720px){.hero-intro{font-size:15px}.map{height:340px}.legal-links{gap:14px}}

/* V7 final: logo contrast, clarity, mobile comfort */
.hero{background:radial-gradient(circle at 50% 14%,#204536 0%,#102f25 55%,#0b291f 100%)}
.original-logo{filter:drop-shadow(0 8px 24px #0007);max-width:min(510px,92vw);height:auto;object-fit:contain}
.hero .tag{color:#f6cd7f}.hero h1{color:#fff9eb;text-wrap:balance}
.hero-intro{max-width:720px;color:#fff8e8}
.card .small{color:#704a20}.card h3{color:#17382a}
.card p{color:#18372c}.address p{color:#1d3c2e}
.nav .links a:hover,.nav .links a:focus-visible{text-decoration:underline}
.extra-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:23px auto 0;max-width:1050px}
.extra-gallery[hidden]{display:none}.extra-gallery figure{margin:0;background:#e6d9c3;aspect-ratio:4/3;border-radius:10px;overflow:hidden}
.extra-gallery img{display:block;width:100%;height:100%;object-fit:cover}
.gallery-layout{align-items:start}.photo-main{max-height:none;object-fit:contain;height:auto;aspect-ratio:auto}
.site{isolation:isolate}.snow{z-index:1}.nav,.hero,.section,.count,.footer{position:relative;z-index:2}
@media(max-width:720px){.hero{padding:30px 17px 42px}.hero h1{font-size:clamp(34px,8vw,46px)}.original-logo{max-width:min(450px,94vw)}.extra-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.links a{padding:5px 3px}}
@media(max-width:390px){.links{gap:8px}.links a{font-size:12px}}
