/* Externalized from inline css in public page bloat-reduction phase. Source marker: assets/css/oloropa-checkpoint1-serenity-framework.css. */
/* Inlined from assets/css/oloropa-checkpoint1-serenity-framework.css */

:root{
  --sh-deep:#0B101A;
  --sh-safari:#1F3A2D;
  --sh-safari-2:#173527;
  --sh-gold:#C6A24A;
  --sh-sand:#F4E8D0;
  --sh-mist:#f8f2e6;
  --sh-ivory:#fff;
  --sh-charcoal:#2B2B2B;
  --sh-border:rgba(31,58,45,.13);
  --sh-shadow:0 35px 100px rgba(22,16,11,.14);
  --sh-ease:cubic-bezier(.22,1,.36,1);
}
body[data-serenity-checkpoint]{background:var(--sh-mist);color:var(--sh-charcoal)}
.sh-progress{position:fixed;top:0;left:0;height:3px;width:100%;z-index:240;background:linear-gradient(90deg,transparent,var(--sh-gold),#f7e6b8,var(--sh-gold),transparent);transform-origin:left center;transform:scaleX(0)}
.sh-nav{position:fixed;top:18px;left:50%;transform:translateX(-50%);width:min(1500px,calc(100% - 32px));z-index:220;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;color:#fff;pointer-events:none}
.sh-nav>*{pointer-events:auto}
.sh-brand{display:flex;align-items:center;gap:.85rem;text-decoration:none;color:#fff}
.sh-brand img{width:46px;height:46px;border-radius:999px;object-fit:cover;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);box-shadow:0 18px 45px rgba(0,0,0,.24)}
.sh-brand small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.34em;color:rgba(255,255,255,.62)}
.sh-brand strong{display:block;font-size:.94rem;text-transform:uppercase;letter-spacing:.18em}
.sh-pill{display:flex;align-items:center;gap:.35rem;border-radius:999px;padding:.42rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(16px)}
.sh-pill a{font-size:11px;text-transform:uppercase;letter-spacing:.22em;color:rgba(255,255,255,.78);padding:.7rem 1rem;border-radius:999px;text-decoration:none;transition:.35s var(--sh-ease)}
.sh-pill a:hover,.sh-pill a.is-active{background:rgba(255,255,255,.1);color:#fff}
.sh-nav-cta{justify-self:end;background:rgba(255,255,255,.92);color:var(--sh-charcoal);border-radius:999px;padding:.45rem .45rem .45rem 1.15rem;display:flex;gap:.85rem;align-items:center;font-size:.9rem;font-weight:800;text-decoration:none}
.sh-nav-cta span:last-child{width:34px;height:34px;border-radius:999px;background:var(--sh-safari);color:#fff;display:grid;place-items:center}
.sh-hero{position:relative;min-height:96vh;background:var(--sh-deep);overflow:hidden;color:#fff;display:grid;align-items:end;padding:clamp(7rem,12vw,10.5rem) clamp(1.5rem,5vw,4rem) clamp(3rem,7vw,5rem);isolation:isolate}
.sh-hero video,.sh-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(1.06) contrast(1.04);transform:scale(var(--sh-zoom,1.03));transition:transform .18s linear}
.sh-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 52% 38%,rgba(244,232,208,.09),transparent 24%),linear-gradient(90deg,rgba(31,58,45,.94),rgba(31,58,45,.62) 46%,rgba(31,58,45,.22)),linear-gradient(180deg,rgba(11,16,26,.12),rgba(11,16,26,.78))}
.sh-hero-grid{width:min(1500px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,450px);gap:clamp(2rem,5vw,5rem);align-items:end;position:relative;z-index:2}
.sh-kicker{letter-spacing:.28em;text-transform:uppercase;font-size:.72rem;font-weight:800;color:var(--sh-gold)}
.sh-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.2rem,8vw,8rem);line-height:.86;letter-spacing:-.07em;margin:.6rem 0 1rem;text-shadow:0 18px 70px rgba(0,0,0,.46)}
.sh-hero h1 em{font-weight:300;color:#f7e6b8}
.sh-hero p{font-size:clamp(1rem,1.35vw,1.24rem);line-height:1.75;color:rgba(255,255,255,.78);max-width:780px}
.sh-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.5rem}
.sh-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:999px;background:var(--sh-gold);color:var(--sh-charcoal);padding:1rem 1.35rem;font-weight:900;text-decoration:none;border:0;cursor:pointer;transition:.35s var(--sh-ease)}
.sh-btn:hover{background:#fff;transform:translateY(-2px)}
.sh-btn.ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(14px)}
.sh-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)}
.sh-hero-panel h3{font-family:Georgia,"Times New Roman",serif;font-size:2.2rem;line-height:.95;margin:.4rem 0;color:#fff}
.sh-panel-list{display:grid;gap:.7rem;margin-top:1rem}
.sh-panel-list 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)}
.sh-panel-list strong{color:#fff;text-align:right}
.sh-section{position:relative;padding:clamp(4.5rem,8vw,7rem) clamp(1.5rem,5vw,4.5rem);background:var(--sh-mist)}
.sh-section.sand{background:var(--sh-sand)}
.sh-section.dark{background:var(--sh-deep);color:#fff}
.sh-section.green-video{background:var(--sh-safari);color:#fff;overflow:hidden;isolation:isolate}
.sh-section.green-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.62;filter:saturate(1.04) contrast(1.04)}
.sh-section.green-video:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(31,58,45,.94),rgba(31,58,45,.68),rgba(31,58,45,.28)),linear-gradient(180deg,rgba(11,16,26,.22),rgba(11,16,26,.78))}
.sh-inner{width:min(1500px,100%);margin:0 auto;position:relative;z-index:2}
.sh-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.35rem}
.sh-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(--sh-safari)}
.dark .sh-head h2,.green-video .sh-head h2{color:#fff}
.sh-head p{max-width:620px;line-height:1.75;color:rgba(43,43,43,.68)}
.dark .sh-head p,.green-video .sh-head p{color:rgba(255,255,255,.70)}
.sh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}
.sh-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.sh-card{position:relative;background:#fff;border:1px solid var(--sh-border);border-radius:1.65rem;box-shadow:var(--sh-shadow);overflow:hidden;transition:.55s var(--sh-ease)}
.dark .sh-card,.green-video .sh-card{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);backdrop-filter:blur(14px);color:#fff}
.sh-card:hover{transform:translateY(-8px);box-shadow:0 42px 130px rgba(31,58,45,.22)}
.sh-card-media{height:280px;position:relative;overflow:hidden;background:#111}
.sh-card-media img,.sh-card-media video{width:100%;height:100%;object-fit:cover;display:block;transition:1.2s var(--sh-ease)}
.sh-card:hover .sh-card-media img,.sh-card:hover .sh-card-media video{transform:scale(1.08)}
.sh-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(31,58,45,.9),rgba(31,58,45,.16),transparent)}
.sh-card-body{padding:1.35rem}
.sh-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.95rem;line-height:1;color:var(--sh-safari);margin:.4rem 0 .65rem}
.dark .sh-card h3,.green-video .sh-card h3{color:#fff}
.sh-card p{line-height:1.7;color:rgba(43,43,43,.68)}
.dark .sh-card p,.green-video .sh-card p{color:rgba(255,255,255,.70)}
.sh-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
.sh-tags span{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;color:var(--sh-safari);background:#f3ead5;border-radius:999px;padding:.45rem .65rem}
.dark .sh-tags span,.green-video .sh-tags span{background:rgba(255,255,255,.10);color:#fff;border:1px solid rgba(255,255,255,.13)}
.sh-filterbar{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1.35rem}
.sh-filter{border:1px solid rgba(31,58,45,.14);background:#fff;border-radius:999px;padding:.85rem 1rem;cursor:pointer;font-weight:900;color:var(--sh-safari);transition:.35s var(--sh-ease)}
.sh-filter.is-active,.sh-filter:hover{background:var(--sh-safari);color:#fff}
.sh-compare{width:100%;border-collapse:separate;border-spacing:0 0.75rem}
.sh-compare th{font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:rgba(31,58,45,.58);text-align:left;padding:.65rem}
.sh-compare td{background:#fff;border-top:1px solid var(--sh-border);border-bottom:1px solid var(--sh-border);padding:1rem;vertical-align:middle}
.sh-compare td:first-child{border-left:1px solid var(--sh-border);border-radius:1rem 0 0 1rem;font-weight:900;color:var(--sh-safari)}
.sh-compare td:last-child{border-right:1px solid var(--sh-border);border-radius:0 1rem 1rem 0}
.sh-toggle-group{display:flex;gap:.6rem;flex-wrap:wrap;margin:0 0 1.2rem}
.sh-toggle{border:1px solid rgba(31,58,45,.14);background:#fff;border-radius:999px;padding:.78rem 1rem;cursor:pointer;font-weight:900;color:var(--sh-safari)}
.sh-toggle.is-active{background:var(--sh-safari);color:#fff}
.sh-daynight .sh-night{display:none}
.sh-daynight[data-mode="night"] .sh-day{display:none}
.sh-daynight[data-mode="night"] .sh-night{display:block}
.sh-room-flow{display:grid;grid-template-columns:1.1fr .9fr;gap:1.1rem;align-items:stretch}
.sh-gallery{display:grid;grid-template-columns:1.35fr .8fr .8fr;grid-auto-rows:240px;gap:1rem}
.sh-gallery figure{margin:0;position:relative;overflow:hidden;border-radius:1.5rem;background:#111;box-shadow:var(--sh-shadow);cursor:pointer}
.sh-gallery figure:first-child{grid-row:span 2}
.sh-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:1s var(--sh-ease)}
.sh-gallery figure:hover img{transform:scale(1.08)}
.sh-gallery figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;background:rgba(255,255,255,.92);border-radius:1rem;padding:.9rem;color:var(--sh-safari);font-weight:900;backdrop-filter:blur(14px)}
.sh-sticky-dock{position:sticky;bottom:1rem;z-index:80;width:min(1180px,calc(100% - 2rem));margin:0 auto 1rem;background:rgba(31,58,45,.94);border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 80px rgba(0,0,0,.25);backdrop-filter:blur(18px);border-radius:999px;padding:.7rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#fff}
.sh-sticky-dock strong{font-family:Georgia,"Times New Roman",serif;font-size:1.2rem}
.sh-sticky-dock span{color:rgba(255,255,255,.68)}
.sh-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(11,16,26,.92);display:none;align-items:center;justify-content:center;padding:2rem}
.sh-lightbox.is-open{display:flex}
.sh-lightbox img{max-width:min(1180px,90vw);max-height:82vh;border-radius:1.3rem;box-shadow:0 40px 140px rgba(0,0,0,.45)}
.sh-lightbox button{position:absolute;width:46px;height:46px;border-radius:999px;border:0;background:#fff;color:var(--sh-safari);font-weight:900;cursor:pointer}
.sh-lightbox .close{top:1.2rem;right:1.2rem}.sh-lightbox .prev{left:1.2rem}.sh-lightbox .next{right:1.2rem}
.sh-footer{background:var(--sh-safari);color:#fff;padding:clamp(4rem,7vw,6rem) clamp(1.5rem,5vw,4rem) 2rem}
.sh-footer-inner{max-width:1500px;margin:0 auto}
.sh-footer-top{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.12)}
.sh-footer-brand{display:flex;align-items:center;gap:1rem}
.sh-footer-brand img{width:64px;height:64px;border-radius:999px;object-fit:cover;border:1px solid rgba(255,255,255,.16)}
.sh-footer-brand h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,4rem);line-height:.9;margin:0;color:#fff}
.sh-footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:2rem;padding:2.8rem 0;border-bottom:1px solid rgba(255,255,255,.12)}
.sh-footer h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.26em;color:var(--sh-gold);margin-bottom:1rem}
.sh-footer p,.sh-footer a,.sh-footer li{color:rgba(255,255,255,.66);font-size:.92rem;line-height:1.8;text-decoration:none}
.sh-footer a:hover{color:var(--sh-gold)}
.sh-footer ul{list-style:none;margin:0;padding:0}
.sh-copy{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:1.5rem;color:rgba(255,255,255,.46);font-size:.82rem}
.sh-ambient{position:fixed;right:1rem;bottom:1rem;z-index:180;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.64);color:var(--sh-charcoal);box-shadow:0 24px 70px rgba(0,0,0,.22);backdrop-filter:blur(16px);padding:.8rem 1rem;display:flex;align-items:center;gap:.7rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.2em;font-weight:800;cursor:pointer}
.sh-ambient.is-active{background:var(--sh-safari);color:#fff}
.sh-ambient i{width:.65rem;height:.65rem;border-radius:999px;background:var(--sh-gold);box-shadow:0 0 0 0 rgba(198,162,74,.55);animation:shPulse 1.7s infinite}
@keyframes shPulse{70%{box-shadow:0 0 0 10px rgba(198,162,74,0)}}
@media(max-width:1100px){.sh-nav{grid-template-columns:1fr auto}.sh-pill{display:none}.sh-hero-grid,.sh-head,.sh-room-flow{grid-template-columns:1fr;display:grid}.sh-grid,.sh-grid.two,.sh-footer-grid{grid-template-columns:1fr 1fr}.sh-sticky-dock{border-radius:1.5rem;align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.sh-nav-cta span:first-child{display:none}.sh-brand small{display:none}.sh-hero{min-height:86vh}.sh-grid,.sh-grid.two,.sh-gallery,.sh-footer-grid{grid-template-columns:1fr}.sh-gallery figure:first-child{grid-row:auto}.sh-compare{display:block;overflow-x:auto}.sh-footer-top{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sh-hero video,.sh-hero-bg{transform:none!important}}
