@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--ink:#27302a;--cream:#f6f5ef;--gold:#ae9e54;--muted:#7d8279}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:14px 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}a{color:inherit}header{height:100px;background:#222923;color:#f4f1e7;display:flex;align-items:center;justify-content:space-between;padding:0 4vw}header a{text-decoration:none;font-size:12px}.brand{display:flex;align-items:center;gap:15px;font-size:9px;letter-spacing:1.7px}.brand strong{display:block;font-size:25px;letter-spacing:4px}.seal{border:1px solid #cbcbbd;border-radius:50%;width:56px;height:56px;display:grid;place-content:center;font:29px Georgia,serif;text-align:center;line-height:24px}.seal small{font:8px sans-serif;letter-spacing:3px}.header-note{font-size:10px;letter-spacing:2px;opacity:.55}.intro{padding:35px 4vw 31px;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:9px;font-weight:700;letter-spacing:2.2px;color:#8a8154}h1{font:500 42px 'Playfair Display',Georgia,serif;margin:8px 0 10px;letter-spacing:-1px}.intro p{color:var(--muted);margin:0;font-size:13px}.coordinates{font:18px Georgia,serif;color:#8d8c78;letter-spacing:2px}.coordinates small{display:block;text-align:right;font:9px sans-serif;letter-spacing:3px;margin-top:10px}.explorer{height:calc(100vh - 310px);min-height:580px;position:relative;overflow:hidden;background:#e6e9de}#map{position:absolute;inset:0}.map-art{height:100%;background:repeating-radial-gradient(ellipse at 52% 68%,transparent 0px,transparent 35px,#b2bba329 36px,#b2bba329 37px,transparent 38px,transparent 50px),linear-gradient(110deg,#e4e7da 30%,#f0f1e7 76%,#d9e4e4 76%);position:relative}.volcano{position:absolute;left:52%;top:38%;font-size:100px;color:#9a9f87;text-align:center;line-height:70px}.volcano strong{display:block;font:13px sans-serif;letter-spacing:5px}.volcano small{font:10px sans-serif}.town{position:absolute;color:#929985;font-size:12px}.t1{top:15%;left:42%}.t2{top:23%;left:67%}.t3{top:64%;left:67%}.t4{top:83%;left:49%}.sea{position:absolute;right:3%;top:55%;writing-mode:vertical-rl;letter-spacing:6px;color:#a7b9b9;font-size:10px}.glass{background:#ffffffed;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border:1px solid #fff9;box-shadow:0 12px 45px #26362716}.filters{position:absolute;top:24px;left:3vw;bottom:24px;width:310px;border-radius:18px;padding:22px;display:flex;flex-direction:column}.panel-heading{display:flex;align-items:center;justify-content:space-between}.text-button{border:0;background:none;color:#858777;font-size:11px;padding:0}.filters h2{font:25px 'Playfair Display',Georgia,serif;margin:12px 0 18px}.search{display:flex;gap:8px;background:#efefe8;border:1px solid #e5e6db;padding:10px;border-radius:8px}.search input{width:100%;border:0;background:none;font-size:11px}.filters h3{font-size:10px;letter-spacing:.8px;margin:19px 0 10px}.chips{display:flex;gap:5px;flex-wrap:wrap}.chip{border:1px solid #dedfd4;background:transparent;padding:7px 10px;border-radius:20px;color:#6c7267;font-size:10px}.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.checks{display:grid;grid-template-columns:1fr 1fr;gap:11px 6px}.check{display:flex;align-items:center;gap:6px;font-size:10px;line-height:1.5}.check input{accent-color:#8c864d;margin:0;width:14px;height:14px}.allergy{margin-top:13px}.results-title{display:flex;justify-content:space-between;border-top:1px solid #e4e5db;margin-top:18px;padding:15px 0 10px;font-size:10px}.results-title span{color:var(--muted)}.results{overflow:auto;min-height:70px;flex:1}.result{display:block;width:100%;border:0;border-bottom:1px solid #e8e9e0;background:none;text-align:left;padding:12px 2px;color:var(--ink)}.result strong{display:block;font-size:12px}.result span{font-size:9px;color:#818774}.result:hover{background:#e9eadf}.empty{font-size:12px;color:#777f70;line-height:1.8;padding:15px 0}.detail{position:absolute;right:3vw;top:24px;bottom:24px;width:340px;border-radius:18px;padding:24px;overflow:auto;background:#26312bee;color:#f7f6ee;border-color:#ffffff20}.detail .eyebrow{color:#c0b777}.detail h2{font:30px 'Playfair Display',serif;line-height:1.2;margin:18px 0}.close{float:right;background:#ffffff14;border:0;border-radius:50%;width:28px;height:28px;color:inherit}.detail p{font-size:12px;line-height:1.8;color:#c2c8bf;white-space:pre-line}.service-tags{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.service-tags span{padding:6px 8px;border:1px solid #ffffff26;border-radius:5px;font-size:10px}.contact{background:#ffffff0b;padding:14px;border-radius:10px;display:grid;gap:12px;margin:16px 0;overflow-wrap:anywhere}.contact a{font-size:12px;text-decoration:none}.detail h3{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#bbb88c;margin:20px 0 4px}.primary{border:0;display:inline-block;background:#a59546;color:#fff;text-decoration:none;border-radius:9px;padding:13px 18px;font-weight:600;font-size:12px}.detail .primary{display:block;text-align:center;margin-top:22px}.map-caption{position:absolute;bottom:20px;left:50%;font-size:8px;letter-spacing:2px;color:#76816a;pointer-events:none}.map-status{position:absolute;top:15px;left:50%;transform:translateX(-50%);background:#fffdeb;padding:9px 14px;border-radius:8px;font-size:11px;max-width:330px;text-align:center;box-shadow:0 4px 20px #0001}.map-status:empty{display:none}footer{display:flex;justify-content:space-between;padding:21px 4vw;font-size:10px;color:#737b69}footer a{text-decoration:none}[hidden]{display:none!important}.admin-wrap{max-width:1100px;margin:35px auto;padding:0 24px}.admin-nav{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.secondary{border:1px solid #d4d9cc;border-radius:8px;background:white;padding:10px 14px;color:var(--ink);text-decoration:none}.card{background:white;border:1px solid #e3e5da;border-radius:15px;padding:25px;margin:20px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px;font-size:12px}.field input,.field select,.field textarea{width:100%;padding:11px;border:1px solid #d4d9cc;border-radius:7px;background:#fafbf7}.field textarea{min-height:80px;resize:vertical}.wide{grid-column:1/-1}.form-actions{display:flex;gap:12px;margin-top:20px}.message{padding:12px 0;font-size:13px;white-space:pre-wrap;color:#7d502b}table{width:100%;border-collapse:collapse;font-size:12px}td,th{padding:14px 8px;text-align:left;border-bottom:1px solid #e5e8de}td button{margin:3px}.table-scroll{overflow:auto}code{background:#f1f2ea;padding:3px}.login{max-width:440px;margin:60px auto}.login .field{margin-bottom:15px}.admin-wrap h2{font-family:'Playfair Display',serif}.import-help{line-height:1.8;color:#69725e;font-size:12px}.admin-wrap .checks{grid-template-columns:repeat(3,1fr)}@media(max-width:800px){.header-note,.coordinates{display:none}header{height:80px}.intro{padding:25px 5vw}h1{font-size:34px}.explorer{height:auto;min-height:1000px;display:flex;flex-direction:column;padding:325px 16px 20px;gap:14px}#map{height:325px}.filters{position:relative;inset:auto;width:100%;max-height:550px;min-height:500px}.detail{position:fixed;inset:auto 10px 10px;max-height:80vh;width:auto;z-index:20}.map-caption{display:none}.map-status{top:12px;max-width:85%;width:300px}.results{max-height:200px}.form-grid{grid-template-columns:1fr}.admin-wrap .checks{grid-template-columns:1fr 1fr}footer{gap:20px}header a{font-size:10px}}
.logo{width:145px;height:76px;object-fit:contain}.maintenance{min-height:100vh;background:radial-gradient(ellipse at 50% 20%,#344037,#1c241f 70%);color:#f3f0e5;display:grid;place-content:center;text-align:center;padding:30px}.maintenance img{width:230px;margin:0 auto 50px}.maintenance h1{font-size:48px;margin:18px 0}.maintenance p{color:#bfc6b9;line-height:1.9;max-width:420px}.maintenance .eyebrow{color:#bbae74}.maintenance-line{width:45px;height:1px;background:#ad9e54;margin:32px auto}.maintenance small{color:#959e8e;font-size:10px;letter-spacing:2px}
