/* ── Design tokens ── */
:root {
  --navy:   #06121e;
  --navy2:  #0a1c2e;
  --navy3:  #0f2438;
  --navy4:  #162f47;
  --gold:   #007a8a;
  --gold2:  #00c4d8;
  --red:    #e8502a;
  --bg:     #f7f6f2;
  --surface:#ffffff;
  --surf2:  #faf9f6;
  --bdr:    #e4e0d8;
  --text:   #1a1a2e;
  --mid:    #64647a;
  --soft:   #9898aa;
  --t:      0.22s cubic-bezier(0.4,0,0.2,1);
  --r:      14px;
   --ink:      #06121e;
  --ink2:     #0a1c2e;
  --ink3:     #0f2438;
  --ink4:     #162f47;
  --teal:     #007a8a;
  --teal2:    #009eb0;
  --teal3:    #00c4d8;
  --teal-lt:  rgba(0,158,176,0.12);
  --coral:    #e8502a;
  --coral2:   #ff6b45;
  --sand:     #f5ede0;
  --sand2:    #fdf8f2;
  --flamingo: #e8406a;
  --white:    #ffffff;
  --mist:     #8fa8bc;
  --dim:      #4a6478;
  --border:   rgba(0,158,176,0.18);
  --radius:   16px;
  --trans:    0.22s cubic-bezier(.4,0,.2,1);
}

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'DM Sans',sans-serif; background:var(--bg); color:var(--text); -webkit-font-smoothing:antialiased; min-height:100vh; }

