:root {
    --bg: #050505;
    --surface: #0a0a0a;
    --text: #f3f0ea;
    --muted: #9b9892;
    --line: rgba(255, 255, 255, 0.14);
    --header-height: 84px;
    --content-max: 1600px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--bg);
    color: var(--text);
    font-family: "Inter", Arial, sans-serif;
    font-weight: 300;
    overflow-x: hidden;
}

body.menu-open {
    overflow: hidden;
}

img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

a {
    color: inherit;
    text-decoration: none;
}

.site-header {
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--header-height);
    padding: 0 clamp(22px, 3vw, 58px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(to bottom, rgba(0,0,0,.72), transparent);
    transition: background .3s ease, backdrop-filter .3s ease;
}

.site-header.is-scrolled {
    background: rgba(5, 5, 5, .84);
    backdrop-filter: blur(14px);
}

.brand {
    font-size: 14px;
    letter-spacing: .34em;
    font-weight: 400;
    white-space: nowrap;
}

.desktop-nav {
    display: flex;
    align-items: center;
    gap: clamp(20px, 2.4vw, 42px);
    margin-left: auto;
    margin-right: 30px;
}

.desktop-nav a {
    font-size: 10px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: rgba(255,255,255,.78);
    transition: color .2s ease;
}

.desktop-nav a:hover {
    color: #fff;
}

.menu-toggle {
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    background: transparent;
    display: grid;
    place-content: center;
    gap: 6px;
    cursor: pointer;
}

.menu-toggle span {
    width: 18px;
    height: 1px;
    background: #fff;
    transition: transform .25s ease;
}

.mobile-nav {
    position: fixed;
    inset: 0;
    padding: 120px 30px 40px;
    background: rgba(5,5,5,.98);
    display: flex;
    flex-direction: column;
    gap: 24px;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity .25s ease, transform .25s ease, visibility .25s ease;
}

.mobile-nav.is-open {
    visibility: visible;
    opacity: 1;
    transform: none;
}

.mobile-nav a {
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(34px, 8vw, 56px);
}

.journey {
    border-bottom: 1px solid var(--line);
}

.journey__feature {
    min-height: 680px;
    display: grid;
    grid-template-columns: 32% 68%;
}

.journey__feature--reverse {
    grid-template-columns: 68% 32%;
}

.journey--start {
    padding-top: var(--header-height);
    display: grid;
    grid-template-columns: 32% 68%;
}

.journey--start > .journey__copy {
    min-height: 600px;
}

.journey--start > .journey__hero {
    min-height: 600px;
}

.journey--start > .editorial-grid {
    grid-column: 1 / -1;
}

