/* Visual do material fornecido, limitado à página de privacidade. */
@font-face { font-family: 'Ody Policy Baloo'; src: url('../fonts/seja-conveniado/baloo.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Ody Policy Baloo Bhai'; src: url('../fonts/seja-conveniado/baloo-bhai.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Ody Policy Roboto'; src: url('../fonts/seja-conveniado/roboto-regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Ody Policy Roboto'; src: url('../fonts/seja-conveniado/roboto-bold.ttf') format('truetype'); font-weight: 700; font-display: swap; }

.odypark-privacy-page { --policy-blue: #093ab9; --policy-sky: #eef7ff; }
.hero-wrap--privacidade { background: #0f63af; }
.policy-hero { position: relative; min-height: 400px; padding: 100px 24px 165px; text-align: center; }
.policy-hero h1 { margin: 0; color: #f47300; font: 400 66px/1.3 'Ody Policy Baloo Bhai', sans-serif; -webkit-text-stroke: 24px #fff; paint-order: stroke fill; }
.policy-page { position: relative; background: #fff; }
.policy-page::before { position: absolute; top: -145px; right: 0; left: 0; height: 62.291667vw; background: url('../images/privacidade/background.svg') center top / 100% auto no-repeat; pointer-events: none; content: ''; }
.policy-main { position: relative; z-index: 1; max-width: 1048px; padding-top: 65px; padding-bottom: 100px; color: #24374a; font-family: 'Ody Policy Roboto', Arial, sans-serif; }
.policy-main :where(h2, h3, h4, p) { margin: 0; }
.policy-main a { color: var(--policy-blue); text-decoration: underline; text-underline-offset: 3px; }
.policy-main a:focus-visible, .policy-skip-link:focus-visible { outline: 3px solid #00a7ed; outline-offset: 5px; }
.policy-skip-link { position: fixed; z-index: 10001; top: 12px; left: 12px; padding: 12px 18px; background: #fff; color: #093ab9; transform: translateY(-180%); }
.policy-skip-link:focus { transform: none; }
.policy-main .contents { margin-bottom: 38px; }
.policy-main .contents h2 { margin-bottom: 16px; color: var(--policy-blue); font: 400 23px/1.3 'Ody Policy Baloo', sans-serif; }
.policy-main .contents-list { --bs-gutter-x: 14px; --bs-gutter-y: 14px; margin-top: 0; padding: 0; list-style: none; }
.policy-main .contents-list a { display: flex; align-items: center; gap: 10px; min-height: 64px; height: 100%; padding: 12px 14px; border: 1px solid #bbd5f7; border-radius: 10px; background: #fff; color: var(--policy-blue); font: 400 17px/1.3 'Ody Policy Baloo', sans-serif; text-decoration: none; }
.policy-main .contents-list a:hover { border-color: var(--policy-blue); background: var(--policy-sky); }
.policy-main .index-number { display: flex; flex: 0 0 28px; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 8px; background: var(--policy-sky); font: 400 16px/1 'Ody Policy Baloo', sans-serif; }
.policy-main .policy-document { display: grid; gap: 28px; }
.policy-main .policy-section { min-width: 0; border: 1px solid var(--policy-blue); border-radius: 12px; background: #fff; scroll-margin-top: 24px; }
.policy-main .section-heading { display: flex; align-items: center; gap: 18px; min-height: 68px; padding-right: 26px; border-bottom: 1px solid #d5e3f5; color: var(--policy-blue); font: 400 29px/1.25 'Ody Policy Baloo', sans-serif; }
.policy-main .section-heading > span:last-child { padding: 14px 0; }
.policy-main .section-number { display: flex; flex: 0 0 72px; align-self: stretch; align-items: center; justify-content: center; border-radius: 10px 0 0; background: var(--policy-blue); color: #fff; font: 400 28px/1 'Ody Policy Baloo', sans-serif; }
.policy-main .section-content { padding: 30px 38px 35px; font-size: 16px; line-height: 1.85; overflow-wrap: anywhere; }
.policy-main .section-content p + p { margin-top: 18px; }
.policy-main .section-content h3 { margin: 30px 0 12px; color: var(--policy-blue); font: 400 25px/1.3 'Ody Policy Baloo', sans-serif; }
.policy-main .section-content h3:first-child { margin-top: 0; }
.policy-main .section-content h4 { margin-bottom: 8px; color: var(--policy-blue); font: 400 21px/1.3 'Ody Policy Baloo', sans-serif; }
.policy-main .section-content ul { margin: 15px 0; padding-left: 24px; }
.policy-main .section-content li + li { margin-top: 15px; }
.policy-main .section-content li::marker { color: var(--policy-blue); }
.policy-main .section-content a { font-weight: 700; }
.policy-main .section-content .cookie-list { margin: 15px 0 0; padding: 0; list-style: none; }
.policy-main .cookie-list > li { padding: 22px 24px; border: 1px solid #dbe9f8; border-radius: 12px; background: #f8fbff; }
.policy-main .cookie-list > li + li { margin-top: 14px; }
.policy-main .effective-date { margin-top: 24px !important; padding: 16px 20px; border-left: 3px solid #fd7e14; border-radius: 0 8px 8px 0; background: #fff8ee; color: #64451e; font-weight: 700; }
.policy-preferences { display: flex; justify-content: center; margin-top: 12px; }
.policy-preferences button { min-height: 44px; padding: 10px; }
/* O fundo global do rodapé sobe sobre páginas curtas; aqui começa após a política. */
.odypark-privacy-page .rodape-background::before { top: 0; background-size: 100% calc(125% + 55rem); }
