/* Externalized from inline css in public page bloat-reduction phase. Source marker: assets/css/oloropa-phase12-destination-seo.css. */
/* Inlined from assets/css/oloropa-phase12-destination-seo.css */

/* Phase 12 — Destination framework + SEO/performance polish. Retains Phase 11/index UI language. */
:root{
  --p12-deep:#0B101A;
  --p12-safari:#1F3A2D;
  --p12-safari-2:#173527;
  --p12-gold:#C6A24A;
  --p12-sand:#F4E8D0;
  --p12-mist:#f8f2e6;
  --p12-ivory:#fff;
  --p12-charcoal:#2B2B2B;
  --p12-border:rgba(31,58,45,.13);
  --p12-shadow:0 35px 100px rgba(22,16,11,.14);
  --p12-ease:cubic-bezier(.22,1,.36,1);
}
body{background:var(--p12-mist);}
.p12-green-video{position:relative;overflow:hidden;background:var(--p12-safari);color:white;isolation:isolate}
.p12-green-video::before{content:"";position:absolute;inset:0;z-index:-3;background:linear-gradient(135deg,var(--p12-safari),#10251b);}
.p12-green-video::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(31,58,45,.92),rgba(31,58,45,.68) 46%,rgba(31,58,45,.28)),linear-gradient(180deg,rgba(11,16,26,.12),rgba(11,16,26,.72));}
.p12-bg-video{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;filter:saturate(1.06) contrast(1.05);opacity:.72;transform:scale(var(--p12-video-zoom,1.03));transition:transform .18s linear;}
.p12-location-hero{min-height:96vh;display:grid;align-items:end;padding:clamp(8rem,13vw,11rem) clamp(1.5rem,5vw,4.5rem) clamp(3rem,7vw,5.5rem);}
.p12-hero-inner{width:min(1500px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:clamp(2rem,5vw,5rem);align-items:end;position:relative;z-index:2;}
.p12-kicker{letter-spacing:.28em;text-transform:uppercase;font-size:.72rem;font-weight:800;color:var(--p12-gold)}
.p12-location-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.4rem,8.4vw,8.4rem);line-height:.86;letter-spacing:-.07em;margin:.5rem 0 1rem;text-shadow:0 18px 70px rgba(0,0,0,.46);}
.p12-location-hero h1 em{font-weight:300;color:#f7e6b8}
.p12-location-hero p{font-size:clamp(1rem,1.35vw,1.28rem);line-height:1.75;color:rgba(255,255,255,.78);max-width:780px}
.p12-hero-panel{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);border-radius:2rem;padding:1.25rem;backdrop-filter:blur(18px);box-shadow:0 35px 100px rgba(0,0,0,.22)}
.p12-hero-panel h3{font-family:Georgia,"Times New Roman",serif;font-size:2.2rem;line-height:.95;margin:.4rem 0;color:#fff}
.p12-hero-panel dl{display:grid;gap:.7rem;margin:1.1rem 0 0}
.p12-hero-panel div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(255,255,255,.11);padding-bottom:.6rem;color:rgba(255,255,255,.68)}
.p12-hero-panel dt{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--p12-gold);font-weight:800}
.p12-hero-panel dd{margin:0;text-align:right;color:#fff}
.p12-section{padding:clamp(4.5rem,8vw,7rem) clamp(1.5rem,5vw,4.5rem);background:var(--p12-mist);position:relative}
.p12-section.sand{background:var(--p12-sand)}
.p12-section.dark{background:var(--p12-deep);color:#fff}
.p12-inner{width:min(1500px,100%);margin:0 auto}
.p12-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.3rem}
.p12-head h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,6vw,6.8rem);line-height:.86;letter-spacing:-.07em;margin:.35rem 0;color:var(--p12-safari)}
.dark .p12-head h2{color:#fff}
.p12-head p{max-width:590px;line-height:1.75;color:rgba(43,43,43,.68)}
.dark .p12-head p{color:rgba(255,255,255,.68)}
.p12-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}
.p12-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.p12-card{position:relative;background:#fff;border:1px solid var(--p12-border);border-radius:1.65rem;box-shadow:var(--p12-shadow);overflow:hidden;transition:.55s var(--p12-ease)}
.dark .p12-card{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);backdrop-filter:blur(14px);color:#fff}
.p12-card:hover{transform:translateY(-8px);box-shadow:0 42px 130px rgba(31,58,45,.22)}
.p12-card-media{height:280px;position:relative;background:#111;overflow:hidden}
.p12-card-media img,.p12-card-media video{width:100%;height:100%;object-fit:cover;display:block;transition:1.2s var(--p12-ease)}
.p12-card:hover .p12-card-media img,.p12-card:hover .p12-card-media video{transform:scale(1.08)}
.p12-card-media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(31,58,45,.9),rgba(31,58,45,.16),transparent)}
.p12-card-body{padding:1.35rem}
.p12-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.95rem;line-height:1;color:var(--p12-safari);margin:.4rem 0 .65rem}
.dark .p12-card h3{color:#fff}
.p12-card p{line-height:1.7;color:rgba(43,43,43,.68)}
.dark .p12-card p{color:rgba(255,255,255,.68)}
.p12-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
.p12-tags span{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;color:var(--p12-safari);background:#f3ead5;border-radius:999px;padding:.45rem .65rem}
.dark .p12-tags span{background:rgba(255,255,255,.10);color:#fff;border:1px solid rgba(255,255,255,.13)}
.p12-orientation{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.1rem;align-items:stretch}
.p12-map-card{min-height:620px;border-radius:2rem;overflow:hidden;position:relative;background:#111;box-shadow:0 45px 130px rgba(0,0,0,.26)}
.p12-map-card iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.9) contrast(1.05)}
.p12-map-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(31,58,45,.84),rgba(31,58,45,.08),transparent)}
.p12-map-card .copy{position:absolute;left:1.5rem;right:1.5rem;bottom:1.5rem;color:#fff;z-index:2}
.p12-map-card h3{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,4rem);line-height:.92;letter-spacing:-.05em}
.p12-intel-list{display:grid;gap:1rem}
.p12-intel{position:relative;background:#fff;border:1px solid var(--p12-border);border-radius:1.4rem;padding:1.25rem 1.25rem 1.25rem 4.25rem;box-shadow:var(--p12-shadow)}
.p12-intel i{position:absolute;left:1.1rem;top:1.15rem;width:2.35rem;height:2.35rem;border-radius:999px;background:var(--p12-gold);display:grid;place-items:center;font-style:normal;font-weight:900;color:var(--p12-charcoal)}
.p12-intel h3{font-family:Georgia,"Times New Roman",serif;color:var(--p12-safari);font-size:1.65rem;line-height:1;margin:0 0 .4rem}
.p12-intel p{color:rgba(43,43,43,.68);line-height:1.7;margin:0}
.p12-route-scroll{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem .2rem 2rem}
.p12-route-scroll .p12-card{flex:0 0 clamp(300px,32vw,460px);scroll-snap-align:start}
.p12-gallery-board{display:grid;grid-template-columns:1.35fr .8fr .8fr;grid-auto-rows:240px;gap:1rem}
.p12-gallery-board figure{margin:0;position:relative;overflow:hidden;border-radius:1.5rem;background:#111;box-shadow:var(--p12-shadow);cursor:pointer}
.p12-gallery-board figure:first-child{grid-row:span 2}
.p12-gallery-board img{width:100%;height:100%;object-fit:cover;display:block;transition:1s var(--p12-ease)}
.p12-gallery-board figure:hover img{transform:scale(1.08)}
.p12-gallery-board figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;background:rgba(255,255,255,.92);border-radius:1rem;padding:.9rem;color:var(--p12-safari);font-weight:800;backdrop-filter:blur(14px)}
.p12-all-filter{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1.4rem}
.p12-filter-chip{border:1px solid rgba(31,58,45,.14);background:#fff;border-radius:999px;padding:.85rem 1rem;cursor:pointer;font-weight:800;color:var(--p12-safari);transition:.35s var(--p12-ease)}
.p12-filter-chip.is-active,.p12-filter-chip:hover{background:var(--p12-safari);color:#fff}
.p12-destination-card{display:block;text-decoration:none}
.p12-cta{position:relative;overflow:hidden;background:var(--p12-safari);color:#fff;padding:clamp(3.5rem,6vw,5.5rem) clamp(1.5rem,5vw,4.5rem)}
.p12-cta .p12-inner{display:flex;justify-content:space-between;gap:2rem;align-items:center}
.p12-cta h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.3rem,5vw,5.6rem);line-height:.93;letter-spacing:-.06em;margin:.2rem 0}
.p12-cta p{color:rgba(255,255,255,.72);line-height:1.75;max-width:620px}
.p12-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:999px;background:var(--p12-gold);color:var(--p12-charcoal);padding:1rem 1.35rem;font-weight:900;text-decoration:none;transition:.35s var(--p12-ease)}
.p12-btn:hover{background:#fff;transform:translateY(-2px)}
.p12-btn.ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px)}
.p12-performance-note{font-size:.82rem;line-height:1.7;color:rgba(43,43,43,.62);margin-top:1rem}
.dark .p12-performance-note{color:rgba(255,255,255,.58)}
@media(max-width:1100px){
  .p12-hero-inner,.p12-head,.p12-orientation,.p12-cta .p12-inner{grid-template-columns:1fr;display:grid}
  .p12-grid,.p12-grid.two{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .p12-location-hero{min-height:86vh}
  .p12-grid,.p12-grid.two,.p12-gallery-board{grid-template-columns:1fr}
  .p12-gallery-board figure:first-child{grid-row:auto}
  .p12-map-card{min-height:440px}
}
@media(prefers-reduced-motion:reduce){
  .p12-bg-video,.p12-card,.p12-card-media img,.p12-card-media video{transition:none!important;transform:none!important}
}
