/* =========================================================
   iTech Gravity — inner page additions (SEO landing pages)
   Loaded after modern.css
   ========================================================= */

/* Inner-page hero (shorter than the home hero) */
.page-hero { padding: 150px 0 100px; }
.page-hero h1 { font-size: clamp(30px, 4.2vw, 48px); }
.page-hero p.lead { font-size: 18px; }

/* Breadcrumbs */
.crumbs { font-size: 13px; color: #97a3c2; margin-bottom: 18px; }
.crumbs a { color: #c3cae0; }
.crumbs a:hover { color: #fff; }
.crumbs .sep { margin: 0 8px; opacity: .6; }

/* Long-form intro text */
.prose { max-width: 820px; margin: 0 auto; }
.prose h2 { font-size: clamp(26px, 3.4vw, 36px); margin: 0 0 20px; }
.prose p { color: var(--ink-2); font-size: 17px; margin: 0 0 16px; }
.prose a { font-weight: 600; }

/* Numbered step cards */
.card .ic.num { font-weight: 800; font-size: 20px; }

/* Cards that are also links */
a.card-link { display: block; color: inherit; }
a.card-link:hover { color: inherit; }
a.card-link .more { display: inline-flex; gap: 8px; align-items: center; margin-top: 16px; font-weight: 700; font-size: 14px; color: var(--brand-2); }
a.card-link:hover .more { gap: 12px; }

/* Two-column grids that wrap nicely for 5 or 6 items */
.grid-auto { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 26px; }

/* FAQ */
.faq { max-width: 820px; margin: 0 auto; }
.faq details {
  background: var(--surface); border: 1px solid var(--line); border-radius: 14px;
  margin-bottom: 14px; box-shadow: var(--shadow-sm); overflow: hidden;
}
.faq summary {
  cursor: pointer; list-style: none; padding: 20px 24px; font-weight: 700; font-size: 17px;
  color: var(--ink); display: flex; justify-content: space-between; gap: 16px; align-items: center;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; font-size: 24px; font-weight: 500; color: var(--brand-2); line-height: 1; }
.faq details[open] summary::after { content: "\2212"; }
.faq details p { margin: 0; padding: 0 24px 22px; color: var(--ink-2); font-size: 16px; }

/* Contact block on inner pages */
.enquire-wrap { max-width: 760px; margin: 0 auto; }
.enquire-alt { text-align: center; margin-top: 22px; color: var(--ink-3); font-size: 15px; }
.enquire-alt a { font-weight: 700; }

/* Bangalore page: contact info + map + form */
.page-contact-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 40px; align-items: stretch; }

@media (max-width: 992px) {
  .page-contact-grid { grid-template-columns: 1fr; }
  .page-hero { padding: 130px 0 80px; }
}

/* Fix: the fake browser-bar label inherited the 11px dot size from `.p-frame span` */
.p-frame .p-url { width: auto; height: auto; border-radius: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 70%; }
