/* A consistent, softer shape across the interface. */
:root{--corner-radius:20px}
.whatsapp-panel[hidden]{display:none}
.whatsapp-panel{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:calc(max(24px,env(safe-area-inset-bottom)) + 74px);width:min(350px,calc(100vw - 32px));max-height:calc(100dvh - 124px);overflow:auto;z-index:1001;background:#fff;border:1px solid #deebe2;border-radius:20px;box-shadow:0 12px 45px #173c2d38;color:#244b30;text-align:left}
.whatsapp-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px;background:#128c4c;color:#fff}
.whatsapp-panel-header h2{margin:0 0 6px;font-size:19px;line-height:1.2;color:#fff;letter-spacing:-.02em}
.whatsapp-panel-header p{margin:0;font-size:11px;line-height:1.5;color:#fff}
.whatsapp-close{display:flex;align-items:center;justify-content:center;flex:0 0 32px;height:32px;border:0;border-radius:50%;background:#ffffff24;color:#fff;font-size:26px;line-height:1;cursor:pointer}
.whatsapp-message-form{padding:20px;display:grid;gap:12px}
.whatsapp-message-form label{font-size:13px;font-weight:600}
.whatsapp-message-form textarea{width:100%;min-height:125px;resize:vertical;max-height:240px;border:1px solid #c8dccf;border-radius:20px;background:#f7faf7;padding:13px;font:16px/1.5 Arial,sans-serif;color:#244b30}
.whatsapp-message-form textarea:focus{outline:2px solid #128c4c;outline-offset:2px}
.whatsapp-message-form p{margin:0;font-size:11px;line-height:1.5;color:#5c7063}
.whatsapp-send{display:flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:12px;border:0;border-radius:20px;background:#128c4c;color:#fff;font:600 13px Arial,sans-serif;cursor:pointer}
.whatsapp-send:hover,.whatsapp-close:hover{background:#0e753e}
.whatsapp-send:focus-visible,.whatsapp-close:focus-visible{outline:3px solid #287697;outline-offset:3px}
@keyframes whatsapp-open{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference){.whatsapp-panel:not([hidden]){animation:whatsapp-open .22s ease-out}}
@media(max-width:767px){.whatsapp-panel{right:max(16px,env(safe-area-inset-right));bottom:calc(max(16px,env(safe-area-inset-bottom)) + 68px)}}
.whatsapp-float{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:1000;display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:20px;background:#128c4c;color:#fff;box-shadow:0 5px 20px #173c2d40;text-decoration:none;transition:background-color .2s,box-shadow .2s}
.whatsapp-float svg{width:32px;height:32px;display:block}
.whatsapp-float:hover{background:#0e753e;box-shadow:0 7px 24px #173c2d55}
.whatsapp-float:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #128c4c}
.footer-bottom{padding-right:78px}
@media(max-width:767px){.whatsapp-float{width:54px;height:54px;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom))}.footer-bottom{padding-right:64px}}
@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}
main>.section,.businesses-grid>.section{width:calc(100% - 24px);margin:12px auto;border-radius:var(--corner-radius);overflow:hidden}
.hero-background{border-radius:var(--corner-radius)}
.hero .button,.header-cta,.button,.services .button,.apartments .button,.logistics .button,.gallery-cta,.contact-form .button{border-radius:var(--corner-radius)}
.contact-cards article,.contact-cards article.wide,.contact-cards article.contact-supervision,.contact-form,.trust-values,.unit-cards article,.logistics-list>div,.logistics-highlights,.company-card,.apartment-gallery{border-radius:var(--corner-radius)}
.contact-form input,.contact-form select,.contact-form textarea{border-radius:var(--corner-radius)}
.gallery-grid figure,.gallery-grid img,.spaces-grid figure,.spaces-grid img,.apartment-small figure,.apartment-large,.logistics-illustration{border-radius:var(--corner-radius);overflow:hidden}
.logistics-illustration img{border-radius:var(--corner-radius)}
.site-footer{border-radius:var(--corner-radius) var(--corner-radius) 0 0}
@media(max-width:767px){main>.section,.businesses-grid>.section{width:calc(100% - 16px);margin:8px auto}.contact-cards article,.contact-cards article.wide,.contact-form,.contact-form input,.contact-form select,.contact-form textarea{border-radius:var(--corner-radius)}}