.journey__copy {
    background: var(--bg);
    min-height: 100%;
    padding: clamp(72px, 9vw, 150px) clamp(30px, 5vw, 90px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.journey__number {
    display: block;
    margin-bottom: 24px;
    font-family: "Cormorant Garamond", serif;
    font-size: 16px;
    color: rgba(255,255,255,.82);
}

.journey h1,
.journey h2,
.closing h2 {
    margin: 0;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-weight: 400;
    line-height: .98;
    letter-spacing: -.025em;
}

.journey h1,
.journey h2 {
    font-size: clamp(52px, 5.2vw, 96px);
}

.journey__keywords {
    margin-top: 34px;
    padding-left: 18px;
    border-left: 1px solid rgba(255,255,255,.35);
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.journey__keywords span {
    font-size: 10px;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: rgba(255,255,255,.68);
}

.journey__hero {
    min-height: 680px;
    overflow: hidden;
    background: #111;
}

.journey__hero img,
.editorial-grid img,
.closing img {
    filter: saturate(.75) contrast(1.03) brightness(.78);
    transition: transform 1.2s cubic-bezier(.2,.7,.2,1), filter .5s ease;
}

.journey__hero:hover img,
.editorial-grid figure:hover img {
    transform: scale(1.025);
    filter: saturate(.86) contrast(1.05) brightness(.84);
}

.editorial-grid {
    display: grid;
    background: #000;
}

.editorial-grid--four {
    grid-template-columns: repeat(4, 1fr);
}

.editorial-grid figure {
    margin: 0;
    min-height: 250px;
    overflow: hidden;
    border-top: 1px solid var(--line);
    border-right: 1px solid var(--line);
    background: #101010;
}

.editorial-grid figure:last-child {
    border-right: 0;
}

.closing {
    position: relative;
    min-height: 620px;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.closing > img {
    position: absolute;
    inset: 0;
}

.closing__overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top, rgba(0,0,0,.62), rgba(0,0,0,.08) 45%, rgba(0,0,0,.28)),
        linear-gradient(to right, rgba(0,0,0,.20), transparent 40%, rgba(0,0,0,.16));
}

.closing__content {
    position: relative;
    z-index: 2;
    width: min(720px, calc(100% - 40px));
    text-align: center;
}

.closing h2 {
    font-size: clamp(54px, 6vw, 104px);
    text-shadow: 0 2px 24px rgba(0,0,0,.34);
}

.closing p {
    margin: 26px 0 30px;
    font-size: 10px;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.button {
    display: inline-flex;
    min-width: 220px;
    min-height: 48px;
    padding: 0 28px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.7);
    font-size: 10px;
    letter-spacing: .18em;
    text-transform: uppercase;
    transition: background .2s ease, color .2s ease;
}

.button:hover {
    background: #fff;
    color: #000;
}

.site-footer {
    min-height: 92px;
    padding: 28px clamp(22px, 3vw, 58px);
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 20px;
    background: #050505;
    border-top: 1px solid var(--line);
    font-size: 9px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(255,255,255,.56);
}

.site-footer > span:first-child {
    color: rgba(255,255,255,.86);
    letter-spacing: .28em;
}

.site-footer__links {
    justify-self: end;
    display: flex;
    gap: 20px;
}

.site-footer a:hover {
    color: #fff;
}

@media (min-width: 981px) {
    .mobile-nav {
        display: none;
    }
}

@media (max-width: 980px) {
    .desktop-nav {
        display: none;
    }

    .journey--start,
    .journey__feature,
    .journey__feature--reverse {
        grid-template-columns: 1fr;
    }

    .journey--start > .journey__copy,
    .journey__copy {
        min-height: auto;
        padding-top: 110px;
        padding-bottom: 80px;
    }

    .journey--start > .journey__hero,
    .journey__hero {
        min-height: 70vw;
    }

    .journey__feature--reverse .journey__copy {
        order: -1;
    }

    .editorial-grid--four {
        grid-template-columns: repeat(2, 1fr);
    }

    .site-footer {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .site-footer__links {
        justify-self: center;
    }
}

@media (max-width: 620px) {
    :root {
        --header-height: 68px;
    }

    .brand {
        font-size: 12px;
    }

    .journey--start > .journey__hero,
    .journey__hero {
        min-height: 78vw;
    }

    .editorial-grid--four {
        grid-template-columns: 1fr 1fr;
    }

    .editorial-grid figure {
        min-height: 180px;
    }

    .closing {
        min-height: 520px;
    }

    .button {
        min-width: 200px;
    }
}


/* =========================================================
   PÁGINA A SHOW TIME
   ========================================================= */

.desktop-nav a.is-active {
    color: #fff;
    position: relative;
}

.desktop-nav a.is-active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -14px;
    height: 1px;
    background: rgba(255,255,255,.9);
}

.about-page {
    padding-top: var(--header-height);
    background: var(--bg);
}

.eyebrow,
.section-label {
    display: block;
    font-size: 10px;
    line-height: 1;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.editorial-rule,
.section-line {
    display: block;
    width: 34px;
    height: 1px;
    background: currentColor;
}

.about-hero {
    min-height: 690px;
    display: grid;
    grid-template-columns: 35% 65%;
    border-bottom: 1px solid var(--line);
}

.about-hero__copy {
    padding: clamp(56px, 6.2vw, 108px) clamp(28px, 4vw, 68px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #050505;
}

.about-hero__copy .eyebrow {
    display: none;
}

.about-hero__copy h1 {
    margin: 0;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(48px, 4.2vw, 78px);
    line-height: .99;
    font-weight: 400;
    letter-spacing: -.028em;
}

.about-hero__copy .editorial-rule {
    margin: 28px 0 24px;
    color: rgba(255,255,255,.78);
}

.about-hero__copy p {
    max-width: 470px;
    margin: 0;
    font-size: 14px;
    line-height: 1.65;
    color: rgba(255,255,255,.78);
}

.about-hero__media {
    margin: 0;
    min-height: 690px;
    overflow: hidden;
    background: #111;
}

.about-hero__media img,
.about-gallery img,
.about-cta__media img {
    filter: saturate(.72) contrast(1.04) brightness(.76);
}

.about-intro {
    display: grid;
    grid-template-columns: 48% 52%;
    border-bottom: 1px solid var(--line);
}

.about-essence,
.about-process {
    min-height: 465px;
    padding: clamp(48px, 5vw, 84px) clamp(28px, 4vw, 68px);
}

.about-essence {
    background: #ede8df;
    color: #151311;
}

.about-process {
    background: #050505;
    color: #f3f0ea;
}

.about-essence .section-line,
.about-process .section-line,
.about-thinking .section-line {
    margin: 13px 0 28px;
    opacity: .74;
}

.about-essence h2,
.about-thinking h2,
.about-cta h2 {
    margin: 0;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-weight: 400;
    letter-spacing: -.025em;
}

.about-essence h2 {
    font-size: clamp(40px, 3.4vw, 62px);
    line-height: 1.06;
}

.about-essence p {
    max-width: 480px;
    margin: 30px 0 0;
    font-size: 15px;
    line-height: 1.65;
    color: rgba(21,19,17,.78);
}

.process-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 22px;
}

.process-list li {
    display: grid;
    grid-template-columns: 58px 36px 1fr;
    gap: 16px;
    align-items: start;
}

.process-list__icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.48);
    border-radius: 50%;
    font-size: 20px;
    line-height: 1;
}

.process-list__number {
    padding-top: 8px;
    font-size: 12px;
    letter-spacing: .14em;
    color: rgba(255,255,255,.7);
}

.process-list h3 {
    margin: 4px 0 6px;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.process-list p {
    margin: 0;
    max-width: 560px;
    font-size: 12px;
    line-height: 1.55;
    color: rgba(255,255,255,.63);
}

.about-thinking {
    display: grid;
    grid-template-columns: 34% 66%;
    min-height: 270px;
    border-bottom: 1px solid var(--line);
}

.about-thinking__lead {
    padding: 46px clamp(28px, 4vw, 68px);
    border-right: 1px solid var(--line);
}

.about-thinking h2 {
    font-size: clamp(36px, 3vw, 55px);
    line-height: 1.05;
}

.thinking-principles {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.thinking-principles article {
    padding: 44px 28px;
    border-right: 1px solid var(--line);
}

.thinking-principles article:last-child {
    border-right: 0;
}

.thinking-principles span {
    display: block;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 36px;
    line-height: 1;
}

.thinking-principles h3 {
    margin: 16px 0 10px;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.thinking-principles p {
    margin: 0;
    font-size: 12px;
    line-height: 1.55;
    color: rgba(255,255,255,.62);
}

.about-gallery {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-bottom: 1px solid var(--line);
}

.about-gallery figure {
    margin: 0;
    min-height: 245px;
    overflow: hidden;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: #101010;
}

.about-gallery figure:nth-child(4n) {
    border-right: 0;
}

.about-gallery figure:nth-last-child(-n+4) {
    border-bottom: 0;
}

.about-gallery img {
    transition: transform 1s cubic-bezier(.2,.7,.2,1), filter .4s ease;
}

.about-gallery figure:hover img {
    transform: scale(1.025);
    filter: saturate(.82) contrast(1.05) brightness(.82);
}

.about-cta {
    min-height: 410px;
    display: grid;
    grid-template-columns: 37% 26% 37%;
    align-items: stretch;
    border-bottom: 1px solid var(--line);
}

.about-cta__copy,
.about-cta__action {
    padding: clamp(48px, 5vw, 82px) clamp(28px, 4vw, 62px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.about-cta__copy {
    border-right: 1px solid var(--line);
}

.about-cta h2 {
    font-size: clamp(40px, 3.6vw, 64px);
    line-height: 1.05;
}

.about-cta__action p {
    margin: 0 0 34px;
    font-size: 14px;
    line-height: 1.65;
    color: rgba(255,255,255,.7);
}

.about-cta__action a {
    width: fit-content;
    padding-bottom: 10px;
    display: inline-flex;
    align-items: center;
    gap: 42px;
    border-bottom: 1px solid rgba(255,255,255,.65);
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.about-cta__action a span {
    font-size: 24px;
    line-height: .6;
}

.about-cta__media {
    margin: 0;
    overflow: hidden;
    background: #111;
}

@media (max-width: 1100px) {
    .about-hero {
        grid-template-columns: 42% 58%;
    }

    .about-intro,
    .about-thinking {
        grid-template-columns: 1fr;
    }

    .about-thinking__lead {
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }

    .about-cta {
        grid-template-columns: 1fr 1fr;
    }

    .about-cta__media {
        grid-column: 1 / -1;
        min-height: 420px;
    }
}

@media (max-width: 820px) {
    .about-hero {
        grid-template-columns: 1fr;
    }

    .about-hero__copy {
        min-height: 520px;
    }

    .about-hero__media {
        min-height: 72vw;
    }

    .about-intro {
        grid-template-columns: 1fr;
    }

    .thinking-principles {
        grid-template-columns: repeat(2, 1fr);
    }

    .thinking-principles article:nth-child(2) {
        border-right: 0;
    }

    .thinking-principles article:nth-child(-n+2) {
        border-bottom: 1px solid var(--line);
    }

    .about-gallery {
        grid-template-columns: repeat(2, 1fr);
    }

    .about-gallery figure:nth-child(2n) {
        border-right: 0;
    }

    .about-gallery figure:nth-child(4n) {
        border-right: 0;
    }

    .about-gallery figure:nth-last-child(-n+4) {
        border-bottom: 1px solid var(--line);
    }

    .about-gallery figure:nth-last-child(-n+2) {
        border-bottom: 0;
    }

    .about-cta {
        grid-template-columns: 1fr;
    }

    .about-cta__copy {
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }

    .about-cta__media {
        grid-column: auto;
        min-height: 68vw;
    }
}

@media (max-width: 560px) {
    .about-hero__copy {
        min-height: auto;
        padding-top: 84px;
        padding-bottom: 72px;
    }

    .about-hero__copy h1 {
        font-size: clamp(44px, 13vw, 62px);
    }

    .about-essence,
    .about-process {
        min-height: auto;
    }

    .process-list li {
        grid-template-columns: 42px 28px 1fr;
        gap: 12px;
    }

    .process-list__icon {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }

    .thinking-principles {
        grid-template-columns: 1fr;
    }

    .thinking-principles article,
    .thinking-principles article:nth-child(2) {
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }

    .thinking-principles article:last-child {
        border-bottom: 0;
    }

    .about-gallery figure {
        min-height: 180px;
    }

    .about-cta h2 {
        font-size: 42px;
    }
}


/* =========================================================
   PÁGINAS INTERNAS — EXPERIÊNCIAS, PROJETOS E CONTATO
   ========================================================= */

.brand { display:flex; flex-direction:column; gap:3px; }
.brand > span { font-size:14px; letter-spacing:.34em; }
.brand small, .site-footer__brand small, .contact-bottom__brand small {
    display:block; font-size:7px; letter-spacing:.12em; text-transform:uppercase;
    color:rgba(255,255,255,.68);
}

.page-hero { min-height:650px; padding-top:0; display:grid; grid-template-columns:35% 65%; border-bottom:1px solid var(--line); }
.page-hero__copy { padding:90px clamp(28px,4vw,64px) 60px; display:flex; flex-direction:column; justify-content:center; }
.page-hero__copy h1 { margin:0; font-family:"Cormorant Garamond",serif; font-weight:400; font-size:clamp(52px,4.3vw,82px); line-height:.98; letter-spacing:-.025em; }
.page-hero__copy p { max-width:430px; margin:28px 0 0; color:rgba(255,255,255,.7); font-size:14px; line-height:1.7; }
.page-hero__copy .section-line { margin:16px 0 26px; }
.page-hero__media { margin:0; min-height:650px; overflow:hidden; background:#111; }
.page-hero__media img { filter:saturate(.74) brightness(.74) contrast(1.04); }

.service-showcase { padding:26px 24px 0; border-bottom:1px solid var(--line); }
.service-showcase__intro { padding:20px 0 26px 16px; }
.service-showcase__intro .section-line { margin-top:14px; }
.service-cards { display:grid; grid-template-columns:repeat(6,1fr); border:1px solid var(--line); border-bottom:0; }
.service-card { min-width:0; border-right:1px solid var(--line); }
.service-card:last-child { border-right:0; }
.service-card figure { margin:0; height:300px; overflow:hidden; background:#111; }
.service-card img { filter:saturate(.78) brightness(.78); }
.service-card > div { min-height:220px; padding:24px 18px; }
.service-card h2 { margin:0 0 16px; font-size:13px; text-transform:uppercase; letter-spacing:.1em; }
.service-card p { margin:0; color:rgba(255,255,255,.64); font-size:11px; line-height:1.65; }

.approach { display:grid; grid-template-columns:33% 67%; border-bottom:1px solid var(--line); }
.approach__intro { background:#eee9e1; color:#171411; padding:58px 42px; }
.approach__intro .section-line { margin:14px 0 28px; }
.approach__intro h2 { margin:0; font-family:"Cormorant Garamond",serif; font-size:clamp(40px,3.4vw,60px); font-weight:400; line-height:1.04; }
.approach__intro p { margin:28px 0 0; font-size:14px; line-height:1.65; color:rgba(23,20,17,.72); }
.approach__steps { display:grid; grid-template-columns:repeat(4,1fr); }
.approach__steps article { padding:58px 28px; border-right:1px solid var(--line); }
.approach__steps article:last-child { border-right:0; }
.approach__number { font-family:"Cormorant Garamond",serif; font-size:34px; }
.approach__steps h3 { margin:18px 0 14px; font-size:12px; letter-spacing:.14em; text-transform:uppercase; }
.approach__steps p { margin:0; font-size:11px; line-height:1.65; color:rgba(255,255,255,.62); }

.invisible-work { display:grid; grid-template-columns:20% 80%; border-bottom:1px solid var(--line); }
.invisible-work__copy { padding:56px 30px; border-right:1px solid var(--line); }
.invisible-work__copy .section-line { margin:14px 0 26px; }
.invisible-work__copy p { margin:0; font-size:12px; line-height:1.7; color:rgba(255,255,255,.64); }
.invisible-work__gallery { display:grid; grid-template-columns:repeat(4,1fr); }
.invisible-work__gallery figure { margin:0; min-height:220px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); overflow:hidden; }
.invisible-work__gallery figure:nth-child(4n) { border-right:0; }
.invisible-work__gallery figure:nth-last-child(-n+3) { border-bottom:0; }
.invisible-work__gallery img { filter:saturate(.72) brightness(.76); }

.values-strip { display:grid; grid-template-columns:1.2fr repeat(5,1fr); border-bottom:1px solid var(--line); }
.values-strip > div, .values-strip article { padding:30px 22px; border-right:1px solid var(--line); }
.values-strip > *:last-child { border-right:0; }
.values-strip .section-line { margin-top:14px; }
.values-strip h3 { margin:0 0 12px; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.values-strip p { margin:0; font-size:10px; line-height:1.55; color:rgba(255,255,255,.6); }

.split-cta { display:grid; grid-template-columns:42% 58%; min-height:420px; border-bottom:1px solid var(--line); }
.split-cta__copy { display:grid; grid-template-columns:1.1fr .9fr; gap:36px; align-items:center; padding:50px 38px; }
.split-cta h2, .project-cta h2, .testimonials h2 { margin:0; font-family:"Cormorant Garamond",serif; font-weight:400; font-size:clamp(46px,4vw,72px); line-height:.98; }
.split-cta__copy p { margin:0 0 28px; font-size:13px; line-height:1.65; color:rgba(255,255,255,.68); }
.split-cta__copy a, .project-method__intro a, .testimonials a, .project-cta a, .contact-bottom a {
    display:inline-flex; align-items:center; gap:28px; width:fit-content; padding-bottom:8px;
    border-bottom:1px solid rgba(255,255,255,.58); font-size:10px; letter-spacing:.16em; text-transform:uppercase;
}
.split-cta figure { margin:0; overflow:hidden; background:#111; }
.split-cta img { filter:saturate(.7) brightness(.76); }

.project-method { display:grid; grid-template-columns:34% 66%; border-bottom:1px solid var(--line); }
.project-method__intro { padding:54px 40px; background:#eee9e1; color:#171411; }
.project-method__intro .section-line { margin:14px 0 26px; }
.project-method__intro h2 { margin:0; font-family:"Cormorant Garamond",serif; font-weight:400; font-size:clamp(38px,3vw,56px); line-height:1.05; }
.project-method__intro p { margin:24px 0; color:rgba(23,20,17,.72); font-size:13px; line-height:1.65; }
.project-method__intro a { border-color:rgba(23,20,17,.5); }
.project-method__steps { display:grid; grid-template-columns:repeat(5,1fr); }
.project-method__steps article { padding:50px 24px; border-right:1px solid var(--line); }
.project-method__steps article:last-child { border-right:0; }
.project-method__steps span { font-family:"Cormorant Garamond",serif; font-size:30px; }
.project-method__steps h3 { margin:18px 0 14px; font-size:12px; text-transform:uppercase; letter-spacing:.14em; }
.project-method__steps p { margin:0; color:rgba(255,255,255,.64); font-size:11px; line-height:1.65; }

.project-grid-section { padding:28px 26px 0; border-bottom:1px solid var(--line); }
.project-grid-section > .section-label { margin-bottom:18px; }
.project-grid { display:grid; grid-template-columns:repeat(6,1fr); }
.project-grid article { border-right:1px solid var(--line); padding-bottom:26px; }
.project-grid article:last-child { border-right:0; }
.project-grid figure { margin:0 0 20px; height:240px; overflow:hidden; }
.project-grid img { filter:saturate(.78) brightness(.8); }
.project-grid h2 { margin:0 16px 12px; font-size:13px; text-transform:uppercase; letter-spacing:.08em; }
.project-grid p { margin:0 16px; font-size:11px; line-height:1.62; color:rgba(255,255,255,.64); }
.project-grid__arrow { display:block; margin:18px 16px 0; font-size:22px; }

.testimonials { display:grid; grid-template-columns:1.15fr repeat(3,1fr); background:#eee9e1; color:#171411; }
.testimonials__intro, .testimonials blockquote { margin:0; padding:38px 34px; border-right:1px solid rgba(0,0,0,.16); }
.testimonials > *:last-child { border-right:0; }
.testimonials__intro .section-line { margin:14px 0 24px; }
.testimonials h2 { font-size:clamp(38px,3vw,54px); }
.testimonials a { margin-top:28px; border-color:rgba(0,0,0,.45); }
.testimonials blockquote > span { font-size:42px; line-height:1; }
.testimonials blockquote p { min-height:120px; margin:14px 0; font-size:12px; line-height:1.7; }
.testimonials cite { font-style:normal; font-size:11px; }

.project-cta { display:grid; grid-template-columns:36% 64%; min-height:330px; }
.project-cta > div { padding:44px 36px; display:flex; flex-direction:column; justify-content:center; }
.project-cta h2 { font-size:clamp(42px,3.6vw,62px); }
.project-cta a { margin-top:28px; }
.project-cta figure { margin:0; overflow:hidden; }
.project-cta img { filter:saturate(.72) brightness(.76); }

.contact-main { display:grid; grid-template-columns:28% 38% 34%; border-bottom:1px solid var(--line); }
.contact-info, .contact-form-wrap { padding:54px 42px; }
.contact-info h2, .contact-form-wrap h2, .contact-manifesto h2 { margin:0; font-family:"Cormorant Garamond",serif; font-size:clamp(38px,3vw,54px); font-weight:400; }
.contact-info .section-line, .contact-form-wrap .section-line, .contact-manifesto .section-line { margin:14px 0 28px; }
.contact-info dl { margin:0; display:grid; gap:24px; }
.contact-info dl div { padding-left:0; }
.contact-info dt { margin-bottom:6px; font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:rgba(255,255,255,.72); }
.contact-info dd { margin:0; font-size:13px; color:rgba(255,255,255,.78); }
.contact-form { display:grid; gap:18px; }
.contact-form label { display:grid; gap:7px; font-size:9px; letter-spacing:.16em; text-transform:uppercase; }
.contact-form input, .contact-form textarea {
    width:100%; padding:10px 0; border:0; border-bottom:1px solid rgba(255,255,255,.22);
    background:transparent; color:#fff; font:inherit; resize:vertical; outline:none;
}
.contact-form input:focus, .contact-form textarea:focus { border-color:rgba(255,255,255,.72); }
.contact-form button { width:fit-content; padding:10px 0; border:0; border-bottom:1px solid rgba(255,255,255,.6); background:transparent; color:#fff; font-size:10px; letter-spacing:.16em; text-transform:uppercase; cursor:pointer; }
.contact-main__media { margin:0; overflow:hidden; min-height:520px; }
.contact-main__media img { filter:grayscale(1) brightness(.64); }

.contact-manifesto { display:grid; grid-template-columns:52% 48%; border-bottom:1px solid var(--line); }
.contact-manifesto figure { margin:0; min-height:400px; overflow:hidden; }
.contact-manifesto figure img { filter:saturate(.68) brightness(.68); }
.contact-manifesto > div { padding:70px 56px; display:flex; flex-direction:column; justify-content:center; }
.contact-manifesto p { margin:22px 0 0; color:rgba(255,255,255,.64); line-height:1.65; }

.contact-bottom { display:grid; grid-template-columns:28% 46% 26%; min-height:300px; border-bottom:1px solid var(--line); }
.contact-bottom > div, .contact-bottom nav { padding:42px 38px; }
.contact-bottom__brand { font-size:22px; letter-spacing:.24em; }
.contact-bottom > div p { margin:24px 0; color:rgba(255,255,255,.62); font-size:12px; line-height:1.7; }
.contact-bottom figure { margin:0; overflow:hidden; }
.contact-bottom figure img { filter:saturate(.7) brightness(.65); }
.contact-bottom nav { display:flex; flex-direction:column; justify-content:center; gap:0; }
.contact-bottom nav a { padding:11px 0; border-bottom:1px solid var(--line); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }

.simple-page { min-height:calc(100vh - 90px); padding-top:var(--header-height); }
.simple-page__hero { min-height:650px; padding:120px 8vw; display:flex; flex-direction:column; justify-content:center; }
.simple-page__hero .section-line { margin:14px 0 28px; }
.simple-page__hero h1 { margin:0; font-family:"Cormorant Garamond",serif; font-size:clamp(58px,6vw,104px); font-weight:400; line-height:.98; }
.simple-page__hero p { color:rgba(255,255,255,.62); }

@media (max-width:1100px) {
    .page-hero { grid-template-columns:42% 58%; }
    .service-cards, .project-grid { grid-template-columns:repeat(3,1fr); }
    .service-card:nth-child(3n), .project-grid article:nth-child(3n) { border-right:0; }
    .approach, .project-method { grid-template-columns:1fr; }
    .approach__steps, .project-method__steps { border-top:1px solid var(--line); }
    .invisible-work { grid-template-columns:1fr; }
    .invisible-work__copy { border-right:0; border-bottom:1px solid var(--line); }
    .values-strip { grid-template-columns:repeat(3,1fr); }
    .split-cta, .project-cta { grid-template-columns:1fr; }
    .split-cta figure, .project-cta figure { min-height:420px; }
    .testimonials { grid-template-columns:repeat(2,1fr); }
    .contact-main { grid-template-columns:1fr 1fr; }
    .contact-main__media { grid-column:1/-1; min-height:420px; }
    .contact-bottom { grid-template-columns:1fr 1fr; }
    .contact-bottom nav { grid-column:1/-1; }
}
@media (max-width:760px) {
    .page-hero { grid-template-columns:1fr; }
    .page-hero__copy { min-height:520px; }
    .page-hero__media { min-height:70vw; }
    .service-cards, .project-grid { grid-template-columns:1fr 1fr; }
    .service-card:nth-child(3n), .project-grid article:nth-child(3n) { border-right:1px solid var(--line); }
    .service-card:nth-child(2n), .project-grid article:nth-child(2n) { border-right:0; }
    .approach__steps { grid-template-columns:1fr 1fr; }
    .project-method__steps { grid-template-columns:1fr; }
    .invisible-work__gallery { grid-template-columns:1fr 1fr; }
    .values-strip { grid-template-columns:1fr 1fr; }
    .split-cta__copy { grid-template-columns:1fr; }
    .testimonials { grid-template-columns:1fr; }
    .contact-main, .contact-manifesto, .contact-bottom { grid-template-columns:1fr; }
    .contact-main__media, .contact-bottom nav { grid-column:auto; }
    .contact-manifesto figure { min-height:68vw; }
}


/* =========================================================
   HOME — HERO 01 FULL WIDTH COM TEXTO SOBREPOSTO
   ========================================================= */

.journey--start-full {
    position: relative;
    min-height: 100svh;
    padding-top: 0;
    display: block;
    overflow: hidden;
    isolation: isolate;
}

.journey--start-full > .journey-start__background {
    position: absolute;
    inset: 0;
    z-index: 0;
    margin: 0;
    min-height: 100%;
    overflow: hidden;
    background: #050505;
}

.journey--start-full > .journey-start__background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    filter: saturate(.80) contrast(1.04) brightness(.78);
    transform: scale(1.002);
}

.journey-start__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, .88) 0%,
            rgba(0, 0, 0, .72) 24%,
            rgba(0, 0, 0, .42) 48%,
            rgba(0, 0, 0, .12) 76%,
            rgba(0, 0, 0, .06) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0, 0, 0, .52) 0%,
            rgba(0, 0, 0, .05) 28%,
            rgba(0, 0, 0, .08) 72%,
            rgba(0, 0, 0, .62) 100%
        );
}

.journey-start__content {
    position: relative;
    z-index: 2;
    width: min(520px, calc(100% - 48px));
    min-height: 100svh;
    padding: calc(var(--header-height) + 54px) 0 70px clamp(34px, 6vw, 118px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.journey--start-full h1 {
    margin: 0;
    max-width: 470px;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(62px, 6.4vw, 112px);
    font-weight: 400;
    line-height: .90;
    letter-spacing: -.035em;
    color: #f3f0ea;
    text-shadow: 0 4px 28px rgba(0, 0, 0, .25);
}

.journey--start-full .journey__number {
    margin-bottom: 24px;
}

.journey--start-full .journey__keywords {
    width: fit-content;
    margin-top: 34px;
    padding-left: 18px;
    border-left: 1px solid rgba(255, 255, 255, .42);
}

.journey--start-full > .editorial-grid {
    position: relative;
    z-index: 3;
    margin-top: 0;
}

@media (max-width: 980px) {
    .journey--start-full {
        min-height: 92svh;
    }

    .journey--start-full > .journey-start__background img {
        object-position: 62% center;
    }

    .journey-start__content {
        min-height: 92svh;
        padding-left: clamp(26px, 7vw, 64px);
        padding-right: 24px;
    }

    .journey-start__overlay {
        background:
            linear-gradient(
                90deg,
                rgba(0, 0, 0, .88) 0%,
                rgba(0, 0, 0, .66) 50%,
                rgba(0, 0, 0, .20) 100%
            ),
            linear-gradient(
                180deg,
                rgba(0, 0, 0, .50) 0%,
                rgba(0, 0, 0, .08) 45%,
                rgba(0, 0, 0, .58) 100%
            );
    }
}

@media (max-width: 620px) {
    .journey--start-full {
        min-height: 88svh;
    }

    .journey--start-full > .journey-start__background img {
        object-position: 67% center;
    }

    .journey-start__content {
        width: 100%;
        min-height: 88svh;
        padding:
            calc(var(--header-height) + 52px)
            24px
            56px;
        justify-content: flex-end;
    }

    .journey--start-full h1 {
        font-size: clamp(54px, 16vw, 76px);
        line-height: .92;
    }

    .journey-start__overlay {
        background:
            linear-gradient(
                180deg,
                rgba(0, 0, 0, .56) 0%,
                rgba(0, 0, 0, .10) 32%,
                rgba(0, 0, 0, .40) 62%,
                rgba(0, 0, 0, .92) 100%
            ),
            linear-gradient(
                90deg,
                rgba(0, 0, 0, .56) 0%,
                rgba(0, 0, 0, .12) 100%
            );
    }
}


/* =========================================================
   REGRA GLOBAL — HERO FULL NAS PÁGINAS INTERNAS
   Exceção: Artigos
   ========================================================= */

.internal-hero {
    position: relative;
    min-height: 100svh;
    overflow: hidden;
    isolation: isolate;
    border-bottom: 1px solid var(--line);
    background: #050505;
}

.internal-hero__background {
    position: absolute;
    inset: 0;
    z-index: 0;
    margin: 0;
    overflow: hidden;
    background: #0a0a0a;
}

.internal-hero__background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    filter: saturate(.78) contrast(1.04) brightness(.76);
    transform: scale(1.002);
}

.internal-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, .90) 0%,
            rgba(0, 0, 0, .76) 23%,
            rgba(0, 0, 0, .46) 48%,
            rgba(0, 0, 0, .14) 77%,
            rgba(0, 0, 0, .06) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0, 0, 0, .54) 0%,
            rgba(0, 0, 0, .06) 28%,
            rgba(0, 0, 0, .12) 72%,
            rgba(0, 0, 0, .66) 100%
        );
}

.internal-hero__content {
    position: relative;
    z-index: 2;
    width: min(690px, calc(100% - 48px));
    min-height: 100svh;
    padding:
        calc(var(--header-height) + 58px)
        0
        76px
        clamp(34px, 6vw, 118px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.internal-hero__content .section-line {
    margin: 16px 0 28px;
}

.internal-hero__content h1 {
    max-width: 680px;
    margin: 0;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(56px, 5.6vw, 102px);
    font-weight: 400;
    line-height: .93;
    letter-spacing: -.035em;
    color: #f3f0ea;
    text-shadow: 0 4px 30px rgba(0, 0, 0, .28);
}

.internal-hero__content p {
    max-width: 530px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .78);
    font-size: 14px;
    line-height: 1.7;
    text-shadow: 0 2px 18px rgba(0, 0, 0, .30);
}

/* Enquadramentos independentes para troca futura das imagens */
.internal-hero--about .internal-hero__background img {
    object-position: center center;
}

.internal-hero--experiences .internal-hero__background img {
    object-position: center center;
}

.internal-hero--projects .internal-hero__background img {
    object-position: center center;
}

.internal-hero--contact .internal-hero__background img {
    object-position: center center;
}

@media (max-width: 980px) {
    .internal-hero {
        min-height: 92svh;
    }

    .internal-hero__content {
        min-height: 92svh;
        width: min(650px, calc(100% - 40px));
        padding-left: clamp(26px, 7vw, 64px);
        padding-right: 24px;
    }

    .internal-hero__overlay {
        background:
            linear-gradient(
                90deg,
                rgba(0, 0, 0, .90) 0%,
                rgba(0, 0, 0, .68) 52%,
                rgba(0, 0, 0, .20) 100%
            ),
            linear-gradient(
                180deg,
                rgba(0, 0, 0, .54) 0%,
                rgba(0, 0, 0, .10) 42%,
                rgba(0, 0, 0, .64) 100%
            );
    }
}

@media (max-width: 620px) {
    .internal-hero {
        min-height: 88svh;
    }

    .internal-hero__background img {
        object-position: 62% center;
    }

    .internal-hero__content {
        width: 100%;
        min-height: 88svh;
        padding:
            calc(var(--header-height) + 52px)
            24px
            54px;
        justify-content: flex-end;
    }

    .internal-hero__content h1 {
        font-size: clamp(50px, 14.5vw, 74px);
        line-height: .94;
    }

    .internal-hero__content p {
        max-width: 100%;
        margin-top: 24px;
        font-size: 13px;
    }

    .internal-hero__overlay {
        background:
            linear-gradient(
                180deg,
                rgba(0, 0, 0, .58) 0%,
                rgba(0, 0, 0, .10) 30%,
                rgba(0, 0, 0, .44) 62%,
                rgba(0, 0, 0, .94) 100%
            ),
            linear-gradient(
                90deg,
                rgba(0, 0, 0, .58) 0%,
                rgba(0, 0, 0, .12) 100%
            );
    }
}


/* =========================================================
   SHOW TIME HOME V4 — ARQUITETURA CONGELADA
   Quatro capítulos full screen + mosaicos editoriais
   ========================================================= */

.home-v4 {
    background: #050505;
}

.home-chapter {
    position: relative;
    min-height: 100svh;
    overflow: hidden;
    isolation: isolate;
    background: #050505;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.home-chapter__background {
    position: absolute;
    inset: 0;
    z-index: 0;
    margin: 0;
    overflow: hidden;
    background: #080808;
}

.home-chapter__background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    filter: saturate(.80) contrast(1.04) brightness(.78);
    transform: scale(1.002);
}

.home-chapter__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, .90) 0%,
            rgba(0, 0, 0, .76) 24%,
            rgba(0, 0, 0, .44) 49%,
            rgba(0, 0, 0, .14) 78%,
            rgba(0, 0, 0, .06) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0, 0, 0, .54) 0%,
            rgba(0, 0, 0, .04) 28%,
            rgba(0, 0, 0, .10) 72%,
            rgba(0, 0, 0, .68) 100%
        );
}

.home-chapter__content {
    position: relative;
    z-index: 2;
    width: min(720px, calc(100% - 48px));
    min-height: 100svh;
    padding:
        calc(var(--header-height) + 58px)
        0
        76px
        clamp(34px, 6vw, 118px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.home-chapter__number {
    display: block;
    margin: 0 0 24px;
    color: rgba(255, 255, 255, .68);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .28em;
}

.home-chapter h1,
.home-chapter h2 {
    max-width: 700px;
    margin: 0;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(62px, 6.3vw, 112px);
    font-weight: 400;
    line-height: .90;
    letter-spacing: -.038em;
    color: #f3f0ea;
    text-shadow: 0 4px 30px rgba(0, 0, 0, .26);
}

.home-chapter__keywords {
    width: fit-content;
    margin-top: 34px;
    padding-left: 18px;
    border-left: 1px solid rgba(255, 255, 255, .42);
}

.home-chapter__keywords span {
    display: block;
    color: rgba(255, 255, 255, .76);
    font-size: 11px;
    line-height: 1.85;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.home-chapter--closing .home-chapter__content p {
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .80);
    font-size: 15px;
    line-height: 1.7;
}

.home-chapter--closing .button {
    margin-top: 28px;
}

.home-mosaic {
    position: relative;
    z-index: 3;
    margin: 0;
    padding: 0;
    background: #050505;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.home-mosaic .editorial-grid {
    margin: 0;
}

/* Enquadramento independente por capítulo */
.home-chapter--01 .home-chapter__background img {
    object-position: center center;
}

.home-chapter--02 .home-chapter__background img {
    object-position: center center;
}

.home-chapter--03 .home-chapter__background img {
    object-position: center center;
}

.home-chapter--04 .home-chapter__background img {
    object-position: center center;
}

/* Encerramento com leitura mais contemplativa */
.home-chapter--closing .home-chapter__overlay {
    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, .88) 0%,
            rgba(0, 0, 0, .70) 30%,
            rgba(0, 0, 0, .34) 58%,
            rgba(0, 0, 0, .10) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0, 0, 0, .46) 0%,
            rgba(0, 0, 0, .04) 38%,
            rgba(0, 0, 0, .64) 100%
        );
}

@media (max-width: 980px) {
    .home-chapter {
        min-height: 92svh;
    }

    .home-chapter__content {
        width: min(650px, calc(100% - 40px));
        min-height: 92svh;
        padding-left: clamp(26px, 7vw, 64px);
        padding-right: 24px;
    }

    .home-chapter h1,
    .home-chapter h2 {
        font-size: clamp(58px, 9vw, 88px);
    }

    .home-chapter__overlay {
        background:
            linear-gradient(
                90deg,
                rgba(0, 0, 0, .90) 0%,
                rgba(0, 0, 0, .68) 52%,
                rgba(0, 0, 0, .20) 100%
            ),
            linear-gradient(
                180deg,
                rgba(0, 0, 0, .54) 0%,
                rgba(0, 0, 0, .10) 42%,
                rgba(0, 0, 0, .64) 100%
            );
    }
}

@media (max-width: 620px) {
    .home-chapter {
        min-height: 88svh;
    }

    .home-chapter__background img {
        object-position: 64% center;
    }

    .home-chapter__content {
        width: 100%;
        min-height: 88svh;
        padding:
            calc(var(--header-height) + 52px)
            24px
            56px;
        justify-content: flex-end;
    }

    .home-chapter h1,
    .home-chapter h2 {
        font-size: clamp(52px, 15vw, 76px);
        line-height: .92;
    }

    .home-chapter__keywords {
        margin-top: 26px;
    }

    .home-chapter--closing .home-chapter__content p {
        margin-top: 24px;
        font-size: 14px;
    }

    .home-chapter__overlay,
    .home-chapter--closing .home-chapter__overlay {
        background:
            linear-gradient(
                180deg,
                rgba(0, 0, 0, .58) 0%,
                rgba(0, 0, 0, .10) 30%,
                rgba(0, 0, 0, .44) 62%,
                rgba(0, 0, 0, .94) 100%
            ),
            linear-gradient(
                90deg,
                rgba(0, 0, 0, .58) 0%,
                rgba(0, 0, 0, .12) 100%
            );
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-chapter__background img {
        transform: none;
    }
}


/* =========================================================
   SHOW TIME HOME V4.1 — ALINHAMENTOS DEFINITIVOS
   01 esquerda | 02 direita | 03 esquerda | 04 centro
   ========================================================= */

/* CAPÍTULO 01 — ESQUERDA */
.home-chapter--01 .home-chapter__content {
    align-items: flex-start;
    margin-right: auto;
    margin-left: 0;
    text-align: left;
}

/* CAPÍTULO 02 — DIREITA */
.home-chapter--02 .home-chapter__content {
    width: min(720px, calc(100% - 48px));
    margin-right: 0;
    margin-left: auto;
    padding-right: clamp(34px, 6vw, 118px);
    padding-left: 0;
    align-items: flex-end;
    text-align: right;
}

.home-chapter--02 .home-chapter__keywords {
    padding-right: 18px;
    padding-left: 0;
    border-right: 1px solid rgba(255, 255, 255, .42);
    border-left: 0;
    text-align: right;
}

.home-chapter--02 .home-chapter__overlay {
    background:
        linear-gradient(
            270deg,
            rgba(0, 0, 0, .90) 0%,
            rgba(0, 0, 0, .76) 24%,
            rgba(0, 0, 0, .44) 49%,
            rgba(0, 0, 0, .14) 78%,
            rgba(0, 0, 0, .06) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0, 0, 0, .54) 0%,
            rgba(0, 0, 0, .04) 28%,
            rgba(0, 0, 0, .10) 72%,
            rgba(0, 0, 0, .68) 100%
        );
}

/* CAPÍTULO 03 — ESQUERDA */
.home-chapter--03 .home-chapter__content {
    align-items: flex-start;
    margin-right: auto;
    margin-left: 0;
    text-align: left;
}

/* CAPÍTULO 04 — CENTRALIZADO */
.home-chapter--04 .home-chapter__content {
    width: min(940px, calc(100% - 48px));
    margin: 0 auto;
    padding-right: 24px;
    padding-left: 24px;
    align-items: center;
    text-align: center;
}

.home-chapter--04 h2 {
    max-width: 900px;
}

.home-chapter--04 .home-chapter__number,
.home-chapter--04 p,
.home-chapter--04 .button {
    align-self: center;
}

.home-chapter--04 .home-chapter__overlay {
    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, .50) 0%,
            rgba(0, 0, 0, .12) 28%,
            rgba(0, 0, 0, .18) 62%,
            rgba(0, 0, 0, .76) 100%
        ),
        linear-gradient(
            90deg,
            rgba(0, 0, 0, .30) 0%,
            rgba(0, 0, 0, .08) 35%,
            rgba(0, 0, 0, .08) 65%,
            rgba(0, 0, 0, .30) 100%
        );
}

