/* ---- Neutralize Bootstrap defaults on classes this design reuses ---- */
.btn{ border-radius:0; box-shadow:none; }
.btn:focus, .btn:hover{ box-shadow:none; }
.nav{ flex-wrap:nowrap; }

/* ---- Interior pages (no hero banner) need extra clearance under the fixed header ---- */
body.interior .wrap{ margin:90px auto 0; }
body.interior section .wrap{ margin-left:auto; margin-right:auto; }

/* ---- Language toggle (fixed on every page) ---- */
.lang-toggle{
  position:fixed;
  bottom:30px;
  left:30px;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px 22px;
  border-radius:999px;
  background:var(--night);
  color:var(--gold-bright);
  border:1px solid var(--gold);
  font-family:'Jost', sans-serif;
  font-size:0.78rem;
  font-weight:600;
  letter-spacing:0.05em;
  text-decoration:none;
  box-shadow:0 10px 28px -10px rgba(0,0,0,0.45);
  transition:background .25s ease, color .25s ease, transform .25s ease;
}
.lang-toggle:hover{
  background:var(--gold);
  color:var(--night);
  transform:translateY(-2px);
}
.lang-toggle[lang="ar"]{
  font-family:'Cairo', sans-serif;
  font-size:0.85rem;
}
@media(max-width:640px){
  .lang-toggle{
    bottom:20px;
    left:20px;
    padding:12px 18px;
    font-size:0.72rem;
  }
}

/* ---- Mobile nav (Bootstrap offcanvas) ---- */
nav.links a.active{ color:var(--ink); }
nav.links a.active::after{ width:100%; }
.brand-link{ display:flex; align-items:center; gap:13px; }

.site-offcanvas{
  width:min(320px, 84vw);
  background:var(--paper);
  border-left:1px solid var(--line);
  font-family:'Jost', sans-serif;
}
.site-offcanvas .offcanvas-header{
  padding:20px 24px 0;
  justify-content:flex-end;
}
.site-offcanvas .btn-close{
  box-shadow:none;
}
.site-offcanvas .offcanvas-body{
  padding:10px 36px 40px;
}
.offcanvas-links{
  display:flex;
  flex-direction:column;
  gap:0;
}
.offcanvas-links a{
  width:100%;
  padding:16px 0;
  border-bottom:1px solid var(--line-soft);
  font-size:0.95rem;
  color:var(--ink-soft);
  text-decoration:none;
  transition:color .2s ease;
}
.offcanvas-links a:hover,
.offcanvas-links a.active{
  color:var(--ink);
}
.offcanvas-links .nav-cta-mobile{
  display:inline-block;
  margin-top:26px;
  border:1px solid var(--gold);
  border-bottom:1px solid var(--gold);
  padding:13px 22px;
  font-size:0.76rem;
  letter-spacing:0.1em;
  text-transform:uppercase;
  text-align:center;
  color:var(--ink);
}
.offcanvas-links .nav-cta-mobile:hover{
  background:var(--gold);
  color:var(--paper);
}
.offcanvas-backdrop.show{
  opacity:0.45;
}

.whatsapp-float{
    position:fixed;
    bottom:30px;
    right:30px;
    width:62px;
    height:62px;
    background:#25D366;
    color:#fff;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    text-decoration:none;
    font-size:30px;
    box-shadow:0 8px 25px rgba(37,211,102,.35);
    z-index:9999;
    transition:.3s ease;
    animation:pulse 2s infinite;
}

.whatsapp-float:hover{
    transform:scale(1.08);
    background:#20c65a;
    box-shadow:0 12px 35px rgba(37,211,102,.5);
}

.whatsapp-float i{
    line-height:1;
}


@keyframes pulse{

    0%{
        box-shadow:
        0 0 0 0 rgba(37,211,102,.65);
    }

    70%{
        box-shadow:
        0 0 0 18px rgba(37,211,102,0);
    }

    100%{
        box-shadow:
        0 0 0 0 rgba(37,211,102,0);
    }

}

/* Mobile */

