/* V24: phone-only finishing, preserving the approved compact layouts. */
@media(max-width:700px){
 /* Keep each marker in its own gutter, including wrapped feature text. */
 .solution-console .solution-copy li{padding-left:20px;overflow-wrap:anywhere}
 .solution-console .solution-copy li:before{content:"+";display:block;position:absolute;left:0;top:3px;width:12px;color:var(--orange);font-size:16px;line-height:14.85px;text-align:center;pointer-events:none}
 /* Normalize CTA padding AND arrow dimensions: an inherited 45px arrow inflated the hero. */
 body .button,body .line-button{min-height:48px;padding:10px 16px;gap:10px;border-radius:14px;font-size:12px;line-height:1.4;font-weight:600;letter-spacing:.01em;box-shadow:inset 0 1px #ffffff24,0 5px 14px #0002;touch-action:manipulation}
 body .button>span,body .line-button>span,.hero .hero-bottom .button>span{width:24px;height:24px;min-width:24px;flex:0 0 24px;font-size:21px;line-height:1;align-self:center;background:transparent;box-shadow:none}
 .hero .hero-bottom .button{min-height:50px;padding:11px 17px;font-size:12px;line-height:1.4;border-radius:14px;gap:12px}
 .moment-content .button,.scene-next .button,.lead-form .button.submit,.pastry-copy .line-button,.segment-story .line-button,.consultant-copy .line-button,.human-support.support-backdrop .support-copy .line-button{min-height:48px;padding:11px 15px;font-size:12px;line-height:1.4;gap:10px}
 body .direct-contact .whatsapp-button{min-height:50px;padding:11px 15px;font-size:13px;line-height:1.4;gap:10px}
 .restaurant-experience .implant-button,.restaurant-experience[data-state=connected] .implant-button{min-height:50px;padding:11px 12px;box-shadow:inset 0 1px #fff0d870,0 0 0 3px #ff934015,0 7px 20px #0006}
 .header .header-contact{padding:8px 12px;min-height:44px;gap:9px}.header .header-contact span{width:24px;height:24px;font-size:19px}
 body .button:focus-visible,body .line-button:focus-visible,.header-contact:focus-visible,.implant-button:focus-visible{outline:2px solid #ffdab7;outline-offset:4px}
 /* The restaurant is the origin of a shared trunk and eight visible branches. */
 .operation-map .map-nodes{column-gap:22px}
 .operation-map .map-hub{z-index:2}
 .operation-map .hub-core{width:fit-content;max-width:100%;height:40px;padding:0 13px;border:1px solid #d0b49760;border-radius:11px;background:linear-gradient(110deg,#213e53,#132b3e);box-shadow:inset 0 1px #e0f3ff18,0 3px 12px #0003}
 .operation-map .hub-core strong{font-size:17px;line-height:1.05}
 .operation-map .map-hub:after{content:'';display:block;position:absolute;inset:100% auto auto 50%;width:2px;height:6px;margin-left:-1px;border:0;border-radius:0;background:#d6b492;box-shadow:none;animation:none}
 .operation-map .map-nodes:before{top:43px;bottom:22px;left:calc(50% - 1px);width:2px;z-index:0;opacity:.65;background:linear-gradient(#e8bd93,#71badc)}
 .operation-map .map-nodes:after{content:'';position:absolute;top:43px;bottom:22px;left:calc(50% - 1px);width:2px;z-index:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,transparent 35%,#fff0d5 48%,#f0b17a 52%,transparent 66%);background-size:100% 250%;animation:mobileConnectionFlow 4s linear infinite;opacity:.8}
 .operation-map .map-node,.operation-map .map-node:hover{z-index:1;overflow:visible}
 .operation-map .map-node:before{content:'';display:block;position:absolute;inset:50% -12px auto auto;width:12px;height:2px;border:0;border-radius:0;background:#84bbd390;box-shadow:none;opacity:1;pointer-events:none;transform:translateY(-50%)}
 .operation-map .map-node:nth-child(even):before{right:auto;left:-12px}
 .operation-map .map-node.is-active:before{background:#ffca93;box-shadow:0 0 7px #ffb47480;animation:mobileConnectionPulse 2.4s ease-in-out infinite}
 /* Center the footer, with compact copyright and the two links on one row. */
 footer{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:13px;padding:30px 16px 25px}
 footer .brand{width:152px;max-width:55%;margin:0 auto}
 footer p{width:100%;margin:0;font-size:10px;line-height:1.6;color:#9cabb9}
 footer>div{width:100%;max-width:370px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:center;justify-content:center}
 footer>div a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:5px 0;font-size:clamp(9px,2.6vw,10.5px);line-height:1.4;white-space:nowrap;overflow-wrap:normal;color:#b5c4d0}
 footer>div a:focus-visible{outline:2px solid #edb081;outline-offset:2px;border-radius:6px}
 @keyframes mobileConnectionFlow{from{background-position:0 100%}to{background-position:0 0}}
 @keyframes mobileConnectionPulse{0%,100%{opacity:.6}50%{opacity:1}}
 .motion-paused .operation-map .map-nodes:after,.motion-paused .operation-map .map-node.is-active:before,.operation-map.is-idle .map-nodes:after,.operation-map.is-idle .map-node.is-active:before{animation-play-state:paused}
}
@media(max-width:700px) and (max-height:620px){
 .operation-map .hub-core{height:26px;padding-inline:10px;border-radius:8px;gap:8px}
 .operation-map .hub-core strong{font-size:12px;line-height:1.05}
 .operation-map .hub-core span{font-size:9px;line-height:1.2}
 .operation-map .map-nodes:before,.operation-map .map-nodes:after{top:27px}
}
@media(max-width:700px) and (prefers-reduced-motion:reduce){
 .operation-map .map-nodes:after,.operation-map .map-node.is-active:before{animation:none}
 .operation-map .map-nodes:after{display:none}
}