@media (max-width: 980px) {
    .home-chapter--02 .home-chapter__content {
        width: min(650px, calc(100% - 40px));
        padding-right: clamp(26px, 7vw, 64px);
        padding-left: 24px;
    }

    .home-chapter--04 .home-chapter__content {
        width: min(820px, calc(100% - 40px));
        padding-right: 28px;
        padding-left: 28px;
    }
}

@media (max-width: 620px) {
    .home-chapter--01 .home-chapter__content,
    .home-chapter--03 .home-chapter__content {
        align-items: flex-start;
        text-align: left;
    }

    .home-chapter--02 .home-chapter__content {
        width: 100%;
        margin-left: 0;
        padding:
            calc(var(--header-height) + 52px)
            24px
            56px;
        align-items: flex-end;
        text-align: right;
    }

    .home-chapter--02 .home-chapter__overlay {
        background:
            linear-gradient(
                180deg,
                rgba(0, 0, 0, .58) 0%,
                rgba(0, 0, 0, .10) 30%,
                rgba(0, 0, 0, .44) 62%,
                rgba(0, 0, 0, .94) 100%
            ),
            linear-gradient(
                270deg,
                rgba(0, 0, 0, .64) 0%,
                rgba(0, 0, 0, .10) 100%
            );
    }

    .home-chapter--04 .home-chapter__content {
        width: 100%;
        padding:
            calc(var(--header-height) + 52px)
            24px
            56px;
        align-items: center;
        text-align: center;
        justify-content: center;
    }

    .home-chapter--04 h2 {
        font-size: clamp(48px, 14vw, 72px);
    }
}

