.portal-exact-address{display:grid;gap:.3rem;margin:.8rem 0 1rem;padding:.85rem 1rem;border:1px solid rgba(95,122,102,.14);border-radius:14px;background:#f7f5ef}.portal-exact-address span{color:#766b5d;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.portal-exact-address strong{color:#332d27;font-size:.92rem;line-height:1.5}
.portal-map{margin-top:1rem}
.portal-map-preview{position:relative;height:176px;overflow:hidden;border:1px solid rgba(95,122,102,.2);border-radius:18px;background:#dfe8df;box-shadow:0 10px 26px rgba(54,65,53,.12)}
.portal-map-preview iframe{display:block;width:100%;height:100%;border:0;pointer-events:none}
.portal-map-placeholder{position:absolute;inset:0;overflow:hidden;background-color:#dfe8df;background-image:linear-gradient(32deg,transparent 0 43%,rgba(174,203,181,.78) 43% 54%,transparent 54%),linear-gradient(145deg,transparent 0 47%,rgba(221,204,161,.56) 47% 62%,transparent 62%),radial-gradient(circle at 19% 23%,#f7f5ed 0 5%,transparent 5.3%),radial-gradient(circle at 83% 74%,#edf2e7 0 10%,transparent 10.4%)}
.portal-map-placeholder::before,.portal-map-placeholder::after{content:"";position:absolute;background:#faf9f4;border:1px solid rgba(122,124,109,.18);box-shadow:0 0 0 3px rgba(255,255,255,.45)}
.portal-map-placeholder::before{width:145%;height:13px;left:-20%;top:43%;transform:rotate(-12deg)}
.portal-map-placeholder::after{width:12px;height:150%;left:60%;top:-25%;transform:rotate(18deg)}
.portal-map-road{position:absolute;z-index:1;height:5px;border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 0 0 1px rgba(130,132,117,.12)}
.portal-map-road-one{width:58%;left:-7%;top:24%;transform:rotate(20deg)}
.portal-map-road-two{width:48%;right:-5%;bottom:20%;transform:rotate(-25deg)}
.portal-map-road-three{width:38%;right:11%;top:22%;transform:rotate(42deg)}
.portal-map-pin{position:absolute;z-index:2;left:50%;top:46%;width:42px;height:42px;display:grid;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:#fff;box-shadow:0 8px 22px rgba(43,59,48,.28)}
.portal-map-pin svg{width:29px;height:29px;fill:#d93025}.portal-map.is-map-loaded .portal-map-pin{display:none}
.portal-map-preview>button{position:absolute;z-index:3;inset:0;width:100%;height:100%;border:0;background:linear-gradient(180deg,transparent 45%,rgba(29,37,31,.34));cursor:zoom-in;display:flex;align-items:flex-end;justify-content:center;padding:.75rem;font:inherit}
.portal-map-preview>button:focus-visible{outline:3px solid #b26b3e;outline-offset:-4px}
.portal-map-action{display:inline-flex;align-items:center;gap:.42rem;padding:.5rem .78rem;border-radius:999px;background:rgba(255,255,255,.96);color:#3d352d;font-size:.82rem;font-weight:700;box-shadow:0 5px 16px rgba(39,45,39,.2);transition:transform .18s ease,box-shadow .18s ease}
.portal-map-preview>button:hover .portal-map-action{transform:translateY(-2px);box-shadow:0 8px 20px rgba(39,45,39,.28)}
.portal-map-notice{display:flex;align-items:flex-start;gap:.38rem;margin:.58rem .2rem 0;color:#766b5d;font-size:.76rem;line-height:1.45}
.portal-map.is-map-loaded .portal-map-preview{border-color:rgba(95,122,102,.32)}
dialog.portal-map-dialog{width:min(1040px,94vw)!important;height:min(760px,90dvh)!important;max-width:94vw!important;max-height:90dvh!important;box-sizing:border-box;border:0;border-radius:22px;padding:0;overflow:hidden!important;background:#f8f7f3;box-shadow:0 28px 80px rgba(17,22,18,.35)}
.portal-map-dialog[open]{display:flex!important;flex-direction:column}
.portal-map-dialog::backdrop{background:rgba(24,29,25,.7);backdrop-filter:blur(4px)}
.portal-map-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem .9rem 1.25rem;border-bottom:1px solid rgba(95,122,102,.16);background:#fff}
.portal-map-dialog-head>div{display:grid;gap:.08rem}
.portal-map-dialog-head strong{color:#332d27;font-size:1rem}
.portal-map-dialog-kicker{color:#6e806f;font-size:.67rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.portal-map-dialog-close{box-sizing:border-box;flex:0 0 40px;width:40px;min-width:40px;max-width:40px;height:40px;min-height:40px;max-height:40px;aspect-ratio:1/1;padding:0;border:1px solid rgba(95,122,102,.2);border-radius:50%;background:#f7f5ef;color:#4c443c;font-size:1.45rem;line-height:1;cursor:pointer;transition:background .18s ease,transform .18s ease}
.portal-map-dialog-close:hover{background:#eee8dd;transform:rotate(4deg)}
.portal-map-dialog-close:focus-visible{outline:3px solid #b26b3e;outline-offset:2px}
.portal-map-dialog>iframe{width:100%;flex:1;min-height:0;border:0;background:#e7ebe4}
[data-map-placeholder][hidden],[data-map-frame][hidden]{display:none!important}
@media(max-width:600px){.portal-map-preview{height:160px;border-radius:15px}dialog.portal-map-dialog{width:96vw!important;max-width:96vw!important;height:88dvh!important;border-radius:17px}.portal-map-dialog-head{padding:.75rem .8rem .75rem 1rem}}
@media(prefers-reduced-motion:reduce){.portal-map-action,.portal-map-dialog-close{transition:none}}
