:root{
  --elv-bg:#0a1f1a;
  --elv-bg-deep:#071712;
  --elv-bg-soft:#0e2a23;
  --elv-surface:#123831;
  --elv-surface-2:#17453c;
  --elv-gold:#c9a96a;
  --elv-gold-2:#e3c888;
  --elv-gold-3:#a8853f;
  --elv-ivory:#f5efe3;
  --elv-muted:rgba(245,239,227,.72);
  --elv-faint:rgba(245,239,227,.5);
  --elv-line:rgba(201,169,106,.3);
  --elv-line-soft:rgba(201,169,106,.16);
  --elv-font-display:"Playfair Display",Georgia,"Times New Roman",serif;
  --elv-font-body:"Manrope",-apple-system,"Segoe UI",Roboto,sans-serif;
  --bs-body-bg:#0a1f1a;
  --bs-body-color:#f5efe3;
  --bs-body-font-family:var(--elv-font-body);
  --bs-primary:#c9a96a;
  --bs-primary-rgb:201,169,106;
  --bs-link-color:#e3c888;
  --bs-link-color-rgb:227,200,136;
  --bs-link-hover-color:#f0d9a6;
  --bs-border-color:var(--elv-line-soft);
  --bs-secondary-color:var(--elv-muted);
  --bs-secondary-bg:#123831;
  --bs-tertiary-bg:#0e2a23;
  --bs-emphasis-color:#f5efe3;
}
html{scroll-behavior:smooth; overflow-x: hidden;}
body{font-family:var(--elv-font-body);background:var(--elv-bg);color:var(--elv-ivory);overflow-x:hidden}
::selection{background:rgba(201,169,106,.35);color:#fff}
h1,h2,h3,h4,.font-display{font-family:var(--elv-font-display)}
h1{font-weight:600;letter-spacing:-.015em;line-height:1.12}
h2{font-weight:600;letter-spacing:-.01em;line-height:1.16}
a:focus-visible,button:focus-visible{outline:2px solid var(--elv-gold);outline-offset:2px}
p{color:var(--elv-muted)}
.lead-elv{color:var(--elv-muted);font-size:1.08rem;line-height:1.75}
.text-gold{color:var(--elv-gold)!important}
.text-gold-2{color:var(--elv-gold-2)!important}
.text-ivory{color:var(--elv-ivory)!important}
.text-muted-elv{color:var(--elv-faint)!important}
.text-gold-grad{background:linear-gradient(100deg,#f0d9a6 0%,#e3c888 35%,#c9a96a 70%,#a8853f 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.section{padding:5.5rem 0}
.section-sm{padding:3.5rem 0}
.bg-deep{background:var(--elv-bg-deep)}
.bg-soft{background:var(--elv-bg-soft)}
.bg-pattern{background-image:repeating-linear-gradient(135deg,rgba(201,169,106,.045) 0 1px,transparent 1px 16px)}
.hairline{height:1px;background:linear-gradient(90deg,transparent,var(--elv-line),transparent)}
.eyebrow{display:inline-flex;align-items:center;gap:.8rem;letter-spacing:.32em;text-transform:uppercase;font-size:.72rem;font-weight:800;color:var(--elv-gold);font-family:var(--elv-font-body)}
.eyebrow::before{content:"";width:42px;height:1px;background:linear-gradient(90deg,transparent,var(--elv-gold))}
.eyebrow.eyebrow-center::after{content:"";width:42px;height:1px;background:linear-gradient(90deg,var(--elv-gold),transparent)}
.btn{border-radius:50rem;font-weight:700;letter-spacing:.02em;transition:all .25s ease}
.btn-gold{background:linear-gradient(120deg,#eed9a0,#c9a96a);color:#1d1508;border:1px solid rgba(255,255,255,.15);padding:.75rem 1.6rem}
.btn-gold:hover,.btn-gold:focus{background:linear-gradient(120deg,#f6e4b4,#d8b978);color:#140e05;transform:translateY(-2px);box-shadow:0 14px 30px rgba(201,169,106,.25)}
.btn-ghost-gold{background:transparent;color:var(--elv-ivory);border:1px solid var(--elv-line);padding:.75rem 1.6rem}
.btn-ghost-gold:hover,.btn-ghost-gold:focus{border-color:var(--elv-gold);color:var(--elv-gold-2);background:rgba(201,169,106,.08);transform:translateY(-2px)}
.link-gold{color:var(--elv-gold-2);text-decoration:none;border-bottom:1px solid rgba(201,169,106,.45);transition:color .2s,border-color .2s}
.link-gold:hover{color:var(--elv-ivory);border-color:var(--elv-ivory)}
.glass{background:linear-gradient(165deg,rgba(23,69,60,.75),rgba(14,42,35,.92));border:1px solid var(--elv-line-soft);border-radius:1.1rem;backdrop-filter:blur(6px)}
.card-elv{background:linear-gradient(165deg,rgba(23,69,60,.72),rgba(13,40,33,.94));border:1px solid var(--elv-line-soft);border-radius:1.1rem;padding:1.8rem;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;height:100%}
.card-elv:hover{transform:translateY(-6px);border-color:var(--elv-line);box-shadow:0 22px 44px rgba(3,12,9,.5)}
.icon-chip{width:54px;height:54px;border-radius:16px;display:inline-grid;place-items:center;background:rgba(201,169,106,.12);border:1px solid var(--elv-line);color:var(--elv-gold-2);font-size:1.3rem;flex:0 0 auto}
.chip{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--elv-line-soft);border-radius:50rem;padding:.35rem .95rem;font-size:.8rem;font-weight:600;color:var(--elv-muted);background:rgba(18,56,49,.5)}
.price-chip{display:inline-flex;align-items:center;gap:.5rem;background:rgba(201,169,106,.14);border:1px solid var(--elv-line);color:var(--elv-gold-2);border-radius:50rem;padding:.45rem 1.1rem;font-weight:800;font-size:.9rem}
.badge-18{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--elv-gold);color:var(--elv-gold-2);border-radius:50rem;padding:.22rem .75rem;font-weight:800;font-size:.72rem;letter-spacing:.14em;background:rgba(201,169,106,.08)}
.img-frame{position:relative;border-radius:1rem;overflow:hidden;border:1px solid var(--elv-line-soft)}
.img-frame::after{content:"";position:absolute;inset:12px;border:1px solid rgba(227,200,136,.28);border-radius:.65rem;pointer-events:none}
.img-frame img{width:100%;height:100%;object-fit:cover;display:block}
.img-cover{width:100%;height:100%;object-fit:cover;display:block}
.hover-lift{transition:transform .3s ease,box-shadow .3s ease}
.hover-lift:hover{transform:translateY(-5px)}
.ornament{position:relative}
.ornament::before,.ornament::after{content:"";position:absolute;width:52px;height:52px;opacity:.55;pointer-events:none}
.ornament::before{top:16px;left:16px;border-top:1px solid var(--elv-gold);border-left:1px solid var(--elv-gold)}
.ornament::after{bottom:16px;right:16px;border-bottom:1px solid var(--elv-gold);border-right:1px solid var(--elv-gold)}
.site-topbar{background:var(--elv-bg-deep);border-bottom:1px solid var(--elv-line-soft);font-size:.83rem}
.topbar-item{color:var(--elv-muted);display:inline-flex;align-items:center;white-space:nowrap}
.topbar-link{color:var(--elv-muted);text-decoration:none;transition:color .2s}
.topbar-link:hover{color:var(--elv-gold-2)}
.site-nav{background:rgba(10,31,26,.82);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}
.site-nav.scrolled{background:rgba(7,23,18,.95);border-bottom-color:var(--elv-line-soft);box-shadow:0 12px 30px rgba(3,12,9,.45)}
.site-nav .navbar-brand img{height:42px;width:auto}
.brand-text{color:var(--elv-ivory);letter-spacing:.02em}
.site-nav .nav-link{color:var(--elv-ivory);font-weight:600;font-size:.92rem;padding:.55rem .85rem!important;position:relative}
.site-nav .nav-link::after{content:"";position:absolute;left:.85rem;right:.85rem;bottom:.3rem;height:1px;background:var(--elv-gold);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.site-nav .nav-link:hover::after,.site-nav .nav-link.active::after{transform:scaleX(1)}
.site-nav .nav-link:hover,.site-nav .nav-link.active{color:var(--elv-gold-2)}
.site-nav .navbar-toggler{border-color:var(--elv-line);color:var(--elv-gold-2);padding:.45rem .7rem}
.site-nav .navbar-toggler:focus{box-shadow:0 0 0 2px rgba(201,169,106,.4)}
.footer-elv{background:var(--elv-bg-deep);border-top:1px solid var(--elv-line-soft)}
.footer-title{font-family:var(--elv-font-body);font-size:.78rem;font-weight:800;letter-spacing:.26em;text-transform:uppercase;color:var(--elv-gold);margin-bottom:1.1rem}
.footer-links{display:flex;flex-direction:column;gap:.55rem}
.footer-links a{color:var(--elv-muted);text-decoration:none;font-size:.92rem;transition:color .2s,padding-left .2s}
.footer-links a:hover{color:var(--elv-gold-2);padding-left:4px}
.footer-contacts li{color:var(--elv-muted);font-size:.92rem;margin-bottom:.6rem;display:flex;align-items:flex-start;gap:.1rem}
.footer-contacts a{color:var(--elv-muted);text-decoration:none}
.footer-contacts a:hover{color:var(--elv-gold-2)}
.social-chip{width:40px;height:40px;border-radius:50%;border:1px solid var(--elv-line);display:inline-grid;place-items:center;color:var(--elv-gold-2);font-size:.95rem;transition:all .25s ease;text-decoration:none}
.social-chip:hover{background:var(--elv-gold);border-color:var(--elv-gold);color:#1d1508;transform:translateY(-3px)}
.carousel-elv .carousel-item{height:min(86vh,740px);background-size:cover;background-position:center}
.hero-slide{display:flex;align-items:flex-end}
.hero-caption{max-width:680px;padding-bottom:5.5rem}
.hero-caption h1,.hero-caption h2{color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.55)}
.hero-caption .lead-elv{color:rgba(245,239,227,.88)}
.carousel-elv .carousel-indicators{margin-bottom:2rem}
.carousel-elv .carousel-indicators [data-bs-target]{width:34px;height:3px;border-radius:2px;background:rgba(245,239,227,.4);border:0}
.carousel-elv .carousel-indicators .active{background:var(--elv-gold-2)}
.carousel-elv .carousel-control-prev-icon,.carousel-elv .carousel-control-next-icon{filter:sepia(1) saturate(2) hue-rotate(5deg)}
.stat-num{font-family:var(--elv-font-display);font-size:2.7rem;line-height:1;font-weight:700}
.stat-label{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--elv-faint);font-weight:700;margin-top:.5rem}
.accordion-elv .accordion-item{background:rgba(18,56,49,.45);border:1px solid var(--elv-line-soft);border-radius:.9rem!important;margin-bottom:.85rem;overflow:hidden}
.accordion-elv .accordion-button{background:transparent;color:var(--elv-ivory);font-weight:700;font-size:1rem;padding:1.15rem 1.3rem;box-shadow:none}
.accordion-elv .accordion-button:not(.collapsed){color:var(--elv-gold-2);background:rgba(201,169,106,.08)}
.accordion-elv .accordion-button:focus{box-shadow:none;border-color:transparent}
.accordion-elv .accordion-body{color:var(--elv-muted);padding:0 1.3rem 1.25rem;line-height:1.7}
.table-elv{--bs-table-bg:transparent;--bs-table-color:var(--elv-ivory);border-color:var(--elv-line-soft);margin-bottom:0}
.table-elv thead th{color:var(--elv-gold);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;border-bottom:1px solid var(--elv-line);background:rgba(201,169,106,.06)}
.table-elv td,.table-elv th{padding:1rem 1.1rem;vertical-align:middle;border-color:var(--elv-line-soft)}
.form-control,.form-select{background:rgba(7,23,18,.55);border:1px solid var(--elv-line-soft);color:var(--elv-ivory);border-radius:.7rem;padding:.7rem 1rem}
.form-control::placeholder{color:var(--elv-faint)}
.form-control:focus,.form-select:focus{background:rgba(7,23,18,.7);border-color:var(--elv-gold);color:var(--elv-ivory);box-shadow:0 0 0 3px rgba(201,169,106,.18)}
.form-select option{background:#0e2a23;color:var(--elv-ivory)}
.form-label{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--elv-faint);margin-bottom:.4rem}
.form-check-input{background-color:rgba(7,23,18,.6);border-color:var(--elv-line)}
.form-check-input:checked{background-color:var(--elv-gold);border-color:var(--elv-gold)}
.form-check-input:focus{box-shadow:0 0 0 3px rgba(201,169,106,.2);border-color:var(--elv-gold)}
.form-check-label{color:var(--elv-muted);font-size:.88rem}
.toast-elv{position:fixed;left:50%;bottom:1.6rem;transform:translateX(-50%) translateY(24px);opacity:0;pointer-events:none;transition:all .35s ease;z-index:1095;background:linear-gradient(160deg,#17453c,#0e2a23);border:1px solid var(--elv-gold);color:var(--elv-ivory);padding:.95rem 1.5rem;border-radius:.9rem;box-shadow:0 20px 50px rgba(3,12,9,.6);font-weight:600;max-width:min(92vw,520px);text-align:center}
.toast-elv.show{opacity:1;transform:translateX(-50%) translateY(0)}
.cookie-elv{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:1080;margin:0 auto;max-width:940px;background:rgba(7,23,18,.97);border:1px solid var(--elv-gold);border-radius:1.1rem;padding:1.25rem 1.5rem;box-shadow:0 24px 60px rgba(3,12,9,.65);display:none}
.cookie-elv.show{display:block}
.timeline{position:relative;padding-left:1.9rem;border-left:1px solid var(--elv-line)}
.timeline-item{position:relative;padding-bottom:1.9rem}
.timeline-item:last-child{padding-bottom:0}
.timeline-item::before{content:"";position:absolute;left:calc(-1.9rem - 5px);top:.4rem;width:10px;height:10px;border-radius:50%;background:var(--elv-gold);box-shadow:0 0 0 4px rgba(201,169,106,.18)}
.timeline-year{font-family:var(--elv-font-display);color:var(--elv-gold-2);font-size:1.15rem;font-weight:700}
.team-card{text-align:center}
.team-card img{width:100%;aspect-ratio:1/1.05;object-fit:cover;border-radius:1rem;border:1px solid var(--elv-line-soft)}
.team-role{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--elv-gold);font-weight:800}
.partner-tile{background:linear-gradient(165deg,rgba(23,69,60,.6),rgba(13,40,33,.9));border:1px solid var(--elv-line-soft);border-radius:1rem;padding:1rem;text-align:center;transition:border-color .3s ease,transform .3s ease}
.partner-tile:hover{border-color:var(--elv-line);transform:translateY(-4px)}
.partner-tile img{width:100%;height:150px;object-fit:cover;border-radius:.7rem}
.partner-name{font-size:.85rem;font-weight:700;color:var(--elv-muted);margin:.8rem 0 0}
.review-stars{color:var(--elv-gold-2);letter-spacing:.2rem;font-size:.9rem}
.avatar-elv{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--elv-line)}
.step-num{font-family:var(--elv-font-display);font-size:2.4rem;line-height:1;color:rgba(201,169,106,.55);font-weight:700}
.gal-item .img-frame{aspect-ratio:4/3}
.gal-cap{font-size:.85rem;color:var(--elv-faint);margin-top:.7rem;line-height:1.5}
.map-frame{width:100%;height:340px;border:1px solid var(--elv-line);border-radius:1rem;display:block;filter:saturate(.85) contrast(1.02)}
.pay-icon{font-size:2.1rem;color:var(--elv-faint);transition:color .25s ease,transform .25s ease}
.pay-icon:hover{color:var(--elv-gold-2);transform:translateY(-3px)}
.cta-banner{border-radius:1.4rem;overflow:hidden;background-size:cover;background-position:center;border:1px solid var(--elv-line)}
.cta-inner{padding:4.5rem 2rem;background:linear-gradient(120deg,rgba(7,23,18,.88),rgba(10,31,26,.72))}
.rg-strip{background:rgba(201,169,106,.06);border:1px solid var(--elv-line-soft);border-radius:1rem;padding:1.1rem 1.4rem}
.divider-gem{display:flex;align-items:center;gap:1rem;color:var(--elv-gold)}
.divider-gem::before,.divider-gem::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--elv-line),transparent)}
.article-card{display:flex;flex-direction:column}
.article-card .img-frame{aspect-ratio:16/10}
.article-meta{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--elv-faint);font-weight:700}
@media (max-width:991.98px){
  .section{padding:4rem 0}
  .carousel-elv .carousel-item{height:min(78vh,640px)}
  .hero-caption{padding-bottom:4rem}
  .hero-caption h1{font-size:1.9rem}
  .stat-num{font-size:2.1rem}
  .cta-inner{padding:3rem 1.4rem}
  .site-topbar{font-size:.74rem}
}
@media (max-width:575.98px){
  .carousel-elv .carousel-item{height:88vh}
  .topbar-item{font-size:.72rem}
}