/* =========================================================
   AJUSTES FINAIS — ÍCONES E PROPORÇÕES CONTATO
   ========================================================= */
.approach__icon,
.project-method__icon {
    display: block;
    width: 46px;
    height: 46px;
    margin: 0 0 20px;
    object-fit: contain;
}

.project-method__icon {
    width: 44px;
    height: 44px;
}

.contact-info dl div {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
}

.contact-info dl div > img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.contact-info dl div > span {
    min-width: 0;
}

/* A imagem lateral acompanha o layout aprovado: faixa de 415 px. */
.contact-main {
    min-height: 415px;
}

.contact-main__media {
    min-height: 475px;
    height: 475px;
}

.contact-main__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

/* Manifesto com 400 px de altura, sem sobras pretas verticais. */
.contact-manifesto {
    min-height: 400px;
}

.contact-manifesto figure {
    min-height: 400px;
    height: 400px;
}

.contact-manifesto figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.contact-manifesto > div {
    min-height: 400px;
    padding-top: 38px;
    padding-bottom: 38px;
}

/* Imagem final em background full, com 375 px de altura e conteúdo sobreposto. */
.contact-bottom {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: 32% 1fr 26%;
    align-items: stretch;
    min-height: 375px;
    height: 375px;
    overflow: hidden;
    background-image: url('../images/contact-04-bottom.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    border-bottom: 1px solid var(--line);
}

.contact-bottom__overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(0,0,0,.94) 0%, rgba(0,0,0,.78) 31%, rgba(0,0,0,.18) 58%, rgba(0,0,0,.78) 100%),
        linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.42));
}