@media(max-width:768px){

.whatsapp-float{
    width:56px;
    height:56px;
    font-size:28px;
    bottom:20px;
    right:20px;
}

}

  :root{
    --ink:#1c1a16;
    --ink-soft:#4a453d;
    --paper:#fdfcf6;
    --paper-dim:#f6f0e2;
    --paper-deep:#efe4c9;
    --gold:#a97e2f;
    --gold-bright:#d8ae5c;
    --gold-glow:#f0cf8e;
    --gold-pale:#ecdcb4;
    --night:#0b0a08;
    --night-soft:#161310;
    --night-card:#1d1912;
    --line: rgba(169,126,47,0.4);
    --line-soft: rgba(169,126,47,0.22);
    --max: 1220px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:'Jost', sans-serif;
    font-weight:400;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{
    font-family:'Cormorant Garamond', serif;
    font-weight:600;
    margin:0;
    letter-spacing:0.01em;
  }
  .eyebrow{
    font-family:'Jost',sans-serif;
    font-size:0.72rem;
    font-weight:500;
    letter-spacing:0.32em;
    text-transform:uppercase;
    color:var(--gold);
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:18px;
  }
  .eyebrow::before{
    content:"";
    width:34px;height:1px;
    background:linear-gradient(90deg, transparent, var(--gold));
    display:inline-block;
  }
  .eyebrow.center{justify-content:center;}
  .eyebrow.center::before{display:none;}
  .eyebrow.center::after{content:"";width:34px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);}
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  .wrap{max-width:var(--max); margin:0 auto; padding:0 32px; position:relative;}
  @media(max-width:640px){.wrap{padding:0 20px;}}

  .grain::after{
    content:"";
    position:absolute; inset:0;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");
    pointer-events:none;
  }

  .site-top{
    position:fixed; top:0; left:0; right:0; z-index:150;
  }
  .announce{
    background:var(--night);
    color:var(--gold-bright);
    overflow:hidden;
    position:relative;
    border-top:1px solid rgba(216,174,92,0.25);
  }
  .marquee-track{
    display:flex;
    white-space:nowrap;
    padding:9px 0;
    animation:scroll-left 32s linear infinite;
    width:max-content;
  }
  .marquee-track span{
    font-size:0.72rem;
    letter-spacing:0.2em;
    text-transform:uppercase;
    padding:0 26px;
    display:flex; align-items:center; gap:26px;
  }
  .marquee-track span::after{content:"◆"; color:var(--gold); font-size:0.5rem;}
  @keyframes scroll-left{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

  header{
    position:relative;
    background:rgba(253,252,246,0.96);
    backdrop-filter: blur(14px);
    border-bottom:1px solid var(--line-soft);
  }
 .nav{
    display:flex; align-items:center; justify-content:space-between;
    padding:18px 32px;
    max-width:var(--max); margin:0 auto;
}
  .brand{
    display:flex; align-items:center; gap:13px;
    font-family:'Cormorant Garamond', serif;
    letter-spacing:0.05em;
  }
 .brand .logo-img{
    height:54px;
    width:auto;
    display:block;
}
  nav.links{display:flex; gap:38px; font-size:0.9rem; letter-spacing:0.05em;}
  nav.links a{position:relative; padding:6px 0; color:var(--ink-soft); transition:color .2s;}
  nav.links a::after{
    content:""; position:absolute; left:0; bottom:0; width:0; height:1px;
    background:var(--gold); transition:width .3s ease;
  }
  nav.links a:hover{color:var(--ink);}
  nav.links a:hover::after{width:100%;}
  .nav-cta{
    position:relative;
    border:1px solid var(--gold);
    padding:11px 24px;
    font-size:0.76rem;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:var(--ink);
    overflow:hidden;
    z-index:1;
  }
  .nav-cta::before{
    content:""; position:absolute; inset:0; background:var(--gold);
    transform:translateX(-101%); transition:transform .3s ease; z-index:-1;
  }
  .nav-cta:hover::before{transform:translateX(0);}
  .nav-cta:hover{color:var(--paper);}
  .burger{display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none;}
  .burger span{width:24px; height:1px; background:var(--ink);}
  @media(max-width:900px){
    nav.links, .nav-cta{display:none;}
    .burger{display:flex;}
  }
.hero-stats-float{
  position:absolute;
  top:8%;
  right:6%;
  z-index:3;
  width:220px;
  display:flex;
  flex-direction:column;
  gap:14px;
  pointer-events:none;
}

.hero-stats-float .stat-glass{
  position:relative;
background:rgba(253,252,246,0.14);
  backdrop-filter:blur(6px) saturate(140%);
  -webkit-backdrop-filter:blur(6px) saturate(140%);
  border:1px solid rgba(216,174,92,0.4);
  border-radius:12px;
  padding:16px 20px;
  box-shadow:0 20px 40px -22px rgba(0,0,0,0.35),
  inset 0 1px 0 rgba(255,255,255,0.25);
  overflow:hidden;
}

.hero-stats-float .stat-glass::before{
  content:"";
  position:absolute;
  top:0; left:0; bottom:0;
  width:3px;
  background:linear-gradient(180deg, var(--gold-bright), transparent);
}

.hero-stats-float .stat-glass h3{
  font-family:'Cormorant Garamond', serif;
  font-weight:600;
  font-size:1.5rem;
  color:var(--gold);
  margin-bottom:4px;
  line-height:1;
  text-shadow:0 2px 10px rgba(0,0,0,0.55);
}

.hero-stats-float .stat-glass span{
  display:block;
  font-family:'Jost', sans-serif;
  font-size:0.64rem;
  letter-spacing:0.1em;
  text-transform:uppercase;
  /* color:#d8d3c4; */
  color:#696556;
  text-shadow:0 1px 6px rgba(0,0,0,0.55);
}

@media (max-width:1100px){
  .hero-stats-float{
    width:190px;
    top:6%;
    right:4%;
  }
  .hero-stats-float .stat-glass{padding:13px 16px;}
  .hero-stats-float .stat-glass h3{font-size:1.25rem;}
  .hero-stats-float .stat-glass span{font-size:0.58rem;}
}

@media (max-width:768px){
  .hero-stats-float{
    position:static;
    grid-column:1/-1;
    width:100%;
    flex-direction:row;
    gap:10px;
    margin-top:36px;
    pointer-events:auto;
  }
  .hero-stats-float .stat-glass{
    flex:1 1 0;
    padding:12px 10px;
    text-align:center;
  }
  .hero-stats-float .stat-glass::before{display:none;}
  .hero-stats-float .stat-glass h3{font-size:1.05rem;}
  .hero-stats-float .stat-glass span{font-size:0.5rem; letter-spacing:0.06em;}
}

@media (max-width:480px){
  .hero-stats-float{
    flex-direction:column;
  }
}
  .btn{
    display:inline-block;
    position:relative;
    padding:16px 34px;
    font-size:0.78rem;
    letter-spacing:0.12em;
    text-transform:uppercase;
    border:1px solid var(--ink);
    overflow:hidden;
    z-index:1;
    transition:color .35s ease, border-color .35s ease;
  }
  .btn span{position:relative; z-index:2;}
  .btn.gold{
    background:var(--ink); color:var(--paper); border-color:var(--ink);
  }
  .btn.gold::before{
    content:""; position:absolute; inset:0;
    background:linear-gradient(120deg, var(--gold) 0%, var(--gold-bright) 50%, var(--gold) 100%);
    transform:translateY(101%); transition:transform .35s ease; z-index:0;
  }
  .btn.gold:hover::before{transform:translateY(0);}
  .btn.ghost{color:var(--ink);}
  .btn.ghost::before{
    content:""; position:absolute; inset:0; background:var(--ink);
    transform:translateY(101%); transition:transform .35s ease; z-index:0;
  }
  .btn.ghost:hover{color:var(--paper);}
  .btn.ghost:hover::before{transform:translateY(0);}

  .hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    padding-top:150px; padding-bottom:60px;
    overflow:hidden;
    background:
      radial-gradient(ellipse 55% 45% at 85% 10%, rgba(169,126,47,0.14), transparent 60%),
      radial-gradient(ellipse 40% 35% at 5% 90%, rgba(169,126,47,0.10), transparent 60%),
      var(--paper);
  }
  .hero-inner{
    max-width:var(--max); margin:0 auto; padding:0 32px;
    width:100%;
    display:grid;
    grid-template-columns: 1.15fr 0.75fr;
    gap:64px;
    align-items:center;
    position:relative;
    z-index:2;
  }
  .hero h1{
    font-size:clamp(2.7rem, 5.6vw, 4.9rem);
    line-height:1.04;
    color:var(--ink);
    position:relative;
  }
  .hero h1 em{
    font-style:italic;
    background:linear-gradient(100deg, var(--gold) 10%, var(--gold-bright) 40%, var(--gold) 70%);
    -webkit-background-clip:text; background-clip:text; color:transparent;
    position:relative;
  }
  .hero p.lead{
    margin-top:28px;
    max-width:540px;
    font-size:1.08rem;
    line-height:1.8;
    color:var(--ink-soft);
  }
  .hero-actions{
    display:flex; gap:20px; margin-top:42px; flex-wrap:wrap; align-items:center;
  }

