.directory-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:28px;padding:64px 48px;background:linear-gradient(110deg,#003f30ed,#006f4c85),url('/assets/landscape.png') center/cover;color:white}.directory-hero>span,.directory-heading span{font-size:12px;font-weight:800;letter-spacing:.14em}.directory-hero h1{font-size:clamp(32px,5vw,60px);line-height:1.08;margin:18px 0}.directory-hero p{max-width:530px;font-size:18px;line-height:1.6}.directory-hero .button{background:white;color:#005c3d;margin-top:15px}.directory-panel{padding:28px var(--page-gutter,4%);background:white}.directory-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.directory-heading h2{font-size:30px;margin:6px 0}.directory-heading span{color:#00754e}.directory-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.directory-toolbar input,.directory-toolbar select,#directory-dialog input,#directory-dialog textarea,#directory-dialog select{width:100%;min-width:0;border:1px solid #dce5e1;border-radius:12px;padding:13px;font:inherit;box-sizing:border-box;background:white}.directory-tabs,.directory-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.directory-panel button,#directory-dialog button{font:inherit;cursor:pointer;border-radius:10px;padding:11px 17px;border:1px solid #dce5e1;background:white;color:#23453a;font-weight:600}.directory-panel button.active,.directory-heading button,#directory-dialog button.primary{background:#006540;color:white;border-color:#006540}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.directory-card{border:1px solid #e1e8e4;border-radius:18px;overflow:hidden;background:white;box-shadow:0 4px 16px #003d2408}.directory-card img,.directory-placeholder{width:100%;height:215px;object-fit:cover;background:#edf5ef}.directory-placeholder{display:grid;place-items:center;color:#668e79;font-size:50px}.directory-card-body{padding:20px}.directory-card h3{margin:10px 0;font-size:20px;overflow-wrap:anywhere}.directory-card p{color:#65736d;margin:8px 0}.directory-badge{display:inline-block;background:#edf7f1;color:#006540;font-size:12px;padding:5px 9px;border-radius:8px}.directory-price{font-size:21px;color:#005c3d;display:block;margin:16px 0}.directory-card button{width:100%}.directory-note{color:#64756d;font-size:13px;margin-top:30px}.directory-empty{grid-column:1/-1;padding:60px 20px;text-align:center;background:#f1f7f3;border-radius:18px}#directory-dialog{border:0;border-radius:22px;padding:30px;width:min(700px,calc(100vw - 40px));box-sizing:border-box;max-height:90vh;overflow-y:auto;color:#172d25}#directory-dialog::backdrop{background:#07281bb3}#directory-dialog .directory-close{float:right;border-radius:50%;width:40px;height:40px;padding:0;font-size:25px}#directory-detail{clear:both;overflow-wrap:anywhere}#directory-detail>p{white-space:pre-wrap;line-height:1.6}.directory-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.directory-form label{display:grid;gap:6px;font-size:14px}.directory-form .wide{grid-column:1/-1}.directory-gallery{display:flex;gap:10px;overflow-x:auto;margin:18px 0}.directory-gallery img{height:230px;max-width:100%;object-fit:contain;border-radius:12px;cursor:zoom-in}.directory-detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.directory-detail-actions a{padding:12px 18px;border-radius:10px;background:#006540;color:white;text-decoration:none}.directory-error{color:#b62232}.directory-form textarea{min-height:120px}@media(max-width:900px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.directory-hero{padding:36px 22px;border-radius:20px}.directory-heading{align-items:flex-start;flex-direction:column}.directory-toolbar{grid-template-columns:1fr}.directory-grid{grid-template-columns:1fr}.directory-form{grid-template-columns:1fr}.directory-form .wide{grid-column:auto}.directory-tabs{flex-wrap:nowrap;overflow-x:auto}.directory-tabs button{white-space:nowrap}.directory-panel{padding:24px var(--page-gutter,4%)}#directory-dialog{padding:20px}.directory-heading h2{font-size:26px}}
