:root {
    --ink: #14161A;
    --paper: #F7F5F0;
    --white: #FFFFFF;
    --indigo: #3B36A0;
    --indigo-deep: #26205F;
    --coral: #FF5A3C;
    --coral-btn: #C23D22;
    --gold: #F0A93C;
    --teal: #1F8C7A;
    --grey: #6B6B70;
    --line: rgba(20, 22, 26, 0.12);
    --display: 'Space Grotesk', Arial, sans-serif;
    --body: 'Inter', Arial, sans-serif;
    --logo-url: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMTU2LjAwMDAwMCAxMjk2LjAwMDAwMCI+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMDAwMDAsMTI5Ni4wMDAwMDApIHNjYWxlKDAuMTAwMDAwLC0wLjEwMDAwMCkiIGZpbGw9IiMwMDAwMDAiIHN0cm9rZT0ibm9uZSI+PHBhdGggZD0iTTUwMzEgMTA2MzggYy01IC0xMyAtMjYgLTc1IC00NyAtMTM4IC0yMCAtNjMgLTU1IC0xNjIgLTc2IC0yMjAgLTIyCi01OCAtNDYgLTEyNSAtNTMgLTE1MCAtOCAtMjUgLTQxIC0xMjQgLTc1IC0yMjAgLTMzIC05NiAtNzggLTIyNyAtMTAwIC0yOTAKLTIyIC02MyAtNTggLTE2NyAtODAgLTIzMCAtNzMgLTIwNyAtMTcxIC00OTQgLTE3OSAtNTMwIC01IC0xOSAtMzAgLTkzIC01NQotMTY1IC00OCAtMTMzIC0xNzQgLTQ5NyAtMjA2IC01OTUgLTEwIC0zMCAtMzkgLTExMyAtNjUgLTE4NSAtMjUgLTcxIC03OQotMjI5IC0xMjAgLTM1MCAtNDEgLTEyMSAtMTEzIC0zMzIgLTE2MCAtNDcwIC00OCAtMTM3IC05MyAtMjcwIC0xMDAgLTI5NSAtNwotMjUgLTMwIC04NyAtNDkgLTEzOCAtMjAgLTUxIC0zNiAtMTAzIC0zNiAtMTE2IDAgLTMxIDI1IC01MCA4NSAtNjYgMjggLTcgNjcKLTIxIDg3IC0zMiAyMSAtMTAgNDIgLTE4IDQ5IC0xOCAyNyAwIDI0NCAtMTE4IDM2NCAtMTk4IDEzOSAtOTMgMzM2IC0yNzUgMzkwCi0zNjIgNjAgLTk2IDg3IC0xNjEgODIgLTE5OSAtMTggLTEyOCAtMjkgLTE5MiAtNDYgLTI2NCAtMzcgLTE2MSAtMzggLTE1MiAxMgotMTgxIDI0IC0xNCA1NSAtMjYgNjggLTI2IDEzIDAgNjYgLTkgMTE4IC0yMCAxMzAgLTI4IDMwMCAtMjcgNDUxIDEgMTE5IDIyCjIyMCA2MCAyMjAgODEgLTEgMTUgLTcgNDQgLTUzIDI1NCAtMjkgMTMwIC0zNCAxNjggLTI2IDE5NiAyNiA5OCAyMzEgMzM4IDM4NAo0NTIgMjE0IDE1OSAzNzMgMjQzIDYwMiAzMTcgNjEgMTkgOTIgNDcgNzggNzAgLTcgMTEgLTE2MiA0NjUgLTMyNSA5NDkgLTU0CjE2MiAtMTMzIDM5NCAtMTc1IDUxNSAtNDMgMTIxIC04NSAyNDUgLTk1IDI3NSAtOSAzMCAtMzEgOTEgLTQ3IDEzNSAtMTcgNDQKLTUzIDE1MCAtODEgMjM1IC0yOCA4NSAtNzIgMjE0IC05NyAyODUgLTI1IDcyIC02OCAxOTUgLTk0IDI3NSAtMjcgODAgLTgxCjIzNyAtMTIwIDM1MCAtNDAgMTEzIC04NyAyNTAgLTEwNiAzMDUgLTY3IDIwMSAtMTU0IDQ1MyAtMTk1IDU2NSAtMjMgNjMgLTQ5CjEzOCAtNTggMTY1IC0xMyAzOCAtMjIgNTEgLTM5IDUzIC0xNiAyIC0yNSAtMyAtMzIgLTIweiBtMTIxIC01MzAgYzggLTEzIDIyCi00NSAzMSAtNzMgMjcgLTg3IDE3MSAtNTA3IDM5NiAtMTE2MCAzNCAtOTkgMTA0IC0zMDQgMTU2IC00NTUgNTEgLTE1MSAxMzkKLTQwOCAxOTQgLTU3MCA1NiAtMTYyIDExMCAtMzIwIDEyMCAtMzUwIDEwIC0zMCA0MCAtMTE2IDY2IC0xOTAgMjYgLTc0IDUxCi0xNDggNTYgLTE2NSA0IC0xNiAyOCAtODggNTQgLTE2MCAyNSAtNzEgNTIgLTE1MCA1OSAtMTc1IDggLTI1IDI2IC03OSA0MAotMTIwIDMyIC05MiAzMiAtMTA3IDQgLTExNSAtNDggLTE1IC0yNTYgLTEwOSAtMzIzIC0xNDcgLTIxMyAtMTE5IC00MDEgLTI2OAotNTIxIC00MTQgLTM2IC00MyAtNzIgLTgyIC03OSAtODcgLTIzIC0xMyAtNDIgMjAgLTU0IDkwIC03IDM3IC0yMCAxMDQgLTMxCjE0OCAtMjEgOTEgLTUxIDIyNCAtNzQgMzM1IC04IDQxIC0yNCAxMTggLTM1IDE3MCAtMTEgNTIgLTIzIDExMyAtMjYgMTM1IC00CjIyIC0yMiAxMTEgLTQxIDE5NyBsLTM0IDE1NyAwIDE0NjMgYzAgODA1IDMgMTQ3MyA2IDE0ODYgNCAxMiAxMCAyMiAxNCAyMiA0CjAgMTQgLTEwIDIyIC0yMnogbS0xNjAgLTIwIGMyIC03IDEgLTY5NyAtMiAtMTUzMyBsLTYgLTE1MjAgLTIyIC05NSBjLTI1Ci0xMDUgLTUxIC0yMjQgLTgxIC0zNzUgLTEyIC01NSAtMzUgLTE3MCAtNTIgLTI1NSAtMTggLTg1IC00MiAtMjA3IC01MyAtMjcwCi0xNiAtODEgLTI3IC0xMTYgLTM3IC0xMTggLTggLTEgLTU1IDQxIC0xMDQgOTQgLTE3OSAxOTEgLTM2NiAzMzMgLTU5NSA0NTAKLTExNyA2MCAtMTQ3IDczIC0yMTIgOTQgLTY1IDIwIC02NSAyNiAtMjAgMTYzIDkzIDI3OCAyNDQgNzIxIDI4NyA4NDIgMjYgNzIKNjAgMTcxIDc1IDIyMCAxNiA1MCA1MiAxNTMgODAgMjMwIDI3IDc3IDYyIDE3NiA3NiAyMjAgMzEgOTMgNjggMjAzIDEwMCAyOTUKMTI3IDM2OCAxODggNTQ1IDIwMyA1OTUgMTEgMzMgNDAgMTE5IDY2IDE5MCAyNSA3MiA1MCAxNDQgNTUgMTYwIDIzIDg5IDE5OAo1ODYgMjE3IDYxOCA3IDExIDIwIDggMjUgLTV6IG05NyAtMzM4MSBjNyAtMzQgMjAgLTk4IDMwIC0xNDIgMTAgLTQ0IDI4IC0xMjUKMzkgLTE4MCA1MyAtMjU2IDY1IC0zMTMgNzcgLTM1NSA4IC0yNSAxNiAtNjcgMjAgLTk1IDQgLTI3IDEzIC03NyAyMCAtMTEwIDgKLTMzIDIzIC0xMDUgMzUgLTE2MCAxMiAtNTUgMzMgLTE0NyA0NyAtMjA0IDMwIC0xMjQgMjYgLTE0NiAtMjUgLTE2MSAtMTA3Ci0zMiAtNDg3IC0zMCAtNTQ5IDMgLTM5IDIwIC00MiAzNSAtMjYgMTEyIDcgMzMgMTcgODUgMjMgMTE1IDYgMzAgMjAgOTYgMzEKMTQ1IDYwIDI3NyA2OSAzMTkgMTI5IDYyNSA3MyAzNzMgOTAgNDUyIDEwMiA0ODAgOSAyMyAxMSAyNCAyMyA3IDcgLTkgMTggLTQ1CjI0IC04MHoiLz48L2c+PC9zdmc+');
    --logo-tint: invert(21%) sepia(45%) saturate(1800%) hue-rotate(220deg) brightness(85%) contrast(95%);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    background: var(--paper);
    color: var(--ink);
    font-family: var(--body);
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

a {
    color: inherit;
}

img {
    max-width: 100%;
    display: block;
}

.wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 32px;
}

h1,
h2,
h3 {
    font-family: var(--display);
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--ink);
}

::selection {
    background: var(--coral);
    color: var(--white);
}

:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 3px;
}

.skip-link {
    position: absolute;
    top: -100px;
    left: 12px;
    z-index: 100;
    background: var(--ink);
    color: var(--paper);
    padding: 14px 22px;
    border-radius: 10px;
    font-family: var(--body);
    font-weight: 600;
    font-size: 15px;
    text-decoration: none;
    transition: top .15s ease;
}

.skip-link:focus {
    top: 12px;
}

.eyebrow {
    font-family: var(--body);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--indigo);
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.eyebrow::before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--eyebrow-marker, var(--coral));
    box-shadow: 0 0 0 4px rgba(20, 22, 26, .06);
    flex-shrink: 0;
    display: inline-block;
}

/* fragmentos do símbolo mantidos apenas como elementos decorativos da marca */
.section-mark {
    width: 20px;
    height: 20px;
    fill: var(--indigo);
    opacity: .6;
    flex-shrink: 0;
    display: inline-block;
}

.section-mark--tip {
    clip-path: inset(58% 0 0 0);
}

.section-mark--half {
    clip-path: inset(0 0 48% 0);
}

.section-mark--rot {
    transform: rotate(28deg);
}

.section-mark--rot2 {
    transform: rotate(-18deg);
}

/* Marcadores circulares padronizados: mesma forma, cores de acento por bloco */
.hero .eyebrow,
.ecosystem .eyebrow,
.about .eyebrow,
.team .eyebrow {
    --eyebrow-marker: var(--coral);
}

.thesis .eyebrow,
.strategic .eyebrow,
.case .eyebrow,
.formats .eyebrow {
    --eyebrow-marker: var(--gold);
}

.profiles .eyebrow,
.instruments .eyebrow,
.method .eyebrow,
.faq .eyebrow {
    --eyebrow-marker: var(--teal);
}

.areas .eyebrow,
.cta .eyebrow {
    color: var(--gold);
    --eyebrow-marker: var(--coral);
}

.reg-card .eyebrow {
    color: rgba(255, 255, 255, .82);
    --eyebrow-marker: var(--gold);
    margin-bottom: 16px;
}

.areas .eyebrow::before,
.cta .eyebrow::before,
.reg-card .eyebrow::before {
    box-shadow: 0 0 0 4px rgba(255, 255, 255, .09);
}

/* ===== HEADER ===== */
header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(247, 245, 240, 0.9);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--line);
}

.nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
    min-height: 44px;
}

.brand {
    font-family: var(--display);
    font-weight: 700;
    font-size: 20px;
    letter-spacing: -0.01em;
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: var(--ink);
    border-radius: 8px;
}

.brand:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 4px;
}

.brand-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.brand-badge img {
    filter: none;
}

.nav-logo-img {
    height: 112px;
    width: auto;
    display: block;
    fill: var(--ink);
}

.nav-links {
    display: flex;
    gap: 34px;
    font-size: 14.5px;
    font-weight: 500;
}

.nav-links a {
    text-decoration: none;
    color: var(--ink);
    opacity: .7;
    transition: opacity .2s;
}

.nav-links a:hover,
.nav-links a:focus-visible {
    opacity: 1;
}

.nav-links a:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 3px;
    border-radius: 4px;
}

.nav-cta {
    font-family: var(--body);
    font-weight: 600;
    font-size: 14px;
    background: var(--ink);
    color: var(--paper);
    padding: 14px 22px;
    border-radius: 100px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    box-sizing: border-box;
    transition: background .2s, transform .2s;
}

.nav-cta:hover {
    background: var(--indigo);
    transform: translateY(-1px);
}

.nav-cta:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 3px;
}

.nav-right {
    display: flex;
    align-items: center;
    gap: 18px;
}

/* mobile menu toggle button */
.menu-toggle {
    display: none;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid var(--line);
    border-radius: 10px;
    cursor: pointer;
    flex-shrink: 0;
    padding: 0;
}

.menu-toggle:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 3px;
}

.menu-toggle .bars {
    position: relative;
    width: 20px;
    height: 14px;
}

.menu-toggle .bars span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--ink);
    border-radius: 2px;
    transition: transform .25s ease, opacity .2s ease, top .25s ease;
}

.menu-toggle .bars span:nth-child(1) {
    top: 0;
}

.menu-toggle .bars span:nth-child(2) {
    top: 6px;
}

.menu-toggle .bars span:nth-child(3) {
    top: 12px;
}

.menu-toggle[aria-expanded="true"] .bars span:nth-child(1) {
    top: 6px;
    transform: rotate(45deg);
}

.menu-toggle[aria-expanded="true"] .bars span:nth-child(2) {
    opacity: 0;
}

.menu-toggle[aria-expanded="true"] .bars span:nth-child(3) {
    top: 6px;
    transform: rotate(-45deg);
}

/* mobile panel */
.mobile-panel {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--paper);
    border-bottom: 1px solid var(--line);
    box-shadow: 0 16px 30px rgba(20, 22, 26, 0.08);
}

.mobile-panel.is-open {
    display: block;
}

.mobile-panel-inner {
    padding: 8px 32px 28px;
    display: flex;
    flex-direction: column;
}

.mobile-panel a {
    text-decoration: none;
    color: var(--ink);
    font-family: var(--display);
    font-weight: 600;
    font-size: 19px;
    padding: 14px 0;
    border-bottom: 1px solid var(--line);
}

.mobile-panel a:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 2px;
}

