@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Outfit:wght@300;400;500;600;700&display=swap");
:root{--burgundy:#240006;--dark:#100003;--wine:#68101c;--cream:#f4d8c2;--cream2:#fff1e2;--muted:#d4a596;--line:rgba(244,216,194,.22);--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Outfit",Inter,Arial,sans-serif}

html,body{overflow-x:hidden}
body.aurelia-kit-body,
body.elementor-page,
body.elementor-template-canvas{
  background:#100003!important;
  color:var(--cream2)!important;
  font-family:var(--sans)!important;
}
body.aurelia-kit-body:before,
body.elementor-template-canvas:before{
  content:"";position:fixed;inset:0;z-index:-4;pointer-events:none;
  background:radial-gradient(circle at 80% -10%,rgba(125,15,31,.5),transparent 34%),radial-gradient(circle at 0% 35%,rgba(96,8,18,.36),transparent 28%),linear-gradient(180deg,#350009 0%,#140004 46%,#070002 100%);
}
.elementor-section.elementor-section-boxed>.elementor-container{max-width:1180px!important;margin-left:auto!important;margin-right:auto!important}
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-text-editor,
.elementor-widget-text-editor p{
  word-wrap:break-word;
  overflow-wrap:break-word;
}
.elementor-widget-text-editor p{margin:0 0 12px}

/* Header */
.aurelia-header{padding:14px 0!important;background:rgba(18,0,5,.88)!important;backdrop-filter:blur(18px);border-bottom:1px solid var(--line);position:sticky!important;top:0!important;z-index:60!important}
.aurelia-header .elementor-container{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:12px}
.aurelia-brand{font-family:var(--serif)!important;font-size:28px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--cream)!important;line-height:.86;text-decoration:none!important;display:inline-block}
.aurelia-brand span{display:block;font-family:var(--sans);font-size:8px;letter-spacing:.42em;margin-top:7px;color:var(--muted)}
.aurelia-nav-bar,.aurelia-nav .elementor-widget-container,.aurelia-nav .elementor-widget-container>div{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:16px 22px!important;flex-wrap:wrap!important}
.aurelia-nav a,.aurelia-nav-bar a{font-size:11px!important;letter-spacing:.16em;text-transform:uppercase;color:#f5d6c6!important;text-decoration:none!important;white-space:nowrap}
.aurelia-nav a.nav-cta,.aurelia-nav-bar a.nav-cta{border:1px solid rgba(244,216,194,.38);border-radius:999px;padding:11px 18px}

/* Hero + type */
.aurelia-hero{min-height:auto;padding:90px 0 70px!important;overflow:hidden}
.aurelia-hero .elementor-container{align-items:center!important}
.aurelia-eyebrow .elementor-heading-title{font-size:11px!important;letter-spacing:.24em!important;text-transform:uppercase!important;color:var(--muted)!important;font-family:var(--sans)!important;font-weight:700!important;line-height:1.4!important}
.aurelia-display .elementor-heading-title{font-family:var(--serif)!important;font-size:clamp(42px,7vw,110px)!important;line-height:.9!important;text-transform:uppercase!important;letter-spacing:-.04em!important;font-weight:400!important;color:var(--cream)!important;max-width:16ch}
.aurelia-display small{display:block;font-family:var(--sans);font-size:.42em;font-weight:300;line-height:1.1;letter-spacing:.02em;text-transform:none}
.aurelia-display em,.aurelia-title .elementor-heading-title em{font-style:italic;color:#ffdcca;text-shadow:0 0 36px rgba(197,74,81,.32)}
.aurelia-lead,.aurelia-lead p,.aurelia-lead .elementor-widget-container{font-size:17px!important;line-height:1.75!important;color:#e8c1b2!important;max-width:640px}
.aurelia-title .elementor-heading-title{font-family:var(--serif)!important;font-size:clamp(36px,5vw,72px)!important;line-height:.98!important;font-weight:400!important;color:var(--cream)!important}
.aurelia-text,.aurelia-text p,.aurelia-text a{color:#d9ad9d!important;line-height:1.7!important}
.aurelia-btn{margin:8px 10px 0 0!important}
.aurelia-btn .elementor-button{border-radius:999px!important;background:linear-gradient(135deg,var(--cream),#d9a184)!important;color:#240006!important;padding:14px 22px!important;font-weight:700!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.1em!important;border:1px solid rgba(244,216,194,.35)!important;transition:transform .3s,box-shadow .3s}
.aurelia-btn .elementor-button:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(217,151,132,.22)}
.aurelia-ghost .elementor-button{background:transparent!important;color:var(--cream)!important}
.aurelia-hero-img img{height:520px!important;width:min(480px,92%)!important;object-fit:cover!important;border-radius:48% 48% 46% 46%!important;filter:drop-shadow(0 38px 55px rgba(0,0,0,.5));animation:aureliaFloat 8s ease-in-out infinite}
.aurelia-section{padding:70px 0!important;background:transparent!important}
.aurelia-image-panel img,.about-image img{height:460px!important;width:100%!important;object-fit:cover!important;border-radius:28px!important;box-shadow:0 30px 90px rgba(0,0,0,.35)}
.stat-card{background:linear-gradient(180deg,#5c1522 0%,#3a0a12 100%)!important;border:1px solid rgba(244,216,194,.13)!important;border-radius:28px!important;padding:28px 16px!important;text-align:center!important}
.stat-card .elementor-heading-title{font-family:var(--serif)!important;font-size:64px!important;font-weight:400!important;color:var(--cream)!important;line-height:.9!important}
.aurelia-card,.aurelia-testimonial{background:linear-gradient(180deg,#3a0a12 0%,#21060c 100%)!important;border:1px solid rgba(244,216,194,.13)!important;border-radius:28px!important;padding:26px!important}
.aurelia-card .elementor-heading-title,.aurelia-testimonial .elementor-heading-title{font-family:var(--serif)!important;color:var(--cream)!important;font-size:28px!important;line-height:1.2!important}
.aurelia-gallery-card{border-radius:24px!important;overflow:hidden!important;background:#230006!important;border:1px solid rgba(244,216,194,.12)!important}
.aurelia-gallery-card img{height:260px!important;width:100%!important;object-fit:cover!important;transition:transform .7s}
.aurelia-gallery-card:hover img{transform:scale(1.06)}
.aurelia-gallery-card .elementor-heading-title{font-family:var(--serif)!important;font-size:26px!important;color:var(--cream)!important;padding:12px 8px 0}
.aurelia-process .elementor-column{border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:18px 12px}
.aurelia-process .elementor-column:last-child{border-right:0}
.aurelia-step-num .elementor-heading-title{font-family:var(--serif)!important;font-size:42px!important;color:#c94759!important;font-weight:400!important}
.aurelia-cta{background:linear-gradient(180deg,#3a0a12 0%,#21060c 100%)!important;border:1px solid rgba(244,216,194,.13)!important;border-radius:32px!important;padding:36px 20px!important;margin:10px auto 40px!important}
.aurelia-footer{padding:48px 0 16px!important;border-top:1px solid var(--line);background:#080002!important}
.aurelia-footer .elementor-heading-title{font-family:var(--serif)!important;color:var(--cream)!important;font-size:24px!important}
.aurelia-footer a,.aurelia-footer p{color:#d9ad9d!important;line-height:1.75}
.aurelia-footer-bottom{border-top:1px solid var(--line);padding-top:16px!important;font-size:12px;color:#b8897a!important}
.aurelia-marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;color:rgba(244,216,194,.56);font-family:var(--serif);font-size:34px;white-space:nowrap}
.aurelia-marquee span{display:inline-block;animation:aureliaMar 28s linear infinite}
.aurelia-form label{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.aurelia-form input,.aurelia-form textarea,.aurelia-form select{width:100%;background:#140308;border:1px solid rgba(244,216,194,.16);color:var(--cream);border-radius:16px;padding:14px 16px;margin:0 0 14px;font:inherit;box-sizing:border-box}
.aurelia-form textarea{min-height:140px}
.aurelia-form button{border-radius:999px;background:linear-gradient(135deg,var(--cream),#d9a184);color:#240006;padding:14px 24px;font-weight:700;border:0;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}

/* Horizontal GSAP — pin the FULL section, clip only the inner row */
.elementor-445,.elementor,.elementor-inner,.elementor-section-wrap,.pin-spacer{overflow:visible!important}
.gsap-h-window,.elementor-section.gsap-h-window{
  width:100%!important;max-width:none!important;overflow:visible!important;position:relative!important;z-index:6!important
}
.gsap-h-window>.elementor-container{
  overflow:hidden!important;width:min(1180px,calc(100% - 40px))!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important
}
.gsap-h-track>.elementor-widget-wrap,
.gsap-h-track>.e-con-inner,
.gsap-h-track .elementor-widget-wrap{
  display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:24px!important;width:max-content!important;max-width:none!important;align-items:flex-start!important;will-change:transform
}
.gsap-h-card{flex:0 0 340px!important;width:340px!important;min-width:340px!important;max-width:340px!important}
.gsap-h-card img{width:100%!important;height:210px!important;object-fit:cover!important;border-radius:18px!important;display:block!important;transition:transform .65s}
.gsap-h-card:hover img{transform:scale(1.05)}
.gsap-h-card .elementor-image-box-title{font-family:var(--serif)!important;font-size:40px!important;line-height:.95!important;font-weight:400!important;color:var(--cream)!important}
.gsap-h-card .elementor-image-box-description{font-size:16px!important;color:#dfb3a3!important}
.gsap-code-widget{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important}

/* Sticky cards */
.elementor-section.v-card{
  position:sticky!important;
  top:96px!important;
  background:#1c050a!important;
  border:1px solid rgba(244,216,194,.16)!important;
  border-radius:30px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  box-shadow:0 28px 80px rgba(0,0,0,.55)!important;
  min-height:460px!important;
  margin:0 auto 28px!important;
  max-width:1180px;
  transform:none!important
}
.elementor-section.v-card-1{z-index:21!important}
.elementor-section.v-card-2{z-index:22!important}
.elementor-section.v-card-3{z-index:23!important}
.elementor-section.v-card-4{z-index:24!important}
.elementor-section.v-card>.elementor-container{min-height:460px;align-items:stretch!important}
.v-card-media,.v-card-media>.elementor-widget-wrap{
  position:relative!important;min-height:460px!important;height:100%!important;background-color:#140308!important;background-size:cover!important;background-position:center!important;padding:0!important
}
.v-card-media img,.v-card-fallback-img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;max-width:none!important;border-radius:0!important;display:block!important}
.v-card-copy{background:#1c050a!important;padding:36px 28px!important}
.v-card-num .elementor-heading-title{font-family:var(--serif)!important;font-size:48px!important;color:#c94759!important;font-weight:400!important}
.v-card-title .elementor-heading-title{font-family:var(--serif)!important;font-size:clamp(28px,3vw,42px)!important;color:var(--cream)!important;font-weight:400!important}

/* Animations — always finish visible. No opacity trap. */
@keyframes aureliaFloat{50%{transform:translateY(-14px)}}
@keyframes aureliaMar{to{transform:translateX(-50%)}}
@keyframes aureliaIn{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:none}}
@keyframes aureliaInL{from{opacity:0;transform:translateX(-36px)}to{opacity:1;transform:none}}
@keyframes aureliaInR{from{opacity:0;transform:translateX(36px)}to{opacity:1;transform:none}}
@keyframes aureliaInZ{from{opacity:0;transform:scale(.94) translateY(20px)}to{opacity:1;transform:none}}

.reveal-up,.reveal-left,.reveal-right,.reveal-zoom{
  opacity:1;
  animation-duration:.9s;
  animation-timing-function:cubic-bezier(.19,1,.22,1);
  animation-fill-mode:both;
}
.reveal-up{animation-name:aureliaIn}
.reveal-left{animation-name:aureliaInL}
.reveal-right{animation-name:aureliaInR}
.reveal-zoom{animation-name:aureliaInZ}
.reveal-stagger>.elementor-container>.elementor-column,
.reveal-stagger .elementor-column{
  animation:aureliaIn .9s cubic-bezier(.19,1,.22,1) both;
}
.reveal-stagger .elementor-column:nth-child(2){animation-delay:.12s}
.reveal-stagger .elementor-column:nth-child(3){animation-delay:.24s}
.reveal-stagger .elementor-column:nth-child(4){animation-delay:.36s}
.reveal-stagger .elementor-column:nth-child(5){animation-delay:.48s}
.tilt-card{transition:transform .28s ease}

@media(max-width:1024px){
  .gsap-h-card{flex-basis:46vw!important;width:46vw!important;min-width:46vw!important;max-width:46vw!important}
  .aurelia-hero-img img{height:380px!important}
  .elementor-section.v-card,.v-card-media,.elementor-section.v-card>.elementor-container{min-height:auto!important}
  .v-card-media{height:220px!important;min-height:220px!important}
}
@media(max-width:767px){
  .aurelia-display .elementor-heading-title{font-size:44px!important}
  .aurelia-title .elementor-heading-title{font-size:34px!important}
  .aurelia-section{padding:48px 0!important}
  .aurelia-nav-bar,.aurelia-nav .elementor-widget-container{justify-content:flex-start!important}
  .gsap-h-card{flex-basis:82vw!important;width:82vw!important;min-width:82vw!important;max-width:82vw!important}
  .aurelia-hero-img img{height:320px!important;width:100%!important}
  .stat-card .elementor-heading-title{font-size:48px!important}
}