.hero{ position:relative; overflow:hidden; }

.hero-mosque-decor{
  position:absolute;
  bottom:0;
  right:-60px;
  width:680px;
  max-width:55%;
  pointer-events:none;
  z-index:1;
  animation:mosque-float 14s ease-in-out infinite;
}

@keyframes mosque-float{
  0%{ transform:translateY(0); }
  50%{ transform:translateY(-10px); }
  100%{ transform:translateY(0); }
}

.hero-mosque-img{
  display:block;
  width:100%;
  height:auto;
  opacity:0.35;
}

/* Soft gold glow behind the domes */
.hero-mosque-glow{
  position:absolute;
  top:10%;
  left:30%;
  width:50%;
  height:60%;
  background:radial-gradient(circle,
    rgba(200,161,90,0.18),
    transparent 70%);
  filter:blur(20px);
  z-index:-1;
}


.hero-inner{
  position:relative;
  z-index:2;
}


@media (max-width:1100px){
  .hero-mosque-decor{ display:none; }
  .hero-inner{ grid-template-columns:1fr; }
}

@media (max-width:640px){
  .hero{ padding-top:130px; }
  .hero-actions{ gap:14px; }
  .hero-actions .btn{ padding:14px 22px; font-size:0.72rem; }
}

  .seal{ width:48px;height:48px; flex-shrink:0; }
  .seal circle, .seal path{ stroke:var(--gold); fill:none; stroke-width:1; }

  section[id]{scroll-margin-top:112px;}

  section{padding:130px 0; position:relative;}
  section.tight{padding:96px 0;}
  .section-head{
    display:flex; justify-content:space-between; align-items:flex-end;
    gap:40px; margin-bottom:64px; flex-wrap:wrap; position:relative; z-index:1;
  }
  .section-head h2{font-size:clamp(2.1rem,3.8vw,3.2rem); max-width:640px;}
  .section-head p{max-width:380px; color:var(--ink-soft); font-size:0.96rem; line-height:1.75;}

  .band-dark{
    background:
      radial-gradient(ellipse 60% 50% at 15% 0%, rgba(216,174,92,0.08), transparent 60%),
      var(--night);
    color:var(--paper);
  }
  .band-dark .eyebrow{color:var(--gold-bright);}
  .band-dark .eyebrow::before{background:linear-gradient(90deg, transparent, var(--gold-bright));}
  .band-dark .section-head p{color:#c9c3b4;}

.about-image{
  opacity:0;
  transform:scale(0.94);
  transition:opacity 1s ease, transform 1s ease;
}
.about-grid.in .about-image{
  opacity:1;
  transform:scale(1);
}

.about-badge{
  animation:badge-float 6s ease-in-out infinite;
}
@keyframes badge-float{
  0%{ transform:translateY(0); }
  50%{ transform:translateY(-8px); }
  100%{ transform:translateY(0); }
}

.about-features .r-item{
  transition-delay:.1s;
}
.about-features .r-item:nth-child(1){transition-delay:.1s;}
.about-features .r-item:nth-child(2){transition-delay:.22s;}
.about-features .r-item:nth-child(3){transition-delay:.34s;}
.about-features .r-item:nth-child(4){transition-delay:.46s;}

@media (prefers-reduced-motion: reduce){
  .about-badge{animation:none;}
  .about-image{opacity:1; transform:none; transition:none;}
}
.about-grid{
  display:grid;
  grid-template-columns:0.95fr 1.05fr;
  gap:80px;
  align-items:center;
  max-width:1120px;
  margin:0 auto;
  position:relative;
  z-index:1;
}

.about-visual{
  position:relative;
  width:100%;
}

.about-image{
  position:relative;
  aspect-ratio:4/4.6;
  border:1px solid var(--line-soft);
  overflow:hidden;
  background:
    radial-gradient(ellipse at 70% 20%, rgba(216,174,92,0.16), transparent 55%),
    var(--night-soft);
  box-shadow:0 30px 60px -30px rgba(20,15,5,0.35);
}

.about-image .inner-line{
  position:absolute; inset:16px;
  border:1px solid rgba(216,174,92,0.3);
  z-index:1; pointer-events:none;
}

.about-image img{
  position:relative; z-index:1;
  width:56%;
  max-height:60%;
  margin:0 auto;
  object-fit:contain;
  align-self:center;
  justify-self:center;
  display:block;
}

.about-image{display:flex; align-items:center; justify-content:center;}

.about-badge{
  position:absolute;
  left:-28px; bottom:-28px;
  width:230px;
  padding:20px 22px;
  display:flex;
  align-items:flex-start;
  gap:14px;
  background:var(--paper);
  border:1px solid var(--line-soft);
  z-index:2;
  box-shadow:0 24px 40px -20px rgba(20,15,5,0.22);
}

.about-badge-icon{
  width:36px; height:36px; flex:0 0 36px;
  border-radius:50%;
  border:1px solid var(--gold);
  display:flex; align-items:center; justify-content:center;
  color:var(--gold);
  font-size:1rem;
}

.about-badge strong{
  display:block;
  font-family:'Cormorant Garamond', serif;
  font-weight:600;
  font-size:0.95rem;
  color:var(--ink);
}

.about-badge small{
  display:block;
  margin-top:4px;
  color:var(--ink-soft);
  font-size:0.74rem;
  line-height:1.5;
}

.about-content h2{
  margin:14px 0 20px;
  font-size:clamp(2.1rem, 3.3vw, 3.15rem);
  line-height:1.08;
}

.about-content h2 em{
  color:var(--gold);
  font-style:normal;
}

.about-content > p{
  max-width:520px;
  margin:0;
  color:var(--ink-soft);
  font-size:0.98rem;
  line-height:1.85;
}

.about-features{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px 28px;
  margin-top:34px;
}

.about-feature{
  display:flex;
  align-items:flex-start;
  gap:14px;
}

.about-feature .fi{
  width:40px; height:40px; flex:0 0 40px;
  border-radius:50%;
  background:var(--paper-dim);
  border:1px solid var(--line-soft);
  display:flex; align-items:center; justify-content:center;
}
.about-feature .fi svg{width:18px; height:18px; stroke:var(--gold); fill:none;}

.about-feature strong{
  display:block;
  font-size:0.82rem;
  font-family:'Jost', sans-serif;
  font-weight:600;
}

.about-feature small{
  display:block;
  margin-top:4px;
  color:var(--ink-soft);
  font-size:0.78rem;
  line-height:1.55;
}

@media(max-width:900px){
  .about-grid{grid-template-columns:1fr; gap:70px;}
  .about-visual{max-width:420px; margin:0 auto;}
}

@media(max-width:560px){
  .about-features{grid-template-columns:1fr;}
  .about-badge{left:16px; width:calc(100% - 32px);}
  .about-content h2 br{display:none;}
}
  .about-badge{
    right:12px;
  }

  .about-content h2 br{
    display:none;
  }

  .mv-grid{display:grid; grid-template-columns:1fr 1fr; gap:28px; position:relative; z-index:1;}
  .mv-card{
    position:relative;
    background:var(--paper);
    border:1px solid var(--line);
    padding:56px 48px;
    transition:box-shadow .3s ease, transform .3s ease;
  }
  .mv-card:hover{box-shadow:0 30px 50px -28px rgba(169,126,47,0.5); transform:translateY(-6px);}
  .mv-card .seal{margin-bottom:24px;}
  .mv-card h3{font-size:2.1rem; margin-bottom:20px;}
  .mv-card p{font-size:1rem; line-height:1.9; color:var(--ink-soft);}

  .values-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; position:relative; z-index:1;}
  .value{
    position:relative;
    background:var(--paper);
    border:1px solid var(--line-soft);
    padding:40px 30px;
    transition:transform .3s ease, border-color .3s ease, box-shadow .3s ease;
  }
  .value:hover{transform:translateY(-6px); border-color:var(--gold); box-shadow:0 26px 40px -26px rgba(169,126,47,0.45);}
  .value .glyph-wrap{
    width:58px; height:58px; border-radius:50%;
    border:1px solid var(--line);
    display:flex; align-items:center; justify-content:center;
    margin-bottom:24px;
    background:var(--paper-dim);
  }
  .value .glyph{width:26px; height:26px;}
  .value h4{font-size:1.3rem; margin-bottom:12px; letter-spacing:0.01em;}
  .value p{font-size:0.87rem; color:var(--ink-soft); line-height:1.68; margin:0;}
  @media(max-width:900px){.values-grid{grid-template-columns:1fr 1fr;}}
  @media(max-width:560px){.values-grid{grid-template-columns:1fr;}}

