:root {
    --odw-navy: #07111f;
    --odw-blue: #0878e8;
    --odw-blue-dark: #005ab7;
    --odw-lime: #8fcb1f;
    --odw-lime-dark: #5b9810;
    --odw-virtus: #ec4613;
    --odw-ink: #17202b;
    --odw-muted: #5b6470;
    --odw-paper: #ffffff;
    --odw-soft: #f3f6f9;
    --odw-line: #dce3e9;
    --odw-whatsapp: #178b4d;
    --odw-max: 1180px;
}

* { box-sizing: border-box; }

html,
body { overflow-x: hidden; }

.odw-skip-link {
    position: fixed;
    top: -100px;
    left: 20px;
    z-index: 999999;
    padding: 12px 18px;
    color: #fff;
    background: var(--odw-navy);
    border: 2px solid #fff;
}

.odw-skip-link:focus { top: 20px; color: #fff; }

.odw-page {
    color: var(--odw-ink);
    background: var(--odw-paper);
    font-family: Roboto, Arial, sans-serif;
}

.odw-header-shell {
    position: relative;
    z-index: 100;
    background: #101010;
}

.odw-page:focus { outline: none; }

.odw-page a:focus-visible,
.odw-page button:focus-visible,
.odw-skip-link:focus-visible {
    outline: 3px solid var(--odw-lime);
    outline-offset: 4px;
}

.odw-container,
.odw-breadcrumb {
    width: min(calc(100% - 40px), var(--odw-max));
    margin-inline: auto;
}

.odw-breadcrumb { padding: 22px 0; font-size: 14px; }
.odw-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.odw-breadcrumb li + li::before { content: "/"; margin-right: 8px; color: #8c949c; }
.odw-breadcrumb a { color: var(--odw-blue-dark); }

.odw-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 640px;
    color: #fff;
    background: radial-gradient(circle at 74% 32%, rgba(0, 118, 232, .2), transparent 30%), linear-gradient(120deg, #03070c 0%, var(--odw-navy) 55%, #0a1d30 100%);
}

.odw-hero::after { content: ""; position: absolute; inset: auto 0 0; height: 6px; background: linear-gradient(90deg, var(--odw-blue), var(--odw-lime), var(--odw-virtus)); }
.odw-orbit { position: absolute; z-index: -1; border: 1px solid rgba(255, 255, 255, .09); border-radius: 50%; }
.odw-orbit-one { width: 680px; height: 680px; right: -180px; top: -100px; }
.odw-orbit-two { width: 430px; height: 430px; right: -30px; top: 30px; border-color: rgba(143, 203, 31, .15); }

.odw-hero-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr); align-items: center; gap: clamp(40px, 7vw, 100px); min-height: 640px; padding-block: 78px; }

