.lagoa-navy-panel {
    position: relative;
    z-index: 2;
    background: #12263a;
    padding: 0 0 clamp(48px, 7vw, 72px);
    overflow: visible;
    /* PDF: borda azul com respiro lateral */
    max-width: min(1520px, 94vw);
    margin: 0 auto;
}

/* Camada azul por cima do título "Sobre" dentro do painel */
.lagoa-navy-panel::after {
    content: '';
    position: absolute;
    inset: 0;
    background: #12263a;
    z-index: 2;
    pointer-events: none;
}

.lagoa-navy-inner {
    position: relative;
    z-index: 3;
}

/* Topo do azul + metade do título sobre a foto (absolute evita colapso de margem) */
.lagoa-navy-sobre-head {
    position: absolute;
    left: 50%;
    top: 0;
    /* Ajuste fino p/ alinhar a borda do "Sobre" com a borda da imagem */
    /* Encostar o título na borda superior do quadrado azul */
    transform: translate(-50%, -86%) translateX(-28px);
    /* Fica abaixo da camada azul (::after) */
    z-index: 1;
    width: min(1520px, 94vw);
    /* Alinha a borda do título com a borda da imagem (sem padding lateral) */
    max-width: min(1520px, 94vw);
    padding: 0;
    box-sizing: border-box;
    pointer-events: none;
}

.lagoa-navy-sobre-head .lagoa-navy-sobre-title {
    pointer-events: auto;
}

.lagoa-navy-sobre-title {
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(3.25rem, 12vw, 8.5rem);
    font-weight: 500;
    color: #fff;
    line-height: 0.92;
    letter-spacing: 0.01em;
    text-align: left;
    /* Border/outline branco (igual ao “contorno” do print) */
    text-shadow: none;
    -webkit-text-stroke: 0.6px rgba(255, 255, 255, 0.98);
    text-stroke: 0.6px rgba(255, 255, 255, 0.98);
}

.lagoa-navy-inner {
    display: grid;
    /* Texto mais estreito => mais quebras de linha => mais altura (como no PDF) */
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
    gap: clamp(28px, 5vw, 56px);
    align-items: start;
    padding-top: clamp(2.75rem, 8vw, 6rem);
}

.lagoa-navy-brand {
    /* Move logo + texto juntos para a direita (PDF) */
    transform: translateX(150px) translateY(16px);
}

.lagoa-navy-brand img {
    max-width: min(280px, 100%);
    height: auto;
    display: block;
}

.lagoa-navy-group {
    margin-top: 14px;
    color: rgba(255, 255, 255, 0.75);
    font-size: 0.58rem;
    letter-spacing: 0.32em;
    text-transform: uppercase;
}

.lagoa-navy-copy {
    /* Limita a largura real do bloco de texto dentro da coluna */
    width: 100%;
    max-width: min(560px, 100%);
    /* (PDF) Texto ao lado da marca: descer um pouco para alinhar */
    margin-top: 18px;
}

.lagoa-navy-copy p {
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.86rem;
    line-height: 1.25;
    margin: 0 0 0.48rem;
}

.lagoa-navy-copy p:last-child {
    margin-bottom: 0;
}

.lagoa-navy-cta {
    display: inline-block;
    margin-top: 8px;
    padding: 12px 28px;
    border: 1px solid rgba(255, 255, 255, 0.85);
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.38em;
    font-size: 0.68rem;
    font-weight: 500;
}

/* SITE.pdf: Eventos — imagem à esquerda sobrepõe o fim do bloco azul */
.lagoa-eventos {
    position: relative;
    z-index: 3;
    background: #ffffff;
    padding: 0 0 clamp(40px, 6vw, 72px);
    overflow: visible;
}

.lagoa-eventos-inner {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
    gap: clamp(22px, 4vw, 48px);
    align-items: start;
    max-width: min(1520px, 94vw);
    margin: 0 auto;
    padding: 0 clamp(16px, 3vw, 32px);
}

.lagoa-eventos-visual {
    position: relative;
    z-index: 2;
    margin-top: clamp(-48px, -8vw, -96px);
}

.lagoa-eventos-visual img {
    width: 100%;
    /* Mais “vertical” (altura > largura) para evitar look “gordo” */
    height: clamp(420px, 62vw, 760px);
    object-fit: cover;
    object-position: center top;
    display: block;
}

.lagoa-eventos-copy {
    padding-top: clamp(8px, 2vw, 20px);
}

.lagoa-eventos-copy h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(1.85rem, 3.8vw, 3rem);
    font-weight: 700;
    color: #12263a;
    margin: 0 0 clamp(14px, 2vw, 22px);
    line-height: 1.1;
}

.lagoa-eventos-copy p {
    color: #5c6168;
    font-size: 0.88rem;
    line-height: 1.75;
    margin: 0 0 1rem;
}

