/* Shared static contact rail: portrait, wording, action. */
.home-contact-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-block:10px}
.contact-rail-card{display:grid;grid-template-columns:58px minmax(0,1fr) 48px;align-items:center;gap:12px;min-height:78px;padding:9px 15px;border:1px solid #b4c6b5;border-radius:16px;text-decoration:none;box-shadow:5px 7px 14px #1d2d2721,inset 1px 1px 0 #ffffffb3;transition:transform .18s ease,box-shadow .18s ease}
.contact-rail-card:hover{transform:translateY(-2px);box-shadow:7px 10px 18px #1d2d272b}
.contact-rail-whatsapp{background:linear-gradient(145deg,#e4f7e8,#c8eed2);border-color:#55b86f;color:#143722}
.contact-rail-email{background:linear-gradient(145deg,#f3edf8,#dfd4ec);border-color:#bea9d0}
.contact-rail-pack{background:linear-gradient(145deg,#fff8e8,#f4e2bd);border-color:#d4b270}
.contact-person-badge{position:relative;display:grid;place-items:center;width:58px;height:58px}
.contact-person-badge>img{width:56px;height:56px;object-fit:cover;object-position:center 28%;border-radius:50%;border:2px solid #203f35;background:#fff;box-shadow:2px 3px 7px #1826202e}
.contact-name-tag{position:absolute;left:3px;right:3px;bottom:-4px;border-radius:999px;background:#111;color:#fff;font-size:8px;line-height:16px;font-weight:900;text-align:center}
.contact-rail-copy{font-size:18px;font-weight:900;line-height:1.15;text-align:left;overflow-wrap:normal}
.contact-action-svg.whatsapp-svg{justify-self:end;width:34px;height:34px;fill:#fff;background:#25d366;border-radius:50%;padding:2px;box-shadow:1px 2px 5px #0003}
.email-envelope-icon{position:relative;width:48px;height:42px;justify-self:end}
.email-envelope-body{z-index:3;position:absolute;left:2px;right:2px;bottom:2px;height:30px;border:2px solid #263b34;border-radius:5px;background:#fff}
.email-envelope-body:before,.email-envelope-body:after{content:"";position:absolute;top:6px;width:25px;height:2px;background:#263b34}
.email-envelope-body:before{left:0;transform:rotate(31deg)}.email-envelope-body:after{right:0;transform:rotate(-31deg)}
.email-envelope-flap{z-index:4;position:absolute;left:4px;right:4px;top:3px;height:21px;border:2px solid #263b34;border-bottom:0;background:#f3edf8;transform-origin:top;clip-path:polygon(0 0,100% 0,50% 100%);animation:emailFlap 3.6s ease-in-out infinite}
.email-at{position:absolute;left:50%;top:6px;z-index:2;color:#1473e6;font-size:27px;line-height:1;font-weight:900;animation:emailAtFloat 3.6s ease-in-out infinite}
.kanga-roundel{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#111;box-shadow:2px 4px 8px #141e1a33;overflow:hidden}
.kanga-bouncer{font-size:29px;filter:grayscale(1) brightness(0) invert(1);animation:kangaContactBounce 1.35s ease-in-out infinite alternate}
@keyframes kangaContactBounce{from{transform:translateY(3px) rotate(-2deg)}to{transform:translateY(-4px) rotate(2deg)}}
@keyframes emailFlap{0%,15%,85%,100%{transform:rotateX(0);z-index:4}25%,75%{transform:rotateX(175deg);z-index:0}}
@keyframes emailAtFloat{0%,20%,80%,100%{transform:translate(-50%,20px)}38%,62%{transform:translate(-50%,-22px)}}
@media(max-width:1000px){.contact-rail-card{grid-template-columns:46px minmax(0,1fr) 34px;gap:8px;padding:9px}.contact-person-badge{width:46px;height:46px}.contact-person-badge>img{width:44px;height:44px}.contact-rail-copy{font-size:15px}.email-envelope-icon{width:34px;height:32px}.email-envelope-body{height:24px}.email-at{font-size:22px}.kanga-roundel{width:44px;height:44px}}
@media(max-width:760px){.home-contact-rail{grid-template-columns:1fr;gap:8px}.contact-rail-card{min-height:66px;grid-template-columns:46px minmax(0,1fr) 42px;padding:8px 14px;gap:12px}.contact-rail-copy{font-size:16px}}
@media(prefers-reduced-motion:reduce){.kanga-bouncer,.email-envelope-flap,.email-at{animation:none}.email-at{transform:translateX(-50%)}.contact-rail-card{transition:none}}

.email-envelope-icon{isolation:isolate;overflow:hidden;height:64px;margin-top:-22px;padding-top:22px}.email-envelope-flap{top:25px}.email-at{top:28px}.email-envelope-body{background:#fff}.contact-rail-email .contact-person-badge{border-radius:50%;isolation:isolate}.contact-rail-email .contact-person-badge>img{object-fit:cover;object-position:50% 54%;clip-path:circle(38% at 51% 54%);transform:scale(1.35);border:0}.contact-rail-email .contact-name-tag{z-index:5}
@media(max-width:1000px){.email-envelope-icon{height:54px}.email-envelope-flap{height:17px;top:25px}.email-at{top:29px}}
/* Keep light from the upper left and cast depth towards the lower right. */
.contact-action-svg.whatsapp-svg{box-shadow:3px 5px 6px #173a2a52,1px 2px 2px #173a2a33}
.email-envelope-icon{filter:drop-shadow(3px 5px 3px #263b343d)}
.email-at{top:23px}
.contact-rail-pack .kanga-roundel{box-shadow:2px 5px 6px #174c3159,0 7px 13px #4fc77566}
@media(max-width:1000px){.email-at{top:24px}}
/* Shared contact animation and depth, for the isolated preview. */
.contact-rail-card{box-shadow:5px 7px 17px #0003,inset 1px 1px 0 #ffffffb3}
.contact-rail-whatsapp .contact-rail-copy{font-size:1.05em;padding-left:20px}
.contact-name-tag{font-size:8.8px}.contact-action-svg.whatsapp-svg{width:39px;height:39px}
@keyframes emailAtFloat{0%,20%,80%,100%{transform:translate(-50%,18px)}38%,62%{transform:translate(-50%,-22px)}}
@media(max-width:1000px){.contact-rail-whatsapp .contact-rail-copy{padding-left:3px}}
.contact-dock{position:fixed;right:12px;bottom:12px;z-index:19;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 24px)}
.contact-dock a{background:#fffdf7;color:#17392b;border:1px solid #9eb3a2;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800;line-height:1.2;text-decoration:none;box-shadow:3px 5px 12px #0003}
body{padding-bottom:75px}
@media(max-width:700px){.contact-dock{right:6px;bottom:6px;left:6px;max-width:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.contact-dock a{font-size:10px;text-align:center;display:grid;place-items:center;padding:6px 3px;min-height:39px}body{padding-bottom:55px}}
body[data-page="cart"] .contact-dock a{font-size:10px;padding:5px 7px}