.mobile-panel .mobile-cta {
    margin-top: 20px;
    align-self: flex-start;
    font-family: var(--body);
    font-weight: 600;
    font-size: 15px;
    background: var(--ink);
    color: var(--paper);
    padding: 14px 26px;
    border-radius: 100px;
    text-decoration: none;
    border: none;
}

/* ===== HERO ===== */
.hero {
    padding: 20px 0 90px;
    position: relative;
    overflow: hidden;
}

.hero-mark {
    position: absolute;
    top: 50%;
    right: -18%;
    width: min(64vw, 900px);
    height: auto;
    transform: translateY(-50%);
    fill: var(--indigo);
    opacity: .06;
    pointer-events: none;
    z-index: 0;
}

@media (prefers-reduced-motion:no-preference) {
    .hero-mark {
        animation: mark-breathe 14s ease-in-out infinite;
    }
}

@keyframes mark-breathe {

    0%,
    100% {
        opacity: .05;
        transform: translateY(-50%) scale(1);
    }

    50% {
        opacity: .08;
        transform: translateY(-50%) scale(1.02);
    }
}

.hero-grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 56px;
    align-items: start;
}

.hero-inner {
    position: relative;
    z-index: 1;
}

.hero h1 {
    font-size: clamp(34px, 4.6vw, 56px);
    line-height: 1.06;
    margin-top: 22px;
    max-width: 16ch;
}

.hero h1 .accent {
    color: var(--indigo);
}

.hero-sub {
    margin-top: 26px;
    font-size: clamp(17px, 1.6vw, 19px);
    color: var(--grey);
    max-width: 56ch;
    line-height: 1.6;
}

.hero-actions {
    margin-top: 34px;
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    align-items: center;
}

.btn-primary {
    font-family: var(--body);
    font-weight: 600;
    font-size: 15px;
    background: var(--coral-btn);
    color: var(--white);
    padding: 16px 30px;
    border-radius: 100px;
    text-decoration: none;
    display: inline-block;
    transition: transform .18s ease, box-shadow .18s ease;
    box-shadow: 0 0 0 0 rgba(255, 90, 60, 0);
}

.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(255, 90, 60, .28);
}

.btn-primary:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 3px;
}

.btn-secondary {
    font-family: var(--body);
    font-weight: 600;
    font-size: 15px;
    background: transparent;
    color: var(--ink);
    padding: 15px 28px;
    border-radius: 100px;
    text-decoration: none;
    display: inline-block;
    border: 1px solid var(--line);
    transition: border-color .18s ease, transform .18s ease;
}

.btn-secondary:hover {
    border-color: var(--ink);
    transform: translateY(-2px);
}

.btn-secondary:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 3px;
}

.hero-micro {
    margin-top: 22px;
    font-size: 13.5px;
    color: var(--grey);
    max-width: 52ch;
    line-height: 1.55;
}

/* ---- hero flow diagram: indicador -> investigação -> causa -> intervenção ---- */
.hero-flow {
    position: relative;
    z-index: 1;
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: 22px;
    padding: 8px 26px;
}

.flow-step {
    position: relative;
    display: flex;
    gap: 16px;
    padding: 22px 0;
}

.flow-step+.flow-step {
    border-top: 1px solid var(--line);
}

.flow-rail {
    flex-shrink: 0;
    width: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.flow-dot {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1.5px solid var(--indigo);
    color: var(--indigo);
    background: var(--paper);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--display);
    font-weight: 600;
    font-size: 12.5px;
    flex-shrink: 0;
}

.flow-step:last-child .flow-dot {
    background: var(--coral-btn);
    border-color: var(--coral-btn);
    color: var(--white);
}

.flow-content h3,
.flow-content .flow-title {
    font-size: 15.5px;
    font-weight: 700;
    letter-spacing: -0.005em;
    margin-bottom: 5px;
    color: var(--ink);
}

.flow-content p {
    font-size: 13.5px;
    color: var(--grey);
    line-height: 1.5;
}

/* ===== THESIS ===== */
.thesis {
    padding: 90px 0;
    background: var(--white);
}

.thesis-grid {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 70px;
    align-items: start;
}

.thesis h2 {
    font-size: clamp(28px, 3.6vw, 42px);
    line-height: 1.08;
    max-width: 11ch;
}

.thesis-body p {
    font-size: 18px;
    color: var(--ink);
    margin-bottom: 20px;
    max-width: 58ch;
}

.thesis-body p.dim {
    color: var(--grey);
}

.pull {
    margin-top: 28px;
    padding: 28px 30px;
    background: var(--paper);
    border-radius: 20px;
    font-family: var(--display);
    font-weight: 500;
    font-size: 20px;
    line-height: 1.4;
    color: var(--indigo-deep);
}

/* ===== PROFILES ===== */
.profiles {
    padding: 90px 0;
}

.profiles-head {
    max-width: 640px;
}

.profiles-head h2 {
    font-size: clamp(28px, 3.6vw, 42px);
    line-height: 1.08;
}

.profiles-head p {
    margin-top: 18px;
    font-size: 17px;
    color: var(--grey);
    max-width: 60ch;
}

.p-grid {
    margin-top: 52px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.p-card {
    background: var(--white);
    border-radius: 20px;
    padding: 28px 24px;
    border: 1px solid var(--line);
}

.p-swatch {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    margin-bottom: 20px;
}

.p-card:nth-child(1) .p-swatch {
    background: var(--coral);
}

.p-card:nth-child(2) .p-swatch {
    background: var(--gold);
}

.p-card:nth-child(3) .p-swatch {
    background: var(--indigo);
}

.p-card:nth-child(4) .p-swatch {
    background: var(--teal);
}

.p-card h3 {
    font-size: 21px;
    margin-bottom: 12px;
}

.p-card p {
    font-size: 16px;
    color: var(--grey);
    line-height: 1.6;
}

.profiles-note {
    margin-top: 26px;
    font-size: 13.5px;
    color: var(--grey);
    max-width: 60ch;
}

/* ===== BRAND STATEMENT (assinatura de marca) ===== */
.brand-statement {
    padding: 64px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: var(--white);
    position: relative;
    overflow: hidden;
}

.investigation-line {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.field-marks {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.field-marks .section-mark {
    height: auto;
    fill: var(--indigo);
}

.brand-statement .wrap {
    position: relative;
    z-index: 1;
}

.brand-statement p {
    font-family: var(--display);
    font-weight: 500;
    font-style: italic;
    font-size: clamp(20px, 2.6vw, 30px);
    line-height: 1.4;
    color: var(--ink);
    text-align: center;
    max-width: 26ch;
    margin: 0 auto;
}

.brand-statement p span {
    color: var(--indigo);
    font-weight: 600;
}

@media (max-width:600px) {
    .investigation-line {
        display: none;
    }

    .field-marks {
        display: none;
    }
}

/* ===== AREAS ===== */
.areas {
    padding: 90px 0;
    background: var(--ink);
    color: var(--paper);
}

.areas .eyebrow {
    color: var(--gold);
}

.areas .eyebrow {
    --eyebrow-marker: var(--coral);
}

.areas-head {
    max-width: 640px;
}

.areas-head h2 {
    color: var(--paper);
    font-size: clamp(28px, 3.6vw, 42px);
    line-height: 1.08;
    margin-top: 18px;
}

.areas-head p {
    margin-top: 16px;
    color: rgba(247, 245, 240, .66);
    font-size: 17px;
    max-width: 56ch;
}

.area-grid {
    margin-top: 52px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1px;
    background: rgba(247, 245, 240, 0.14);
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(247, 245, 240, 0.14);
}

.area-item {
    background: var(--ink);
    padding: 36px 34px;
}

.area-item .roman {
    font-family: var(--display);
    font-size: 14px;
    color: var(--coral);
    font-weight: 600;
    margin-bottom: 14px;
    display: block;
}

.area-item h3 {
    color: var(--paper);
    font-size: 21px;
    margin-bottom: 12px;
    line-height: 1.25;
}

.area-item p {
    font-size: 16px;
    color: rgba(247, 245, 240, .68);
    line-height: 1.6;
}

.area-item .area-deliv {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid rgba(247, 245, 240, 0.14);
    font-size: 13.5px;
    color: rgba(247, 245, 240, .5);
    line-height: 1.55;
}

.area-item .area-deliv strong {
    color: rgba(247, 245, 240, .78);
    font-weight: 600;
}

/* ===== LOGO FIELD (reusable organic mark scatter) ===== */
.logo-field {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}

.logo-field .fm {
    position: absolute;
    aspect-ratio: 1156/1296;
    background-image: var(--logo-url);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* ===== ECOSYSTEM (agentes envolvidos) ===== */
.ecosystem {
    padding: 70px 0;
    background: var(--paper);
}

.eco-head {
    max-width: 640px;
    margin-bottom: 36px;
}

.eco-head h2 {
    font-size: clamp(24px, 3vw, 32px);
    line-height: 1.14;
    margin-top: 16px;
}

.agents-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    background: var(--line);
    border: 1px solid var(--line);
    border-radius: 20px;
    overflow: hidden;
}

.agent {
    background: var(--white);
    padding: 30px 28px;
}

.agent-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    display: inline-block;
    margin-bottom: 16px;
}

.agent-dot--indigo {
    background: var(--indigo);
}

.agent-dot--coral {
    background: var(--coral);
}

.agent-dot--gold {
    background: var(--gold);
}

.agent h3 {
    font-size: 16.5px;
    margin-bottom: 8px;
    line-height: 1.25;
}

.agent p {
    font-size: 15.5px;
    color: var(--grey);
    line-height: 1.6;
}

.ecosystem-cta {
    margin-top: 36px;
}

/* ===== ABOUT ===== */
.about {
    padding: 90px 0;
    background: var(--white);
    position: relative;
    overflow: hidden;
}

.about-grid {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 70px;
    position: relative;
    z-index: 1;
}

.about-photo-col {
    display: flex;
    flex-direction: column;
}

.photo-frame {
    width: 100%;
    aspect-ratio: 4/5;
    border: 1px dashed var(--line);
    border-radius: 20px;
    background: var(--paper);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 24px;
    overflow: hidden;
}

.photo-frame--filled {
    border: 1px solid var(--line);
    padding: 0;
}

.photo-frame--filled img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.photo-frame span {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--grey);
    max-width: 20ch;
    line-height: 1.5;
}

/* Pronta para uso quando houver foto real: aplicar class="photo-frame photo-mask"
     no container e trocar o conteudo por <img>. O simbolo funciona como janela/recorte. */
.photo-mask {
    border: none;
    background: var(--paper);
    padding: 0;
    aspect-ratio: 1156/1296;
    clip-path: url(#mark-clip);
}

.photo-mask img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.trajectory-link {
    margin-top: 20px;
    font-size: 14.5px;
    font-weight: 600;
    color: var(--ink);
    text-decoration: none;
    border-bottom: 1px solid var(--ink);
    padding-bottom: 2px;
    align-self: flex-start;
}

.trajectory-link--pending {
    color: var(--grey);
    border-bottom: 1px dashed var(--line);
    cursor: default;
}

.trajectory-link--pending em {
    font-style: normal;
    opacity: .7;
    font-size: 12.5px;
}

.about-body p {
    font-size: 17px;
    margin-bottom: 18px;
    max-width: 60ch;
}

.about-body .pull {
    margin-top: 10px;
    background: var(--paper);
    color: var(--indigo-deep);
}

.about-signature {
    margin-top: 14px;
    font-family: var(--display);
    font-weight: 600;
    font-size: 14px;
    color: var(--ink);
    opacity: .8;
}

/* ===== CASE (linha do tempo profissional) ===== */
.case {
    padding: 90px 0;
    background: var(--white);
}

.case-card {
    background: var(--paper);
    border-radius: 28px;
    padding: 52px 48px;
}

.case-top {
    margin-bottom: 36px;
}

.case-top h2 {
    font-size: clamp(26px, 3vw, 34px);
    max-width: 26ch;
    line-height: 1.15;
}

.case-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 18px;
}

.case-tags span {
    font-size: 12.5px;
    font-weight: 600;
    background: var(--white);
    padding: 8px 14px;
    border-radius: 100px;
    color: var(--indigo-deep);
}

.case-intro {
    font-size: 16.5px;
    color: var(--ink);
    max-width: 70ch;
    margin-top: 18px;
    line-height: 1.6;
}

.case-flow {
    margin-top: 40px;
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: 22px;
    padding: 8px 30px;
}

.case-flow .flow-step {
    padding: 26px 0;
}

.case-flow .flow-content h3 {
    font-size: 17px;
    margin-bottom: 7px;
}

.case-flow .flow-content p {
    font-size: 15px;
    color: var(--grey);
    line-height: 1.6;
}

.case-flow .flow-step--highlight {
    background: rgba(59, 54, 160, 0.05);
    margin: 0 -30px;
    padding: 26px 30px;
    border-radius: 14px;
}

.case-conf {
    font-size: 13px;
    font-style: italic;
    color: var(--grey);
    margin-top: 26px;
    max-width: 70ch;
}

/* ===== METHOD (4 fases — timeline vertical/horizontal) ===== */
.method {
    padding: 90px 0;
}

.method-head {
    max-width: 640px;
}

.method-head h2 {
    font-size: clamp(28px, 3.6vw, 42px);
    line-height: 1.08;
}

.phase-timeline {
    margin-top: 48px;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.phase {
    position: relative;
    display: flex;
    gap: 20px;
    padding: 24px 0;
}

.phase+.phase {
    border-top: 1px solid var(--line);
}

.phase-dot {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1.5px solid var(--indigo);
    color: var(--indigo);
    background: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--display);
    font-weight: 700;
    font-size: 13px;
    position: relative;
}

.phase:last-child .phase-dot {
    background: var(--coral-btn);
    border-color: var(--coral-btn);
    color: var(--white);
}

.phase-mark {
    position: absolute;
    top: -8px;
    right: -10px;
    width: 16px;
    height: auto;
    fill: var(--gold);
    pointer-events: none;
}

.phase-body h3 {
    font-size: 18px;
    margin-bottom: 8px;
}

.phase-body p {
    font-size: 16px;
    color: var(--grey);
    line-height: 1.6;
}

@media (min-width:901px) {
    .phase-timeline {
        flex-direction: row;
        align-items: flex-start;
        gap: 24px;
        position: relative;
    }

    .phase-timeline::before {
        content: "";
        position: absolute;
        top: 20px;
        left: 0;
        right: 0;
        height: 1px;
        background: var(--line);
    }

    .phase {
        flex-direction: column;
        gap: 16px;
        padding: 0;
        flex: 1;
    }

    .phase+.phase {
        border-top: none;
    }

    .phase-dot {
        margin-bottom: 4px;
        position: relative;
        z-index: 1;
    }
}

/* ===== FORMATOS DE TRABALHO ===== */
.formats {
    padding: 70px 0;
    background: var(--paper);
}

.formats-head {
    max-width: 640px;
    margin-bottom: 36px;
}

.formats-head h2 {
    font-size: clamp(24px, 3vw, 32px);
    line-height: 1.14;
    margin-top: 16px;
}

.formats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: var(--line);
    border: 1px solid var(--line);
    border-radius: 20px;
    overflow: hidden;
}

