*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --bg:      #0b0e13;
  --surface: #13171f;
  --border:  rgba(255,255,255,0.07);
  --accent:  #c9a84c;
  --accent2: #e8c97a;
  --text:    #f0ece4;
  --muted:   #7a8297;
  --muted2:  #a3abbf;
  --radius: 15px;
  --gap:     24px;
}

html { scroll-behavior: smooth; }

.body {
  background: #ffffff;
  color: var(--text);
  font-family: 'Outfit', sans-serif;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5rem 0 4rem;
}


.services {
  width: 100%;
  max-width: 1280px;
  padding: 0 clamp(1rem, 4vw, 2.5rem);
}


.services__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1.5rem;
  margin-bottom: clamp(2rem, 4vw, 3.5rem);
  flex-wrap: wrap;
}

.services__eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 0.9rem;
}
.services__eyebrow::before {
  content: '';
  display: block;
  width: 28px;
  height: 2px;
  background: var(--accent);
  flex-shrink: 0;
}
.services__eyebrow span {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #dc7a40;
}

.services__title {
  font-size: clamp(1.85rem, 4vw, 3.4rem);
  font-weight: 800;
  line-height: 1.06;
  color: #000000;
}
.services__title em {font-style: italic;color: #dc7b3f;}

.services__subtitle {
  margin-top: 0.9rem;
  font-size: clamp(13px, 1.4vw, 15px);
  font-weight: 300;
  color: #444;
  line-height: 1.75;
  max-width: 440px;
}

/* nav */
.carousel__nav {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.nav-btn {
  width: 46px; height: 46px;
  border-radius: 50%;
  border: 1px solid var(--border);
  background: var(--surface);
  color: var(--muted2);
  font-size: 18px;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: background .25s, color .25s, border-color .25s, transform .2s;
  user-select: none;
  line-height: 1;
}
.nav-btn:hover  { background: var(--accent); color: #0b0e13; border-color: var(--accent); transform: scale(1.07); }
.nav-btn:active { transform: scale(0.96); }

.autoplay-bar {
  width: 100%;
  height: 2px;
  background: rgba(255,255,255,0.06);
  border-radius: 2px;
  margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
  overflow: hidden;
}
.autoplay-bar__fill {
  height: 100%;
  width: 0%;
  background: var(--accent);
  border-radius: 2px;
}


.carousel__wrap { overflow: hidden; }

.carousel__track {
  display: flex;
  gap: var(--gap);
  will-change: transform;
  align-items: stretch;
}
.carousel__track.animating {
  transition: transform 0.62s cubic-bezier(0.37, 0, 0.17, 1);
}

.card {
  flex-shrink: 0;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .32s ease, border-color .32s ease, box-shadow .32s ease;
}
.card:hover {
  transform: translateY(-7px);
  border-color: rgba(201,168,76,.28);
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

/* card image */
.card__img-wrap { overflow: hidden; position: relative; flex-shrink: 0; }
.card__img {
  width: 100%;
  height: clamp(160px, 18vw, 210px);
  object-fit: cover;
  display: block;
  filter: brightness(.85) saturate(.85);
  transition: filter .45s ease, transform .55s ease;
}
.card__img-wrap::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(160deg, transparent 50%, rgba(11,14,19,.6) 100%);
  pointer-events: none;
}
.card:hover .card__img { filter: brightness(.97) saturate(1.05); transform: scale(1.05); }

/* card body */
.card__body {
  padding: clamp(1.1rem,2vw,1.6rem) clamp(1.1rem,2vw,1.6rem) clamp(1.25rem,2vw,1.75rem);
  display: flex;
  flex-direction: column;
  gap: .65rem;
  flex: 1;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.card__tag {
  display: inline-flex; align-items: center;
  font-size: 10px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
  padding: 4px 11px; border-radius: 100px; width: fit-content;
}
.tag--gold   {background: rgb(34 110 70 / 13%);color: #226f46;border: 1px solid rgba(201,168,76,.22);}
.tag--teal   { background: rgba(29,158,117,.10); color: #4ecda4;        border: 1px solid rgba(29,158,117,.22); }
.tag--blue   { background: rgba(55,138,221,.10); color: #73b4f5;        border: 1px solid rgba(55,138,221,.22); }
.tag--rose   { background: rgba(212,83,126,.10); color: #f093b7;        border: 1px solid rgba(212,83,126,.22); }
.tag--amber  { background: rgba(239,159,39,.10); color: #f5c264;        border: 1px solid rgba(239,159,39,.22); }
.tag--violet { background: rgba(127,119,221,.10);color: #b0aaef;        border: 1px solid rgba(127,119,221,.22);}

.card__name {
  font-weight: 700;
  color: #216e45;
  line-height: 1.2;
}
.card__desc {font-size: clamp(12.5px,1.1vw,13.5px);font-weight: 300;color: #444444;line-height: 1.78;flex: 1;}

.card__features {list-style: none;display: flex;flex-direction: column;gap: 6px;padding: .7rem 0 0;border-top: 1px solid rgb(46 109 72 / 10%);}
.card__features li {display: flex;align-items: center;gap: 8px;font-size: 12px;color: #6e6e6e;}
.card__features li::before {content: '';width: 5px;height: 5px;border-radius: 50%;background: #dd7a40;flex-shrink: 0;opacity: .65;}

.card__footer { display: flex; justify-content: space-between; align-items: center; margin-top: 1.1rem; }
.card__price  {font-size: clamp(.9rem,1.2vw,1rem);font-weight: 600;color: #dc7c40;}
.card__price sup   { font-size: .6rem; vertical-align: super; color: var(--muted); font-weight: 400; }
.card__price small { font-size: 11px; font-weight: 300; color: var(--muted); margin-left: 2px; }

.card__cta {display: flex;align-items: center;gap: 6px;font-size: 11.5px;font-weight: 500;color: #dc7a3f;text-decoration: none;letter-spacing: .04em;transition: gap .22s;}
.card__cta:hover { gap: 10px; }
.card__cta-arrow { width: 24px; height: 24px; border-radius: 50%; border: 1px solid rgba(201,168,76,.35); display: flex; align-items: center; justify-content: center; font-size: 11px; transition: background .2s, border-color .2s, color .2s; }
.card__cta:hover .card__cta-arrow { background: var(--accent); border-color: var(--accent); color: #0b0e13; }


.carousel__footer { display: flex; justify-content: space-between; align-items: center; margin-top: 2rem; flex-wrap: wrap; gap: 1rem; }
.carousel__dots   { display: flex; gap: 7px; align-items: center; }
.dot {
  width: 6px; height: 6px; border-radius: 3px;
  background: rgba(255,255,255,.15); cursor: pointer; border: none; padding: 0;
  transition: width .3s ease, background .3s ease;
}
.dot.active {width: 22px;background: #e08854;}
.carousel__count { font-size: 12px; color: var(--muted); font-weight: 400; letter-spacing: .04em; }
.carousel__count strong {color: #d58959;font-weight: 600;}
/**/about us
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --night:   #080c14;
  --deep:    #0d1423;
  --navy:    #111d35;
  --panel:   #0f1829;
  --gold: #ffab7c;
  --gold2: #e57637;
  --gold3:   #f0d080;
  --glow:    rgba(184,150,62,0.18);
  --border:  rgba(184,150,62,0.2);
  --border2: rgba(184,150,62,0.08);
  --text:    #e8e0cc;
  --muted:   #8a9ab8;
  --muted2:  #b0bdd4;
  --white:   #f5f0e4;
}

html{scroll-behavior:smooth}

.about-new{
  background:var(--night);
  color:var(--text);
  font-family:'Nunito Sans',sans-serif;
  overflow:hidden;
  position:relative;
}

.about-new::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.025;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:180px;
}

.bg-orb{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  filter:blur(120px);
  opacity:.12;
  z-index:0;
}

.bg-orb--1{
  width:600px;
  height:600px;
  background:var(--gold);
  top:-200px;
  right:-200px;
}

.bg-orb--2{
  width:400px;
  height:400px;
  background:#1a3a6e;
  bottom:-100px;
  left:-100px;
}

.bg-orb--3{
  width:300px;
  height:300px;
  background:var(--gold);
  bottom:30%;
  left:40%;
  opacity:.05;
}

.section{
  width:100%;
  max-width:1360px;
  margin:0 auto;
  padding:clamp(4rem,9vw,8rem) clamp(1.25rem,5vw,4rem);
  position:relative;
  z-index:1;
}

.about{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(2rem,5vw,6rem);
  align-items:center;
  padding-bottom:clamp(3rem,7vw,0rem);
  margin-bottom:clamp(3rem,7vw,0rem);
  position:relative;
}

.about::after{
  content:'';
  position:absolute;
  left:50%;
  top:10%;
  width:1px;
  height:80%;
  background:linear-gradient(to bottom,transparent,var(--border),transparent);
  transform:translateX(-50%);
}

.about__badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:1.2rem;
}

.about__badge-line{
  width:36px;
  height:1px;
  background:var(--gold);
}

.about__badge-text{
  font-size:10px;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--gold2);
  font-weight:300;
}

.about__title{
  font-size:clamp(1.8rem,3.5vw,3.2rem);
  font-weight:600;
  line-height:1.12;
  color:var(--white);
  letter-spacing:.02em;
  margin-bottom:1.5rem;
}

.about__title span{
  color:var(--gold2);
  display:block;
}

.about__year{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  margin-bottom:1rem;
}

.about__year-num{
  font-family:'Cinzel',serif;
  font-size:3.5rem;
  font-weight:700;
  color:transparent;
  -webkit-text-stroke:1px var(--gold);
  line-height:1;
  opacity:.4;
}

.about__year-label{
  font-size:10px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:300;
}

.about__desc{
  font-size:clamp(13px,1.3vw,15px);
  font-weight:200;
  font-style:italic;
  color:var(--muted2);
  line-height:1.9;
  margin-bottom:1.5rem;
}

.about__stats{
  display:flex;
  gap:2rem;
  flex-wrap:wrap;
}

.stat{
  border-left:2px solid var(--gold);
  padding-left:1rem;
}

.stat__num{
  font-family:'Cinzel',serif;
  font-size:1.6rem;
  font-weight:600;
  color:var(--gold2);
  line-height:1;
}

.stat__label{
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:300;
  margin-top:4px;
}

.about__emblem{
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}

.emblem{
  width:min(340px,80vw);
  height:min(340px,80vw);
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}

.emblem__ring{
  position:absolute;
  border-radius:50%;
  border:1px solid var(--border);
  animation:none;
}

.emblem__ring--1{
  inset:0;
}

.emblem__ring--2{
  inset:10%;
  border-color:var(--border2);
}

.emblem__ring--3{
  inset:22%;
  border:1px dashed rgba(184,150,62,.12);
}

.emblem__ring--1::before,
.emblem__ring--1::after{
  content:'';
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--gold);
  top:0;
  left:50%;
  transform:translate(-50%,-50%);
  box-shadow:0 0 12px var(--gold);
}

.emblem__ring--1::after{
  top:auto;
  bottom:0;
  transform:translate(-50%,50%);
}

.emblem__inner{
  position:relative;
  z-index:2;
  text-align:center;
  padding:2rem;
}

.emblem__logo{
  font-family:'Cinzel',serif;
  font-size:2.6rem;
  font-weight:700;
  color:var(--gold2);
  letter-spacing:.12em;
  line-height:1;
  text-shadow:0 0 40px rgba(184,150,62,.5);
}

.emblem__sub{
  font-size:8px;
  letter-spacing:.3em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:300;
  margin-top:6px;
  display:block;
}

.emblem__year{
  font-family:'Cinzel',serif;
  font-size:.75rem;
  color:var(--gold);
  letter-spacing:.2em;
  margin-top:8px;
  opacity:.6;
}

.branches{
  position:relative;
  z-index:1;
}

.branches__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  margin-bottom:clamp(2rem,4vw,3.5rem);
  flex-wrap:wrap;
  gap:1rem;
}

.branches__eyebrow{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:.8rem;
}

.eyebrow__line{
  width:24px;
  height:1px;
  background:var(--gold);
}

.eyebrow__text{
  font-size:10px;
  letter-spacing:.25em;
  text-transform:uppercase;
  color:var(--gold2);
  font-weight:300;
}

.branches__title{
  font-family:'Cinzel',serif;
  font-size:clamp(1.6rem,3vw,2.8rem);
  font-weight:600;
  color:var(--white);
  letter-spacing:.04em;
}

.branches__count{
  font-family:'Cinzel',serif;
  font-size:clamp(3rem,6vw,6rem);
  font-weight:700;
  color:transparent;
  -webkit-text-stroke:1px rgba(184,150,62,.25);
  line-height:1;
  user-select:none;
}

.branches__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(1.2rem,2.5vw,2rem);
}

.branch-card{
  position:relative;
  background:#222020;
  border:1px solid var(--border2);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  cursor:default;
  border-radius:15px;
}

.branch-card::before,
.branch-card::after{
  content:'';
  position:absolute;
  width:16px;
  height:16px;
  border-color:var(--gold);
  border-style:solid;
  opacity:0;
  z-index:4;
}

.branch-card::before{
  top:0;
  left:0;
  border-width:1.5px 0 0 1.5px;
}

.branch-card::after{
  bottom:0;
  right:0;
  border-width:0 1.5px 1.5px 0;
}

.branch-card__corners::before,
.branch-card__corners::after{
  content:'';
  position:absolute;
  width:16px;
  height:16px;
  border-color:var(--gold);
  border-style:solid;
  opacity:0;
  z-index:4;
}

.branch-card__corners::before{
  top:0;
  right:0;
  border-width:1.5px 1.5px 0 0;
}

.branch-card__corners::after{
  bottom:0;
  left:0;
  border-width:0 0 1.5px 1.5px;
}

.branch-card__img-wrap{
  position:relative;
  overflow:hidden;
  flex-shrink:0;
}

.branch-card__img{
  width:100%;
  height:clamp(200px,22vw,300px);
  object-fit:cover;
  display:block;
  filter:brightness(.65) saturate(.7);
}

.branch-card__img-wrap::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(175deg,rgba(8,12,20,.1) 0%,rgba(8,12,20,.75) 100%);
  pointer-events:none;
}

.branch-card__loc{
  position:absolute;
  bottom:16px;
  left:18px;
  z-index:3;
  display:flex;
  align-items:center;
  gap:8px;
}

.loc__flag{
  width:28px;
  height:20px;
  border-radius:2px;
  overflow:hidden;
  flex-shrink:0;
  border:1px solid rgba(255,255,255,.2);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
  line-height:1;
}

.loc__text{
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(255,255,255,.75);
  font-weight:300;
}

.branch-card__bar{
  height:2px;
  background:linear-gradient(90deg, var(--gold), transparent);
  flex-shrink:0;
}

.branch-card__body{
  padding:clamp(1.4rem,2.5vw,2rem) clamp(1.4rem,2.5vw,2rem) clamp(1.6rem,3vw,2.2rem);
  display:flex;
  flex-direction:column;
  gap:.9rem;
  flex:1;
  position:relative;
}

.branch-card__type{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:9px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--gold2);
  font-weight:300;
}

.branch-card__type-dot{
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--gold);
  flex-shrink:0;
  box-shadow:0 0 6px var(--gold);
}

.branch-card__name{
  font-family:'Cinzel',serif;
  font-size:clamp(1.15rem,2vw,1.55rem);
  font-weight:600;
  color:var(--white);
  letter-spacing:.04em;
  line-height:1.25;
}

.branch-card__desc{
  font-size:clamp(12.5px,1.1vw,14px);
  font-weight:200;
  color:var(--muted2);
  line-height:1.85;
  font-style:italic;
}

.branch-card__divider{
  height:1px;
  background:linear-gradient(90deg,var(--border),transparent);
  margin:.2rem 0;
}

.branch-card__details{
  display:flex;
  gap:1.5rem;
  flex-wrap:wrap;
}

.detail{
  display:flex;
  flex-direction:column;
  gap:3px;
}

.detail__label{
  font-size:8.5px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:300;
}

.detail__val{
  font-size:12px;
  font-weight:400;
  color:var(--text);
  letter-spacing:.04em;
}

.branch-card__status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 12px;
  border:1px solid rgba(184,150,62,.25);
  background:rgba(184,150,62,.06);
  align-self:flex-start;
  margin-top:auto;
}

.status__pulse{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--gold2);
  animation:none;
  flex-shrink:0;
}

.status__text{
  font-size:9px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold2);
  font-weight:400;
}

.bottom-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:clamp(2.5rem,4vw,4rem);
  padding-top:clamp(1.5rem,3vw,2.5rem);
  flex-wrap:wrap;
  gap:1.5rem;
}

.strip__line{
  flex:1;
  min-width:60px;
  height:1px;
  background:linear-gradient(to right,var(--border),transparent);
}

.strip__text{
  font-family:'Cinzel',serif;
  font-size:clamp(10px,1vw,12px);
  letter-spacing:.25em;
  color:var(--muted);
  font-weight:400;
  text-transform:uppercase;
  white-space:nowrap;
}

.strip__emblem{
  font-family:'Cinzel',serif;
  font-size:1rem;
  color:var(--gold);
  letter-spacing:.3em;
  opacity:.5;
  white-space:nowrap;
}

.about-pillars{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1.5rem;
  margin-top:1.5rem;
}

.pillar{
  background:#222020;
  border:1px solid var(--border2);
  border-radius:15px;
  padding:1.5rem;
  position:relative;
  z-index:1;
}

.pillar-icon{
  font-size:1.6rem;
  margin-bottom:.8rem;
}

.pillar h4{
  color:var(--white);
  margin:0 0 .5rem;
  font-size:1.1rem;
}

.pillar p{
  color:var(--muted2);
  margin:0;
  line-height:1.7;
  font-size:14px;
}

.branches__text{
  display:block;
  margin-bottom:1rem;
  color:var(--gold2);
  letter-spacing:.15em;
  text-transform:uppercase;
  font-size:11px;
}

@media (max-width: 991px){
  .about{
    grid-template-columns:1fr;
  }

  .about::after{
    display:none;
  }

  .about-pillars,
  .branches__grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 767px){
  .section{
    padding:3rem 1rem;
  }

  .about__stats{
    gap:1rem;
  }

  .emblem{
    width:min(280px,80vw);
    height:min(280px,80vw);
  }
}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

.branches__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  margin-bottom:clamp(2rem,4vw,3.5rem);
  flex-wrap:wrap;
  gap:1rem;
}

.branches__title-wrap{}
.branches__eyebrow{
  display:flex;align-items:center;gap:12px;
  margin-bottom:.8rem;
}
.eyebrow__line{width:24px;height:1px;background:var(--gold);}
.eyebrow__text{
  font-size:10px;letter-spacing:.25em;text-transform:uppercase;
  color:var(--gold2);font-weight:300;
}

.branches__title{
  font-family:'Cinzel',serif;
  font-size:clamp(1.6rem,3vw,2.8rem);
  font-weight:600;
  color:var(--white);
  letter-spacing:.04em;
}

.branches__count{
  font-family:'Cinzel',serif;
  font-size:clamp(3rem,6vw,6rem);
  font-weight:700;
  color:transparent;
  -webkit-text-stroke:1px rgba(184,150,62,.25);
  line-height:1;
  user-select:none;
}

.branches__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(1.2rem,2.5vw,2rem);
}


.branch-card{
  position:relative;
  background: #222020;
  border:1px solid var(--border2);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:border-color .35s ease, transform .35s ease;
  cursor:default;
  group: true;
  border-radius: 15px;
}
.branch-card:hover{
  border-color:var(--border);
  transform:translateY(-4px);
}

/* corner accents */
.branch-card::before,
.branch-card::after{
  content:'';
  position:absolute;
  width:16px;height:16px;
  border-color:var(--gold);
  border-style:solid;
  opacity:0;
  transition:opacity .35s ease;
  z-index:4;
}
.branch-card::before{top:0;left:0;border-width:1.5px 0 0 1.5px;}
.branch-card::after {bottom:0;right:0;border-width:0 1.5px 1.5px 0;}
.branch-card:hover::before,
.branch-card:hover::after{opacity:1;}

/* extra corners via inner pseudo wrappers */
.branch-card__corners::before,
.branch-card__corners::after{
  content:'';
  position:absolute;
  width:16px;height:16px;
  border-color:var(--gold);
  border-style:solid;
  opacity:0;
  transition:opacity .35s ease;
  z-index:4;
}
.branch-card__corners::before{top:0;right:0;border-width:1.5px 1.5px 0 0;}
.branch-card__corners::after {bottom:0;left:0;border-width:0 0 1.5px 1.5px;}
.branch-card:hover .branch-card__corners::before,
.branch-card:hover .branch-card__corners::after{opacity:1;}

/* image */
.branch-card__img-wrap{
  position:relative;
  overflow:hidden;
  flex-shrink:0;
}
.branch-card__img{
  width:100%;
  height:clamp(200px,22vw,300px);
  object-fit:cover;
  display:block;
  filter:brightness(.65) saturate(.7);
  transition:transform .65s ease, filter .5s ease;
}
.branch-card:hover .branch-card__img{
  transform:scale(1.07);
  filter:brightness(.75) saturate(.85);
}

/* image overlay gradient */
.branch-card__img-wrap::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(175deg,rgba(8,12,20,.1) 0%,rgba(8,12,20,.75) 100%);
  pointer-events:none;
}

/* floating location badge on image */
.branch-card__loc{
  position:absolute;
  bottom:16px;left:18px;
  z-index:3;
  display:flex;
  align-items:center;
  gap:8px;
}
.loc__flag{
  width:28px;height:20px;
  border-radius:2px;
  overflow:hidden;
  flex-shrink:0;
  border:1px solid rgba(255,255,255,.2);
  display:flex;align-items:center;justify-content:center;
  font-size:16px;
  line-height:1;
}
.loc__text{
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(255,255,255,.75);
  font-weight:300;
}

/* gold bar */
.branch-card__bar{
  height:2px;
  background:linear-gradient(90deg, var(--gold), transparent);
  flex-shrink:0;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .5s ease;
}
.branch-card:hover .branch-card__bar{transform:scaleX(1);}

/* body */
.branch-card__body{
  padding:clamp(1.4rem,2.5vw,2rem) clamp(1.4rem,2.5vw,2rem) clamp(1.6rem,3vw,2.2rem);
  display:flex;
  flex-direction:column;
  gap:.9rem;
  flex:1;
  position:relative;
}

.branch-card__type{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:9px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--gold2);
  font-weight:300;
}
.branch-card__type-dot{
  width:5px;height:5px;
  border-radius:50%;
  background:var(--gold);
  flex-shrink:0;
  box-shadow:0 0 6px var(--gold);
}

