@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";:root{font-family:DM Sans,sans-serif;color:#34454d;background:#f5f6f1;--ink:#34454d;--sage:#6d8b7b;--lime:#92aa61;--blue:#527c89;--line:#dce2d8}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--blue)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--lime);outline-offset:3px}header{background:#fff;border-bottom:1px solid var(--line);padding:20px max(24px,calc((100vw - 1200px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{border:0;background:none;padding:0}.brand img{width:240px;display:block}.account{display:flex;gap:16px;align-items:center;font-size:13px}.account span{max-width:220px;overflow:hidden;text-overflow:ellipsis}main{max-width:1200px;margin:auto;padding:42px 24px 64px}.eyebrow{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage);font-weight:700}h1{font-family:Libre Caslon Display,Georgia,serif;font-size:54px;font-weight:400;line-height:1.1;margin:12px 0 20px}h2{font-size:19px;margin:0 0 14px}p{line-height:1.65}.muted{color:#748078;font-size:14px}.hero{padding:56px 24px 40px;text-align:center;max-width:800px;margin:auto}.hero img{width:min(580px,100%);margin-bottom:36px}.hero p{max-width:550px;margin:16px auto 32px}.hero h1{font-size:48px}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}.tile{background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px;text-align:left;min-height:180px;transition:transform .15s,border-color .15s}.tile:hover{transform:translateY(-3px);border-color:var(--sage)}.tile b{display:block;font-size:18px;margin:18px 0 8px}.tile span{font-size:13px;color:#748078;line-height:1.6;display:block}.tile .number{color:var(--sage);font-size:12px;letter-spacing:2px}.tile.primary{background:var(--ink);color:#fff}.tile.primary span{color:#d2ddd7}.tile.primary .number{color:#bdcf99}.btn{background:var(--ink);color:#fff;border:1px solid var(--ink);padding:12px 18px;border-radius:7px;font-size:14px;font-weight:600}.btn.secondary{background:#fff;color:var(--ink);border-color:var(--line)}.btn.danger{background:#fff;color:#9b493e;border-color:#e3c8c3}.text-btn{border:0;background:none;color:var(--blue);padding:10px 0}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.topline{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px}.narrow{max-width:560px;margin:20px auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}label{display:block;font-size:13px;font-weight:600}input,textarea,select{width:100%;border:1px solid #cfd7cc;border-radius:7px;padding:12px;background:#fff;color:var(--ink);margin-top:8px}textarea{min-height:110px;resize:vertical}input[type=file]{padding:15px;background:#f7f9f4}.warning{background:#edf2e5;border-left:3px solid var(--lime);padding:16px 20px;font-size:13px;line-height:1.7;margin-bottom:24px}.toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.toolbar select,.toolbar input{margin:0;max-width:240px}.table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{background:#eff2eb;font-size:11px;letter-spacing:.7px;text-transform:uppercase;padding:15px}td{padding:18px 15px;border-top:1px solid var(--line);vertical-align:top}td p{margin:6px 0}.file-name{font-size:12px;color:#748078;word-break:break-word}.small{font-size:12px;padding:8px 10px}.empty{text-align:center;padding:54px 24px;color:#748078;border:1px dashed #cbd6c6;border-radius:10px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.photo{overflow:hidden;padding:0}.photo img{display:block;width:100%;height:210px;object-fit:cover;background:#ecf0e7}.photo .caption{padding:20px}.photo h2{font-size:15px}.badge{display:inline-block;padding:5px 9px;background:#edf2e5;color:#5c7351;border-radius:20px;font-size:11px}.map-frame{width:100%;height:75vh;border:1px solid var(--line);border-radius:12px;background:#fff}footer{padding:22px;text-align:center;border-top:1px solid var(--line);font-size:11px;letter-spacing:1px;color:#748078}#notice{position:fixed;bottom:24px;left:50%;transform:translate(-50%);max-width:90vw;width:max-content;background:var(--ink);color:#fff;border-radius:9px;padding:16px 22px;box-shadow:0 8px 30px #0002;z-index:100;display:none}#notice.show{display:block}#notice.error{background:#8b433a}.loading{padding:60px;text-align:center}.contact-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-list h2{margin-top:12px}.stack{display:grid;gap:18px}@media(max-width:800px){.tiles,.gallery{grid-template-columns:1fr 1fr}.account span{display:none}h1{font-size:42px}.contact-list{grid-template-columns:1fr}}@media(max-width:540px){header{padding:18px}.brand img{width:170px}main{padding:28px 18px}.tiles,.gallery,.form-grid{grid-template-columns:1fr}.hero{padding:30px 0}.hero h1{font-size:38px}.card{padding:20px}.tile{min-height:140px}.topline{align-items:flex-start;flex-direction:column}.full{grid-column:auto}.toolbar select,.toolbar input{max-width:none}.account{gap:8px}.account .btn{padding:9px;font-size:11px}}