.format-item {
    background: var(--white);
    padding: 28px 24px;
}

.format-item h3 {
    font-size: 16.5px;
    margin-bottom: 8px;
    line-height: 1.3;
}

.format-item p {
    font-size: 15.5px;
    color: var(--grey);
    line-height: 1.6;
}

.formats-cta {
    margin-top: 32px;
}

/* ===== TEAM ===== */
.team {
    padding: 90px 0;
    background: var(--white);
}

.team-head {
    max-width: 640px;
    margin-bottom: 48px;
}

.team-head h2 {
    font-size: clamp(28px, 3.6vw, 42px);
    line-height: 1.08;
}

.team-sub {
    font-family: var(--display);
    font-weight: 600;
    font-size: 13.5px;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--indigo);
    margin: 40px 0 18px;
}

.team-sub:first-of-type {
    margin-top: 0;
}

.team-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.member {
    background: var(--paper);
    border-radius: 18px;
    padding: 26px 26px;
}

.member h3 {
    font-size: 17px;
    margin-bottom: 5px;
}

.member .role {
    font-size: 12.5px;
    font-weight: 600;
    color: var(--coral);
    margin-bottom: 10px;
    display: block;
}

.member p {
    font-size: 15.5px;
    color: var(--grey);
    line-height: 1.6;
}

/* ===== REGULATED ===== */
.regulated {
    padding: 80px 0;
}

.reg-card {
    background: var(--indigo);
    color: var(--white);
    border-radius: 28px;
    padding: 52px 48px;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 48px;
}

.reg-card h2 {
    color: var(--white);
    font-size: clamp(24px, 2.8vw, 32px);
    margin-bottom: 16px;
    line-height: 1.15;
}

.reg-card p {
    font-size: 16px;
    opacity: .85;
    margin-bottom: 14px;
}

.partners {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 20px;
}

.partners span {
    font-size: 13px;
    font-weight: 600;
    border: 1px solid rgba(255, 255, 255, .3);
    padding: 8px 16px;
    border-radius: 100px;
}

/* ===== FAQ (accordion acessível) ===== */
.faq {
    padding: 90px 0;
    background: var(--white);
}

.faq-head {
    max-width: 640px;
    margin-bottom: 40px;
}

.faq-head h2 {
    font-size: clamp(26px, 3.4vw, 38px);
    line-height: 1.1;
}

.faq-list {
    border-top: 1px solid var(--line);
}

.faq-item {
    border-bottom: 1px solid var(--line);
}

.faq-item h3 {
    margin: 0;
}

.faq-q {
    width: 100%;
    text-align: left;
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 4px;
    min-height: 44px;
    font-family: var(--display);
    font-weight: 600;
    font-size: 17px;
    color: var(--ink);
}

.faq-q:focus-visible {
    outline: 2px solid var(--indigo);
    outline-offset: 3px;
    border-radius: 6px;
}

.faq-icon {
    flex-shrink: 0;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 1.5px solid var(--indigo);
    position: relative;
}

.faq-icon::before,
.faq-icon::after {
    content: "";
    position: absolute;
    background: var(--indigo);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.faq-icon::before {
    width: 10px;
    height: 1.5px;
}

.faq-icon::after {
    width: 1.5px;
    height: 10px;
    transition: transform .2s ease, opacity .2s ease;
}

.faq-q[aria-expanded="true"] .faq-icon::after {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(90deg);
}

.faq-a {
    max-height: 0;
    overflow: hidden;
    transition: max-height .25s ease;
}

.faq-a-inner {
    padding: 0 4px 22px;
    font-size: 16px;
    color: var(--grey);
    line-height: 1.65;
    max-width: 70ch;
}

/* ===== CTA ===== */
.cta {
    padding: 90px 0 110px;
}

.cta-card {
    background: var(--ink);
    color: var(--paper);
    border-radius: 32px;
    padding: 64px 56px;
    position: relative;
    overflow: hidden;
}

.cta-grid {
    position: relative;
    z-index: 1;
}

.cta-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
}

.cta h2 {
    color: var(--paper);
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.05;
    max-width: 12ch;
}

.cta-lead {
    margin-top: 20px;
    color: rgba(247, 245, 240, .68);
    font-size: 16.5px;
    max-width: 44ch;
}

.cta-contact {
    margin-top: 32px;
    font-size: 16px;
    line-height: 2.1;
}

.cta-contact a {
    text-decoration: none;
    border-bottom: 1px solid rgba(247, 245, 240, .35);
}

form.contact {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

form.contact label {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    opacity: .55;
    margin-bottom: 7px;
    display: block;
}

form.contact input,
form.contact textarea {
    width: 100%;
    background: rgba(247, 245, 240, 0.06);
    border: 1px solid rgba(247, 245, 240, 0.18);
    border-radius: 12px;
    color: var(--paper);
    font-family: var(--body);
    font-size: 15px;
    padding: 13px 14px;
    outline: none;
    transition: border-color .2s, background .2s;
}

form.contact input:focus,
form.contact textarea:focus {
    border-color: var(--coral);
    background: rgba(247, 245, 240, 0.1);
}

form.contact textarea {
    resize: vertical;
    min-height: 70px;
}

.submit-btn {
    margin-top: 6px;
    font-family: var(--body);
    font-weight: 600;
    font-size: 15px;
    background: var(--coral-btn);
    color: var(--white);
    padding: 16px 30px;
    border-radius: 100px;
    border: none;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
    align-self: flex-start;
}

.submit-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(255, 90, 60, .35);
}

.submit-btn:disabled {
    opacity: .6;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.submit-btn:focus-visible {
    outline: 2px solid var(--coral);
    outline-offset: 3px;
}

.form-note {
    font-size: 13px;
    opacity: .6;
    margin-top: 2px;
    line-height: 1.6;
}

.hp-field {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.field-error {
    font-size: 12.5px;
    color: #FF9478;
    margin-top: 5px;
    min-height: 0;
}

.field-error:empty {
    display: none;
}

input:invalid,
textarea:invalid {
    box-shadow: none;
}

.contact input.has-error,
.contact textarea.has-error {
    border-color: #FF9478;
}

.consent-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13.5px;
    color: rgba(247, 245, 240, .75);
    line-height: 1.5;
    margin-top: 2px;
}

.consent-row input[type="checkbox"] {
    width: 20px;
    height: 20px;
    min-width: 20px;
    margin-top: 1px;
    accent-color: var(--coral-btn);
    cursor: pointer;
}

.form-status {
    font-size: 14.5px;
    margin-top: 4px;
    padding: 12px 14px;
    border-radius: 10px;
    display: none;
}

.form-status.is-visible {
    display: block;
}

.form-status.is-success {
    background: rgba(143, 227, 176, 0.12);
    color: #8FE3B0;
}

.form-status.is-error {
    background: rgba(255, 148, 120, 0.12);
    color: #FF9478;
}

/* ===== FOOTER ===== */
footer {
    padding: 56px 0 30px;
    border-top: 1px solid var(--line);
    position: relative;
    overflow: hidden;
    background: var(--paper);
}

footer .foot-inner {
    position: relative;
    z-index: 1;
}

.foot-top {
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr;
    gap: 40px;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--line);
}

.foot-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}

.foot-logo {
    height: 112px;
    width: auto;
    fill: var(--ink);
    display: block;
}

.foot-brand span {
    font-family: var(--display);
    font-weight: 700;
    font-size: 17px;
    color: var(--ink);
}

.foot-desc {
    font-size: 14px;
    color: var(--grey);
    line-height: 1.65;
    max-width: 38ch;
}

.foot-col h4 {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--grey);
    margin-bottom: 14px;
}

.foot-col p,
.foot-col a {
    display: block;
    font-size: 14px;
    color: var(--ink);
    line-height: 2;
    text-decoration: none;
}

.foot-col p span {
    color: var(--grey);
}

.foot-col a:hover {
    color: var(--indigo);
}

.foot-symbol-note {
    max-width: 62ch;
    margin: 26px 0 0;
    font-size: 13px;
    font-style: italic;
    color: var(--grey);
    line-height: 1.7;
}

.foot-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    padding-top: 22px;
    font-size: 13px;
    color: var(--grey);
}

.foot-legal {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

@media (max-width:700px) {
    .foot-top {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

@media (prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto;
    }

    * {
        transition: none !important;
    }
}

@media (max-width:980px) {
    .thesis-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .about-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .about-clients {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 16px;
    }

    .p-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .area-grid {
        grid-template-columns: 1fr;
    }

    .agents-row {
        grid-template-columns: 1fr;
    }

    .case-flow {
        padding: 4px 20px;
    }

    .case-flow .flow-step--highlight {
        margin: 0 -20px;
        padding: 22px 20px;
    }

    .case-card {
        padding: 40px 30px;
    }

    .steps {
        grid-template-columns: repeat(4, 1fr);
    }

    .formats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .team-list {
        grid-template-columns: 1fr;
    }

    .reg-card {
        grid-template-columns: 1fr;
        gap: 26px;
        padding: 40px 30px;
    }

    .cta-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .cta-card {
        padding: 44px 30px;
    }

    .nav-links {
        display: none;
    }

    .nav-cta {
        display: none;
    }

    .menu-toggle {
        display: flex;
    }

    .hero {
        padding: 36px 0 50px;
    }

    .hero-mark {
        width: min(80vw, 480px);
        right: -30%;
        opacity: .05;
    }

    .hero-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .hero h1 {
        max-width: none;
    }
}

@media (max-width:600px) {
    .p-grid {
        grid-template-columns: 1fr;
    }

    .agent {
        padding: 24px 22px;
    }

    .steps {
        grid-template-columns: repeat(2, 1fr);
    }

    .formats-grid {
        grid-template-columns: 1fr;
    }

    .wrap {
        padding: 0 20px;
    }

    .hero-flow {
        padding: 4px 18px;
    }

    .flow-step {
        gap: 12px;
        padding: 18px 0;
    }
}


/* ===== 2026 REPOSICIONAMENTO E EXPANSÃO DE ESCOPO ===== */
.nav-links {
    gap: 22px;
    font-size: 14px;
}

.hero-context {
    margin-top: 18px;
    font-size: 16px;
    color: var(--ink);
    max-width: 58ch;
    line-height: 1.65;
}

.profiles-head {
    max-width: 760px;
}

.p-grid {
    grid-template-columns: repeat(3, 1fr);
}

.p-card {
    display: flex;
    flex-direction: column;
}

.p-card .card-deliv {
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid var(--line);
    font-size: 13.5px;
    color: var(--grey);
    line-height: 1.55;
}

.p-card:nth-child(5) .p-swatch {
    background: var(--coral);
}

.p-card:nth-child(6) .p-swatch {
    background: var(--gold);
}

.areas-head {
    max-width: 790px;
}

.areas-head p {
    max-width: 72ch;
}

.strategic {
    padding: 82px 0;
    background: var(--white);
}

.strategic-grid {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 64px;
    align-items: start;
}

.strategic h2 {
    font-size: clamp(28px, 3.4vw, 40px);
    line-height: 1.08;
    margin-top: 16px;
}

.strategic-copy p {
    margin-top: 18px;
    font-size: 17px;
    color: var(--grey);
    max-width: 54ch;
}

.theme-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.theme-chips span {
    font-size: 14px;
    font-weight: 600;
    color: var(--indigo-deep);
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: 100px;
    padding: 10px 15px;
}

.scope-note {
    margin-top: 24px;
    padding: 20px 22px;
    border-left: 3px solid var(--coral);
    background: var(--paper);
    color: var(--grey);
    font-size: 14px;
    line-height: 1.65;
}

.instruments {
    padding: 90px 0;
    background: var(--paper);
}

.instruments-head {
    max-width: 720px;
}

.instruments-head h2 {
    font-size: clamp(28px, 3.5vw, 42px);
    line-height: 1.08;
    margin-top: 16px;
}

.instruments-head p {
    margin-top: 18px;
    font-size: 17px;
    color: var(--grey);
}

.instrument-grid {
    margin-top: 46px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.instrument {
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: 20px;
    padding: 30px 28px;
}

.instrument-no {
    display: inline-block;
    font-family: var(--display);
    font-weight: 700;
    font-size: 12px;
    color: var(--coral);
    margin-bottom: 14px;
}

.instrument h3 {
    font-size: 20px;
    margin-bottom: 10px;
}

.instrument p {
    font-size: 15.5px;
    color: var(--grey);
    line-height: 1.65;
}

.agents-row {
    grid-template-columns: repeat(4, 1fr);
}

.agent-dot--teal {
    background: var(--teal);
}

.team-intro {
    margin-top: 18px;
    font-size: 17px;
    color: var(--grey);
    max-width: 72ch;
}

.formats-grid {
    grid-template-columns: repeat(6, 1fr);
}

.format-item {
    grid-column: span 2;
}

.format-item:nth-child(4) {
    grid-column: 2 / span 2;
}

.format-item:nth-child(5) {
    grid-column: 4 / span 2;
}

.reg-detail {
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .2);
}

.reg-label {
    opacity: .7;
    font-size: 14px !important;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .04em;
}

.cta h2 {
    max-width: 15ch;
}

.contact textarea::placeholder {
    color: rgba(247, 245, 240, .48);
}

@media (max-width:1100px) {
    .nav-links {
        gap: 15px;
        font-size: 13.5px;
    }

    .nav-logo-img {
        height: 96px;
    }
}

@media (max-width:980px) {
    .p-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .strategic-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .agents-row {
        grid-template-columns: repeat(2, 1fr);
    }

    .formats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .format-item,
    .format-item:nth-child(4),
    .format-item:nth-child(5) {
        grid-column: auto;
    }
}

main section[id] {
    scroll-margin-top: 140px;
}

.formats-grid {
    background: transparent;
    border: none;
    border-radius: 0;
    overflow: visible;
    gap: 16px;
}

.format-item {
    border: 1px solid var(--line);
    border-radius: 18px;
}

@media (max-width:600px) {
    main section[id] {
        scroll-margin-top: 110px;
    }

    .p-grid,
    .instrument-grid,
    .agents-row,
    .formats-grid {
        grid-template-columns: 1fr;
    }

    .format-item,
    .format-item:nth-child(4),
    .format-item:nth-child(5) {
        grid-column: auto;
    }

    .strategic {
        padding: 66px 0;
    }

    .instruments {
        padding: 70px 0;
    }

    .theme-chips span {
        font-size: 13px;
    }
}


/* ===== REFINAMENTO VISUAL DA IDENTIDADE ANTHROPIA ===== */
:root {
    --coral-soft: #FF765D;
    --teal-deep: #176F63;
    --shadow-soft: 0 18px 55px rgba(20, 22, 26, .065);
}

/* Assinatura institucional mais coesa no cabeçalho */
header {
    background: rgba(247, 245, 240, .95);
}

.brand {
    gap: 9px;
    letter-spacing: .012em;
}

.brand>span {
    font-size: 20px;
    letter-spacing: .015em;
}

.brand-badge {
    margin-right: -1px;
}

.nav-logo-img {
    height: 126px;
    fill: var(--ink);
    stroke: none;
    filter: none;
    transform-origin: center;
    transition: transform .2s ease, opacity .2s ease;
}

.brand:hover .nav-logo-img {
    transform: translateY(-1px);
    opacity: .88;
}

.foot-logo {
    fill: var(--indigo);
    stroke: var(--indigo);
    stroke-width: 5px;
}

/* Paleta de marcadores reduzida: coral para ação, teal para investigação */
.hero .eyebrow,
.thesis .eyebrow,
.strategic .eyebrow,
.case .eyebrow,
.formats .eyebrow,
.about .eyebrow,
.faq .eyebrow {
    --eyebrow-marker: var(--coral);
}

.profiles .eyebrow,
.instruments .eyebrow,
.method .eyebrow,
.ecosystem .eyebrow,
.team .eyebrow {
    --eyebrow-marker: var(--teal);
}

.areas .eyebrow,
.cta .eyebrow {
    color: rgba(247, 245, 240, .76);
    --eyebrow-marker: var(--coral);
}

.reg-card .eyebrow {
    --eyebrow-marker: var(--teal);
}

/* Hero: logo mais deliberada e card com profundidade editorial */
.hero {
    padding-top: 30px;
    background: radial-gradient(circle at 88% 44%, rgba(59, 54, 160, .045), transparent 32%);
}

.hero-mark {
    top: 56%;
    right: -6%;
    width: min(58vw, 820px);
    fill: var(--indigo);
    opacity: .085;
}

@keyframes mark-breathe {

    0%,
    100% {
        opacity: .07;
        transform: translateY(-50%) scale(1);
    }

    50% {
        opacity: .105;
        transform: translateY(-50%) scale(1.018);
    }
}

.hero-flow {
    box-shadow: var(--shadow-soft);
    border-color: rgba(59, 54, 160, .14);
}

.btn-primary {
    box-shadow: 0 8px 24px rgba(194, 61, 34, .13);
}

.btn-secondary {
    background: rgba(255, 255, 255, .28);
}

/* Cards: acento linear e apenas três cores de marca */
.p-card {
    position: relative;
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.p-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-soft);
    border-color: rgba(59, 54, 160, .18);
}

.p-swatch {
    width: 48px;
    height: 6px;
    border-radius: 100px;
    margin-bottom: 22px;
}

.p-card:nth-child(1) .p-swatch {
    background: var(--indigo);
}

.p-card:nth-child(2) .p-swatch {
    background: var(--coral);
}

.p-card:nth-child(3) .p-swatch {
    background: var(--indigo);
}

.p-card:nth-child(4) .p-swatch {
    background: var(--teal);
}

.p-card:nth-child(5) .p-swatch {
    background: var(--coral);
}

.p-card:nth-child(6) .p-swatch {
    background: var(--indigo);
}

.instrument {
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.instrument:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-soft);
    border-color: rgba(31, 140, 122, .22);
}

