/* Identidade editorial a partir do book oficial: azul, areia e rosa. */
body[data-empreendimento="origem-porto-imperial"] {
  --ep-ink:#263d4d; --ep-ink-soft:#52626a; --ep-ocean:#344e60;
  --ep-ocean-dark:#263e4e; --ep-sand:#e8e4d7; --ep-paper:#f8f6ef;
  --ep-gold:#e33465; --oi-pink:#e33465;
}
body[data-empreendimento="origem-porto-imperial"] .ep-btn--gold {background:#e33465;color:#fff;box-shadow:none}
body[data-empreendimento="origem-porto-imperial"] .ep-title {font-size:clamp(2rem,4vw,3.4rem);line-height:1.08}
body[data-empreendimento="origem-porto-imperial"] .ep-section {padding:80px 0}
body[data-empreendimento="origem-porto-imperial"] .ep-section--details {background:#e8e4d7}
body[data-empreendimento="origem-porto-imperial"] .ep-detail-card {border-radius:2px;background:transparent;border-top:1px solid #a8ac9c;box-shadow:none}
body[data-empreendimento="origem-porto-imperial"] .ep-detail-card::before {background:#bd3258}
body[data-empreendimento="origem-porto-imperial"] .ep-detail-card>span {color:#96344e}
body[data-empreendimento="origem-porto-imperial"] .ep-section--plants {background:#263e4e}
body[data-empreendimento="origem-porto-imperial"] .ep-section--plants .ep-eyebrow {color:#f7a8bc}
body[data-empreendimento="origem-porto-imperial"] .ep-plant__body p {color:#edb9bd}
body[data-empreendimento="origem-porto-imperial"] .ep-parallax__overlay {background:linear-gradient(135deg,#263e4eea,#263e4e99)}
body[data-empreendimento="origem-porto-imperial"] .ep-conversion-card {background:#e8e4d7;border-radius:4px}
body[data-empreendimento="origem-porto-imperial"] .ep-plant {border-radius:4px}
body[data-empreendimento="origem-porto-imperial"] .ep-gallery__item {border-radius:4px}
body[data-empreendimento="origem-porto-imperial"] .ep-section--ocean .ep-eyebrow {color:#f7a8bc}
.oi-hero {color:#fff;background:#263e4e;position:relative;isolation:isolate}
.oi-hero::before {content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 10% 80%,#425a6690,transparent 65%)}
.oi-breadcrumb {display:flex;flex-wrap:wrap;gap:10px;font-size:.74rem;padding-block:23px;color:#d6d9d5}
.oi-breadcrumb a {text-decoration:none}
.oi-hero-layout {display:grid;grid-template-columns:1fr 1.04fr;gap:44px;padding-bottom:55px;align-items:stretch}
.oi-hero-copy {padding:16px 0 5px;min-width:0}
.oi-status {font-size:.75rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;display:flex;gap:10px;align-items:center;margin:0 0 30px}
.oi-status>span {width:9px;height:9px;background:#f5819e;border-radius:50%}
.oi-logo {width:min(345px,85%);height:auto;max-height:75px;object-fit:contain;object-position:left center;margin-bottom:32px}
.oi-hero h1 {font-family:Georgia,serif;font-size:clamp(2.3rem,3.5vw,3.45rem);font-weight:400;line-height:1.07;letter-spacing:-.04em;margin:0;max-width:570px}
.oi-hero h1 em {color:#edb9bd;font-weight:400}
.oi-hero-text {font-size:.98rem;color:#e1e4e2;max-width:495px;margin:24px 0}
.oi-hero-offer {border-left:3px solid #e33465;padding-left:19px;margin:28px 0}
.oi-hero-offer>span {font-size:.85rem;display:block;color:#e4e5df}
.oi-hero-offer strong {display:block;font-size:clamp(2rem,3.4vw,2.8rem);line-height:1.25;letter-spacing:-.025em;font-weight:600;font-variant-numeric:tabular-nums;margin:6px 0 10px}
.oi-hero-offer small {display:block;font-size:.69rem;line-height:1.6;color:#d1d6d5;max-width:460px}
.oi-actions {display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.oi-actions .ep-btn {border-radius:4px;font-size:.85rem;padding-inline:18px}
.oi-text-link {color:#fff;font-size:.8rem;text-underline-offset:5px}
.oi-text-link span {color:#f995af;margin-left:4px}
.oi-partner-line {font-size:.72rem;letter-spacing:.04em;color:#d1d5d1;margin:28px 0 0;display:flex;align-items:center;gap:16px}
.oi-partner-line strong {font-size:1.2rem;color:#fff;font-weight:600;letter-spacing:.025em}
.oi-partner-line strong span {color:#ed7392;margin:0 8px;font-weight:400}
.oi-hero-photo {position:relative;margin:10px 0 0;min-height:630px;min-width:0;border-radius:160px 3px 3px 3px;overflow:hidden}
.oi-hero-photo picture {position:absolute;inset:0}
.oi-hero-photo img {width:100%;height:100%;object-fit:cover;object-position:56% center}
.oi-hero-photo::after {content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#132c3aab);pointer-events:none}
.oi-hero-photo figcaption {position:absolute;z-index:1;bottom:17px;left:23px;right:23px;font-size:.65rem;color:#fff}
.oi-photo-link {position:absolute;z-index:1;bottom:65px;left:23px;right:23px;display:flex;justify-content:space-between;color:#fff;font-size:1.05rem;border-bottom:1px solid #ffffff70;padding-bottom:14px;text-decoration:none}
.oi-section-nav {background:#e8e4d7;border-bottom:1px solid #c9cbbf}
.oi-section-nav>div {display:flex;gap:35px;overflow-x:auto;white-space:nowrap;padding-block:18px}
.oi-section-nav a {text-decoration:none;font-size:.79rem;font-weight:650;padding-block:5px}
.oi-section-nav a:hover {color:#ad1941}
.oi-construction {background:#263e4e;color:#fff}
.oi-construction-grid {display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:65px}
.oi-construction .ep-eyebrow {color:#f7a8bc}
.oi-construction .ep-title em {color:#edb9bd}
.oi-construction .ep-lead,.oi-construction p {color:#dde1dc}
.oi-construction p {font-size:.94rem}
.oi-construction .ep-btn {margin-top:12px}
.oi-video {min-width:0;background:transparent;border:0;box-shadow:none;border-radius:0}
.oi-video button {position:relative;width:100%;padding:0;border:0;aspect-ratio:16/10;overflow:hidden;cursor:pointer;background:#132b3b}
.oi-video button img {width:100%;height:100%;object-fit:cover;filter:brightness(.72)}
.oi-video button>span {background:#e33465;color:#fff;box-shadow:0 0 0 12px #ffffff20}
.oi-video button iframe {position:absolute;inset:0;width:100%;height:100%;border:0}
.oi-video h3 {font-size:1.18rem;margin:22px 0 8px;padding:0}
.oi-video>p {font-size:.76rem;padding:0;line-height:1.65;margin:0}
.oi-video a {text-underline-offset:3px}
.oi-partnership {background:#e8e4d7}
.oi-partnership-heading {max-width:820px}
.oi-partnership-heading em {color:#9b2344}
.oi-partners {display:grid;grid-template-columns:1fr 60px 1fr;margin-top:45px;border-top:1px solid #b4bbaf;border-bottom:1px solid #b4bbaf;padding:38px 0;gap:36px}
.oi-partners h3 {font-size:1rem;margin:12px 0}
.oi-partners p {font-size:.94rem;max-width:450px}
.oi-partners a {font-size:.8rem;font-weight:700;text-underline-offset:4px}
.oi-partner-name {font-size:3rem;letter-spacing:-.055em;font-weight:600;line-height:1}
.oi-partners-plus {align-self:center;text-align:center;font-size:3rem;color:#ad2850;font-weight:300}
.oi-source-note {font-size:.72rem;max-width:900px;color:#52626a;margin:20px 0 0}
.oi-siteplan {background:#eeebe2}
.oi-siteplan-grid {display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:center}
.oi-siteplan-grid a {display:block;text-decoration:none;font-size:.77rem}
.oi-siteplan-grid img {width:100%;height:auto;border:1px solid #d6d5c9}
.oi-siteplan-grid a>span {display:block;margin-top:10px;text-decoration:underline;text-underline-offset:4px}
@media(min-width:1450px){.oi-hero-layout{gap:65px}.oi-hero-photo{min-height:690px}}
@media(max-width:900px){.oi-hero-layout{gap:26px;grid-template-columns:1fr 1fr}.oi-hero h1{font-size:2.5rem}.oi-hero-photo{min-height:640px;border-top-left-radius:110px}.oi-construction-grid{gap:30px}}
@media(max-width:700px){
  body[data-empreendimento="origem-porto-imperial"] .ep-section{padding:52px 0}
  .oi-breadcrumb{padding-block:16px;font-size:.65rem;gap:7px}
  .oi-hero-layout{grid-template-columns:1fr;gap:28px;padding-bottom:25px}
  .oi-status{margin-bottom:25px;font-size:.68rem}
  .oi-logo{width:285px;margin-bottom:26px}
  .oi-hero h1{font-size:clamp(2.25rem,9vw,3rem)}
  .oi-hero-copy{padding-top:14px}.oi-hero-text{font-size:.96rem;margin-block:20px}
  .oi-hero-offer{margin-block:25px}.oi-hero-offer strong{font-size:2.25rem}
  .oi-actions{gap:18px}.oi-actions .ep-btn{width:100%;min-height:50px}
  .oi-partner-line{margin-top:26px}.oi-hero-photo{min-height:400px;border-top-left-radius:110px;margin:0}
  .oi-hero-photo img{object-position:50% 58%}.oi-hero-photo figcaption{font-size:.61rem}
  .oi-section-nav>div{gap:26px;padding-block:12px}.oi-section-nav a{font-size:.75rem}
  .oi-construction-grid{grid-template-columns:1fr;gap:35px}.oi-partners{grid-template-columns:1fr;gap:26px;padding:30px 0}
  .oi-siteplan-grid{grid-template-columns:1fr;gap:26px}
  .oi-partners-plus{text-align:left;font-size:2.25rem;line-height:1}.oi-partner-name{font-size:2.5rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
