/* Brand assets keep their original aspect ratios. */
.robot-panel .guide-whatsapp .whatsapp-mark{display:block;width:24px;height:24px;min-width:24px;max-width:24px;aspect-ratio:1;object-fit:contain;flex:0 0 24px;align-self:center}
.robot-panel .guide-whatsapp{gap:14px}
.robot-panel .guide-whatsapp>span{min-width:0}
.robot-panel .chat-close{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border:1px solid transparent;border-radius:6px;padding:10px;flex-shrink:0}
.robot-panel .chat-close svg{width:20px;height:20px}
.robot-panel .chat-close:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.guide-privacy{font-size:.65rem;line-height:1.7;color:#687970;border-top:1px solid #e3e7dd;padding-top:14px;margin-top:18px}
.guide-privacy a,.privacy-consent a{color:#17533f;text-decoration:underline;text-underline-offset:3px}
.form .privacy-consent{display:flex;align-items:flex-start;gap:12px;margin:2px 0 24px;font-weight:400;line-height:1.7}
.form .privacy-consent input{appearance:auto;flex:0 0 19px;width:19px;height:19px;min-height:19px;margin:4px 0 0;padding:0;accent-color:var(--blue)}
.form .privacy-consent>span{font-size:.74rem;color:var(--muted);font-weight:400}
.footer-legal{display:flex;align-items:center;flex-wrap:wrap;gap:15px 28px;border-top:1px solid #ffffff20;padding-top:24px;margin-top:38px;font-size:.73rem;color:#c4d2db}
.footer-bottom{margin-top:22px}
.motion-toggle{border:0;background:transparent;color:inherit;padding:0;font-size:inherit;text-decoration:underline;text-underline-offset:4px;min-height:28px;margin-left:0}
.motion-reader{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.motion-visual{overflow:visible}
.motion-mask{display:inline-block;overflow:visible;vertical-align:baseline}
.motion-piece{display:inline-block;transform-origin:50% 100%;backface-visibility:hidden}
.motion-char{display:inline-block}
.legal-intro{background:var(--soft);padding:42px 0 64px;border-bottom:1px solid var(--line)}
.legal-intro .back-link{display:table;margin-bottom:30px}
.legal-intro h1{max-width:900px;font-size:clamp(3.1rem,5.8vw,5rem)}
.legal-intro p{max-width:640px;font-size:1rem;line-height:1.8;margin-top:25px}
.legal-date{display:block;font-size:.73rem;color:var(--muted);margin-top:26px}
.legal-section{padding-block:70px 100px}
.legal-layout{display:grid;grid-template-columns:250px minmax(0,740px);justify-content:space-between;gap:70px;align-items:start}
.legal-index{position:sticky;top:125px;font-size:.78rem;padding-right:15px}
.legal-index h2{font-size:1rem;line-height:1.4;letter-spacing:-.02em}
.legal-index .eyebrow{font-size:.59rem}
.legal-index ol{list-style:none;padding-left:0;margin:12px 0 26px;color:var(--muted)}
.legal-index li{padding:6px 0}
.legal-index a:hover{color:var(--blue)}
.legal-related{display:block;border-top:1px solid var(--line);padding-top:20px;color:var(--blue)}
.legal-copy>section{padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid var(--line);scroll-margin-top:125px}

.legal-copy h2{font-size:1.55rem;line-height:1.3;letter-spacing:-.035em;margin-bottom:18px}
.legal-copy p{font-size:.95rem;line-height:1.9;margin:0 0 16px}
.legal-copy p:last-child{margin-bottom:0}
.legal-copy a{color:var(--blue);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.legal-sources{font-size:.8rem!important}
.legal-contact{padding:30px;background:var(--soft);border-left:3px solid var(--blue)}
.legal-contact>a{font-size:.87rem}
.error-page{padding:85px 0 110px}
.error-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;min-height:440px}
.error-visual{position:relative;border-block:1px solid var(--line);padding:25px 0 36px;overflow:hidden}
.error-code{display:flex;justify-content:center;font-family:Manrope,Arial,sans-serif;font-weight:650;font-size:clamp(8rem,16vw,15rem);line-height:1.1;letter-spacing:-.08em;color:var(--blue)}
.error-code>span:nth-child(2){color:transparent;-webkit-text-stroke:1.5px var(--blue)}
.error-route{display:block;width:100%;height:auto;overflow:visible;stroke:var(--blue);stroke-width:2}
.error-route-base{stroke:var(--line)}
.error-route-trace{stroke-dasharray:560;stroke-dashoffset:0}
.error-route circle{fill:var(--paper)}

.error-copy h1{font-size:clamp(2.7rem,4.5vw,4.3rem);line-height:1.13}
.error-copy>p{font-size:.94rem;line-height:1.85;margin-top:25px;max-width:440px}
.error-copy .actions{flex-wrap:wrap;gap:20px}
.error-contact{display:inline-block;margin-top:32px;font-size:.77rem;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
.page-privacy .robot-concierge,.page-terms .robot-concierge,.page-notfound .robot-concierge{bottom:20px}
.page-privacy .robot-panel,.page-terms .robot-panel,.page-notfound .robot-panel{bottom:20px;max-height:calc(100dvh - 40px)}
@media(prefers-reduced-motion:no-preference){.error-route-trace{animation:route-connect 1.6s cubic-bezier(.16,1,.3,1) both}.error-code>span{animation:code-arrive 1s cubic-bezier(.16,1,.3,1) both}.error-code>span:nth-child(2){animation-delay:.12s}.error-code>span:nth-child(3){animation-delay:.24s}}
@keyframes route-connect{from{stroke-dashoffset:560}to{stroke-dashoffset:0}}
@keyframes code-arrive{from{opacity:0;transform:translateY(28%) rotateX(60deg);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
html[data-motion=paused] *,html[data-motion=paused] *:before,html[data-motion=paused] *:after{animation-play-state:paused!important;scroll-behavior:auto!important}
html[data-motion=paused] .client-slider-track{animation:none!important}
@media(max-width:1000px){.legal-layout{grid-template-columns:210px minmax(0,1fr);gap:35px}.error-layout{gap:40px}.error-copy .actions{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.legal-intro{padding:32px 0 42px}.legal-intro h1{font-size:clamp(2.8rem,10vw,4rem)}.legal-intro p{font-size:.92rem}.legal-layout{grid-template-columns:1fr;gap:35px}.legal-section{padding-block:35px 55px}.legal-index{position:static;padding:22px;background:var(--soft);border:1px solid var(--line)}.legal-index ol{columns:2;column-gap:25px;font-size:.72rem}.legal-index li{break-inside:avoid}.legal-copy>section{padding-bottom:28px;margin-bottom:28px}.legal-copy h2{font-size:1.35rem}.legal-copy p{font-size:.88rem}.legal-contact{padding:23px}.footer-legal{gap:10px 22px;font-size:.7rem}.motion-toggle{margin-left:0}.error-page{padding:30px 0 65px}.error-layout{grid-template-columns:1fr;gap:35px;min-height:0}.error-visual{padding:12px 0 16px}.error-code{font-size:8rem}.error-route{height:70px}.error-copy h1{font-size:clamp(2.6rem,9.6vw,4rem)}.error-copy .actions{flex-direction:row;align-items:center;gap:20px}.error-copy .btn{font-size:.8rem;padding-inline:18px}.error-copy .text-link{font-size:.8rem}.page-privacy .robot-concierge,.page-terms .robot-concierge,.page-notfound .robot-concierge{bottom:calc(12px + env(safe-area-inset-bottom))}.page-privacy .robot-panel,.page-terms .robot-panel,.page-notfound .robot-panel{bottom:12px;max-height:calc(100dvh - 24px)}}
@media(max-width:360px){.legal-index ol{columns:1}.robot-panel .guide-whatsapp{font-size:.76rem;padding-inline:13px;gap:11px}}
@media(max-width:360px){.nav{gap:8px}.menu{width:44px;min-width:44px;justify-content:center;padding:10px;gap:0}.menu-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.brand-title small{letter-spacing:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.error-code>span,.error-route-trace{animation:none!important}}
