
@import url('https://fonts.googleapis.com/css2?family=League+Spartan:wght@100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
:root{
  --gold:#C4953A;--goldlt:#E2B96F;--golddim:#7A5E1E;--goldpale:#F9F0DC;
  --navy:#080F22;--navy2:#0E1C3A;--navy3:#162D5A;
  --cream:#FDFBF5;--stone:#F2EEE4;--fog:#E8E2D4;
  --ink:#0C1426;--mid:#000;--faint:rgba(196,149,58,.14);
  --faint2:rgba(196,149,58,.28);--faint3:rgba(196,149,58,.55);
	   --accent:  #d4af37;
      --accent2: #6db8e8;
      --dark:    #0a0a0a;
      --font-serif: 'Playfair Display', serif;
      --font-sans: 'Montserrat', sans-serif;;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:'Jost',sans-serif;overflow-x:hidden;cursor:none}
/* ── CSS Variables ─────────────────────────────── */
  

    body { font-family: var(--font-sans); background: var(--dark); color: #fff; }

    /* ── NAVBAR ─────────────────────────────────────── */
    .navbar-collapse{
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
    width: 100%;
    padding: 20px 0;
    background: #011436;
}
    #mainNav {
        position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1050;
    padding: 0px 40px;
    transition: background .35s, padding .35s;
    background-color: #011436;
    }
    #mainNav.scrolled {
          background: rgb(2 19 53);
    backdrop-filter: blur(12px);
    padding: 10px 40px;
    }
    #mainNav .navbar-brand img { max-width: 180px; }
    #mainNav .nav-link {
    color: rgba(255, 255, 255, .8) !important;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 6px 14px !important;
    transition: color .2s;
    }
    #mainNav .nav-link:hover { color: var(--accent) !important; }
    .nav-tel-link {
      color: var(--accent) !important;
        font-size: 15px; font-weight: 500; letter-spacing: .05em;
      text-decoration: none; border: 1px solid var(--accent);
      padding: 6px 18px; border-radius: 2px;
      transition: all .25s;
    }
    .nav-tel-link:hover { background: var(--accent); color: #000 !important; }
    .navbar-toggler { border-color: rgba(255,255,255,.3); }
    .navbar-toggler-icon {
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.8%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }

    /* ── SLIDER ─────────────────────────────────────── */
    .rev-slider {
      position: relative; width: 100%; height: 100vh; min-height: 600px;
      overflow: hidden; background: #000;
    }
    .slide {
      position: absolute; inset: 0; display: flex; align-items: center;
      opacity: 0; visibility: hidden; transition: opacity .1s; z-index: 1;
    }
    .slide.active  { opacity: 1; visibility: visible; z-index: 2; }
    .slide.prev    { z-index: 3; }
    .slide-bg {
      position: absolute; inset: -5%; background-size: cover;
      background-position: center; transform: scale(1.05);
      transition: transform 8s ease;
    }
    .slide.active .slide-bg { transform: scale(1); }
    .slide-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(110deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.45) 55%,rgba(0,0,0,.2) 100%);
    }
    .slide:nth-child(2) .slide-overlay {
      background: linear-gradient(250deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 55%,rgba(0,0,0,.15) 100%);
    }
    .slide-content { position: relative; z-index: 10; padding: 0 8% 0 9%; }
    .layer { opacity: 0; transform: translateY(30px); transition: opacity .7s ease, transform .7s ease; }
    .slide.active .layer       { opacity: 1; transform: translateY(0); }
    .slide.active .layer-1     { transition-delay: .3s; }
    .slide.active .layer-2     { transition-delay: .55s; }
    .slide.active .layer-3     { transition-delay: .75s; }
    .slide.active .layer-4     { transition-delay: .95s; }
    .from-left .layer          { transform: translateX(-50px); }
    .from-left.active .layer   { transform: translateX(0); }
    .from-right .layer         { transform: translateX(50px); }
    .from-right.active .layer  { transform: translateX(0); }

    .tag {
      display: inline-block; font-size: 11px; font-weight: 500;
      letter-spacing: .2em; text-transform: uppercase;
      color: var(--accent); border: 1px solid var(--accent);
      padding: 5px 16px; border-radius: 2px; margin-bottom: 20px;
    }
    h1.slide-title {
      font-family: var(--font-serif);
      font-size: clamp(42px,4vw,84px); font-weight: 700; line-height: 1.05;
      color: #fff; margin-bottom: 22px;
    }
    h1.slide-title em  { font-style: italic; color: var(--accent); }
    h1.slide-title .blue { color: var(--accent2); }
    .slide-desc {
      font-size: clamp(14px,1.4vw,18px); font-weight: 300;
      color: rgba(255,255,255,.75); line-height: 1.7;
      max-width: 500px; margin-bottom: 36px;
    }
    .slide-btns { display: flex; gap: 16px; flex-wrap: wrap; }

    /* Slider Buttons */
    .btn-slide-primary {
      display: inline-flex; align-items: center; gap: 8px;
      padding: 14px 32px; font-size: 14px; font-weight: 500;
      letter-spacing: .05em; text-decoration: none; border-radius: 3px;
      background: var(--accent); color: #000; border: none; transition: all .25s;
    }
    .btn-slide-primary:hover { background: #f0d488; transform: translateY(-2px); color: #000; }
    .btn-slide-outline {
      display: inline-flex; align-items: center; gap: 8px;
      padding: 14px 32px; font-size: 14px; font-weight: 500;
      letter-spacing: .05em; text-decoration: none; border-radius: 3px;
      background: transparent; color: #fff;
      border: 1.5px solid rgba(255,255,255,.5); transition: all .25s;
    }
    .btn-slide-outline:hover { background: rgba(255,255,255,.1); border-color: #fff; color: #fff; }

    /* Decorative lines */
    .deco-line { position: absolute; background: var(--accent); opacity: .6; }
    .deco-line.v { width: 1px; height: 120px; top: 50%; left: 5%; transform: translateY(-50%); }
    .deco-line.h { height: 1px; width: 80px; bottom: 30%; right: 7%; }

    /* Slide navigation arrows */
    .rev-arrow {
      position: absolute; top: 50%; transform: translateY(-50%); z-index: 30;
      width: 54px; height: 54px; background: rgba(255,255,255,.08);
      border: 1px solid rgba(255,255,255,.2); color: #fff;
      display: flex; align-items: center; justify-content: center;
      cursor: pointer; transition: all .25s; backdrop-filter: blur(4px);
    }
    .rev-arrow:hover { background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.5); }
    .rev-arrow.left  { left: 30px; }
    .rev-arrow.right { right: 30px; }
    .rev-arrow svg   { width: 20px; height: 20px; stroke: #fff; fill: none; stroke-width: 2; }

    /* Bullet nav */
    .rev-bullets {
      position: absolute; bottom: 36px; right: 48px; z-index: 30;
      display: flex; flex-direction: column; gap: 10px;
    }
    .bullet {
      width: 6px; height: 6px; border-radius: 50%;
      background: rgba(255,255,255,.35); cursor: pointer; transition: all .3s;
      position: relative; border: none; padding: 0;
    }
    .bullet::after {
      content: ''; position: absolute; inset: -5px; border-radius: 50%;
      border: 1px solid rgba(255,255,255,0); transition: all .3s;
    }
    .bullet.active { background: var(--accent); }
    .bullet.active::after { border-color: var(--accent); inset: -4px; }

    /* Progress bar */
    .rev-progress {
      position: absolute; top: 0; left: 0; height: 3px;
      background: var(--accent); z-index: 30; width: 0%;
      transition: width linear;
    }

    /* Slide counter */
    .slide-counter {
      position: absolute; bottom: 38px; left: 48px; z-index: 30;
      display: flex; align-items: flex-end; gap: 6px;
    }
    .count-cur {
      font-family: var(--font-serif);
      font-size: 52px; font-weight: 700; line-height: 1; color: var(--accent);
    }
    .count-sep { font-size: 14px; color: rgba(255,255,255,.3); margin-bottom: 8px; }
    .count-tot { font-size: 14px; color: rgba(255,255,255,.4); margin-bottom: 8px; }

    /* Curtain */
    .curtain {
      position: absolute; inset: 0; z-index: 25; background: #000;
      transform: scaleX(0); transform-origin: left; pointer-events: none;
    }
    .curtain.slide-in  { animation: curtainIn .5s cubic-bezier(.77,0,.175,1) forwards; }
    .curtain.slide-out { animation: curtainOut .5s cubic-bezier(.77,0,.175,1) forwards; }
    @keyframes curtainIn  { from{transform:scaleX(0)} to{transform:scaleX(1)} }
    @keyframes curtainOut { from{transform:scaleX(1)} to{transform:scaleX(0);transform-origin:right} }

    /* Slide backgrounds */
    .slide-1-bg { background-image:url("../img/slider/slider-1.png") }
    .slide-2-bg { background-image: url('../img/slider/slider-2.jpg'); }

    /* Scroll cue */
    .scroll-cue {
      position: absolute; bottom: 40px; left: 50%; transform: translateX(-50%);
      z-index: 20; display: flex; flex-direction: column; align-items: center; gap: 8px;
      opacity: .6;
    }
    .scroll-cue span { font-size: 10px; letter-spacing: .2em; text-transform: uppercase; color: #fff; }
    .scroll-line {
      width: 1px; height: 40px;
      background: linear-gradient(to bottom,#fff,transparent);
      animation: scrollpulse 2s infinite;
    }
    @keyframes scrollpulse { 0%,100%{opacity:.6;transform:scaleY(1)} 50%{opacity:1;transform:scaleY(1.2)} }

    @media(max-width:600px) {
      .rev-arrow { display: none; }
      h1.slide-title { font-size: clamp(32px,9vw,52px); }
      .slide-btns { flex-direction: column; align-items: flex-start; }
    }

    /* ── TICKER ─────────────────────────────────────── */
    .ticker { overflow: hidden; background: var(--accent); padding: 12px 0; }
    .tk-inner {
      display: flex; gap: 0; white-space: nowrap;
      animation: tickerScroll 30s linear infinite;
    }
    .tk-item {
      font-size: 12px; font-weight: 500; letter-spacing: .15em;
      text-transform: uppercase; color: #000; padding: 0 28px; flex-shrink: 0;
    }
    .tk-dot { color: rgba(0,0,0,.5); }
    @keyframes tickerScroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }

    /* ── EYEBROW / SECTION TITLES ───────────────────── */
    .eyebrow {
  display: flex;
    align-items: center;
    gap: 14px;
    font-size: 14px;
    letter-spacing: .5em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 22px;
    }
    .eyebrow::before {
      content: ''; display: inline-block; width: 32px; height: 1px;
      background: var(--accent);
    }
    .sec-title {
      font-family: var(--font-serif);
      font-size: clamp(36px,4vw,72px); font-weight: 700; line-height: 1.05;
      color: #fff; margin-bottom: 40px;
    }
    .sec-title em { font-style: italic; color: var(--accent); }
    .sec-pad { padding: 100px 0; }

    /* ── ABOUT ──────────────────────────────────────── */
    .about { background: #0d0d0d; }
    .about-vis { position: relative; }
    .about-bg-img {
        width: 100%;
    height: 650px;
    object-fit: cover;
    border-radius: 4px;
    display: block;
    }
    .about-text {
      font-size: 15px; font-weight: 300; color: rgba(255,255,255,.65);
      line-height: 1.85; margin-bottom: 20px;
    }
    .pillar {
      display: flex; gap: 20px; align-items: flex-start;
      padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.07);
    }
    .p-n {
      font-family: var(--font-serif); font-size: 28px; font-weight: 700;
      color: var(--accent); line-height: 1; flex-shrink: 0; min-width: 44px;
    }
    .p-t { font-size: 14px; font-weight: 500; color: #fff; margin-bottom: 4px; letter-spacing: .04em; }
    .p-d { font-size: 13px; color: rgba(255,255,255,.5); font-weight: 300; }

    /* ── SERVICES ───────────────────────────────────── */
    .services { background: #000; }
    .svc-top { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 48px; }
    .svc-count {
      font-family: var(--font-serif); font-size: 80px; font-weight: 700;
      color: rgba(255,255,255,.05); line-height: 1;
    }
    .svc-card {
          background: rgb(255 255 255);
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 14px;
    padding: 32px;
    transition: all .3s;
    height: 100%;
    position: relative;
    overflow: hidden;
    box-shadow: 0px 0px 6px 0px #CCC;

    }
    .svc-card::before {
      content: attr(data-n); position: absolute; top: -10px; right: 16px;
      font-family: var(--font-serif); font-size: 72px; font-weight: 700;
      color: rgba(255,255,255,.04); line-height: 1;
    }
    .svc-card:hover { background: rgba(255,255,255,.06); border-color: rgba(212,175,55,.3); transform: translateY(-4px); }
    .svc-ico svg {  width: 27px;
    height: 29px;
    stroke: var(--accent);
    fill: none;
    stroke-width: 1.5;
    margin-bottom: -2px;}
    

    /* ── INDUSTRIES ─────────────────────────────────── */
    .inds { background: #080808; }
    .ind-strip {
      display: flex; gap: 0; overflow-x: auto; scrollbar-width: none;
      cursor: grab; scroll-behavior: smooth;
    }
    .ind-strip::-webkit-scrollbar { display: none; }
    .ind-c {
      flex-shrink: 0; width: 240px; padding: 32px 24px;
      border: 1px solid rgba(255,255,255,.06); border-radius: 4px;
      margin-right: 16px; transition: all .3s;
    }
    .ind-c:hover { background: rgba(255,255,255,.04); border-color: rgba(212,175,55,.2); }
    .ind-num {
      font-family: var(--font-serif); font-size: 11px; color: var(--accent);
      letter-spacing: .2em; margin-bottom: 20px;
    }
    .ind-ico svg {     width: 20px;
    height: 20px;
    stroke: rgb(255 255 255 / 77%);
    fill: none;
    stroke-width: 1.5;
    margin-bottom: 0px;}
    .ind-d {     font-size: 15px;
    color: rgb(255 255 255 / 97%);
    font-weight: 400;
    line-height: 1.75;
    max-height: 0;
    overflow: hidden;
    transition: max-height .45s ease;}
    .inds-hint { font-size: 11px; color: rgba(255,255,255,.3); letter-spacing: .1em; margin-top: 20px; }

    /* ── WHY ────────────────────────────────────────── */
    .why { background: #060606; }
    .why-card {
        background: rgb(255 255 255);
    border: 1px solid rgb(255 255 255);
    padding: 28px;
    height: 100%;
    transition: all .3s;
    border-radius: 11px;
		    box-shadow: 0px 0px 6px 0px #CCC;
    }
    .why-card:hover { border-color: rgba(212,175,55,.25); background: rgba(255,255,255,.04); }
    .why-c-ico svg { width: 28px; height: 28px; stroke: var(--accent); fill: none; stroke-width: 1.5; }
    .why-c-t { font-size: 16px; font-weight: 500; color: #fff; margin: 16px 0 8px; }
    .why-bar { width: 32px; height: 2px; background: var(--accent); margin-bottom: 14px; opacity: .6; }
    .why-c-d {     font-size: 15px;
    color: #000000;
    font-weight: 400;}

    /* ── VISION / MISSION ───────────────────────────── */
    .vm { background: #0a0a0a; padding: 80px 0; }
    .vm-label {
      font-size: 11px; font-weight: 500; letter-spacing: .25em;
      text-transform: uppercase; color: var(--accent); margin-bottom: 12px;
    }
    .vm-head {
      font-family: var(--font-serif); font-size: clamp(24px,2.5vw,40px);
      font-weight: 700; color: #fff; margin-bottom: 20px;
    }
    .vm-txt { font-size: 15px; color: rgba(255,255,255,.6); line-height: 1.85; font-weight: 300; }
    .vm-list { padding-left: 0; list-style: none; }
    .vm-list li {
      padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.06);
      font-size: 14px; color: rgba(255,255,255,.7); font-weight: 300;
      display: flex; align-items: center; gap: 12px;
    }
    .vm-list li::before { content: '→'; color: var(--accent); flex-shrink: 0; }
    .vm-divider { width: 1px; background: rgba(255,255,255,.08); align-self: stretch; }

    /* ── TRAINING ───────────────────────────────────── */
    .train { background: #000; }
    .tc-card {
         background: rgb(255 255 255);
    border: 1px solid rgb(255 255 255);
    border-radius: 10px;
    padding: 32px;
    height: 100%;
    position: relative;
    overflow: hidden;
    transition: all .3s;
    box-shadow: 0px 0px 6px 0px #CCC;
    }
    .tc-card:hover { border-color: rgba(212,175,55,.3); background: rgba(255,255,255,.06); }
    .tc-bg {
      position: absolute; top: -10px; right: 20px;
      font-family: var(--font-serif); font-size: 80px; font-weight: 700;
      color: rgba(255,255,255,.04); line-height: 1; pointer-events: none;
    }
    .tc-tag {
      font-size: 10px; font-weight: 500; letter-spacing: .2em;
      text-transform: uppercase; color: var(--accent);
      border: 1px solid var(--accent); padding: 4px 12px;
      border-radius: 2px; display: inline-block; margin-bottom: 16px;
    }
    .tc-title { font-size: 22px; font-weight: 500; color: #fff; margin-bottom: 14px; font-family: var(--font-serif); }
    .tc-body { font-size: 14px; color: rgba(255,255,255,.5); line-height: 1.7; font-weight: 300; margin-bottom: 24px; }
    .tc-link {
       display: inline-flex;
    align-items: center;
    font-size: 14px;
    text-transform: uppercase;
    color: var(--gold);
    text-decoration: none;
    margin-top: 30px;
    font-weight: 500;
    position: relative;
    }
    .tc-link:hover { gap: 14px; color: var(--accent); }

    /* ── CTA ────────────────────────────────────────── */
    .cta-section {
         background: #FFF;
    padding: 80px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
    }
    .cta-glow {
      position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
      width: 600px; height: 600px; border-radius: 50%;
      background: radial-gradient(circle,rgba(212,175,55,.08) 0%,transparent 70%);
      pointer-events: none;
    }
    .btn-cta-primary {
      display: inline-flex; align-items: center; gap: 8px;
      padding: 18px 40px; font-size: 14px; font-weight: 500;
      letter-spacing: .08em; text-decoration: none; border-radius: 3px;
      background: var(--accent); color: #000; border: none; transition: all .25s;
    }
    .btn-cta-primary:hover { background: #f0d488; transform: translateY(-2px); color: #000; }
    .btn-cta-outline {
          display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 18px 40px;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    border-radius: 3px;
    background: #021335;
    color: #fff;
    border: 1.5px solid rgb(2 19 53);
    }
    .btn-cta-outline:hover { border-color: rgb(2 19 53); background: #021335; color: #fff; }
    .cta-contacts { display: flex; justify-content: center; gap: 48px; flex-wrap: wrap; margin-top: 48px; }
    .cc-l { font-size: 11px; letter-spacing: .15em; text-transform: uppercase; color: rgba(255,255,255,.35); display: block; margin-bottom: 4px; }
    .cc-v { font-size: 14px; color: rgba(255,255,255,.7); text-decoration: none; }
    .cc-v:hover { color: var(--accent); }

    /* ── FOOTER ─────────────────────────────────────── */
    footer { background: #040404; padding: 72px 0 0; }
    .ft-logo {
      font-family: var(--font-serif); font-size: 36px; font-weight: 700;
      color: #fff; letter-spacing: .05em;
    }
    .ft-sub { font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: rgba(255,255,255,.35); margin-bottom: 16px; }
    .ft-motto { font-size: 12px; color: var(--accent); letter-spacing: .15em; margin-bottom: 24px; }
    .ft-links-contact a {
      display: block; font-size: 13px; color: rgba(255,255,255,.5);
      text-decoration: none; margin-bottom: 6px; transition: color .2s;
    }
    .ft-links-contact a:hover { color: var(--accent); }
    .ft-col-t { font-size: 11px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: rgba(255,255,255,.35); margin-bottom: 20px; }
    .ft-links { list-style: none; padding: 0; margin: 0; }
    .ft-links li { margin-bottom: 10px; }
    .ft-links a { font-size: 13px; color: rgba(255,255,255,.55); text-decoration: none; transition: color .2s; }
    .ft-links a:hover { color: var(--accent); }
    .ft-bar { border-color: rgba(255,255,255,.06); margin: 40px 0 0; }
    .ft-bottom {
      padding: 20px 0 0;
      display: flex; align-items: center; justify-content: space-between;
      flex-wrap: wrap; gap: 12px; font-size: 12px; color: rgba(255,255,255,.3);
    }
    .ft-3e { display: flex; gap: 16px; }
    .ft-3e span {     color: var(--accent);
    font-size: 14px; }

    /* ── POWERED BADGE ──────────────────────────────── */
    .powered-strip {     padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -70px;}
    .pw-badge {
      display: inline-flex; align-items: center; gap: 20px;
      padding: 10px 36px 10px 10px; border-radius: 100px;
      background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08);
      cursor: pointer; transition: all .3s; text-decoration: none;
    }
    .pw-badge:hover {
      background: rgba(255,255,255,.08); border-color: rgba(99,102,241,.3);
      transform: translateY(-2px); box-shadow: 0 8px 32px rgba(99,102,241,.15);
    }
    .pw-av { width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0; position: relative; }
    .pw-ring {
      position: absolute; inset: 0; border-radius: 50%;
      background: conic-gradient(#f97316,#ef4444,#fbbf24,#f97316);
      animation: spinRing 5s linear infinite;
    }
    @keyframes spinRing { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
    .pw-white { position: absolute; inset: 4px; border-radius: 50%; background: rgba(255,255,255,.06); z-index: 1; }
    .pw-face { position: absolute; inset: 7px; border-radius: 50%; background: #fef3c7; z-index: 2; overflow: hidden; }
    .pw-face svg { width: 100%; height: 100%; display: block; }
    .head  { animation: headBob 2.5s ease-in-out infinite; }
    .eye   { transform-origin: center; animation: blink 4s ease-in-out infinite; }
    .eye2  { transform-origin: center; animation: blink 4s ease-in-out infinite .1s; }
    .glass-fill { animation: glassGlow 2s ease-in-out infinite; }
    .hand-l { animation: typeL .5s ease-in-out infinite; }
    .hand-r { animation: typeR .5s ease-in-out infinite .25s; }
    .st1 { animation: steam 1.5s ease-in-out infinite; }
    .st2 { animation: steam 1.5s ease-in-out infinite .5s; }
    .notif { animation: notif 6s ease-in-out infinite 2s; }
    @keyframes headBob    { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-2px)} }
    @keyframes blink      { 0%,92%,100%{transform:scaleY(1)} 96%{transform:scaleY(.08)} }
    @keyframes glassGlow  { 0%,100%{fill:rgba(186,230,253,.35)} 50%{fill:rgba(186,230,253,.8)} }
    @keyframes typeL      { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-3px)} }
    @keyframes typeR      { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-3px)} }
    @keyframes steam      { 0%,100%{opacity:0;transform:translateY(0)} 50%{opacity:.6;transform:translateY(-5px)} }
    @keyframes notif      { 0%,70%,100%{opacity:0;transform:scale(0)} 75%{opacity:1;transform:scale(1.1)} 95%{opacity:1;transform:scale(1)} }
    .pw-text { display: flex; flex-direction: column; gap: 3px; }
    .pw-by   { font-size: 10px; color: rgba(255,255,255,.3); letter-spacing: 3px; text-transform: uppercase; }
    .pw-name { font-size: 18px; font-weight: 800; letter-spacing: -.8px; line-height: 1; white-space: nowrap; }
    .pw-royal { color: #fff; }
    .pw-it    { color: #818cf8; }
    .pw-park  { color: #fff; }
    .pw-sub   { font-size: 10px; color: rgba(255,255,255,.2); letter-spacing: 1px; margin-top: 2px; }

    /* ── WHATSAPP BTN ───────────────────────────────── */
    .wa-btn {
      position: fixed; bottom: 28px; right: 28px; z-index: 1000;
      width: 56px; height: 56px; border-radius: 50%;
      background: #25d366; display: flex; align-items: center; justify-content: center;
      box-shadow: 0 4px 20px rgba(37,211,102,.4); transition: transform .25s;
    }
    .wa-btn:hover { transform: scale(1.1); }
    .wa-btn svg { width: 28px; height: 28px; fill: #fff; }

    /* ── REVEAL ANIMATION ───────────────────────────── */
    .reveal { opacity: 0; transform: translateY(32px); transition: opacity .7s ease, transform .7s ease; }
    .reveal.visible { opacity: 1; transform: none; }
    .d1 { transition-delay: .15s; }
    .d2 { transition-delay: .3s; }
    .d3 { transition-delay: .45s; }
    .d4 { transition-delay: .6s; }

    @media(max-width: 768px) {
      .ft-bottom { flex-direction: column; text-align: center; }
      .svc-top { flex-direction: column; align-items: flex-start; gap: 8px; }
      .cta-contacts { gap: 24px; flex-direction: column; align-items: center; }
      .vm-divider { display: none; }
    }




.vis-br,
.vis-labels{
    position: relative;
    z-index: 2;
}

/* ── CURSOR ── */
#c1,#c2{position:fixed;border-radius:50%;pointer-events:none;z-index:9000;transform:translate(-50%,-50%)}
#c1{width:8px;height:8px;background:var(--gold);transition:width .25s,height .25s,opacity .25s}
#c2{width:34px;height:34px;border:1px solid var(--gold);opacity:.4;transition:width .3s,height .3s,left .07s,top .07s}
.cur-grow #c1{width:18px;height:18px}
.cur-grow #c2{width:56px;height:56px;opacity:.2}

/* ── PROGRESS BAR ── */
#prog{position:fixed;top:0;left:0;height:2px;background:linear-gradient(90deg,var(--golddim),var(--gold),var(--goldlt));z-index:9001;width:0%;transition:width .1s linear}

/* ── NAV ── */
nav{position:fixed;top:0;inset-inline:0;z-index:800;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}
.nav-glass{position:absolute;inset:0;background:rgba(253,251,245,.88);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border-bottom:1px solid var(--faint);transition:background .4s}
nav.dark .nav-glass{background:rgba(8,15,34,.9);border-bottom-color:rgba(196,149,58,.12)}
.nav-brand{position:relative;z-index:1;text-decoration:none;display:flex;flex-direction:column;line-height:1}
.nb-main{font-family:'Playfair Display',serif;font-size:21px;font-weight:900;letter-spacing:.1em;color:var(--navy)}
nav.dark .nb-main{color:#fff}
.nb-sub{font-size:8.5px;letter-spacing:.55em;text-transform:uppercase;color:var(--gold);font-weight:300;margin-top:1px}
.nav-menu{position:relative;z-index:1;display:flex;gap:44px;list-style:none}
.nav-menu a{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--mid);text-decoration:none;font-weight:300;position:relative;padding-bottom:3px;transition:color .3s}
.nav-menu a::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--gold);scale:0 1;transform-origin:left;transition:scale .35s}
.nav-menu a:hover{color:var(--gold)}
.nav-menu a:hover::after{scale:1 1}
nav.dark .nav-menu a{color:#fff}
nav.dark .nav-menu a:hover{color:var(--goldlt)}
.nav-tel{position:relative;z-index:1;font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);border:1px solid var(--faint3);padding:10px 28px;text-decoration:none;font-weight:400;transition:all .3s;white-space:nowrap}
.nav-tel:hover{background:var(--gold);color:var(--navy);border-color:var(--gold)}
/* ── HERO ── */
.hero{position:relative;min-height:100svh;display:grid;grid-template-columns:1fr 340px;background:var(--navy);overflow:hidden}
.brand-logo{
    padding: 0 10px;
}
canvas#bg{position:absolute;inset:0;z-index:0}
.hero-vline{position:absolute;top:0;bottom:0;right:340px;width:1px;background:linear-gradient(to bottom,transparent,rgba(196,149,58,.3) 30%,rgba(196,149,58,.3) 70%,transparent);z-index:1}
.hero-content{position:relative;z-index:2;padding:140px 5vw 80px;display:flex;flex-direction:column;justify-content:center}
.h-eyebrow{display:flex;align-items:center;gap:16px;font-size:9px;letter-spacing:.55em;text-transform:uppercase;color:var(--gold);margin-bottom:52px;opacity:0;animation:au .9s .2s ease forwards}
.h-eyebrow span{display:inline-block;width:48px;height:1px;background:var(--gold)}
.h-title{font-family:'Playfair Display',serif;font-size:clamp(58px,5.5vw,116px);font-weight:700;line-height:1;letter-spacing:-.02em;color:#fff;opacity:0;animation:au .9s .4s ease forwards}
.h-title i{display:block;font-style:italic;font-weight:300;color:var(--goldlt);letter-spacing:.01em}
.h-title s{display:block;font-family:'Jost',sans-serif;font-size:.28em;font-style:normal;font-weight:200;letter-spacing:.22em;text-decoration:none;color:rgba(255,255,255,.25);margin-top:18px}
.h-body{font-size:14px;line-height:1.95;letter-spacing:.04em;color:rgba(255,255,255,.38);max-width:420px;margin-top:40px;font-weight:200;opacity:0;animation:au .9s .6s ease forwards}
.h-cta{display:flex;align-items:center;gap:18px;margin-top:48px;opacity:0;animation:au .9s .8s ease forwards}
.btn-a{display:inline-flex;align-items:center;gap:12px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:17px 40px;background:var(--gold);color:var(--navy);font-weight:500;text-decoration:none;transition:all .35s;position:relative;overflow:hidden}
.btn-a::before{content:'';position:absolute;inset:0;background:var(--goldlt);transform:translateX(-101%);transition:transform .35s}
.btn-a:hover::before{transform:translateX(0)}
.btn-a span{position:relative;z-index:1}
.btn-b{display:inline-flex;align-items:center;gap:10px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:16px 40px;border:1px solid rgba(196,149,58,.35);color:rgba(196,149,58,.8);text-decoration:none;font-weight:300;transition:all .35s}
.btn-b:hover{border-color:var(--gold);color:var(--gold);background:rgba(196,149,58,.06)}
.hero-panel{position:relative;z-index:2;padding:140px 36px 80px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid rgba(196,149,58,.1)}
.h-stat{padding:28px 0;border-bottom:1px solid rgba(196,149,58,.12);opacity:0;animation:ar .7s ease forwards}
.h-stat:nth-child(1){animation-delay:.5s}.h-stat:nth-child(2){animation-delay:.65s}
.h-stat:nth-child(3){animation-delay:.8s}.h-stat:nth-child(4){animation-delay:.95s}
.h-stat:first-child{border-top:1px solid rgba(196,149,58,.12)}
.hs-n{font-family:'Playfair Display',serif;font-size:50px;font-weight:700;color:var(--gold);line-height:1;letter-spacing:-.02em}
.hs-l{font-size:8.5px;letter-spacing:.35em;text-transform:uppercase;color:rgba(255,255,255,.25);margin-top:6px;font-weight:200}
@keyframes au{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes ar{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}

/* ── TICKER ── */
.ticker{background:var(--gold);overflow:hidden;padding:14px 0}
.tk-inner{display:flex;white-space:nowrap;animation:tk 28s linear infinite}
.tk-item{    font-size: 15px;
    letter-spacing: normal;
    text-transform: uppercase;
    color: var(--navy);
    padding: 0 27px;
    font-weight: 500;
    opacity: .85;}
.tk-dot{opacity:.35}
@keyframes tk{to{transform:translateX(-50%)}}

/* ── SHARED UTILS ── */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .85s ease,transform .85s ease}
.reveal.on{opacity:1;transform:none}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}.reveal.d4{transition-delay:.4s}

.eyebrow::before{content:'';width:32px;height:1px;background:var(--gold)}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(38px,4vw,68px);font-weight:700;line-height:.95;color:var(--navy);letter-spacing:-.02em}
.sec-title em{font-weight:300;font-style:italic;color:var(--gold)}
.sec-pad{padding:80px 5vw}

/* ── ABOUT ── */
.about{background:var(--cream);overflow:hidden}

.about-vis::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 40% 60%,rgba(196,149,58,.1),transparent 65%)}
/* orbiting rings */
.orb{position:relative;width:200px;height:200px;border-radius:50%;border:1px solid rgba(196,149,58,.2);display:flex;align-items:center;justify-content:center;z-index:1}
.orb::before{content:'';position:absolute;inset:-28px;border-radius:50%;border:1px dashed rgba(196,149,58,.12);animation:orb1 18s linear infinite}
.orb::after{content:'';position:absolute;inset:-56px;border-radius:50%;border:1px dashed rgba(196,149,58,.07);animation:orb1 30s linear infinite reverse}
@keyframes orb1{to{transform:rotate(360deg)}}
.orb-inner{font-family:'Playfair Display',serif;font-size:100px;font-weight:900;font-style:italic;color:var(--gold);line-height:1;opacity:.9}
/* corner brackets */
.vis-br{position:absolute;width:20px;height:20px}
.vis-br.tl{top:20px;left:20px;border-top:1.5px solid var(--gold);border-left:1.5px solid var(--gold)}
.vis-br.tr{top:20px;right:20px;border-top:1.5px solid var(--gold);border-right:1.5px solid var(--gold)}
.vis-br.bl{bottom:20px;left:20px;border-bottom:1.5px solid var(--gold);border-left:1.5px solid var(--gold)}
.vis-br.br2{bottom:20px;right:20px;border-bottom:1.5px solid var(--gold);border-right:1.5px solid var(--gold)}
.vis-labels{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:32px;z-index:1}
.vis-chip{font-size:8px;letter-spacing:.4em;text-transform:uppercase;color:rgba(196,149,58,.5);border:1px solid rgba(196,149,58,.18);padding:6px 18px}
.about-body{padding:80px 72px 80px 80px;display:flex;flex-direction:column;justify-content:center}
.about-text{    font-size: 16px;
    color: var(--mid);
    font-weight: 400;
    margin-top: 24px;}
.about-text + .about-text{margin-top:1.2em}
.pillars{margin-top:48px;border-top:1px solid var(--faint)}
.pillar{display:grid;grid-template-columns:36px 1fr;gap:16px;align-items:start;padding:20px 0;border-bottom:1px solid var(--faint);transition:background .2s}
.pillar:hover{background:rgba(196,149,58,.03)}
.p-t{    font-size: 16px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--navy);
    font-weight: 500;
    margin-bottom: 3px;}
.p-d{    font-size: 15px;
    color: var(--mid);
    font-weight: 300;
    line-height: 1.7;}

/* ── SERVICES ── */
.services{background:var(--stone)}
.svc-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:72px}
.svc-count{font-family:'Playfair Display',serif;font-size:96px;font-weight:900;color:rgba(196,149,58,.1);line-height:1;letter-spacing:-.04em}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.svc{background:var(--cream);padding:46px 38px 40px;position:relative;overflow:hidden;transition:background .4s,transform .35s}
.svc::before{content:'';position:absolute;left:0;top:0;width:3px;height:0;background:var(--gold);transition:height .45s ease}
.svc::after{content:attr(data-n);position:absolute;right:24px;bottom:16px;font-family:'Playfair Display',serif;font-size:56px;font-weight:900;font-style:italic;color:rgba(196,149,58,.06);line-height:1;transition:color .4s}
.svc:hover{background:var(--navy);transform:translateY(-3px)}
.svc:hover::before{height:100%}
.svc:hover::after{color:rgba(196,149,58,.12)}
.svc-ico{width:44px;height:44px;border:1px solid var(--faint3);display:flex;align-items:center;justify-content:center;margin-bottom:22px;transition:border-color .4s}
.svc:hover .svc-ico{border-color:rgba(196,149,58,.5)}

.svc-nm{    font-size: 20px;
    color: var(--navy);
    font-weight: 500;
    margin-bottom: 14px;
    transition: color .4s;}
.svc:hover .svc-nm{color:var(--goldlt)}
.svc-tx{font-size: 15px;
    color: var(--mid);
    font-weight: 400;
    line-height: 1.85;
    letter-spacing: .02em;
    transition: color .4s;}
.svc:hover .svc-tx{color:rgba(255,255,255,.38)}

/* ── INDUSTRIES ── */
.inds{background:var(--cream)}
.inds-hint{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--mid);opacity:.5;margin-top:20px;display:flex;align-items:center;gap:10px}
.inds-hint::after{content:'';flex:1;height:1px;background:linear-gradient(to right,var(--faint),transparent)}
.ind-strip{display:flex;gap:2px;overflow-x:auto;margin-top:52px;padding-bottom:12px;scrollbar-width:none;cursor:grab;user-select:none}
.ind-strip:active{cursor:grabbing}
.ind-strip::-webkit-scrollbar{display:none}
.ind-c{flex: 0 0 333px;
    background: var(--navy);
    padding: 31px 18px 31px;
    position: relative;
    overflow: hidden;
    transition: flex .45s cubic-bezier(.4, 0, .2, 1), background .35s;}
.ind-c:hover{flex:0 0 310px;background:var(--navy2)}
.ind-c::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s}
.ind-c:hover::after{transform:scaleX(1)}
.ind-ico{width: 34px;
    height: 34px;
    border: 1px solid rgb(196 149 58 / 90%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;}

.ind-c:hover .ind-d{max-height:100px}
.ind-num{position:absolute;bottom:16px;right:20px;font-family:'Playfair Display',serif;font-size:32px;font-weight:900;font-style:italic;color:rgba(196,149,58,.08)}

/* ── WHY ── */
.why{background: #f2eee4;
    position: relative;
    overflow: hidden;}
.why::before{content:'AVEXA';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:'Playfair Display',serif;font-size:24vw;font-weight:900;color:rgba(196,149,58,.025);white-space:nowrap;letter-spacing:-.04em;pointer-events:none}
.why .eyebrow{color:var(--gold)}
.why .sec-title{color:#fff}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(196,149,58,.08);margin-top:72px}
.why-c{background:var(--navy);padding:44px 36px;position:relative;overflow:hidden;transition:background .35s}
.why-c:hover{background:rgba(196,149,58,.05)}
.why-c-ico{width:46px;height:46px;border:1px solid rgba(196,149,58,.2);display:flex;align-items:center;justify-content:center;margin-bottom:26px;transition:border-color .3s,background .3s}
.why-c:hover .why-c-ico{border-color:var(--gold);background:rgba(196,149,58,.08)}
.why-c-ico svg{width:21px;height:21px;stroke:var(--gold);fill:none;stroke-width:1.2}
.why-c-t{    font-size: 18px;
    color: #000000;
    font-weight: 500;
    margin-bottom: 6px;}
.why-bar{width:0;height:1px;background:var(--gold);transition:width .5s ease;margin-bottom:16px}
.why-c:hover .why-bar{width:36px}



/* ── TRAININGS ── */
.train{background:var(--stone)}
.train-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:72px}
.tc{background:var(--cream);padding:60px 54px;position:relative;overflow:hidden;transition:background .35s,box-shadow .35s}
.tc:hover{background:#fff;box-shadow:0 12px 60px rgba(196,149,58,.1)}
.tc-bg{position:absolute;right:-12px;bottom:-40px;font-family:'Playfair Display',serif;font-size:200px;font-weight:900;font-style:italic;color:rgba(196,149,58,.05);line-height:1;transition:color .4s;pointer-events:none}
.tc:hover .tc-bg{color:rgba(196,149,58,.09)}
.tc-tag{font-size:8.5px;letter-spacing:.45em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;display:flex;align-items:center;gap:10px;font-weight:400}
.tc-tag::before{content:'';width:18px;height:1px;background:var(--gold)}
.tc-title{font-family:'Playfair Display',serif;font-size:clamp(24px,2.5vw,34px);font-weight:700;color:var(--navy);line-height:1.15;margin-bottom:18px}
.tc-body{font-size:14px;color:var(--mid);font-weight:300;line-height:1.85;letter-spacing:.025em}

.tc-link::after{content:'';position:absolute;bottom:-3px;left:0;width:100%;height:1px;background:rgba(196,149,58,.25);transition:background .3s}
.tc-link:hover::after{background:var(--gold)}
.tc-arrow{transition:transform .3s}
.tc-link:hover .tc-arrow{transform:translateX(6px)}

/* ── CTA ── */
.cta{background:var(--navy);padding:160px 5vw;text-align:center;position:relative;overflow:hidden}
.cta-glow{position:absolute;left:50%;top:100%;transform:translate(-50%,-50%);width:800px;height:400px;background:radial-gradient(ellipse,rgba(196,149,58,.1),transparent 70%);pointer-events:none}
.cta .eyebrow{justify-content:center}
.cta .eyebrow::before{display:none}
.cta .sec-title{color:#fff;font-size:clamp(52px,7vw,104px);margin-top:4px;margin-bottom:52px}
.cta-contacts{display:flex;justify-content:center;gap:72px;margin-top:48px;flex-wrap:wrap}
.cc{display:flex;flex-direction:column;align-items:center;gap:7px}
.cc-l{font-size: 11px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: rgb(0 0 0);}
.cc-v{font-size:14px;color:var(--gold);text-decoration:none;letter-spacing:.06em;font-weight:300;transition:color .3s}
.cc-v:hover{color:var(--goldlt)}
.cta-btns{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}

/* ── FOOTER ── */
footer{background: #011436;
    padding: 58px 1vw 4px;}
.ft-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:56px;margin-bottom:64px}
.ft-logo{font-family:'Playfair Display',serif;font-size:44px;font-weight:900;color:var(--gold);letter-spacing:.06em;line-height:1}
.ft-sub{font-size:8px;letter-spacing:.55em;text-transform:uppercase;color:rgba(196,149,58,.35);margin-bottom:20px;margin-top:2px}
.ft-motto{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#fff;margin-bottom:22px}
.ft-links-contact a{    font-size: 15px;
    color: #fff;
    text-decoration: none;
    display: block;
    margin-bottom: 8px;
    transition: color .25s;
    letter-spacing: .04em;
    font-weight: 200;}
.ft-links-contact a:hover{color:var(--gold)}
.ft-col-t{    font-size: 16px;
    text-transform: uppercase;
    color: rgb(196 149 58);
    margin-bottom: 20px;
    font-weight: 400;}
.ft-links{list-style:none;display:flex;flex-direction:column;gap:11px}
.ft-links a{font-size: 15px;
    color: #fff;
    text-decoration: none;
    letter-spacing: .04em;
    font-weight: 200;
    transition: color .25s;}
.ft-links a:hover{color:var(--gold)}
.ft-bar{border:none;border-top:1px solid rgba(196,149,58,.08);margin-bottom:26px}
.ft-bottom{display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    color: #fff;
    letter-spacing: .06em;
    flex-wrap: wrap;
    gap: 8px;}
.ft-bottom a{color:rgba(196,149,58,.35);text-decoration:none}

/* ── WHATSAPP ── */
.wa-btn{position:fixed;bottom:30px;right:30px;z-index:700;width:52px;height:52px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .25s,box-shadow .25s;box-shadow:0 4px 20px rgba(37,211,102,.25)}
.wa-btn:hover{transform:scale(1.12);box-shadow:0 8px 36px rgba(37,211,102,.4)}
.wa-btn svg{width:28px;height:28px;fill:#fff}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .hero{grid-template-columns:1fr}
  .hero-panel{display:none}
  .about-grid{grid-template-columns:1fr}
  .about-vis{min-height:400px}
  .vm{grid-template-columns:1fr}
  .ft-grid{grid-template-columns:1fr 1fr;gap:36px}
}
@media(max-width:840px){
  .svc-grid,.why-grid,.train-grid{grid-template-columns:1fr 1fr}
  nav .nav-menu,.nav-tel{display:none}
  .svc-top{flex-direction:column;gap:16px;align-items:flex-start}
}
@media(max-width:560px){
  .svc-grid,.why-grid,.train-grid{grid-template-columns:1fr}
  .ft-grid{grid-template-columns:1fr}
  .sec-pad{padding:90px 6vw}
  .about-body{padding:56px 6vw}
  .vm-l,.vm-r{padding:72px 6vw}
  .cta{padding:100px 6vw}
}


/*---- About Us ---- */

/* Mobile fullscreen menu */
#mobMenu{position:fixed;inset:0;background:var(--navy);z-index:790;display:none;flex-direction:column;align-items:center;justify-content:center;gap:36px}
#mobMenu a{font-family:'Playfair Display',serif;font-size:36px;font-weight:700;font-style:italic;color:#fff;text-decoration:none;transition:color .3s}
#mobMenu a:hover{color:var(--gold)}
#mobMenu .mob-tel{font-family:'Jost',sans-serif;font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);font-style:normal;font-weight:400;margin-top:20px}

/* ══════════════════════════
   PAGE HERO
══════════════════════════ */
/*.pg-hero{padding: 150px 5vw 81px;*/
/*    background: #011436;*/
/*    position: relative;*/
/*    overflow: hidden;}*/
/*.pg-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(196,149,58,.07),transparent 65%)}*/
.pg-hero{
    padding: 150px 5vw 81px;
    background: #011436;
    position: relative;
    overflow: hidden;

    /* Add image */
    background-image: 
        linear-gradient(rgba(1,20,54,0.50), rgba(1,20,54,0.50)),
        url('../img/hero-bg.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.pg-hero::before{
    content:'';
    position:absolute;
    inset:0;
    background:radial-gradient(
        ellipse at 70% 50%,
        rgba(196,149,58,.07),
        transparent 65%
    );
    pointer-events: none;
}
.pg-hero-bg{position:absolute;right:100px;top:50%;transform:translateY(-50%);font-family:'Playfair Display',serif;font-size:20vw;font-weight:900;font-style:italic;color:rgba(196,149,58,.04);line-height:1;letter-spacing:-.04em;pointer-events:none;white-space:nowrap}
.pg-breadcrumb{font-size: 13px;
    letter-spacing: .45em;
    text-transform: uppercase;
    color: rgb(196 149 58);
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    gap: 12px;}
.pg-breadcrumb span{color:rgba(255,255,255,.2)}
.pg-title{font-family:'Playfair Display',serif;font-size:clamp(52px,5vw,112px);font-weight:700;line-height:1;letter-spacing:-.03em;color:#fff}
.pg-title em{display:block;font-style:italic;font-weight:300;color:var(--goldlt)}
.pg-sub{    font-size: 17px;
    color: rgb(255 255 255);
    font-weight: 200;
    max-width: 605px;
    line-height: 1.9;
    margin-top: 28px;
    letter-spacing: .04em;}
.pg-hero-line{position:absolute;bottom:0;left:5vw;right:5vw;height:1px;background:linear-gradient(to right,transparent,rgba(196,149,58,.2),transparent)}


/* ── REVEAL ANIMATIONS ── */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .85s ease,transform .85s ease}
.reveal.on{opacity:1;transform:none}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}.reveal.d4{transition-delay:.4s}
.revealL{opacity:0;transform:translateX(-32px);transition:opacity .85s ease,transform .85s ease}
.revealL.on{opacity:1;transform:none}
.revealR{opacity:0;transform:translateX(32px);transition:opacity .85s ease,transform .85s ease}
.revealR.on{opacity:1;transform:none}

/* ── SHARED COMPONENTS ── */
.eyebrow{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
.eyebrow::before{content:'';width:32px;height:1px;background:var(--gold)}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(36px,4.5vw,64px);font-weight:700;line-height:1;color:var(--navy);letter-spacing:-.02em}
.sec-title em{font-weight:300;font-style:italic;color:var(--gold)}
.sec-pad{padding:80px 5vw}
.btn-a{display:inline-flex;align-items:center;gap:12px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:17px 40px;background:var(--gold);color:var(--navy);font-weight:500;text-decoration:none;transition:all .35s;position:relative;overflow:hidden;border:none}
.btn-a::before{content:'';position:absolute;inset:0;background:var(--goldlt);transform:translateX(-101%);transition:transform .35s}
.btn-a:hover::before{transform:translateX(0)}
.btn-a span{position:relative;z-index:1}
.btn-b{display:inline-flex;align-items:center;gap:10px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:16px 40px;border:1px solid rgba(196,149,58,.35);color:rgba(196,149,58,.8);text-decoration:none;font-weight:300;transition:all .35s;background:transparent}
.btn-b:hover{border-color:var(--gold);color:var(--gold);background:rgba(196,149,58,.06)}

/* ══════════════════════════
   ABOUT — STORY SECTION
══════════════════════════ */
.about-story{background:var(--cream)}
.story-img{background:url("../img/about-event.jpg"); position:relative; min-height:600px; overflow:hidden; display:flex;align-items:center; justify-content:center}
.story-img::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(196,149,58,.08),transparent 70%)}
.story-orb{position:relative;width:260px;height:260px;border-radius:50%;border:1px solid rgba(196,149,58,.18);display:flex;align-items:center;justify-content:center}
.story-orb::before{content:'';position:absolute;inset:-40px;border-radius:50%;border:1px dashed rgba(196,149,58,.1);animation:spin1 22s linear infinite}
.story-orb::after{content:'';position:absolute;inset:-80px;border-radius:50%;border:1px dashed rgba(196,149,58,.06);animation:spin1 36s linear infinite reverse}
@keyframes spin1{to{transform:rotate(360deg)}}
.story-orb-txt{font-family:'Playfair Display',serif;font-size:120px;font-weight:900;font-style:italic;color:var(--gold);line-height:1}
.story-corners .sc{position:absolute;width:28px;height:28px}
.sc.tl{top:24px;left:24px;border-top:1.5px solid var(--gold);border-left:1.5px solid var(--gold)}
.sc.tr{top:24px;right:24px;border-top:1.5px solid var(--gold);border-right:1.5px solid var(--gold)}
.sc.bl{bottom:24px;left:24px;border-bottom:1.5px solid var(--gold);border-left:1.5px solid var(--gold)}
.sc.br{bottom:24px;right:24px;border-bottom:1.5px solid var(--gold);border-right:1.5px solid var(--gold)}
.story-body{padding:80px 72px;display:flex;flex-direction:column;justify-content:center}
.story-body p{font-size:15px;line-height:2;color:var(--mid);font-weight:200;letter-spacing:.03em;margin-top:20px}
.story-body p+p{margin-top:1em}

/* ── STATS STRIP ── */
.stats-strip{background:var(--navy)}
.stat-cell{padding:60px 40px;border-right:1px solid rgba(196,149,58,.08);text-align:center;position:relative;overflow:hidden;transition:background .3s}
.stat-cell:last-child{border-right:none}
.stat-cell:hover{background:rgba(196,149,58,.04)}
.stat-n{font-family:'Playfair Display',serif;font-size:64px;font-weight:900;color:var(--gold);line-height:1;letter-spacing:-.03em}
.stat-l{font-size: 15px;
    text-transform: uppercase;
    color: rgb(255 255 255);
    margin-top: 15px;
    font-weight: 200;}
.stat-cell::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:0;height:2px;background:var(--gold);transition:width .4s}
.stat-cell:hover::after{width:60%}

/* ── LEADERSHIP ── */
.leadership{background:var(--stone)}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:64px}
.team-card{background:var(--cream);padding:48px 36px;position:relative;overflow:hidden;transition:background .35s,transform .3s}
.team-card:hover{background:var(--navy);transform:translateY(-4px)}
.tc-avatar{width:72px;height:72px;border-radius:50%;background:var(--faint);border:1.5px solid rgba(196,149,58,.3);display:flex;align-items:center;justify-content:center;margin-bottom:24px;font-family:'Playfair Display',serif;font-size:28px;font-style:italic;color:var(--gold);transition:border-color .3s}
.team-card:hover .tc-avatar{border-color:var(--gold);background:rgba(196,149,58,.08)}
.tc-name{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:var(--navy);margin-bottom:4px;transition:color .3s}
.team-card:hover .tc-name{color:#fff}
.tc-role{    font-size: 14px;
    text-transform: uppercase;
    color: #f0a30e;
    margin-bottom: 16px;
    font-weight: 600;}
.tc-bio{font-size: 15px;
    color: var(--mid);
    font-weight: 400;
    line-height: 1.8;
    transition: color .3s;}
.team-card:hover .tc-bio{color:rgba(255,255,255,.35)}

/* ── VALUES ── */
.values{background:#FFF;}
.val-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--fog);margin-top:64px}
.val-card{background:var(--cream);padding:52px 48px;transition:background .3s}
.val-card:hover{background:#fff}
.val-num{font-family:'Playfair Display',serif;font-size:48px;font-weight:900;font-style:italic;color:rgba(196,149,58,.15);margin-bottom:16px;line-height:1}
.val-title{    font-size: 18px;
    color: var(--navy);
    font-weight: 500;
    margin-bottom: 10px;}
.val-line{width:32px;height:1px;background:var(--gold);margin-bottom:16px;transition:width .4s}
.val-card:hover .val-line{width:56px}
.val-body{font-size: 15px;
    color: var(--mid);
    font-weight: 400;
    line-height: 1.85;}


/* ── WHATSAPP BUTTON ── */
.wa-btn{position:fixed;bottom:30px;right:30px;z-index:700;width:52px;height:52px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .25s,box-shadow .25s;box-shadow:0 4px 20px rgba(37,211,102,.25)}
.wa-btn:hover{transform:scale(1.12);box-shadow:0 8px 36px rgba(37,211,102,.4)}
.wa-btn svg{width:28px;height:28px;fill:#fff}

/* ── POWERED BY BADGE ── */
.powered-strip{padding:20px;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}
.pw-badge{display:inline-flex;align-items:center;gap:20px;padding:10px 36px 10px 10px;border-radius:100px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:all .3s ease;text-decoration:none}
.pw-badge:hover{background:rgba(255,255,255,.08);border-color:rgba(99,102,241,.3);transform:translateY(-2px);box-shadow:0 8px 32px rgba(99,102,241,.15)}
.pw-av{width:44px;height:44px;border-radius:50%;flex-shrink:0;position:relative}
.pw-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(#f97316,#ef4444,#fbbf24,#f97316);animation:spinRing 5s linear infinite}
@keyframes spinRing{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.pw-white{position:absolute;inset:4px;border-radius:50%;background:rgba(255,255,255,.06);z-index:1}
.pw-face{position:absolute;inset:7px;border-radius:50%;background:#fef3c7;z-index:2;overflow:hidden}
.pw-face svg{width:100%;height:100%;display:block}
.pw-text{display:flex;flex-direction:column;gap:3px}
.pw-by{font-size:10px;color:rgba(255,255,255,.3);letter-spacing:3px;text-transform:uppercase;font-weight:400;font-family:'Jost',sans-serif}
.pw-name{font-size:18px;font-weight:800;letter-spacing:-.8px;line-height:1;white-space:nowrap;font-family:'Playfair Display',serif}
.pw-royal{color:#fff}
.pw-it{color:#818cf8}
.pw-park{color:#fff}
.pw-sub{font-size:10px;color:rgba(255,255,255,.2);letter-spacing:1px;margin-top:2px}

/* Face animations */
@keyframes headBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.head{animation:headBob 2.5s ease-in-out infinite}
@keyframes blink{0%,92%,100%{transform:scaleY(1)}96%{transform:scaleY(.08)}}
.eye{transform-origin:center;animation:blink 4s ease-in-out infinite}
.eye2{transform-origin:center;animation:blink 4s ease-in-out infinite .1s}
@keyframes glassGlow{0%,100%{fill:rgba(186,230,253,.35)}50%{fill:rgba(186,230,253,.8)}}
.glass-fill{animation:glassGlow 2s ease-in-out infinite}
@keyframes typeL{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes typeR{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.hand-l{animation:typeL .5s ease-in-out infinite}
.hand-r{animation:typeR .5s ease-in-out infinite .25s}
@keyframes steam{0%,100%{opacity:0;transform:translateY(0)}50%{opacity:.6;transform:translateY(-5px)}}
.st1{animation:steam 1.5s ease-in-out infinite}
.st2{animation:steam 1.5s ease-in-out infinite .5s}
@keyframes notif{0%,70%,100%{opacity:0;transform:scale(0)}75%{opacity:1;transform:scale(1.1)}95%{opacity:1;transform:scale(1)}}
.notif{animation:notif 6s ease-in-out infinite 2s}

/* ── RESPONSIVE OVERRIDES ── */
@media(max-width:1100px){
  .story-img{min-height:400px}
  .team-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .val-grid{grid-template-columns:1fr}
  .stats-strip .row>div{border-right:none;border-bottom:1px solid rgba(196,149,58,.08)}
  .stats-strip .row>div:last-child{border-bottom:none}
  .team-grid{grid-template-columns:1fr}
  .story-body{padding:48px 6vw}
  footer{padding:60px 5vw 32px}
}
@media(max-width:560px){
  .sec-pad{padding:60px 6vw}
  .pg-hero{padding:120px 5vw 80px}
}


/*----Services ----*/




/* ── REVEAL ANIMATIONS ── */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .85s ease,transform .85s ease}
.reveal.on{opacity:1;transform:none}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}.reveal.d4{transition-delay:.4s}
.revealL{opacity:0;transform:translateX(-32px);transition:opacity .85s ease,transform .85s ease}
.revealL.on{opacity:1;transform:none}
.revealR{opacity:0;transform:translateX(32px);transition:opacity .85s ease,transform .85s ease}
.revealR.on{opacity:1;transform:none}

/* ── SHARED ── */
.eyebrow{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
.eyebrow::before{content:'';width:32px;height:1px;background:var(--gold)}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(36px,4.5vw,64px);font-weight:900;line-height:.95;color:var(--navy);letter-spacing:-.02em}
.sec-title em{font-weight:300;font-style:italic;color:var(--gold)}
.btn-a{display:inline-flex;align-items:center;gap:12px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:17px 40px;background:var(--gold);color:var(--navy);font-weight:500;text-decoration:none;transition:all .35s;position:relative;overflow:hidden}
.btn-a::before{content:'';position:absolute;inset:0;background:var(--goldlt);transform:translateX(-101%);transition:transform .35s}
.btn-a:hover::before{transform:translateX(0)}
.btn-a span{position:relative;z-index:1}
.btn-b{display:inline-flex;align-items:center;gap:10px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:16px 40px;border:1px solid rgba(196,149,58,.35);color:rgba(196,149,58,.8);text-decoration:none;font-weight:300;transition:all .35s}
.btn-b:hover{border-color:var(--gold);color:var(--gold);background:rgba(196,149,58,.06)}

/* ── SERVICES INTRO STATS BOX ── */
/*.stats-box{background:var(--navy);padding:40px}*/
.stats-box{
  background: 
    linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.55)),
    url('../img/services-bg.jpg') center/cover no-repeat;
  padding: 40px;
  position: relative;
  overflow: hidden;
}
.stats-box-label{font-size:8.5px;letter-spacing:.45em;text-transform:uppercase;color:rgba(196,149,58,.4);margin-bottom:20px}
.stat-row{padding:18px 0;border-bottom:1px solid rgba(196,149,58,.08);display:flex;justify-content:space-between;align-items:center}
.stat-row:last-child{border-bottom:none}
.stat-label{font-size:12px;color:rgba(255,255,255,.3);letter-spacing:.06em}
.stat-value{font-family:'Playfair Display',serif;font-size:24px;color:var(--gold);font-weight:700}

/* ── SERVICE ITEMS ── */
.svc-list{display:flex;flex-direction:column;gap:2px;margin-top:0}
.svc-item{display:grid;grid-template-columns:80px 1fr 240px;background:var(--stone);transition:background .35s;position:relative;overflow:hidden;cursor:default}
.svc-item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);transform:scaleY(0);transform-origin:bottom;transition:transform .45s}
.svc-item:hover{background:var(--navy)}
.svc-item:hover::before{transform:scaleY(1)}
.svc-num{padding:52px 0 48px 36px;font-family:'Playfair Display',serif;font-size:18px;font-style:italic;color:var(--gold);opacity:.5;align-self:start}
.svc-main{padding:48px 40px}
.svc-hd{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--navy);font-weight:500;margin-bottom:12px;transition:color .35s}
.svc-item:hover .svc-hd{color:var(--goldlt)}
.svc-desc{font-size:13.5px;color:var(--mid);font-weight:200;line-height:1.85;transition:color .35s;max-width:540px}
.svc-item:hover .svc-desc{color:rgba(255,255,255,.38)}
.svc-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.svc-tag{font-size:8px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(196,149,58,.2);padding:5px 14px;transition:all .3s}
.svc-item:hover .svc-tag{border-color:rgba(196,149,58,.35);color:var(--goldlt)}
.svc-aside{padding:48px 40px 48px 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:12px}
.svc-ico-lg{width:52px;height:52px;border:1px solid rgba(196,149,58,.2);display:flex;align-items:center;justify-content:center;transition:border-color .35s,background .35s}
.svc-item:hover .svc-ico-lg{border-color:rgba(196,149,58,.5);background:rgba(196,149,58,.06)}
.svc-ico-lg svg{width:24px;height:24px;stroke:var(--gold);fill:none;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}

/* ── PACKAGES ── */
.packages{background:var(--navy);padding:120px 0}
.pkg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:72px}
.pkg{background:var(--navy2);padding:52px 40px;position:relative;overflow:hidden;border:1px solid rgba(196,149,58,.07);transition:border-color .35s,background .35s}
.pkg:hover{background:rgba(196,149,58,.04);border-color:rgba(196,149,58,.25)}
.pkg.featured{background:var(--gold);border-color:var(--gold)}
.pkg.featured:hover{background:var(--goldlt)}
.pkg-tag{font-size:8px;letter-spacing:.45em;text-transform:uppercase;color:rgba(196,149,58,.5);margin-bottom:20px}
.pkg.featured .pkg-tag{color:rgba(8,15,34,.5)}
.pkg-name{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:#fff;margin-bottom:6px}
.pkg.featured .pkg-name{color:var(--navy)}
.pkg-sub{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:32px;font-weight:200}
.pkg.featured .pkg-sub{color:rgba(8,15,34,.45)}
.pkg-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:12px;margin-bottom:36px}
.pkg-list li{font-size:13px;color:rgba(255,255,255,.45);font-weight:200;display:flex;align-items:flex-start;gap:10px;letter-spacing:.03em}
.pkg.featured .pkg-list li{color:rgba(8,15,34,.65)}
.pkg-list li::before{content:'◆';font-size:6px;color:var(--gold);flex-shrink:0;margin-top:5px}
.pkg.featured .pkg-list li::before{color:var(--navy)}
.pkg-btn{display:inline-flex;font-size:9px;letter-spacing:.35em;text-transform:uppercase;padding:14px 32px;text-decoration:none;font-weight:500;transition:all .3s;border:1px solid rgba(196,149,58,.3);color:var(--gold)}
.pkg:hover .pkg-btn{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.pkg.featured .pkg-btn{border-color:var(--navy);color:var(--navy);background:transparent}
.pkg.featured:hover .pkg-btn{background:var(--navy);color:var(--gold)}


/* face animations */
@keyframes headBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.head{animation:headBob 2.5s ease-in-out infinite}
@keyframes blink{0%,92%,100%{transform:scaleY(1)}96%{transform:scaleY(0.08)}}
.eye{transform-origin:center;animation:blink 4s ease-in-out infinite}
.eye2{transform-origin:center;animation:blink 4s ease-in-out infinite .1s}
@keyframes glassGlow{0%,100%{fill:rgba(186,230,253,.35)}50%{fill:rgba(186,230,253,.8)}}
.glass-fill{animation:glassGlow 2s ease-in-out infinite}
@keyframes typeL{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes typeR{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.hand-l{animation:typeL .5s ease-in-out infinite}
.hand-r{animation:typeR .5s ease-in-out infinite .25s}
@keyframes steam{0%,100%{opacity:0;transform:translateY(0)}50%{opacity:.6;transform:translateY(-5px)}}
.st1{animation:steam 1.5s ease-in-out infinite}
.st2{animation:steam 1.5s ease-in-out infinite .5s}
@keyframes notif{0%,70%,100%{opacity:0;transform:scale(0)}75%{opacity:1;transform:scale(1.1)}95%{opacity:1;transform:scale(1)}}
.notif{animation:notif 6s ease-in-out infinite 2s}

/* ── RESPONSIVE OVERRIDES ── */
@media(max-width:1100px){
  .svc-item{grid-template-columns:60px 1fr}
  .svc-aside{display:none}
}
@media(max-width:840px){
  .pkg-grid{grid-template-columns:1fr}
  .nav-menu-list,.nav-tel{display:none}
  .nav-toggler{display:flex}
}
@media(max-width:768px){
  .pg-hero{padding:120px 0 72px}
}

/* ---industries ----*/

/* ══════════════════════ SCROLL REVEAL ══════════════════════ */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .85s ease,transform .85s ease}
.reveal.on{opacity:1;transform:none}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}.reveal.d4{transition-delay:.4s}
.revealL{opacity:0;transform:translateX(-32px);transition:opacity .85s ease,transform .85s ease}
.revealL.on{opacity:1;transform:none}
.revealR{opacity:0;transform:translateX(32px);transition:opacity .85s ease,transform .85s ease}
.revealR.on{opacity:1;transform:none}

/* ══════════════════════ SHARED COMPONENTS ══════════════════════ */
.eyebrow{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
.eyebrow::before{content:'';width:32px;height:1px;background:var(--gold)}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(36px,4.5vw,64px);font-weight:900;line-height:.95;color:var(--navy);letter-spacing:-.02em}
.sec-title em{font-weight:300;font-style:italic;color:var(--gold)}

.btn-a{display:inline-flex;align-items:center;gap:12px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:17px 40px;background:var(--gold);color:var(--navy);font-weight:500;text-decoration:none;transition:all .35s;position:relative;overflow:hidden;border:none}
.btn-a::before{content:'';position:absolute;inset:0;background:var(--goldlt);transform:translateX(-101%);transition:transform .35s}
.btn-a:hover::before{transform:translateX(0)}
.btn-a span{position:relative;z-index:1}
.btn-b{display:inline-flex;align-items:center;gap:10px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:16px 40px;border:1px solid rgba(196,149,58,.35);color:rgba(196,149,58,.8);text-decoration:none;font-weight:300;transition:all .35s;background:transparent}
.btn-b:hover{border-color:var(--gold);color:var(--gold);background:rgba(196,149,58,.06)}

/* ══════════════════════ INDUSTRY CARDS ══════════════════════ */
/* Gap-2px grid using Bootstrap gutter override */
.ind-showcase .row{--bs-gutter-x:2px;--bs-gutter-y:2px;margin-top:72px}

/*.ind-card{background:var(--navy);padding:52px 40px;position:relative;overflow:hidden;min-height:320px;display:flex;flex-direction:column;justify-content:flex-end;cursor:default;transition:background .4s;height:100%}*/
/*.ind-card:hover{background:var(--navy2)}*/
/*.ind-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(196,149,58,.06),transparent 60%);opacity:0;transition:opacity .4s}*/
/*.ind-card:hover::before{opacity:1}*/
/*.ind-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.4,0,.2,1)}*/
/*.ind-card:hover::after{transform:scaleX(1)}*/

.ind-card{
    background: var(--navy);
    padding: 52px 40px;
    position: relative;
    overflow: hidden;
    min-height: 320px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    cursor: default;
    transition: all .4s ease;

    /* Image settings */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Dark overlay */
.ind-card::before{
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.55);
    transition: .4s ease;
    z-index: 1;
}

/* Keep content above overlay */
.ind-card > *{
    position: relative;
    z-index: 2;
}

/* Hover effect */
.ind-card:hover::before{
    background: rgba(0,0,0,0.35);
}

/* Background Images */
.ind-card:nth-child(1){
    background-image: url('../img/industries/corporate.jpg');
}

.ind-card:nth-child(2){
    background-image: url('../img/industries/government.jpg');
}

.ind-card:nth-child(3){
    background-image: url('../img/industries/political.jpg');
}

.ind-card:nth-child(4){
    background-image: url('../img/industries/hospitality.jpg');
}

.ind-card:nth-child(5){
    background-image: url('../img/industries/entertainment.jpg');
}

.ind-card:nth-child(6){
    background-image: url('../img/industries/education.jpg');
}

.ind-card:nth-child(7){
    background-image: url('../img/industries/real-estate.jpg');
}

.ind-card:nth-child(8){
    background-image: url('../img/industries/luxury.jpg');
}

.ind-card:nth-child(9){
    background-image: url('../img/industries/startup.jpg');
}

/* Responsive */
@media (max-width:768px){
    .ind-card{
        padding: 36px 24px;
        min-height: 260px;
    }
}

.ic-num{position:absolute;top:32px;right:28px;font-family:'Playfair Display',serif;font-size:72px;font-weight:900;font-style:italic;color:rgba(196,149,58,.07);line-height:1;transition:color .4s}
.ind-card:hover .ic-num{color:rgba(196,149,58,.12)}

.ic-ico{width:46px;height:46px;border:1px solid rgba(196,149,58,.2);display:flex;align-items:center;justify-content:center;margin-bottom:28px;transition:border-color .3s,background .3s}
.ind-card:hover .ic-ico{border-color:var(--gold);background:rgba(196,149,58,.08)}
.ic-ico svg{width:20px;height:20px;stroke:var(--gold);fill:none;stroke-width:1.3}

.ic-name{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:#fff;font-weight:400;margin-bottom:12px}
.ic-body{font-size:13px;color: #fff;font-weight:300;line-height:1.8;max-height:0;overflow:hidden;transition:max-height .5s ease,opacity .4s;opacity:0}
.ind-card:hover .ic-body{max-height:140px;opacity:1}

/* ══════════════════════ PROCESS STEPS ══════════════════════ */
.how-we-serve{background:var(--stone);padding:120px 5vw}
.process-steps{position:relative;margin-top:72px}
.process-steps::before{content:'';position:absolute;top:36px;left:10%;right:10%;height:1px;background:linear-gradient(to right,transparent,rgba(196,149,58,.3),transparent);pointer-events:none}
.ps{padding:0 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.ps-dot{width:72px;height:72px;border-radius:50%;background:var(--cream);border:1px solid rgba(196,149,58,.25);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:22px;font-style:italic;color:var(--gold);position:relative;z-index:1;transition:background .3s,border-color .3s}
.ps:hover .ps-dot{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.ps-label{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--navy);font-weight:400;text-align:center}
.ps-body{font-size:12px;color:var(--mid);font-weight:200;line-height:1.75;text-align:center}

/* ══════════════════════ CASE STUDIES ══════════════════════ */
.cases{background:var(--cream);padding:80px 5vw}
.case-grid .row{--bs-gutter-x:2px;--bs-gutter-y:2px;margin-top:72px}

.case-card{padding:56px 52px;background:var(--stone);position:relative;overflow:hidden;transition:background .35s;height:100%}
.case-card:hover{background:var(--navy)}
.case-card::before{content:'';position:absolute;top:0;right:0;width:1px;height:0;background:var(--gold);transition:height .5s}
.case-card:hover::before{height:100%}
.case-tag{font-size:8px;letter-spacing:.45em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.case-title{font-family:'Playfair Display',serif;font-size:26px;font-weight:700;color:var(--navy);margin-bottom:14px;transition:color .35s;line-height:1.2}
.case-card:hover .case-title{color:#fff}
.case-body{font-size:13px;color:var(--mid);font-weight:200;line-height:1.85;transition:color .35s}
.case-card:hover .case-body{color:rgba(255,255,255,.35)}
.case-metric{display:flex;gap:36px;margin-top:28px;padding-top:24px;border-top:1px solid var(--faint)}
.case-card:hover .case-metric{border-top-color:rgba(196,149,58,.12)}
.cm-n{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:var(--gold);line-height:1}
.cm-l{font-size:8.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--mid);margin-top:4px;transition:color .35s}
.case-card:hover .cm-l{color:rgba(255,255,255,.25)}

/* ══════════════════════ CTA STRIP ══════════════════════ */
.cta-strip{background:var(--navy);padding:100px 5vw;text-align:center;position:relative;overflow:hidden}
.cta-strip::before{content:'';position:absolute;left:50%;top:100%;transform:translate(-50%,-50%);width:700px;height:350px;background:radial-gradient(ellipse,rgba(196,149,58,.1),transparent 70%);pointer-events:none}
.cta-strip .eyebrow{justify-content:center}
.cta-strip .eyebrow::before{display:none}
.cta-strip .sec-title{color:#fff;margin:8px 0 40px}


/* ---- Training---*/

/* ─── REVEAL ANIMATIONS ─── */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .85s ease,transform .85s ease}
.reveal.on{opacity:1;transform:none}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}.reveal.d4{transition-delay:.4s}
.revealL{opacity:0;transform:translateX(-32px);transition:opacity .85s ease,transform .85s ease}
.revealL.on{opacity:1;transform:none}
.revealR{opacity:0;transform:translateX(32px);transition:opacity .85s ease,transform .85s ease}
.revealR.on{opacity:1;transform:none}

/* ─── SHARED COMPONENTS ─── */
.eyebrow{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
.eyebrow::before{content:'';width:32px;height:1px;background:var(--gold)}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(36px,4.5vw,64px);font-weight:900;line-height:.95;color:var(--navy);letter-spacing:-.02em}
.sec-title em{font-weight:300;font-style:italic;color:var(--gold)}

.btn-a{display:inline-flex;align-items:center;gap:12px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:17px 40px;background:var(--gold);color:var(--navy);font-weight:500;text-decoration:none;transition:all .35s;position:relative;overflow:hidden;border:none;border-radius:0}
.btn-a::before{content:'';position:absolute;inset:0;background:var(--goldlt);transform:translateX(-101%);transition:transform .35s}
.btn-a:hover::before{transform:translateX(0)}
.btn-a span{position:relative;z-index:1}
.btn-a:hover{color:var(--navy)}

.btn-b{display:inline-flex;align-items:center;gap:10px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:16px 40px;border:1px solid rgba(196,149,58,.35);color:rgba(196,149,58,.8);text-decoration:none;font-weight:300;transition:all .35s;border-radius:0}
.btn-b:hover{border-color:var(--gold);color:var(--gold);background:rgba(196,149,58,.06)}

/* ─── TRAINING SECTION ─── */
.train-section{background:var(--cream);padding:120px 5vw}
.intro-text{font-size:14px;line-height:1.95;color:var(--mid);font-weight:200;max-width:580px;margin-top:20px;letter-spacing:.04em}

/* ─── COURSE CARDS ─── */
/*.course-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:72px}*/
/*.course-card{background:var(--stone);padding:64px 56px;position:relative;overflow:hidden;transition:background .35s,box-shadow .35s}*/
/*.course-card:hover{background:var(--navy);box-shadow:0 16px 64px rgba(8,15,34,.15)}*/
/*.cc-glyph{position:absolute;right:-16px;bottom:-48px;font-family:'Playfair Display',serif;font-size:220px;font-weight:900;font-style:italic;color:rgba(196,149,58,.05);line-height:1;pointer-events:none;transition:color .4s}*/
/*.course-card:hover .cc-glyph{color:rgba(196,149,58,.09)}*/
/*.cc-badge{display:inline-flex;align-items:center;gap:10px;font-size:8.5px;letter-spacing:.42em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(196,149,58,.25);padding:7px 18px;margin-bottom:24px;transition:border-color .35s}*/
/*.course-card:hover .cc-badge{border-color:rgba(196,149,58,.45)}*/
/*.cc-title{font-family:'Playfair Display',serif;font-size:clamp(26px,2.8vw,38px);font-weight:700;color:var(--navy);line-height:1.1;margin-bottom:6px;transition:color .35s}*/
/*.course-card:hover .cc-title{color:#fff}*/
/*.cc-dur{font-size:9px;letter-spacing:.35em;text-transform:uppercase;color:rgba(196,149,58,.5);margin-bottom:20px}*/
/*.cc-body{font-size:14px;color:var(--mid);font-weight:300;line-height:1.9;letter-spacing:.025em;transition:color .35s}*/
/*.course-card:hover .cc-body{color:rgba(255,255,255,.38)}*/
/*.cc-modules{margin-top:28px;padding-top:24px;border-top:1px solid rgba(196,149,58,.12)}*/
/*.cc-mod-t{font-size:8.5px;letter-spacing:.4em;text-transform:uppercase;color:rgba(196,149,58,.45);margin-bottom:14px}*/
/*.cc-mod-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}*/
/*.cc-mod-list li{font-size:12.5px;color:var(--mid);font-weight:200;display:flex;align-items:center;gap:10px;letter-spacing:.03em;transition:color .35s}*/
/*.course-card:hover .cc-mod-list li{color:rgba(255,255,255,.35)}*/
/*.cc-mod-list li::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--gold);flex-shrink:0}*/
/*.cc-cta{margin-top:32px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}*/
/*.cc-link{display:inline-flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.38em;text-transform:uppercase;color:var(--gold);text-decoration:none;font-weight:400;transition:gap .3s}*/
/*.cc-link:hover{gap:16px}*/

/* ─────────────────────────────
   PREMIUM COURSE SHOWCASE
───────────────────────────── */

.course-showcase{
    display:flex;
    flex-direction:column;
    /*gap:80px;*/
    margin-top:80px;
}

/* ROW */
.course-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:stretch;
    background:#fff;
    overflow:hidden;
    border-radius:28px;
    min-height:650px;
    position:relative;
    box-shadow:
    0 10px 40px rgba(15,23,42,.05),
    0 25px 80px rgba(15,23,42,.08);
    transition:all .45s ease;
}

.course-row:hover{
    transform:translateY(-6px);
    box-shadow:
    0 18px 50px rgba(15,23,42,.08),
    0 35px 100px rgba(15,23,42,.12);
}

/* Alternate Layout */
.course-row.reverse .course-content{
    order:2;
}

.course-row.reverse .course-image-wrap{
    order:1;
}

/* CONTENT */
.course-content{
    padding:80px;
    background:linear-gradient(
    180deg,
    #ffffff 0%,
    #f8f6f2 100%);
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

/* GOLD LINE */
.course-content::before{
    content:'';
    position:absolute;
    left:0;
    top:80px;
    width:4px;
    height:140px;
    background:linear-gradient(
    180deg,
    var(--gold),
    transparent);
}

/* IMAGE SIDE */
.course-image-wrap{
    position:relative;
    overflow:hidden;
    min-height:650px;
}

.course-image{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 1s ease;
}

.course-row:hover .course-image{
    transform:scale(1.08);
}

/* OVERLAY */
.course-image-overlay{
    position:absolute;
    inset:0;
    background:
    linear-gradient(
    135deg,
    rgba(5,10,20,.15) 0%,
    rgba(5,10,20,.45) 100%);
    z-index:1;
}

/* FLOAT NUMBER */
.course-floating{
    position:absolute;
    right:40px;
    bottom:40px;
    width:120px;
    height:120px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.25);
    backdrop-filter:blur(8px);
    background:rgba(255,255,255,.06);
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:3;
}

.course-floating span{
    font-family:'Playfair Display',serif;
    font-size:52px;
    font-style:italic;
    color:#fff;
    font-weight:700;
}

/* BADGE */
.cc-badge{
    display:inline-flex;
    width:max-content;
    align-items:center;
    gap:10px;
    padding:10px 22px;
    border:1px solid rgba(196,149,58,.25);
    background:rgba(196,149,58,.05);
    color:var(--gold);
    font-size:10px;
    letter-spacing:.38em;
    text-transform:uppercase;
    margin-bottom:28px;
}

/* TITLE */
.cc-title{
    font-family:'Playfair Display',serif;
    font-size:clamp(42px,4vw,72px);
    line-height:1;
    color:var(--navy);
    margin-bottom:18px;
    font-weight:700;
}

/* DURATION */
.cc-dur{
    font-size:11px;
    letter-spacing:.32em;
    text-transform:uppercase;
    color:rgba(196,149,58,.7);
    margin-bottom:28px;
}

/* BODY */
.cc-body{
    font-size:15px;
    line-height:2;
    color:var(--mid);
    font-weight:300;
    margin-bottom:10px;
}

/* MODULES */
.cc-modules{
    margin-top:30px;
    padding-top:28px;
    border-top:1px solid rgba(196,149,58,.12);
}

.cc-mod-t{
    font-size:10px;
    letter-spacing:.38em;
    text-transform:uppercase;
    color:rgba(196,149,58,.7);
    margin-bottom:18px;
}

.cc-mod-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px 20px;
}

.cc-mod-list li{
    position:relative;
    padding-left:18px;
    font-size:13px;
    color:var(--mid);
    line-height:1.7;
    font-weight:400;
}

.cc-mod-list li::before{
    content:'';
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--gold);
    position:absolute;
    left:0;
    top:10px;
}

/* CTA */
.cc-cta{
    margin-top:42px;
    display:flex;
    align-items:center;
    gap:26px;
    flex-wrap:wrap;
}

.cc-link{
    text-decoration:none;
    color:var(--gold);
    font-size:10px;
    letter-spacing:.35em;
    text-transform:uppercase;
    transition:all .35s ease;
}

.cc-link:hover{
    letter-spacing:.42em;
    transform:translateX(6px);
}

/* RESPONSIVE */
@media(max-width:991px){

    .course-row{
        grid-template-columns:1fr;
        min-height:auto;
    }

    .course-row.reverse .course-content,
    .course-row.reverse .course-image-wrap{
        order:unset;
    }

    .course-content{
        padding:60px 36px;
    }

    .course-image-wrap{
        min-height:420px;
    }

    .cc-title{
        font-size:44px;
    }

    .cc-mod-list{
        grid-template-columns:1fr;
    }

}

@media(max-width:576px){

    .course-showcase{
        gap:40px;
    }

    .course-content{
        padding:48px 24px;
    }

    .course-image-wrap{
        min-height:320px;
    }

    .course-floating{
        width:84px;
        height:84px;
        right:20px;
        bottom:20px;
    }

    .course-floating span{
        font-size:34px;
    }

    .cc-title{
        font-size:34px;
    }

    .cc-body{
        font-size:14px;
        line-height:1.9;
    }

}

/* ─── INSTRUCTOR ─── */
.instructor-section{background:var(--navy);padding:120px 5vw}
.instr-vis{background:var(--navy2);border:1px solid rgba(196,149,58,.1);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:72px 48px;position:relative;overflow:hidden}
.instr-vis::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(196,149,58,.06),transparent 70%)}
.instr-avatar{width:120px;height:120px;border-radius:50%;border:1.5px solid rgba(196,149,58,.3);background:rgba(196,149,58,.06);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:52px;font-style:italic;color:var(--gold);margin-bottom:24px;position:relative;z-index:1}
.instr-name{font-family:'Playfair Display',serif;font-size:26px;font-weight:700;color:#fff;margin-bottom:6px;position:relative;z-index:1;text-align:center}
.instr-role{font-size:9px;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);margin-bottom:20px;position:relative;z-index:1}
.instr-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;position:relative;z-index:1}
.i-chip{font-size:8px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.3);border:1px solid rgba(196,149,58,.15);padding:5px 14px}
.instr-body p{font-size:14px;line-height:2;color:rgba(255,255,255,.38);font-weight:200;margin-top:20px;letter-spacing:.04em}
.instr-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(196,149,58,.08);margin-top:40px}
.is-cell{background:var(--navy);padding:28px 20px;text-align:center}
.is-n{font-family:'Playfair Display',serif;font-size:36px;font-weight:700;color:var(--gold)}
.is-l{font-size:8px;letter-spacing:.35em;text-transform:uppercase;color:rgba(255,255,255,.2);margin-top:4px;font-weight:200}

/* ─── FAQ ─── */
.faq-section{background:var(--stone);padding:120px 5vw}
.faq-list{max-width:860px;margin-top:64px}
.faq-item{border-bottom:1px solid rgba(196,149,58,.12)}
.faq-q{display:flex;justify-content:space-between;align-items:center;padding:28px 0;cursor:pointer;gap:24px;background:none;border:none;width:100%;text-align:left}
.faq-qt{font-size:14px;font-weight:300;color:var(--navy);letter-spacing:.04em;line-height:1.4}
.faq-icon{width:36px;height:36px;border:1px solid var(--faint2);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .3s,border-color .3s}
.faq-item.open .faq-icon{background:var(--gold);border-color:var(--gold)}
.faq-icon svg{width:14px;height:14px;stroke:var(--gold);transition:stroke .3s,transform .3s}
.faq-item.open .faq-icon svg{stroke:var(--navy);transform:rotate(45deg)}
.faq-ans{font-size:13.5px;color:var(--mid);font-weight:200;line-height:1.9;max-height:0;overflow:hidden;transition:max-height .45s ease,padding .45s}
.faq-item.open .faq-ans{max-height:200px;padding-bottom:28px}

/*--- Contact Us----*/

/* ── REVEAL ANIMATIONS ── */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .85s ease,transform .85s ease}
.reveal.on{opacity:1;transform:none}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}
.revealL{opacity:0;transform:translateX(-32px);transition:opacity .85s ease,transform .85s ease}
.revealL.on{opacity:1;transform:none}
.revealR{opacity:0;transform:translateX(32px);transition:opacity .85s ease,transform .85s ease}
.revealR.on{opacity:1;transform:none}

