:root{--green:#123c32;--green2:#092f28;--gold:#cfad65;--cream:#f9f7f1;--ink:#243630;--muted:#7a8580;--border:#e4e8e2;--shadow:0 10px 35px #163b3112}*{box-sizing:border-box}body{margin:0;background:var(--cream);font:15px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink)}button,textarea{font:inherit}a{text-decoration:none;color:inherit}a:hover{color:#2a7b60}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 3.5%;background:var(--green2);color:#fff;position:sticky;top:0;z-index:20;box-shadow:0 2px 20px #051c1840}.brand{display:flex;align-items:center;gap:13px;font:bold 25px/1.1 Georgia,serif;color:#fff;white-space:nowrap}.brand:hover{color:#fff}.brand small{display:block;font:600 10px/2 system-ui,sans-serif;letter-spacing:2.8px;color:var(--gold)}.brand-mark{color:var(--gold);font-size:38px}.topnav{display:flex;align-items:center;gap:6px}.topnav a{color:#dbeae4;padding:12px 17px;border-radius:13px;font-weight:650;white-space:nowrap}.topnav a:hover,.topnav a.active{color:#fff;background:#ffffff20}.shell{display:grid;grid-template-columns:232px minmax(0,1fr);max-width:1800px;margin:auto}.sidebar{min-height:calc(100vh - 78px);background:linear-gradient(160deg,#123e33,#0b3028);color:#e4f0eb;padding:35px 16px;align-self:stretch}.aside-label{font-size:10px;letter-spacing:2px;color:#9bb9aa;font-weight:800;margin:0 0 13px 13px}.gap-top{margin-top:36px}.side-link{display:block;border-radius:11px;padding:12px 15px;margin:5px 0;color:#e4f0eb;font-weight:570}.side-link:hover,.side-link.active{background:#38715c;color:white}.side-note{margin:45px 8px 0;color:#bfd0c7;font-size:12px;border-top:1px solid #ffffff25;padding-top:20px}.main{padding:28px 34px;min-width:0}.hero{position:relative;isolation:isolate;background:radial-gradient(ellipse at 76% 18%,#a6b892 0%,transparent 42%),linear-gradient(115deg,#194b3d,#3e6c59 55%,#acc8aa);height:300px;border-radius:22px;overflow:hidden;color:#fff;display:flex;align-items:center;padding:43px 6%;box-shadow:var(--shadow)}.hero:before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#123e35ed 0%,#123e3580 64%,transparent 100%)}.hero-content{max-width:650px}.eyebrow{font-size:11px;letter-spacing:2.6px;color:#f1d99d;font-weight:800}.eyebrow.muted{color:#7d977d}.hero h1{font:normal clamp(34px,4vw,57px)/1.08 Georgia,serif;letter-spacing:-1px;margin:11px 0}.hero p{font-size:16px;color:#e6f0e9;margin:16px 0}.hero-stats{display:flex;gap:26px;margin-top:23px}.hero-stats span{border-right:1px solid #ffffff55;padding-right:25px}.hero-stats span:last-child{border:0}.hero-stats strong{font-size:24px}.hero-art{position:absolute;z-index:-1;right:6%;bottom:0;width:32%;height:95%;opacity:.65;display:flex;justify-content:center;align-items:center;font:italic 80px Georgia;color:#e3efd850;transform:rotate(-8deg)}.river{position:absolute;width:350px;height:200px;right:0;bottom:-80px;border:34px solid #d6e4d590;border-top:0;border-radius:50%;transform:rotate(-20deg)}.section-head{display:flex;align-items:end;justify-content:space-between;margin:36px 0 19px;gap:16px}.section-head h2{font:normal 35px Georgia,serif;margin:4px 0}.section-meta{color:var(--muted);font-size:13px}.album-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}.album-card,.media-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border);transition:transform .2s,box-shadow .2s;text-align:left;min-width:0}.album-card:hover,.media-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px #163b3125}.album-card{position:relative}.album-photo,.media-photo{height:152px;display:block;background:linear-gradient(125deg,#c2d5cf,#6a9c87);overflow:hidden;position:relative}.album-photo img,.media-photo img{display:block;width:100%;height:100%;object-fit:cover}.empty-art{font:120px Georgia;text-align:center;color:#f5f9f656}.album-text{padding:13px 15px 18px;display:flex;flex-direction:column;gap:4px}.album-text strong,.media-caption strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.album-text small,.media-caption small{color:var(--muted)}.album-arrow{position:absolute;right:15px;bottom:17px;color:#8ba498}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:19px}.chip{border:1px solid #e0e5de;background:white;padding:8px 19px;border-radius:30px;font-weight:650;font-size:13px}.chip.selected{background:var(--green);color:white}.chip.back{margin-left:auto}.media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.media-card{cursor:pointer;padding:0;color:inherit}.media-photo{height:175px}.video-placeholder{display:grid;place-items:center;width:100%;height:100%;font-size:48px;color:white}.media-type{position:absolute;right:10px;top:10px;background:#123b32dc;color:white;font-size:10px;border-radius:30px;padding:5px 8px;letter-spacing:.6px}.media-caption{display:flex;flex-direction:column;padding:12px 13px 16px;gap:7px}.media-caption small{display:flex;justify-content:space-between}.pagination{display:flex;justify-content:center;align-items:center;gap:22px;margin:32px 0}.pagination a{background:white;border:1px solid var(--border);padding:9px 17px;border-radius:20px}.empty-state{padding:30px;background:white;border-radius:12px}footer{border-top:1px solid var(--border);color:var(--muted);font-size:12px;padding:30px 0;margin-top:35px}.chat-fab{position:fixed;bottom:23px;right:22px;z-index:12;background:#136947;color:#fff;border-radius:35px;padding:13px 21px;box-shadow:0 6px 22px #071d1644;font-weight:700}.chat-fab:hover{color:white;background:#0c5039}.modal-open{overflow:hidden}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:100;background:#08100ef7;display:grid;grid-template-columns:80px minmax(0,1fr) 80px;grid-template-rows:75px minmax(0,1fr) 53px;color:#fff}.lb-top{grid-column:1/-1;display:flex;align-items:center;gap:15px;padding:0 24px;background:#10231f}.lb-top #lbCounter{color:var(--gold);font-weight:700}.lb-top #lbTitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-close{margin-left:auto;border:1px solid #ffffff40;background:transparent;color:#fff;border-radius:9px;cursor:pointer;padding:8px 12px}.lb-stage{grid-area:2/2/3/3;min-height:0;display:flex;justify-content:center;align-items:center;flex-direction:column}.lb-stage img,.lb-stage video{max-width:100%;max-height:100%;object-fit:contain}.lb-stage iframe{width:min(100%,1050px);height:min(60vw,65vh);border:0}.lb-arrow{border:0;background:transparent;color:#fff;font:60px Georgia;cursor:pointer}.lb-arrow.prev{grid-area:2/1}.lb-arrow.next{grid-area:2/3}.lb-bottom{grid-column:1/-1;display:grid;place-items:center;background:#10231f;color:#b2c4bc;font-size:12px}.consent-button,.primary-button{background:#146748;border:0;border-radius:15px;color:white;font-weight:700;padding:17px 24px;cursor:pointer}.lb-privacy{color:#b6c6c0;font-size:12px}.lb-error{padding:25px;color:#f6cccc}.messenger-page{background:#f3f0eb}.messenger{height:calc(100vh - 78px);min-height:550px;max-width:1500px;margin:auto;display:grid;grid-template-columns:340px minmax(0,1fr);background:#fff;box-shadow:var(--shadow)}.chat-sidebar{background:#f8faf8;border-right:1px solid #e2e6e2}.chat-sidebar-head{padding:27px 24px 20px}.chat-sidebar-head h2{font:normal 30px Georgia;margin:0}.chat-sidebar-head p{color:var(--muted);font-size:13px;margin:8px 0}.conversation{display:flex;align-items:center;gap:12px;padding:20px;position:relative}.conversation.selected{background:#e7f2e9}.conversation span:nth-child(2){display:flex;flex-direction:column}.conversation small,.chat-header small{font-size:12px;color:#678177}.avatar{flex:0 0 48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#1f7353,#b7d9a2);color:#fff;display:grid;place-items:center;font:30px Georgia}.chat-tick{margin-left:auto;color:#187452}.chat-privacy{border-top:1px solid #e7ebe5;margin:22px;padding:19px 0;font-size:12px;color:#6b7d70}.chat-main{display:grid;grid-template-rows:72px minmax(0,1fr) auto 34px;min-width:0;background:#e9ede5;background-image:radial-gradient(#fff9 1px,transparent 1px);background-size:20px 20px}.chat-header{display:flex;align-items:center;gap:12px;padding:10px 22px;background:#fff;border-bottom:1px solid #e7e9e6}.chat-header>div{display:flex;flex-direction:column}.chat-return{margin-left:auto;color:#386b54;font-size:13px;font-weight:600}.chat-wall{min-height:0;overflow:auto;padding:26px clamp(18px,8%,100px);display:flex;flex-direction:column;gap:12px}.chat-day{background:#d7e2d9;color:#4a6b56;border-radius:10px;padding:5px 13px;margin:0 auto;font-size:12px}.welcome-bubble{background:white;max-width:430px;padding:15px;border-radius:14px;box-shadow:0 2px 7px #0001}.message-row{display:flex}.message-row.mine{justify-content:flex-end}.message-row.theirs{justify-content:flex-start}.message-bubble{max-width:min(78%,560px);min-width:100px;word-wrap:break-word;background:white;border-radius:17px 17px 17px 5px;padding:11px 14px 7px;box-shadow:0 2px 6px #0001;white-space:normal}.mine .message-bubble{background:#d8f2d4;border-radius:17px 17px 5px 17px}.message-foot{display:block;text-align:right;font-size:10px;color:#7f998b;margin:4px 0 0}.chat-compose{padding:14px 23px;display:flex;gap:13px;background:#f8faf8;align-items:center}.chat-compose textarea{width:100%;resize:vertical;max-height:120px;min-height:48px;border:1px solid #dce5dc;border-radius:25px;padding:13px 17px;outline-color:#2f8057;background:white}.chat-compose button{width:47px;height:47px;border:none;border-radius:50%;background:#0d7952;color:white;cursor:pointer;font-size:21px;flex-shrink:0}.chat-footnote{text-align:center;padding:9px 10px;color:#829184;font-size:11px;background:#f8faf8}.chat-error{padding:8px 20px;background:#ffe1dd;color:#8b2626}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.map-page{max-width:1200px;margin:45px auto;padding:0 25px}.map-page h1{font:normal 46px Georgia;margin:12px 0}.map-page>p{color:#65766a}.map-container{height:550px;background:linear-gradient(135deg,#b4d5c1,#e8e4cf);border:1px solid #e5e9e5;border-radius:20px;overflow:hidden;position:relative}.map-consent{max-width:400px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:28px;border-radius:20px;text-align:center;box-shadow:var(--shadow);width:90%;z-index:1}.map-consent p{color:#6b8071}.map-note{min-height:30px}.map-page>a{display:inline-block;margin:20px 0;font-weight:700;color:var(--green)}@media(max-width:1100px){.album-grid,.media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar{padding:0 2%}.topnav a{padding:9px}}@media(max-width:800px){.sidebar{display:none}.shell{display:block}.main{padding:16px}.topbar{height:auto;min-height:65px;flex-wrap:wrap;padding:9px 13px;gap:5px}.brand{font-size:20px}.topnav{width:100%;overflow:auto}.topnav a{padding:7px 10px;font-size:12px}.hero{height:230px;padding:25px}.hero-art{display:none}.album-grid,.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.messenger{height:calc(100dvh - 110px);grid-template-columns:1fr}.chat-sidebar{display:none}.lightbox{grid-template-columns:45px minmax(0,1fr) 45px}.lb-arrow{font-size:39px}.section-head h2{font-size:28px}}@media(max-width:460px){.album-photo,.media-photo{height:120px}.album-grid,.media-grid{gap:10px}.hero h1{font-size:33px}.section-head{align-items:start}.chat-fab span{display:none}.chat-fab{border-radius:50%;padding:14px}.lightbox{grid-template-columns:35px minmax(0,1fr) 35px}}