.branch-card__name{
  font-family:'Cinzel',serif;
  font-size:clamp(1.15rem,2vw,1.55rem);
  font-weight:600;
  color:var(--white);
  letter-spacing:.04em;
  line-height:1.25;
}

.branch-card__desc{
  font-size:clamp(12.5px,1.1vw,14px);
  font-weight:200;
  color:var(--muted2);
  line-height:1.85;
  font-style:italic;
}

/* divider */
.branch-card__divider{
  height:1px;
  background:linear-gradient(90deg,var(--border),transparent);
  margin:.2rem 0;
}

/* details row */
.branch-card__details{
  display:flex;
  gap:1.5rem;
  flex-wrap:wrap;
}
.detail{
  display:flex;flex-direction:column;gap:3px;
}
.detail__label{
  font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--muted);font-weight:300;
}
.detail__val{
  font-size:12px;font-weight:400;
  color:var(--text);
  letter-spacing:.04em;
}

/* status pill */
.branch-card__status{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 12px;
  border:1px solid rgba(184,150,62,.25);
  background:rgba(184,150,62,.06);
  align-self:flex-start;
  margin-top:auto;
}
.status__pulse{
  width:6px;height:6px;border-radius:50%;
  background:var(--gold2);
  animation:pulse 2.2s ease infinite;
  flex-shrink:0;
}
.status__text{
  font-size:9px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold2);font-weight:400;
}
@keyframes pulse{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:.4;transform:scale(.75);}
}