.odw-eyebrow,
.odw-kicker { margin: 0 0 18px; color: var(--odw-blue); font-family: "Roboto Condensed", Arial, sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.odw-hero .odw-eyebrow { color: #aada42; }

.odw-hero h1 { max-width: 720px; margin: 0 0 24px; color: #fff; font-family: "Roboto Condensed", Arial, sans-serif; font-size: clamp(50px, 6.2vw, 88px); font-weight: 700; letter-spacing: -.04em; line-height: .98; }
.odw-hero-lead { max-width: 700px; margin: 0 0 18px; color: #fff; font-size: clamp(21px, 2.1vw, 30px); line-height: 1.38; }
.odw-hero-note { max-width: 660px; margin: 0; color: #cbd5df; font-size: 17px; line-height: 1.7; }
.odw-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; }

.odw-page .odw-button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 52px; padding: 13px 21px; color: #fff !important; border: 2px solid transparent; border-radius: 4px; font-family: "Roboto Condensed", Arial, sans-serif; font-size: 16px; font-weight: 700; text-decoration: none; transition: transform .2s ease, background-color .2s ease, border-color .2s ease; }
.odw-page .odw-button:hover { transform: translateY(-2px); color: #fff !important; }
.odw-button-whatsapp { background: var(--odw-whatsapp); }
.odw-button-whatsapp:hover { background: #0d6d3a; }
.odw-page .odw-button-secondary { background: transparent; border-color: rgba(255, 255, 255, .7); }
.odw-page .odw-button-secondary:hover { border-color: #fff; background: rgba(255, 255, 255, .08); }
.odw-page .odw-button-dark { background: var(--odw-navy); white-space: nowrap; }
.odw-page .odw-button-dark:hover { background: #142841; }
.odw-contact-hint { margin: 14px 0 0; color: #aebbc8; font-size: 14px; }

.odw-hero-logo-wrap { position: relative; display: grid; place-items: center; }
.odw-hero-logo { display: block; width: min(100%, 470px); height: auto; filter: drop-shadow(0 28px 38px rgba(0, 0, 0, .48)); }
.odw-team-badge { position: absolute; z-index: 2; top: 2%; right: -1%; padding: 10px 15px; color: var(--odw-navy); background: var(--odw-lime); border-radius: 999px; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); font-family: "Roboto Condensed", Arial, sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }

.odw-quote { padding: 50px 0; color: #fff; background: var(--odw-blue-dark); text-align: center; }
.odw-page .odw-quote blockquote { margin: 0; padding: 0; color: #fff !important; background: transparent !important; border: 0 !important; font-family: "Roboto Condensed", Arial, sans-serif; font-size: clamp(28px, 4vw, 48px); font-weight: 700; line-height: 1.16; }
.odw-quote p { margin: 15px 0 0; color: #d9ebff; font-size: 15px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }

.odw-section { padding: clamp(72px, 8vw, 112px) 0; }
.odw-section h2,
.odw-contact h2 { margin: 0; color: var(--odw-navy); font-family: "Roboto Condensed", Arial, sans-serif; font-size: clamp(38px, 4.8vw, 64px); font-weight: 700; letter-spacing: -.035em; line-height: 1.04; }
.odw-intro-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(45px, 8vw, 110px); align-items: start; }
.odw-prose p { margin: 0 0 22px; color: var(--odw-muted); font-size: 19px; line-height: 1.75; }

.odw-services { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 65px 0 0; padding: 0; list-style: none; }
.odw-services li { position: relative; padding: 30px 26px; border-top: 4px solid var(--odw-blue); background: var(--odw-soft); }
.odw-services li:nth-child(even) { border-top-color: var(--odw-lime-dark); }
.odw-services span { display: block; margin-bottom: 34px; color: #7b8792; font-family: "Roboto Condensed", Arial, sans-serif; font-size: 14px; font-weight: 700; }
.odw-services h3 { margin: 0 0 14px; color: var(--odw-navy); font-family: "Roboto Condensed", Arial, sans-serif; font-size: 24px; line-height: 1.1; }
.odw-services p { margin: 0; color: var(--odw-muted); line-height: 1.65; }

.odw-benefits { background: var(--odw-soft); }
.odw-section-heading { max-width: 800px; margin: 0 auto 50px; text-align: center; }
.odw-section-heading > p:last-child { margin: 22px auto 0; color: var(--odw-muted); font-size: 18px; line-height: 1.65; }
.odw-benefit-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.odw-benefit-card { display: flex; flex-direction: column; min-height: 340px; padding: 34px; color: var(--odw-ink); background: #fff; border: 1px solid var(--odw-line); border-top: 6px solid var(--odw-blue); box-shadow: 0 16px 35px rgba(20, 42, 65, .07); }
.odw-benefit-card.odw-benefit-consulting { border-top-color: var(--odw-lime-dark); }
.odw-benefit-card.odw-benefit-featured { color: #fff; background: var(--odw-navy); border-color: var(--odw-navy); border-top-color: var(--odw-lime); }
.odw-benefit-label { margin: 0 0 24px; color: var(--odw-blue-dark); font-family: "Roboto Condensed", Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.odw-benefit-featured .odw-benefit-label { color: #aada42; }
.odw-benefit-card h3 { margin: 0 0 15px; color: var(--odw-navy); font-family: "Roboto Condensed", Arial, sans-serif; font-size: 32px; }
.odw-benefit-featured h3 { color: #fff; }
.odw-benefit-card p:not(.odw-benefit-label) { margin: 0; color: var(--odw-muted); font-size: 16px; line-height: 1.65; }
.odw-benefit-featured p:not(.odw-benefit-label) { color: #cbd5df; }
.odw-benefit-value { display: block; margin-top: auto; padding-top: 28px; color: var(--odw-blue-dark); font-family: "Roboto Condensed", Arial, sans-serif; font-size: 58px; font-weight: 700; line-height: 1; }
.odw-benefit-consulting .odw-benefit-value { color: var(--odw-lime-dark); }
.odw-benefit-featured .odw-benefit-value { color: var(--odw-lime); }

.odw-redemption { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; margin-top: 28px; padding: 30px; background: #fff; border-left: 6px solid var(--odw-whatsapp); box-shadow: 0 12px 30px rgba(20, 42, 65, .06); }
.odw-redemption-icon { display: grid; place-items: center; width: 58px; height: 58px; color: #fff; background: var(--odw-whatsapp); border-radius: 50%; font-size: 30px; }
.odw-redemption h3 { margin: 0 0 6px; color: var(--odw-navy); font-family: "Roboto Condensed", Arial, sans-serif; font-size: 24px; }
.odw-redemption p { margin: 0; color: var(--odw-muted); line-height: 1.6; }

.odw-partnership { color: #fff; background: var(--odw-navy); }
.odw-partnership-grid { display: grid; grid-template-columns: .7fr 1.3fr; align-items: center; gap: clamp(50px, 9vw, 130px); }
.odw-partnership h2 { color: #fff; }
.odw-partnership p:not(.odw-kicker) { color: #c8d3de; font-size: 18px; line-height: 1.75; }
.odw-partnership .odw-kicker { color: var(--odw-lime); }
.odw-partnership-mark { display: flex; align-items: baseline; justify-content: center; gap: 14px; color: #fff; font-family: "Roboto Condensed", Arial, sans-serif; }
.odw-partnership-mark span { color: var(--odw-virtus); font-size: clamp(95px, 14vw, 170px); font-weight: 700; line-height: 1; }
.odw-partnership-mark small { color: #718094; font-size: 34px; }
.odw-partnership-mark strong { color: var(--odw-lime); font-size: clamp(38px, 6vw, 74px); }

.odw-contact { padding: clamp(72px, 8vw, 108px) 0; background: #fff; }
.odw-contact-grid { display: grid; grid-template-columns: 1fr .82fr; gap: clamp(45px, 8vw, 105px); align-items: center; }
.odw-contact-grid > div:first-child > p:last-child { max-width: 650px; margin: 24px 0 0; color: var(--odw-muted); font-size: 18px; line-height: 1.7; }
.odw-contact-card { padding: 34px; border-top: 6px solid var(--odw-blue); background: var(--odw-soft); }
.odw-contact-card h3 { margin: 0 0 18px; color: var(--odw-navy); font-family: "Roboto Condensed", Arial, sans-serif; font-size: 28px; }
.odw-contact-card p { margin: 0 0 14px; color: var(--odw-muted); }
.odw-contact-card > a:not(.odw-button) { display: block; margin: 9px 0; color: var(--odw-blue-dark); font-weight: 700; overflow-wrap: anywhere; }
.odw-contact-card .odw-button { margin-top: 20px; }

@media (max-width: 980px) {
    .odw-hero-grid { grid-template-columns: 1fr .65fr; gap: 35px; }
    .odw-services { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .odw-benefit-grid { grid-template-columns: 1fr 1fr; }
    .odw-benefit-consulting { grid-column: 1 / -1; min-height: 280px; }
    .odw-intro-grid, .odw-partnership-grid, .odw-contact-grid { grid-template-columns: 1fr; }
    .odw-partnership-mark { justify-content: flex-start; }
}

@media (max-width: 760px) {
    .odw-container, .odw-breadcrumb { width: min(calc(100% - 30px), var(--odw-max)); }
    .odw-hero, .odw-hero-grid { min-height: auto; }
    .odw-hero-grid { grid-template-columns: 1fr; padding-block: 58px 72px; }
    .odw-hero-copy { position: relative; z-index: 2; }
    .odw-hero-logo-wrap { grid-row: 1; }
    .odw-hero-logo { width: min(70vw, 330px); }
    .odw-team-badge { right: 8%; }
    .odw-hero h1 { font-size: clamp(46px, 14vw, 70px); }
    .odw-services, .odw-benefit-grid { grid-template-columns: 1fr; }
    .odw-benefit-consulting { grid-column: auto; }
    .odw-redemption { grid-template-columns: auto 1fr; }
    .odw-redemption .odw-button { grid-column: 1 / -1; }
}

@media (max-width: 520px) {
    .odw-actions, .odw-page .odw-button { width: 100%; }
    .odw-team-badge { top: -6px; right: 0; }
    .odw-services li, .odw-benefit-card, .odw-contact-card { padding: 26px 22px; }
    .odw-benefit-card { min-height: 310px; }
    .odw-redemption { grid-template-columns: 1fr; padding: 25px 22px; }
    .odw-redemption .odw-button { grid-column: auto; }
    .odw-partnership-mark { gap: 8px; }
}
