/* ── Explore / Zones Page ── */
.explore-hero {
  background: linear-gradient(155deg, #060e26 0%, #0D1B3E 50%, #1e0c38 100%);
  padding: 64px 32px 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.explore-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 40px 40px;
}
.explore-hero-inner { position: relative; z-index: 1; }
.explore-hero h1 { font-family: var(--font-display); font-size: clamp(26px, 4vw, 48px); font-weight: 700; color: #fff; margin-bottom: 12px; letter-spacing: -.025em; }
.explore-hero p { font-size: 17px; color: rgba(255,255,255,.52); max-width: 520px; margin: 0 auto 32px; line-height: 1.7; }
.explore-search {
  max-width: 520px;
  margin: 0 auto 52px;
  display: flex;
  background: #fff;
  border-radius: var(--r-sm);
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,.3);
}
.explore-search input { flex: 1; padding: 14px 18px; border: none; outline: none; font-size: 14px; font-family: var(--font-body); color: var(--gray-900); }
.explore-search input::placeholder { color: var(--gray-400); }
.explore-search button { padding: 0 28px; background: var(--red); color: #fff; border: none; font-size: 14px; font-weight: 600; cursor: pointer; font-family: var(--font-body); transition: background .2s; }
.explore-search button:hover { background: var(--red-d); }

/* Zone Tabs Bar */
.z-tabs-bar {
  background: var(--white);
  border-bottom: 2px solid var(--gray-100);
  position: sticky;
  top: var(--nav-h);
  z-index: 50;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
.z-tabs-inner {
  max-width: var(--max-w);
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  overflow-x: auto;
  scrollbar-width: none;
}
.z-tabs-inner::-webkit-scrollbar { display: none; }
.z-tab {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 14px 16px 10px;
  font-size: 12px;
  font-weight: 600;
  color: var(--gray-400);
  background: none;
  border: none;
  border-bottom: 2.5px solid transparent;
  margin-bottom: -2px;
  cursor: pointer;
  white-space: nowrap;
  transition: all .2s;
  font-family: var(--font-body);
}
.z-tab .z-icon { font-size: 18px; line-height: 1; }
.z-tab:hover { color: var(--navy); }
.z-tab.active { color: var(--navy); border-color: var(--red); }

/* Zone Panels */
.zone-panel { display: none; }
.zone-panel.active { display: block; }
.zp-inner { max-width: var(--max-w); margin: 0 auto; padding: 48px 32px 72px; }

.zd-hero {
  background: linear-gradient(155deg, var(--navy-light), #dde5ff);
  border-radius: var(--r-xl);
  padding: 48px 52px;
  margin-bottom: 40px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 48px;
  align-items: center;
}
.zd-title { font-family: var(--font-display); font-size: clamp(22px, 3vw, 36px); font-weight: 700; color: var(--gray-900); margin: 10px 0 14px; letter-spacing: -.025em; }
.zd-desc { font-size: 15px; color: var(--gray-600); line-height: 1.78; max-width: 560px; margin-bottom: 8px; }
.zd-extra { font-size: 14px; color: var(--gray-500); line-height: 1.78; max-width: 560px; margin-top: 8px; }
.zd-more-btn { font-size: 13px; font-weight: 600; color: var(--navy); background: none; border: none; cursor: pointer; padding: 4px 0; margin: 4px 0 14px; display: block; transition: color .15s; }
.zd-more-btn:hover { color: var(--red); }
.zd-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.zd-hero-icon { font-size: 100px; text-align: center; line-height: 1; }

/* Locality Cards */
.loc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 22px; margin-bottom: 48px; }
.loc-card { display: flex; flex-direction: column; }
.loc-thumb {
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
}
.loc-icon { font-size: 72px; position: relative; z-index: 1; }
.loc-overlay { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(to top, rgba(0,0,0,.6), transparent 70%); padding: 14px; display: flex; align-items: flex-end; justify-content: space-between; z-index: 2; }
.loc-name { font-family: var(--font-display); font-size: 18px; font-weight: 700; color: #fff; }
.loc-rating { background: rgba(255,255,255,.95); border-radius: var(--r-full); padding: 3px 10px; font-size: 12px; font-weight: 700; color: var(--gray-900); }
.loc-body { padding: 20px; flex: 1; display: flex; flex-direction: column; gap: 12px; }
.loc-desc { font-size: 13px; color: var(--gray-600); line-height: 1.7; }
.loc-types { display: flex; gap: 6px; flex-wrap: wrap; }
.loc-price-row { display: flex; justify-content: space-between; align-items: flex-start; padding: 12px 0; border-top: 1px solid var(--gray-100); border-bottom: 1px solid var(--gray-100); }
.loc-price-label { font-family: var(--font-mono); font-size: 9px; text-transform: uppercase; letter-spacing: .12em; color: var(--gray-400); margin-bottom: 4px; }
.loc-price { font-family: var(--font-display); font-size: 14px; font-weight: 700; color: var(--gray-900); }
.loc-trend { font-size: 13px; font-weight: 700; color: var(--green); }
.loc-specs { display: flex; gap: 6px; flex-wrap: wrap; }
.loc-spec { font-size: 11px; color: var(--green); font-weight: 600; }

/* Price Map */
.price-map-section { background: var(--gray-50); border-radius: var(--r-xl); padding: 40px; margin-top: 0; }
.price-map-section h3 { font-family: var(--font-display); font-size: 24px; font-weight: 700; color: var(--gray-900); margin-bottom: 24px; }
.price-map-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 14px; margin-bottom: 16px; }
.pm-card { background: var(--white); border-radius: var(--r-md); padding: 18px; border: 1px solid var(--gray-200); transition: all .25s; }
.pm-card:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.pm-area { font-family: var(--font-mono); font-size: 9px; text-transform: uppercase; letter-spacing: .12em; color: var(--gray-400); margin-bottom: 6px; }
.pm-price { font-family: var(--font-display); font-size: 22px; font-weight: 700; color: var(--gray-900); letter-spacing: -.02em; }
.pm-sqft { font-size: 11px; color: var(--gray-400); }
.pm-trend { font-size: 12px; font-weight: 700; color: var(--green); margin-top: 5px; }
.pm-note { font-size: 11px; color: var(--gray-400); font-family: var(--font-mono); }

/* ── Insights / Blog Page ── */
.ins-hero {
  background: linear-gradient(160deg, #050c22 0%, #0a1630 50%, #160930 100%);
  padding: 72px 32px 64px;
  position: relative;
  overflow: hidden;
}
.ins-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 40px 40px;
}
.ins-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 64px;
  align-items: center;
}
.ih-left h1 { font-family: var(--font-display); font-size: clamp(28px, 4vw, 46px); font-weight: 700; color: #fff; margin-bottom: 14px; letter-spacing: -.025em; }
.ih-left h1 span { color: #93C5FD; font-style: italic; }
.ih-left p { font-size: 16px; color: rgba(255,255,255,.52); line-height: 1.75; max-width: 460px; }
.ih-featured {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--r-lg);
  padding: 28px;
}
.ih-feat-tag { font-family: var(--font-mono); font-size: 9px; text-transform: uppercase; letter-spacing: .15em; color: rgba(255,255,255,.3); margin-bottom: 8px; }
.ih-feat-date { font-size: 12px; color: rgba(255,255,255,.3); margin-bottom: 8px; }
.ih-feat-title { font-family: var(--font-display); font-size: 18px; font-weight: 700; color: #fff; margin-bottom: 20px; line-height: 1.4; }
.ih-feat-btns { display: flex; gap: 10px; flex-wrap: wrap; }

/* Reports Section */
.rep-filters { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 28px; align-items: center; }
.rep-filters select {
  padding: 9px 14px;
  border: 1.5px solid var(--gray-200);
  border-radius: var(--r-sm);
  font-size: 13px;
  font-family: var(--font-body);
  color: var(--gray-700);
  background: var(--white);
  outline: none;
  cursor: pointer;
  transition: border-color .2s;
}
.rep-filters select:focus { border-color: var(--red); }
.rep-item {
  display: flex;
  gap: 22px;
  padding: 24px 0;
  border-bottom: 1px solid var(--gray-100);
  align-items: flex-start;
}
.rep-item:last-child { border: none; }
.rep-cover {
  width: 80px;
  height: 100px;
  flex-shrink: 0;
  border-radius: var(--r-sm);
  background: linear-gradient(145deg, var(--navy), #2d1448);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 8px;
}
.rep-cover-text { font-family: var(--font-mono); font-size: 9px; font-weight: 500; color: rgba(255,255,255,.8); text-align: center; line-height: 1.4; white-space: pre-line; }
.rep-cover-yr { font-family: var(--font-display); font-size: 18px; font-weight: 700; color: rgba(255,255,255,.2); position: absolute; bottom: 3px; right: 5px; }
.rep-info { flex: 1; min-width: 0; }
.rep-meta { font-family: var(--font-mono); font-size: 11px; color: var(--gray-400); margin-bottom: 6px; }
.rep-meta strong { color: var(--navy); font-weight: 600; }
.rep-title { font-family: var(--font-display); font-size: 17px; font-weight: 700; color: var(--gray-900); margin-bottom: 7px; line-height: 1.35; cursor: pointer; transition: color .15s; }
.rep-title:hover { color: var(--red); }
.rep-excerpt { font-size: 13px; color: var(--gray-500); line-height: 1.7; }

/* Blog */
.b-tabs { display: flex; overflow-x: auto; scrollbar-width: none; border-bottom: 2px solid var(--gray-200); margin-bottom: 32px; }
.b-tabs::-webkit-scrollbar { display: none; }
.b-tab { padding: 10px 18px; font-size: 14px; font-weight: 600; color: var(--gray-400); background: none; border: none; border-bottom: 2.5px solid transparent; margin-bottom: -2px; cursor: pointer; white-space: nowrap; transition: all .2s; font-family: var(--font-body); }
.b-tab.active { color: var(--red); border-color: var(--red); }
.b-tab:hover { color: var(--gray-700); }

.blog-layout { display: grid; grid-template-columns: 1fr 280px; gap: 44px; align-items: start; }
.blog-article { display: flex; gap: 20px; padding: 26px 0; border-bottom: 1px solid var(--gray-100); }
.blog-article:last-child { border: none; }
.ba-thumb { width: 160px; height: 115px; flex-shrink: 0; border-radius: var(--r-md); background: var(--gray-100); display: flex; align-items: center; justify-content: center; font-size: 42px; overflow: hidden; }
.ba-content { flex: 1; }
.ba-meta { margin-bottom: 6px; }
.ba-date { font-family: var(--font-mono); font-size: 11px; color: var(--red); font-weight: 500; }
.ba-read { font-size: 11px; color: var(--gray-400); }
.ba-title { font-family: var(--font-display); font-size: 17px; font-weight: 700; color: var(--gray-900); line-height: 1.35; margin-bottom: 7px; transition: color .15s; }
.blog-article:hover .ba-title { color: var(--red); }
.ba-excerpt { font-size: 13px; color: var(--gray-500); line-height: 1.7; margin-bottom: 12px; }
.ba-foot { display: flex; align-items: center; justify-content: space-between; }
.ba-share { font-size: 13px; color: var(--gray-400); background: none; border: none; cursor: pointer; transition: color .15s; }
.ba-share:hover { color: var(--gray-700); }

/* Sidebar */
.blog-sidebar {}
.sb-search { display: flex; background: var(--gray-100); border-radius: var(--r-sm); overflow: hidden; margin-bottom: 28px; }
.sb-search input { flex: 1; padding: 11px 14px; border: none; outline: none; background: none; font-size: 13px; font-family: var(--font-body); color: var(--gray-900); }
.sb-search button { padding: 0 16px; background: var(--red); color: #fff; border: none; font-size: 13px; font-weight: 600; cursor: pointer; font-family: var(--font-body); }
.sb-heading { font-family: var(--font-display); font-size: 16px; font-weight: 700; color: var(--gray-900); margin-bottom: 16px; padding-bottom: 12px; border-bottom: 2px solid var(--gray-200); }
.sb-post { display: flex; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--gray-100); cursor: pointer; }
.sb-post:last-child { border: none; }
.sb-post:hover .sb-title { color: var(--red); }
.sb-thumb { width: 52px; height: 42px; border-radius: var(--r-sm); background: var(--gray-100); flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 18px; }
.sb-date { font-size: 10px; color: var(--gray-400); margin-bottom: 3px; font-family: var(--font-mono); }
.sb-title { font-size: 12px; font-weight: 600; color: var(--gray-700); line-height: 1.4; transition: color .15s; }

/* ── Tools Page ── */
.tools-hero {
  background: linear-gradient(145deg, var(--navy), #2d1448);
  padding: 64px 32px;
  text-align: center;
}
.tools-hero h1 { font-family: var(--font-display); font-size: clamp(26px, 4vw, 42px); font-weight: 700; color: #fff; margin-bottom: 12px; }
.tools-hero p { font-size: 17px; color: rgba(255,255,255,.5); max-width: 500px; margin: 0 auto; line-height: 1.7; }

.calc-container { max-width: 820px; margin: 0 auto; }
.c-tabs {
  display: flex;
  background: var(--navy);
  border-radius: var(--r-lg) var(--r-lg) 0 0;
  overflow: hidden;
}
.c-tab {
  flex: 1;
  padding: 16px 8px;
  text-align: center;
  font-size: 13px;
  font-weight: 600;
  color: rgba(255,255,255,.4);
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  cursor: pointer;
  font-family: var(--font-body);
  transition: all .2s;
}
.c-tab.active { color: #fff; border-color: var(--red); background: rgba(255,255,255,.06); }
.c-tab:hover { color: rgba(255,255,255,.75); }
.calc-panel { display: none; background: var(--white); border-radius: 0 0 var(--r-lg) var(--r-lg); border: 1.5px solid var(--gray-100); border-top: none; padding: 32px; }
.calc-panel.active { display: block; }
.calc-panel h3 { font-family: var(--font-display); font-size: 20px; font-weight: 700; color: var(--gray-900); margin-bottom: 24px; }
.calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px; }
.calc-actions { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }
.calc-result { display: none; margin-top: 20px; background: var(--gray-50); border-radius: var(--r-md); padding: 22px; }
.calc-result.show { display: block; }
.cr { display: flex; justify-content: space-between; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--gray-200); }
.cr:last-child { border: none; }
.cr-label { font-size: 13px; color: var(--gray-500); }
.cr-value { font-size: 15px; font-weight: 700; color: var(--gray-900); font-family: var(--font-display); }
.cr-value.highlight { color: var(--red); font-size: 22px; }
.calc-disclaimer {
  font-size: 11px;
  color: var(--gray-500);
  margin-top: 16px;
  padding: 14px 16px;
  background: var(--amber-light);
  border-radius: var(--r-sm);
  border-left: 3px solid var(--gold);
  line-height: 1.65;
}
.calc-disclaimer strong { color: var(--amber); }

.tools-card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 18px; }
.tool-card {
  background: var(--white);
  border: 1.5px solid var(--gray-100);
  border-radius: var(--r-lg);
  padding: 24px;
  cursor: pointer;
  transition: all .3s var(--ease-out);
}
.tool-card:hover { border-color: var(--red); box-shadow: var(--shadow-md); transform: translateY(-3px); }
.tc-icon { font-size: 28px; margin-bottom: 12px; }
.tool-card h3 { font-family: var(--font-display); font-size: 15px; font-weight: 700; color: var(--gray-900); margin-bottom: 6px; }
.tool-card p { font-size: 13px; color: var(--gray-500); line-height: 1.6; }

/* ── Advisors Page ── */
.adv-hero {
  background: linear-gradient(155deg, var(--navy), #1a3060, #2d1448);
  padding: 64px 32px;
  text-align: center;
}
.adv-hero h1 { font-family: var(--font-display); font-size: clamp(26px, 4vw, 42px); font-weight: 700; color: #fff; margin-bottom: 12px; }
.adv-hero p { font-size: 17px; color: rgba(255,255,255,.5); max-width: 480px; margin: 0 auto; line-height: 1.7; }

.adv-card {}
.adv-avatar {
  width: 72px; height: 72px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--red), var(--navy));
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 14px;
  font-family: var(--font-display);
  font-size: 26px;
  font-weight: 700;
  color: #fff;
}
.adv-name { font-family: var(--font-display); font-size: 16px; font-weight: 700; color: var(--gray-900); margin-bottom: 4px; }
.adv-spec { font-size: 12px; color: var(--gray-500); margin-bottom: 12px; font-family: var(--font-mono); }
.adv-desc { font-size: 13px; color: var(--gray-500); line-height: 1.65; margin-bottom: 16px; text-align: left; }
.adv-stats { display: flex; justify-content: center; gap: 28px; margin-bottom: 16px; padding: 14px 0; border-top: 1px solid var(--gray-100); border-bottom: 1px solid var(--gray-100); }
.adv-stat {}
.adv-stat-n { font-family: var(--font-display); font-size: 20px; font-weight: 700; color: var(--navy); display: block; letter-spacing: -.02em; }
.adv-stat-l { font-family: var(--font-mono); font-size: 9px; color: var(--gray-400); text-transform: uppercase; letter-spacing: .1em; }

/* ── About Page ── */
.about-hero {
  background: linear-gradient(155deg, var(--navy), #1a3060, #2d1448);
  padding: 88px 32px 72px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.about-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 40px 40px;
}
.about-hero-inner { position: relative; z-index: 1; }
.about-hero h1 { font-family: var(--font-display); font-size: clamp(30px, 5vw, 56px); font-weight: 700; color: #fff; margin-bottom: 14px; letter-spacing: -.03em; }
.about-hero p { font-size: 18px; color: rgba(255,255,255,.52); max-width: 600px; margin: 0 auto 52px; line-height: 1.75; font-weight: 300; }
.about-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; max-width: 840px; margin: 0 auto; }

/* Values */
.values-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; }
.val-card {
  background: var(--white);
  border: 1.5px solid var(--gray-100);
  border-radius: var(--r-lg);
  padding: 26px 20px;
  text-align: center;
  transition: all .3s var(--ease-out);
}
.val-card:hover { border-color: var(--red); transform: translateY(-3px); box-shadow: var(--shadow-md); }
.val-icon { font-size: 30px; margin-bottom: 12px; }
.val-card h3 { font-family: var(--font-display); font-size: 14px; font-weight: 700; color: var(--gray-900); margin-bottom: 7px; }
.val-card p { font-size: 12px; color: var(--gray-500); line-height: 1.65; }

/* Mission / Vision */
.mission-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.mission-card { background: var(--white); border-radius: var(--r-lg); padding: 36px; border: 1px solid var(--gray-100); }
.mission-card.navy { background: var(--navy); }
.mission-card.navy h3, .mission-card.navy p { color: rgba(255,255,255,.8); }
.mission-card h3 { font-family: var(--font-display); font-size: 20px; font-weight: 700; color: var(--gray-900); margin-bottom: 14px; }
.mission-card p { font-size: 15px; color: var(--gray-600); line-height: 1.8; }

/* Timeline */
.timeline { max-width: 680px; margin: 0 auto; position: relative; padding: 8px 0; }
.tl-line { position: absolute; left: 50%; top: 0; bottom: 0; width: 2px; background: var(--gray-200); transform: translateX(-50%); }
.tl-item { display: grid; grid-template-columns: 1fr 56px 1fr; gap: 20px; align-items: flex-start; margin-bottom: 40px; position: relative; }
.tl-left { text-align: right; padding-top: 8px; }
.tl-right { padding-top: 8px; }
.tl-dot { width: 56px; height: 56px; border-radius: 50%; background: var(--red); display: flex; align-items: center; justify-content: center; font-size: 20px; box-shadow: 0 0 0 6px rgba(200,16,46,.1); z-index: 1; position: relative; flex-shrink: 0; }
.tl-year { font-family: var(--font-mono); font-size: 10px; text-transform: uppercase; letter-spacing: .1em; color: var(--gray-400); margin-bottom: 4px; }
.tl-t { font-family: var(--font-display); font-size: 15px; font-weight: 700; color: var(--gray-900); margin-bottom: 4px; }
.tl-d { font-size: 13px; color: var(--gray-500); line-height: 1.65; }

/* Philosophy bullets */
.philosophy-list { display: flex; flex-direction: column; gap: 12px; }
.phil-item { display: flex; gap: 12px; font-size: 14px; color: var(--gray-600); line-height: 1.6; }
.phil-check { color: var(--red); font-weight: 700; flex-shrink: 0; font-size: 16px; margin-top: 1px; }

/* ── Contact Page ── */
.contact-hero {
  background: linear-gradient(145deg, var(--navy), #2d1448);
  padding: 64px 32px;
  text-align: center;
}
.contact-hero h1 { font-family: var(--font-display); font-size: clamp(26px, 4vw, 42px); font-weight: 700; color: #fff; margin-bottom: 12px; }
.contact-hero p { font-size: 17px; color: rgba(255,255,255,.5); max-width: 500px; margin: 0 auto; line-height: 1.7; }

.contact-grid { display: grid; grid-template-columns: 1fr 1.3fr; gap: 60px; align-items: start; }
.ci { display: flex; gap: 16px; margin-bottom: 24px; }
.ci-icon { width: 46px; height: 46px; background: var(--red-light); border-radius: var(--r-sm); flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 18px; }
.ci-label { font-family: var(--font-mono); font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: var(--gray-400); margin-bottom: 4px; }
.ci-value { font-size: 14px; font-weight: 600; color: var(--gray-900); }

.contact-services { margin-top: 28px; padding: 24px; background: var(--red-light); border-radius: var(--r-lg); border-left: 3px solid var(--red); }
.contact-services h4 { font-family: var(--font-display); font-size: 15px; font-weight: 700; color: var(--gray-900); margin-bottom: 14px; }
.svc-list { display: flex; flex-direction: column; gap: 8px; }
.svc-item { display: flex; gap: 10px; font-size: 13px; color: var(--gray-600); }
.svc-arr { color: var(--red); font-weight: 700; }

.form-box { background: var(--white); border-radius: var(--r-xl); box-shadow: var(--shadow-xl); padding: 36px; border: 1px solid var(--gray-100); }
.form-box h3 { font-family: var(--font-display); font-size: 22px; font-weight: 700; color: var(--gray-900); margin-bottom: 24px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.contact-ig { display: flex; align-items: center; gap: 12px; padding: 16px 18px; background: var(--gray-50); border-radius: var(--r-lg); margin-top: 24px; border: 1px solid var(--gray-200); text-decoration: none; }
.ig-icon { font-size: 24px; }
.ig-text span { display: block; font-size: 12px; color: var(--gray-400); font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .1em; }
.ig-text strong { font-size: 14px; font-weight: 700; color: var(--navy); }

/* ── Responsive Pages ── */
@media (max-width: 1100px) {
  .ins-hero-grid { grid-template-columns: 1fr; }
  .blog-layout { grid-template-columns: 1fr; }
  .blog-sidebar { display: none; }
  .values-grid { grid-template-columns: repeat(3, 1fr); }
  .about-stats { grid-template-columns: repeat(2, 1fr); }
  .contact-grid { grid-template-columns: 1fr; }
  .mission-grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .zd-hero { grid-template-columns: 1fr; }
  .zd-hero-icon { display: none; }
  .calc-grid { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; }
  .timeline .tl-left { display: none; }
  .tl-item { grid-template-columns: 48px 1fr; }
  .tl-line { left: 24px; }
  .values-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .c-tab { font-size: 11px; padding: 12px 4px; }
  .explore-hero { padding: 48px 20px 0; }
  .zp-inner { padding: 32px 20px 52px; }
  .zd-hero { padding: 28px 24px; }
  .price-map-grid { grid-template-columns: repeat(2, 1fr); }
  .values-grid { grid-template-columns: 1fr 1fr; }
  .about-stats { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .blog-article { flex-direction: column; }
  .ba-thumb { width: 100%; height: 140px; }
  .rep-item { flex-direction: column; }
  .rep-cover { width: 100%; height: 70px; flex-direction: row; gap: 12px; }
}