.bottom-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:clamp(2.5rem,4vw,4rem);
  padding-top:clamp(1.5rem,3vw,2.5rem);
  flex-wrap:wrap;
  gap:1.5rem;
}
.strip__line{
  flex:1;min-width:60px;
  height:1px;
  background:linear-gradient(to right,var(--border),transparent);
}
.strip__text{
  font-family:'Cinzel',serif;
  font-size:clamp(10px,1vw,12px);
  letter-spacing:.25em;
  color:var(--muted);
  font-weight:400;
  text-transform:uppercase;
  white-space:nowrap;
}
.strip__emblem{
  font-family:'Cinzel',serif;
  font-size:1rem;
  color:var(--gold);
  letter-spacing:.3em;
  opacity:.5;
  white-space:nowrap;
}
/**/star section
.hero-stat-bar{position:absolute;bottom:0;right:0;left:0;z-index:2;display:flex;border-top:1px solid rgba(196,113,42,.2);}
.hero-stat{flex:1;padding:1.25rem clamp(1rem,3vw,2.5rem);border-right:1px solid rgba(196,113,42,.15);display:flex;flex-direction:column;gap:.3rem;}
.hero-stat:last-child{border-right:none;}
.hero-stat-num{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:var(--copper);line-height:1;}
.hero-stat-label{font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:var(--sand);}

