:root{--green:#153f38;--ink:#193b35;--muted:#697970;--paper:#f7f6f0;--line:#dce2d8;--gold:#bb693f}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header,main{max-width:1160px;margin:auto}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 28px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);font-size:23px;font-weight:650}.brand small{display:block;letter-spacing:2px;font-size:9px;font-weight:500}.mark{background:var(--green);color:#fff;border-radius:50%;width:48px;height:48px;font-size:16px;text-align:center;padding-top:6px}.mark span{display:block;font-size:10px;line-height:12px}.pill,.tag{font-size:12px;border:1px solid var(--line);padding:6px 12px;border-radius:30px}main{padding:0 28px}.hero{overflow:hidden;position:relative;border-radius:18px;min-height:350px;display:grid;grid-template-columns:1.1fr 1fr;background:#e9ecdf}.hero-copy{padding:44px;z-index:2}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.6px;color:#64775f}h1{font:normal 64px/.99 Georgia,serif;letter-spacing:-2px;margin:22px 0}p{margin:10px 0}.hero p{font-size:14px;color:#597064}.hero-meta{display:flex;gap:18px;margin-top:24px;font-size:11px;font-weight:650}.landscape{position:relative;overflow:hidden;background:linear-gradient(#b8d1c6,#e6d9b6)}.sun{position:absolute;background:#f4cf89;width:100px;height:100px;border-radius:50%;top:40px;right:75px}.mountain{position:absolute;background:#6d9280;clip-path:polygon(0 100%,16% 37%,32% 36%,39% 15%,73% 15%,85% 43%,100% 80%,100% 100%);width:110%;height:230px;bottom:70px;left:-5%}.front{background:#365f51;transform:translate(100px,80px) rotate(-10deg)}.sea{position:absolute;height:70px;bottom:0;width:100%;background:repeating-linear-gradient(175deg,#9bb8a9 0 7px,#a7c2b0 8px 10px)}.cape{position:absolute;bottom:20px;left:25px;font-size:10px;letter-spacing:2px;color:#173d35}.cape span{display:block;font-size:12px;font-weight:700}nav{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-top:18px;overflow-x:auto}nav a{padding:19px 2px 14px;color:var(--muted);text-decoration:none;font-size:14px;white-space:nowrap;border-bottom:3px solid transparent}nav a.active{color:var(--green);border-color:var(--green);font-weight:700}.local-note{display:flex;align-items:center;gap:13px;background:#ecf0e8;border-radius:10px;padding:10px 18px;margin:24px 0;font-size:12px;color:#526953}.local-note a,a{color:var(--green)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:32px 0 22px}h2{font:normal 32px Georgia,serif;margin:0}h3{font-size:18px;margin:0 0 6px}.sub{color:var(--muted);font-size:13px}.timeline{display:grid;gap:13px}.day{display:grid;grid-template-columns:85px 1fr auto;gap:22px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;align-items:start}.date{font-size:22px;line-height:1.1}.date small{font-size:11px;color:var(--muted);display:block;margin-top:7px;text-transform:uppercase;letter-spacing:1px}.day p{font-size:13px;color:var(--muted);margin:5px 0}.day .tag{white-space:nowrap;background:#eff3ed;color:#4e7056;border:0}.day.pending{background:transparent;border-style:dashed}.day.pending .tag{background:#f3e7d9;color:#98612c}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.card-body{padding:22px}.placeholder{height:150px;background:linear-gradient(145deg,#c8d3ba,#e7dbc3);display:grid;place-content:center;text-align:center;color:#546f55;font:28px Georgia}.placeholder small{font:11px sans-serif;margin-top:8px}.two{grid-template-columns:1fr 1fr}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:20px}label{display:block;font-size:13px;margin-bottom:14px}input,select,button{font:inherit}input,select{width:100%;padding:11px 12px;border:1px solid #bac7bb;border-radius:7px;margin-top:6px;background:#fff;color:var(--ink)}button,.button{border:0;background:var(--green);color:#fff;padding:11px 18px;border-radius:7px;cursor:pointer;font-size:13px;text-decoration:none;display:inline-block}button.secondary{background:#edf1e9;color:var(--green)}button.danger{background:#f9ece6;color:#964324}button:disabled{opacity:.5;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c38145;outline-offset:3px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.upload{border:1px dashed #92a58f;padding:24px;border-radius:9px;background:#f6f8f2}.empty{text-align:center;padding:48px 20px;color:var(--muted)}.file-row{border-bottom:1px solid var(--line);padding:15px 0}.file-row strong{overflow-wrap:anywhere}.file-row small{display:block;color:var(--muted)}.total{font:36px Georgia;margin:12px 0}.gallery img{width:100%;height:200px;object-fit:cover}.gallery .card-body{padding:12px}.gallery a{display:block}.info-list p{margin-bottom:20px}.badge{font-size:11px;letter-spacing:1px;color:var(--gold);font-weight:700}footer{border-top:1px solid var(--line);margin-top:48px;padding:24px 0;font-size:11px;letter-spacing:2px;color:var(--muted);display:flex;justify-content:space-between}footer span{letter-spacing:0}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#153f38;color:white;border-radius:9px;padding:12px 22px;z-index:10;display:none;max-width:90vw;font-size:14px}@media(max-width:760px){header{height:80px;padding:0 18px}main{padding:0 16px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:28px}.hero h1{font-size:52px}.hero-meta{gap:13px;font-size:10px}.landscape{height:155px}.mountain{height:180px;bottom:0}.sea{height:35px}.sun{width:70px;height:70px;top:10px}.cape{bottom:10px}nav{gap:22px}.grid,.two{grid-template-columns:1fr}.day{grid-template-columns:58px 1fr;padding:17px;gap:12px}.day>.tag{grid-column:2;justify-self:start}.date{font-size:19px}.section-head{align-items:flex-start}h2{font-size:28px}.local-note{margin:18px 0}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:150px}footer{letter-spacing:1px}.brand{font-size:20px}}