.contact-bottom__content {
    grid-column: 1;
    padding: 54px 42px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.contact-bottom nav {
    grid-column: 3;
    padding: 46px 38px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: linear-gradient(90deg, rgba(0,0,0,.06), rgba(0,0,0,.5));
}

@media (max-width: 1100px) {
    .contact-main {
        min-height: auto;
    }

    .contact-main__media {
        height: 475px;
        min-height: 475px;
    }

    .contact-bottom {
        grid-template-columns: 1fr 1fr;
        height: 375px;
        min-height: 375px;
    }

    .contact-bottom__content {
        grid-column: 1;
    }

    .contact-bottom nav {
        grid-column: 2;
    }
}

@media (max-width: 760px) {
    .approach__icon,
    .project-method__icon {
        width: 40px;
        height: 40px;
    }

    .contact-main__media {
        height: 66vw;
        min-height: 300px;
        max-height: 475px;
    }

    .contact-manifesto,
    .contact-manifesto figure,
    .contact-manifesto > div {
        min-height: 0;
        height: auto;
    }

    .contact-manifesto figure {
        height: 400px;
    }

    .contact-bottom {
        grid-template-columns: 1fr;
        height: auto;
        min-height: 520px;
        background-position: 62% center;
    }

    .contact-bottom__content,
    .contact-bottom nav {
        grid-column: 1;
    }

    .contact-bottom__content {
        padding: 48px 28px 26px;
    }

    .contact-bottom nav {
        padding: 20px 28px 42px;
        background: transparent;
    }
}


/* CORREÇÃO V2 — dimensões blindadas e background de contato */
.approach__steps .approach__icon { width:44px!important; height:44px!important; max-width:44px!important; min-width:44px!important; object-fit:contain!important; }
.project-method__steps .project-method__icon { width:42px!important; height:42px!important; max-width:42px!important; min-width:42px!important; object-fit:contain!important; }
.contact-info dl div > img { width:26px!important; height:26px!important; max-width:26px!important; min-width:26px!important; object-fit:contain!important; }
.contact-bottom { background-image:url('../images/contact-04-bottom.jpg?v=20260718-adjust-v3')!important; background-size:cover!important; background-position:center center!important; background-repeat:no-repeat!important; }
@media (max-width:760px){.approach__steps .approach__icon,.project-method__steps .project-method__icon{width:38px!important;height:38px!important;max-width:38px!important;min-width:38px!important;}}


/* AJUSTES V3 — logomarca, ícones PNG e proporções de Contato */
.brand--image { display:flex; align-items:center; width:auto; height:auto; }
.brand--image img { display:block; width:164px; height:auto; max-height:58px; object-fit:contain; object-position:left center; }
.process-list__icon { width:44px!important; height:44px!important; max-width:44px!important; min-width:44px!important; display:block!important; object-fit:contain!important; border:0!important; border-radius:0!important; }
@media (max-width:760px){ .brand--image img{width:138px;max-height:50px;} .process-list__icon{width:38px!important;height:38px!important;max-width:38px!important;min-width:38px!important;} }


/* AJUSTES V4 — contato, SEO e retorno do formulário */
.form-status { margin:0 0 22px; padding:12px 14px; border:1px solid rgba(255,255,255,.18); font-size:12px; line-height:1.5; }
.form-status--success { border-color:rgba(159,210,178,.45); color:#cde8d7; }
.form-status--error { border-color:rgba(219,151,151,.45); color:#efcaca; }
.contact-form__honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; opacity:0!important; pointer-events:none!important; }

/* V5 — logomarca branca no encerramento da página Contato */
.contact-bottom__brand img {
    display: block;
    width: auto;
    height: 100px;
    max-width: 100%;
    object-fit: contain;
    object-position: left center;
}

@media (max-width: 700px) {
    .contact-bottom__brand img {
        height: 84px;
    }
}


/* =========================================================
   SHOW TIME FINAL V6 — HUB EDITORIAL E ARTIGOS
   ========================================================= */
.articles-page,.article-page,.legal-page{background:#050505;color:#f3efe8}.articles-intro{min-height:62vh;padding:calc(var(--header-height) + 100px) 7vw 80px;display:flex;flex-direction:column;justify-content:flex-end;border-bottom:1px solid var(--line)}.articles-intro h1{font-family:"Cormorant Garamond",serif;font-weight:400;font-size:clamp(64px,9vw,150px);line-height:.82;margin:24px 0 28px}.articles-intro p{max-width:540px;font-size:16px;line-height:1.7;color:var(--muted)}
.articles-featured{padding:7vw;border-bottom:1px solid var(--line)}.articles-featured>a{display:grid;grid-template-columns:1.3fr 1fr;min-height:520px;text-decoration:none;color:inherit;border:1px solid var(--line)}.articles-featured__media{overflow:hidden}.articles-featured__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.articles-featured a:hover img{transform:scale(1.025)}.articles-featured__content{padding:clamp(36px,5vw,82px);display:flex;flex-direction:column;justify-content:center}.articles-featured__content>span,.article-card__content>span,.article-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:#c9a96a}.articles-featured h2{font-family:"Cormorant Garamond",serif;font-weight:400;font-size:clamp(42px,5vw,74px);line-height:.96;margin:22px 0}.articles-featured p,.article-card p{color:var(--muted);line-height:1.7}.articles-featured strong,.article-card strong{margin-top:28px;font-size:11px;text-transform:uppercase;letter-spacing:.16em}
.articles-grid{padding:7vw;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.article-card{background:#050505}.article-card>a{display:block;height:100%;text-decoration:none;color:inherit}.article-card__image{height:270px;overflow:hidden}.article-card__image img{width:100%;height:100%;object-fit:cover;filter:saturate(.82);transition:transform .6s ease}.article-card:hover img{transform:scale(1.035)}.article-card__content{padding:34px 30px 42px}.article-card h2{font-family:"Cormorant Garamond",serif;font-weight:400;font-size:34px;line-height:1.05;margin:18px 0}.article-card p{font-size:13px}.articles-final{padding:110px 7vw;text-align:center;border-top:1px solid var(--line)}.articles-final>span{font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--muted)}.articles-final h2{font-family:"Cormorant Garamond",serif;font-size:clamp(42px,6vw,82px);font-weight:400;line-height:.95;margin:30px 0 42px}.articles-final a,.article-cta a{display:inline-block;border:1px solid rgba(255,255,255,.35);padding:15px 24px;color:#fff;text-decoration:none;font-size:11px;text-transform:uppercase;letter-spacing:.16em}
.article-hero{position:relative;min-height:78vh;display:flex;align-items:flex-end;overflow:hidden}.article-hero__media,.article-hero__overlay{position:absolute;inset:0}.article-hero__media img{width:100%;height:100%;object-fit:cover}.article-hero__overlay{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.9) 86%),linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.08))}.article-hero__content{position:relative;z-index:1;width:min(1100px,86vw);padding:calc(var(--header-height) + 80px) 0 78px;margin:0 auto}.article-back{display:block;margin-bottom:50px;color:#fff;text-decoration:none;font-size:11px;text-transform:uppercase;letter-spacing:.16em}.article-hero h1{max-width:1000px;font-family:"Cormorant Garamond",serif;font-size:clamp(52px,7vw,108px);font-weight:400;line-height:.92;margin:20px 0 32px}.article-meta{display:flex;gap:28px;color:rgba(255,255,255,.64);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.article-body{width:min(820px,86vw);margin:0 auto;padding:90px 0 120px}.article-lead{font-family:"Cormorant Garamond",serif;font-size:clamp(30px,4vw,46px);line-height:1.18;margin:0 0 70px;color:#f6f0e6}.article-index{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;margin-bottom:75px;display:grid;gap:11px}.article-index strong{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#c9a96a;margin-bottom:8px}.article-index a{color:var(--muted);text-decoration:none;font-size:13px}.article-body section{scroll-margin-top:100px;margin:0 0 64px}.article-body h2{font-family:"Cormorant Garamond",serif;font-size:clamp(36px,4.5vw,58px);font-weight:400;line-height:1.04;margin:0 0 20px}.article-body section p{font-size:17px;line-height:1.9;color:#c8c2b8}.article-conclusion{border-left:2px solid #c9a96a;padding:10px 0 10px 30px}.article-conclusion p{font-family:"Cormorant Garamond",serif!important;font-size:29px!important;line-height:1.35!important;color:#f2ede5!important}.article-cta{margin-top:100px;padding:64px;border:1px solid var(--line);background:rgba(255,255,255,.025)}.article-cta>span{font-size:10px;text-transform:uppercase;letter-spacing:.19em;color:#c9a96a}.article-cta h2{font-size:52px;margin:22px 0 32px}.legal-page{padding:calc(var(--header-height) + 100px) 7vw 110px}.legal-page article{max-width:800px;margin:auto}.legal-page h1{font-family:"Cormorant Garamond",serif;font-size:72px;font-weight:400}.legal-page h2{font-family:"Cormorant Garamond",serif;font-size:34px;font-weight:400;margin-top:48px}.legal-page p{color:var(--muted);line-height:1.8}.site-footer__links{flex-wrap:wrap}
@media(max-width:960px){.articles-featured>a{grid-template-columns:1fr}.articles-featured__media{height:440px}.articles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.articles-intro{min-height:70vh;padding-left:24px;padding-right:24px}.articles-featured,.articles-grid{padding:0}.articles-featured>a{border-left:0;border-right:0}.articles-featured__media{height:310px}.articles-grid{grid-template-columns:1fr;gap:1px}.article-card__image{height:250px}.article-hero{min-height:82vh}.article-hero__content{width:calc(100% - 48px);padding-bottom:48px}.article-hero h1{font-size:50px}.article-body{width:calc(100% - 48px);padding-top:64px}.article-lead{font-size:31px}.article-body section p{font-size:16px}.article-cta{padding:38px 28px}.article-cta h2{font-size:38px}.articles-final{padding:80px 24px}.legal-page{padding-left:24px;padding-right:24px}.legal-page h1{font-size:52px}}