.lagoa-eventos-cta {
    display: inline-block;
    margin-top: 10px;
    padding: 11px 26px;
    border: 1px solid #cfd3d8;
    color: #8b9199;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.32em;
    font-size: 0.68rem;
    font-weight: 500;
}

.lagoa-pdf-gallery {
    background: #ffffff;
    padding: clamp(40px, 6vw, 64px) 0;
}

.lagoa-pdf-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.lagoa-pdf-gallery-grid img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    border-radius: 10px;
    display: block;
}

.lagoa-pdf-address {
    margin-top: 20px;
    color: #4a5568;
    font-size: 0.78rem;
    line-height: 1.5;
}

/* —— SITE.pdf: Casa Californiana — sobre —— */
.property-story--cc-pdf {
    padding: 0 0 clamp(48px, 7vw, 72px);
    background: #eef0f2;
}

.cc-sobre-address-top {
    margin: 0;
    padding: clamp(14px, 2.5vw, 22px) clamp(16px, 4vw, 32px);
    background: #ffffff;
    color: #4a5568;
    font-size: clamp(0.68rem, 2.2vw, 0.78rem);
    line-height: 1.5;
    text-align: center;
}

.cc-sobre-hero {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.cc-sobre-hero > img {
    width: 100%;
    height: clamp(340px, 52vw, 620px);
    object-fit: cover;
    display: block;
}

/* Formas claras no canto superior direito (PDF) */
.cc-sobre-hero-decor {
    position: absolute;
    top: clamp(-6%, -2vw, 0%);
    right: clamp(-4%, -1vw, 0%);
    width: min(58%, 520px);
    z-index: 2;
    pointer-events: none;
}

.cc-sobre-hero-decor img {
    width: 100%;
    height: auto;
    display: block;
    filter: brightness(0) invert(1);
    opacity: 0.28;
}

.cc-sobre-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 0%, transparent 40%, rgba(0, 0, 0, 0.22) 100%);
    pointer-events: none;
    z-index: 1;
}

/* Título na mesma coluna do card branco (container + 1120px) */
.cc-sobre-title-shell {
    position: absolute;
    left: 0;
    right: 0;
    bottom: clamp(8px, 1.05vw, 18px);
    z-index: 3;
    pointer-events: none;
}

/* Ajuste: quando o "Sobre" (cc-sobre-title-shell) é renderizado dentro do bloco
   ".pdf-lodge-hero" (cards com passaros), ele precisa "descer" para iniciar na área branca. */
.pdf-lodge-hero .cc-sobre-title-shell {
    bottom: clamp(-24px, -2.6vw, -44px);
}

.cc-sobre-title-shell > .container {
    pointer-events: none;
}

.cc-sobre-title-inner {
    max-width: min(1120px, 100%);
    margin-left: auto;
    margin-right: auto;
}

.cc-sobre-title {
    position: static;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(3.25rem, 12vw, 8.5rem);
    /* igual ao outro “Sobre” (sem negrito) */
    font-weight: 500;
    color: #fff;
    line-height: 0.92;
    letter-spacing: 0.02em;
    text-align: right;
    /* igual ao “quadrado branco”: sem sombra e com contorno branco */
    text-shadow: none;
    -webkit-text-stroke: 0.6px rgba(255, 255, 255, 0.98);
    text-stroke: 0.6px rgba(255, 255, 255, 0.98);
    pointer-events: auto;
}

.cc-sobre-card-wrap {
    position: relative;
    /* descer um pouco (menos sobreposição) */
    margin-top: clamp(-40px, -6vw, -70px);
    z-index: 4;
}

.cc-sobre-card {
    max-width: min(1120px, 100%);
    margin: 0 auto;
    background: #fff;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
    padding: clamp(24px, 3.5vw, 40px);
}

.cc-sobre-top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    gap: clamp(20px, 3vw, 32px);
    align-items: start;
    margin-bottom: clamp(20px, 3vw, 28px);
}

.cc-sobre-brand .story-logo {
    max-width: 220px;
}

.cc-sobre-group {
    margin-top: 10px;
    font-size: 0.58rem;
    letter-spacing: 0.26em;
    text-transform: uppercase;
    color: #132b44;
}

.cc-sobre-copycol {
    text-align: left;
}

.story-copy {
    color: #5a6169;
    font-size: 0.86rem;
    line-height: 1.75;
}

/* Texto do bloco = PDF (navy), não o cinza genérico */
.cc-sobre-copycol .story-copy {
    margin: 0 0 18px;
    color: #12263a;
    font-size: 0.88rem;
    line-height: 1.7;
}

/* PDF: ghost retangular, borda escura, “RESERVE” cinza com tracking largo */
.cc-sobre-copycol .story-reserve-btn {
    display: inline-block;
    margin-top: 4px;
    padding: 12px 38px;
    border: 1px solid #1f2933;
    border-radius: 0;
    background: transparent;
    color: #8e959e;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.3em;
    font-size: 0.65rem;
    font-weight: 500;
}

.cc-sobre-copycol .story-reserve-btn:hover {
    color: #12263a;
    border-color: #12263a;
}

