@import url("oloropa-phase9-immersive-accessibility.css?v=20260604-phase9");
/* Oloropa sitewide immersive layer. Additive, scoped, and public-page safe. */
:root{
  --olx-green:#1F3A2D;
  --olx-deep:#07120d;
  --olx-gold:#C6A24A;
  --olx-ivory:#fff8eb;
  --olx-ink:#17231c;
  --olx-line:rgba(31,58,45,.14);
  --olx-shadow:0 28px 90px rgba(7,24,16,.18);
}
.olx-command-dock,.olx-page-guide,.olx-story-rail,.olx-story-caption,.oloropa-final-qa-badge{display:none!important;}
body[data-olx-tone="atlas"]{--olx-green:#173d2d;--olx-gold:#C6A24A}
body[data-olx-tone="coast"]{--olx-green:#12433c;--olx-gold:#d7bb72}
body[data-olx-tone="story"]{--olx-green:#173527;--olx-gold:#C6A24A}
body[data-olx-tone="brief"]{--olx-green:#1F3A2D;--olx-gold:#e0b963}
body[data-olx-tone="guard"]{--olx-green:#10281d;--olx-gold:#efc96b}
html{scroll-behavior:smooth}
body.olx-immersive-ready{--olx-progress:0;--olx-mouse-x:50%;--olx-mouse-y:30%}
body.olx-immersive-ready::before{
  content:"";position:fixed;left:0;top:0;z-index:2147482500;width:100%;height:3px;
  transform:scaleX(var(--olx-progress));transform-origin:left center;
  background:linear-gradient(90deg,transparent,var(--olx-gold),#fff0bd,var(--olx-gold),transparent);
  box-shadow:0 0 22px rgba(198,162,74,.42);pointer-events:none;
}
body.olx-immersive-ready::after{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(circle at var(--olx-mouse-x) var(--olx-mouse-y),rgba(198,162,74,.10),transparent 24rem);
}
.olx-reveal,
.olx-reveal.olx-fade-reveal,
[data-olx-reveal-mode="fade"]{opacity:0;transform:none;filter:none;transition:opacity .58s ease;will-change:opacity}
.olx-reveal.is-visible,
.olx-reveal.olx-fade-reveal.is-visible,
[data-olx-reveal-mode="fade"].is-visible{opacity:1;transform:none;filter:none}
body[data-oloropa-page="index.php"] [data-ol-reveal="fade-in"],
body[data-oloropa-page="index.php"] [data-ol-reveal="fade-in"] [data-ol-es-reveal-item]{transform:none!important;filter:none!important}
html[data-ol-reveal-authority="oloropa-immersive-sitewide-fade"] [data-ol-es-reveal-item],
html[data-ol-reveal-authority="oloropa-immersive-sitewide-fade"] [data-ol-reveal-item],
html[data-ol-reveal-authority="oloropa-immersive-sitewide-fade"] .ol-p1-reveal-ready,
body[data-ol-reveal-authority="oloropa-immersive-sitewide-fade"] [data-ol-es-reveal-item],
body[data-ol-reveal-authority="oloropa-immersive-sitewide-fade"] [data-ol-reveal-item],
body[data-ol-reveal-authority="oloropa-immersive-sitewide-fade"] .ol-p1-reveal-ready{
  transform:none!important;
  filter:none!important;
  transition-property:opacity,box-shadow,border-color!important;
}
html[data-ol-reveal-authority="oloropa-immersive-sitewide-fade"] .ol-p1-stagger-child,
body[data-ol-reveal-authority="oloropa-immersive-sitewide-fade"] .ol-p1-stagger-child{
  transform:none!important;
  filter:none!important;
}
.olx-media-awake img,.olx-media-awake video{transition:transform 1.1s cubic-bezier(.22,1,.36,1),filter 1.1s cubic-bezier(.22,1,.36,1)}
.olx-media-awake:hover img,.olx-media-awake:hover video{transform:scale(1.045);filter:saturate(1.08) contrast(1.03)}
.olx-command-dock{
  position:fixed;left:50%;bottom:18px;z-index:2147482400;display:flex;align-items:center;gap:.55rem;
  max-width:calc(100vw - 24px);padding:.48rem;border:1px solid rgba(255,248,235,.16);border-radius:999px;
  color:var(--olx-ivory);background:linear-gradient(135deg,rgba(7,25,17,.86),rgba(31,58,45,.78));
  box-shadow:0 22px 80px rgba(0,0,0,.28);backdrop-filter:blur(18px);transform:translateX(-50%);
}
.olx-command-dock a,.olx-command-dock button{
  display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:38px;padding:0 .85rem;
  border:0;border-radius:999px;background:rgba(255,248,235,.08);color:var(--olx-ivory);
  font:inherit;font-size:.78rem;font-weight:900;text-decoration:none;white-space:nowrap;cursor:pointer;
}
.olx-command-dock a:first-child{background:linear-gradient(135deg,var(--olx-ivory),#f1da9b);color:#173024}
.olx-command-dock button[aria-pressed="true"]{background:rgba(198,162,74,.22)}
.olx-brief-toast{
  position:fixed;right:18px;bottom:78px;z-index:2147482401;max-width:min(360px,calc(100vw - 36px));
  padding:.9rem 1rem;border:1px solid rgba(31,58,45,.12);border-radius:18px;background:var(--olx-ivory);
  color:var(--olx-green);box-shadow:var(--olx-shadow);font-weight:850;opacity:0;transform:translateY(12px);
  pointer-events:none;transition:opacity .28s ease,transform .28s ease;
}
.olx-brief-toast.is-visible{opacity:1;transform:translateY(0)}
.olx-booking-modal{
  position:fixed;inset:0;z-index:2147482600;display:none;align-items:center;justify-content:center;
  padding:18px;background:rgba(3,10,7,.66);backdrop-filter:blur(12px);
}
.olx-booking-modal.is-open{display:flex}
.olx-booking-dialog{
  width:min(860px,100%);max-height:min(820px,calc(100vh - 36px));overflow:auto;border-radius:28px;
  border:1px solid rgba(255,248,235,.18);background:linear-gradient(145deg,#fff8eb,#f0dfb7);
  color:var(--olx-green);box-shadow:0 36px 120px rgba(0,0,0,.38);
}
.olx-booking-head{
  position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;
  padding:1.15rem 1.2rem;border-bottom:1px solid rgba(31,58,45,.12);
  background:linear-gradient(145deg,rgba(255,248,235,.96),rgba(240,223,183,.94));backdrop-filter:blur(16px);
}
.olx-booking-head span{display:block;color:#8b6a25;font-size:.68rem;font-weight:950;letter-spacing:.18em;text-transform:uppercase}
.olx-booking-head strong{display:block;margin:.22rem 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.75rem,3vw,2.65rem);line-height:.95;color:var(--olx-green)}
.olx-booking-head p{margin:0;color:rgba(31,58,45,.68);line-height:1.55}
.olx-booking-close{flex:0 0 auto;border:1px solid rgba(31,58,45,.14);border-radius:999px;background:#fff;color:var(--olx-green);width:40px;height:40px;font-size:1.25rem;cursor:pointer}
.olx-booking-form{padding:1.15rem 1.2rem 1.25rem}
.olx-booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.82rem}
.olx-booking-field{display:grid;gap:.36rem}
.olx-booking-field.full{grid-column:1/-1}
.olx-booking-field label{font-size:.72rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;color:rgba(31,58,45,.72)}
.olx-booking-field input,.olx-booking-field select,.olx-booking-field textarea{
  width:100%;border:1px solid rgba(31,58,45,.16);border-radius:16px;background:rgba(255,255,255,.72);
  color:var(--olx-green);font:inherit;font-weight:750;min-height:48px;padding:.82rem .9rem;outline:none;
}
.olx-booking-field textarea{min-height:118px;resize:vertical;line-height:1.5}
.olx-booking-field :is(input,select,textarea):focus{border-color:var(--olx-gold);box-shadow:0 0 0 4px rgba(198,162,74,.18);background:#fff}
.olx-booking-status{min-height:22px;margin:.9rem 0 0;color:rgba(31,58,45,.72);font-weight:850}
.olx-booking-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
.olx-booking-actions button{
  border:0;border-radius:999px;min-height:46px;padding:0 1rem;font:inherit;font-weight:950;cursor:pointer;
}
.olx-booking-actions button[type="submit"]{background:linear-gradient(135deg,var(--olx-green),#0e271b);color:var(--olx-ivory);box-shadow:0 16px 45px rgba(31,58,45,.22)}
.olx-booking-actions button[type="button"]{background:rgba(31,58,45,.08);color:var(--olx-green)}
.olx-booking-actions button:disabled{opacity:.62;cursor:wait}
body.olx-booking-lock{overflow:hidden}
.olx-page-guide{
  position:fixed;right:18px;top:calc(var(--ol19-header-height,76px) + 34px);z-index:2147482300;
  width:min(340px,calc(100vw - 36px));padding:1rem;border:1px solid rgba(255,248,235,.16);border-radius:24px;
  color:var(--olx-ivory);background:linear-gradient(135deg,rgba(7,25,17,.74),rgba(31,58,45,.62));
  box-shadow:0 24px 80px rgba(0,0,0,.22);backdrop-filter:blur(18px);transform:translateY(0);transition:opacity .3s ease,transform .3s ease;
}
.olx-page-guide.is-minimized{opacity:.78;transform:translateY(calc(-100% + 52px))}
.olx-page-guide-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}
.olx-page-guide span{display:block;color:var(--olx-gold);font-size:.66rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.olx-page-guide strong{display:block;margin:.35rem 0;font-family:Georgia,"Times New Roman",serif;font-size:1.55rem;line-height:1}
.olx-page-guide p{margin:0;color:rgba(255,248,235,.72);font-size:.92rem;line-height:1.62}
.olx-page-guide button{border:1px solid rgba(255,248,235,.16);border-radius:999px;background:rgba(255,248,235,.08);color:var(--olx-ivory);width:34px;height:34px;cursor:pointer}
.olx-page-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.9rem}
.olx-page-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 .75rem;border-radius:999px;background:rgba(255,248,235,.10);color:var(--olx-ivory);font-size:.72rem;font-weight:900;text-decoration:none}
.olx-page-actions a:first-child{background:linear-gradient(135deg,var(--olx-ivory),#f1da9b);color:#173024}
.olx-section-pips{display:flex;gap:.32rem;margin-top:.9rem}
.olx-section-pips i{display:block;width:100%;height:4px;border-radius:999px;background:rgba(255,248,235,.16);overflow:hidden}
.olx-section-pips i.is-active{background:var(--olx-gold)}
body[data-oloropa-page="index.php"] .olx-story-rail{
  position:fixed;left:18px;top:50%;z-index:1200;display:grid;gap:.5rem;transform:translateY(-50%);
}
body[data-oloropa-page="index.php"] .olx-story-rail button{
  display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:.55rem;width:168px;min-height:38px;
  border:1px solid rgba(255,248,235,.14);border-radius:999px;background:rgba(7,24,16,.42);color:rgba(255,248,235,.74);
  backdrop-filter:blur(14px);font-size:.72rem;font-weight:900;text-align:left;cursor:pointer;
}
body[data-oloropa-page="index.php"] .olx-story-rail i{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:rgba(255,248,235,.10);font-style:normal;color:var(--olx-gold)}
body[data-oloropa-page="index.php"] .olx-story-rail button.is-active{background:rgba(255,248,235,.94);color:var(--olx-green);box-shadow:0 18px 55px rgba(0,0,0,.24)}
body[data-oloropa-page="index.php"] .olx-story-caption{
  position:fixed;right:18px;top:50%;z-index:1200;width:min(330px,calc(100vw - 36px));padding:1rem;
  border:1px solid rgba(255,248,235,.16);border-radius:24px;background:rgba(7,24,16,.58);color:var(--olx-ivory);
  backdrop-filter:blur(18px);box-shadow:0 22px 80px rgba(0,0,0,.24);transform:translateY(-50%);
}
body[data-oloropa-page="index.php"] .olx-story-caption span{display:block;color:var(--olx-gold);font-size:.68rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
body[data-oloropa-page="index.php"] .olx-story-caption strong{display:block;margin:.35rem 0;font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;line-height:1}
body[data-oloropa-page="index.php"] .olx-story-caption p{margin:0;color:rgba(255,248,235,.72);line-height:1.6}
@media(max-width:980px){
  .olx-command-dock{left:12px;right:12px;bottom:12px;transform:none;justify-content:space-between;border-radius:22px}
  .olx-command-dock a,.olx-command-dock button{flex:1;padding:0 .6rem;font-size:.72rem}
  .olx-page-guide{display:none}
  body[data-oloropa-page="index.php"] .olx-story-rail,body[data-oloropa-page="index.php"] .olx-story-caption{display:none}
  .olx-booking-dialog{border-radius:22px}
  .olx-booking-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .olx-reveal,.olx-media-awake img,.olx-media-awake video,*{transition:none!important;animation:none!important}
}
.olx-booking-options {
  border: 1px solid rgba(217, 181, 96, 0.22);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.07);
  padding: 0.9rem;
  margin-bottom: 1rem;
}

.olx-booking-options-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: start;
  color: rgba(255, 248, 230, 0.72);
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 800;
}

.olx-booking-options-head strong {
  color: #ffe8a8;
  text-align: right;
  max-width: 52%;
}

.olx-booking-option-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.4rem;
  margin: 0.85rem 0;
}

.olx-booking-option-tabs button {
  border: 1px solid rgba(217, 181, 96, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 248, 230, 0.78);
  padding: 0.62rem 0.55rem;
  font-weight: 900;
  cursor: pointer;
}

.olx-booking-option-tabs button.is-active {
  background: linear-gradient(135deg, #d8b45f, #f2d98f);
  color: #15241b;
}

.olx-booking-option-list {
  display: grid;
  gap: 0.55rem;
  max-height: 19rem;
  overflow: auto;
  padding-right: 0.2rem;
}

.olx-booking-option {
  display: grid;
  grid-template-columns: 74px 1fr;
  gap: 0.75rem;
  width: 100%;
  border: 1px solid rgba(217, 181, 96, 0.18);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.08);
  color: #fff8e6;
  padding: 0.52rem;
  text-align: left;
  cursor: pointer;
}

.olx-booking-option.is-selected {
  border-color: rgba(242, 217, 143, 0.78);
  background: rgba(242, 217, 143, 0.16);
}

.olx-booking-option-media {
  display: block;
  min-height: 74px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.12) center/cover no-repeat;
}

.olx-booking-option-copy {
  min-width: 0;
  display: grid;
  gap: 0.18rem;
}

.olx-booking-option-copy span,
.olx-booking-option-copy small {
  color: rgba(255, 248, 230, 0.62);
}

.olx-booking-option-copy span {
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.11em;
  font-weight: 900;
}

.olx-booking-option-copy strong {
  color: #fff8e6;
  font-size: 0.95rem;
  line-height: 1.18;
}

.olx-booking-option-copy small {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.35;
}

.olx-booking-option-copy em {
  color: #ffe8a8;
  font-style: normal;
  font-weight: 900;
  font-size: 0.8rem;
}

.olx-booking-option-empty {
  margin: 0;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.07);
  color: rgba(255, 248, 230, 0.68);
  padding: 0.8rem;
  font-weight: 700;
}

.olx-booking-itinerary-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin: 0.85rem 0 0.5rem;
  color: rgba(255, 248, 230, 0.66);
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.11em;
  font-weight: 900;
}

.olx-booking-itinerary-head strong {
  color: #ffe8a8;
  text-align: right;
}

.olx-booking-itinerary-days {
  display: grid;
  gap: 0.45rem;
}

.olx-booking-itinerary-days article {
  display: grid;
  grid-template-columns: 4.4rem 1fr;
  gap: 0.45rem 0.65rem;
  border: 1px solid rgba(217, 181, 96, 0.15);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.055);
  padding: 0.62rem;
}

.olx-booking-itinerary-days b {
  color: #ffe8a8;
  font-size: 0.78rem;
}

.olx-booking-itinerary-days span {
  color: #fff8e6;
  font-weight: 900;
  line-height: 1.2;
}

.olx-booking-itinerary-days small {
  grid-column: 2;
  color: rgba(255, 248, 230, 0.64);
  line-height: 1.35;
}

.olx-serenity-live-rail {
  width: min(1180px, calc(100% - 32px));
  margin: 28px auto;
  border: 1px solid rgba(198, 162, 74, 0.24);
  border-radius: 26px;
  background: rgba(255, 250, 240, 0.9);
  color: #17231d;
  padding: 20px;
  box-shadow: 0 24px 70px rgba(31, 58, 45, 0.12);
}

.olx-serenity-live-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 14px;
}

.olx-serenity-live-head span {
  color: #8a6f2e;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-weight: 900;
}

.olx-serenity-live-head strong {
  color: #1f3a2d;
  font-family: Georgia, serif;
  font-size: clamp(1.4rem, 3vw, 2.1rem);
}

.olx-serenity-live-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 12px;
}

.olx-serenity-live-grid article {
  overflow: hidden;
  border: 1px solid rgba(198, 162, 74, 0.18);
  border-radius: 20px;
  background: #fff;
}

.olx-serenity-live-grid article > span {
  display: block;
  height: 145px;
  background: #173326 center/cover no-repeat;
}

.olx-serenity-live-grid article > div {
  padding: 13px;
}

.olx-serenity-live-grid small {
  display: block;
  color: #8a6f2e;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.olx-serenity-live-grid b {
  display: block;
  margin-top: 5px;
  color: #1f3a2d;
  font-size: 1.02rem;
}

.olx-serenity-live-grid p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  min-height: 2.7em;
  overflow: hidden;
  color: #667067;
  line-height: 1.35;
}

.olx-serenity-live-grid button {
  border: 0;
  border-radius: 999px;
  background: #1f3a2d;
  color: white;
  padding: 10px 13px;
  font-weight: 900;
  cursor: pointer;
}

@media (max-width: 560px) {
  .olx-booking-option-tabs {
    grid-template-columns: 1fr;
  }

  .olx-booking-option {
    grid-template-columns: 58px 1fr;
  }

  .olx-booking-option-media {
    min-height: 58px;
  }
}

/* Phase: advanced Oloropa booking/itinerary builder */
.olx-builder-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:.85rem 0 1rem}.olx-builder-progress button{border:1px solid rgba(198,162,74,.28);background:#fff;border-radius:999px;padding:.45rem .55rem;display:flex;align-items:center;justify-content:center;gap:.4rem;font-size:.72rem;font-weight:900;color:#123529}.olx-builder-progress button b{width:1.35rem;height:1.35rem;border-radius:999px;background:#F4E8D0;display:grid;place-items:center}.olx-builder-progress button.is-active{background:#123529;color:#fff;border-color:#123529}.olx-builder-progress button.is-active b{background:#C6A24A;color:#123529}.olx-step-page{display:none;border:1px solid rgba(198,162,74,.22);background:linear-gradient(180deg,#fff,#fffaf0);border-radius:24px;padding:1rem;margin-top:1rem}.olx-step-page.is-active{display:block;animation:olxStepIn .28s ease}.olx-step-page h3{margin:0 0 .35rem;color:#123529;font-size:1.05rem}.olx-step-page p{margin:0 0 .9rem;color:#657168;font-size:.88rem}.olx-step-controls{display:flex;justify-content:space-between;gap:.75rem;margin-top:.85rem}.olx-step-controls button{border:1px solid rgba(198,162,74,.32);border-radius:999px;background:#fff;padding:.75rem 1rem;font-weight:900;color:#123529}.olx-step-controls button:last-child{background:#123529;color:#fff}.olx-step-controls button:disabled{opacity:.45}.olx-package-morph-strip{position:absolute;left:.35rem;right:.35rem;bottom:.35rem;display:flex;gap:.25rem}.olx-package-morph-strip i{height:28px;flex:1;border-radius:10px;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.72);box-shadow:0 4px 12px rgba(0,0,0,.18);animation:olxMiniMorph 7s ease-in-out infinite}.olx-route-order{display:block!important;margin-top:.35rem;color:#123529!important;font-weight:800}.olx-package-morph-show{position:relative;height:170px;border-radius:24px;overflow:hidden;margin:.9rem 0;background:#123529;isolation:isolate}.olx-package-morph-show figure{position:absolute;inset:0;margin:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.06);animation:olxPackageMorph 24s infinite}.olx-package-morph-show figure:nth-child(1){animation-delay:0s}.olx-package-morph-show figure:nth-child(2){animation-delay:3s}.olx-package-morph-show figure:nth-child(3){animation-delay:6s}.olx-package-morph-show figure:nth-child(4){animation-delay:9s}.olx-package-morph-show figure:nth-child(5){animation-delay:12s}.olx-package-morph-show figure:nth-child(6){animation-delay:15s}.olx-package-morph-show figure:nth-child(7){animation-delay:18s}.olx-package-morph-show figure:nth-child(8){animation-delay:21s}.olx-package-morph-show figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;border-radius:999px;background:rgba(18,53,41,.78);color:#fff;padding:.5rem .8rem;font-size:.76rem;font-weight:900;backdrop-filter:blur(10px)}.olx-availability-calendar{border:1px solid rgba(198,162,74,.24);background:#fff;border-radius:24px;padding:1rem;margin-top:1rem}.olx-availability-calendar b{display:block;color:#123529}.olx-availability-calendar small{color:#657168}.olx-date-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:.45rem;margin-top:.8rem}.olx-date-chip{border:1px solid rgba(198,162,74,.26);border-radius:16px;background:#fffaf0;padding:.55rem .45rem;text-align:center;color:#123529}.olx-date-chip b{font-size:.78rem}.olx-date-chip span{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:#657168}.olx-date-chip.available,.olx-date-chip.open{background:#ecfdf5;border-color:#86efac}.olx-date-chip.blocked,.olx-date-chip.closed{background:#fff1f2;border-color:#fecdd3}.olx-date-chip.is-selected{outline:3px solid rgba(198,162,74,.35);background:#123529;color:#fff}.olx-date-chip.is-selected span,.olx-date-chip.is-selected b{color:#fff}@keyframes olxStepIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes olxMiniMorph{0%,100%{transform:scale(.96);opacity:.72}40%{transform:scale(1.04);opacity:1}}@keyframes olxPackageMorph{0%,11%{opacity:0;transform:scale(1.08) translateX(2%)}14%,25%{opacity:1;transform:scale(1) translateX(0)}31%,100%{opacity:0;transform:scale(1.06) translateX(-2%)}}@media(max-width:640px){.olx-builder-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.olx-package-morph-show{height:130px}.olx-date-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Safari Brief builder account handoff + cost lens */
.olx-email-lock-note{display:block;margin-top:.35rem;color:rgba(31,58,45,.58);font-size:.72rem;line-height:1.5;font-weight:750;text-transform:none;letter-spacing:0}
.olx-cost-estimate{margin-top:1rem;border:1px solid rgba(198,162,74,.34);border-radius:24px;background:linear-gradient(135deg,rgba(31,58,45,.96),rgba(15,39,27,.92));color:#fff8e6;padding:1rem;box-shadow:0 18px 50px rgba(31,58,45,.18)}
.olx-cost-estimate span{display:block;color:#e8d5a0;font-size:.68rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.olx-cost-estimate strong{display:block;margin:.25rem 0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.65rem,3vw,2.3rem);line-height:1;color:#fff}
.olx-cost-estimate small{display:block;color:rgba(255,248,230,.72);line-height:1.55;font-weight:750}
.olx-booking-status .olx-brief-success-title{display:block;color:#123529;font-size:1rem;font-weight:950;margin-bottom:.2rem}
.olx-booking-status .olx-brief-success-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.75rem}
.olx-booking-status .olx-brief-success-actions a,.olx-booking-status .olx-brief-success-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:0;border-radius:999px;padding:0 .9rem;text-decoration:none;font:inherit;font-size:.78rem;font-weight:950;cursor:pointer}
.olx-booking-status .olx-brief-success-actions a{background:#123529;color:#fff8e6}.olx-booking-status .olx-brief-success-actions button{background:rgba(31,58,45,.08);color:#123529}
@media(max-width:640px){.olx-booking-status .olx-brief-success-actions a,.olx-booking-status .olx-brief-success-actions button{width:100%}.olx-cost-estimate{border-radius:20px}}
[data-ol-phase4-live-system],
[data-ol-public-immersive-bridge],
[data-oloropa-public-immersive-bridge],
[data-public-immersive-bridge],
.ol-phase4-live-system,
.ol-phase4-system-section,
.ol-p4-live-system,
.ol-p4-system-section,
.ol-p4-live-panel,
.ol-p4-public-bridge,
.ol-phase4-bridge,
.ol-public-immersive-bridge,
.oloropa-public-immersive-bridge,
.ol-immersive-bridge,
.olx-immersive-bridge,
.public-immersive-bridge,
[class*="phase4-live"],
[class*="phase-4-live"],
[class*="public-immersive-bridge"],
[class*="immersive-bridge"] {
  display: none !important;
}

.ol-es-sound-dock {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .2) !important;
  border-radius: 999px !important;
  background: linear-gradient(145deg, rgba(8, 31, 24, .42), rgba(255, 255, 255, .1)) !important;
  color: #f8ead0 !important;
  box-shadow: 0 18px 44px rgba(2, 10, 7, .38), inset 0 1px 0 rgba(255, 255, 255, .2), inset 0 -10px 22px rgba(0, 0, 0, .16) !important;
  backdrop-filter: blur(18px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(150%) !important;
}

.ol-es-sound-dock::before {
  content: "" !important;
  position: absolute !important;
  inset: 6px !important;
  border-radius: inherit !important;
  background: radial-gradient(circle at 35% 25%, rgba(255, 255, 255, .32), transparent 34%), linear-gradient(145deg, rgba(218, 184, 112, .22), rgba(28, 132, 95, .18)) !important;
  pointer-events: none !important;
}

.ol-es-sound-dock::after {
  content: none !important;
}

.ol-es-sound-dock button,
.ol-es-sound-dock [role="button"] {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
  color: inherit !important;
}

.ol-es-sound-wave {
  width: 19px !important;
  height: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
}

.ol-es-sound-wave i,
.ol-es-sound-wave span {
  width: 3px !important;
  min-width: 3px !important;
  height: 8px !important;
  display: block !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #fff7dc, #d9ac55) !important;
  box-shadow: 0 0 12px rgba(226, 184, 94, .42) !important;
  transform-origin: center !important;
  animation: olProSoundWave 1.08s ease-in-out infinite !important;
}

.ol-es-sound-wave i:nth-child(2),
.ol-es-sound-wave span:nth-child(2) {
  animation-delay: .12s !important;
}

.ol-es-sound-wave i:nth-child(3),
.ol-es-sound-wave span:nth-child(3) {
  animation-delay: .24s !important;
}

.ol-es-sound-wave i:nth-child(4),
.ol-es-sound-wave span:nth-child(4) {
  animation-delay: .36s !important;
}

.ol-es-sound-dock[data-ol-es-muted="true"] .ol-es-sound-wave i,
.ol-es-sound-dock[data-ol-es-muted="true"] .ol-es-sound-wave span,
.ol-es-sound-dock[data-muted="true"] .ol-es-sound-wave i,
.ol-es-sound-dock[data-muted="true"] .ol-es-sound-wave span,
.ol-es-sound-dock[data-state="muted"] .ol-es-sound-wave i,
.ol-es-sound-dock[data-state="muted"] .ol-es-sound-wave span {
  height: 7px !important;
  opacity: .46 !important;
  animation: none !important;
  background: rgba(248, 234, 208, .72) !important;
  box-shadow: none !important;
}

.ol-es-sound-label,
.ol-es-sr {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@keyframes olProSoundWave {
  0%, 100% {
    height: 7px;
    opacity: .68;
  }
  42% {
    height: 18px;
    opacity: 1;
  }
  72% {
    height: 11px;
    opacity: .88;
  }
}

@media (max-width: 640px) {
  .ol-es-sound-dock {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    max-width: 42px !important;
    max-height: 42px !important;
  }
}
