/* ===== Passeio em Noronha – estilos (mesma base do Barco em Noronha: Jost + azuis do guia) ===== */
:root {
	--marinho: #13293D;
	--azul-medio: #1F5980;
	--azul: #247BA0;
	--azul-vivo: #1B98E0;
	--cinza: #F5F6F8;
	--linha: #EEF1F4;
	--linha-2: #E6EBF0;
	--texto: #4A5563;
	--suave: #5F6B78;
	--azul-texto: #1F5980; /* azul para textos pequenos e links sobre fundo claro (contraste AA) */
	--claro-sobre-marinho: #C9D7E8;
	--sombra: 0 10px 30px rgba(19, 41, 61, .07);
	--fonte: 'Jost', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
/* A palavra grande de fundo nunca pode criar rolagem para o lado */
body { overflow-x: hidden; }
@supports (overflow: clip) { body { overflow-x: clip; } }
.bpn-sec, .bpn-grupo, .bpn-hero, .bpn-emb-topo, .bpn-gostou, .bpn-contato, .bpn-split__txt { overflow-x: clip; }
body { margin: 0; background: #fff; color: var(--marinho); font-family: var(--fonte); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--azul-texto); text-decoration: none; }
a:hover { color: var(--marinho); }
h1, h2, h3, h4 { font-family: var(--fonte); font-weight: 500; color: var(--marinho); }
:focus-visible { outline: 3px solid var(--azul-vivo); outline-offset: 2px; }
.bpn-wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.bpn-skip { position: absolute; left: -9999px; top: 8px; background: var(--marinho); color: #fff; padding: 10px 16px; z-index: 100; }
.bpn-skip:focus { left: 8px; color: #fff; }
.bpn-ic { flex-shrink: 0; }

/* Cabeçalho de seção: rótulo, palavra de fundo e título */
.bpn-hd { position: relative; }
.bpn-hd--centro { text-align: center; }
.bpn-fundo { position: absolute; left: 0; top: 50%; transform: translateY(-56%); font-size: clamp(56px, 9vw, 110px); font-weight: 600; letter-spacing: .04em; text-transform: uppercase; line-height: 1; color: var(--marinho); opacity: .06; white-space: nowrap; pointer-events: none; user-select: none; }
.bpn-hd--centro .bpn-fundo { left: 50%; transform: translate(-50%, -56%); }
.bpn-rotulo { position: relative; font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--azul-texto); }
.bpn-titulo { position: relative; margin: 6px 0 14px; font-size: clamp(26px, 3.2vw, 32px); line-height: 1.2; }
.bpn-titulo--g { font-size: clamp(28px, 3.6vw, 36px); }
.bpn-titulo--caixa { letter-spacing: .04em; }
.bpn-titulo--rotulo { margin: 0; font-size: 12px; line-height: 1.6; }
.bpn-destaque { position: relative; display: block; font-size: clamp(28px, 3.6vw, 38px); font-weight: 500; line-height: 1.15; color: var(--marinho); margin-top: 6px; }
.bpn-destaque--esq { margin: 4px 0 22px; font-size: 30px; }
.bpn-lead { margin: 0 0 24px; color: var(--texto); }
.bpn-centro { text-align: center; max-width: 820px; margin: 0 auto 44px; }
.bpn-centro .bpn-lead { margin: 12px 0 0; }
.bpn-texto p { margin: 0 0 14px; }
.bpn-texto p:last-child { margin-bottom: 0; }
.bpn-texto strong, .bpn-texto b { color: var(--marinho); font-weight: 600; }

/* Fitinha com ícone */
.bpn-fita { width: 54px; height: 62px; background: var(--azul); color: #fff; display: inline-flex; align-items: flex-start; justify-content: center; padding-top: 15px; clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 84%, 0 100%); flex-shrink: 0; }
.bpn-fita--g { width: 60px; height: 70px; padding-top: 18px; }
.bpn-fita--cinza { background: var(--suave); }

/* Botões */
.bpn-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 12px 20px; font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; background: var(--azul-medio); color: #fff; border: 1.5px solid var(--azul-medio); transition: background .2s, border-color .2s, color .2s; }
.bpn-btn:hover { background: var(--marinho); border-color: var(--marinho); color: #fff; }
.bpn-btn--linha { background: transparent; color: var(--marinho); border-color: #C8DFEA; font-size: 11px; padding: 10px 14px; min-height: 44px; }
.bpn-btn--linha:hover { background: transparent; color: var(--azul); border-color: var(--azul); }

/* Faixa do topo */
.bpn-faixa { background: var(--cinza); font-size: 12px; color: var(--texto); }
.bpn-faixa__in { display: flex; flex-wrap: wrap; gap: 4px 24px; padding-top: 8px; padding-bottom: 8px; }
.bpn-faixa b { color: var(--marinho); font-weight: 600; }
.bpn-faixa a { color: var(--texto); }

/* Cabeçalho */
.bpn-topo { position: sticky; top: 0; z-index: 50; background: #fff; border-bottom: 1px solid var(--linha); }
.admin-bar .bpn-topo { top: 32px; }
.bpn-topo__in { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; column-gap: 28px; align-items: stretch; padding-left: 24px; min-height: 72px; }
.bpn-topo__dir { display: contents; }
.bpn-nav { justify-self: center; display: flex; align-items: center; }
.bpn-topo__acoes { justify-self: end; display: flex; align-items: center; gap: 22px; align-self: stretch; }
.bpn-logo { display: flex; align-items: center; gap: 10px; padding: 12px 0; color: var(--marinho); }
.bpn-logo__img { width: auto; max-width: 100%; height: 100px; object-fit: contain; }
.bpn-logo__mark { color: var(--azul); display: flex; }
.bpn-logo__txt { font-size: 17px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }

.bpn-menu { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 0 clamp(14px, 1.4vw, 24px); }
.bpn-menu li { position: relative; }
.bpn-menu a { display: block; padding: 24px 0; color: var(--marinho); font-weight: 500; font-size: 14px; border-bottom: 2px solid transparent; }
.bpn-menu > li > a:hover, .bpn-menu > .current-menu-item > a, .bpn-menu > .current-menu-ancestor > a { color: var(--azul); border-bottom-color: var(--azul); }
.bpn-menu .sub-menu { list-style: none; margin: 0; padding: 8px 0; position: absolute; top: 100%; left: -16px; min-width: 250px; background: #fff; border-top: 2px solid var(--azul); box-shadow: 0 14px 40px rgba(19,41,61,.12); opacity: 0; visibility: hidden; transform: translateY(6px); transition: .15s; z-index: 5; }
.bpn-menu li:hover > .sub-menu, .bpn-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.bpn-menu .sub-menu a { padding: 9px 18px; font-size: 14px; border: 0; }
.bpn-menu .sub-menu a:hover { background: var(--cinza); color: var(--azul); }
.bpn-redes { display: flex; gap: 12px; }
.bpn-redes a { color: var(--azul); display: flex; }
.bpn-redes a:hover { color: var(--marinho); }
.bpn-topo__zap { width: 72px; align-self: stretch; background: var(--azul); color: #fff; display: flex; align-items: center; justify-content: center; }
.bpn-topo__zap:hover { background: var(--azul-medio); color: #fff; }
.bpn-menu-btn { display: none; width: 48px; height: 48px; margin: auto 16px auto auto; border: 0; background: var(--cinza); color: var(--marinho); cursor: pointer; align-items: center; justify-content: center; }

/* Seções */
.bpn-sec { padding: 96px 0; }
.bpn-sec--menor { padding: 64px 0; }
.bpn-sec--cinza { background: var(--cinza); }

/* Topo da Home */
.bpn-hero { position: relative; min-height: 520px; display: flex; align-items: center; background: var(--azul-medio); color: #fff; overflow: hidden; }
.bpn-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bpn-hero::after { content: ""; position: absolute; inset: 0; background: var(--marinho); opacity: .38; }
.bpn-hero__in { position: relative; z-index: 1; width: 100%; text-align: center; padding-top: 88px; padding-bottom: 88px; }
.bpn-hero .bpn-fundo { color: #fff; opacity: .15; }
.bpn-hero .bpn-rotulo { color: #fff; }
.bpn-hero__tit { color: #fff; font-size: clamp(38px, 6vw, 60px); line-height: 1.05; margin: 8px 0 0; }
.bpn-hero__sub { margin: 18px auto 30px; max-width: 560px; color: #E3EEF8; font-size: 18px; }

/* Especialistas */
.bpn-intro { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 56px; align-items: start; }
.bpn-intro__txt { padding-top: 26px; color: var(--texto); font-size: 17px; }
.bpn-intro__txt .bpn-texto { margin-bottom: 26px; }

/* Grupos de embarcações */
.bpn-grupo { background: var(--cinza); border-top: 1px solid var(--linha); }
.bpn-split { display: flex; flex-wrap: wrap; align-items: stretch; background: #fff; }
.bpn-split__foto { flex: 1 1 420px; min-height: 380px; background: var(--azul-medio); position: relative; overflow: hidden; }
.bpn-split__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bpn-split__txt { flex: 1 1 420px; padding: 56px 48px; display: flex; flex-direction: column; justify-content: center; }
.bpn-split__txt > * { max-width: 560px; }
.bpn-split__txt .bpn-fita { margin-bottom: 26px; }
.bpn-split__txt .bpn-lead { margin: 0; }
.bpn-split--dir .bpn-split__foto { order: 3; }
.bpn-grupo__topo { padding-top: 56px; max-width: 868px; text-align: center; }
.bpn-grupo__topo .bpn-lead { margin: 0; }
.bpn-grupo__cards { padding-top: 48px; padding-bottom: 56px; }
.bpn-grupo--escuro { background: var(--marinho); border-top: 0; }
.bpn-grupo--escuro .bpn-split { background: var(--marinho); color: #fff; }
.bpn-grupo--escuro .bpn-titulo { color: #fff; }
.bpn-grupo--escuro .bpn-rotulo { color: #fff; opacity: .8; }
.bpn-grupo--escuro .bpn-fundo { color: #fff; opacity: .07; }
.bpn-grupo--escuro .bpn-lead { color: var(--claro-sobre-marinho); }

/* Cards */
.bpn-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 26px; }
.bpn-card { position: relative; background: #fff; box-shadow: var(--sombra); display: flex; flex-direction: column; }
.bpn-card__foto { display: block; aspect-ratio: 4 / 3; background: var(--azul-medio); overflow: hidden; }
.bpn-card__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.bpn-card:hover .bpn-card__foto img { transform: scale(1.04); }
.bpn-card__topo { position: relative; }
.bpn-card__fita { position: absolute; left: 22px; bottom: -26px; }
.bpn-card__corpo { padding: 44px 22px 22px; display: flex; flex-direction: column; flex-grow: 1; }
.bpn-card__nome { margin: 0 0 12px; font-size: 22px; line-height: 1.2; }
.bpn-card__nome a { color: var(--marinho); }
.bpn-card__nome a:hover { color: var(--azul); }
.bpn-card__linha { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--linha); font-size: 14px; color: var(--texto); }
.bpn-card__linha span { display: flex; align-items: center; gap: 8px; }
.bpn-card__linha .bpn-ic { color: var(--azul); }
.bpn-card__val { color: var(--marinho); text-align: right; font-size: 13px; justify-content: flex-end; }
.bpn-card__rodape { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: auto; padding-top: 18px; }
.bpn-card__preco span { display: block; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--suave); }
.bpn-card__preco strong { font-size: 20px; font-weight: 600; color: var(--azul); white-space: nowrap; }
.bpn-card--simples .bpn-card__corpo { gap: 16px; }
.bpn-card--simples .bpn-card__nome { margin: 0; }
.bpn-card--simples .bpn-card__rodape { margin: 0; padding: 0; justify-content: flex-start; }
.bpn-card--simples .bpn-card__rodape > span:empty { display: none; }

/* Passeios: texto à esquerda, 6 passeios à direita (3 + 3) */
.bpn-sec--borda { border-top: 1px solid var(--linha); }
.bpn-passeios { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 56px; align-items: center; }
.bpn-passeios__lista { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.bpn-passeio { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 150px; padding: 58px 16px 16px; background: #fff; border: 1px solid var(--linha-2); color: var(--marinho); box-shadow: 0 8px 24px rgba(19,41,61,.05); }
.bpn-passeio:hover { border-color: var(--azul); color: var(--marinho); }
.bpn-passeio__fita { position: absolute; top: 0; right: 14px; width: 36px; height: 42px; padding-top: 9px; }
.bpn-passeio__fita .bpn-ic { width: 18px; height: 18px; }
.bpn-passeio__nome { font-size: 17px; font-weight: 500; line-height: 1.2; margin-bottom: 8px; }
.bpn-passeio__ver { font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--azul-texto); }

/* Texto final */
.bpn-seo { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 56px; align-items: start; }
.bpn-seo .bpn-texto { color: var(--texto); }

/* Faixa de contato (Home) – centralizada, sem sobreposição */
.bpn-contato { background: var(--marinho); color: #fff; text-align: center; }
.bpn-contato__in { padding-top: 72px; padding-bottom: 72px; display: block; }
.bpn-contato .bpn-rotulo { color: #fff; opacity: .8; }
.bpn-contato__tit { margin: 8px 0 24px; font-size: clamp(26px, 3.4vw, 38px); font-weight: 500; line-height: 1.15; }
.bpn-telbtn { display: inline-flex; align-items: stretch; border: 1px solid rgba(255,255,255,.35); color: #fff; }
.bpn-telbtn:hover { color: #fff; border-color: #fff; }
.bpn-telbtn__ic { background: var(--azul); width: 54px; display: flex; align-items: center; justify-content: center; }
.bpn-telbtn__txt { padding: 15px 22px; font-size: 18px; font-weight: 500; letter-spacing: .04em; }

/* Rodapé – azul médio do guia, sem títulos, com respiro */
.bpn-rodape { background: var(--azul-medio); color: #fff; font-size: 15px; line-height: 1.6; }
.bpn-rodape__grid { padding-top: 80px; padding-bottom: 56px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 48px; }
.bpn-rodape__col { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
.bpn-rodape__col > a, .bpn-rodape__col > span { display: block; padding: 5px 0; }
.bpn-rodape__col p { margin: 0 0 18px; }
.bpn-rodape__col--marca .bpn-rodape__marca { margin-bottom: 16px; }
.bpn-rodape__col--marca div a { display: inline-block; padding: 3px 0; }
.bpn-rodape__col b { font-weight: 500; }
.bpn-rodape__marca { font-size: 19px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.bpn-rodape__tit { margin: 32px 0 10px; font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.bpn-rodape__tit:first-child { margin-top: 0; }
.bpn-rodape__peq { font-size: 13px; line-height: 1.6; padding-top: 2px; }
.bpn-rodape__selo { max-width: 150px; height: auto; margin: 4px 0 8px; background: #fff; padding: 6px; }
.bpn-redes--circ { gap: 12px; padding: 4px 0; }
.bpn-redes--circ a { width: 44px; height: 44px; border: 1.5px solid #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.bpn-rodape__copy { border-top: 1px solid rgba(255,255,255,.25); padding-top: 24px; padding-bottom: 30px; font-size: 13px; }
.bpn-zap-flutuante { display: inline-flex; position: fixed; right: 24px; bottom: 24px; z-index: 60; width: 58px; height: 58px; border-radius: 50%; background: #25D366; color: #fff; align-items: center; justify-content: center; box-shadow: 0 8px 24px rgba(0,0,0,.25); }
.bpn-zap-flutuante:hover { color: #fff; background: #1EBE5A; }

/* Página da embarcação */
.bpn-emb-topo { background: var(--marinho); color: #fff; text-align: center; padding: 80px 0 150px; }
.bpn-emb-topo .bpn-fundo { color: #fff; opacity: .07; }
.bpn-emb-topo .bpn-rotulo { color: var(--azul-vivo); }
.bpn-emb-topo__tit { color: #fff; font-size: clamp(38px, 5vw, 56px); line-height: 1.05; margin: 6px 0 24px; }
.bpn-emb-ficha { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); margin-top: -90px; position: relative; }
.bpn-emb-ficha__foto { position: relative; min-height: 520px; background: var(--azul-medio); overflow: hidden; }
.bpn-emb-ficha__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bpn-emb-ficha__txt { background: #fff; padding: 0 48px 56px; }
.bpn-emb-ficha__txt .bpn-fita { margin-bottom: 30px; }
.bpn-ficha { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; max-width: 560px; }
.bpn-ficha__item { display: flex; justify-content: space-between; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--linha); font-size: 14px; }
.bpn-ficha__item span { display: flex; align-items: center; gap: 8px; color: var(--suave); text-transform: uppercase; font-size: 12px; letter-spacing: .06em; }
.bpn-ficha__item .bpn-ic { color: var(--azul); }
.bpn-ficha__item b { font-weight: 500; color: var(--marinho); text-align: right; }
.bpn-galeria { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 200px; gap: 8px; }
.bpn-galeria__item { position: relative; display: block; background: var(--azul-medio); overflow: hidden; }
.bpn-galeria__item img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.bpn-galeria__item:hover img { transform: scale(1.04); }
.bpn-galeria__item--grande { grid-column: span 2; grid-row: span 2; }
.bpn-galeria__item--oculto { display: none; }
.bpn-galeria__mais { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(19,41,61,.55); color: #fff; font-weight: 500; font-size: 18px; }
.bpn-sobre { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 48px; align-items: start; }
.bpn-lista-check ul, .bpn-lista-xis ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
.bpn-sobre .bpn-lista-check ul { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 18px 28px; }
.bpn-lista-check li, .bpn-lista-xis li { position: relative; padding-left: 36px; font-weight: 500; color: var(--marinho); min-height: 24px; }
.bpn-lista-xis li { font-weight: 400; color: var(--texto); }
.bpn-lista-check li::before, .bpn-lista-xis li::before { content: ""; position: absolute; left: 0; top: 1px; width: 24px; height: 24px; background-repeat: no-repeat; background-size: 24px; }
.bpn-lista-check li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23247BA0' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8 12.5l2.5 2.5L16 9.5'/%3E%3C/svg%3E"); }
.bpn-lista-xis li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238A99A5' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9 9l6 6M15 9l-6 6'/%3E%3C/svg%3E"); }
.bpn-rota { list-style: none; margin: 0 0 32px; padding: 0; position: relative; display: flex; flex-wrap: wrap; gap: 24px 0; }
.bpn-rota::before { content: ""; position: absolute; left: 4%; right: 4%; top: 9px; height: 2px; background: #DCE3EA; }
.bpn-rota li { flex: 1 1 90px; display: flex; flex-direction: column; align-items: center; gap: 8px; font-size: 13px; text-align: center; }
.bpn-rota li span { position: relative; width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 2px solid var(--azul); }
.bpn-trajeto { color: var(--texto); max-width: 900px; margin: 0 auto; text-align: center; }
.bpn-trajeto strong { display: block; margin-top: 18px; background: #E6F1F6; padding: 16px 22px; color: var(--marinho); font-weight: 600; }
.bpn-inclusos { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 26px; }
.bpn-incluso { position: relative; background: #fff; padding: 34px; }
.bpn-incluso__fita { position: absolute; top: 0; right: 26px; width: 44px; height: 52px; padding-top: 13px; }
.bpn-incluso__fita .bpn-ic { width: 20px; height: 20px; }
.bpn-incluso .bpn-titulo { margin-top: 0; font-size: 26px; }
.bpn-info { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 40px; color: var(--texto); font-size: 15px; }
.bpn-info__tit { position: relative; margin: 0; font-size: 30px; letter-spacing: .04em; color: var(--marinho); }
.bpn-info__tit strong { font-weight: 500; }
.bpn-gostou { background: var(--marinho); color: #fff; padding: 72px 0; }
.bpn-gostou__topo { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 36px; }
.bpn-gostou .bpn-fundo { color: #fff; opacity: .07; }
.bpn-gostou__tit { position: relative; margin: 0; font-size: clamp(26px, 3.2vw, 36px); font-weight: 500; line-height: 1.15; }
.bpn-pag { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.bpn-pag li { border: 1px solid var(--azul-medio); padding: 20px; display: flex; align-items: center; gap: 16px; color: #E3EEF8; font-size: 15px; }
.bpn-pag__sigla { width: 52px; height: 52px; background: var(--azul); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; letter-spacing: .06em; flex-shrink: 0; }
.bpn-gostou__aviso { margin: 18px 0 0; font-size: 13px; color: #A9BED3; }
.bpn-rel { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 26px; }
.bpn-rel__bloco { position: relative; background: var(--cinza); padding: 44px 34px 34px; }
.bpn-rel__bloco p { margin: 0 0 20px; color: var(--texto); }
.bpn-rel__bloco .bpn-titulo { font-size: 24px; margin-top: 0; padding-right: 60px; }
.bpn-rel__fita { position: absolute; top: 0; right: 28px; }
.bpn-rel__bloco--escuro { background: var(--marinho); }
.bpn-rel__bloco--escuro .bpn-titulo { color: #fff; }
.bpn-rel__bloco--escuro p { color: var(--claro-sobre-marinho); }
.bpn-rel__bloco--escuro .bpn-btn--linha { color: #fff; border-color: rgba(255,255,255,.4); }
.bpn-rel__bloco--escuro .bpn-btn--linha:hover { color: #fff; border-color: #fff; }

/* Páginas comuns e Elementor */
.bpn-pagina { padding-top: 56px; padding-bottom: 80px; }
.bpn-pagina__tit { margin: 0 0 24px; font-size: clamp(32px, 4.4vw, 46px); line-height: 1.1; }
.bpn-pagina__txt { max-width: 760px; color: var(--texto); font-size: 17px; }
.bpn-pagina__txt ul, .bpn-pagina__txt ol { padding-left: 22px; }
.bpn-elementor .bpn-pagina { max-width: none; padding: 0; }
.bpn-lista { display: grid; gap: 12px; }
.bpn-lista__item { display: flex; flex-direction: column; gap: 4px; padding: 18px; border: 1px solid var(--linha-2); color: var(--texto); }
.bpn-404 p { color: var(--texto); font-size: 18px; margin: 0 0 24px; }
.bpn-botoes { display: flex; flex-wrap: wrap; gap: 12px; }
.bpn-btn--marinho { background: var(--marinho); border-color: var(--marinho); }
.bpn-btn--azul { }

/* Lightbox */
.bpn-lb { position: fixed; inset: 0; z-index: 200; background: rgba(10,22,34,.93); display: flex; align-items: center; justify-content: center; padding: 24px; }
.bpn-lb[hidden] { display: none; }
.bpn-lb img { max-width: 100%; max-height: 86vh; }
.bpn-lb button { position: absolute; width: 52px; height: 52px; border: 0; border-radius: 50%; background: rgba(255,255,255,.14); color: #fff; font-size: 26px; cursor: pointer; }
.bpn-lb button:hover { background: rgba(255,255,255,.26); }
.bpn-lb__fechar { top: 16px; right: 16px; }
.bpn-lb__ant { left: 16px; top: 50%; transform: translateY(-50%); }
.bpn-lb__prox { right: 16px; top: 50%; transform: translateY(-50%); }
.bpn-lb__cont { position: absolute; bottom: 18px; left: 0; right: 0; text-align: center; color: var(--claro-sobre-marinho); font-size: 14px; }

/* ===== Tablet e celular ===== */
@media (max-width: 1240px) {
	.bpn-menu-btn { display: inline-flex; }
	.bpn-topo__in { display: flex; flex-wrap: wrap; position: relative; padding-right: 0; }
	.bpn-topo__dir { display: none; width: 100%; flex-direction: column; align-items: stretch; gap: 0; padding: 0 24px 20px; }
	.bpn-nav { display: block; }
	.bpn-menu { justify-content: flex-start; }
	.bpn-topo__acoes { flex-direction: column; align-items: stretch; gap: 0; }
	.bpn-topo__dir.is-aberto { display: flex; }
	.bpn-menu { flex-direction: column; }
	.bpn-menu > li { border-bottom: 1px solid var(--linha); }
	.bpn-menu a { padding: 13px 0; font-size: 16px; border: 0; }
	.bpn-menu .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; padding: 0 0 8px 14px; min-width: 0; display: none; }
	.bpn-menu li.is-aberto > .sub-menu { display: block; }
	.bpn-redes { padding: 16px 0; }
	.bpn-topo__zap { width: 100%; height: 50px; }
	.bpn-faixa__in span:first-child { display: none; }
}
@media (max-width: 782px) { .admin-bar .bpn-topo { top: 0; } }
@media (max-width: 1180px) and (min-width: 721px) { .bpn-rodape__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.bpn-rodape a, .bpn-rodape span { overflow-wrap: anywhere; }
@media (max-width: 720px) {
	.bpn-sec { padding: 64px 0; }
	.bpn-hero { min-height: 440px; }
	.bpn-split__txt, .bpn-emb-ficha__txt { padding: 40px 24px; }
	.bpn-split__foto { min-height: 260px; }
	.bpn-emb-ficha { margin-top: -70px; }
	.bpn-emb-ficha__foto { min-height: 300px; }
	.bpn-ficha { grid-template-columns: 1fr; }
	.bpn-galeria { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 140px; }
	.bpn-galeria__item:nth-child(n+4) { display: none; }
	.bpn-rota { flex-direction: column; align-items: flex-start; gap: 14px; padding-left: 4px; }
	.bpn-rota::before { left: 13px; right: auto; top: 6px; bottom: 6px; width: 2px; height: auto; }
	.bpn-rota li { flex: none; flex-direction: row; align-items: center; text-align: left; }
	.bpn-faixa { display: none; }
	.bpn-zap-flutuante { right: 16px; bottom: 16px; }
	.bpn-fundo { display: none; } /* no celular a palavra de fundo encavala no título */
	.bpn-logo { min-width: 0; flex: 1 1 auto; }
	.bpn-logo__txt { font-size: 15px; letter-spacing: .08em; }
	.bpn-menu-btn { flex-shrink: 0; }
	.bpn-intro { gap: 20px; }
	.bpn-intro__txt { padding-top: 0; }
	.bpn-rodape { padding-bottom: 80px; } /* espaço para o botão flutuante do WhatsApp */

	.bpn-passeios__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bpn-rodape__grid { grid-template-columns: 1fr 1fr; gap: 40px 24px; padding-top: 56px; }
	.bpn-rodape__col--marca, .bpn-rodape__col:last-child { grid-column: 1 / -1; }
	.bpn-rodape__col > a, .bpn-rodape__col > span { padding: 7px 0; } /* toque confortável */
	.bpn-logo__img { height: 68px !important; }
}

/* Áreas dos plugins (depoimentos e Instagram) não podem vazar para o resto da página */
.bpn-depoimentos, .bpn-insta { overflow: hidden; }

/* Proteção: o kit global do Elementor não muda as cores e a fonte do tema */
html body .bpn-topo a, html body .bpn-faixa a, html body .bpn-rodape a, body main a.bpn-btn, body main .bpn-card a, body main a.bpn-passeio { font-family: var(--fonte); }
html body .bpn-menu a { color: var(--marinho); }
html body .bpn-menu > li > a:hover, html body .bpn-menu > .current-menu-item > a { color: var(--azul-texto); }
html body .bpn-redes a { color: var(--azul-texto); }
html body .bpn-rodape, html body .bpn-rodape a, html body .bpn-rodape span, html body .bpn-rodape p { color: #FFFFFF; }
html body .bpn-rodape a { text-decoration: none; }
html body .bpn-rodape a:hover, html body .bpn-rodape a:focus-visible { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
html body .bpn-rodape .bpn-rodape__copy, html body .bpn-rodape .bpn-rodape__peq { color: #E6EEF5; }
html body .bpn-rodape .bpn-rodape__peq a, html body .bpn-rodape .bpn-rodape__mais { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
html body .bpn-rodape__tit, html body .bpn-rodape__marca, html body .bpn-rodape__col b { color: #fff; }
html body .bpn-redes--circ a { color: #fff; }
html body .bpn-redes--circ a:hover { color: var(--azul-medio); background: #fff; text-decoration: none; }
html body a.bpn-btn, html body a.bpn-btn:hover { color: #fff; }
html body a.bpn-btn--linha { color: var(--marinho); }
html body a.bpn-btn--linha:hover { color: var(--azul-texto); }
html body .bpn-rel__bloco--escuro a.bpn-btn--linha { color: #fff; }
html body a.bpn-telbtn, html body a.bpn-telbtn:hover { color: #fff; }
html body a.bpn-topo__zap, html body a.bpn-topo__zap:hover { color: #fff; }
html body .bpn-card__nome a { color: var(--marinho); }
html body a.bpn-passeio { color: var(--marinho); }
html body .bpn-faixa a { color: var(--texto); }
html body .bpn-titulo { color: var(--marinho); font-family: var(--fonte); }
html body .bpn-hero .bpn-titulo, html body .bpn-emb-topo .bpn-titulo, html body .bpn-grupo--escuro .bpn-titulo, html body .bpn-rel__bloco--escuro .bpn-titulo { color: #fff; }
html body .bpn-titulo--rotulo { color: var(--azul-texto); }
html body a.bpn-logo, html body a.bpn-logo:hover { color: var(--marinho); }
html body .bpn-titulo.bpn-titulo--rotulo { color: var(--azul-texto); }
html body a.bpn-skip, html body a.bpn-skip:focus { color: #fff; }

/* ===== Página da embarcação – estilo "Single Yacht" ===== */
.bpn-btn--claro { background: #fff; border-color: #fff; color: var(--marinho); }
.bpn-btn--claro:hover { background: var(--azul-claro, #E6F1F6); border-color: #E6F1F6; color: var(--marinho); }
html body a.bpn-btn.bpn-btn--claro, html body a.bpn-btn.bpn-btn--claro:hover { color: var(--marinho); }
.bpn-emb-topo .bpn-rotulo { color: #fff; opacity: .85; }
.bpn-emb-ficha__txt { display: flex; flex-direction: column; align-items: flex-start; }
.bpn-ficha-lista { list-style: none; margin: 0 0 28px; padding: 0; width: 100%; max-width: 560px; }
.bpn-ficha-lista li { display: flex; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--linha); font-size: 17px; color: var(--marinho); }
.bpn-ficha-lista li .bpn-ic { color: var(--azul); }
.bpn-valores { width: 100%; max-width: 560px; background: var(--cinza); padding: 22px 24px; }
.bpn-valores .bpn-rotulo { margin-bottom: 8px; }
.bpn-valores__linha { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 6px 0; font-size: 16px; color: var(--texto); }
.bpn-valores__linha strong { font-size: 26px; font-weight: 600; color: var(--marinho); white-space: nowrap; font-variant-numeric: tabular-nums; }
.bpn-valores__linha + .bpn-valores__linha strong { font-size: 20px; }
.bpn-galeria3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.bpn-galeria3__item { position: relative; display: block; aspect-ratio: 1 / 1; overflow: hidden; background: var(--azul-medio); }
.bpn-galeria3__item img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.bpn-galeria3__item:hover img { transform: scale(1.04); }
.bpn-galeria3__item--oculto { display: none; }
.bpn-traj { max-width: 900px; }
.bpn-traj__card { position: relative; border: 1px solid var(--linha-2); padding: 48px 48px 40px; box-shadow: var(--sombra); background: #fff; }
.bpn-traj__fita { position: absolute; top: 0; right: 32px; }
.bpn-traj .bpn-trajeto { text-align: left; margin: 0; font-size: 17px; }
.bpn-traj .bpn-titulo { padding-right: 70px; }
.bpn-gostou { text-align: center; }
.bpn-gostou__tit { margin: 0 0 24px; }
.bpn-gostou .bpn-telbtn { margin-bottom: 40px; }
.bpn-pag { text-align: left; }
.bpn-rel__bloco .bpn-titulo { font-size: 22px; }
.bpn-info .bpn-titulo, .bpn-sobre .bpn-titulo { margin-bottom: 24px; }
@media (max-width: 720px) {
	.bpn-traj__card { padding: 40px 22px 28px; }
	.bpn-galeria3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bpn-valores__linha strong { font-size: 22px; }
	.bpn-ficha-lista li { font-size: 16px; }
}

/* Formas de pagamento junto do preço, menor e em bloco separado */
.bpn-pagto { width: 100%; max-width: 560px; margin-top: 12px; padding: 14px 18px; border: 1px solid var(--linha-2); font-size: 13px; color: var(--texto); }
.bpn-pagto__lista { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 18px; }
.bpn-pagto__lista li { display: flex; align-items: center; gap: 6px; }
.bpn-pagto__lista .bpn-ic { color: var(--azul); }
.bpn-pagto__aviso { margin: 10px 0 0; font-size: 12px; line-height: 1.5; color: var(--suave); }
.bpn-gostou .bpn-telbtn { margin-bottom: 0; }

/* ===== Página de passeio ===== */
.bpn-emb-ficha__foto > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bpn-emb-ficha__txt .bpn-hd { width: 100%; }
.bpn-passeio-desc { color: var(--texto); font-size: 16px; max-width: 600px; }
.bpn-passeio-intro { color: var(--texto); max-width: 820px; }
.bpn-galeria3__item img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bpn-opcoes { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 26px; max-width: 980px; margin: 0 auto; }
.bpn-opcao { position: relative; background: #fff; padding: 44px 30px 30px; box-shadow: var(--sombra); }
.bpn-opcao__fita { position: absolute; top: 0; right: 26px; width: 44px; height: 52px; padding-top: 12px; }
.bpn-opcao__fita .bpn-ic { width: 20px; height: 20px; }
.bpn-opcao__tit { margin: 0 0 16px; font-size: 22px; padding-right: 56px; }
.bpn-opcao .bpn-texto { color: var(--texto); }
.bpn-opcao ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.bpn-opcao li { position: relative; padding-left: 30px; color: var(--marinho); }
.bpn-opcao li::before { content: ""; position: absolute; left: 0; top: 2px; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23247BA0' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8 12.5l2.5 2.5L16 9.5'/%3E%3C/svg%3E") no-repeat; background-size: 20px; }
.bpn-pagto--centro { margin: 26px auto 0; max-width: 980px; background: #fff; }
.bpn-passeio-sec { max-width: 980px; display: grid; gap: 26px; }
.bpn-passeio-sec--duas { grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); align-items: start; }
.bpn-quadro { background: var(--cinza); padding: 26px 28px; border-left: 0; }
.bpn-sec--cinza .bpn-quadro { background: #fff; }
.bpn-quadro__tit { margin: 0 0 14px; color: var(--marinho); font-size: 17px; }
.bpn-quadro .bpn-lista-check ul { gap: 12px; }
.bpn-quadro .bpn-lista-check li { font-weight: 400; color: var(--texto); }
.bpn-emb-ficha__txt .bpn-quadro { margin-top: 20px; width: 100%; max-width: 600px; }
.bpn-passeio-sec .bpn-trajeto { text-align: left; margin: 0; max-width: none; }

.bpn-opcao__preco { margin: -4px 0 20px; padding-bottom: 18px; border-bottom: 1px solid var(--linha); display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; }
.bpn-opcao__preco strong { font-size: 34px; line-height: 1.1; font-weight: 600; color: var(--azul); font-variant-numeric: tabular-nums; }
.bpn-opcao__preco span { font-size: 15px; color: var(--texto); }
.bpn-opcao li strong { color: var(--marinho); font-weight: 600; }
/* Palavra de fundo menor dentro de cartões */
.bpn-traj__card .bpn-fundo, .bpn-emb-ficha__txt .bpn-fundo { font-size: clamp(40px, 5vw, 64px); }

/* ===== Página de trajetos ===== */
.bpn-traj-intro { max-width: 820px; margin: 0 auto; text-align: center; color: var(--texto); font-size: 18px; }
.bpn-traj-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 26px; }
.bpn-traj-card { position: relative; background: #fff; padding: 48px 36px 36px; box-shadow: var(--sombra); }
.bpn-traj-card__fita { position: absolute; top: 0; right: 30px; }
.bpn-traj-card .bpn-titulo { margin-top: 0; padding-right: 64px; }
.bpn-traj-card .bpn-texto { color: var(--texto); font-size: 16px; }
.bpn-traj-card--escuro { background: var(--marinho); }
.bpn-traj-card--escuro .bpn-texto, .bpn-traj-card--escuro .bpn-texto p { color: #DCE6F0; }
.bpn-traj-card--escuro .bpn-texto strong { color: #fff; }
html body .bpn-traj-card--escuro .bpn-titulo { color: #fff; }
.bpn-traj-final { margin-bottom: 40px; }
.bpn-traj-mapa { margin: 0 auto; max-width: 1000px; box-shadow: var(--sombra); }
.bpn-traj-mapa img { width: 100%; height: auto; display: block; }
.bpn-traj-cta { text-align: center; margin-top: 36px; }
@media (max-width: 720px) { .bpn-traj-card { padding: 44px 22px 26px; } .bpn-traj-intro { font-size: 16px; } }

.bpn-emb-topo--simples { padding-bottom: 80px; }

.bpn-passeio-cta { margin: 20px 0 8px; }
.bpn-pagto__aviso p { margin: 0; }
.bpn-traj__card img, .bpn-passeio-sec img { max-width: 100%; height: auto; margin: 16px 0; }
.bpn-opcoes { grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); max-width: 1180px; }
.bpn-opcoes--2 { max-width: 980px; }

/* Opção sem preço (ex.: "Todos os passeios incluem") ocupa a linha toda */
.bpn-opcao--geral { grid-column: 1 / -1; background: transparent; box-shadow: none; border: 1px solid var(--linha-2); padding: 28px 30px; }
.bpn-opcao--geral ul { grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); column-gap: 28px; }

/* Colunas dos cards de valores conforme a quantidade de opções (sem card sobrando sozinho) */
.bpn-opcoes--n1 { grid-template-columns: minmax(0, 560px); justify-content: center; }
.bpn-opcoes--n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 980px; }
.bpn-opcoes--n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bpn-opcoes--n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1100px) { .bpn-opcoes--n3, .bpn-opcoes--n4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) { .bpn-opcoes--n2, .bpn-opcoes--n3, .bpn-opcoes--n4 { grid-template-columns: 1fr; } }

/* ===== Página informativa (ex.: Taxas) ===== */
.bpn-info-resumo { max-width: 760px; margin: 18px auto 0; color: #DCE6F0; font-size: 18px; }
.bpn-info-resumo p { margin: 0; }
.bpn-info-resumo strong { color: #fff; font-weight: 500; }
.bpn-info-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 26px; align-items: start; }
.bpn-info-card { position: relative; background: #fff; padding: 48px 36px 36px; box-shadow: var(--sombra); }
.bpn-info-card__fita { position: absolute; top: 0; right: 30px; }
.bpn-info-card .bpn-titulo { margin-top: 0; padding-right: 64px; }
.bpn-info-card .bpn-texto { color: var(--texto); }
.bpn-info-card .bpn-texto a:not(.bpn-btn) { color: var(--azul-texto); text-decoration: underline; text-underline-offset: 3px; font-weight: 500; }
.bpn-valor { font-size: 1.2em; font-weight: 600; color: var(--azul-medio); white-space: nowrap; }
.bpn-info-card .bpn-texto p { line-height: 1.75; }
.bpn-info-quadros { max-width: 980px; display: grid; gap: 26px; }
.bpn-info-quadro { border: 1px solid var(--linha-2); padding: 36px; }
.bpn-info-quadro .bpn-titulo { margin-top: 0; font-size: 24px; }
.bpn-info-quadro .bpn-texto { color: var(--texto); }
.bpn-info-quadro .bpn-lista-check { margin-bottom: 18px; }
.bpn-info-quadro .bpn-lista-check li { font-weight: 400; color: var(--texto); }
@media (max-width: 720px) { .bpn-info-card { padding: 44px 22px 26px; } .bpn-info-quadro { padding: 26px 20px; } .bpn-info-resumo { font-size: 16px; } }
.bpn-info-card .bpn-info-quadro { margin-top: 26px; padding: 28px; background: var(--cinza); border: 0; }
/* Página informativa: um card embaixo do outro */
.bpn-info-cards { grid-template-columns: 1fr; max-width: 900px; }

.bpn-info-botao { margin: 24px 0 0; }
.bpn-info-imgs { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }
.bpn-info-imgs a { display: block; max-width: 520px; box-shadow: var(--sombra); }
.bpn-info-imgs img { display: block; width: 100%; height: auto; }

/* ===== Página Sobre ===== */
.bpn-sobre-h1 { font-size: clamp(30px, 4.4vw, 48px); max-width: 900px; margin-left: auto; margin-right: auto; text-wrap: balance; }
.bpn-sobre-abre { max-width: 820px; }
.bpn-sobre-abre__txt { color: var(--texto); font-size: 18px; }
.bpn-sobre-abre--foto { max-width: 1180px; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 48px; align-items: center; }
.bpn-sobre-abre__foto img { width: 100%; height: auto; display: block; }
.bpn-sobre-bloco { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 40px 56px; align-items: start; }
.bpn-sobre-bloco__fita { margin-bottom: 22px; }
.bpn-sobre-bloco .bpn-titulo { margin: 0; font-size: clamp(26px, 3.2vw, 34px); }
.bpn-sobre-bloco__txt { color: var(--texto); font-size: 17px; }
.bpn-sobre-bloco__txt .bpn-lista-check ul { gap: 14px; }
.bpn-sobre-bloco__txt .bpn-lista-check li { font-weight: 400; color: var(--texto); }
.bpn-sobre-convite .bpn-titulo { color: #fff; margin: 0 0 16px; }
.bpn-sobre-convite .bpn-texto { color: #DCE6F0; max-width: 680px; margin: 0 auto 28px; font-size: 17px; }

/* ===== Páginas por blocos (3.0) ===== */
.bpn-texto, .bpn-quadro, .bpn-info-card, .bpn-opcao { overflow-wrap: anywhere; }
.bpn-quadro--grande { width: 100%; max-width: 980px; padding: 30px 32px; box-sizing: border-box; }
.bpn-quadro--grande .bpn-texto > p:first-child { margin-bottom: 14px; color: var(--marinho); }
.bpn-quadro--grande .bpn-lista-check li { font-weight: 400; color: var(--texto); }
@media (max-width: 720px) { .bpn-quadro--grande { padding: 24px 20px; } }
.bpn-opcao__sub { margin: -6px 0 10px; color: var(--suave); font-size: 15px; }
.bpn-opcao__btn { margin: 22px 0 0; }
.bpn-opcao .bpn-texto > p { margin-top: 14px; }
.bpn-opcao--tabela .bpn-texto { text-align: center; }
.bpn-opcao--tabela .bpn-valor, .bpn-valores__tabela .bpn-valor { color: var(--marinho); font-weight: 600; }
.bpn-valores__tabela { font-size: 15px; }
.bpn-valores__tabela p { margin: 0 0 10px; }
.bpn-pagto__cond { font-size: 14px; color: var(--suave); margin-top: 8px; }
.bpn-pagto__cond ul { list-style: none; margin: 0; padding: 0; }
.bpn-pagto__aviso p { margin: 6px 0 0; }
.bpn-emb-topo--outro { margin-top: 70px; }
.bpn-passeios__lista--larga { max-width: 1080px; margin: 34px auto 0; }
.bpn-html { overflow: hidden; }
.bpn-html iframe { max-width: 100%; }
.bpn-info-img { margin: 0 auto; max-width: 820px; text-align: center; }
.bpn-info-img img, .bpn-traj-mapa img { max-width: 100%; height: auto; }
.bpn-sobre-abre--fotos { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.bpn-sobre-fotos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.bpn-sobre-fotos a:first-child { grid-column: 1 / -1; }
.bpn-sobre-fotos img { width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.bpn-sobre-fotos--n1 { grid-template-columns: 1fr; }
@media (max-width: 900px) { .bpn-sobre-abre--fotos { grid-template-columns: 1fr; gap: 28px; } }
.bpn-trajeto li strong, .bpn-trajeto .bpn-lista-check strong, .bpn-passeio-sec .bpn-trajeto p > strong:not(:last-child), .bpn-passeio-sec .bpn-trajeto p > strong:only-child { display: inline; margin: 0; background: none; padding: 0; }
.bpn-blocos--sobre .bpn-info-img { max-width: 460px; }
.bpn-texto .bpn-lista-check { margin: 12px 0 16px; } .bpn-texto .bpn-lista-check:last-child { margin-bottom: 0; }
.bpn-passeio-abre { padding-bottom: 20px; }
.bpn-passeio-abre__in .bpn-passeio-desc, .bpn-passeio-abre__in .bpn-titulo { max-width: 860px; }
.bpn-passeio-abre__fita { margin-bottom: 18px; }
.bpn-passeio-abre .bpn-passeio-desc { color: var(--texto); font-size: 17px; }
.bpn-passeio-abre + .bpn-sec--menor { padding-top: 10px; }

/* ===== Carrossel de fotos ===== */
.bpn-carrossel { position: relative; }
.bpn-carrossel__trilho { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.bpn-carrossel__trilho::-webkit-scrollbar { display: none; }
.bpn-carrossel__item { flex: 0 0 calc((100% - 20px) / 3); aspect-ratio: 4 / 3; position: relative; overflow: hidden; background: var(--azul-medio); scroll-snap-align: start; display: block; }
.bpn-carrossel__item img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.bpn-carrossel__item:hover img { transform: scale(1.04); }
.bpn-carrossel__seta { position: absolute; top: calc(50% - 20px); transform: translateY(-50%); width: 46px; height: 46px; border-radius: 50%; border: 0; background: #fff; color: var(--marinho); box-shadow: 0 4px 18px rgba(19, 41, 61, .22); display: flex; align-items: center; justify-content: center; cursor: pointer; z-index: 2; transition: opacity .2s; }
.bpn-carrossel__seta--ant { left: -18px; }
.bpn-carrossel__seta--ant svg { transform: rotate(180deg); }
.bpn-carrossel__seta--prox { right: -18px; }
.bpn-carrossel__seta:hover { background: var(--marinho); color: #fff; }
.bpn-carrossel__seta[disabled] { opacity: 0; pointer-events: none; }
.bpn-carrossel__dica { margin: 12px 0 0; font-size: 13px; color: var(--suave); text-align: center; }
.bpn-carrossel--poucas .bpn-carrossel__seta, .bpn-carrossel--poucas .bpn-carrossel__dica { display: none; }
@media (max-width: 900px) { .bpn-carrossel__item { flex-basis: calc((100% - 10px) / 2); } }
@media (max-width: 600px) {
	.bpn-carrossel__item { flex-basis: 84%; }
	.bpn-carrossel__seta { display: none; }
	.bpn-carrossel--poucas .bpn-carrossel__dica { display: block; }
}
@media (min-width: 601px) { .bpn-carrossel__dica { display: none; } }

/* Página da embarcação: fotos sobre a faixa + ficha e valores lado a lado */
.bpn-emb-fotos { margin-top: -90px; position: relative; z-index: 2; }
.bpn-emb-resumo__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.bpn-emb-resumo__ficha .bpn-fita { margin-bottom: 20px; }
.bpn-emb-resumo__ficha .bpn-ficha-lista { max-width: none; margin-bottom: 0; }
.bpn-emb-resumo__valores .bpn-valores { margin-top: 0; }
@media (max-width: 860px) { .bpn-emb-resumo__grid { grid-template-columns: 1fr; gap: 28px; } .bpn-emb-fotos { margin-top: -70px; } }
.bpn-blocos--passeio .bpn-emb-topo--passeio:not(:has(+ .bpn-emb-fotos)) { padding-bottom: 80px; }
/* Ficha da embarcação em bloco fechado */
.bpn-emb-resumo__ficha { position: relative; background: #fff; border: 1px solid var(--linha-2); box-shadow: var(--sombra); padding: 26px 30px 18px; }
.bpn-emb-resumo__ficha > .bpn-fita { position: absolute; top: -1px; right: 24px; margin: 0; }
.bpn-emb-resumo__ficha .bpn-ficha-lista li:first-child { padding-right: 70px; }
.bpn-emb-resumo__ficha .bpn-ficha-lista li:last-child { border-bottom: 0; }
@media (max-width: 600px) { .bpn-emb-resumo__ficha { padding: 22px 20px 12px; } .bpn-emb-resumo__ficha .bpn-ficha-lista li:first-child { padding-right: 64px; } }
.bpn-emb-fotos + .bpn-passeio-abre { padding-top: 56px; }
/* Texto inicial dos passeios em bloco fechado */
.bpn-passeio-abre__card { position: relative; background: #fff; border: 1px solid var(--linha-2); box-shadow: var(--sombra); padding: 44px 52px 40px; }
.bpn-passeio-abre__card > .bpn-passeio-abre__fita { position: absolute; top: -1px; right: 32px; margin: 0; }
.bpn-passeio-abre__card .bpn-hd, .bpn-passeio-abre__card .bpn-titulo { padding-right: 70px; max-width: none; }
.bpn-passeio-abre__card .bpn-passeio-desc { max-width: none; }
.bpn-passeio-abre__card .bpn-passeio-desc p { break-inside: avoid; }
@media (max-width: 600px) { .bpn-passeio-abre__card { padding: 30px 20px 26px; } .bpn-passeio-abre__card > .bpn-passeio-abre__fita { right: 18px; } .bpn-passeio-abre__card .bpn-hd, .bpn-passeio-abre__card .bpn-titulo { padding-right: 56px; } }
@media (max-width: 600px) { .bpn-passeio-abre__card > .bpn-passeio-abre__fita { position: static; margin: -31px 0 16px; } .bpn-passeio-abre__card .bpn-hd, .bpn-passeio-abre__card .bpn-titulo { padding-right: 0; } }

/* Cabeçalho centralizado: logo, menu e ícones juntos no meio */
@media (min-width: 1241px) {
	.bpn-topo__in { display: flex; justify-content: center; align-items: stretch; column-gap: clamp(28px, 3vw, 56px); max-width: 1320px; margin: 0 auto; padding: 0 24px; }
	.bpn-nav { flex: 0 1 auto; }
	.bpn-topo__acoes { gap: 18px; }
	.bpn-topo__zap { width: 56px; height: 56px; align-self: center; }
}

/* Barcos coletivos: 4 por linha, cards menores */
.bpn-grade--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.bpn-grade--4 .bpn-card__corpo { padding: 38px 16px 16px; }
.bpn-grade--4 .bpn-card__fita { left: 16px; bottom: -22px; width: 46px; height: 54px; padding-top: 12px; }
.bpn-grade--4 .bpn-card__nome { font-size: 18px; }
.bpn-grade--4 .bpn-card__linha { font-size: 13px; flex-wrap: wrap; gap: 2px 8px; }
.bpn-grade--4 .bpn-card__preco strong { font-size: 18px; }
.bpn-grade--4 .bpn-card__rodape { flex-wrap: wrap; }
.bpn-grade--4 .bpn-btn { padding: 10px 14px; font-size: 11px; }
@media (max-width: 1000px) { .bpn-grade--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) {
	.bpn-grade--4 { gap: 12px; }
	.bpn-grade--4 .bpn-card__corpo { padding: 32px 12px 14px; }
	.bpn-grade--4 .bpn-card__nome { font-size: 16px; }
	.bpn-grade--4 .bpn-card__linha { flex-direction: column; align-items: flex-start; font-size: 12px; }
	.bpn-grade--4 .bpn-card__val { text-align: left; }
	.bpn-grade--4 .bpn-card__rodape { flex-direction: column; align-items: stretch; gap: 10px; }
	.bpn-grade--4 .bpn-btn { justify-content: center; }
}

/* Ajustes 3.2 */
/* Topo mais alto, com respiro em volta do logo */
.bpn-topo__in { min-height: 92px; }
.bpn-logo { padding: 10px 0; }
@media (min-width: 1241px) { .bpn-logo { padding: 10px 8px; } }
/* Foto do topo da Home com camada escura para ler o texto */
.bpn-hero::after { background: linear-gradient(180deg, rgba(0, 0, 0, .64) 0%, rgba(0, 0, 0, .52) 50%, rgba(0, 0, 0, .64) 100%); opacity: 1; }
.bpn-hero__sub { color: #fff; }
/* Palavra de fundo "Especialistas" menor */
.bpn-intro .bpn-fundo { font-size: clamp(44px, 5.5vw, 72px); }
/* Selo do Cadastur: a imagem como ela é (sem fundo, sem filtro) */
html body .bpn-rodape .bpn-rodape__selo { display: block; background: none; padding: 0; filter: none; mix-blend-mode: normal; opacity: 1; width: 180px; max-width: 100%; height: auto; margin: 6px 0 10px; }

/* Espaços entre seções: com respiro, mas sem buracos */
.bpn-blocos .bpn-sec, .single-themo_tour .bpn-sec, .bpn-blocos ~ .bpn-sec { padding: 64px 0; }
.bpn-blocos .bpn-sec--menor { padding: 40px 0; }
.bpn-blocos .bpn-sec:not(.bpn-sec--cinza) + .bpn-sec:not(.bpn-sec--cinza):not(.bpn-sec--borda),
.bpn-blocos .bpn-sec--cinza + .bpn-sec--cinza { padding-top: 0; }
.bpn-emb-topo--outro { margin-top: 0; }
.bpn-emb-topo:not(:has(+ .bpn-emb-fotos)) { padding-bottom: 80px; }
.bpn-emb-fotos + .bpn-emb-resumo { padding-top: 56px; }
@media (max-width: 720px) {
	.bpn-blocos .bpn-sec, .single-themo_tour .bpn-sec { padding: 44px 0; }
	.bpn-blocos .bpn-sec--menor { padding: 28px 0; }
}

/* Selinhos dos cards da Home: menores e turquesa (aprovado) */
.bpn-card .bpn-card__fita,
.bpn-grade--4 .bpn-card .bpn-card__fita { width: 32px; height: 38px; padding-top: 8px; left: 16px; bottom: -14px; background: #17B3C2; }
.bpn-card .bpn-card__fita svg { width: 16px; height: 16px; }
.bpn-card .bpn-card__corpo { padding-top: 28px; }

/* Faixa de contato do topo centralizada */
.bpn-faixa__in { justify-content: center; text-align: center; }

/* Logo do WhatsApp (Font Awesome) */
.bpn-ic--zap { display: inline-block; line-height: 1; vertical-align: middle; }
.bpn-btn .bpn-ic--zap { margin-left: 2px; }

/* Topo sem os ícones de Instagram e TripAdvisor (continuam no rodapé) */
.bpn-topo .bpn-redes { display: none; }

/* Linha bem clarinha entre os blocos da Home (APA, Sancho, Coletivos) */
.bpn-grupo:not(.bpn-grupo--escuro) + .bpn-grupo:not(.bpn-grupo--escuro)::before { content: ""; display: block; max-width: 1132px; margin: 0 auto; height: 1px; background: #E3E9EF; }
@media (max-width: 900px) { .bpn-grupo__topo { padding-top: 40px; } .bpn-grupo__cards { padding-top: 32px; padding-bottom: 40px; } }

/* ===================================================================
 * Passeio em Noronha – Home
 * =================================================================== */
.bpn-hero { min-height: 600px; }
.bpn-hero__sub { max-width: 640px; }
.bpn-hero__botoes { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.bpn-btn--vazado { background: transparent; border-color: rgba(255,255,255,.7); }
.bpn-btn--vazado:hover { background: #fff; border-color: #fff; }
html body a.bpn-btn.bpn-btn--vazado:hover { color: var(--marinho); }

/* Faixa de confiança */
.bpn-confia { background: #fff; border-bottom: 1px solid var(--linha); }
.bpn-confia__in { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bpn-confia__in--n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bpn-confia__in--n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bpn-confia__in--n1 { grid-template-columns: 1fr; }
.bpn-confia__item { display: flex; align-items: center; gap: 14px; padding: 26px 22px; border-right: 1px solid var(--linha); min-width: 0; }
.bpn-confia__item:last-child { border-right: 0; }
.bpn-confia__item .bpn-ic { color: var(--azul); }
.bpn-confia__item b { display: block; font-weight: 500; font-size: 15px; line-height: 1.3; color: var(--marinho); }
.bpn-confia__item span { display: block; font-size: 13px; line-height: 1.45; color: var(--suave); margin-top: 2px; }

/* Topo de seção com botão à direita */
.bpn-sec-topo { display: flex; justify-content: space-between; align-items: flex-end; gap: 32px; margin-bottom: 48px; }
.bpn-sec-topo > div { max-width: 720px; min-width: 0; }
.bpn-sec-topo .bpn-lead { margin: 0; }
.bpn-sec-topo .bpn-btn { flex-shrink: 0; }

/* Cards dos passeios */
.bpn-home-passeios > .bpn-wrap { padding-top: 80px; padding-bottom: 88px; }
.bpn-grade4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.bpn-pcard { background: #fff; box-shadow: var(--sombra); display: flex; flex-direction: column; min-width: 0; }
.bpn-pcard__topo { position: relative; }
.bpn-pcard__foto { display: block; aspect-ratio: 4 / 3; background: var(--azul-medio); overflow: hidden; }
.bpn-pcard__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.bpn-pcard:hover .bpn-pcard__foto img { transform: scale(1.04); }
.bpn-pcard__fita { position: absolute; left: 20px; bottom: -26px; }
.bpn-pcard__corpo { padding: 42px 20px 20px; display: flex; flex-direction: column; flex-grow: 1; }
.bpn-pcard__nome { margin: 0 0 8px; font-size: 20px; line-height: 1.2; }
.bpn-pcard__nome a { color: var(--marinho); }
.bpn-pcard__nome a:hover { color: var(--azul); }
.bpn-pcard__txt { margin: 0 0 16px; font-size: 14px; line-height: 1.55; color: var(--texto); }
.bpn-pcard__rodape { margin-top: auto; display: flex; justify-content: space-between; align-items: flex-end; gap: 8px; padding-top: 14px; border-top: 1px solid var(--linha); }
.bpn-pcard__preco span { display: block; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--suave); }
.bpn-pcard__preco strong { display: block; font-size: 19px; font-weight: 600; color: var(--azul-texto); white-space: nowrap; font-variant-numeric: tabular-nums; }
.bpn-pcard__preco small { display: block; font-size: 12px; color: var(--suave); }
.bpn-pcard__ver { font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--azul-texto); white-space: nowrap; }
html body .bpn-pcard__nome a { color: var(--marinho); font-family: var(--fonte); }
html body a.bpn-pcard__ver { color: var(--azul-texto); }

/* Como reservar */
.bpn-passos { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.bpn-passos--n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bpn-passos--n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bpn-passo { position: relative; background: #fff; padding: 36px 30px 30px; border: 1px solid var(--linha-2); min-width: 0; }
.bpn-passo .bpn-ic { color: var(--azul); }
.bpn-passo__n { position: absolute; right: 24px; top: 20px; font-size: 48px; font-weight: 600; line-height: 1; color: var(--azul); opacity: .18; }
.bpn-passo h3 { margin: 18px 0 8px; font-size: 21px; line-height: 1.25; }
.bpn-passo p { margin: 0; font-size: 15px; color: var(--texto); }

/* Lanchas privativas: foto + texto em fundo marinho */
.bpn-lanchas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); background: var(--marinho); color: #fff; }
.bpn-lanchas__foto { position: relative; min-height: 460px; background: var(--azul-medio); overflow: hidden; }
.bpn-lanchas__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bpn-lanchas__txt { padding: 80px 72px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; min-width: 0; }
.bpn-lanchas__txt > * { max-width: 560px; }
.bpn-lanchas .bpn-rotulo { color: #fff; opacity: .8; }
.bpn-lanchas .bpn-lead { color: var(--claro-sobre-marinho); }
html body .bpn-lanchas .bpn-titulo { color: #fff; }
.bpn-lanchas__lista { list-style: none; margin: 0 0 30px; padding: 0; display: grid; gap: 10px; }
.bpn-lanchas__lista li { display: flex; align-items: center; gap: 10px; color: #E3EEF8; }
.bpn-lanchas__lista .bpn-ic { color: var(--azul-vivo); }

/* Perguntas frequentes: tudo aberto, sem abas */
.bpn-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 56px; }
.bpn-faq__item { padding: 22px 0; border-bottom: 1px solid var(--linha-2); min-width: 0; }
.bpn-faq__item h3 { display: flex; gap: 12px; margin: 0 0 8px; font-size: 18px; line-height: 1.35; }
.bpn-faq__item h3 .bpn-ic { color: var(--azul); margin-top: 2px; }
.bpn-faq__resp { padding-left: 32px; font-size: 15px; color: var(--texto); }
.bpn-faq__resp a { text-decoration: underline; text-underline-offset: 3px; }

/* Blog */
.bpn-blog { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.bpn-post { display: flex; flex-direction: column; min-width: 0; }
.bpn-post__foto { display: block; aspect-ratio: 16 / 10; background: var(--azul-medio); overflow: hidden; }
.bpn-post__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.bpn-post:hover .bpn-post__foto img { transform: scale(1.04); }
.bpn-post__corpo { padding-top: 18px; }
.bpn-post__data { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--suave); }
.bpn-post__tit { margin: 6px 0 10px; font-size: 18px; line-height: 1.3; }
.bpn-post__tit a { color: var(--marinho); }
.bpn-post__ler { font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--azul-texto); }
html body .bpn-post__tit a { color: var(--marinho); font-family: var(--fonte); }

/* Rodapé: selo em texto quando não há imagem */
.bpn-rodape__cadastur { display: table; background: #fff; color: var(--azul-medio); padding: 8px 14px; font-weight: 600; letter-spacing: .08em; margin: 4px 0 8px; }
html body .bpn-rodape .bpn-rodape__cadastur { color: var(--azul-medio); }
.bpn-rodape__grid { grid-template-columns: 1.3fr 1fr 1fr 1fr; }

@media (max-width: 1100px) {
	.bpn-grade4, .bpn-blog { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bpn-confia__in { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bpn-confia__item:nth-child(2) { border-right: 0; }
	.bpn-confia__item:nth-child(-n+2) { border-bottom: 1px solid var(--linha); }
	.bpn-lanchas__txt { padding: 56px 40px; }
	.bpn-passos--n4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1180px) and (min-width: 721px) { .bpn-rodape__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) {
	.bpn-hero { min-height: 520px; }
	.bpn-hero__botoes .bpn-btn { width: 100%; }
	.bpn-grade4, .bpn-blog, .bpn-passos, .bpn-faq, .bpn-lanchas, .bpn-confia__in { grid-template-columns: 1fr; }
	.bpn-confia__item { border-right: 0; border-bottom: 1px solid var(--linha); padding: 16px 0; }
	.bpn-confia__item:last-child { border-bottom: 0; }
	.bpn-sec-topo { flex-direction: column; align-items: flex-start; gap: 20px; margin-bottom: 32px; }
	.bpn-home-passeios > .bpn-wrap { padding-top: 56px; padding-bottom: 56px; }
	.bpn-lanchas__foto { min-height: 260px; }
	.bpn-lanchas__txt { padding: 48px 24px; }
	.bpn-faq__resp { padding-left: 0; }
	.bpn-rodape__grid { grid-template-columns: 1fr 1fr; }
}

/* ===================================================================
 * Passeio em Noronha – página de passeio (modelo aprovado)
 * =================================================================== */
.bpn-pp-topo { background: var(--marinho); color: #fff; text-align: center; padding: 32px 0 150px; overflow-x: clip; }
.bpn-pp-trilha { font-size: 13px; color: #A9BED3; text-align: left; margin-bottom: 48px; }
html body .bpn-pp-trilha a { color: #C9D7E8; }
html body .bpn-pp-trilha a:hover { color: #fff; }
.bpn-pp-trilha span { color: #fff; }
.bpn-pp-topo .bpn-fundo { color: #fff; opacity: .07; }
.bpn-pp-topo .bpn-rotulo { color: #fff; opacity: .85; }
html body .bpn-pp-topo .bpn-titulo { color: #fff; }
.bpn-pp-h1 { font-size: clamp(34px, 5vw, 54px); line-height: 1.08; margin: 8px 0 18px; text-wrap: balance; }
.bpn-pp-sub { max-width: 640px; margin: 0 auto 28px; color: #E3EEF8; font-size: 18px; }
.bpn-pp-sem-fotos { height: 0; margin-top: -110px; }
.bpn-pp .bpn-emb-fotos { margin-top: -110px; }

.bpn-pp-resumo { padding: 40px 0 8px; }
.bpn-pp-resumo__in { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--linha-2); }
.bpn-pp-resumo__in--n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bpn-pp-resumo__in--n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bpn-pp-resumo__in--n1 { grid-template-columns: 1fr; }
.bpn-pp-resumo__in > div { display: flex; flex-direction: column; gap: 4px; padding: 22px 24px; border-right: 1px solid var(--linha-2); min-width: 0; }
.bpn-pp-resumo__in > div:last-child { border-right: 0; }
.bpn-pp-resumo__in .bpn-ic { color: var(--azul); margin-bottom: 6px; }
.bpn-pp-resumo__in span { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--suave); }
.bpn-pp-resumo__in b { font-weight: 500; font-size: 16px; color: var(--marinho); }
.bpn-pp-resumo__preco { background: var(--cinza); justify-content: center; }
.bpn-pp-resumo__preco b { font-size: 28px; font-weight: 600; color: var(--azul-texto); font-variant-numeric: tabular-nums; }
.bpn-pp-resumo__preco small { font-size: 13px; font-weight: 400; color: var(--suave); }

.bpn-pp-sobre { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 56px; }
.bpn-pp-sobre__txt { color: var(--texto); font-size: 17px; }
.bpn-pp-sobre__btn { margin-top: 22px; }

.bpn-pp-opcoes { display: grid; gap: 24px; margin: 0 auto; }
.bpn-pp-opcoes--n1 { grid-template-columns: minmax(0, 520px); justify-content: center; }
.bpn-pp-opcoes--n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 900px; }
.bpn-pp-opcoes--n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bpn-pp-opcoes--quatro { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 900px; }
.bpn-pp-opcao { position: relative; background: #fff; padding: 40px 32px 32px; box-shadow: var(--sombra); display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.bpn-pp-opcao__fita { position: absolute; top: 0; right: 26px; }
.bpn-pp-opcao h3 { margin: 0 0 10px; font-size: 23px; line-height: 1.25; padding-right: 62px; }
.bpn-pp-opcao__preco { margin-bottom: 18px; }
.bpn-pp-opcao__preco b { font-size: 34px; font-weight: 600; color: var(--azul-texto); font-variant-numeric: tabular-nums; }
.bpn-pp-opcao__preco span { color: var(--suave); }
.bpn-pp-opcao .bpn-pp-check { margin-bottom: 26px; flex-grow: 1; }
.bpn-pp-opcao--escura { background: var(--marinho); }
html body .bpn-pp-opcao--escura h3 { color: #fff; }
.bpn-pp-opcao--escura .bpn-pp-opcao__preco b { color: #fff; }
.bpn-pp-opcao--escura .bpn-pp-opcao__preco span, .bpn-pp-opcao--escura .bpn-pp-check li { color: var(--claro-sobre-marinho); }
.bpn-pp-check, .bpn-pp-xis { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.bpn-pp-check li, .bpn-pp-xis li { position: relative; padding-left: 32px; color: var(--marinho); }
.bpn-pp-check li::before, .bpn-pp-xis li::before { content: ""; position: absolute; left: 0; top: 2px; width: 22px; height: 22px; background-size: 22px; background-repeat: no-repeat; }
.bpn-pp-check li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B98E0' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8 12.5l2.5 2.5L16 9.5'/%3E%3C/svg%3E"); }
.bpn-pp-xis li { color: var(--texto); }
.bpn-pp-xis li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238A99A5' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9 9l6 6M15 9l-6 6'/%3E%3C/svg%3E"); }
.bpn-pp-pagto { list-style: none; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; margin: 28px 0 0; font-size: 14px; color: var(--texto); }
.bpn-pp-pagto li { display: inline-flex; align-items: center; gap: 8px; }
.bpn-pp-pagto .bpn-ic { color: var(--azul); }
.bpn-pp-aviso { text-align: center; font-size: 13px; color: var(--suave); margin: 10px auto 0; max-width: 700px; }

.bpn-pp-roteiro__tit { margin: 36px 0 0; font-size: 19px; }
.bpn-pp-roteiro { list-style: none; margin: 32px 0 28px; padding: 0; position: relative; display: grid; grid-template-columns: repeat(var(--n, 9), minmax(0, 1fr)); gap: 8px; counter-reset: r; }
.bpn-pp-roteiro::before { content: ""; position: absolute; left: calc(50% / var(--n, 9)); right: calc(50% / var(--n, 9)); top: 15px; height: 2px; background: #DCE3EA; }
.bpn-pp-roteiro li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; font-size: 14px; line-height: 1.35; color: var(--marinho); counter-increment: r; min-width: 0; }
.bpn-pp-roteiro li span { width: 32px; height: 32px; flex-shrink: 0; border-radius: 50%; background: #fff; border: 2px solid var(--azul); display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; color: var(--azul-texto); }
.bpn-pp-roteiro li span::before { content: counter(r); }
.bpn-pp-roteiro--longo { grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 24px 8px; }
.bpn-pp-roteiro--longo::before { display: none; }
.bpn-pp-roteiro__nota { max-width: 760px; color: var(--texto); margin: 0; }

.bpn-pp-inclusos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.bpn-pp-inclusos--um { grid-template-columns: minmax(0, 640px); }
.bpn-pp-incluso { position: relative; background: #fff; padding: 40px 34px 34px; min-width: 0; }
.bpn-pp-incluso__fita { position: absolute; top: 0; right: 26px; width: 44px; height: 52px; padding-top: 13px; }
.bpn-pp-incluso .bpn-titulo { font-size: 26px; margin-top: 0; padding-right: 60px; }
.bpn-pp-incluso__txt { margin: 0; color: var(--texto); }

.bpn-pp-dicas { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 56px; align-items: start; }
.bpn-pp-dicas__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.bpn-pp-dicas__lista li { display: flex; gap: 14px; align-items: flex-start; padding: 20px; border: 1px solid var(--linha-2); color: var(--texto); font-size: 15px; min-width: 0; }
.bpn-pp-dicas__lista .bpn-ic { color: var(--azul); }
.bpn-pp-faq-topo { margin-bottom: 24px; }
.bpn-pp .bpn-faq__item h3 { font-size: 17px; }
.bpn-pp-gostou { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 24px; }
.bpn-pp-gostou .bpn-gostou__tit { margin: 0; }
.bpn-pp .bpn-sec { padding: 80px 0; }
.bpn-pp .bpn-pp-resumo + .bpn-sec { padding-top: 64px; }

@media (max-width: 1100px) {
	.bpn-pp-roteiro { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 8px; }
	.bpn-pp-roteiro::before { display: none; }
	.bpn-pp-opcoes--n3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
	.bpn-pp-topo { padding: 24px 0 120px; }
	.bpn-pp-trilha { margin-bottom: 28px; }
	.bpn-pp .bpn-emb-fotos, .bpn-pp-sem-fotos { margin-top: -90px; }
	.bpn-pp-resumo__in, .bpn-pp-resumo__in--n3 { grid-template-columns: 1fr 1fr; }
	.bpn-pp-resumo__in > div:nth-child(2n) { border-right: 0; }
	.bpn-pp-resumo__in > div:nth-child(-n+2) { border-bottom: 1px solid var(--linha-2); }
	.bpn-pp-opcoes--n2, .bpn-pp-opcoes--n3, .bpn-pp-opcoes--quatro, .bpn-pp-inclusos, .bpn-pp-dicas, .bpn-pp-dicas__lista { grid-template-columns: 1fr; }
	.bpn-pp-dicas { gap: 24px; }
	.bpn-pp-roteiro, .bpn-pp-roteiro--longo { grid-template-columns: 1fr; gap: 12px; }
	.bpn-pp-roteiro li { flex-direction: row; text-align: left; }
	.bpn-pp-opcao, .bpn-pp-incluso { padding: 36px 22px 26px; }
	.bpn-pp .bpn-sec { padding: 56px 0; }
}

/* ===================================================================
 * Passeio em Noronha – blog (modelo aprovado)
 * =================================================================== */
.bpn-bl-topo { background: var(--marinho); color: #fff; text-align: center; padding: 32px 0 72px; overflow-x: clip; }
.bpn-bl-topo .bpn-fundo { color: #fff; opacity: .07; }
.bpn-bl-topo .bpn-rotulo { color: #fff; opacity: .85; }
html body .bpn-bl-topo .bpn-titulo { color: #fff; }
.bpn-bl-h1 { font-size: clamp(34px, 5vw, 54px); line-height: 1.08; margin: 8px 0 14px; text-wrap: balance; }
.bpn-bl-sub { max-width: 620px; margin: 0 auto; color: #E3EEF8; font-size: 18px; }
.bpn-bl-lista { padding-top: 64px; }
.bpn-bl-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--suave); }
.bpn-bl-meta--claro { color: #A9BED3; justify-content: center; }
.bpn-bl-selo { background: #E6F1F6; color: var(--azul-medio); padding: 4px 8px; font-weight: 600; }

.bpn-bl-destaque { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); background: #fff; box-shadow: var(--sombra); margin-bottom: 40px; }
.bpn-bl-destaque__foto { position: relative; display: block; min-height: 360px; background: var(--azul-medio); overflow: hidden; }
.bpn-bl-destaque__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bpn-bl-destaque__txt { padding: 48px 44px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; min-width: 0; }
.bpn-bl-destaque__tit { margin: 10px 0 12px; font-size: clamp(26px, 3vw, 34px); line-height: 1.15; }
.bpn-bl-destaque__txt p { color: var(--texto); margin: 0 0 24px; }
html body .bpn-bl-destaque__tit a, html body .bpn-bl-card__tit a { color: var(--marinho); font-family: var(--fonte); }
html body .bpn-bl-destaque__tit a:hover, html body .bpn-bl-card__tit a:hover { color: var(--azul); }

.bpn-bl-grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px 24px; }
.bpn-bl-card { display: flex; flex-direction: column; min-width: 0; }
.bpn-bl-card__foto { display: block; aspect-ratio: 16 / 10; background: var(--azul-medio); overflow: hidden; margin-bottom: 16px; }
.bpn-bl-card__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.bpn-bl-card:hover .bpn-bl-card__foto img { transform: scale(1.04); }
.bpn-bl-card__tit { margin: 6px 0 10px; font-size: 19px; line-height: 1.3; }
.bpn-bl-card__ler { font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--azul-texto); }
.bpn-bl-paginas { margin-top: 48px; }
.bpn-bl-paginas ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.bpn-bl-paginas a, .bpn-bl-paginas span { display: block; min-width: 44px; padding: 10px 14px; text-align: center; border: 1px solid var(--linha-2); color: var(--marinho); }
.bpn-bl-paginas .current { background: var(--marinho); border-color: var(--marinho); color: #fff; }

/* Post */
.bpn-bl-topo--post { padding-bottom: 150px; }
.bpn-bl-estreito { max-width: 860px; }
.bpn-bl-h1--post { font-size: clamp(30px, 4.4vw, 46px); margin-top: 0; }
.bpn-bl-capa-wrap { margin-top: -110px; position: relative; }
.bpn-bl-capa { margin: 0 auto; max-width: 1132px; aspect-ratio: 21 / 9; overflow: hidden; background: var(--azul-medio); }
.bpn-bl-capa img { width: 100%; height: 100%; object-fit: cover; }
.bpn-bl-sem-capa { margin-top: -110px; }
.bpn-bl-corpo { padding: 56px 0 80px; }
.bpn-bl-corpo__grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 64px; align-items: start; }
.bpn-bl-artigo { max-width: 720px; min-width: 0; }
.bpn-bl-texto { color: var(--texto); font-size: 18px; line-height: 1.75; overflow-wrap: break-word; }
.bpn-bl-texto > *:first-child, .bpn-bl-texto .elementor-widget-container > *:first-child { margin-top: 0; }
.bpn-bl-texto p { margin: 0 0 18px; }
.bpn-bl-texto h2 { font-size: 28px; line-height: 1.2; margin: 44px 0 14px; color: var(--marinho); scroll-margin-top: 110px; }
.bpn-bl-texto h3 { font-size: 22px; line-height: 1.25; margin: 32px 0 10px; color: var(--marinho); }
.bpn-bl-texto ul, .bpn-bl-texto ol { padding-left: 22px; margin: 0 0 18px; }
.bpn-bl-texto li { margin-bottom: 6px; }
.bpn-bl-texto li::marker { color: var(--azul); }
.bpn-bl-texto strong, .bpn-bl-texto b { color: var(--marinho); font-weight: 600; }
.bpn-bl-texto a { text-decoration: underline; text-underline-offset: 3px; }
.bpn-bl-texto img { height: auto; margin: 8px 0 24px; }
.bpn-bl-texto figure { margin: 0 0 24px; }
.bpn-bl-texto table { width: 100%; border-collapse: collapse; font-size: 16px; margin-bottom: 24px; display: block; overflow-x: auto; }
.bpn-bl-texto th, .bpn-bl-texto td { border: 1px solid var(--linha-2); padding: 10px 12px; text-align: left; }
.bpn-bl-texto blockquote { margin: 24px 0; padding: 4px 0 4px 20px; border-left: 3px solid var(--azul); color: var(--marinho); }
.bpn-bl-texto .elementor-section, .bpn-bl-texto .elementor-container, .bpn-bl-texto .elementor-column, .bpn-bl-texto .elementor-widget-wrap, .bpn-bl-texto .e-con { display: block; width: auto !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
.bpn-bl-sumario { border: 1px solid var(--linha-2); padding: 22px 26px; margin-bottom: 32px; font-size: 15px; }
.bpn-bl-sumario b { display: block; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--azul-texto); margin-bottom: 8px; }
.bpn-bl-sumario ol { margin: 0; padding-left: 20px; columns: 2; column-gap: 32px; }
.bpn-bl-sumario li { break-inside: avoid; padding: 2px 0; }
html body .bpn-bl-sumario a { color: var(--marinho); }
html body .bpn-bl-sumario a:hover { color: var(--azul); }
.bpn-bl-cta-meio { display: flex; align-items: center; gap: 18px; background: var(--cinza); border-left: 4px solid var(--azul); padding: 22px 24px; margin: 36px 0; font-size: 15px; line-height: 1.5; }
.bpn-bl-cta-meio > .bpn-ic { color: var(--azul); }
.bpn-bl-cta-meio b { display: block; font-size: 17px; color: var(--marinho); }
.bpn-bl-cta-meio span { color: var(--texto); }
.bpn-bl-cta-meio .bpn-btn { flex-shrink: 0; margin-left: auto; text-decoration: none; }
.bpn-bl-compartilhe { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; border-top: 1px solid var(--linha-2); margin-top: 48px; padding-top: 24px; font-size: 14px; }
.bpn-bl-compartilhe b { color: var(--marinho); font-weight: 600; margin-right: 4px; }
.bpn-bl-compartilhe a, .bpn-bl-compartilhe button { border: 1px solid var(--linha-2); background: #fff; padding: 8px 14px; color: var(--marinho); font: inherit; cursor: pointer; }
.bpn-bl-compartilhe a:hover, .bpn-bl-compartilhe button:hover { border-color: var(--azul); color: var(--azul); }
.bpn-bl-anterior-prox { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
.bpn-bl-anterior-prox a { border: 1px solid var(--linha-2); padding: 16px 18px; font-size: 15px; line-height: 1.4; color: var(--marinho); }
.bpn-bl-anterior-prox a:hover { border-color: var(--azul); }
.bpn-bl-anterior-prox .bpn-bl-prox { text-align: right; grid-column: 2; }
.bpn-bl-anterior-prox span { display: block; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--suave); margin-bottom: 4px; }
.bpn-bl-lateral { position: sticky; top: 120px; display: grid; gap: 20px; }
.bpn-bl-box { border: 1px solid var(--linha-2); padding: 26px 24px; }
.bpn-bl-box--escuro { background: var(--marinho); border-color: var(--marinho); color: #fff; }
.bpn-bl-box--escuro .bpn-rotulo { color: #fff; opacity: .8; }
.bpn-bl-box--escuro b { display: block; font-size: 21px; font-weight: 500; line-height: 1.25; margin: 6px 0 8px; }
.bpn-bl-box--escuro p { color: var(--claro-sobre-marinho); font-size: 15px; margin: 0 0 18px; }
.bpn-bl-mini { list-style: none; margin: 12px 0 0; padding: 0; }
.bpn-bl-mini a { display: flex; justify-content: space-between; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--linha); font-size: 15px; color: var(--marinho); }
.bpn-bl-mini a:hover { color: var(--azul); }
.bpn-bl-mini span { color: var(--azul-texto); font-weight: 600; white-space: nowrap; font-size: 14px; }
html body .bpn-bl-mini a, html body .bpn-bl-anterior-prox a, html body .bpn-bl-compartilhe a { color: var(--marinho); }

@media (max-width: 1000px) {
	.bpn-bl-corpo__grid { grid-template-columns: 1fr; gap: 40px; }
	.bpn-bl-lateral { position: static; }
	.bpn-bl-grade { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
	.bpn-bl-destaque { grid-template-columns: 1fr; }
	.bpn-bl-destaque__foto { min-height: 220px; }
	.bpn-bl-destaque__txt { padding: 28px 22px; }
	.bpn-bl-grade { grid-template-columns: 1fr; }
	.bpn-bl-texto { font-size: 17px; }
	.bpn-bl-sumario ol { columns: 1; }
	.bpn-bl-cta-meio { flex-direction: column; align-items: flex-start; }
	.bpn-bl-cta-meio .bpn-btn { margin-left: 0; }
	.bpn-bl-anterior-prox { grid-template-columns: 1fr; }
	.bpn-bl-anterior-prox .bpn-bl-prox { text-align: left; grid-column: auto; }
	.bpn-bl-topo--post { padding-bottom: 110px; }
	.bpn-bl-capa-wrap, .bpn-bl-sem-capa { margin-top: -80px; }
	.bpn-bl-capa { aspect-ratio: 4 / 3; }
}

/* Páginas de texto (catálogos, políticas, termos) */
.bpn-pagina-quadro { position: relative; background: #fff; box-shadow: var(--sombra); padding: 44px 48px; max-width: 980px; margin: 0 auto; color: var(--texto); font-size: 17px; }
.bpn-pagina-quadro h2, .bpn-pagina-quadro h3 { color: var(--marinho); line-height: 1.25; margin: 28px 0 10px; }
.bpn-pagina-quadro > :first-child { margin-top: 0; }
.bpn-pagina-quadro a { text-decoration: underline; text-underline-offset: 3px; }
.bpn-embed { margin: 24px 0; }
.bpn-embed iframe { display: block; }
@media (max-width: 720px) { .bpn-pagina-quadro { padding: 28px 20px; font-size: 16px; } }

/* Roteiro do passeio (bloco igual ao trajeto do Barco em Noronha): negrito no meio do texto */
.bpn-pp-roteiro-txt strong { display: inline; margin: 0; padding: 0; background: none; color: var(--marinho); font-weight: 600; }

/* Bandeirinhas: menores e verde-água em todo o site (pedido em 15/10) */
html body .bpn-fita, html body .bpn-fita--g, html body .bpn-fita--cinza,
html body .bpn-card .bpn-card__fita, html body .bpn-grade--4 .bpn-card .bpn-card__fita,
html body .bpn-pp-incluso__fita, html body .bpn-passeio__fita, html body .bpn-incluso__fita {
	width: 34px; height: 40px; padding-top: 8px; background: #17B3C2;
}
html body .bpn-fita svg { width: 17px; height: 17px; }
.bpn-pcard__fita { left: 18px; bottom: -14px; }
.bpn-pcard__corpo { padding-top: 30px; }
.bpn-pp-opcao__fita, .bpn-pp-incluso__fita, .bpn-traj__fita, .bpn-rel__fita, .bpn-info-card__fita { right: 22px; }
.bpn-pp-opcao h3, .bpn-pp-incluso .bpn-titulo, .bpn-traj .bpn-titulo { padding-right: 48px; }

/* Ícones e botões em verde-água (pedido em 15/10).
   Os botões usam um verde-água um pouco mais fechado para o texto branco ficar legível. */
:root { --verde: #17B3C2; --verde-btn: #0B7A85; --verde-btn-hover: #095E67; }
html body a.bpn-btn, html body .bpn-btn { background: var(--verde-btn); border-color: var(--verde-btn); color: #fff; }
html body a.bpn-btn:hover, html body .bpn-btn:hover { background: var(--verde-btn-hover); border-color: var(--verde-btn-hover); color: #fff; }
html body a.bpn-btn.bpn-btn--claro, html body .bpn-btn--claro { background: #fff; border-color: #fff; color: var(--verde-btn-hover); }
html body a.bpn-btn.bpn-btn--claro:hover { background: #E3F6F8; border-color: #E3F6F8; color: var(--verde-btn-hover); }
html body a.bpn-btn.bpn-btn--linha, html body .bpn-btn--linha { background: transparent; border-color: var(--verde); color: var(--verde-btn-hover); }
html body a.bpn-btn.bpn-btn--linha:hover { background: var(--verde-btn); border-color: var(--verde-btn); color: #fff; }
html body a.bpn-btn.bpn-btn--vazado { background: transparent; border-color: rgba(255,255,255,.7); color: #fff; }
html body a.bpn-btn.bpn-btn--vazado:hover { background: #fff; border-color: #fff; color: var(--verde-btn-hover); }
html body .bpn-telbtn__ic, html body a.bpn-topo__zap { background: var(--verde-btn); }
html body a.bpn-topo__zap:hover { background: var(--verde-btn-hover); }
html body .bpn-bl-compartilhe a:hover, html body .bpn-bl-compartilhe button:hover { border-color: var(--verde); color: var(--verde-btn-hover); }

html body .bpn-confia__item .bpn-ic, html body .bpn-passo .bpn-ic, html body .bpn-pp-resumo__in .bpn-ic,
html body .bpn-pp-pagto .bpn-ic, html body .bpn-pp-dicas__lista .bpn-ic, html body .bpn-faq__item h3 .bpn-ic,
html body .bpn-lanchas__lista .bpn-ic, html body .bpn-bl-cta-meio > .bpn-ic, html body .bpn-card__linha .bpn-ic,
html body .bpn-ficha-lista li .bpn-ic, html body .bpn-pagto .bpn-ic, html body .bpn-redes a { color: var(--verde); }
html body .bpn-bl-cta-meio { border-left-color: var(--verde); }
.bpn-pp-check li::before, .bpn-lista-check li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317B3C2' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8 12.5l2.5 2.5L16 9.5'/%3E%3C/svg%3E"); }
.bpn-bl-texto li::marker { color: var(--verde); }
html body .bpn-rodape .bpn-redes--circ a { color: #fff; }
html body .bpn-rodape .bpn-redes--circ a:hover { color: var(--azul-medio); }

/* Trajetos dos barcos: Sancho e APA em blocos separados */
.bpn-pp-trajetos { margin-top: 36px; }
.bpn-pp-trajetos .bpn-titulo { font-size: 24px; }
.bpn-pp-trajetos .bpn-texto p { margin: 0; }
html body .bpn-traj-card--escuro .bpn-titulo { color: #fff; }
.bpn-pp-trajetos__nota { max-width: 820px; margin-top: 28px; color: var(--texto); }

/* ===== Catálogos (lanchas e passeios): somente o Canva ===== */
.bpn-cat-canva, .bpn-blocos .bpn-sec.bpn-cat-canva { background: #F2F4F7; padding: 32px 0 56px; }
.bpn-cat-canva__quadro { max-width: 1100px; margin: 0 auto; }
.bpn-cat-canva__quadro .bpn-embed { margin: 0; }
.bpn-cat-canva__quadro iframe { width: 100%; max-width: 100%; border: 0; box-shadow: 0 14px 40px rgba(19, 41, 61, .14); background: #fff; }
.bpn-cat-canva__quadro > * + * { margin-top: 24px; }
.bpn-cat-canva__acoes { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; padding-top: 24px; }
@media (max-width: 720px) { .bpn-cat-canva { padding: 16px 0 40px; } }

/* ===== Topo 1.1.15: menu baixo, logo com respiro (sem margem em branco) e textos maiores ===== */
.bpn-faixa { font-size: 14px; }
.bpn-faixa__in { padding-top: 5px; padding-bottom: 5px; }
.bpn-topo__in { min-height: 72px; }
.bpn-logo__txt { font-size: 20px; }
/* A imagem do logo tem margem em branco em volta: a caixa corta a margem; o desenho fica com respiro em cima e embaixo. */
html body .bpn-logo { height: 72px; padding: 0; margin: 0; overflow: hidden; align-items: center; align-self: center; }
html body .bpn-logo__img { height: 114px !important; width: auto; max-width: none; margin: 0 -10px; flex: none; }
html body .bpn-menu a { font-size: 16px; line-height: 1.2; padding: 26px 0; }
html body .bpn-menu .sub-menu a { font-size: 16px; padding: 10px 18px; }
@media (max-width: 1240px) {
	.bpn-topo__in { min-height: 62px; }
	html body .bpn-logo { height: 62px; }
	html body .bpn-logo__img { height: 100px !important; margin: 0 -9px; }
	html body .bpn-menu a { font-size: 17px; padding: 13px 0; }
	html body .bpn-menu .sub-menu a { font-size: 16px; padding: 10px 0; }
}
@media (max-width: 700px) {
	.bpn-topo__in { min-height: 58px; }
	html body .bpn-logo { height: 58px; }
	html body .bpn-logo__img { height: 92px !important; margin: 0 -8px; }
}