/* ─── NAVBAR ─── */
.navbar {
  position:sticky; top:0; z-index:200;
  height:68px; display:flex; align-items:center; justify-content:space-between;
  padding:0 48px;
  background:rgba(6,9,26,0.97); backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(0,158,176,0.15);
}
.nav-logo { display:flex; align-items:center; gap:10px; text-decoration:none; }
.logo-badge { background:var(--red); color:#fff; font-size:14px; font-weight:700; padding:4px 10px; border-radius:6px; letter-spacing:.3px; }
.logo-text { font-family:'Cormorant Garamond',serif; font-size:20px; font-weight:700; color:#fff; }
.logo-text span { color:var(--gold2); }
.nav-right { display:flex; align-items:center; gap:12px; }
.nav-back { font-size:12px; font-weight:600; color:rgba(255,255,255,0.5); text-decoration:none; padding:8px 16px; border-radius:100px; border:1px solid rgba(255,255,255,0.1); transition:all var(--t); }
.nav-back:hover { color:var(--gold2); border-color:rgba(0,158,176,0.3); background:rgba(0,158,176,0.06); }
.nav-call { display:flex; align-items:center; gap:8px; background:linear-gradient(135deg,var(--red),#e8432a); color:#fff; text-decoration:none; padding:9px 18px; border-radius:100px; font-size:13px; font-weight:700; box-shadow:0 4px 16px rgba(212,52,26,0.4); transition:all var(--t); }
.nav-call:hover { transform:translateY(-1px); box-shadow:0 6px 22px rgba(212,52,26,0.55); }

/* ─── HERO ─── */
.hero {
  background:linear-gradient(135deg, var(--navy2), var(--navy3) 50%, var(--navy4));
  border-bottom:4px solid var(--gold);
  padding:56px 48px 52px;
  position:relative; overflow:hidden;
}
.hero::before {
  content:''; position:absolute; inset:0;
  background:
    radial-gradient(ellipse 55% 90% at 85% 50%, rgba(0,158,176,0.07), transparent),
    radial-gradient(ellipse 30% 60% at 10% 80%, rgba(212,52,26,0.05), transparent);
  pointer-events:none;
}
/* Gold dot pattern */
.hero::after {
  content:''; position:absolute; inset:0;
  background-image: radial-gradient(rgba(0,158,176,0.12) 1px, transparent 1px);
  background-size:32px 32px;
  pointer-events:none;
}
.hero-inner { max-width:1100px; margin:0 auto; position:relative; z-index:1; }
.hero-eyebrow { font-size:10px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--gold2); margin-bottom:12px; display:block; }
.hero-title { font-family:'Cormorant Garamond',serif; font-size:clamp(30px,4.5vw,54px); font-weight:700; color:#fff; line-height:1.08; margin-bottom:14px; }
.hero-title em { color:var(--gold2); font-style:italic; }
.hero-sub { font-size:14px; color:rgba(255,255,255,0.5); max-width:520px; line-height:1.7; margin-bottom:28px; }

/* Hero channel chips */
.hero-chips { display:flex; flex-wrap:wrap; gap:10px; }
.hero-chip { display:flex; align-items:center; gap:7px; background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.12); border-radius:100px; padding:8px 18px; font-size:12px; font-weight:600; color:rgba(255,255,255,0.7); text-decoration:none; cursor:pointer; transition:all var(--t); }
.hero-chip:hover { background:rgba(0,158,176,0.12); border-color:rgba(0,158,176,0.4); color:var(--gold2); }
.hero-chip-dot { width:7px; height:7px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 2px rgba(34,197,94,0.25); flex-shrink:0; }
.hero-chip-icon { font-size:14px; }

/* ─── BODY LAYOUT — equal two-column grid ─── */
.page-body {
  max-width: 1140px;
  margin: 0 auto;
  padding: 40px 48px 90px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: start;
}

/* ─── FORM CARD ─── */
.form-card {
  background:var(--surface);
  border:1px solid var(--bdr);
  border-radius:20px;
  box-shadow:0 4px 32px rgba(0,0,0,0.07), 0 1px 4px rgba(0,0,0,0.04);
  overflow:hidden;
}
.form-card-header {
  background:linear-gradient(135deg, var(--navy), var(--navy4));
  padding:22px 28px;
  border-bottom:3px solid var(--gold);
}
.form-card-title { font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:700; color:#fff; margin-bottom:4px; }
.form-card-sub   { font-size:12px; color:rgba(255,255,255,0.45); line-height:1.6; }

.form-body { padding:24px 28px 28px; }

/* Form rows */
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-row.single { grid-template-columns:1fr; }

/* Field */
.field-group { display:flex; flex-direction:column; gap:5px; margin-bottom:15px; }
.field-label { font-size:12px; font-weight:700; color:var(--text); letter-spacing:.3px; }
.field-label span { color:var(--red); margin-left:2px; }
.field-input, .field-select, .field-textarea {
  width:100%;
  background:var(--surf2);
  border:1.5px solid var(--bdr);
  border-radius:10px;
  padding:11px 14px;
  font-family:'DM Sans',sans-serif;
  font-size:13px;
  color:var(--text);
  transition:border-color .18s, box-shadow .18s;
  outline:none;
  appearance:none;
}
.field-input::placeholder, .field-textarea::placeholder { color:var(--soft); }
.field-input:focus, .field-select:focus, .field-textarea:focus {
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(0,158,176,0.12);
  background:var(--surface);
}
.field-input.error, .field-select.error, .field-textarea.error {
  border-color:var(--red);
  box-shadow:0 0 0 3px rgba(212,52,26,0.1);
}
.field-textarea { resize:vertical; min-height:130px; line-height:1.6; }

/* Select arrow */
.select-wrap { position:relative; }
.select-wrap::after { content:'▾'; position:absolute; right:14px; top:50%; transform:translateY(-50%); font-size:12px; color:var(--soft); pointer-events:none; }
.field-select { cursor:pointer; padding-right:34px; }

/* Field error hint */
.field-error { font-size:11px; color:var(--red); font-weight:600; display:none; }
.field-error.show { display:block; }

/* Urgency callout */
.urgency-box {
  background:#fff8f5;
  border:1px solid rgba(212,52,26,0.2);
  border-left:4px solid var(--red);
  border-radius:10px;
  padding:14px 16px;
  display:flex; gap:12px;
  margin-bottom:22px;
}
.urgency-icon { font-size:18px; flex-shrink:0; margin-top:1px; }
.urgency-title { font-size:12px; font-weight:700; color:#9a1f0a; margin-bottom:3px; }
.urgency-text  { font-size:11px; color:var(--mid); line-height:1.6; }
.urgency-text a { color:#8a6800; font-weight:600; text-decoration:none; }
.urgency-text a:hover { text-decoration:underline; }

/* Consent checkbox */
.consent-row { display:flex; align-items:flex-start; gap:10px; margin-bottom:22px; }
.consent-row input[type=checkbox] { width:16px; height:16px; border-radius:4px; border:2px solid var(--bdr); cursor:pointer; flex-shrink:0; margin-top:2px; accent-color:var(--gold); }
.consent-label { font-size:12px; color:var(--mid); line-height:1.6; }
.consent-label a { color:#8a6800; text-decoration:none; font-weight:600; }

/* Submit button */
.submit-btn {
  width:100%; padding:15px 24px;
  background:linear-gradient(135deg, var(--navy), var(--navy4));
  color:#fff; border:none; border-radius:12px;
  font-family:'DM Sans',sans-serif; font-size:14px; font-weight:700;
  letter-spacing:.3px; cursor:pointer;
  display:flex; align-items:center; justify-content:center; gap:10px;
  transition:all var(--t);
  position:relative; overflow:hidden;
}
.submit-btn::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, var(--gold), var(--gold2));
  opacity:0; transition:opacity var(--t);
}
.submit-btn:hover::before { opacity:1; }
.submit-btn:hover { color:var(--navy); box-shadow:0 8px 28px rgba(0,158,176,0.35); transform:translateY(-1px); }
.submit-btn span { position:relative; z-index:1; }
.submit-btn.loading { pointer-events:none; opacity:0.75; }
.submit-spinner { width:18px; height:18px; border:2.5px solid rgba(255,255,255,0.3); border-top-color:#fff; border-radius:50%; animation:spin .7s linear infinite; position:relative; z-index:1; }
@keyframes spin { to { transform:rotate(360deg); } }

/* Success state */
.form-success {
  display:none;
  flex-direction:column; align-items:center;
  text-align:center; padding:48px 32px;
  gap:16px;
}
.form-success.show { display:flex; }
.success-circle {
  width:72px; height:72px; border-radius:50%;
  background:linear-gradient(135deg, #15803d, #22c55e);
  display:flex; align-items:center; justify-content:center;
  font-size:32px;
  box-shadow:0 8px 28px rgba(34,197,94,0.3);
  animation:popIn .4s cubic-bezier(0.34,1.56,0.64,1) both;
}
@keyframes popIn { from{opacity:0;transform:scale(0.5)} to{opacity:1;transform:scale(1)} }
.success-title { font-family:'Cormorant Garamond',serif; font-size:26px; font-weight:700; color:var(--text); }
.success-sub { font-size:13px; color:var(--mid); line-height:1.7; max-width:360px; }
.success-ref { font-size:11px; font-weight:700; background:rgba(0,158,176,0.1); border:1px solid rgba(0,158,176,0.25); border-radius:8px; padding:8px 16px; color:#8a6800; letter-spacing:.5px; }
.success-back { font-size:13px; font-weight:600; color:var(--mid); cursor:pointer; text-decoration:underline; }

/* ─── RIGHT SIDEBAR ─── */
.sidebar-col { display:flex; flex-direction:column; gap:16px; }

/* Contact channels */
.channel-card {
  background:var(--surface); border:1px solid var(--bdr); border-radius:16px;
  padding:20px; box-shadow:0 2px 16px rgba(0,0,0,0.05);
}
.channel-card-title { font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:700; color:var(--text); margin-bottom:3px; }
.channel-card-sub   { font-size:11px; color:var(--mid); margin-bottom:14px; line-height:1.5; }
.channel-list { display:flex; flex-direction:column; gap:8px; }
.channel-item {
  display:flex; align-items:center; gap:12px;
  background:var(--surf2); border:1px solid var(--bdr); border-radius:10px;
  padding:11px 13px; text-decoration:none; color:inherit; cursor:pointer;
  transition:all var(--t);
}
.channel-item:hover { border-color:rgba(0,158,176,0.3); background:rgba(0,158,176,0.04); box-shadow:0 4px 16px rgba(0,0,0,0.06); transform:translateX(3px); }
.ch-ico { width:34px; height:34px; border-radius:9px; display:flex; align-items:center; justify-content:center; font-size:15px; flex-shrink:0; }
.ch-ico.tel   { background:linear-gradient(135deg,#e8502a,#e8432a); }
.ch-ico.wa    { background:linear-gradient(135deg,#128c7e,#25d366); }
.ch-ico.email { background:linear-gradient(135deg,#1d4ed8,#3b82f6); }
.ch-ico.chat  { background:linear-gradient(135deg,var(--navy3),var(--navy4)); border:1px solid rgba(0,158,176,0.2); }
.ch-body { flex:1; }
.ch-label { font-size:12px; font-weight:700; color:var(--text); margin-bottom:1px; }
.ch-val   { font-size:10px; color:var(--mid); }
.ch-arr   { font-size:14px; color:var(--soft); transition:all var(--t); }
.channel-item:hover .ch-arr { color:var(--gold); transform:translateX(3px); }

/* Online status badge */
.online-badge {
  display:inline-flex; align-items:center; gap:5px;
  font-size:10px; font-weight:700; letter-spacing:.5px;
  color:#15803d; background:#f0fdf4; border:1px solid rgba(21,128,61,0.2);
  border-radius:100px; padding:3px 9px; margin-top:2px;
}
.online-dot { width:6px; height:6px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 2px rgba(34,197,94,0.25); flex-shrink:0; }

/* Hours card */
.hours-card {
  background:var(--surface); border:1px solid var(--bdr); border-radius:16px;
  padding:20px; box-shadow:0 2px 16px rgba(0,0,0,0.05);
}
.hours-title { font-size:12px; font-weight:700; color:var(--text); margin-bottom:12px; letter-spacing:.3px; }
.hours-row { display:flex; justify-content:space-between; align-items:center; padding:8px 0; border-bottom:1px solid var(--bdr); font-size:12px; }
.hours-row:last-child { border-bottom:none; }
.hours-day { color:var(--mid); font-weight:500; }
.hours-time { font-weight:700; color:var(--text); }
.hours-time.open { color:#15803d; }

/* Disclaimer note */
.disclaimer-note {
  background:var(--surf2); border:1px solid var(--bdr); border-radius:12px;
  padding:14px 16px; font-size:11px; color:var(--soft); line-height:1.7;
}
.disclaimer-note strong { color:var(--mid); }

/* ─── FOOTER ─── */
footer { background:var(--navy); border-top:3px solid var(--gold); padding:28px 48px; }
.footer-inner { max-width:1100px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.footer-copy { font-size:11px; color:rgba(255,255,255,0.28); line-height:1.6; }
.footer-copy strong { color:rgba(255,255,255,0.45); }
.footer-links { display:flex; gap:20px; flex-wrap:wrap; }
.footer-links a { font-size:11px; color:rgba(255,255,255,0.28); text-decoration:none; transition:color var(--t); }
.footer-links a:hover { color:var(--gold2); }

/* ─── RESPONSIVE ─── */
@media(max-width:900px) {
  .page-body { grid-template-columns:1fr; padding:24px 20px 60px; }
  .navbar { padding:0 20px; }
  .hero { padding:36px 20px 32px; }
  footer { padding:24px 20px; }
}
@media(max-width:540px) {
  .form-row { grid-template-columns:1fr; }
  .hero-chips { gap:8px; }
}

/* ─── ANIMATIONS ─── */
@keyframes fadeUp { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
.fade-in   { animation:fadeUp .5s ease both; }
.fade-in-2 { animation:fadeUp .5s .1s ease both; }
.fade-in-3 { animation:fadeUp .5s .2s ease both; }
.fade-in-4 { animation:fadeUp .5s .3s ease both; }

/* ── ABSOLUTE HOLIDAYS WORDMARK (rebrand) ── */
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.ah-logo-mark{flex-shrink:0;}
.ah-logo-words{display:flex;flex-direction:column;line-height:1;}
.ah-logo-l1{font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#00c4d8;}
.ah-logo-l2{font-family:'Playfair Display','Cormorant Garamond',serif;font-size:20px;font-weight:700;font-style:italic;color:#fff;}



/* ============ MEGA FOOTER v2 ============ */
.ah-footer{background:linear-gradient(180deg,var(--navy,#06121e),#040d16);border-top:1px solid var(--border,rgba(0,158,176,0.18));margin-top:auto;}
.ah-foot-trust{border-bottom:1px solid rgba(0,158,176,0.14);padding:26px 24px 24px;background:rgba(0,158,176,0.035);}
.ah-foot-trust-head{text-align:center;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold2,#00c4d8);margin-bottom:18px;}
.ah-foot-trust-inner{max-width:1180px;margin:0 auto;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:stretch;}
.ah-badge{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,0.04);border:1px solid rgba(0,158,176,0.16);border-radius:12px;padding:10px 14px;transition:all .2s;text-decoration:none;}
.ah-badge:hover{background:rgba(0,158,176,0.1);border-color:rgba(0,196,216,0.4);transform:translateY(-2px);}
.ah-badge-ic{font-size:22px;line-height:1;}
.ah-badge div{display:flex;flex-direction:column;line-height:1.25;}
.ah-badge b{font-size:12.5px;font-weight:700;color:#fff;}
.ah-badge span{font-size:10px;color:var(--mid,#8890aa);}
.ah-badge-tp{background:rgba(0,182,122,0.1);border-color:rgba(0,182,122,0.35);}
.ah-badge-tp b{color:#fff;}.ah-badge-tp span{color:#3ddc97;font-weight:600;}
.ah-foot-main{max-width:1180px;margin:0 auto;padding:44px 24px 30px;display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1fr;gap:34px;}
.ah-foot-brand{max-width:320px;}
.ah-foot-logo{display:flex;align-items:center;gap:12px;margin-bottom:15px;}
.ah-foot-logo>span{display:flex;flex-direction:column;line-height:1;}
.ah-foot-l1{font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--gold2,#00c4d8);}
.ah-foot-l2{font-family:'Playfair Display',Georgia,serif;font-size:22px;font-weight:700;font-style:italic;color:#fff;}
.ah-foot-desc{font-size:13px;line-height:1.75;color:var(--mid,#8890aa);margin-bottom:16px;}
.ah-foot-call{display:block;font-size:16px;font-weight:700;color:var(--gold2,#00c4d8);margin-bottom:6px;}
.ah-foot-email{display:block;font-size:13px;color:var(--mid,#8890aa);margin-bottom:16px;transition:color .2s;}
.ah-foot-email:hover{color:var(--gold2,#00c4d8);}
.ah-foot-social{display:flex;gap:10px;}
.ah-foot-social a{width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,0.06);border:1px solid rgba(0,158,176,0.2);display:flex;align-items:center;justify-content:center;color:#9fb2c2;transition:all .22s;}
.ah-foot-social a:hover{background:linear-gradient(135deg,var(--gold,#007a8a),var(--gold2,#00c4d8));color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,158,176,0.4);}
.ah-foot-title{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;margin-bottom:15px;}
.ah-foot-col a{display:block;font-size:13px;color:var(--mid,#8890aa);padding:5px 0;transition:color .2s,padding-left .2s;}
.ah-foot-col a:hover{color:var(--gold2,#00c4d8);padding-left:4px;}
.ah-foot-bottom{border-top:1px solid rgba(0,158,176,0.14);padding:18px 24px;}
.ah-foot-bottom-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.ah-foot-copy{font-size:11px;color:var(--mid,#8890aa);line-height:1.6;}
.ah-foot-legal{display:flex;gap:18px;flex-wrap:wrap;}
.ah-foot-legal a{font-size:11.5px;color:var(--mid,#8890aa);transition:color .2s;}
.ah-foot-legal a:hover{color:var(--gold2,#00c4d8);}
@media(max-width:900px){.ah-foot-main{grid-template-columns:1fr 1fr;gap:28px;}.ah-foot-brand{grid-column:1/-1;max-width:none;}}
@media(max-width:560px){.ah-foot-main{grid-template-columns:1fr 1fr;}.ah-foot-trust-inner{gap:10px;}.ah-foot-bottom-inner{flex-direction:column;text-align:center;}.ah-foot-copy{text-align:center;}}
:root[data-theme="light"] .ah-footer{background:linear-gradient(180deg,#06121e,#040d16);}

/* ============ CHAT WIDGET ============ */
.ah-chat{position:fixed;right:22px;bottom:22px;z-index:9000;font-family:'DM Sans',sans-serif;}
.ah-chat-fab{position:relative;width:60px;height:60px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--gold,#007a8a),var(--gold2,#00c4d8));color:#fff;cursor:pointer;box-shadow:0 8px 28px rgba(0,158,176,0.45);transition:transform .2s;display:flex;align-items:center;justify-content:center;}
.ah-chat-fab:hover{transform:scale(1.07);}
.ah-chat-fab-ic{font-size:26px;}
.ah-chat-fab-badge{position:absolute;top:-2px;right:-2px;background:var(--red,#e8502a);color:#fff;font-size:11px;font-weight:700;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--navy,#06121e);}
.ah-chat-panel{position:absolute;right:0;bottom:74px;width:340px;max-width:calc(100vw - 32px);background:var(--navy2,#0a1c2e);border:1px solid var(--border,rgba(0,158,176,0.18));border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,0.5);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(12px);transition:all .25s;}
.ah-chat-panel.open{opacity:1;visibility:visible;transform:translateY(0);}
.ah-chat-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,var(--gold,#007a8a),var(--gold2,#00c4d8));}
.ah-chat-agent{display:flex;align-items:center;gap:10px;}
.ah-chat-av{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,0.2);display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;font-size:14px;}
.ah-chat-name{font-size:14px;font-weight:700;color:#fff;}
.ah-chat-status{font-size:11px;color:rgba(255,255,255,0.85);}
.ah-chat-x{background:none;border:none;color:#fff;font-size:16px;cursor:pointer;opacity:.85;}
.ah-chat-body{padding:16px;height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;}
.ah-chat-msg{max-width:84%;padding:10px 13px;border-radius:13px;font-size:13px;line-height:1.5;}
.ah-chat-msg.bot{background:var(--navy3,#0f2438);color:#e7eef5;align-self:flex-start;border-bottom-left-radius:4px;}
.ah-chat-msg.user{background:linear-gradient(135deg,var(--gold,#007a8a),var(--gold2,#00c4d8));color:#fff;align-self:flex-end;border-bottom-right-radius:4px;}
.ah-chat-quick{display:flex;flex-direction:column;gap:7px;margin-top:4px;}
.ah-chat-quick button{text-align:left;background:rgba(0,158,176,0.1);border:1px solid var(--border,rgba(0,158,176,0.18));color:var(--gold2,#00c4d8);font-size:12.5px;font-weight:600;padding:9px 12px;border-radius:10px;cursor:pointer;transition:all .2s;font-family:inherit;}
.ah-chat-quick button:hover{background:rgba(0,158,176,0.2);}
.ah-chat-foot{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--border,rgba(0,158,176,0.18));}
.ah-chat-foot input{flex:1;background:var(--navy3,#0f2438);border:1px solid var(--border,rgba(0,158,176,0.18));border-radius:10px;padding:10px 12px;color:#fff;font-size:13px;outline:none;font-family:inherit;}
.ah-chat-foot input:focus{border-color:var(--gold,#007a8a);}
.ah-chat-foot button{width:40px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--gold,#007a8a),var(--gold2,#00c4d8));color:#fff;font-size:15px;cursor:pointer;}
.ah-chat-callnote{text-align:center;font-size:11.5px;color:var(--mid,#8890aa);padding:0 14px 12px;}
.ah-chat-callnote a{color:var(--gold2,#00c4d8);font-weight:700;}
@media(max-width:480px){.ah-chat{right:16px;bottom:16px;}.ah-chat-fab{width:54px;height:54px;}.ah-chat-fab-ic{font-size:23px;}.ah-chat-panel{bottom:66px;}}

/* light theme support for shared blocks */
:root[data-theme="light"] .ah-footer{background:#06121e;}
:root[data-theme="light"] .ah-chat-panel{background:#ffffff;}
:root[data-theme="light"] .ah-chat-msg.bot{background:#eef2f5;color:#15212e;}
:root[data-theme="light"] .ah-chat-body{background:#fff;}
:root[data-theme="light"] .ah-chat-foot input{background:#f4f6f8;color:#15212e;}


/* ============ SHARED HEADER ============ */
.ah-nav{position:sticky;top:0;z-index:500;height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:rgba(6,18,30,0.97);backdrop-filter:blur(18px);border-bottom:1px solid var(--border,rgba(0,158,176,0.18));font-family:'DM Sans',sans-serif;}
.ah-nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0;}
.ah-nav-words{display:flex;flex-direction:column;line-height:1;}
.ah-nav-l1{font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--gold2,#00c4d8);}
.ah-nav-l2{font-family:'Playfair Display',Georgia,serif;font-size:20px;font-weight:700;font-style:italic;color:#fff;}
.ah-nav-links{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0;}
.ah-nav-links a{font-size:13.5px;font-weight:600;color:#cdd8e3;text-decoration:none;transition:color .2s;white-space:nowrap;}
.ah-nav-links a:hover{color:var(--gold2,#00c4d8);}
.ah-nav-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.ah-nav-signin{font-size:13.5px;font-weight:600;color:#cdd8e3;text-decoration:none;white-space:nowrap;}
.ah-nav-signin:hover{color:var(--gold2,#00c4d8);}
.ah-nav-call{display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,var(--gold,#007a8a),var(--gold2,#00c4d8));color:#fff;padding:9px 17px;border-radius:100px;font-size:13px;font-weight:700;text-decoration:none;box-shadow:0 4px 14px rgba(0,158,176,0.35);white-space:nowrap;transition:transform .2s;}
.ah-nav-call:hover{transform:translateY(-1px);}
.ah-nav-burger{display:none;background:none;border:none;color:#fff;font-size:23px;cursor:pointer;padding:0 4px;}
@media(max-width:1040px){.ah-nav-links{gap:18px;}.ah-nav-links a{font-size:13px;}}
@media(max-width:900px){
  .ah-nav-links{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:var(--navy2,#0a1c2e);border-bottom:1px solid var(--border,rgba(0,158,176,0.18));padding:8px 0;box-shadow:0 16px 40px rgba(0,0,0,0.4);}
  .ah-nav-links.ah-open{display:flex;}
  .ah-nav-links li{width:100%;}
  .ah-nav-links a{display:block;padding:13px 32px;width:100%;font-size:14.5px;}
  .ah-nav-links a:hover{background:rgba(0,158,176,0.1);}
  .ah-nav-burger{display:inline-block;}
  .ah-nav-signin{display:none;}
}
@media(max-width:520px){.ah-nav{padding:0 16px;}.ah-nav-call{padding:8px 13px;font-size:12px;}}
:root[data-theme="light"] .ah-nav{background:rgba(10,28,46,0.98);}


.office-section {
    background: var(--surface);
    border-top: 1px solid var(--bdr);
    border-bottom: 1px solid var(--bdr);
}

.office-container {
    max-width: 1140px;
    margin: 0 auto;
    padding: 36px 48px;
}

/* Header */

.section-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
}

.header-accent {
    width: 4px;
    height: 32px;
    border-radius: 4px;
    flex-shrink: 0;
    background: linear-gradient(
        135deg,
        var(--gold),
        var(--gold2)
    );
}

.section-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: var(--soft);
    margin-bottom: 2px;
}

.section-title {
    font-family: "Cormorant Garamond", serif;
    font-size: 22px;
    font-weight: 700;
    color: var(--text);
}

/* Grid */

.office-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1.4fr;
    gap: 24px;
    align-items: stretch;
}

/* Cards */

.info-card,
.contact-card {
    background: var(--surf2);
    border: 1px solid var(--bdr);
    border-radius: 14px;
    padding: 22px 24px;
}

.contact-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Company */

.company-name {
    font-size: 15px;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 10px;
}

.company-address {
    font-size: 13px;
    color: var(--mid);
    line-height: 1.85;
    margin-bottom: 16px;
}

.registration-block {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 16px;
}

.card-label {
    font-size: 11px;
    font-weight: 600;
    color: var(--soft);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 2px;
}

.registration-item {
    font-size: 12px;
    color: var(--mid);
}

.registration-item strong,
.privacy-note strong {
    color: var(--text);
}

.privacy-note {
    font-size: 11px;
    color: var(--soft);
    line-height: 1.6;
    padding-top: 12px;
    border-top: 1px solid var(--bdr);
}

.privacy-link {
    color: #8a6800;
    font-weight: 600;
    text-decoration: none;
}

/* Contact */

.contact-title {
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 4px;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    background: var(--surface);
    border: 1px solid var(--bdr);
    border-radius: 10px;
    text-decoration: none;
    color: inherit;
    transition: all var(--t);
}

.contact-item:hover {
    border-color: rgba(0, 158, 176, 0.4);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

.contact-icon {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex-shrink: 0;
}

.phone-icon {
    background: linear-gradient(135deg, #e8502a, #e8432a);
}

.whatsapp-icon {
    background: linear-gradient(135deg, #128c7e, #25d366);
}

.email-icon {
    background: linear-gradient(135deg, #1d4ed8, #3b82f6);
}

.contact-heading {
    font-size: 12px;
    font-weight: 700;
    color: var(--text);
}

.contact-text {
    font-size: 11px;
    color: var(--mid);
    margin-top: 1px;
}

/* Online Status */

.online-status {
    margin-top: 4px;
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 9px 12px;
    border-radius: 8px;
    background: #f3faf5;
    border: 1px solid rgba(21, 128, 61, 0.18);
    font-size: 11px;
    font-weight: 600;
    color: #15803d;
}

.status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
    background: #22c55e;
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.2);
}

/* Map */

.map-wrapper {
    position: relative;
    overflow: hidden;
    min-height: 280px;
    border-radius: 14px;
    border: 1px solid var(--bdr);
    box-shadow: 0 2px 16px rgba(0, 0, 0, 0.06);
}

.map-wrapper iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

/* Responsive */

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

    .map-wrapper {
        min-height: 350px;
    }
}

@media (max-width: 576px) {
    .office-container {
        padding: 24px 18px;
    }

    .section-title {
        font-size: 20px;
    }
}
