/* Shared footer and standalone institutional pages. All rules are scoped. */
.compact-footer .footer-inner{padding-top:46px;padding-bottom:24px}.compact-footer .footer-grid{grid-template-columns:2fr 1fr 1fr;gap:40px}.compact-footer .footer-intro>p{margin:14px 0 10px;font-size:14px;max-width:none}.compact-footer .footer-intro>a:last-child{font-size:13px;color:#bdd2c7}.compact-footer .footer-bottom{margin-top:30px;padding-top:20px}.footer-legal{display:flex;gap:24px;flex-wrap:wrap}.legal-subnav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px}.legal-subnav a{display:block;padding:10px 15px;border:1px solid #cbded0;border-radius:24px;font-size:13px;text-decoration:none;background:#eaf2ec}
@media(max-width:640px){.compact-footer .footer-grid{grid-template-columns:1fr 1fr;gap:28px}.compact-footer .footer-intro{grid-column:1/-1}.compact-footer .footer-bottom{margin-top:28px}}
.site-footer{--footer-accent:#a6e6c2;display:block!important;width:100%;max-width:none;margin:0;padding:0!important;background:radial-gradient(ellipse at 0% 100%,#13533780,transparent 60%),linear-gradient(120deg,#062a1d,#041810);color:#eaf5ee;font-family:'DM Sans',sans-serif;border-top:1px solid #ffffff16}
.site-footer.footer-cotador{--footer-accent:#b4dbf3;background:radial-gradient(ellipse at 0% 100%,#275b7980,transparent 60%),linear-gradient(120deg,#102839,#06121c)}
.footer-inner{width:min(1240px,calc(100% - 80px));margin:auto;padding:76px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1.05fr 1fr;gap:44px}
.footer-brand{display:inline-flex;align-items:center;gap:11px;font-size:23px;font-weight:700;letter-spacing:-.6px;color:inherit;text-decoration:none}.footer-brand img{object-fit:contain;flex-shrink:0}
.footer-intro>p{font-size:15px;line-height:1.85;max-width:320px;color:#c0d4cb;margin:24px 0}.footer-cotador .footer-intro>p{color:#bdcedb}
.site-footer .footer-conversation{font-size:13px;color:var(--footer-accent);display:inline-block;border-bottom:1px solid #ffffff30;padding-bottom:7px}
.site-footer nav,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:14px;font-size:13px;line-height:1.55}
.site-footer h2{font:500 11px/1.5 'JetBrains Mono',monospace;letter-spacing:1.4px;text-transform:uppercase;color:var(--footer-accent);margin:3px 0 10px}
.site-footer a{color:inherit;text-decoration:none;overflow-wrap:anywhere}.site-footer nav a,.footer-contact a,.footer-contact span{color:#c0d4cb}.footer-cotador nav a,.footer-cotador .footer-contact a,.footer-cotador .footer-contact span{color:#bdcedb}
.site-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}.site-footer a:focus-visible{outline:2px solid var(--footer-accent);outline-offset:5px}
.footer-bottom{border-top:1px solid #ffffff24;margin-top:58px;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:11px;line-height:1.8;color:#a6bfb2}.footer-cotador .footer-bottom{color:#a9c1d2}.footer-bottom p{margin:0;max-width:440px}.back-top{white-space:nowrap}.form-privacy{font-size:12px;line-height:1.7;color:#52665b}.form-privacy a{text-decoration:underline;text-underline-offset:3px}
body:has(.legal-header){margin:0;background:#f7faf8;color:#18352a;font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}body:has(.legal-header) *{box-sizing:border-box}body:has(.legal-header) a{color:inherit}body:has(.legal-header){scroll-behavior:smooth}.legal-header{display:flex;align-items:center;justify-content:space-between;padding:24px max(24px,calc((100% - 1200px)/2));gap:24px;background:#06271c;color:#fff}.legal-header>a:last-child{font-size:13px;text-decoration:none;border:1px solid #ffffff55;border-radius:30px;padding:11px 18px}
.legal-hero{padding:65px 30px 75px;background:radial-gradient(ellipse at 95% 90%,#23784d70,transparent 65%),#06271c;color:#fff}.legal-hero>div{max-width:980px;margin:auto}.legal-kicker{font:11px/1.7 'JetBrains Mono',monospace;letter-spacing:1.6px;color:#a6dfbb}.legal-hero h1{font-size:clamp(36px,5vw,64px);font-weight:500;letter-spacing:-2.3px;line-height:1.1;margin:24px 0}.legal-hero p:not(.legal-kicker){font-size:18px;line-height:1.7;max-width:750px;color:#c6dbcf}.legal-hero small{display:block;font-size:12px;color:#a9c3b4;margin-top:28px}
.legal-body{max-width:850px;margin:auto;padding:64px 28px 90px}.legal-body section{margin-bottom:44px;scroll-margin-top:30px}.legal-body h2{font-size:27px;font-weight:500;line-height:1.25;letter-spacing:-.8px;margin:0 0 20px}.legal-body p,.legal-body li{font-size:16px;line-height:1.85;color:#455d51}.legal-body li{margin-bottom:9px}.legal-body a{text-underline-offset:4px}.legal-body a:hover{color:#157548}.legal-note{background:#e6f0e9;border:1px solid #cbded0;border-radius:12px;padding:22px;line-height:1.8;font-size:14px}.legal-action{display:inline-block;background:#123d29;color:white!important;text-decoration:none;padding:14px 20px;border-radius:30px}.legal-body .small-note{font-size:12px}.principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.principle-grid article{padding:26px;background:linear-gradient(135deg,#fff,#eaf2eb);border:1px solid #d8e3db;border-radius:14px}.principle-grid span{font:12px 'JetBrains Mono',monospace;color:#35714f}.principle-grid h3{font-size:20px;font-weight:500}.principle-grid p{font-size:14px;margin-bottom:0}.skip-link{position:absolute;top:-100px;left:15px;padding:12px;background:white;color:#123d29!important;z-index:100}.skip-link:focus{top:10px}
@media(max-width:1000px){.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-inner{width:calc(100% - 56px)}.footer-bottom{flex-wrap:wrap}}
@media(max-width:640px){.footer-inner{width:calc(100% - 44px);padding-top:50px}.footer-grid{grid-template-columns:1fr 1fr;gap:34px 20px}.footer-intro,.footer-contact{grid-column:1/-1}.footer-intro>p{max-width:none}.site-footer nav{font-size:12px}.site-footer h2{font-size:10px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:18px;margin-top:38px}.legal-header{padding:20px}.legal-header .footer-brand{font-size:19px}.legal-header>a:last-child{font-size:11px;padding:9px 12px}.legal-hero{padding:45px 24px}.legal-hero h1{letter-spacing:-1.3px}.legal-body{padding:45px 24px}.principle-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body:has(.legal-header){scroll-behavior:auto}}