/* Faixa autoral: a logo deixa de ser mero ruído decorativo */
.brand-statement {
    padding: 70px 0;
    background: var(--indigo-deep);
    border: 0;
    color: var(--paper);
    overflow: hidden;
    position: relative;
}

.brand-statement::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(247, 245, 240, .07);
    border-radius: 50%;
    right: -180px;
    top: -215px;
}

.brand-statement-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 170px 1fr;
    align-items: center;
    gap: 48px;
}

.brand-symbol-stage {
    width: 154px;
    height: 154px;
    display: grid;
    place-items: center;
    position: relative;
    border: 1px solid rgba(247, 245, 240, .16);
    border-radius: 50%;
    background: rgba(247, 245, 240, .035);
}

.brand-symbol-stage::after {
    content: "";
    position: absolute;
    right: 5px;
    bottom: 25px;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: var(--coral-soft);
    box-shadow: 0 0 0 6px rgba(255, 118, 93, .10);
}

.brand-symbol-large {
    height: 128px;
    width: auto;
    fill: var(--paper);
    stroke: var(--paper);
    stroke-width: 4px;
    opacity: .96;
}

.brand-statement-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.brand-kicker {
    display: block;
    font-family: var(--body);
    font-weight: 600;
    font-size: 12px;
    letter-spacing: .075em;
    text-transform: uppercase;
    color: rgba(247, 245, 240, .62);
    margin-bottom: 14px;
}

.brand-statement p {
    margin: 0;
    max-width: 24ch;
    text-align: left;
    color: var(--paper);
    font-style: normal;
    font-size: clamp(25px, 3.1vw, 39px);
    line-height: 1.2;
}

.brand-statement p span {
    color: var(--coral-soft);
    font-weight: 600;
}

/* Fotografia integrada ao sistema visual */
.photo-frame--filled {
    position: relative;
    box-shadow: var(--shadow-soft);
    border-color: rgba(59, 54, 160, .13);
}

.photo-frame--filled::after {
    content: "";
    position: absolute;
    left: 20px;
    bottom: 20px;
    width: 46px;
    height: 6px;
    border-radius: 100px;
    background: var(--coral);
    box-shadow: 0 0 0 7px rgba(247, 245, 240, .74);
}

/* CTA: um único símbolo grande substitui fragmentos dispersos */
.cta-symbol {
    position: absolute;
    right: -9%;
    bottom: -48%;
    width: min(46vw, 560px);
    height: auto;
    fill: var(--paper);
    opacity: .045;
    pointer-events: none;
    transform: rotate(5deg);
}

.cta-grid {
    position: relative;
    z-index: 1;
}