.branches {
}

.branches::before,
.branches::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  filter: blur(70px);
  z-index: 0;
}

.branches::before {
  width: 260px;
  height: 260px;
  top: -80px;
  left: -80px;
  background: rgb(255 112 30 / 15%);
}

.branches::after {
  width: 280px;
  height: 280px;
  right: -90px;
  bottom: -90px;
  background: rgba(0, 229, 255, 0.12);
}

.branches__text {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border-radius: 999px;
  color: #e37639;
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.branches__text::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #e47639;
  box-shadow: 0 0 12px #e57738;
}

.about-pillars {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(1, minmax(280px, 1fr));
  gap: 30px;
}

.pillar {
  position: relative;
  padding: 30px 30px;
  border-radius: 15px;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.1);
  backdrop-filter: blur(18px);
  overflow: hidden;
  transition: all 0.45s ease;
  box-shadow: 0 18px 35px rgba(0,0,0,0.18);
}

.pillar::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgb(227 121 58 / 15%), rgba(255, 255, 255, 0.02), transparent);
  opacity: 0;
  transition: opacity 0.45s ease;
}

.pillar::after {
  content: "";
  position: absolute;
  top: 0;
  left: -120%;
  width: 70%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,0.12),
    transparent
  );
  transform: skewX(-20deg);
  transition: 0.7s ease;
}