/* ── SHARED COMPONENTS ── */
.eyebrow{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
.eyebrow::before{content:'';width:32px;height:1px;background:var(--gold)}
.btn-a{display:inline-flex;align-items:center;gap:12px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:17px 40px;background:var(--gold);color:var(--navy);font-weight:500;text-decoration:none;transition:all .35s;position:relative;overflow:hidden;border:none;cursor:pointer}
.btn-a::before{content:'';position:absolute;inset:0;background:var(--goldlt);transform:translateX(-101%);transition:transform .35s}
.btn-a:hover::before{transform:translateX(0)}
.btn-a span{position:relative;z-index:1}
.btn-b{display:inline-flex;align-items:center;gap:10px;font-size:9.5px;letter-spacing:.35em;text-transform:uppercase;padding:16px 40px;border:1px solid rgba(196,149,58,.35);color:rgba(196,149,58,.8);text-decoration:none;font-weight:300;transition:all .35s}
.btn-b:hover{border-color:var(--gold);color:var(--gold);background:rgba(196,149,58,.06)}

/* ── CONTACT INFO PANEL ── */
.contact-info{background:var(--navy);padding:80px 72px;position:relative;overflow:hidden;height:100%}
@media(max-width:991px){.contact-info{padding:56px 6vw}}
.contact-info::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 60%,rgba(196,149,58,.07),transparent 65%)}
.ci-bg{position:absolute;right:-20px;bottom:-60px;font-family:'Playfair Display',serif;font-size:200px;font-weight:900;font-style:italic;color:rgba(196,149,58,.04);line-height:1;pointer-events:none}
.ci-eyebrow{font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:24px;display:flex;align-items:center;gap:12px}
.ci-eyebrow::before{content:'';width:28px;height:1px;background:var(--gold)}
.ci-title{font-family:'Playfair Display',serif;font-size:clamp(36px,4vw,56px);font-weight:900;color:#fff;line-height:1;margin-bottom:12px}
.ci-title em{display:block;font-weight:300;font-style:italic;color:var(--goldlt)}
.ci-sub{font-size:13.5px;color:rgba(255,255,255,.3);font-weight:200;line-height:1.85;margin-bottom:52px;letter-spacing:.04em}
.ci-items{display:flex;flex-direction:column;gap:0;position:relative;z-index:1}
.ci-item{padding:24px 0;border-bottom:1px solid rgba(196,149,58,.1);display:flex;gap:20px;align-items:flex-start}
.ci-item:first-child{border-top:1px solid rgba(196,149,58,.1)}
.ci-ico{width:40px;height:40px;border:1px solid rgba(196,149,58,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.ci-ico svg{width:17px;height:17px;stroke:var(--gold);fill:none;stroke-width:1.3}
.ci-label{font-size:8px;letter-spacing:.45em;text-transform:uppercase;color:rgba(196,149,58,.45);margin-bottom:6px}
.ci-val{font-size:14px;color:#fff;font-weight:300;letter-spacing:.03em}
.ci-val a{color:#fff;text-decoration:none;transition:color .3s}
.ci-val a:hover{color:var(--goldlt)}
.ci-socials{margin-top:48px;position:relative;z-index:1}
.ci-soc-t{font-size:8.5px;letter-spacing:.45em;text-transform:uppercase;color:rgba(196,149,58,.35);margin-bottom:20px}
.soc-row{display:flex;gap:12px}
.soc-btn{width:42px;height:42px;border:1px solid rgba(196,149,58,.18);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .3s}
.soc-btn:hover{background:var(--gold);border-color:var(--gold)}
.soc-btn:hover svg{stroke:var(--navy)}
.soc-btn svg{width:16px;height:16px;stroke:rgba(196,149,58,.5);fill:none;stroke-width:1.5;transition:stroke .3s}

/* ── CONTACT FORM PANEL ── */
.contact-form-panel{padding:80px 72px;background:var(--cream)}
@media(max-width:991px){.contact-form-panel{padding:56px 6vw}}
.cf-eyebrow{font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:24px;display:flex;align-items:center;gap:12px}
.cf-eyebrow::before{content:'';width:28px;height:1px;background:var(--gold)}
.cf-title{font-family:'Playfair Display',serif;font-size:clamp(32px,3vw,48px);font-weight:900;color:var(--navy);line-height:1;margin-bottom:40px}
.cf-title em{font-weight:300;font-style:italic;color:var(--gold)}

/* Bootstrap form overrides */
.fg-label{font-size:8.5px;letter-spacing:.4em;text-transform:uppercase;color:var(--mid);font-weight:400;margin-bottom:8px}
.fg-input,.fg-select,.fg-textarea{width:100%;padding:16px 18px;background:var(--stone);border:1px solid transparent;font-family:'Jost',sans-serif;font-size:13.5px;color:var(--navy);font-weight:300;letter-spacing:.03em;outline:none;transition:border-color .3s,background .3s;appearance:none;-webkit-appearance:none;border-radius:0}
.fg-input:focus,.fg-select:focus,.fg-textarea:focus{border-color:rgba(196,149,58,.5);background:#fff;box-shadow:none;outline:none}
.fg-textarea{resize:vertical;min-height:130px}
.fg-select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23C4953A' stroke-width='1.3' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center}
.form-check-label{font-size:12.5px;color:var(--mid);font-weight:200;line-height:1.7;cursor:pointer}
.form-check-label a{color:var(--gold);text-decoration:none}
.form-check-input{width:18px;height:18px;border:1px solid rgba(196,149,58,.35);background:var(--stone);appearance:none;flex-shrink:0;margin-top:2px;cursor:pointer;position:relative;border-radius:0}
.form-check-input:checked{background-color:var(--gold);border-color:var(--gold)}
.form-check-input:focus{box-shadow:none}
.cf-note{font-size:10.5px;color:var(--mid);font-weight:200;letter-spacing:.04em}

/* ── MAP SECTION ── */
.map-section{background:var(--navy);height:320px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.map-overlay{text-align:center;position:relative;z-index:1}
.map-pin{width:56px;height:56px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;animation:pulse 2.5s ease infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(196,149,58,.4)}50%{box-shadow:0 0 0 20px rgba(196,149,58,0)}}
.map-pin svg{width:24px;height:24px;stroke:var(--navy);fill:none;stroke-width:2}
.map-txt{font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:rgba(255,255,255,.4)}
.map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(196,149,58,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(196,149,58,.04) 1px,transparent 1px);background-size:40px 40px}