/* Galeria 3×3, junta como no PDF */
.cc-sobre-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
}

.cc-sobre-gallery-grid img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
}

/* Endereço dentro do card branco, abaixo da galeria (PDF) */
.cc-sobre-card .cc-sobre-address {
    margin: clamp(18px, 2.5vw, 26px) 0 0;
    padding-top: clamp(16px, 2.2vw, 22px);
    border-top: 1px solid #e8eaed;
    color: #12263a;
    font-size: 0.8rem;
    line-height: 1.55;
    text-align: left;
}

@media (max-width: 768px) {
    .lagoa-navy-sobre-head {
        /* ajuste mobile coerente com o desktop */
        transform: translate(-50%, -86%) translateX(-14px);
        width: min(1520px, 100%);
        max-width: 100%;
        padding: 0;
    }

    .lagoa-navy-sobre-title {
        font-size: clamp(2.6rem, 14vw, 4.2rem);
    }

    .lagoa-navy-inner {
        /* Texto ainda lado a lado, mas com coluna ligeiramente mais estreita */
        grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.12fr);
        gap: clamp(8px, 2.5vw, 16px);
        padding-top: clamp(2rem, 10vw, 4rem);
        align-items: start;
    }

    .lagoa-navy-brand {
        /* descer a marca pra aproximar do título */
        /* move logo para a esquerda para não pegar no texto */
        transform: translateX(-6px) translateY(16px);
    }

    .lagoa-navy-brand img {
        max-width: min(140px, 36vw);
    }

    .lagoa-navy-copy {
        margin-top: 12px;
    }

    .lagoa-navy-group {
        font-size: 0.48rem;
        letter-spacing: 0.22em;
        margin-top: 8px;
    }

    .lagoa-navy-copy p {
        font-size: clamp(0.62rem, 2.6vw, 0.78rem);
        line-height: 1.22;
        margin: 0 0 0.42rem;
    }

    .lagoa-navy-copy {
        max-width: min(520px, 100%);
    }

    .lagoa-navy-copy p:last-child {
        margin-bottom: 0;
    }

    .lagoa-navy-cta {
        padding: 9px 14px;
        letter-spacing: 0.22em;
        font-size: 0.56rem;
    }

    .lagoa-eventos-inner {
        grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
        gap: clamp(8px, 2.2vw, 16px);
        padding: 0 clamp(10px, 2.5vw, 18px);
        align-items: start;
    }

    .lagoa-eventos-visual {
        margin-top: clamp(-24px, -6vw, -48px);
        min-width: 0;
    }

    .lagoa-eventos-visual img {
        height: clamp(200px, 62vw, 340px);
    }

    .lagoa-eventos-copy {
        padding-top: clamp(2px, 1vw, 8px);
        min-width: 0;
    }

    .lagoa-eventos-copy h2 {
        font-size: clamp(1.05rem, 4.2vw, 1.65rem);
        margin-bottom: clamp(6px, 1.8vw, 12px);
        line-height: 1.08;
    }

    .lagoa-eventos-copy p {
        font-size: clamp(0.58rem, 2.35vw, 0.76rem);
        line-height: 1.5;
        margin-bottom: 0.55rem;
    }

    .lagoa-eventos-cta {
        padding: 7px 10px;
        font-size: clamp(0.48rem, 1.8vw, 0.56rem);
        letter-spacing: 0.16em;
        margin-top: 4px;
    }

    .lagoa-pdf-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cc-sobre-top {
        grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
        gap: clamp(10px, 2.5vw, 18px);
    }

    .cc-sobre-brand .story-logo {
        max-width: min(160px, 42vw);
    }

    .cc-sobre-group {
        font-size: 0.48rem;
        letter-spacing: 0.2em;
    }

    .cc-sobre-copycol .story-copy {
        font-size: clamp(0.58rem, 2.35vw, 0.78rem);
        line-height: 1.55;
        margin-bottom: 12px;
    }

    .cc-sobre-copycol .story-reserve-btn {
        padding: 10px clamp(18px, 5vw, 28px);
        font-size: clamp(0.48rem, 1.85vw, 0.58rem);
        letter-spacing: 0.22em;
    }

    .cc-sobre-gallery-grid img {
        aspect-ratio: 1;
    }

    .cc-sobre-card-wrap {
        margin-top: -18px;
    }

    .cc-sobre-title-shell {
        bottom: clamp(6px, 2vw, 12px);
    }

    .pdf-lodge-hero .cc-sobre-title-shell {
        bottom: clamp(-6px, -1.2vw, -14px);
    }

    .cc-sobre-title {
        font-size: clamp(2.6rem, 14vw, 4.2rem);
    }

    .cc-sobre-hero-decor {
        width: min(68%, 320px);
        top: clamp(-10%, -3.5vw, -1%);
    }

    .cc-sobre-card .cc-sobre-address {
        font-size: 0.72rem;
    }
}