.pillar:hover {
  transform: translateY(-12px);
  border-color: rgb(227 122 59 / 34%);
  box-shadow: 0 28px 50px rgba(0, 0, 0, 0.28), 0 0 25px rgb(227 121 59 / 8%);
}

.pillar:hover::before {
  opacity: 1;
}

.pillar:hover::after {
  left: 140%;
}

.pillar-icon {
  width: 72px;
  height: 72px;
  margin-bottom: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  font-size: 21px;
  color: #fff;
  box-shadow: 0 14px 30px rgb(0 0 0 / 28%), inset 0 1px 4px rgba(255, 255, 255, 0.25);
  float: left;
  margin-right: 3rem;
}

.pillar h4 {
  margin: 0 0 14px;
  font-size: 20px;
  color: #fff;
  line-height: 1.2;
}

.pillar p {
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color: rgba(225,235,245,0.82);
}
/**/hero section


/* Optional: make first card slightly larger for balance */
.pillar:first-child {
  transform-origin: left center;
}

/* Responsive */
@media (max-width: 768px) {
  .branches {
    padding: 40px 22px;
  }

  .about-pillars {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .pillar {
    padding: 30px 24px;
  }

  .pillar h4 {
    font-size: 22px;
  }

  .pillar-icon {
    width: 64px;
    height: 64px;
    font-size: 24px;
  }
}



@media(max-width:900px){
  .about{grid-template-columns:1fr;gap:2.5rem;}
  .about::after{display:none;}
  .about__emblem{display:none;}
  .branches__grid{grid-template-columns:1fr;}
}
@media(max-width:560px){
  .branch-card__details{gap:1rem;}
  .about__stats{gap:1.2rem;}
  .emblem{width:240px;height:240px;}
}


@media (max-width: 700px) {
  .services__head { flex-direction: column; align-items: flex-start; gap: 1rem; margin-bottom: 1.75rem; }
  .carousel__nav  { align-self: flex-start; }
  .card__img      { height: 200px; }
  body            { padding: 3rem 0; }
}
@media (max-width: 420px) {
  :root { --gap: 16px; }
}
