.elementor-3781 .elementor-element.elementor-element-b87c3ae{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-ed7bac6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-3c47d3c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-72af104{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-1ea8d71{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-96c012c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-953aebf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}body.elementor-page-3781:not(.elementor-motion-effects-element-type-background), body.elementor-page-3781 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 100%);}@media(max-width:1024px){.elementor-3781 .elementor-element.elementor-element-1ea8d71{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:767px){.elementor-3781 .elementor-element.elementor-element-b87c3ae{--justify-content:flex-end;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:05px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-ed7bac6{--margin-top:05px;--margin-bottom:0px;--margin-left:0px;--margin-right:100px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-72af104{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3781 .elementor-element.elementor-element-1ea8d71{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3781 .elementor-element.elementor-element-96c012c{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-448fa17 */.hero-section {
  position: relative;
  min-height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  overflow: hidden;
}

.hero-bg img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.8), rgba(0,0,0,.9));
}

.hero-content {
  position: relative;
  z-index: 2;
  max-width: 900px;
  text-align: center;
  padding: 20px;
}

.hero-badge {
  display: inline-block;
  padding: 6px 16px;
  border: 1px solid #fff;
  font-size: 15px;
  letter-spacing: 2px;
  margin-bottom: 16px;
}

.hero-content h1 {
  font-size: 44px;
  margin-bottom: 16px;
}

.hero-content h1 span {
  color: #fff;
  
}

.hero-content p {
  font-size: 18px;
  color: #ddd;
}

.hero-scroll {
  position: absolute;
  bottom: 20px;
  font-size: 28px;
  animation: bounce 1.6s infinite;
}

@keyframes bounce {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(3px); }
}

@media (max-width: 768px) {
  .hero-content h1 { font-size: 28px; }
  .hero-content p {
  font-size: 13px;
  color: #ddd;
}
.hero-section {
  position: relative;
  min-height: 50vh;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  overflow: hidden;
}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a784406 *//* ===============================
   GLOBAL HELPERS (used here)
================================ */
.section-padding {
  padding: 80px 20px;
}

.container-custom {
  max-width: 1200px;
  margin: 0 auto;
}

/* ===============================
   GRID & LAYOUT
================================ */
.grid {
  display: grid;
}

.lg\:grid-cols-2 {
  grid-template-columns: 1fr;
}

@media (min-width: 1024px) {
  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.gap-16 {
  gap: 64px;
}

.items-center {
  align-items: center;
}

/* ===============================
   TYPOGRAPHY
================================ */
.font-headline {
  font-family: "Playfair Display", serif;
  font-weight: 600;
}

.font-body {
  font-family: "Inter", sans-serif;
}

.text-primary {
  color: #000;
}

.text-text-secondary {
  color: #555;
}

.text-lg {
  font-size: 18px;
}

.leading-relaxed {
  line-height: 1.7;
}

.max-w-xl {
  max-width: 560px;
}

/* ===============================
   BADGE
================================ */
.bg-accent {
  background-color: #f5f5f5;
}

.font-cta {
  font-family: "Inter", sans-serif;
}

.tracking-widest {
  letter-spacing: 0.15em;
}

.uppercase {
  text-transform: uppercase;
}

.text-xs {
  font-size: 11px;
}

/* ===============================
   PHILOSOPHY PILLARS
================================ */
.space-y-8 > * + * {
  margin-top: 32px;
}

.flex {
  display: flex;
}

.items-start {
  align-items: flex-start;
}

.gap-5 {
  gap: 20px;
}

.flex-shrink-0 {
  flex-shrink: 0;
}

.w-12 {
  width: 48px;
}

.h-12 {
  height: 48px;
}

.rounded-full {
  border-radius: 999px;
}

.text-primary svg {
  stroke: #000;
}

/* ===============================
   IMAGE AREA
================================ */
.relative {
  position: relative;
}

.aspect-w-3 {
  aspect-ratio: 3 / 4;
}

.aspect-h-4 {
  aspect-ratio: 3 / 4;
}

.overflow-hidden {
  overflow: hidden;
}

.rounded-lg {
  border-radius: 16px;
}

.shadow-floating {
  box-shadow: 0 20px 40px rgba(0,0,0,0.12);
}

.object-cover {
  object-fit: cover;
}

/* ===============================
   EXPERIENCE BADGE
================================ */
.bg-primary {
  background-color: #000;
}

.text-white {
  color: #fff;
}

.text-accent {
  color: #f5f5f5;
}

.p-6 {
  padding: 24px;
}

.max-w-xs {
  max-width: 260px;
}

.-bottom-6 {
  bottom: -24px;
}

.-right-6 {
  right: -24px;
}

.absolute {
  position: absolute;
}

/* ===============================
   RESPONSIVE TWEAKS
================================ */
@media (max-width: 768px) {
  .section-padding {
    padding: 60px 16px;
  }

  .gap-16 {
    gap: 48px;
  }

  .text-lg {
    font-size: 16px;
  }

  .-bottom-6,
  .-right-6 {
    bottom: -16px;
    right: -16px;
  }
}/* End custom CSS */