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

/* Oloropa Phase 2 — Sitewide Header + Footer Concierge System */
:root{--ol-forest:#1F3A2D;--ol-forest-deep:#0f241b;--ol-forest-glass:rgba(13,36,27,.74);--ol-forest-solid:rgba(15,36,27,.96);--ol-ivory:#fff8ea;--ol-sand:#dccca7;--ol-gold:#d6b15f;--ol-gold-soft:rgba(214,177,95,.38);--ol-ink:#1b251e;--ol-muted:rgba(255,248,234,.72);--ol-line:rgba(255,248,234,.18);--ol-shadow:0 24px 70px rgba(0,0,0,.28)}
.ol-cc-header,.ol-cc-header *{box-sizing:border-box}.ol-cc-header{position:fixed;top:0;left:0;right:0;z-index:10000;display:grid;grid-template-columns:minmax(210px,1fr) auto minmax(190px,1fr);align-items:center;gap:18px;width:min(1180px,calc(100% - 32px));margin:18px auto 0;padding:11px 12px 11px 15px;border:1px solid rgba(255,248,234,.19);border-bottom-color:rgba(214,177,95,.34);border-radius:999px;background:linear-gradient(135deg,rgba(11,31,23,.60),rgba(31,58,45,.64));box-shadow:0 14px 50px rgba(0,0,0,.22);backdrop-filter:blur(22px) saturate(120%);-webkit-backdrop-filter:blur(22px) saturate(120%);transition:margin .32s ease,width .32s ease,padding .32s ease,background .32s ease,box-shadow .32s ease,transform .32s ease}.ol-cc-header.is-compact{margin-top:10px;width:min(1100px,calc(100% - 24px));padding:8px 10px 8px 13px;background:linear-gradient(135deg,rgba(10,30,22,.96),rgba(31,58,45,.96));box-shadow:0 18px 55px rgba(0,0,0,.34)}.ol-cc-brand{display:inline-flex;align-items:center;gap:11px;min-width:0;color:var(--ol-ivory);text-decoration:none}.ol-cc-brand img{width:42px;height:42px;object-fit:contain;border-radius:50%;background:rgba(255,248,234,.08);box-shadow:inset 0 0 0 1px rgba(255,248,234,.14)}.ol-cc-brand span{display:flex;min-width:0;flex-direction:column;line-height:1.05}.ol-cc-brand small{display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(255,248,234,.68);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.ol-cc-brand strong{display:block;margin-top:4px;color:var(--ol-ivory);font-size:17px;font-weight:800;letter-spacing:.01em}.ol-cc-nav{display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:rgba(255,248,234,.075);border:1px solid rgba(255,248,234,.12)}.ol-cc-nav-item{position:relative}.ol-cc-link{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 15px;border-radius:999px;color:rgba(255,248,234,.78);text-decoration:none;font-size:13px;font-weight:750;letter-spacing:.01em;transition:background .24s ease,color .24s ease,transform .24s ease}.ol-cc-link::after{content:"";width:5px;height:5px;border-radius:50%;background:rgba(214,177,95,.65);opacity:.32}.ol-cc-link:hover,.ol-cc-link:focus-visible,.ol-cc-link.is-active{color:var(--ol-ivory);background:rgba(255,248,234,.11);outline:none}.ol-cc-link.is-active{box-shadow:inset 0 0 0 1px rgba(214,177,95,.32)}.ol-cc-mega{position:absolute;left:50%;top:calc(100% + 16px);width:315px;transform:translate(-50%,10px);opacity:0;pointer-events:none;border:1px solid rgba(255,248,234,.16);border-radius:26px;overflow:hidden;color:var(--ol-ivory);background:linear-gradient(180deg,rgba(15,36,27,.96),rgba(8,24,17,.98));box-shadow:0 22px 80px rgba(0,0,0,.38);transition:opacity .22s ease,transform .22s ease}.ol-cc-nav-item:hover .ol-cc-mega,.ol-cc-nav-item:focus-within .ol-cc-mega{opacity:1;transform:translate(-50%,0);pointer-events:auto}.ol-cc-mega-media{min-height:106px;padding:16px;background:linear-gradient(135deg,rgba(5,17,12,.14),rgba(5,17,12,.7)),var(--mega-image,radial-gradient(circle at 30% 20%,rgba(214,177,95,.35),transparent 34%),linear-gradient(135deg,#244c39,#10261c));background-size:cover;background-position:center;display:flex;align-items:flex-end}.ol-cc-mega-media span{padding:7px 10px;border:1px solid rgba(255,248,234,.18);border-radius:999px;background:rgba(10,28,20,.64);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,248,234,.8)}.ol-cc-mega-body{padding:16px}.ol-cc-mega-body strong{display:block;margin-bottom:5px;font-size:17px;letter-spacing:-.02em}.ol-cc-mega-body p{margin:0 0 13px;color:rgba(255,248,234,.72);font-size:13px;line-height:1.55}.ol-cc-mega-actions{display:flex;flex-wrap:wrap;gap:8px}.ol-cc-mega-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 11px;border-radius:999px;background:rgba(255,248,234,.08);color:var(--ol-ivory);text-decoration:none;font-size:12px;font-weight:750}.ol-cc-mega-actions a:hover{background:rgba(214,177,95,.22)}.ol-cc-actions{display:flex;justify-content:flex-end;align-items:center;gap:9px}.ol-cc-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:43px;padding:0 18px;border-radius:999px;background:linear-gradient(135deg,var(--ol-ivory),#f2d991);color:#173024;text-decoration:none;font-size:13px;font-weight:900;letter-spacing:.01em;box-shadow:0 14px 34px rgba(214,177,95,.22);transition:transform .22s ease,box-shadow .22s ease}.ol-cc-cta:hover{transform:translateY(-1px);box-shadow:0 18px 40px rgba(214,177,95,.3)}.ol-cc-menu-button{display:none;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 13px;border:1px solid rgba(255,248,234,.16);border-radius:999px;color:var(--ol-ivory);background:rgba(255,248,234,.07);font-weight:850;cursor:pointer}.ol-cc-menu-lines,.ol-cc-menu-lines::before,.ol-cc-menu-lines::after{display:block;width:17px;height:2px;border-radius:999px;background:currentColor;content:""}.ol-cc-menu-lines{position:relative}.ol-cc-menu-lines::before{position:absolute;top:-6px}.ol-cc-menu-lines::after{position:absolute;top:6px}.ol-cc-mobile-drawer{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:94px 18px 22px;background:radial-gradient(circle at 20% 8%,rgba(214,177,95,.18),transparent 24%),linear-gradient(160deg,rgba(7,22,16,.97),rgba(21,48,36,.98));color:var(--ol-ivory);opacity:0;pointer-events:none;transform:translateY(-12px);transition:opacity .26s ease,transform .26s ease}.ol-cc-mobile-drawer.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.ol-cc-mobile-panel{width:min(620px,100%)}.ol-cc-mobile-eyebrow{margin:0 0 14px;color:rgba(255,248,234,.68);font-size:12px;font-weight:850;letter-spacing:.18em;text-transform:uppercase}.ol-cc-mobile-grid{display:grid;gap:12px}.ol-cc-mobile-card{display:grid;gap:5px;padding:18px;border:1px solid rgba(255,248,234,.15);border-radius:24px;color:var(--ol-ivory);text-decoration:none;background:linear-gradient(135deg,rgba(255,248,234,.1),rgba(255,248,234,.035));box-shadow:0 12px 42px rgba(0,0,0,.18)}.ol-cc-mobile-card strong{font-size:20px;letter-spacing:-.03em}.ol-cc-mobile-card span{color:rgba(255,248,234,.68);font-size:13px;line-height:1.5}.ol-cc-mobile-card.is-active{border-color:rgba(214,177,95,.55);box-shadow:inset 0 0 0 1px rgba(214,177,95,.25),0 12px 42px rgba(0,0,0,.18)}.ol-cc-mobile-close{position:absolute;right:20px;top:22px;width:44px;height:44px;border:1px solid rgba(255,248,234,.18);border-radius:50%;color:var(--ol-ivory);background:rgba(255,248,234,.08);font-size:20px;cursor:pointer}
.ol-cc-footer,.ol-cc-footer *{box-sizing:border-box}.ol-cc-footer{position:relative;overflow:hidden;padding:74px min(6vw,72px) 32px;color:var(--ol-ivory);background:radial-gradient(circle at 12% 10%,rgba(214,177,95,.17),transparent 24%),radial-gradient(circle at 86% 10%,rgba(255,248,234,.09),transparent 28%),linear-gradient(180deg,#183729,#081a12)}.ol-cc-footer::before{content:"";position:absolute;inset:0;opacity:.14;pointer-events:none;background-image:linear-gradient(120deg,transparent 0 42%,rgba(255,248,234,.22) 42.4%,transparent 43%),radial-gradient(circle at 20% 30%,rgba(255,248,234,.18) 0 1px,transparent 1.5px),radial-gradient(circle at 70% 68%,rgba(255,248,234,.16) 0 1px,transparent 1.5px);background-size:160px 160px,70px 70px,96px 96px}.ol-cc-footer>*{position:relative;z-index:1}.ol-cc-footer-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:30px;align-items:end;padding-bottom:38px;border-bottom:1px solid rgba(255,248,234,.15)}.ol-cc-footer-mark{display:flex;align-items:center;gap:14px;margin-bottom:18px}.ol-cc-footer-mark img{width:46px;height:46px;object-fit:contain;border-radius:50%;background:rgba(255,248,234,.08)}.ol-cc-footer-mark span{display:grid;gap:3px}.ol-cc-footer-mark small{color:rgba(255,248,234,.64);font-size:11px;font-weight:850;letter-spacing:.18em;text-transform:uppercase}.ol-cc-footer-mark strong{font-size:20px}.ol-cc-footer h2{max-width:820px;margin:0;font-size:clamp(2rem,4vw,4.8rem);line-height:.95;letter-spacing:-.065em;color:var(--ol-ivory)}.ol-cc-footer-intro{max-width:480px;margin:16px 0 0;color:rgba(255,248,234,.72);font-size:15px;line-height:1.75}.ol-cc-footer-brief{display:grid;gap:14px;padding:22px;border:1px solid rgba(255,248,234,.15);border-radius:30px;background:rgba(255,248,234,.075);box-shadow:0 18px 60px rgba(0,0,0,.17)}.ol-cc-footer-brief span{color:rgba(255,248,234,.68);font-size:12px;font-weight:850;letter-spacing:.17em;text-transform:uppercase}.ol-cc-footer-brief strong{font-size:22px;letter-spacing:-.035em}.ol-cc-footer-brief a{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 18px;border-radius:999px;background:linear-gradient(135deg,var(--ol-ivory),#f2d991);color:#142d21;text-decoration:none;font-weight:900}.ol-cc-footer-grid{display:grid;grid-template-columns:1.1fr 1.1fr 1fr 1fr;gap:28px;padding:38px 0;border-bottom:1px solid rgba(255,248,234,.12)}.ol-cc-footer-col h3{margin:0 0 14px;color:var(--ol-ivory);font-size:12px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.ol-cc-footer-col ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}.ol-cc-footer-col a{color:rgba(255,248,234,.72);text-decoration:none;font-size:14px;line-height:1.35;transition:color .22s ease,transform .22s ease}.ol-cc-footer-col a:hover{color:var(--ol-ivory);transform:translateX(2px)}.ol-cc-footer-contact{display:grid;gap:10px;padding:16px;border:1px solid rgba(255,248,234,.13);border-radius:22px;background:rgba(255,248,234,.055)}.ol-cc-footer-contact p{margin:0;color:rgba(255,248,234,.68);font-size:13px;line-height:1.55}.ol-cc-social-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:8px}.ol-cc-social-row a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border:1px solid rgba(255,248,234,.14);border-radius:999px;background:rgba(255,248,234,.06);color:var(--ol-ivory);font-size:12px;font-weight:800}.ol-cc-footer-accordions{display:none}.ol-cc-footer-bottom{display:flex;justify-content:space-between;gap:18px;padding-top:22px;color:rgba(255,248,234,.55);font-size:12px}.ol-cc-footer-bottom a{color:rgba(255,248,234,.7);text-decoration:none}
@media (max-width:1120px){.ol-cc-header{grid-template-columns:minmax(210px,1fr) auto}.ol-cc-nav{display:none}.ol-cc-menu-button{display:inline-flex}}@media (max-width:760px){.ol-cc-header{width:calc(100% - 20px);margin-top:10px;padding:8px 8px 8px 10px;border-radius:28px;grid-template-columns:minmax(0,1fr) auto}.ol-cc-brand img{width:38px;height:38px}.ol-cc-brand small{max-width:150px;font-size:9px}.ol-cc-brand strong{font-size:15px}.ol-cc-cta{display:none}.ol-cc-menu-button span:last-child{display:none}.ol-cc-footer{padding:58px 18px 26px}.ol-cc-footer-top{grid-template-columns:1fr;align-items:start}.ol-cc-footer h2{font-size:clamp(2.35rem,14vw,4.1rem)}.ol-cc-footer-grid{display:none}.ol-cc-footer-accordions{display:grid;gap:10px;padding:26px 0;border-bottom:1px solid rgba(255,248,234,.12)}.ol-cc-footer-accordions details{border:1px solid rgba(255,248,234,.13);border-radius:20px;background:rgba(255,248,234,.055);overflow:hidden}.ol-cc-footer-accordions summary{cursor:pointer;padding:15px 16px;font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;list-style:none}.ol-cc-footer-accordions summary::-webkit-details-marker{display:none}.ol-cc-footer-accordions ul{display:grid;gap:10px;margin:0;padding:0 16px 16px;list-style:none}.ol-cc-footer-accordions a{color:rgba(255,248,234,.76);text-decoration:none;font-size:14px}.ol-cc-footer-bottom{display:grid}}