.services-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:24px;
  background:transparent;
  border:none;
  position:relative;
  z-index:1;
}
.service-card{
  background:var(--paper, #fdfcf6);
  border-radius:4px;
  padding:32px 26px;
  box-shadow:0 10px 30px rgba(0,0,0,0.25);
}
.service-card:hover{ transform:translateY(-2px); transition:transform 0.25s ease; }
.service-card .si{
  width:44px; height:44px;
  border-radius:50%;
  background:var(--ink);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:22px;
}
.service-card .si svg{width:20px; height:20px; stroke:var(--gold-bright); fill:none;}
.service-card h4{
  color:#1a1a1a;
  font-size:1.05rem;
  margin-bottom:10px;
  font-family:'Cormorant Garamond', serif;
  font-weight:600;
  letter-spacing:0.01em;
}
.service-card p{font-size:0.85rem; color:#5a5648; margin:0; line-height:1.6;}
.service-card .idx{ display:none; } /* index numbers removed in this layout */

.services-cta{
  display:flex;
  justify-content:center;
  margin-top:40px;
}
.services-cta .btn{
  background:var(--paper, #fdfcf6);
  color:#1a1a1a;
  border-radius:999px;
  padding:14px 30px;
  font-size:0.8rem;
  letter-spacing:0.08em;
  /* text-transform:uppercase; */
  display:inline-flex;
  align-items:center;
  gap:8px;
  transition: all .25s ease;
}
.services-cta a:hover{
  color: #a97e2f;
  border-color:var(--gold);
  color:var(--gold);
  transform:translateY(-2px);
}

@media(max-width:1200px){ .services-grid{grid-template-columns:repeat(3,1fr);} }
@media(max-width:900px){ .services-grid{grid-template-columns:1fr 1fr;} }
@media(max-width:600px){ .services-grid{grid-template-columns:1fr;} }
  .authorities-section{
  padding:130px 0;
  background:var(--paper);
}

.authorities-head{
  max-width:680px;
  margin:0 auto 64px;
  text-align:center;
}

.authorities-head h2{
  margin:14px 0 18px;
  font-size:clamp(2.1rem, 3.6vw, 3.2rem);
  line-height:1.08;
  
   
}

.authorities-head p{
  max-width:560px;
  margin:0 auto;
  color:var(--ink-soft);
  font-size:0.96rem;
  line-height:1.8;
}

.authorities-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:20px;
  position:relative;
  z-index:1;
}

.authority-card{
  display:flex;
  align-items:center;
  gap:16px;
  padding:26px 24px;
  border:1px solid var(--line-soft);
  background:var(--paper);
  transition:transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.authority-card:hover{
  transform:translateY(-5px);
  border-color:var(--gold);
  box-shadow:0 22px 38px -24px rgba(169,126,47,0.4);
}

.authority-icon{
  width:46px; height:46px; flex:0 0 46px;
  display:flex; align-items:center; justify-content:center;
  border-radius:50%;
  /* background:rgba(169,126,47,0.12); */
  background:var(--gold-pale);
}
.authority-icon svg{width:20px; height:20px; stroke:var(--ink-soft); fill:none;}

.authority-card span.label{
  font-family:'Jost', sans-serif;
  font-size:0.86rem;
  font-weight:500;
  line-height:1.4;
  color:var(--ink);
}

.authorities-action{
  display:flex;
  justify-content:center;
  margin-top:48px;
}

.authorities-action a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:14px 26px;
  border:1px solid var(--line);
  border-radius:999px;
  color:var(--ink);
  background:#fff;
  font-family:'Jost', sans-serif;
  font-size:0.78rem;
  letter-spacing:0.04em;
  font-weight:500;
  text-decoration:none;
  transition:all .25s ease;
}

.authorities-action a:hover{
  border-color:var(--gold);
  color:var(--gold);
  transform:translateY(-2px);
}

@media(max-width:900px){
  .authorities-grid{grid-template-columns:repeat(2, 1fr);}
}

@media(max-width:560px){
  .authorities-section{padding:90px 0;}
  .authorities-grid{grid-template-columns:1fr;}
  .authorities-head h2 br{display:none;}
}
.why-wrap{display:grid; grid-template-columns:0.9fr 1.1fr; gap:76px; align-items:center; position:relative; z-index:1;}
  
  .why-visual{
    position:relative;
    aspect-ratio:4/5;
    border:1px solid var(--line-soft);
    background:
      radial-gradient(ellipse at 50% 30%, rgba(216,174,92,0.12), transparent 60%),
      var(--night-soft);
    display:flex; align-items:center; justify-content:center;
    overflow:hidden;
  }
  .why-visual .inner-line{
    position:absolute; inset:16px;
    border:1px solid rgba(216,174,92,0.3);
    z-index:1;
    pointer-events:none;
  }
  .why-visual-img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:0;
  }
  .why-list{display:flex; flex-direction:column; gap:0;}
  .why-item{
    display:grid; grid-template-columns:74px 1fr; gap:26px;
    padding:28px 0; border-bottom:1px solid var(--line-soft);
    transition:padding-left .3s ease;
  }
  .why-item:hover{padding-left:10px;}
  .why-item:first-child{border-top:1px solid var(--line-soft);}
  .why-item .idx{font-family:'Cormorant Garamond',serif; font-size:1.7rem; color:var(--gold); font-style:italic;}
  .why-item h4{font-size:1.18rem; margin-bottom:8px; font-family:'Jost',sans-serif; font-weight:500;}
  .why-item p{font-size:0.87rem; color:var(--ink-soft); margin:0; line-height:1.68;}

  .letters{display:grid; grid-template-columns:1fr 1fr; gap:28px; position:relative; z-index:1;}
  .letter{
    position:relative;
    background:var(--paper);
    border:1px solid var(--line);
    padding:52px 46px;
    display:flex; flex-direction:column;
  }
  .letter .quote-mark{font-family:'Cormorant Garamond',serif; font-size:3.8rem; color:var(--gold-pale); line-height:0.5; margin-bottom:22px;}
  .letter p.body-text{font-size:1rem; line-height:1.9; color:var(--ink-soft); flex-grow:1;}
  .letter .signee{
    margin-top:30px; padding-top:24px; border-top:1px solid var(--line-soft);
    display:flex; align-items:center; gap:18px;
  }
  .letter .avatar{
    width:56px;height:56px; border-radius:50%;
    border:1px solid var(--gold);
    display:flex; align-items:center; justify-content:center;
    font-family:'Cormorant Garamond',serif; font-size:1.15rem; color:var(--gold);
    background:var(--paper-dim);
  }
  .letter .signee h5{font-family:'Jost',sans-serif; font-size:0.97rem; font-weight:500; margin:0;}
  .letter .signee span{font-size:0.8rem; color:var(--ink-soft);}

 .team-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  position:relative;
  z-index:1;
 }
  .member{
    position:relative;
    background:var(--paper); border:1px solid var(--line-soft);
    padding:36px 22px; text-align:center;
    transition:transform .3s ease, border-color .3s ease, box-shadow .3s ease;
  }
  .member:hover{transform:translateY(-6px); border-color:var(--gold); box-shadow:0 24px 40px -26px rgba(169,126,47,0.4);}
  .member .avatar{
    width:80px;height:80px; margin:0 auto 20px; border-radius:50%;
    border:1px solid var(--gold);
    display:flex; align-items:center; justify-content:center;
    font-family:'Cormorant Garamond',serif; font-size:1.5rem; color:var(--gold);
    background:var(--paper-dim);
    position:relative;
    overflow: hidden;
  }
  .member .avatar::before{
    content:""; position:absolute; inset:-6px; border:1px solid var(--line-soft); border-radius:50%;
  }
  .member .avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 20%;
  border-radius:50%;
  position:relative;
  z-index:1;
}
  .member h5{font-family:'Jost',sans-serif; font-size:0.94rem; font-weight:500; margin-bottom:6px;}
  .member span{font-size:0.76rem; color:var(--ink-soft); letter-spacing:0.02em;}
 
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.team-grid{grid-template-columns:1fr;}}
  .contact-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:0; border:1px solid var(--line); position:relative; z-index:1;}
  .contact-info{
    background:
      radial-gradient(ellipse 70% 50% at 20% 0%, rgba(216,174,92,0.1), transparent 60%),
      var(--night);
    color:var(--paper); padding:58px 48px; position:relative;
  }
  .contact-info h3{font-size:2rem; color:var(--paper); margin-bottom:20px;}
  .contact-info p.lead{color:#c9c3b4; font-size:0.96rem; line-height:1.75; margin-bottom:38px;}
  .cinfo-row{display:flex; gap:18px; padding:20px 0; border-top:1px solid rgba(216,174,92,0.2);}
  .cinfo-row:last-child{border-bottom:1px solid rgba(216,174,92,0.2);}
  .cinfo-row .ic{width:38px;height:38px; flex-shrink:0; border:1px solid var(--gold-bright); border-radius:50%; display:flex; align-items:center; justify-content:center;}
  .cinfo-row .ic svg{width:16px;height:16px; stroke:var(--gold-bright); fill:none;}
  .cinfo-row b{display:block; font-size:0.68rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--gold-bright); margin-bottom:5px;}
  .cinfo-row span{font-size:0.94rem; color:var(--paper);}

  .contact-form{background:var(--paper); padding:58px 48px; border-left:1px solid var(--line);}
  .form-row{display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-bottom:24px;}
  .field{display:flex; flex-direction:column;}
  .field.full{grid-column:1/-1;}
  .field label{font-size:0.72rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-soft); margin-bottom:11px;}
  .field input, .field select, .field textarea{
    border:none; border-bottom:1px solid var(--line-soft);
    background:transparent;
    padding:11px 2px;
    font-family:'Jost',sans-serif;
    font-size:0.96rem;
    color:var(--ink);
    outline:none;
    transition:border-color .25s ease;
  }
  .field input:focus, .field select:focus, .field textarea:focus{border-color:var(--gold);}
  .contact-form .btn{margin-top:12px; width:100%; text-align:center;}
  @media(max-width:900px){
    .about-grid, .why-wrap, .letters, .mv-grid{grid-template-columns:1fr;}
    .contact-grid{grid-template-columns:1fr;}
    .contact-form{border-left:none; border-top:1px solid var(--line);}
    .team-grid{grid-template-columns:repeat(2,1fr);}
    .form-row{grid-template-columns:1fr;}
  }

  footer{background:var(--night); color:#9c9788; padding:0 0 0; position:relative; overflow:hidden;}
  .foot-cta{
    text-align:center; padding:110px 0 90px; position:relative; z-index:1;
    border-bottom:1px solid rgba(216,174,92,0.18);
  }
  .foot-cta h2{font-size:clamp(2.2rem,4.6vw,3.6rem); color:var(--paper); max-width:760px; margin:0 auto 36px;}
  .foot-top{display:flex; justify-content:space-between; align-items:flex-start; gap:40px; flex-wrap:wrap; padding:70px 0 40px; position:relative; z-index:1;}
  .foot-brand{display:flex; align-items:center; gap:12px; color:var(--paper); font-family:'Cormorant Garamond',serif; font-size:1.4rem;}
  .foot-brand .logo-img{height:56px; width:auto;}
  .foot-col h5{font-size:0.72rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--gold-bright); margin-bottom:18px; font-family:'Jost',sans-serif;}
  .foot-col a{display:block; font-size:0.87rem; margin-bottom:11px; color:#b9b3a2; transition:color .2s;}
  .foot-col a:hover{color:var(--gold-bright);}
  .foot-bottom{display:flex; justify-content:space-between; padding:26px 0 34px; font-size:0.76rem; flex-wrap:wrap; gap:10px; border-top:1px solid rgba(216,174,92,0.18); position:relative; z-index:1;}
  .foot-social{display:flex; gap:12px;}
  .foot-social a{width:34px;height:34px; border:1px solid rgba(216,174,92,0.35); border-radius:50%; display:flex; align-items:center; justify-content:center;}
  .foot-social a svg{width:14px; height:14px; stroke:var(--gold-bright); fill:none;}
  .foot-social a:hover{border-color:var(--gold-bright); background:rgba(216,174,92,0.08);}
.foot-divider{
  position:relative;
  border-top:1px solid rgba(216,174,92,0.18);
  margin:0 auto;
  max-width:var(--max);
}
.foot-divider span{
  position:absolute; top:-5px; left:50%; transform:translateX(-50%) rotate(45deg);
  width:9px; height:9px;
  background:var(--night);
  border:1px solid var(--gold-bright);
}

.foot-top-v2{
  display:grid;
  grid-template-columns:1.3fr 1fr 1.3fr;
  gap:50px;
  border-top:none;
}
.foot-brand-col .foot-brand{margin-bottom:18px;}
.foot-tagline{
  color:var(--paper);
  font-size:1rem;
  font-weight:500;
  margin:0 0 12px;
  line-height:1.5;
}
.foot-desc{
  color:#b9b3a2;
  font-size:0.87rem;
  line-height:1.7;
  margin:0 0 22px;
  max-width:320px;
}
.foot-col h5{position:relative; padding-bottom:14px; margin-bottom:20px;}
.foot-col h5::after{
  content:""; position:absolute; left:0; bottom:0; width:24px; height:1px;
  background:var(--gold-bright);
}
.foot-col a{display:flex; align-items:flex-start; gap:10px;}
.foot-col a .chev{color:var(--gold-bright); font-size:0.9rem; line-height:1.4;}
.foot-col a svg{width:16px; height:16px; flex-shrink:0; stroke:var(--gold-bright); fill:none; margin-top:2px;}
.foot-hours span{display:block; color:#9c9788; font-size:0.8rem; margin-top:2px;}

.foot-bottom{flex-wrap:wrap; gap:18px; align-items:center;}

/* ---- Clear the fixed WhatsApp button / language toggle at the very bottom of the page ---- */
footer{padding-bottom:110px;}
@media(max-width:768px){
  footer{padding-bottom:90px;}
}

@media(max-width:900px){
  .foot-top-v2{grid-template-columns:1fr; gap:36px;}
}
  .reveal{opacity:0; transform:translateY(26px); transition:opacity .8s ease, transform .8s ease;}
  .reveal.in{opacity:1; transform:translateY(0);}
  .reveal.stagger.in .r-item{opacity:1; transform:translateY(0);}
  .r-item{opacity:0; transform:translateY(20px); transition:opacity .6s ease, transform .6s ease;}
  .r-item:nth-child(1){transition-delay:.05s;}
  .r-item:nth-child(2){transition-delay:.12s;}
  .r-item:nth-child(3){transition-delay:.19s;}
  .r-item:nth-child(4){transition-delay:.26s;}
  .r-item:nth-child(5){transition-delay:.33s;}

  @media (prefers-reduced-motion: reduce){
    .reveal, .r-item{opacity:1; transform:none; transition:none;}
    html{scroll-behavior:auto;}
    .marquee-track{animation:none;}
  }

  nav.links a.active{color:var(--ink);}
  nav.links a.active::after{width:100%;}
  .brand-link{display:flex; align-items:center; gap:13px;}

  .burger{position:relative; z-index:120;}

