/* ===== APB Investment Outlook ===== */
#outlookSection{--ol-gold:#9A7A35;--ol-gold-soft:rgba(196,160,82,.16);--ol-ink:#2b2416;--ol-mid:#6b6046}
.ol-hero{margin:0 0 2.4rem}
.ol-kicker{font-size:.62rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--ol-gold);margin-bottom:.7rem}
.ol-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.6rem,2.6vw,2.15rem);font-weight:600;color:var(--ol-ink);line-height:1.15;margin:0 0 .8rem}
.ol-lede{font-size:.95rem;color:var(--ol-mid);line-height:1.75;max-width:62ch;margin:0}

.ol-score{display:grid;grid-template-columns:210px 1fr;gap:2.2rem;background:#fff;border:1px solid var(--ol-gold-soft);border-radius:20px;padding:2rem 2.2rem;box-shadow:0 10px 34px rgba(61,43,14,.06);margin-bottom:1.6rem}
.ol-overall{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border-right:1px solid var(--ol-gold-soft);padding-right:1.6rem}
.ol-stars{font-size:1.25rem;letter-spacing:.12em;margin-bottom:.35rem}
.ol-star{color:rgba(196,160,82,.28);transition:color .5s}
.ol-star.on{color:#C4A052}
.ol-num{font-family:'Cormorant Garamond',serif;font-size:2.6rem;font-weight:600;color:var(--ol-ink);line-height:1}
.ol-num span{font-size:1.05rem;color:var(--ol-mid);font-weight:400;margin-left:.15rem}
.ol-overall-l{font-size:.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--ol-gold);margin-top:.55rem}
.ol-bars{display:flex;flex-direction:column;justify-content:center;gap:.95rem}
.ol-bar-top{display:flex;justify-content:space-between;align-items:baseline;font-size:.78rem;font-weight:600;color:var(--ol-ink);margin-bottom:.3rem}
.ol-bar-n{font-family:'Cormorant Garamond',serif;font-size:.95rem;color:var(--ol-gold)}
.ol-track{height:6px;border-radius:6px;background:rgba(196,160,82,.12);overflow:hidden}
.ol-fill{height:100%;border-radius:6px;background:linear-gradient(90deg,#C4A052,#9A7A35);transition:width 1.1s cubic-bezier(.22,.8,.3,1)}

.ol-exec{background:linear-gradient(180deg,#FFFDF8,#FBF5EA);border:1px solid var(--ol-gold-soft);border-left:3px solid #C4A052;border-radius:14px;padding:1.6rem 1.9rem;margin-bottom:2.2rem}
.ol-exec p{font-size:.95rem;color:#4a3f2c;line-height:1.8;margin:.65rem 0 0;max-width:75ch}

.ol-h{font-size:.66rem;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--ol-gold);display:flex;align-items:center;gap:1rem}
.ol-h::after{content:'';flex:1;height:1px;background:linear-gradient(to right,rgba(196,160,82,.35),transparent)}
.ol-block{margin-bottom:2.2rem}
.ol-block .ol-h{margin-bottom:1.15rem}

.ol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:1rem}
.ol-grid-2{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.ol-card,.ol-driver{background:#fff;border:1px solid var(--ol-gold-soft);border-radius:16px;padding:1.3rem 1.35rem;box-shadow:0 6px 22px rgba(61,43,14,.05);transition:transform .3s,box-shadow .3s}
.ol-card:hover,.ol-driver:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(61,43,14,.1)}
.ol-driver{display:flex;gap:.95rem;align-items:flex-start}
.ol-ic{width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:rgba(196,160,82,.1);display:flex;align-items:center;justify-content:center;color:var(--ol-gold);margin-bottom:.75rem}
.ol-driver .ol-ic{margin-bottom:0}
.ol-ic svg{width:18px;height:18px}
.ol-card-t{font-size:.78rem;font-weight:700;letter-spacing:.06em;color:var(--ol-ink);margin-bottom:.35rem}
.ol-card-b{font-size:.84rem;color:var(--ol-mid);line-height:1.65}

.ol-dd-note{font-size:.85rem;color:var(--ol-mid);margin:0 0 1rem;max-width:70ch}
.ol-check{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.7rem 2rem}
.ol-check li{display:flex;gap:.7rem;align-items:flex-start;font-size:.86rem;color:#4a3f2c;line-height:1.6;background:#fff;border:1px solid var(--ol-gold-soft);border-radius:12px;padding:.75rem .95rem}
.ol-ck{width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:rgba(196,160,82,.14);color:var(--ol-gold);display:flex;align-items:center;justify-content:center;margin-top:.1rem}
.ol-ck svg{width:11px;height:11px}

.ol-verdict{background:linear-gradient(135deg,#2C1A0A 0%,#3D2410 50%,#5d3317 100%);color:#FFF8F0;border-radius:22px;padding:2.4rem 2.5rem;box-shadow:0 24px 60px rgba(61,43,14,.24);position:relative;overflow:hidden}
.ol-verdict::before{content:'';position:absolute;top:-40%;right:-10%;width:340px;height:340px;background:radial-gradient(circle,rgba(196,160,82,.22),transparent 70%);pointer-events:none}
.ol-v-kicker{font-size:.62rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:#d9b96a;margin-bottom:1rem}
.ol-v-stars{display:flex;align-items:center;gap:.7rem;font-size:1.15rem;letter-spacing:.1em;margin-bottom:.9rem}
.ol-verdict .ol-star{color:rgba(255,240,210,.22)}
.ol-verdict .ol-star.on{color:#E8C877}
.ol-v-num{font-family:'Cormorant Garamond',serif;font-size:1.25rem;color:#FFF3DC}
.ol-v-sum{font-family:'Cormorant Garamond',serif;font-size:1.28rem;font-style:italic;line-height:1.5;color:#FFF8F0;max-width:56ch;margin:0 0 1.6rem}
.ol-v-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1.1rem 1.6rem;padding-top:1.4rem;border-top:1px solid rgba(232,200,119,.22)}
.ol-v-l{font-size:.58rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#d9b96a;margin-bottom:.3rem}
.ol-v-v{font-size:.86rem;color:rgba(255,248,240,.92);line-height:1.55}
.ol-v-close{margin:1.6rem 0 0;font-size:.8rem;color:rgba(255,240,220,.65);line-height:1.7;max-width:80ch}

@media(max-width:720px){
  .ol-score{grid-template-columns:1fr;gap:1.4rem;padding:1.5rem}
  .ol-overall{border-right:none;border-bottom:1px solid var(--ol-gold-soft);padding:0 0 1.2rem}
  .ol-verdict{padding:1.8rem 1.4rem}
  .ol-check{grid-template-columns:1fr}
}

/* ===== APB Vacation Rental Outlook ===== */
#rentalOutlookSection{--ol-gold:#9A7A35;--ol-gold-soft:rgba(196,160,82,.16);--ol-ink:#2b2416;--ol-mid:#6b6046}
.ro-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.9rem}
.ro-stat{background:#fff;border:1px solid var(--ol-gold-soft);border-radius:14px;padding:1.05rem 1.1rem;box-shadow:0 6px 22px rgba(61,43,14,.05);transition:transform .3s,box-shadow .3s}
.ro-stat:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(61,43,14,.1)}
.ro-stat-n{font-family:'Cormorant Garamond',serif;font-size:1.7rem;font-weight:600;color:#2b2416;line-height:1.05}
.ro-stat-l{font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#9A7A35;margin-top:.4rem}
.ro-stat-s{font-size:.72rem;color:#6b6046;line-height:1.45;margin-top:.25rem}
.ro-note{font-size:.78rem;color:#8a7a55;line-height:1.65;margin:.95rem 0 0;max-width:80ch;font-style:italic}
.ro-prose p{font-size:.92rem;color:#4a3f2c;line-height:1.78;margin:0 0 .9rem;max-width:78ch}
.ro-prose p:last-child{margin-bottom:0}
.ro-chips{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:1.1rem}
.ro-chip{font-size:.68rem;font-weight:600;letter-spacing:.08em;color:#6b5b3e;border:1px solid rgba(196,160,82,.35);border-radius:50px;padding:.45rem .95rem;background:rgba(196,160,82,.05)}
@media(max-width:720px){.ro-stats{grid-template-columns:repeat(2,1fr)}}

/* Residence Guide reuses the .ol-* system — give it the same variable scope */
#residenceSection{--ol-gold:#9A7A35;--ol-gold-soft:rgba(196,160,82,.16);--ol-ink:#2b2416;--ol-mid:#6b6046}

/* Generic, non-unit-specific sections removed per editorial direction (2026-07-12):
   Residence Guide = a generic buyer handbook identical on every condo;
   Vacation Rental Outlook = mostly island-wide market stats that the Market Report covers. */
#rentalOutlookSection { display: none !important; }

/* ===== Residence Guide — clean, de-boxed editorial treatment ===== */
/* strip the card/box chrome so the guide reads as calm columns, not a wall of tiles */
#residenceSection .ol-card,#residenceSection .ol-driver{
  background:transparent;border:none;border-radius:0;box-shadow:none;padding:0}
#residenceSection .ol-card:hover,#residenceSection .ol-driver:hover{transform:none;box-shadow:none}
#residenceSection .ol-block{margin-bottom:3.2rem}
#residenceSection .ol-block .ol-h{margin-bottom:1.6rem}
/* more air between items */
#residenceSection .ol-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem 2.6rem}
#residenceSection .ol-grid-2{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.9rem 2.6rem}
/* lighter icon: no filled tile, just the gold glyph */
#residenceSection .ol-ic{width:26px;height:26px;flex:0 0 26px;background:transparent;border-radius:0;margin-bottom:.6rem}
#residenceSection .ol-ic svg{width:20px;height:20px}
#residenceSection .ol-card-t{font-size:.82rem;letter-spacing:.04em;margin-bottom:.4rem}
#residenceSection .ol-card-b{font-size:.865rem;line-height:1.68}
/* checklists become plain checkmark lists — no pills */
#residenceSection .ol-check{gap:.9rem 2.6rem}
#residenceSection .ol-check li{background:transparent;border:none;border-radius:0;padding:0}
#residenceSection .ol-ck{background:transparent}
