aracaju-location { display:block; }
.location { max-width:1440px; margin:auto; padding:80px clamp(24px,4vw,64px) 90px; background:#fff; }
.location__layout { display:grid; grid-template-columns:1.15fr .85fr; grid-template-areas:'map heading' 'map info'; column-gap:44px; row-gap:0; }
.location__heading { grid-area:heading; align-self:end; padding-left:5px; margin:0 0 27px; }
.location__eyebrow { margin:0 0 18px; color:#476b8d; font-size:12px; letter-spacing:.23em; font-weight:500; }
.location h2 { margin:0; font:650 clamp(32px,3.3vw,50px)/1.12 var(--font-display); letter-spacing:-.045em; }
.location__map { grid-area:map; align-self:center; position:relative; height:560px; border:1px solid #d8e1e9; border-radius:14px; box-shadow:10px 14px 0 #eaf0f6,0 18px 35px #19384f12; overflow:hidden; background:#eff3f7; }
.location__frame { position:relative; z-index:1; border:0; display:block; width:100%; height:100%; }
.location__loading { position:absolute; inset:0; display:grid; place-items:center; color:#6d7d8d; font-size:13px; }
.location__loading[hidden] { display:none; }
.location__info { grid-area:info; align-self:start; min-width:0; padding-left:5px; }
.location__address-label { margin:0 0 8px; color:#536b84; font-size:11px; letter-spacing:.13em; }
.location__copy { display:flex; align-items:center; justify-content:space-between; gap:14px; width:100%; min-height:80px; padding:15px; border:1px solid #cfdae6; border-radius:12px; background:#f8fafc; color:#102039; text-align:left; cursor:pointer; }
.location__copy:hover { background:#eef4fa; border-color:#abc5dc; }
.location__copy[aria-busy="true"] { cursor:progress; }
.location__address { min-width:0; user-select:text; }
.location__address strong { display:block; font-size:17px; font-weight:650; line-height:1.45; }
.location__address>span { display:block; margin-top:3px; color:#536b84; font-size:14px; line-height:1.4; }
.location__copy-action { display:inline-flex; flex:0 0 auto; align-items:center; gap:6px; color:#235e9a; font-size:12px; white-space:nowrap; }
.location__copy-icon { display:flex; align-items:center; }
.location__status { min-height:21px; margin:7px 1px 13px; color:#315d68; font-size:12px; line-height:1.5; }
.location__manual { box-sizing:border-box; width:100%; margin:0 0 18px; padding:12px; resize:vertical; border:1px solid #c3d3e2; border-radius:9px; color:#102039; background:#fff; font:14px/1.45 var(--font-body); }
.location__near { margin:0 0 21px; color:#536b84; font-size:16px; }
.location__maps-link { display:inline-flex; align-items:center; justify-content:center; gap:28px; min-height:52px; padding:12px 23px; border:1px solid #235e9a; border-radius:999px; background:#235e9a; color:white; font-size:15px; font-weight:500; text-decoration:none; }
.location__maps-link:hover { background:#1c4c79; }
.location__maps-link span { font-size:21px; line-height:1; }
@media(max-width:1100px) and (min-width:901px) {
 .location__layout { gap:0 29px; }
 .location__map { height:520px; }
 .location__address strong { font-size:15px; }
 .location__copy { padding:12px; gap:9px; }
}
@media(max-width:900px) {
 .location { padding:52px clamp(22px,4vw,36px) 65px; }
 .location__layout { grid-template-columns:1fr; grid-template-areas:'heading' 'map' 'info'; }
 .location__heading { padding:0; margin-bottom:27px; }
 .location h2 { font-size:clamp(32px,6.1vw,44px); }
 .location__map { height:390px; margin:0 7px 30px 0; box-shadow:6px 8px 0 #eaf0f6,0 12px 30px #19384f0c; }
 .location__info { padding:0; }
}
@media(max-width:600px) {
 .location { padding:44px 22px 60px; }
 .location h2 { font-size:clamp(29px,8.5vw,38px); }
 .location__eyebrow { font-size:10px; margin-bottom:17px; }
 .location__map { height:320px; margin:0 6px 29px 0; }
 .location__address strong { font-size:15px; }
 .location__address>span { font-size:13px; }
 .location__copy { padding:13px 12px; gap:9px; }
 .location__copy-action { gap:5px; font-size:11px; }
 .location__copy-icon svg { width:17px; height:17px; }
 .location__near { font-size:15px; }
 .location__maps-link { width:100%; gap:22px; }
}
