
/* Shared location header, combined contact area and one footer row. */
.location-shell-header.site-header{position:sticky;top:0;z-index:50;height:88px;padding:8px 0;background:#080c14f5;border-bottom:1px solid #ffffff16;transition:background .45s,border-color .45s}
.location-shell-header .header-row{position:relative;width:calc(100% - 40px);max-width:1240px;min-height:70px;padding:0 16px;border:1px solid transparent;border-radius:0;transition:max-width .45s,border-radius .45s,background .45s,box-shadow .45s,border-color .45s}
.location-shell-header .logo{width:112px;height:auto}.location-shell-header .site-nav{gap:24px}.shell-navlinks{display:flex;align-items:center;gap:26px}.shell-navlinks a{color:#d5dde5}.shell-navlinks a:hover{color:#02bbf1}
.location-shell-header.site-header.is-scrolled{background:transparent;border-color:transparent}.location-shell-header.is-scrolled .header-row{max-width:1120px;border-radius:999px;border-color:#ffffff26;background:#080c14e8;box-shadow:0 12px 40px #0005;backdrop-filter:blur(18px)}
.shell-project-button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:7px 7px 7px 22px;border:1px solid #02bbf1;border-radius:999px;background:#02bbf1;color:#07121c;font:700 12px/1.2 Archivo,Arial,sans-serif;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;min-height:46px;transition:background .2s,box-shadow .2s}
.shell-button-arrow{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:50%;background:#07121c;color:#fff;font-size:20px;transition:transform .2s}
.site-nav .shell-project-button:hover,.shell-project-button:hover{color:#07121c;background:#52d6fb;box-shadow:0 4px 18px #02bbf125}.shell-project-button:hover .shell-button-arrow{transform:rotate(45deg)}
.shell-menu-toggle{display:none}.location-shell-header a:focus-visible,.location-shell-header button:focus-visible,.location-shell-footer a:focus-visible{outline:3px solid #02bbf1;outline-offset:4px}
#location-contact{scroll-margin-top:105px}.location-shell-footer{background:#080c14;color:#eef2f7;border-top:1px solid #ffffff1a}
.location-shell-footer .location-contact{padding:80px 0 65px;background:transparent;border:0}.location-shell-footer .location-contact-grid{grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.location-shell-footer .location-contact-copy{padding-top:14px}.location-shell-footer .eyebrow,.location-shell-footer .location-contact-copy h2{font:700 11px/1.5 Archivo,Arial,sans-serif;letter-spacing:.22em;color:#02bbf1;text-transform:uppercase}
.location-contact-email{display:block;font-family:Anton,'Arial Narrow',sans-serif;font-size:clamp(2rem,4.4vw,4.5rem);line-height:1.1;letter-spacing:0;text-transform:uppercase;text-decoration:none;overflow-wrap:anywhere;margin-top:20px;color:#eef2f7}.location-contact-email:hover{color:#02bbf1}
.location-shell-footer .location-contact-copy>p{max-width:440px;color:#aebbc9;line-height:1.8;font-size:15px;margin-top:28px}
.location-shell-footer .location-contact-methods{display:flex;flex-wrap:wrap;gap:16px 24px;margin-top:32px}.location-shell-footer .location-contact-methods>a{padding:0;border:0;border-radius:0;background:transparent;max-width:none;color:#eef2f7;font-size:14px}.location-shell-footer .location-contact-methods span{display:inline;color:#02bbf1}.location-shell-footer .location-contact-methods>a:hover{color:#02bbf1}
.location-contact-response{display:flex;flex-direction:column;gap:6px;margin-top:24px;color:#9eafc0;font-size:12px}
.location-shell-footer .location-contact-form{padding:30px;background:#ffffff04;border:1px solid #ffffff20;border-radius:16px;color:#eef2f7;min-width:0}
.location-form-title{font:600 20px/1.3 Archivo,Arial,sans-serif;text-transform:none;letter-spacing:0;margin:0 0 25px}
.location-shell-footer .location-contact-fields{gap:20px}.location-shell-footer .location-contact-fields label{font-size:12px;font-weight:500;color:#d5dde5}.location-shell-footer .location-contact-fields label>span{color:#9eafc0;font-size:11px}
.location-shell-footer .location-contact-fields input,.location-shell-footer .location-contact-fields textarea{background:#0c1420;border:1px solid #485767;border-radius:7px;color:#f4f7fa;font-size:14px;min-height:46px}.location-shell-footer .location-contact-fields textarea{min-height:100px}
.location-shell-footer .location-contact-privacy{color:#aebbc9;font-size:11px;line-height:1.7}.location-shell-footer .location-contact-privacy a{color:#d7eaf3}
.location-shell-footer .location-contact-form .button{border-radius:999px;padding:7px 7px 7px 22px;min-height:46px;font-size:13px;width:100%}.location-shell-footer .location-contact-form .button:hover:not(:disabled){background:#52d6fb}.location-shell-footer .location-contact-form .button:disabled{background:#a6bbc6;color:#192d3a}
.location-shell-footer .location-contact input:focus-visible,.location-shell-footer .location-contact textarea:focus-visible,.location-shell-footer .location-contact button:focus-visible{outline-color:#02bbf1}
.location-footer-row{display:grid;grid-template-columns:1.1fr 1fr 1fr .9fr;gap:48px;border-top:1px solid #ffffff1a;padding:48px 0 55px}
.location-footer-brand img{width:110px;height:auto}.location-footer-brand>p{font-size:13px;line-height:1.8;color:#aebbc9;margin-top:20px;max-width:280px}
.location-footer-row nav h2{font:600 11px/1.5 Archivo,Arial,sans-serif;letter-spacing:.2em;color:#aebbc9}.location-footer-row ul{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:14px}
.location-footer-row nav a{font-size:13px;line-height:1.6;text-decoration:none;color:#bbc7d3;display:inline-block}.location-footer-row a:hover{color:#02bbf1}
.location-footer-reviews,.location-footer-directory{display:inline-block;color:#d7eaf3;font-size:12px;margin-top:20px;text-decoration:none}.location-footer-social{display:flex;flex-wrap:wrap;gap:9px 14px;margin-top:20px}.location-footer-social a{font-size:11px;color:#aebbc9;text-decoration:none}
.location-footer-brand .location-footer-legal{font-size:10px;color:#9eafc0;margin-top:16px}
.location-directory-connect{padding-top:70px;padding-bottom:60px}.location-directory-connect p{color:#aebbc9;max-width:560px}.location-directory-connect .shell-project-button{margin-top:25px}
@media(max-width:1000px){.location-shell-footer .location-contact-grid{gap:36px}.location-footer-row{gap:28px;grid-template-columns:1fr 1fr}.location-contact-email{font-size:clamp(2rem,4.5vw,3.7rem)}}
@media(max-width:760px){.location-shell-footer .location-contact-grid{grid-template-columns:1fr;gap:35px}.location-shell-footer .location-contact{padding:50px 0}.location-contact-email{font-size:clamp(2rem,8vw,4rem)}.location-shell-footer .location-contact-copy{padding-top:0}.location-contact-response{margin-top:20px}}
@media(max-width:640px){.location-shell-header.site-header{height:76px;padding:6px 0}.location-shell-header .header-row{width:calc(100% - 24px);min-height:62px;padding:0 10px;gap:10px}.location-shell-header .logo{width:94px}.location-shell-header .site-nav{gap:8px}.shell-menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:32px;height:38px;padding:5px;border:0;background:transparent;color:white;cursor:pointer}.shell-menu-toggle span{width:17px;height:1px;background:currentColor}.shell-navlinks{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;padding:18px 22px;background:#0c1420;border:1px solid #ffffff26;border-radius:18px;box-shadow:0 12px 30px #0004;gap:0}.shell-navlinks a{padding:12px 0;display:block}.is-menu-open .shell-navlinks{display:block}.shell-project-button{font-size:10px;gap:10px;padding:6px 6px 6px 13px;min-height:40px}.shell-button-arrow{width:26px;height:26px;font-size:18px}.location-shell-footer .location-contact-form{padding:23px}.location-footer-row{gap:32px 25px;padding:36px 0}.location-footer-row nav a{font-size:12px}.location-footer-brand{grid-column:1/-1}.location-footer-brand>p{max-width:440px}.location-directory-connect{padding-top:45px;padding-bottom:40px}}
@media(max-width:380px){.location-shell-header .logo{width:82px}.location-shell-header .shell-project-button{font-size:9px;gap:6px;padding-left:10px}.location-shell-header .shell-button-arrow{width:22px;height:22px}.location-shell-header .site-nav{gap:3px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.location-shell-header,.location-shell-header .header-row,.shell-project-button,.shell-button-arrow{transition:none!important}}

/* Compact contact layout; button variants match frontend-app/src/components/ui.tsx. */
.location-shell-footer .location-contact{padding:40px 0 36px}
.location-shell-footer .location-contact-grid{gap:48px;align-items:center}
.location-shell-footer .location-contact-copy{padding-top:0}
.location-shell-footer .location-contact-email{margin-top:12px}
.location-shell-footer .location-contact-copy>p{margin-top:16px;font-size:14px;line-height:1.65}
.location-shell-footer .location-contact-methods{gap:10px;margin-top:20px}
.location-shell-footer .location-contact-methods>a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 20px;border:1px solid #ffffff24;border-radius:999px;background:transparent;color:#eef2f7;font:600 .78rem/1.4 Archivo,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;transition:color .3s,background .3s,border-color .3s}
.location-shell-footer .location-contact-methods>a svg{flex-shrink:0}
.location-shell-footer .location-contact-methods>a:hover{border-color:#02bbf1;color:#02bbf1}
.location-shell-footer .location-contact-methods>a.location-whatsapp-button{border-color:#25d366;color:#25d366}
.location-shell-footer .location-contact-methods>a.location-whatsapp-button:hover{background:#25d3661f}
.location-shell-footer .location-contact-methods>a.location-whatsapp-button:focus-visible{outline-color:#25d366}
.location-shell-footer .location-contact-response{margin-top:16px;gap:4px;font-size:11px}
.location-shell-footer .location-contact-form{padding:20px 22px;border-radius:12px}
.location-shell-footer .location-form-title{font-size:18px;margin:0 0 14px}
.location-shell-footer .location-contact-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px}
.location-shell-footer .location-contact-fields label{font-size:11px;line-height:1.4}
.location-shell-footer .location-contact-fields input{margin-top:4px;padding:8px 10px;min-height:40px;height:40px}
.location-shell-footer .location-contact-fields textarea{margin-top:4px;padding:8px 10px;min-height:66px;height:66px;line-height:1.5}
.location-shell-footer .location-contact-full{grid-column:1/-1}
.location-shell-footer .location-contact-privacy{margin:10px 0;font-size:10px}
.location-shell-footer .location-contact-form .button{min-height:40px;padding:5px 5px 5px 18px;font-size:12px}
#location-contact-success:empty{display:none}
@media(max-width:760px){.location-shell-footer .location-contact{padding:32px 0}.location-shell-footer .location-contact-grid{gap:24px}.location-shell-footer .location-contact-response{flex-direction:row;flex-wrap:wrap;gap:5px 12px}}
@media(max-width:580px){.location-shell-footer .location-contact-form{padding:18px}.location-shell-footer .location-contact-methods>a{padding:10px 15px;font-size:11px}.location-shell-footer .location-contact-fields{gap:10px 12px}.location-shell-footer .location-contact-fields input,.location-shell-footer .location-contact-fields textarea{font-size:16px}}
@media(max-width:359px){.location-shell-footer .location-contact-fields{grid-template-columns:1fr}.location-shell-footer .location-contact-full{grid-column:1}}
@media(prefers-reduced-motion:reduce){.location-shell-footer .location-contact-methods>a{transition:none}}

/* Four-field location enquiry: one compact identity row. */
.location-shell-footer .location-contact-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}
@media(max-width:359px){.location-shell-footer .location-contact-fields{grid-template-columns:1fr}}