/* Rodapé limpo e assinatura mais reconhecível */
footer {
    background: linear-gradient(180deg, var(--paper), #F1EEE7);
}

.foot-brand {
    gap: 13px;
}

.foot-brand span {
    letter-spacing: .02em;
}

@media (max-width:1100px) {
    .nav-logo-img {
        height: 110px;
    }
}

@media (max-width:980px) {
    .hero {
        padding-top: 24px;
    }

    .hero-mark {
        right: -20%;
        width: min(78vw, 600px);
    }

    .brand-statement-inner {
        grid-template-columns: 140px 1fr;
        gap: 34px;
    }

    .brand-symbol-stage {
        width: 128px;
        height: 128px;
    }

    .brand-symbol-large {
        height: 104px;
    }
}

@media (max-width:600px) {
    .nav {
        padding: 2px 0;
    }

    .nav-logo-img {
        height: 100px;
    }

    .brand {
        gap: 8px;
    }

    .brand>span {
        font-size: 19px;
    }

    .hero {
        padding: 22px 0 42px;
    }

    .hero .eyebrow {
        font-size: 12px;
        line-height: 1.45;
    }

    .hero h1 {
        font-size: clamp(31px, 9.2vw, 38px);
        line-height: 1.045;
        margin-top: 16px;
    }

    .hero-sub {
        margin-top: 22px;
        font-size: 16.5px;
        line-height: 1.55;
    }

    .hero-context {
        margin-top: 16px;
        font-size: 15.5px;
        line-height: 1.55;
    }

    .hero-actions {
        margin-top: 27px;
        gap: 11px;
    }

    .hero-actions a {
        padding: 14px 24px;
    }

    .hero-micro {
        display: none;
    }

    .hero-mark {
        top: 76%;
        right: -48%;
        width: 118vw;
        opacity: .075;
    }

    .hero-grid {
        gap: 26px;
    }

    .brand-statement {
        padding: 48px 0;
    }

    .brand-statement-inner {
        grid-template-columns: 82px 1fr;
        gap: 21px;
    }

    .brand-symbol-stage {
        width: 76px;
        height: 76px;
    }

    .brand-symbol-stage::after {
        width: 8px;
        height: 8px;
        right: 0;
        bottom: 12px;
        box-shadow: 0 0 0 4px rgba(255, 118, 93, .10);
    }

    .brand-symbol-large {
        height: 62px;
        stroke-width: 7px;
    }

    .brand-kicker {
        font-size: 10px;
        margin-bottom: 8px;
    }

    .brand-statement p {
        font-size: 23px;
        line-height: 1.16;
    }

    .p-card:hover,
    .instrument:hover {
        transform: none;
        box-shadow: none;
    }

    .cta-symbol {
        right: -38%;
        bottom: -12%;
        width: 118vw;
        opacity: .04;
    }
}


/* ===== AJUSTE DEFINITIVO DO CABEÇALHO =====
     A versão original do SVG tinha grande área transparente ao redor do desenho.
     No cabeçalho, o vetor foi incorporado com viewBox recortado para que o
     espaçamento visual corresponda ao espaçamento real do layout. */
header {
    min-height: 0;
}

.nav {
    padding: 3px 0;
    min-height: 70px;
}

.brand {
    gap: 8px;
    align-items: center;
}

.brand-badge {
    margin: 0;
    width: auto;
    height: auto;
    line-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-logo-img {
    height: 64px;
    width: auto;
    display: block;
    fill: var(--ink);
    stroke: none;
    filter: none;
    transform: none;
}

.brand:hover .nav-logo-img {
    transform: translateY(-1px);
    opacity: .9;
}

.brand>span {
    font-size: 20px;
    line-height: 1;
    letter-spacing: .012em;
}

.hero {
    padding-top: 14px;
}

@media (max-width:1100px) {
    .nav {
        min-height: 66px;
    }

    .nav-logo-img {
        height: 60px;
    }

    .hero {
        padding-top: 12px;
    }
}

@media (max-width:600px) {
    .nav {
        padding: 2px 0;
        min-height: 60px;
    }

    .brand {
        gap: 7px;
    }

    .nav-logo-img {
        height: 55px;
    }

    .brand>span {
        font-size: 18.5px;
    }

    .hero {
        padding-top: 10px;
    }
}

/* ===== AJUSTE DO RODAPÉ ===== */
.foot-top {
    grid-template-columns: 1.15fr 1fr 1fr;
    gap: 34px;
    padding-bottom: 24px;
}

.foot-brand {
    gap: 8px;
    align-items: center;
    margin-bottom: 8px;
}

.foot-logo {
    height: 62px;
    width: auto;
    display: block;
    fill: var(--ink);
    stroke: none;
    filter: none;
    transform: none;
    flex-shrink: 0;
}

.foot-brand span {
    font-size: 19px;
    line-height: 1;
    letter-spacing: .012em;
}

.foot-symbol-note {
    max-width: 58ch;
    margin-top: 20px;
}

@media (max-width:700px) {
    .foot-top {
        grid-template-columns: 1fr;
        gap: 22px;
        padding-bottom: 20px;
    }

    .foot-brand {
        gap: 7px;
    }

    .foot-logo {
        height: 56px;
    }

    .foot-brand span {
        font-size: 18px;
    }
}


/* Correção robusta da marca vetorial no rodapé */
.foot-logo {
    display: block;
    width: 36px;
    height: 64px;
    flex: 0 0 36px;
    fill: var(--ink);
    stroke: none;
    color: var(--ink);
    overflow: visible;
}

.foot-brand {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 8px;
}

.foot-brand span {
    font-size: 19px;
    line-height: 1;
    letter-spacing: .012em;
}

@media (max-width:700px) {
    .foot-logo {
        width: 32px;
        height: 57px;
        flex-basis: 32px;
    }

    .foot-brand {
        gap: 8px;
    }

    .foot-brand span {
        font-size: 18px;
    }
}


/* ===== PATTERN DECORATIVO DERIVADO DO SÍMBOLO ===== */
.pattern-layer {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    display: block;
}

.pattern-layer rect {
    width: 100%;
    height: 100%;
}

.pattern-layer--soft {
    opacity: 1;
}

.pattern-layer--soft rect {
    fill: url(#anthropia-pattern-soft);
}

.pattern-layer--strong {
    opacity: 1;
}

.pattern-layer--strong rect {
    fill: url(#anthropia-pattern-strong);
}

.pattern-layer--footer rect {
    fill: url(#anthropia-pattern-footer);
}

.about {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.about>.pattern-layer {
    inset: 0;
    opacity: 1;
}

.about>.pattern-layer rect {
    fill: url(#anthropia-pattern-soft);
}

.about .pattern-layer {
    mask-image: linear-gradient(135deg, transparent 0%, #000 14%, #000 84%, transparent 100%);
}

.cta-card {
    position: relative;
    isolation: isolate;
}

.cta-card>.pattern-layer {
    opacity: 1;
}

.cta-card>.pattern-layer rect {
    fill: url(#anthropia-pattern-strong);
}

footer {
    position: relative;
    isolation: isolate;
}

footer>.pattern-layer {
    opacity: 1;
}

footer>.pattern-layer rect {
    fill: url(#anthropia-pattern-footer);
}

.cta-symbol {
    z-index: 0;
}

.cta-grid,
.about-grid,
footer .foot-inner {
    position: relative;
    z-index: 1;
}

@media (max-width:980px) {
    .about>.pattern-layer {
        mask-image: linear-gradient(135deg, transparent 0%, #000 10%, #000 88%, transparent 100%);
    }
}

@media (max-width:600px) {

    .pattern-layer--soft,
    .pattern-layer--strong {
        opacity: 1;
    }

    .about>.pattern-layer {
        mask-image: linear-gradient(135deg, transparent 0%, #000 12%, #000 84%, transparent 100%);
    }
}


/* ===== PATTERN ANTHROPIA — IMPLEMENTAÇÃO VISÍVEL E RESPONSIVA ===== */
:root {
    --pattern-mark: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%22330%20190%20354%20630%22%3E%3Cg%20transform%3D%22translate%280%2C1296%29%20scale%280.1%2C-0.1%29%22%3E%3Cpath%20d%3D%22M5031%2010638%20c-5%20-13%20-26%20-75%20-47%20-138%20-20%20-63%20-55%20-162%20-76%20-220%20-22%20-58%20-46%20-125%20-53%20-150%20-8%20-25%20-41%20-124%20-75%20-220%20-33%20-96%20-78%20-227%20-100%20-290%20-22%20-63%20-58%20-167%20-80%20-230%20-73%20-207%20-171%20-494%20-179%20-530%20-5%20-19%20-30%20-93%20-55%20-165%20-48%20-133%20-174%20-497%20-206%20-595%20-10%20-30%20-39%20-113%20-65%20-185%20-25%20-71%20-79%20-229%20-120%20-350%20-41%20-121%20-113%20-332%20-160%20-470%20-48%20-137%20-93%20-270%20-100%20-295%20-7%20-25%20-30%20-87%20-49%20-138%20-20%20-51%20-36%20-103%20-36%20-116%200%20-31%2025%20-50%2085%20-66%2028%20-7%2067%20-21%2087%20-32%2021%20-10%2042%20-18%2049%20-18%2027%200%20244%20-118%20364%20-198%20139%20-93%20336%20-275%20390%20-362%2060%20-96%2087%20-161%2082%20-199%20-18%20-128%20-29%20-192%20-46%20-264%20-37%20-161%20-38%20-152%2012%20-181%2024%20-14%2055%20-26%2068%20-26%2013%200%2066%20-9%20118%20-20%20130%20-28%20300%20-27%20451%201%20119%2022%20220%2060%20220%2081%20-1%2015%20-7%2044%20-53%20254%20-29%20130%20-34%20168%20-26%20196%2026%2098%20231%20338%20384%20452%20214%20159%20373%20243%20602%20317%2061%2019%2092%2047%2078%2070%20-7%2011%20-162%20465%20-325%20949%20-54%20162%20-133%20394%20-175%20515%20-43%20121%20-85%20245%20-95%20275%20-9%2030%20-31%2091%20-47%20135%20-17%2044%20-53%20150%20-81%20235%20-28%2085%20-72%20214%20-97%20285%20-25%2072%20-68%20195%20-94%20275%20-27%2080%20-81%20237%20-120%20350%20-40%20113%20-87%20250%20-106%20305%20-67%20201%20-154%20453%20-195%20565%20-23%2063%20-49%20138%20-58%20165%20-13%2038%20-22%2051%20-39%2053%20-16%202%20-25%20-3%20-32%20-20z%20m121%20-530%20c8%20-13%2022%20-45%2031%20-73%2027%20-87%20171%20-507%20396%20-1160%2034%20-99%20104%20-304%20156%20-455%2051%20-151%20139%20-408%20194%20-570%2056%20-162%20110%20-320%20120%20-350%2010%20-30%2040%20-116%2066%20-190%2026%20-74%2051%20-148%2056%20-165%204%20-16%2028%20-88%2054%20-160%2025%20-71%2052%20-150%2059%20-175%208%20-25%2026%20-79%2040%20-120%2032%20-92%2032%20-107%204%20-115%20-48%20-15%20-256%20-109%20-323%20-147%20-213%20-119%20-401%20-268%20-521%20-414%20-36%20-43%20-72%20-82%20-79%20-87%20-23%20-13%20-42%2020%20-54%2090%20-7%2037%20-20%20104%20-31%20148%20-21%2091%20-51%20224%20-74%20335%20-8%2041%20-24%20118%20-35%20170%20-11%2052%20-23%20113%20-26%20135%20-4%2022%20-22%20111%20-41%20197%20l-34%20157%200%201463%20c0%20805%203%201473%206%201486%204%2012%2010%2022%2014%2022%204%200%2014%20-10%2022%20-22z%20m-160%20-20%20c2%20-7%201%20-697%20-2%20-1533%20l-6%20-1520%20-22%20-95%20c-25%20-105%20-51%20-224%20-81%20-375%20-12%20-55%20-35%20-170%20-52%20-255%20-18%20-85%20-42%20-207%20-53%20-270%20-16%20-81%20-27%20-116%20-37%20-118%20-8%20-1%20-55%2041%20-104%2094%20-179%20191%20-366%20333%20-595%20450%20-117%2060%20-147%2073%20-212%2094%20-65%2020%20-65%2026%20-20%20163%2093%20278%20244%20721%20287%20842%2026%2072%2060%20171%2075%20220%2016%2050%2052%20153%2080%20230%2027%2077%2062%20176%2076%20220%2031%2093%2068%20203%20100%20295%20127%20368%20188%20545%20203%20595%2011%2033%2040%20119%2066%20190%2025%2072%2050%20144%2055%20160%2023%2089%20198%20586%20217%20618%207%2011%2020%208%2025%20-5z%20m97%20-3381%20c7%20-34%2020%20-98%2030%20-142%2010%20-44%2028%20-125%2039%20-180%2053%20-256%2065%20-313%2077%20-355%208%20-25%2016%20-67%2020%20-95%204%20-27%2013%20-77%2020%20-110%208%20-33%2023%20-105%2035%20-160%2012%20-55%2033%20-147%2047%20-204%2030%20-124%2026%20-146%20-25%20-161%20-107%20-32%20-487%20-30%20-549%203%20-39%2020%20-42%2035%20-26%20112%207%2033%2017%2085%2023%20115%206%2030%2020%2096%2031%20145%2060%20277%2069%20319%20129%20625%2073%20373%2090%20452%20102%20480%209%2023%2011%2024%2023%207%207%20-9%2018%20-45%2024%20-80z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

.pattern-layer {
    display: none !important;
}

.about::before,
.cta-card::before,
footer::before {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
    background-color: currentColor;
    -webkit-mask-image: var(--pattern-mark);
    mask-image: var(--pattern-mark);
    -webkit-mask-repeat: repeat;
    mask-repeat: repeat;
    -webkit-mask-position: 0 0;
    mask-position: 0 0;
    transform: rotate(-6deg);
    transform-origin: center;
}

/* Versão clara e muito sutil para fundo neutro */
.about::before {
    inset: -18% -10%;
    color: var(--indigo);
    opacity: .060;
    -webkit-mask-size: 245px auto;
    mask-size: 245px auto;
}

/* Versão com contraste maior no bloco escuro de contato */
.cta-card::before {
    inset: -24% -12%;
    color: var(--paper);
    opacity: .072;
    -webkit-mask-size: 225px auto;
    mask-size: 225px auto;
    transform: rotate(-7deg);
}

/* Rodapé: pattern monocromático em índigo, parcial nas bordas */
footer::before {
    inset: -34% -8% -24%;
    color: var(--indigo-deep);
    opacity: .058;
    -webkit-mask-size: 230px auto;
    mask-size: 230px auto;
    transform: rotate(-5deg);
}

.about-grid,
.cta-grid,
footer .foot-inner {
    position: relative;
    z-index: 1;
}

.cta-symbol {
    opacity: .025;
}

@media (max-width:980px) {
    .about::before {
        inset: -12% -18%;
        -webkit-mask-size: 220px auto;
        mask-size: 220px auto;
        opacity: .055;
    }

    .cta-card::before {
        inset: -18% -22%;
        -webkit-mask-size: 205px auto;
        mask-size: 205px auto;
        opacity: .068;
    }

    footer::before {
        inset: -22% -18%;
        -webkit-mask-size: 210px auto;
        mask-size: 210px auto;
        opacity: .052;
    }
}

@media (max-width:600px) {
    .about::before {
        inset: -8% -35%;
        -webkit-mask-size: 205px auto;
        mask-size: 205px auto;
        opacity: .050;
        transform: rotate(-5deg);
    }

    .cta-card::before {
        inset: -10% -40%;
        -webkit-mask-size: 195px auto;
        mask-size: 195px auto;
        opacity: .062;
    }

    footer::before {
        inset: -10% -38%;
        -webkit-mask-size: 205px auto;
        mask-size: 205px auto;
        opacity: .050;
    }
}


/* ===== CORREÇÃO ROBUSTA DO PATTERN: SVG COMO BACKGROUND ===== */
:root {
    --pattern-indigo: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%22330%20190%20354%20630%22%3E%3Cg%20transform%3D%22translate%280%2C1296%29%20scale%280.1%2C-0.1%29%22%20fill%3D%22%233B36A0%22%3E%3Cpath%20d%3D%22M5031%2010638%20c-5%20-13%20-26%20-75%20-47%20-138%20-20%20-63%20-55%20-162%20-76%20-220%20-22%20-58%20-46%20-125%20-53%20-150%20-8%20-25%20-41%20-124%20-75%20-220%20-33%20-96%20-78%20-227%20-100%20-290%20-22%20-63%20-58%20-167%20-80%20-230%20-73%20-207%20-171%20-494%20-179%20-530%20-5%20-19%20-30%20-93%20-55%20-165%20-48%20-133%20-174%20-497%20-206%20-595%20-10%20-30%20-39%20-113%20-65%20-185%20-25%20-71%20-79%20-229%20-120%20-350%20-41%20-121%20-113%20-332%20-160%20-470%20-48%20-137%20-93%20-270%20-100%20-295%20-7%20-25%20-30%20-87%20-49%20-138%20-20%20-51%20-36%20-103%20-36%20-116%200%20-31%2025%20-50%2085%20-66%2028%20-7%2067%20-21%2087%20-32%2021%20-10%2042%20-18%2049%20-18%2027%200%20244%20-118%20364%20-198%20139%20-93%20336%20-275%20390%20-362%2060%20-96%2087%20-161%2082%20-199%20-18%20-128%20-29%20-192%20-46%20-264%20-37%20-161%20-38%20-152%2012%20-181%2024%20-14%2055%20-26%2068%20-26%2013%200%2066%20-9%20118%20-20%20130%20-28%20300%20-27%20451%201%20119%2022%20220%2060%20220%2081%20-1%2015%20-7%2044%20-53%20254%20-29%20130%20-34%20168%20-26%20196%2026%2098%20231%20338%20384%20452%20214%20159%20373%20243%20602%20317%2061%2019%2092%2047%2078%2070%20-7%2011%20-162%20465%20-325%20949%20-54%20162%20-133%20394%20-175%20515%20-43%20121%20-85%20245%20-95%20275%20-9%2030%20-31%2091%20-47%20135%20-17%2044%20-53%20150%20-81%20235%20-28%2085%20-72%20214%20-97%20285%20-25%2072%20-68%20195%20-94%20275%20-27%2080%20-81%20237%20-120%20350%20-40%20113%20-87%20250%20-106%20305%20-67%20201%20-154%20453%20-195%20565%20-23%2063%20-49%20138%20-58%20165%20-13%2038%20-22%2051%20-39%2053%20-16%202%20-25%20-3%20-32%20-20z%20m121%20-530%20c8%20-13%2022%20-45%2031%20-73%2027%20-87%20171%20-507%20396%20-1160%2034%20-99%20104%20-304%20156%20-455%2051%20-151%20139%20-408%20194%20-570%2056%20-162%20110%20-320%20120%20-350%2010%20-30%2040%20-116%2066%20-190%2026%20-74%2051%20-148%2056%20-165%204%20-16%2028%20-88%2054%20-160%2025%20-71%2052%20-150%2059%20-175%208%20-25%2026%20-79%2040%20-120%2032%20-92%2032%20-107%204%20-115%20-48%20-15%20-256%20-109%20-323%20-147%20-213%20-119%20-401%20-268%20-521%20-414%20-36%20-43%20-72%20-82%20-79%20-87%20-23%20-13%20-42%2020%20-54%2090%20-7%2037%20-20%20104%20-31%20148%20-21%2091%20-51%20224%20-74%20335%20-8%2041%20-24%20118%20-35%20170%20-11%2052%20-23%20113%20-26%20135%20-4%2022%20-22%20111%20-41%20197%20l-34%20157%200%201463%20c0%20805%203%201473%206%201486%204%2012%2010%2022%2014%2022%204%200%2014%20-10%2022%20-22z%20m-160%20-20%20c2%20-7%201%20-697%20-2%20-1533%20l-6%20-1520%20-22%20-95%20c-25%20-105%20-51%20-224%20-81%20-375%20-12%20-55%20-35%20-170%20-52%20-255%20-18%20-85%20-42%20-207%20-53%20-270%20-16%20-81%20-27%20-116%20-37%20-118%20-8%20-1%20-55%2041%20-104%2094%20-179%20191%20-366%20333%20-595%20450%20-117%2060%20-147%2073%20-212%2094%20-65%2020%20-65%2026%20-20%20163%2093%20278%20244%20721%20287%20842%2026%2072%2060%20171%2075%20220%2016%2050%2052%20153%2080%20230%2027%2077%2062%20176%2076%20220%2031%2093%2068%20203%20100%20295%20127%20368%20188%20545%20203%20595%2011%2033%2040%20119%2066%20190%2025%2072%2050%20144%2055%20160%2023%2089%20198%20586%20217%20618%207%2011%2020%208%2025%20-5z%20m97%20-3381%20c7%20-34%2020%20-98%2030%20-142%2010%20-44%2028%20-125%2039%20-180%2053%20-256%2065%20-313%2077%20-355%208%20-25%2016%20-67%2020%20-95%204%20-27%2013%20-77%2020%20-110%208%20-33%2023%20-105%2035%20-160%2012%20-55%2033%20-147%2047%20-204%2030%20-124%2026%20-146%20-25%20-161%20-107%20-32%20-487%20-30%20-549%203%20-39%2020%20-42%2035%20-26%20112%207%2033%2017%2085%2023%20115%206%2030%2020%2096%2031%20145%2060%20277%2069%20319%20129%20625%2073%20373%2090%20452%20102%20480%209%2023%2011%2024%2023%207%207%20-9%2018%20-45%2024%20-80z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --pattern-white: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%22330%20190%20354%20630%22%3E%3Cg%20transform%3D%22translate%280%2C1296%29%20scale%280.1%2C-0.1%29%22%20fill%3D%22%23F7F5F0%22%3E%3Cpath%20d%3D%22M5031%2010638%20c-5%20-13%20-26%20-75%20-47%20-138%20-20%20-63%20-55%20-162%20-76%20-220%20-22%20-58%20-46%20-125%20-53%20-150%20-8%20-25%20-41%20-124%20-75%20-220%20-33%20-96%20-78%20-227%20-100%20-290%20-22%20-63%20-58%20-167%20-80%20-230%20-73%20-207%20-171%20-494%20-179%20-530%20-5%20-19%20-30%20-93%20-55%20-165%20-48%20-133%20-174%20-497%20-206%20-595%20-10%20-30%20-39%20-113%20-65%20-185%20-25%20-71%20-79%20-229%20-120%20-350%20-41%20-121%20-113%20-332%20-160%20-470%20-48%20-137%20-93%20-270%20-100%20-295%20-7%20-25%20-30%20-87%20-49%20-138%20-20%20-51%20-36%20-103%20-36%20-116%200%20-31%2025%20-50%2085%20-66%2028%20-7%2067%20-21%2087%20-32%2021%20-10%2042%20-18%2049%20-18%2027%200%20244%20-118%20364%20-198%20139%20-93%20336%20-275%20390%20-362%2060%20-96%2087%20-161%2082%20-199%20-18%20-128%20-29%20-192%20-46%20-264%20-37%20-161%20-38%20-152%2012%20-181%2024%20-14%2055%20-26%2068%20-26%2013%200%2066%20-9%20118%20-20%20130%20-28%20300%20-27%20451%201%20119%2022%20220%2060%20220%2081%20-1%2015%20-7%2044%20-53%20254%20-29%20130%20-34%20168%20-26%20196%2026%2098%20231%20338%20384%20452%20214%20159%20373%20243%20602%20317%2061%2019%2092%2047%2078%2070%20-7%2011%20-162%20465%20-325%20949%20-54%20162%20-133%20394%20-175%20515%20-43%20121%20-85%20245%20-95%20275%20-9%2030%20-31%2091%20-47%20135%20-17%2044%20-53%20150%20-81%20235%20-28%2085%20-72%20214%20-97%20285%20-25%2072%20-68%20195%20-94%20275%20-27%2080%20-81%20237%20-120%20350%20-40%20113%20-87%20250%20-106%20305%20-67%20201%20-154%20453%20-195%20565%20-23%2063%20-49%20138%20-58%20165%20-13%2038%20-22%2051%20-39%2053%20-16%202%20-25%20-3%20-32%20-20z%20m121%20-530%20c8%20-13%2022%20-45%2031%20-73%2027%20-87%20171%20-507%20396%20-1160%2034%20-99%20104%20-304%20156%20-455%2051%20-151%20139%20-408%20194%20-570%2056%20-162%20110%20-320%20120%20-350%2010%20-30%2040%20-116%2066%20-190%2026%20-74%2051%20-148%2056%20-165%204%20-16%2028%20-88%2054%20-160%2025%20-71%2052%20-150%2059%20-175%208%20-25%2026%20-79%2040%20-120%2032%20-92%2032%20-107%204%20-115%20-48%20-15%20-256%20-109%20-323%20-147%20-213%20-119%20-401%20-268%20-521%20-414%20-36%20-43%20-72%20-82%20-79%20-87%20-23%20-13%20-42%2020%20-54%2090%20-7%2037%20-20%20104%20-31%20148%20-21%2091%20-51%20224%20-74%20335%20-8%2041%20-24%20118%20-35%20170%20-11%2052%20-23%20113%20-26%20135%20-4%2022%20-22%20111%20-41%20197%20l-34%20157%200%201463%20c0%20805%203%201473%206%201486%204%2012%2010%2022%2014%2022%204%200%2014%20-10%2022%20-22z%20m-160%20-20%20c2%20-7%201%20-697%20-2%20-1533%20l-6%20-1520%20-22%20-95%20c-25%20-105%20-51%20-224%20-81%20-375%20-12%20-55%20-35%20-170%20-52%20-255%20-18%20-85%20-42%20-207%20-53%20-270%20-16%20-81%20-27%20-116%20-37%20-118%20-8%20-1%20-55%2041%20-104%2094%20-179%20191%20-366%20333%20-595%20450%20-117%2060%20-147%2073%20-212%2094%20-65%2020%20-65%2026%20-20%20163%2093%20278%20244%20721%20287%20842%2026%2072%2060%20171%2075%20220%2016%2050%2052%20153%2080%20230%2027%2077%2062%20176%2076%20220%2031%2093%2068%20203%20100%20295%20127%20368%20188%20545%20203%20595%2011%2033%2040%20119%2066%20190%2025%2072%2050%20144%2055%20160%2023%2089%20198%20586%20217%20618%207%2011%2020%208%2025%20-5z%20m97%20-3381%20c7%20-34%2020%20-98%2030%20-142%2010%20-44%2028%20-125%2039%20-180%2053%20-256%2065%20-313%2077%20-355%208%20-25%2016%20-67%2020%20-95%204%20-27%2013%20-77%2020%20-110%208%20-33%2023%20-105%2035%20-160%2012%20-55%2033%20-147%2047%20-204%2030%20-124%2026%20-146%20-25%20-161%20-107%20-32%20-487%20-30%20-549%203%20-39%2020%20-42%2035%20-26%20112%207%2033%2017%2085%2023%20115%206%2030%2020%2096%2031%20145%2060%20277%2069%20319%20129%20625%2073%20373%2090%20452%20102%20480%209%2023%2011%2024%2023%207%207%20-9%2018%20-45%2024%20-80z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --pattern-deep: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%22330%20190%20354%20630%22%3E%3Cg%20transform%3D%22translate%280%2C1296%29%20scale%280.1%2C-0.1%29%22%20fill%3D%22%2326205F%22%3E%3Cpath%20d%3D%22M5031%2010638%20c-5%20-13%20-26%20-75%20-47%20-138%20-20%20-63%20-55%20-162%20-76%20-220%20-22%20-58%20-46%20-125%20-53%20-150%20-8%20-25%20-41%20-124%20-75%20-220%20-33%20-96%20-78%20-227%20-100%20-290%20-22%20-63%20-58%20-167%20-80%20-230%20-73%20-207%20-171%20-494%20-179%20-530%20-5%20-19%20-30%20-93%20-55%20-165%20-48%20-133%20-174%20-497%20-206%20-595%20-10%20-30%20-39%20-113%20-65%20-185%20-25%20-71%20-79%20-229%20-120%20-350%20-41%20-121%20-113%20-332%20-160%20-470%20-48%20-137%20-93%20-270%20-100%20-295%20-7%20-25%20-30%20-87%20-49%20-138%20-20%20-51%20-36%20-103%20-36%20-116%200%20-31%2025%20-50%2085%20-66%2028%20-7%2067%20-21%2087%20-32%2021%20-10%2042%20-18%2049%20-18%2027%200%20244%20-118%20364%20-198%20139%20-93%20336%20-275%20390%20-362%2060%20-96%2087%20-161%2082%20-199%20-18%20-128%20-29%20-192%20-46%20-264%20-37%20-161%20-38%20-152%2012%20-181%2024%20-14%2055%20-26%2068%20-26%2013%200%2066%20-9%20118%20-20%20130%20-28%20300%20-27%20451%201%20119%2022%20220%2060%20220%2081%20-1%2015%20-7%2044%20-53%20254%20-29%20130%20-34%20168%20-26%20196%2026%2098%20231%20338%20384%20452%20214%20159%20373%20243%20602%20317%2061%2019%2092%2047%2078%2070%20-7%2011%20-162%20465%20-325%20949%20-54%20162%20-133%20394%20-175%20515%20-43%20121%20-85%20245%20-95%20275%20-9%2030%20-31%2091%20-47%20135%20-17%2044%20-53%20150%20-81%20235%20-28%2085%20-72%20214%20-97%20285%20-25%2072%20-68%20195%20-94%20275%20-27%2080%20-81%20237%20-120%20350%20-40%20113%20-87%20250%20-106%20305%20-67%20201%20-154%20453%20-195%20565%20-23%2063%20-49%20138%20-58%20165%20-13%2038%20-22%2051%20-39%2053%20-16%202%20-25%20-3%20-32%20-20z%20m121%20-530%20c8%20-13%2022%20-45%2031%20-73%2027%20-87%20171%20-507%20396%20-1160%2034%20-99%20104%20-304%20156%20-455%2051%20-151%20139%20-408%20194%20-570%2056%20-162%20110%20-320%20120%20-350%2010%20-30%2040%20-116%2066%20-190%2026%20-74%2051%20-148%2056%20-165%204%20-16%2028%20-88%2054%20-160%2025%20-71%2052%20-150%2059%20-175%208%20-25%2026%20-79%2040%20-120%2032%20-92%2032%20-107%204%20-115%20-48%20-15%20-256%20-109%20-323%20-147%20-213%20-119%20-401%20-268%20-521%20-414%20-36%20-43%20-72%20-82%20-79%20-87%20-23%20-13%20-42%2020%20-54%2090%20-7%2037%20-20%20104%20-31%20148%20-21%2091%20-51%20224%20-74%20335%20-8%2041%20-24%20118%20-35%20170%20-11%2052%20-23%20113%20-26%20135%20-4%2022%20-22%20111%20-41%20197%20l-34%20157%200%201463%20c0%20805%203%201473%206%201486%204%2012%2010%2022%2014%2022%204%200%2014%20-10%2022%20-22z%20m-160%20-20%20c2%20-7%201%20-697%20-2%20-1533%20l-6%20-1520%20-22%20-95%20c-25%20-105%20-51%20-224%20-81%20-375%20-12%20-55%20-35%20-170%20-52%20-255%20-18%20-85%20-42%20-207%20-53%20-270%20-16%20-81%20-27%20-116%20-37%20-118%20-8%20-1%20-55%2041%20-104%2094%20-179%20191%20-366%20333%20-595%20450%20-117%2060%20-147%2073%20-212%2094%20-65%2020%20-65%2026%20-20%20163%2093%20278%20244%20721%20287%20842%2026%2072%2060%20171%2075%20220%2016%2050%2052%20153%2080%20230%2027%2077%2062%20176%2076%20220%2031%2093%2068%20203%20100%20295%20127%20368%20188%20545%20203%20595%2011%2033%2040%20119%2066%20190%2025%2072%2050%20144%2055%20160%2023%2089%20198%20586%20217%20618%207%2011%2020%208%2025%20-5z%20m97%20-3381%20c7%20-34%2020%20-98%2030%20-142%2010%20-44%2028%20-125%2039%20-180%2053%20-256%2065%20-313%2077%20-355%208%20-25%2016%20-67%2020%20-95%204%20-27%2013%20-77%2020%20-110%208%20-33%2023%20-105%2035%20-160%2012%20-55%2033%20-147%2047%20-204%2030%20-124%2026%20-146%20-25%20-161%20-107%20-32%20-487%20-30%20-549%203%20-39%2020%20-42%2035%20-26%20112%207%2033%2017%2085%2023%20115%206%2030%2020%2096%2031%20145%2060%20277%2069%20319%20129%20625%2073%20373%2090%20452%20102%20480%209%2023%2011%2024%2023%207%207%20-9%2018%20-45%2024%20-80z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

.about::before,
.cta-card::before,
footer::before {
    -webkit-mask-image: none !important;
    mask-image: none !important;
    background-color: transparent !important;
    background-repeat: repeat !important;
    background-position: 0 0 !important;
}

.about::before {
    background-image: var(--pattern-indigo) !important;
    background-size: 245px auto !important;
    opacity: .065 !important;
}

.cta-card::before {
    background-image: var(--pattern-white) !important;
    background-size: 225px auto !important;
    opacity: .080 !important;
}

footer::before {
    background-image: var(--pattern-deep) !important;
    background-size: 230px auto !important;
    opacity: .064 !important;
}

@media(max-width:980px) {
    .about::before {
        background-size: 220px auto !important;
        opacity: .060 !important;
    }

    .cta-card::before {
        background-size: 205px auto !important;
        opacity: .074 !important;
    }

    footer::before {
        background-size: 210px auto !important;
        opacity: .058 !important;
    }
}

@media(max-width:600px) {
    .about::before {
        background-size: 205px auto !important;
        opacity: .055 !important;
    }

    .cta-card::before {
        background-size: 195px auto !important;
        opacity: .068 !important;
    }

    footer::before {
        background-size: 205px auto !important;
        opacity: .055 !important;
    }
}



/* ===== CAMPO ORGÂNICO ANTHROPIA — SISTEMA VISUAL UNIFICADO ===== */
/* Neutraliza integralmente aplicações decorativas anteriores. */
.hero-mark,
.brand-symbol-stage,
.brand-symbol-large,
.logo-field,
.pattern-layer,
.cta-symbol,
.investigation-line,
.field-marks {
    display: none !important;
}

.about::before,
.cta-card::before,
footer::before,
.brand-statement::after {
    content: none !important;
    display: none !important;
}

.hero,
.brand-statement,
.cta-card {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.hero-grid,
.brand-statement-inner,
.cta-grid {
    position: relative;
    z-index: 2;
}

.anthropia-organic-field {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
    user-select: none;
}

.anthropia-organic-mark {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: var(--w);
    aspect-ratio: 354/630;
    color: inherit;
    background: currentColor;
    opacity: var(--o);
    filter: blur(var(--b));
    transform: translate(-50%, -50%) rotate(var(--r));
    transform-origin: center;
    -webkit-mask-image: var(--pattern-mark);
    mask-image: var(--pattern-mark);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
}

.anthropia-organic-mark.fragment-top {
    clip-path: polygon(0 0, 100% 0, 100% 61%, 0 48%);
}

.anthropia-organic-mark.fragment-bottom {
    clip-path: polygon(0 54%, 100% 42%, 100% 100%, 0 100%);
}

.anthropia-organic-mark.fragment-side {
    clip-path: polygon(0 0, 60% 0, 45% 100%, 0 100%);
}

.anthropia-organic-mark.is-accent {
    color: var(--coral-soft);
}

/* Hero: concentração à direita, desaparecendo antes da área de leitura. */
.hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: radial-gradient(ellipse at 83% 48%, rgba(59, 54, 160, .105), rgba(59, 54, 160, .032) 34%, transparent 69%);
}

.field-hero {
    color: var(--indigo);
    width: 66%;
    left: auto;
    right: -4%;
    -webkit-mask-image: radial-gradient(ellipse at 72% 50%, #000 0 44%, rgba(0, 0, 0, .82) 58%, transparent 82%);
    mask-image: radial-gradient(ellipse at 72% 50%, #000 0 44%, rgba(0, 0, 0, .82) 58%, transparent 82%);
}

/* Faixa institucional: composição mais densa, sem mostrar uma logo isolada. */
.brand-statement {
    min-height: 350px;
    padding: 78px 0;
    background:
        radial-gradient(circle at 88% 32%, rgba(89, 83, 187, .24), transparent 36%),
        linear-gradient(135deg, var(--indigo-deep), #151528 72%);
}

.brand-statement-inner {
    min-height: 194px;
    display: flex;
    align-items: center;
}

.brand-statement-copy {
    max-width: 680px;
    padding-right: 24px;
}

.field-statement {
    color: rgba(247, 245, 240, .96);
    width: 68%;
    left: auto;
    right: -7%;
    mix-blend-mode: screen;
    -webkit-mask-image: radial-gradient(ellipse at 76% 52%, #000 0 43%, rgba(0, 0, 0, .85) 60%, transparent 86%);
    mask-image: radial-gradient(ellipse at 76% 52%, #000 0 43%, rgba(0, 0, 0, .85) 60%, transparent 86%);
}

.brand-kicker {
    color: rgba(247, 245, 240, .64);
}

.brand-statement p {
    max-width: 23ch;
}

/* Contato: campo lateral menor para não competir com formulário e CTA. */
.cta-card {
    background:
        radial-gradient(circle at 91% 18%, rgba(59, 54, 160, .28), transparent 35%),
        var(--ink);
}

.field-cta {
    color: rgba(247, 245, 240, .94);
    width: 55%;
    left: auto;
    right: -9%;
    mix-blend-mode: screen;
    -webkit-mask-image: radial-gradient(ellipse at 78% 50%, #000 0 42%, rgba(0, 0, 0, .78) 60%, transparent 86%);
    mask-image: radial-gradient(ellipse at 78% 50%, #000 0 42%, rgba(0, 0, 0, .78) 60%, transparent 86%);
}

/* Rodapé deliberadamente limpo: somente a marca institucional. */
footer {
    background: linear-gradient(180deg, var(--paper), #F1EEE7);
}

@media (max-width:980px) {
    .field-hero {
        width: 78%;
        right: -18%;
        opacity: .82;
    }

    .field-statement {
        width: 76%;
        right: -19%;
        opacity: .80;
    }

    .field-cta {
        width: 64%;
        right: -19%;
        opacity: .76;
    }

    .brand-statement {
        min-height: 320px;
        padding: 68px 0;
    }

    .brand-statement-copy {
        max-width: 610px;
    }
}

@media (max-width:600px) {
    .anthropia-organic-mark:nth-child(n+8) {
        display: none;
    }

    .hero::after {
        background: radial-gradient(ellipse at 92% 27%, rgba(59, 54, 160, .075), transparent 58%);
    }

    .field-hero {
        width: 104%;
        right: -48%;
        top: -4%;
        height: 74%;
        opacity: .62;
        -webkit-mask-image: radial-gradient(ellipse at 78% 35%, #000 0 37%, rgba(0, 0, 0, .64) 56%, transparent 78%);
        mask-image: radial-gradient(ellipse at 78% 35%, #000 0 37%, rgba(0, 0, 0, .64) 56%, transparent 78%);
    }

    .brand-statement {
        min-height: 300px;
        padding: 62px 0;
    }

    .brand-statement-inner {
        min-height: 176px;
        align-items: flex-end;
    }

    .brand-statement-copy {
        max-width: 100%;
        padding-right: 0;
    }

    .brand-statement p {
        max-width: 18ch;
    }

    .field-statement {
        width: 120%;
        height: 82%;
        right: -57%;
        top: -5%;
        opacity: .58;
        -webkit-mask-image: radial-gradient(ellipse at 78% 28%, #000 0 38%, rgba(0, 0, 0, .62) 56%, transparent 80%);
        mask-image: radial-gradient(ellipse at 78% 28%, #000 0 38%, rgba(0, 0, 0, .62) 56%, transparent 80%);
    }

    .field-cta {
        width: 112%;
        height: 72%;
        right: -58%;
        top: -5%;
        opacity: .50;
        -webkit-mask-image: radial-gradient(ellipse at 82% 25%, #000 0 36%, rgba(0, 0, 0, .58) 54%, transparent 78%);
        mask-image: radial-gradient(ellipse at 82% 25%, #000 0 36%, rgba(0, 0, 0, .58) 54%, transparent 78%);
    }
}



/* ===== FOTOGRAFIA EDITORIAL INTEGRADA ===== */
.anthropia-photo {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    border: 1px solid rgba(59, 54, 160, .13);
    background: var(--ink);
    box-shadow: 0 20px 55px rgba(20, 22, 26, .09);
    isolation: isolate;
}

.anthropia-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(.86) contrast(1.01);
    transition: transform .7s cubic-bezier(.2, .7, .2, 1), filter .35s ease;
}

.anthropia-photo::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

@media (hover:hover) and (pointer:fine) {
    .anthropia-photo:hover img {
        transform: scale(1.018);
        filter: saturate(.92) contrast(1.02);
    }
}

.method-visual {
    margin: 34px 0 48px;
    aspect-ratio: 16/6.15;
}

.method-visual img {
    object-position: center 45%;
}

.method-visual::after {
    background:
        linear-gradient(90deg, rgba(247, 245, 240, .04), transparent 42%, rgba(59, 54, 160, .09)),
        linear-gradient(180deg, transparent 60%, rgba(20, 22, 26, .12));
}

.areas-visual {
    margin-top: 38px;
    aspect-ratio: 16/6.4;
    border-color: rgba(247, 245, 240, .16);
    box-shadow: none;
}

.areas-visual img {
    object-position: center 43%;
    filter: saturate(.78) contrast(1.04) brightness(.91);
}

.areas-visual::after {
    background:
        linear-gradient(90deg, rgba(20, 22, 26, .40) 0%, rgba(20, 22, 26, .05) 30%, rgba(20, 22, 26, .04) 68%, rgba(20, 22, 26, .30) 100%),
        linear-gradient(180deg, rgba(20, 22, 26, .05), rgba(20, 22, 26, .28));
}

.case-visual {
    margin: 30px 0 38px;
    aspect-ratio: 16/6.5;
    border-color: rgba(59, 54, 160, .12);
    box-shadow: 0 18px 45px rgba(20, 22, 26, .075);
}

.case-visual img {
    object-position: center 52%;
    filter: saturate(.82) contrast(1.02);
}

.case-visual::after {
    background:
        linear-gradient(90deg, rgba(38, 32, 95, .10), transparent 42%, rgba(194, 61, 34, .055)),
        linear-gradient(180deg, transparent 62%, rgba(20, 22, 26, .12));
}

@media (max-width:980px) {

    .method-visual,
    .areas-visual,
    .case-visual {
        aspect-ratio: 16/8;
    }
}

@media (max-width:600px) {
    .anthropia-photo {
        border-radius: 18px;
        box-shadow: 0 14px 34px rgba(20, 22, 26, .075);
    }

    .method-visual {
        margin: 26px 0 34px;
        aspect-ratio: 4/3;
    }

    .method-visual img {
        object-position: 53% center;
    }

    .areas-visual {
        margin-top: 28px;
        aspect-ratio: 4/3;
        box-shadow: none;
    }

    .areas-visual img {
        object-position: 51% center;
    }

    .case-visual {
        margin: 24px 0 30px;
        aspect-ratio: 4/3;
    }

    .case-visual img {
        object-position: 58% center;
    }
}



/* Composição visual: território + execução técnica */
.areas-photo-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(250px, .75fr);
    gap: 18px;
    margin-top: 38px;
}

.areas-photo-grid .areas-visual,
.areas-photo-grid .areas-detail-visual {
    margin-top: 0;
    height: 360px;
    aspect-ratio: auto;
}

.areas-detail-visual {
    border-color: rgba(247, 245, 240, .16);
    box-shadow: none;
}

.areas-detail-visual img {
    object-position: center center;
    filter: saturate(.78) contrast(1.04) brightness(.93);
}

.areas-detail-visual::after {
    background:
        linear-gradient(180deg, rgba(20, 22, 26, .03), rgba(20, 22, 26, .22)),
        linear-gradient(90deg, rgba(59, 54, 160, .04), rgba(20, 22, 26, .12));
}

@media (max-width:980px) {
    .areas-photo-grid {
        grid-template-columns: 1.25fr .75fr;
    }

    .areas-photo-grid .areas-visual,
    .areas-photo-grid .areas-detail-visual {
        height: 310px;
    }
}

@media (max-width:700px) {
    .areas-photo-grid {
        grid-template-columns: 1fr;
        gap: 14px;
        margin-top: 28px;
    }

    .areas-photo-grid .areas-visual,
    .areas-photo-grid .areas-detail-visual {
        height: auto;
        aspect-ratio: 4/3;
    }

    .areas-detail-visual img {
        object-position: center center;
    }
}

/* ===== NOVA APLICAÇÃO DA LOGO — PADRÃO 5 / DEGRADÊ QUE REVELA A LOGO ===== */
:root {
    --reveal-mark-indigo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='330 190 354 630'%3E%3Cg transform='translate(0,1296) scale(0.1,-0.1)' fill='none' stroke='%233B36A0' stroke-width='52' stroke-linejoin='round'%3E%3Cpath d='M5031 10638 c-5 -13 -26 -75 -47 -138 -20 -63 -55 -162 -76 -220 -22 -58 -46 -125 -53 -150 -8 -25 -41 -124 -75 -220 -33 -96 -78 -227 -100 -290 -22 -63 -58 -167 -80 -230 -73 -207 -171 -494 -179 -530 -5 -19 -30 -93 -55 -165 -48 -133 -174 -497 -206 -595 -10 -30 -39 -113 -65 -185 -25 -71 -79 -229 -120 -350 -41 -121 -113 -332 -160 -470 -48 -137 -93 -270 -100 -295 -7 -25 -30 -87 -49 -138 -20 -51 -36 -103 -36 -116 0 -31 25 -50 85 -66 28 -7 67 -21 87 -32 21 -10 42 -18 49 -18 27 0 244 -118 364 -198 139 -93 336 -275 390 -362 60 -96 87 -161 82 -199 -18 -128 -29 -192 -46 -264 -37 -161 -38 -152 12 -181 24 -14 55 -26 68 -26 13 0 66 -9 118 -20 130 -28 300 -27 451 1 119 22 220 60 220 81 -1 15 -7 44 -53 254 -29 130 -34 168 -26 196 26 98 231 338 384 452 214 159 373 243 602 317 61 19 92 47 78 70 -7 11 -162 465 -325 949 -54 162 -133 394 -175 515 -43 121 -85 245 -95 275 -9 30 -31 91 -47 135 -17 44 -53 150 -81 235 -28 85 -72 214 -97 285 -25 72 -68 195 -94 275 -27 80 -81 237 -120 350 -40 113 -87 250 -106 305 -67 201 -154 453 -195 565 -23 63 -49 138 -58 165 -13 38 -22 51 -39 53 -16 2 -25 -3 -32 -20z m121 -530 c8 -13 22 -45 31 -73 27 -87 171 -507 396 -1160 34 -99 104 -304 156 -455 51 -151 139 -408 194 -570 56 -162 110 -320 120 -350 10 -30 40 -116 66 -190 26 -74 51 -148 56 -165 4 -16 28 -88 54 -160 25 -71 52 -150 59 -175 8 -25 26 -79 40 -120 32 -92 32 -107 4 -115 -48 -15 -256 -109 -323 -147 -213 -119 -401 -268 -521 -414 -36 -43 -72 -82 -79 -87 -23 -13 -42 20 -54 90 -7 37 -20 104 -31 148 -21 91 -51 224 -74 335 -8 41 -24 118 -35 170 -11 52 -23 113 -26 135 -4 22 -22 111 -41 197 l-34 157 0 1463 c0 805 3 1473 6 1486 4 12 10 22 14 22 4 0 14 -10 22 -22z m-160 -20 c2 -7 1 -697 -2 -1533 l-6 -1520 -22 -95 c-25 -105 -51 -224 -81 -375 -12 -55 -35 -170 -52 -255 -18 -85 -42 -207 -53 -270 -16 -81 -27 -116 -37 -118 -8 -1 -55 41 -104 94 -179 191 -366 333 -595 450 -117 60 -147 73 -212 94 -65 20 -65 26 -20 163 93 278 244 721 287 842 26 72 60 171 75 220 16 50 52 153 80 230 27 77 62 176 76 220 31 93 68 203 100 295 127 368 188 545 203 595 11 33 40 119 66 190 25 72 50 144 55 160 23 89 198 586 217 618 7 11 20 8 25 -5z m97 -3381 c7 -34 20 -98 30 -142 10 -44 28 -125 39 -180 53 -256 65 -313 77 -355 8 -25 16 -67 20 -95 4 -27 13 -77 20 -110 8 -33 23 -105 35 -160 12 -55 33 -147 47 -204 30 -124 26 -146 -25 -161 -107 -32 -487 -30 -549 3 -39 20 -42 35 -26 112 7 33 17 85 23 115 6 30 20 96 31 145 60 277 69 319 129 625 73 373 90 452 102 480 9 23 11 24 23 7 7 -9 18 -45 24 -80z'/%3E%3C/g%3E%3C/svg%3E");
    --reveal-mark-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='330 190 354 630'%3E%3Cg transform='translate(0,1296) scale(0.1,-0.1)' fill='none' stroke='%23F3EBDD' stroke-width='52' stroke-linejoin='round'%3E%3Cpath d='M5031 10638 c-5 -13 -26 -75 -47 -138 -20 -63 -55 -162 -76 -220 -22 -58 -46 -125 -53 -150 -8 -25 -41 -124 -75 -220 -33 -96 -78 -227 -100 -290 -22 -63 -58 -167 -80 -230 -73 -207 -171 -494 -179 -530 -5 -19 -30 -93 -55 -165 -48 -133 -174 -497 -206 -595 -10 -30 -39 -113 -65 -185 -25 -71 -79 -229 -120 -350 -41 -121 -113 -332 -160 -470 -48 -137 -93 -270 -100 -295 -7 -25 -30 -87 -49 -138 -20 -51 -36 -103 -36 -116 0 -31 25 -50 85 -66 28 -7 67 -21 87 -32 21 -10 42 -18 49 -18 27 0 244 -118 364 -198 139 -93 336 -275 390 -362 60 -96 87 -161 82 -199 -18 -128 -29 -192 -46 -264 -37 -161 -38 -152 12 -181 24 -14 55 -26 68 -26 13 0 66 -9 118 -20 130 -28 300 -27 451 1 119 22 220 60 220 81 -1 15 -7 44 -53 254 -29 130 -34 168 -26 196 26 98 231 338 384 452 214 159 373 243 602 317 61 19 92 47 78 70 -7 11 -162 465 -325 949 -54 162 -133 394 -175 515 -43 121 -85 245 -95 275 -9 30 -31 91 -47 135 -17 44 -53 150 -81 235 -28 85 -72 214 -97 285 -25 72 -68 195 -94 275 -27 80 -81 237 -120 350 -40 113 -87 250 -106 305 -67 201 -154 453 -195 565 -23 63 -49 138 -58 165 -13 38 -22 51 -39 53 -16 2 -25 -3 -32 -20z m121 -530 c8 -13 22 -45 31 -73 27 -87 171 -507 396 -1160 34 -99 104 -304 156 -455 51 -151 139 -408 194 -570 56 -162 110 -320 120 -350 10 -30 40 -116 66 -190 26 -74 51 -148 56 -165 4 -16 28 -88 54 -160 25 -71 52 -150 59 -175 8 -25 26 -79 40 -120 32 -92 32 -107 4 -115 -48 -15 -256 -109 -323 -147 -213 -119 -401 -268 -521 -414 -36 -43 -72 -82 -79 -87 -23 -13 -42 20 -54 90 -7 37 -20 104 -31 148 -21 91 -51 224 -74 335 -8 41 -24 118 -35 170 -11 52 -23 113 -26 135 -4 22 -22 111 -41 197 l-34 157 0 1463 c0 805 3 1473 6 1486 4 12 10 22 14 22 4 0 14 -10 22 -22z m-160 -20 c2 -7 1 -697 -2 -1533 l-6 -1520 -22 -95 c-25 -105 -51 -224 -81 -375 -12 -55 -35 -170 -52 -255 -18 -85 -42 -207 -53 -270 -16 -81 -27 -116 -37 -118 -8 -1 -55 41 -104 94 -179 191 -366 333 -595 450 -117 60 -147 73 -212 94 -65 20 -65 26 -20 163 93 278 244 721 287 842 26 72 60 171 75 220 16 50 52 153 80 230 27 77 62 176 76 220 31 93 68 203 100 295 127 368 188 545 203 595 11 33 40 119 66 190 25 72 50 144 55 160 23 89 198 586 217 618 7 11 20 8 25 -5z m97 -3381 c7 -34 20 -98 30 -142 10 -44 28 -125 39 -180 53 -256 65 -313 77 -355 8 -25 16 -67 20 -95 4 -27 13 -77 20 -110 8 -33 23 -105 35 -160 12 -55 33 -147 47 -204 30 -124 26 -146 -25 -161 -107 -32 -487 -30 -549 3 -39 20 -42 35 -26 112 7 33 17 85 23 115 6 30 20 96 31 145 60 277 69 319 129 625 73 373 90 452 102 480 9 23 11 24 23 7 7 -9 18 -45 24 -80z'/%3E%3C/g%3E%3C/svg%3E");
}

/* limpa artes anteriores da logo fora do cabeçalho e do rodapé */
.hero-mark,
.brand-symbol-stage,
.brand-symbol-large,
.logo-field,
.pattern-layer,
.cta-symbol,
.investigation-line,
.field-marks,
.anthropia-organic-field {
    display: none !important;
}

.hero,
.brand-statement,
.cta-card {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.hero>*,
.brand-statement>*,
.cta-card>* {
    position: relative;
    z-index: 1;
}

/* Hero claro: grande marca d'água com campo repetido revelado por degradê */
.hero::before,
.hero::after,
.brand-statement::before,
.brand-statement::after,
.cta-card::before,
.cta-card::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
    background-repeat: no-repeat;
}

.hero::before {
    inset: 0 0 0 44%;
    background-image: var(--reveal-mark-indigo);
    background-repeat: repeat;
    background-size: clamp(74px, 7vw, 104px) auto;
    opacity: .14;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .10) 8%, rgba(0, 0, 0, .36) 28%, rgba(0, 0, 0, .92) 70%, rgba(0, 0, 0, 0) 100%);
    mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .10) 8%, rgba(0, 0, 0, .36) 28%, rgba(0, 0, 0, .92) 70%, rgba(0, 0, 0, 0) 100%);
}

.hero::after {
    right: clamp(8px, 3vw, 36px);
    top: 50%;
    width: clamp(118px, 18vw, 208px);
    aspect-ratio: 354 / 630;
    transform: translateY(-50%);
    background-image: var(--reveal-mark-indigo);
    background-position: center;
    background-size: contain;
    opacity: .24;
    filter: drop-shadow(0 18px 34px rgba(59, 54, 160, .08));
}

/* Faixa institucional escura: logo maior à esquerda e repetição que desaparece */
.brand-statement::before {
    inset: 0 38% 0 0;
    background-image: var(--reveal-mark-light);
    background-repeat: repeat;
    background-size: clamp(76px, 7vw, 114px) auto;
    opacity: .20;
    -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, .96) 22%, rgba(0, 0, 0, .68) 56%, transparent 100%);
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, .96) 22%, rgba(0, 0, 0, .68) 56%, transparent 100%);
}

.brand-statement::after {
    left: clamp(12px, 3vw, 44px);
    top: 50%;
    width: clamp(112px, 12vw, 162px);
    aspect-ratio: 354 / 630;
    transform: translateY(-50%);
    background-image: var(--reveal-mark-light);
    background-position: center;
    background-size: contain;
    opacity: .44;
}

/* CTA: repetição mais suave no lado direito, seguindo a mesma lógica */
.cta-card::before {
    inset: 0 0 0 54%;
    background-image: var(--reveal-mark-light);
    background-repeat: repeat;
    background-size: clamp(72px, 6vw, 98px) auto;
    opacity: .16;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .12) 10%, rgba(0, 0, 0, .42) 34%, rgba(0, 0, 0, .92) 72%, rgba(0, 0, 0, .15) 100%);
    mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .12) 10%, rgba(0, 0, 0, .42) 34%, rgba(0, 0, 0, .92) 72%, rgba(0, 0, 0, .15) 100%);
}

.cta-card::after {
    right: clamp(10px, 2.6vw, 32px);
    top: 50%;
    width: clamp(104px, 10vw, 146px);
    aspect-ratio: 354 / 630;
    transform: translateY(-50%);
    background-image: var(--reveal-mark-light);
    background-position: center;
    background-size: contain;
    opacity: .30;
}

@media (max-width: 980px) {
    .hero::before {
        inset: 36% -2% -4% 26%;
        opacity: .11;
    }

    .hero::after {
        width: 134px;
        right: -8px;
        top: 64%;
        opacity: .18;
    }

    .brand-statement::before {
        inset: 0 12% 0 0;
        background-size: 88px auto;
        opacity: .17;
    }

    .brand-statement::after {
        left: -6px;
        width: 112px;
        opacity: .34;
    }

    .cta-card::before {
        inset: 44% 0 -4% 18%;
        background-size: 82px auto;
        opacity: .13;
    }

    .cta-card::after {
        width: 102px;
        right: -10px;
        top: 72%;
        opacity: .22;
    }
}

@media (max-width: 700px) {
    .hero::before {
        inset: 52% -12% -6% 14%;
        background-size: 68px auto;
        opacity: .09;
    }

    .hero::after {
        width: 92px;
        right: -12px;
        top: 70%;
        opacity: .13;
    }

    .brand-statement::before {
        inset: 0 0 0 0;
        background-size: 72px auto;
        opacity: .12;
        -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, .92) 0%, rgba(0, 0, 0, .48) 46%, transparent 100%);
        mask-image: linear-gradient(90deg, rgba(0, 0, 0, .92) 0%, rgba(0, 0, 0, .48) 46%, transparent 100%);
    }

    .brand-statement::after {
        width: 84px;
        left: -14px;
        opacity: .22;
    }

    .cta-card::before {
        inset: 58% -6% -6% 8%;
        background-size: 72px auto;
        opacity: .11;
    }

    .cta-card::after {
        width: 82px;
        right: -12px;
        top: 76%;
        opacity: .18;
    }
}


/* Remove somente a marca grande isolada do hero */
.hero::after {
    display: none !important;
}


/* Remoção definitiva de qualquer símbolo decorativo no hero */
.hero::before,
.hero::after {
    content: none !important;
    display: none !important;
    background: none !important;
    background-image: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    opacity: 0 !important;
}

.hero .hero-mark,
.hero .anthropia-organic-field,
.hero .pattern-layer,
.hero .logo-field {
    display: none !important;
}


.method-output {
    margin-top: 42px;
}

.method-output-visual {
    aspect-ratio: 16/9;
    margin: 0;
}

.method-output-visual img {
    object-position: center center;
    filter: saturate(.88) contrast(1.025);
}

.method-output-caption {
    margin-top: 14px;
    font-size: 14px;
    color: var(--grey);
    line-height: 1.6;
    max-width: 76ch;
}

.method-output-caption strong {
    color: var(--ink);
    font-weight: 600;
}

@media (max-width:600px) {
    .method-output {
        margin-top: 30px;
    }

    .method-output-visual {
        aspect-ratio: 4/3;
    }

    .method-output-visual img {
        object-position: 42% center;
    }
}


/* ===== REVISÃO FINAL DE DESIGN: ritmo, legibilidade e hero compacto ===== */
.hero {
    padding-top: 28px;
    padding-bottom: 72px;
}

.hero h1 {
    max-width: 14ch;
}

.hero-sub {
    max-width: 52ch;
}

/* Soluções em linguagem editorial, reduzindo a repetição visual de cards */
.profiles .p-grid {
    gap: 0;
    background: transparent;
    border-top: 1px solid var(--line);
}

.profiles .p-card {
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 30px 28px 30px 0;
    border-bottom: 1px solid var(--line);
    position: relative;
}

.profiles .p-card:nth-child(odd) {
    padding-right: 36px;
}

.profiles .p-card:nth-child(even) {
    padding-left: 36px;
    border-left: 1px solid var(--line);
}

.profiles .p-swatch {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-bottom: 16px;
}

.profiles .p-card h3 {
    font-size: 20px;
}

/* Formatos como faixa comparativa, não como novos cards */
.formats-grid {
    border-radius: 0;
    background: transparent;
    border: 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    gap: 0;
}

.format-item {
    border-radius: 0;
    background: transparent;
    padding: 26px 22px;
    border-right: 1px solid var(--line);
}

.format-item:last-child {
    border-right: 0;
}

/* Maior contraste na área escura */
.areas-head p {
    color: rgba(247, 245, 240, .82);
    line-height: 1.72;
}

.area-item p {
    font-size: 16.5px;
    color: rgba(247, 245, 240, .80);
    line-height: 1.72;
}

.area-item .area-deliv {
    margin-top: 18px;
    padding: 14px 16px;
    border-top: 0;
    border-radius: 12px;
    background: rgba(247, 245, 240, .07);
    color: rgba(247, 245, 240, .78);
    font-size: 14.5px;
    line-height: 1.65;
}

.area-item .area-deliv strong {
    display: block;
    margin-bottom: 4px;
    color: var(--gold);
    font-size: 12px;
    letter-spacing: .04em;
    text-transform: uppercase;
}

@media (max-width:980px) {
    .profiles .p-card:nth-child(even) {
        padding-left: 0;
        border-left: 0;
    }

    .profiles .p-card:nth-child(odd) {
        padding-right: 0;
    }
}

@media (max-width:600px) {
    .hero {
        padding: 24px 0 44px;
    }

    .hero-grid {
        gap: 24px;
    }

    .hero h1 {
        font-size: clamp(32px, 10vw, 42px);
        line-height: 1.03;
        margin-top: 16px;
        max-width: none;
    }

    .hero-sub {
        font-size: 16px;
        line-height: 1.58;
        margin-top: 20px;
    }

    .hero-actions {
        margin-top: 26px;
        gap: 10px;
    }

    .hero-actions a {
        width: 100%;
        text-align: center;
    }

    .hero-flow {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding: 4px 4px 12px;
        margin: 0 -4px;
        background: transparent;
        border: 0;
        border-radius: 0;
        scrollbar-width: thin;
    }

    .hero-flow .flow-step {
        min-width: 82vw;
        scroll-snap-align: start;
        background: var(--white);
        border: 1px solid var(--line) !important;
        border-radius: 18px;
        padding: 20px 18px;
        gap: 12px;
    }

    .hero-flow .flow-dot {
        width: 34px;
        height: 34px;
    }

    .hero-flow .flow-content p {
        font-size: 15px;
        line-height: 1.55;
    }

    .hero-flow::after {
        content: "Arraste para ver as etapas →";
        min-width: 130px;
        align-self: center;
        font-size: 12px;
        color: var(--grey);
        padding: 0 8px;
    }

    .area-item {
        padding: 30px 24px;
    }

    .area-item p {
        font-size: 16px;
        line-height: 1.72;
    }

    .area-item .area-deliv {
        font-size: 15px;
    }

    .formats-grid {
        display: block;
    }

    .format-item {
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }

    .format-item:last-child {
        border-bottom: 0;
    }
}

/* ===== CORREÇÃO DO MENU MOBILE ===== */

@media (max-width: 980px) {

    /* Botão do menu */
    .menu-toggle {
        display: flex;
        width: 44px;
        height: 44px;
        flex-shrink: 0;
        position: relative;
        z-index: 70;
    }

    /* Painel aberto */
    .mobile-panel {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        width: 100%;
        max-height: calc(100vh - 60px);
        overflow-y: auto;
        background: var(--paper);
        border-bottom: 1px solid var(--line);
        box-shadow: 0 12px 28px rgba(20, 22, 26, 0.12);
        z-index: 60;
    }

    .mobile-panel.is-open {
        display: block;
    }

    /* Conteúdo */
    .mobile-panel-inner {
        width: 100%;
        padding: 8px 20px 24px;
        display: flex;
        flex-direction: column;
    }

    /* IMPORTANTE:
       força os links a ficarem um embaixo do outro */
    .mobile-panel-inner nav {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    .mobile-panel-inner nav a {
        display: block;
        width: 100%;
        box-sizing: border-box;

        padding: 13px 0;
        margin: 0;

        font-family: var(--display);
        font-size: 17px;
        font-weight: 600;
        line-height: 1.3;

        color: var(--ink);
        text-decoration: none;

        border-bottom: 1px solid var(--line);
    }

    .mobile-panel-inner nav a:first-child {
        border-top: 1px solid var(--line);
    }

    .mobile-panel-inner nav a:hover {
        opacity: .7;
    }

    /* Botão "Avaliar um desafio" */
    .mobile-panel .mobile-cta {
        display: inline-flex;
        align-items: center;
        justify-content: center;

        width: fit-content;
        margin-top: 18px;

        padding: 12px 22px;

        font-family: var(--body);
        font-size: 14px;
        font-weight: 600;

        background: var(--ink);
        color: var(--paper);

        border-radius: 100px;
        text-decoration: none;
    }
}

/* Ajuste específico para telefones */
@media (max-width: 600px) {

    .mobile-panel-inner {
        padding: 6px 20px 22px;
    }

    .mobile-panel-inner nav a {
        font-size: 16px;
        padding: 12px 0;
    }

    .mobile-panel .mobile-cta {
        margin-top: 16px;
        padding: 11px 20px;
        font-size: 14px;
    }
}