/* ========================================
   DPIPH — Global Stylesheet
   Black & Gold Luxury Theme
   ======================================== */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700;900&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,600&family=Inter:wght@300;400;500&display=swap');

/* ── TOKENS ── */
:root {
  --gold:         #C9A84C;
  --gold-light:   #E8C96A;
  --gold-pale:    #f0dfa0;
  --gold-dim:     #8B6914;
  --gold-dark:    #5a4208;
  --gold-glow:    rgba(201,168,76,0.18);
  --gold-glow2:   rgba(201,168,76,0.08);
  --black:        #050505;
  --black-deep:   #000000;
  --black-card:   #0c0c0c;
  --black-card2:  #111008;
  --black-border: rgba(201,168,76,0.15);
  --black-glass:  rgba(10,10,10,0.80);
  --white:        #f5f0e8;
  --white-dim:    rgba(245,240,232,0.65);
  --white-faint:  rgba(245,240,232,0.35);
  --body:         #b8af9a;
  --body-light:   #d4cab4;
  --red:          #e05252;
  --green:        #25D366;
  --radius:       0px;
  --shadow-gold:  0 8px 40px rgba(201,168,76,0.18);
  --shadow-dark:  0 8px 40px rgba(0,0,0,0.6);
  --transition:   all 0.35s cubic-bezier(0.4,0,0.2,1);
}

/* ── RESET ── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  background:var(--black);
  color:var(--white);
  font-family:'Inter',sans-serif;
  font-weight:300;
  line-height:1.6;
  overflow-x:hidden;
}
img { display:block; max-width:100%; }
a { text-decoration:none; color:inherit; }
ul { list-style:none; }
button { cursor:pointer; }
textarea, input, select { font-family:inherit; }

/* ── PARTICLES ── */
#particles {
  position:fixed; top:0; left:0; width:100%; height:100%;
  pointer-events:none; z-index:0; overflow:hidden;
}
.ptcl {
  position:absolute; border-radius:50%;
  background:var(--gold);
  animation:floatUp linear infinite;
  opacity:0;
}
@keyframes floatUp {
  0%   { transform:translateY(100vh) scale(0); opacity:0; }
  8%   { opacity:0.55; }
  92%  { opacity:0.15; }
  100% { transform:translateY(-8vh) scale(1.2); opacity:0; }
}

