500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#20332e;--muted:#66736c;--green:#315b47;--light:#f7f7f2;--cream:#f0f1e9;--line:#dde3d9;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--light);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(3.5rem,7vw,6.7rem);font-weight:800;margin:23px 0}h1 em{font-style:normal;color:#668d6f}h2{font-size:clamp(2.3rem,4.5vw,4.2rem);margin:12px 0 22px}h3{font-size:1.3rem;margin-bottom:10px}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:white;padding:12px;z-index:99}.site-header{background:var(--light);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:88px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-family:Manrope,sans-serif;font-size:14px;letter-spacing:.12em;font-weight:800;line-height:1.15}.brand small{display:block;letter-spacing:.29em;font-size:10px;font-weight:600;margin-top:5px}.brand-mark{font-size:36px;letter-spacing:-.12em;color:var(--green)}.brand-dot{color:#98ad85}nav{display:flex;gap:36px}nav a{text-decoration:none;font-size:13px;font-weight:700}nav a:hover,.card a:hover{text-decoration:underline}.menu-toggle{display:none}.hero{padding:90px 0 100px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:800;color:var(--green)}.eyebrow-line{display:inline-block;width:27px;border-top:2px solid #88a487;vertical-align:middle;margin-right:12px}.hero-lead{font-size:18px;max-width:520px;color:var(--muted);line-height:1.85}.hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:35px}.button{display:inline-flex;align-items:center;gap:35px;text-decoration:none;font-size:13px;font-weight:800;padding:16px 21px}.primary{background:var(--green);color:white;border-radius:4px}.primary:hover{background:#244434}.text-button{padding-left:0}.hero-art{height:490px;border-radius:160px 160px 7px 7px;overflow:hidden;position:relative;background:linear-gradient(#c5d9d0 0%,#e6e8cf 65%,#c5c9a0 100%)}.sun{position:absolute;top:85px;right:100px;width:92px;height:92px;border-radius:50%;background:#f7edce}.cloud{position:absolute;height:18px;width:110px;background:#f1f1df;border-radius:100%;opacity:.8}.cloud-one{top:110px;left:55px}.cloud-two{top:190px;right:28px;width:75px}.field{position:absolute;width:160%;left:-30%;border-radius:50% 50% 0 0}.field-back{height:190px;bottom:40px;background:#8da989;transform:rotate(-9deg)}.field-front{height:125px;bottom:-40px;background:#587b60;transform:rotate(7deg)}.house{position:absolute;bottom:112px;left:46%;width:110px;height:86px;background:#f4eee0;z-index:2}.house:before{content:"";position:absolute;left:-15px;top:-45px;border-left:70px solid transparent;border-right:70px solid transparent;border-bottom:48px solid #526b5b}.house span{position:absolute;bottom:0;left:42px;width:27px;height:51px;background:#6e856f}.art-caption{position:absolute;z-index:4;bottom:19px;left:25px;right:25px;display:flex;justify-content:space-between;color:white;font-size:9px;letter-spacing:.16em;font-weight:800}.intro{display:flex;justify-content:space-between;gap:70px;align-items:end;padding:30px 0 28px}.intro>p,.section-heading>p{max-width:385px;color:var(--muted);line-height:1.9}.card-section{padding-bottom:115px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 30px}.filter{border:1px solid var(--line);border-radius:50px;background:transparent;padding:10px 19px;color:var(--ink);cursor:pointer;font-size:12px;font-weight:700}.filter.active,.filter:hover{background:var(--green);color:white;border-color:var(--green)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.card{background:white;border:1px solid #e6e9e1;min-width:0}.card[hidden]{display:none}.card-visual{height:185px;position:relative;display:flex;align-items:center;justify-content:center}.visual-nature{background:#d8e4d0}.visual-town{background:#e9e0d2}.visual-market{background:#e6e6ce}.visual-coast{background:#d1e1e3}.visual-icon{font-size:64px;filter:saturate(.65)}.number{position:absolute;bottom:13px;left:15px;font-size:9px;letter-spacing:.12em;font-weight:800}.card-body{padding:25px 20px 28px}.tag{display:inline-block;color:#668570;font-size:9px;letter-spacing:.13em;font-weight:800;margin-bottom:12px}.card p{color:var(--muted);font-size:13px;line-height:1.8;min-height:95px}.card a{font-size:12px;font-weight:800;text-decoration:none}.events-band{background:#e9ede5;padding:100px 0}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:35px}.event{display:grid;grid-template-columns:190px 1fr 160px;gap:30px;padding:30px 0;border-top:1px solid #cbd5c9;align-items:start}.event:last-child{border-bottom:1px solid #cbd5c9}.event-type{font-size:11px;font-weight:800;letter-spacing:.1em;color:#587862}.event-type span{margin-left:10px}.event h3{margin:0 0 7px;font-size:21px}.event p{font-size:13px;color:var(--muted);margin:0}.event-place{text-align:right;font-size:10px;font-weight:800;letter-spacing:.1em;color:#5f7865}.notice{display:flex;gap:13px;align-items:start;margin-top:27px;color:#536b5b;font-size:12px}.notice p{margin:0}.notice span{font-size:19px}.rain-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;padding-top:110px;padding-bottom:120px}.rain-title>p:last-child{color:var(--muted);max-width:310px;line-height:1.9}.rain-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rain-grid article{background:white;padding:28px;border:1px solid #e6e9e1}.rain-icon{font-size:30px;display:block;margin-bottom:23px}.rain-grid h3{font-size:17px}.rain-grid p{font-size:13px;color:var(--muted);line-height:1.8;min-height:85px}.tips{background:#dbe5d8;padding:75px 0}.tips-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.tips-inner>div>p:last-child{color:#566e5d;line-height:1.9}.tip-box{padding:35px;background:#f4f7ef}.tip-label{font-size:10px;font-weight:800;letter-spacing:.17em;color:var(--green)}.tip-box p{margin:20px 0;color:#566e5d}.tip-box a{font-size:12px;font-weight:800}.footer{background:#233b30;color:#e5ece3;padding:65px 0 25px}.footer-inner{display:flex;justify-content:space-between;gap:40px}.footer .brand-mark{color:white}.footer p{font-size:12px;color:#bacdc0;margin-top:20px}.footer-inner>div:last-child{display:flex;flex-direction:column;gap:7px}.footer-inner>div:last-child p{margin:0 0 6px;font-weight:800}.footer a{font-size:12px}.footer-bottom{border-top:1px solid #466050;margin-top:65px;padding-top:22px;display:flex;justify-content:space-between;font-size:11px;color:#a8c1b1}.legal{min-height:65vh;padding:80px 0;max-width:850px}.legal p,.legal li{color:var(--muted)}.legal a{color:var(--green)}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.hero-grid{gap:30px}.hero-art{height:420px}.rain-section{gap:35px}.tips-inner{gap:35px}}@media(max-width:700px){.wrap{width:min(100% - 34px,1160px)}.header-inner{min-height:70px}.menu-toggle{display:block;background:transparent;border:1px solid var(--line);padding:7px 11px;border-radius:4px;font-size:12px}nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--light);padding:22px;box-shadow:0 12px 15px #0001;flex-direction:column;gap:18px}nav.open{display:flex}.hero{padding:55px 0}.hero-grid,.rain-section,.tips-inner{grid-template-columns:1fr}.hero-art{height:330px;border-radius:120px 120px 5px 5px}.intro,.section-heading{display:block}.intro{padding-top:30px}.cards{grid-template-columns:1fr 1fr;gap:10px}.card-visual{height:130px}.visual-icon{font-size:42px}.card-body{padding:18px 14px}.card p{min-height:0}.card h3{font-size:17px}.events-band{padding:65px 0}.event{grid-template-columns:1fr;gap:5px;padding:24px 0}.event-place{text-align:left}.rain-section{padding-top:70px;padding-bottom:75px}.rain-grid{gap:10px}.rain-grid article{padding:18px}.rain-grid p{min-height:0}.footer-inner{display:block}.footer-inner>div:last-child{margin-top:40px}.footer-bottom{gap:20px}.tips{padding:60px 0}}@media(max-width:420px){.cards,.rain-grid{grid-template-columns:1fr}.hero-actions{align-items:start;flex-direction:column;gap:7px}h1{font-size:3.2rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.calendar-section{padding-top:30px;padding-bottom:105px}.calendar-controls{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.calendar-controls label{font-size:12px;font-weight:800}.calendar-controls select{padding:12px 15px;border:1px solid var(--line);background:white;border-radius:4px;font:inherit;font-size:13px;color:var(--ink)}.calendar-list{border-top:1px solid var(--line)}.calendar-entry{display:grid;grid-template-columns:190px 1fr 100px;gap:25px;border-bottom:1px solid var(--line);padding:25px 5px;align-items:start}.calendar-entry h3{margin:0 0 8px}.calendar-entry p{font-size:13px;color:var(--muted);margin:0 0 8px}.calendar-entry a{font-size:12px;font-weight:800}.calendar-date{font-weight:800;color:var(--green)}.calendar-empty{padding:35px 5px;color:var(--muted)}.calendar-footnote{font-size:12px;color:var(--muted)}.admin-layout{max-width:950px;margin:55px auto 100px}.admin-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;background:white;border:1px solid var(--line);padding:25px}.admin-form label{display:flex;flex-direction:column;font-size:12px;font-weight:800;gap:5px}.admin-form input,.admin-form select,.admin-form textarea{width:100%;padding:11px;border:1px solid #ccd6cc;border-radius:4px;font:inherit}.admin-form .wide{grid-column:1/-1}.admin-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.admin-actions button,.admin-actions label{cursor:pointer;border:1px solid var(--green);background:var(--green);color:white;padding:12px 18px;border-radius:4px;font-size:13px;font-weight:800}.admin-list article{padding:15px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}.admin-list button{border:1px solid #b8c8ba;background:white;padding:7px 10px;cursor:pointer}.admin-help{padding:20px;background:#e9ede5;margin-bottom:25px}.admin-help p{margin-bottom:8px}@media(max-width:700px){.calendar-entry{grid-template-columns:1fr;gap:5px}.admin-form{grid-template-columns:1fr}.admin-form .wide{grid-column:auto}}
[hidden]{display:none!important}section[id],article[id]{scroll-margin-top:110px}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}:focus-visible{outline:3px solid #a85d24;outline-offset:4px}.hero{padding:65px 0}.hero-photo{margin:0;position:relative}.hero-photo img{width:100%;height:455px;object-fit:cover;border-radius:160px 160px 8px 8px}.hero-photo figcaption{padding:12px 0;display:flex;flex-direction:column;gap:4px}.hero-photo figcaption span{font-weight:800}.hero-photo figcaption a{font-size:10px;color:var(--muted)}.weekend-section{padding:45px 0 70px;border-top:1px solid var(--line)}.weekend-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.weekend-card{padding:28px;background:#e9ede5;border-radius:8px;display:flex;flex-direction:column}.weekend-card:nth-child(2){background:#eee5d8}.weekend-card:nth-child(3){background:#dce9e8}.weekend-card h3{font-size:23px;line-height:1.25}.weekend-card p{font-size:14px}.weekend-card a{margin-top:auto}.date-pill{font-size:12px;font-weight:800;display:block;margin-bottom:20px}.destination-grid{grid-template-columns:repeat(3,1fr)}.destination-grid .card{border-radius:8px;overflow:hidden}.destination-grid .card p{min-height:0}.destination-grid .card h3{font-size:23px}.place-meta{font-size:12px;color:var(--muted)}.place-visual{height:65px;background:#dce7d6;padding:20px;font-size:12px;letter-spacing:.1em;font-weight:700}.card:nth-child(3n+2) .place-visual{background:#ece3d5}.card:nth-child(3n+3) .place-visual{background:#dce8e8}.card-links,.event-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.event-actions button,.event-actions a{border:1px solid var(--line);background:white;border-radius:4px;padding:8px 12px;text-decoration:none;font-size:12px;color:var(--green)}.calendar-controls input{padding:12px;border:1px solid var(--line);border-radius:4px;min-width:180px;font:inherit;max-width:100%}.calendar-entry{grid-template-columns:170px 1fr 100px}.calendar-entry h3 a{font-size:inherit;text-decoration:none}.calendar-entry h3 a:hover{text-decoration:underline}#resetFilters{margin-bottom:20px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);background:var(--ink);color:white;padding:14px 22px;border-radius:6px;z-index:100;box-shadow:0 4px 25px #0003}.detail-page{padding:65px 0;max-width:850px;min-height:70vh}.detail-page h1{font-size:clamp(2.4rem,6vw,4.2rem);overflow-wrap:anywhere}.detail-page h2{font-size:1.8rem}.detail-page .facts{padding:25px;background:#e9ede5;margin:25px 0}.detail-page .facts p:last-child{margin-bottom:0}.detail-page li{margin-bottom:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:13px}.form-grid input,.form-grid select,.form-grid textarea{font:inherit;padding:12px;border:1px solid var(--line);background:#fff;border-radius:4px;min-width:0}.form-grid .wide{grid-column:1/-1}.draft-box{width:100%;min-height:220px;padding:15px;font:inherit;border:1px solid var(--line)}.button{border:0}.notice-box{background:#eee5d8;padding:20px;border-radius:6px}.small{font-size:12px;color:var(--muted)}.footer a{overflow-wrap:anywhere}@media(max-width:900px){nav{gap:18px}.destination-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.weekend-grid,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.hero-photo img{height:340px}.calendar-entry{grid-template-columns:1fr}.calendar-controls{align-items:stretch}.calendar-controls label{width:100%}.calendar-controls input,.calendar-controls select{width:100%}.weekend-card{padding:24px}.hero{padding:35px 0}.hero-grid{gap:30px}.destination-grid{grid-template-columns:1fr}.footer-bottom{flex-wrap:wrap}.card-section{padding-bottom:60px}}
