:root{--ink:#171d1c;--forest:#284b46;--cream:#f5f2eb;--line:#dedbd1}
*{box-sizing:border-box}
body{margin:0;background:#fcfbf8;color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.7}
a{color:#1f5751}a:focus-visible,button:focus-visible{outline:3px solid #b9904d;outline-offset:4px}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;padding:8px;background:white;z-index:100}
.legal-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px clamp(20px,5vw,84px);border-bottom:1px solid var(--line)}
.legal-brand{display:inline-flex;align-items:center;gap:13px;color:var(--ink);text-decoration:none}
.legal-logo{display:block;flex:0 0 48px;width:48px;height:48px;background-image:url('/assets/logo-header-terra-atlantica.png');background-repeat:no-repeat;background-size:315px 105px;background-position:-35px -28px}
.legal-brand strong,.legal-brand small{display:block;letter-spacing:.15em;line-height:1.4}.legal-brand strong{font-size:.82rem}.legal-brand small{font-size:.55rem;color:#55645d}
.legal-back{white-space:nowrap}.legal-wrap{width:min(840px,calc(100% - 40px));margin:clamp(50px,8vw,110px) auto 95px}
.eyebrow{display:block;font-size:.68rem;font-weight:750;letter-spacing:.19em;color:var(--forest)}
h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.18;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,6vw,5.2rem);margin:19px 0 45px}h2{font-size:clamp(1.6rem,3vw,2.15rem);margin:42px 0 14px}
p{max-width:72ch}.legal-warning{border-left:4px solid #9a7840;background:#f3efe5;padding:17px 22px}.legal-end{border-top:1px solid var(--line);margin-top:52px;padding-top:24px;font-weight:700}
.legal-footer{background:#234740;color:white;padding:35px clamp(20px,5vw,84px);display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between}
.legal-footer nav{display:flex;flex-wrap:wrap;gap:14px}.legal-footer a{color:white}.legal-footer button{color:white;background:none;border:0;text-decoration:underline;font:inherit;cursor:pointer}
@media(max-width:560px){.legal-header{padding:15px 20px}.legal-back{font-size:.8rem}.legal-logo{flex-basis:40px;width:40px;height:40px;background-size:270px 90px;background-position:-30px -24px}.legal-brand strong{font-size:.7rem}.legal-brand small{font-size:.48rem}}