/* ── TOPBAR ── */
.topbar {
  background:#000;
  border-bottom:1px solid rgba(201,168,76,0.12);
  padding:7px 0;
  position:relative;
  z-index:1001;
}
.topbar-inner {
  max-width:1280px; margin:0 auto; padding:0 32px;
  display:flex; align-items:center; justify-content:space-between;
}
.topbar-left { display:flex; align-items:center; gap:20px; flex-wrap:wrap; row-gap:4px; }
.topbar-item {
  display:flex; align-items:center; gap:7px;
  font-size:11px; letter-spacing:0.08em; color:var(--body);
  white-space:nowrap;
}
.topbar-item i { color:var(--gold); font-size:12px; }
.topbar-right { display:flex; align-items:center; gap:12px; }
.topbar-social {
  width:28px; height:28px; border:1px solid rgba(201,168,76,0.2);
  display:flex; align-items:center; justify-content:center;
  color:var(--body); font-size:12px; transition:var(--transition);
}
.topbar-social:hover { background:var(--gold); color:#000; border-color:var(--gold); }
.topbar-lang {
  font-family:'Cinzel',serif; font-size:10px; letter-spacing:0.12em;
  color:var(--gold); border:1px solid rgba(201,168,76,0.25); padding:4px 12px;
  background:transparent;
}

/* ── NAV ── */
nav.main-nav {
  position:sticky; top:0; z-index:1000;
  background:rgba(0,0,0,0.95);
  backdrop-filter:blur(20px);
  border-bottom:1px solid var(--black-border);
  transition:var(--transition);
}
nav.main-nav.scrolled { background:rgba(0,0,0,0.99); box-shadow:0 4px 30px rgba(0,0,0,0.5); }
.nav-inner {
  max-width:1280px; margin:0 auto; padding:0 32px;
  display:flex; align-items:center; justify-content:space-between;
  height:72px;
}
.nav-logo { display:flex; align-items:center; gap:14px; }
.nav-logo-img {
  width:54px; height:54px; border-radius:50%;
  border:2px solid var(--gold);
  object-fit:cover;
}
.nav-logo-texts { display:flex; flex-direction:column; }
.nav-logo-name {
  font-family:'Cinzel',serif; font-size:12.5px; font-weight:600;
  letter-spacing:0.1em; color:var(--gold); line-height:1.25;
}
.nav-logo-sub {
  font-size:9px; letter-spacing:0.18em; color:var(--white-dim);
  text-transform:uppercase;
}
.nav-links {
  display:flex; align-items:center; gap:4px;
}
.nav-links > li { position:relative; }
.nav-links > li > a {
  font-family:'Cinzel',serif; font-size:11px; letter-spacing:0.1em;
  text-transform:uppercase; color:var(--white-dim); padding:10px 14px;
  display:block; transition:color 0.25s; position:relative;
}
.nav-links > li > a::after {
  content:''; position:absolute; bottom:6px; left:14px; right:14px;
  height:1px; background:var(--gold); transform:scaleX(0); transition:transform 0.3s;
}
.nav-links > li > a:hover,
.nav-links > li > a.active { color:var(--gold); }
.nav-links > li > a:hover::after,
.nav-links > li > a.active::after { transform:scaleX(1); }
/* Dropdown */
.has-drop:hover .nav-drop { opacity:1; pointer-events:all; transform:translateY(0); }
.nav-drop {
  position:absolute; top:calc(100% + 8px); left:0; min-width:230px;
  background:#080600; border:1px solid var(--black-border);
  padding:8px 0; opacity:0; pointer-events:none;
  transform:translateY(-10px); transition:var(--transition);
  box-shadow:var(--shadow-dark);
}
.nav-drop a {
  display:block; padding:10px 20px;
  font-family:'Cinzel',serif; font-size:10px; letter-spacing:0.1em;
  color:var(--white-dim); transition:var(--transition); border-left:2px solid transparent;
}
.nav-drop a:hover { color:var(--gold); background:var(--gold-glow2); border-left-color:var(--gold); }
.nav-actions { display:flex; align-items:center; gap:12px; }
.nav-book {
  font-family:'Cinzel',serif; font-size:11px; letter-spacing:0.12em;
  text-transform:uppercase; color:#000; background:linear-gradient(135deg,var(--gold-light),var(--gold));
  padding:11px 26px; border:none; display:inline-block;
  clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
  transition:var(--transition);
}
.nav-book:hover { background:linear-gradient(135deg,var(--gold-pale),var(--gold-light)); box-shadow:0 0 28px rgba(201,168,76,0.4); }
.hamburger { display:none; flex-direction:column; gap:5px; background:none; border:none; }
.hamburger span { display:block; width:24px; height:2px; background:var(--gold); transition:var(--transition); }

/* ── LANGUAGE SWITCHER ── */
.lang-switcher{position:relative;margin-right:6px;}
.lang-current{display:flex;align-items:center;gap:9px;font-family:'Cinzel',serif;font-size:11px;letter-spacing:0.08em;color:var(--body);background:rgba(201,168,76,0.03);border:1px solid rgba(201,168,76,0.22);padding:9px 15px;cursor:pointer;transition:var(--transition);}
.lang-current:hover{color:var(--gold);border-color:rgba(201,168,76,0.5);background:rgba(201,168,76,0.07);}
.lang-current i.fa-globe{font-size:12px;color:var(--gold);}
.lang-chevron{font-size:8px;color:rgba(201,168,76,0.6);transition:transform 0.25s ease;}
.lang-switcher.open .lang-chevron{transform:rotate(180deg);}
.lang-dropdown{position:absolute;top:calc(100% + 12px);right:0;background:linear-gradient(180deg,#0d0900,#050300);border:1px solid rgba(201,168,76,0.25);min-width:180px;z-index:60;box-shadow:0 24px 60px rgba(0,0,0,0.65);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity 0.22s ease,transform 0.22s ease,visibility 0.22s;}
.lang-dropdown::before{content:'';position:absolute;top:-1px;left:18px;right:18px;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.lang-switcher.open .lang-dropdown{opacity:1;visibility:visible;transform:translateY(0);}
.lang-dropdown a{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;font-family:'Cinzel',serif;font-size:12px;color:var(--body);letter-spacing:0.05em;transition:var(--transition);border-bottom:1px solid rgba(201,168,76,0.08);}
.lang-dropdown a:last-child{border-bottom:none;}
.lang-dropdown a:hover{color:var(--gold);background:rgba(201,168,76,0.06);padding-left:24px;}
.lang-dropdown a.active{color:var(--gold);}
.lang-dropdown a.active::after{content:'✦';font-size:9px;color:var(--gold);}
.mob-lang-switcher{display:flex;align-items:center;gap:8px;font-family:'Cinzel',serif;font-size:13px;letter-spacing:0.08em;margin:8px 0 20px;}
.mob-lang-switcher a{color:var(--body);}
.mob-lang-switcher a.active{color:var(--gold);}
@media(max-width:900px){.lang-switcher{margin-right:8px;}}

/* ── MOBILE MENU OVERLAY ── */
.mob-menu {
  display:none;
  position:fixed; inset:0; z-index:9000;
  background:rgba(0,0,0,0.98);
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  overflow-y:auto;
  padding:80px 32px 48px;
  gap:0;
}
.mob-menu.open { display:flex; }
.mob-menu a {
  font-family:'Cinzel',serif; font-size:16px; letter-spacing:0.14em;
  text-transform:uppercase; color:var(--white); transition:color 0.25s;
  padding:13px 0; border-bottom:1px solid rgba(201,168,76,0.08);
  width:100%; text-align:center; display:block;
}
.mob-menu a:last-child { border-bottom:none; }
.mob-menu a:hover { color:var(--gold); }
.mob-menu .mob-section-title {
  font-family:'Cinzel',serif; font-size:9px; letter-spacing:0.28em;
  color:rgba(201,168,76,0.55); text-transform:uppercase;
  margin:18px 0 2px; width:100%; text-align:center; display:block;
}
.mob-menu .mob-sub {
  font-size:12px !important; letter-spacing:0.12em !important;
  color:var(--body) !important; padding:9px 0 !important;
  border-bottom:1px solid rgba(201,168,76,0.05) !important;
}
.mob-menu .mob-sub:hover { color:var(--gold) !important; }
.mob-menu .mob-book-btn {
  background:linear-gradient(135deg,var(--gold-light),var(--gold)) !important;
  color:#000 !important; font-weight:600 !important;
  padding:15px 40px !important; margin-top:20px !important;
  border:none !important; border-bottom:none !important;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
  display:inline-block !important; width:auto !important;
}
.mob-close {
  position:fixed; top:22px; right:28px;
  background:none; border:none; color:var(--gold); font-size:30px;
  cursor:pointer; z-index:9001; line-height:1;
}

/* ── SECTION UTILITY ── */
section { position:relative; z-index:5; }
.container { max-width:1280px; margin:0 auto; padding:0 32px; }
.container-sm { max-width:860px; margin:0 auto; padding:0 32px; }

.eyebrow {
  display:block; font-family:'Cinzel',serif; font-size:10px;
  letter-spacing:0.32em; color:var(--gold); text-transform:uppercase; margin-bottom:14px;
}
.sec-title {
  font-family:'Cinzel',serif; font-size:clamp(26px,4vw,50px);
  font-weight:700; line-height:1.1; margin-bottom:18px;
  background:linear-gradient(175deg,var(--white) 0%,var(--gold-light) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.sec-title.center { text-align:center; }
.sec-body {
  font-family:'Cormorant Garamond',serif; font-size:clamp(15px,1.6vw,19px);
  color:var(--body); line-height:1.9;
}
.sec-body.center { text-align:center; max-width:680px; margin:0 auto; }

/* Gold divider */
.g-div {
  display:flex; align-items:center; gap:14px; margin:18px 0;
}
.g-div.center { justify-content:center; }
.g-div-line { width:100px; height:1px; background:linear-gradient(90deg,var(--gold),transparent); }
.g-div-line.rev { background:linear-gradient(90deg,transparent,var(--gold)); }
.g-div-gem { width:8px; height:8px; background:var(--gold); transform:rotate(45deg); flex-shrink:0; }

/* ── BUTTONS ── */
.btn-primary {
  display:inline-flex; align-items:center; gap:10px;
  font-family:'Cinzel',serif; font-size:12px; letter-spacing:0.15em; font-weight:600;
  text-transform:uppercase; color:#000;
  background:linear-gradient(135deg,var(--gold-light),var(--gold));
  padding:14px 36px; border:none;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
  transition:var(--transition);
}
.btn-primary:hover { box-shadow:0 0 32px rgba(201,168,76,0.45); transform:translateY(-2px); background:linear-gradient(135deg,var(--gold-pale),var(--gold-light)); }

.btn-outline {
  display:inline-flex; align-items:center; gap:10px;
  font-family:'Cinzel',serif; font-size:12px; letter-spacing:0.15em;
  text-transform:uppercase; color:var(--gold);
  background:transparent; padding:13px 36px;
  border:1px solid var(--gold);
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
  transition:var(--transition);
}
.btn-outline:hover { background:var(--gold-glow); box-shadow:0 0 20px var(--gold-glow); }

.btn-sm {
  display:inline-flex; align-items:center; gap:8px;
  font-family:'Cinzel',serif; font-size:10px; letter-spacing:0.12em;
  text-transform:uppercase; color:#000;
  background:linear-gradient(135deg,var(--gold-light),var(--gold));
  padding:10px 22px; border:none;
  transition:var(--transition);
}
.btn-sm:hover { box-shadow:0 0 18px rgba(201,168,76,0.4); }

/* ── CARDS ── */
.card-glass {
  background:var(--black-card);
  border:1px solid rgba(201,168,76,0.12);
  transition:var(--transition); position:relative; overflow:hidden;
}
.card-glass:hover { border-color:rgba(201,168,76,0.35); transform:translateY(-5px); box-shadow:0 24px 60px rgba(0,0,0,0.5); }
.card-glass::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  transform:scaleX(0); transition:transform 0.4s;
}
.card-glass:hover::before { transform:scaleX(1); }

/* ── FORMS ── */
.form-wrap {
  background:var(--black-card);
  border:1px solid rgba(201,168,76,0.2);
  padding:48px 44px; position:relative; overflow:hidden;
}
.form-wrap::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
.form-title {
  font-family:'Cinzel',serif; font-size:20px; font-weight:600;
  color:var(--gold); text-align:center; margin-bottom:32px; letter-spacing:0.08em;
}
.form-group { margin-bottom:20px; }
.form-group label {
  display:block; font-family:'Cinzel',serif; font-size:9.5px;
  letter-spacing:0.18em; color:var(--body); text-transform:uppercase; margin-bottom:8px;
}
.form-control {
  width:100%; background:rgba(201,168,76,0.04);
  border:1px solid rgba(201,168,76,0.18); color:var(--white);
  font-family:'Cormorant Garamond',serif; font-size:16px;
  padding:12px 16px; outline:none; transition:var(--transition);
  -webkit-appearance:none; appearance:none;
}
.form-control:focus { border-color:var(--gold); background:rgba(201,168,76,0.07); box-shadow:0 0 0 1px rgba(201,168,76,0.18); }
.form-control option { background:#0d0d0d; color:var(--white); }
.form-control::placeholder { color:rgba(184,175,154,0.45); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-note { font-size:11px; color:var(--body); text-align:center; margin-top:14px; letter-spacing:0.05em; }
.form-submit {
  width:100%; padding:16px; font-family:'Cinzel',serif; font-size:12px;
  letter-spacing:0.2em; text-transform:uppercase; font-weight:600;
  background:linear-gradient(135deg,var(--gold-light),var(--gold-dim));
  color:#000; border:none; transition:var(--transition); margin-top:6px;
}
.form-submit:hover { box-shadow:0 0 30px rgba(201,168,76,0.4); transform:translateY(-2px); }

/* ── BREADCRUMB ── */
.breadcrumb-section {
  background:linear-gradient(180deg,#0a0700,#030200);
  border-bottom:1px solid rgba(201,168,76,0.1);
  padding:16px 0;
}
.breadcrumb {
  display:flex; align-items:center; gap:10px;
  font-family:'Cinzel',serif; font-size:10px; letter-spacing:0.12em;
  color:var(--body); text-transform:uppercase;
}
.breadcrumb a { color:var(--gold); transition:opacity 0.2s; }
.breadcrumb a:hover { opacity:0.75; }
.breadcrumb-sep { color:var(--gold); opacity:0.4; }

/* ── PAGE HERO (inner pages) ── */
.page-hero {
  padding:100px 0 80px;
  background:linear-gradient(180deg,#0f0900 0%,#000 100%);
  text-align:center; position:relative; overflow:hidden;
}
.page-hero::before {
  content:''; position:absolute; inset:0;
  background-image:radial-gradient(ellipse at 50% 0%, rgba(201,168,76,0.12) 0%, transparent 60%);
}
.page-hero-content { position:relative; z-index:2; }
.page-hero-title {
  font-family:'Cinzel',serif; font-size:clamp(32px,5vw,64px); font-weight:700;
  background:linear-gradient(175deg,var(--gold-light) 0%,var(--gold) 50%,var(--gold-dim) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  margin-bottom:16px;
}
.page-hero-sub {
  font-family:'Cormorant Garamond',serif; font-size:clamp(15px,2vw,22px);
  font-style:italic; color:var(--white-dim); max-width:640px; margin:0 auto; line-height:1.7;
}

/* ── STATS BAR ── */
.stats-bar {
  background:linear-gradient(90deg,#000,#0a0600,#000);
  border-top:1px solid var(--gold); border-bottom:1px solid var(--gold);
  padding:24px 0; position:relative; z-index:5;
}
.stats-row {
  max-width:1280px; margin:0 auto; padding:0 32px;
  display:grid; grid-template-columns:repeat(4,1fr);
}
.stat-cell {
  display:flex; flex-direction:column; align-items:center; padding:4px 20px;
  border-right:1px solid rgba(201,168,76,0.18);
}
.stat-cell:last-child { border-right:none; }
.stat-val {
  font-family:'Cinzel',serif; font-size:clamp(22px,3vw,38px); font-weight:700;
  background:linear-gradient(180deg,var(--gold-light),var(--gold));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  line-height:1.1;
}
.stat-lbl { font-size:10px; letter-spacing:0.2em; color:var(--body); text-transform:uppercase; margin-top:5px; }

/* ── WHATSAPP FLOAT ── */
.wa-float {
  position:fixed; bottom:28px; right:28px; z-index:8000;
  width:58px; height:58px; border-radius:50%;
  background:linear-gradient(135deg,#25D366,#128C7E);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:26px;
  box-shadow:0 4px 24px rgba(37,211,102,0.4);
  animation:waPulse 2.5s ease-in-out infinite;
}
@keyframes waPulse { 0%,100%{transform:scale(1);box-shadow:0 4px 24px rgba(37,211,102,0.4);} 50%{transform:scale(1.09);box-shadow:0 4px 32px rgba(37,211,102,0.6);} }

/* ── FOOTER ── */
.site-footer {
  background:#000; border-top:1px solid rgba(201,168,76,0.15); padding:72px 0 28px;
}
.footer-grid {
  max-width:1280px; margin:0 auto; padding:0 32px;
  display:grid; grid-template-columns:2.2fr 1fr 1fr 1fr; gap:52px;
  margin-bottom:56px;
}
.footer-brand-logo {
  width:64px; height:64px; border-radius:50%;
  border:2px solid var(--gold); object-fit:cover; margin-bottom:18px;
}
.footer-brand-name {
  font-family:'Cinzel',serif; font-size:12px; letter-spacing:0.09em;
  color:var(--gold); line-height:1.45; margin-bottom:14px;
}
.footer-brand-desc {
  font-family:'Cormorant Garamond',serif; font-size:14.5px;
  color:var(--body); line-height:1.85; max-width:280px; margin-bottom:20px;
}
.footer-tagline-q {
  font-family:'Cormorant Garamond',serif; font-size:14px; font-style:italic;
  color:var(--gold); border-left:2px solid var(--gold); padding-left:14px;
  line-height:1.6; max-width:260px;
}
.footer-col-title {
  font-family:'Cinzel',serif; font-size:10.5px; letter-spacing:0.22em;
  color:var(--gold); text-transform:uppercase; margin-bottom:22px;
  padding-bottom:10px; border-bottom:1px solid rgba(201,168,76,0.15);
}
.footer-links li { margin-bottom:11px; }
.footer-links a {
  font-family:'Cormorant Garamond',serif; font-size:15px; color:var(--body);
  display:flex; align-items:center; gap:9px; transition:color 0.25s;
}
.footer-links a::before { content:'›'; color:var(--gold); font-size:17px; line-height:1; }
.footer-links a:hover { color:var(--gold); }
.footer-newsletter { margin-top:24px; }
.footer-newsletter .footer-col-title { margin-bottom:14px; }
.footer-news-row { display:flex; }
.footer-news-input {
  flex:1; background:rgba(201,168,76,0.05); border:1px solid rgba(201,168,76,0.2);
  border-right:none; color:var(--white); font-family:'Cormorant Garamond',serif; font-size:15px;
  padding:11px 14px; outline:none; transition:var(--transition);
}
.footer-news-input:focus { border-color:var(--gold); }
.footer-news-btn {
  background:var(--gold); color:#000; border:none; padding:0 18px;
  font-family:'Cinzel',serif; font-size:10px; letter-spacing:0.12em;
  text-transform:uppercase; transition:var(--transition);
}
.footer-news-btn:hover { background:var(--gold-light); }
.footer-socials { display:flex; gap:10px; margin-top:20px; }
.footer-social {
  width:36px; height:36px; border:1px solid rgba(201,168,76,0.25);
  display:flex; align-items:center; justify-content:center;
  color:var(--body); font-size:14px; transition:var(--transition);
}
.footer-social:hover { background:var(--gold); color:#000; border-color:var(--gold); }
.footer-bottom {
  max-width:1280px; margin:0 auto; padding:20px 32px 0;
  border-top:1px solid rgba(201,168,76,0.1);
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px;
}
.footer-copy { font-size:11px; color:var(--body); letter-spacing:0.07em; }
.footer-btm-links { display:flex; gap:20px; }
.footer-btm-links a { font-size:11px; color:var(--body); letter-spacing:0.07em; transition:color 0.2s; }
.footer-btm-links a:hover { color:var(--gold); }
.footer-mission-tag {
  font-family:'Cinzel',serif; font-size:10px; color:var(--gold);
  letter-spacing:0.14em; text-align:center;
}

/* ── SCROLL REVEAL ── */
.reveal { opacity:0; transform:translateY(36px); transition:opacity 0.75s ease, transform 0.75s ease; }
.reveal.from-left { transform:translateX(-36px); }
.reveal.from-right { transform:translateX(36px); }
.reveal.visible { opacity:1 !important; transform:none !important; }

/* ── SECTION PAD ── */
.sec-pad { padding:110px 0; }
.sec-pad-sm { padding:70px 0; }

/* ── GLASS BADGE ── */
.glass-badge {
  display:inline-flex; align-items:center; gap:10px;
  backdrop-filter:blur(18px); background:rgba(201,168,76,0.07);
  border:1px solid rgba(201,168,76,0.2); padding:10px 20px;
}
.glass-badge span {
  font-family:'Cinzel',serif; font-size:11px; letter-spacing:0.1em; color:var(--white);
}
.glass-badge i { color:var(--gold); font-size:14px; }

/* ── GOLD QUOTE ── */
.gold-quote {
  font-family:'Cormorant Garamond',serif; font-size:clamp(16px,1.8vw,22px);
  font-style:italic; color:var(--gold-light); line-height:1.75;
  border-left:3px solid var(--gold); padding-left:26px; margin:28px 0;
}

/* ── RESPONSIVE ── */
@media (max-width:1100px) {
  .footer-grid { grid-template-columns:1fr 1fr; gap:40px; }
}
@media (max-width:768px) {
  .container, .container-sm { padding:0 18px; }
  .topbar { display:none; }
  .nav-inner { padding:0 18px; height:62px; }
  /* Hide only desktop links and book CTA — hamburger stays visible */
  .nav-links { display:none; }
  .nav-book { display:none; }
  /* Keep nav-actions visible so hamburger (inside it) shows */
  .nav-actions { display:flex !important; align-items:center; }
  .hamburger { display:flex !important; }
  .stats-row { grid-template-columns:1fr 1fr; }
  .stat-cell { border-right:none; border-bottom:1px solid rgba(201,168,76,0.12); padding:14px; }
  .stat-cell:nth-child(odd) { border-right:1px solid rgba(201,168,76,0.12); }
  .footer-grid { grid-template-columns:1fr; gap:32px; }
  .footer-bottom { flex-direction:column; text-align:center; }
  .form-row { grid-template-columns:1fr; }
  .form-wrap { padding:32px 22px; }
  .sec-pad { padding:70px 0; }
}

/* end responsive */

/* ── TABLET NAV FIX (1024px) ── */
@media (max-width:1024px) {
  .nav-links > li > a { padding:10px 10px; font-size:10px; }
  .nav-logo-name { font-size:11px; }
}
@media (max-width:900px) {
  /* Hide desktop nav at tablet too, show hamburger */
  .nav-links { display:none; }
  .nav-book { display:none; }
  .nav-actions { display:flex !important; align-items:center; }
  .hamburger { display:flex !important; }
}

/* Local icon fallback if the Font Awesome webfont is blocked or slow */
body.fa-fallback i.fas::before,
body.fa-fallback i.fab::before {
  font-family:Arial,'Segoe UI Symbol',sans-serif !important;
  font-weight:700 !important;
  font-style:normal !important;
  display:inline-block;
  line-height:1;
}
body.fa-fallback .fa-hand-holding-heart::before { content:'♥'; }
body.fa-fallback .fa-book-open::before { content:'▤'; }
body.fa-fallback .fa-sun::before { content:'☼'; }
body.fa-fallback .fa-hashtag::before { content:'#'; }
body.fa-fallback .fa-home::before { content:'⌂'; }
body.fa-fallback .fa-moon::before { content:'◐'; }
body.fa-fallback .fa-gem::before { content:'◇'; }
body.fa-fallback .fa-heart::before { content:'♥'; }
body.fa-fallback .fa-graduation-cap::before { content:'▰'; }
body.fa-fallback .fa-microscope::before { content:'⌕'; }
body.fa-fallback .fa-users::before { content:'◉'; }
body.fa-fallback .fa-user::before,
body.fa-fallback .fa-user-lock::before { content:'●'; }
body.fa-fallback .fa-calendar-check::before { content:'✓'; }
body.fa-fallback .fa-certificate::before,
body.fa-fallback .fa-award::before,
body.fa-fallback .fa-medal::before,
body.fa-fallback .fa-trophy::before,
body.fa-fallback .fa-crown::before { content:'★'; }
body.fa-fallback .fa-globe::before { content:'◎'; }
body.fa-fallback .fa-envelope::before { content:'@'; }
body.fa-fallback .fa-whatsapp::before { content:'☎'; }
body.fa-fallback .fa-youtube::before,
body.fa-fallback .fa-play::before,
body.fa-fallback .fa-play-circle::before { content:'▶'; }
body.fa-fallback .fa-instagram::before { content:'◙'; }
body.fa-fallback .fa-facebook-f::before { content:'f'; }
body.fa-fallback .fa-telegram::before { content:'✈'; }
body.fa-fallback .fa-twitter::before { content:'x'; }
body.fa-fallback .fa-chevron-down::before { content:'⌄'; }
body.fa-fallback .fa-arrow-right::before { content:'→'; }
body.fa-fallback .fa-plus::before { content:'+'; }
body.fa-fallback .fa-check::before,
body.fa-fallback .fa-check-circle::before,
body.fa-fallback .fa-circle-check::before { content:'✓'; }
body.fa-fallback .fa-fire-flame-curved::before { content:'♦'; }
body.fa-fallback .fa-lock::before { content:'■'; }
body.fa-fallback .fa-redo::before { content:'↻'; }
body.fa-fallback .fa-file-invoice::before { content:'□'; }
body.fa-fallback .fa-credit-card::before { content:'▭'; }
body.fa-fallback .fa-mobile-alt::before { content:'▯'; }
body.fa-fallback .fa-google-pay::before { content:'G'; }
body.fa-fallback .fa-infinity::before { content:'∞'; }
body.fa-fallback .fa-shield-alt::before { content:'◆'; }
body.fa-fallback .fa-praying-hands::before { content:'✦'; }
body.fa-fallback .fa-search::before,
body.fa-fallback .fa-directions::before,
body.fa-fallback .fa-map-marker-alt::before { content:'⌕'; }
body.fa-fallback .fa-star::before { content:'★'; }

/* ASCII-safe fallback overrides for hosts with encoding issues */
body.fa-fallback .fa-hand-holding-heart::before { content:'H'; }
body.fa-fallback .fa-book-open::before { content:'B'; }
body.fa-fallback .fa-sun::before { content:'*'; }
body.fa-fallback .fa-hashtag::before { content:'#'; }
body.fa-fallback .fa-home::before { content:'^'; }
body.fa-fallback .fa-moon::before { content:'C'; }
body.fa-fallback .fa-gem::before { content:'D'; }
body.fa-fallback .fa-heart::before { content:'H'; }
body.fa-fallback .fa-graduation-cap::before { content:'G'; }
body.fa-fallback .fa-microscope::before { content:'R'; }
body.fa-fallback .fa-users::before { content:'U'; }
body.fa-fallback .fa-user::before,
body.fa-fallback .fa-user-lock::before { content:'U'; }
body.fa-fallback .fa-calendar-check::before { content:'OK'; }
body.fa-fallback .fa-certificate::before,
body.fa-fallback .fa-award::before,
body.fa-fallback .fa-medal::before,
body.fa-fallback .fa-trophy::before,
body.fa-fallback .fa-crown::before { content:'*'; }
body.fa-fallback .fa-globe::before { content:'O'; }
body.fa-fallback .fa-envelope::before { content:'@'; }
body.fa-fallback .fa-whatsapp::before { content:'W'; }
body.fa-fallback .fa-youtube::before,
body.fa-fallback .fa-play::before,
body.fa-fallback .fa-play-circle::before { content:'>'; }
body.fa-fallback .fa-instagram::before { content:'I'; }
body.fa-fallback .fa-facebook-f::before { content:'f'; }
body.fa-fallback .fa-telegram::before { content:'T'; }
body.fa-fallback .fa-twitter::before { content:'x'; }
body.fa-fallback .fa-chevron-down::before { content:'v'; }
body.fa-fallback .fa-arrow-right::before { content:'>'; }
body.fa-fallback .fa-plus::before { content:'+'; }
body.fa-fallback .fa-check::before,
body.fa-fallback .fa-check-circle::before,
body.fa-fallback .fa-circle-check::before { content:'Y'; }
body.fa-fallback .fa-fire-flame-curved::before { content:'F'; }
body.fa-fallback .fa-lock::before { content:'L'; }
body.fa-fallback .fa-redo::before { content:'R'; }
body.fa-fallback .fa-file-invoice::before { content:'P'; }
body.fa-fallback .fa-credit-card::before { content:'CC'; }
body.fa-fallback .fa-mobile-alt::before { content:'M'; }
body.fa-fallback .fa-google-pay::before { content:'G'; }
body.fa-fallback .fa-infinity::before { content:'8'; }
body.fa-fallback .fa-shield-alt::before { content:'S'; }
body.fa-fallback .fa-praying-hands::before { content:'P'; }
body.fa-fallback .fa-search::before,
body.fa-fallback .fa-directions::before,
body.fa-fallback .fa-map-marker-alt::before { content:'?'; }
body.fa-fallback .fa-star::before { content:'*'; }

/* ── SWEETALERT2 BRAND OVERRIDE ── */
.swal-dpiph { border: 1px solid rgba(201,168,76,0.3) !important; border-radius: 4px !important; }
.swal-dpiph .swal2-title { font-family: 'Cinzel', serif !important; color: #E8C96A !important; font-size: 20px !important; }
.swal-dpiph .swal2-html-container { font-family: 'Cormorant Garamond', serif !important; font-size: 16px !important; }
.swal-dpiph .swal2-confirm { font-family: 'Cinzel', serif !important; font-size: 12px !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; border-radius: 2px !important; }
.swal-dpiph .swal2-icon.swal2-success { border-color: #C9A84C !important; color: #C9A84C !important; }
.swal-dpiph .swal2-icon.swal2-success [class^='swal2-success-line'] { background-color: #C9A84C !important; }
.swal-dpiph .swal2-icon.swal2-success .swal2-success-ring { border-color: rgba(201,168,76,0.3) !important; }
