/* =============================================================
   TRISTATE HOLDINGS 167 — Inner Page Styles
   Matches global style.css design system
   Navy #0B1F3A | Gold #C9973A | Cream #F7F4EE
   Font: Playfair Display (headings) + DM Sans (body)
   ============================================================= */

/* ---------- Quick Contact Form ---------- */
.quick-form-wrap {
  position: relative;
  z-index: 20;
  width: 100%;
}

.quick-form-card {
  background: rgba(255,255,255,0.97);
  backdrop-filter: blur(16px);
  border-radius: var(--radius-lg);
  padding: 32px 28px;
  box-shadow: 0 24px 72px rgba(0,0,0,0.28);
  border-top: 4px solid var(--gold);
}

.quick-form-card h3 {
  font-size: 1.35rem;
  margin-bottom: 4px;
  color: var(--navy);
}
.quick-form-card p {
  font-size: 0.88rem;
  color: var(--text-mid);
  margin-bottom: 20px;
}

.qf-row { display: flex; gap: 10px; }
.qf-group { flex: 1; margin-bottom: 12px; }
.qf-group.full { flex: 0 0 100%; width: 100%; }

.qf-input {
  width: 100%;
  background: #F7F8FA;
  border: 1.5px solid #E2E8F0;
  border-radius: 8px;
  padding: 11px 14px;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.9rem;
  color: var(--text-dark);
  transition: var(--transition);
  outline: none;
  box-sizing: border-box;
}
.qf-input:focus {
  border-color: var(--gold);
  background: var(--white);
  box-shadow: 0 0 0 3px rgba(201,151,58,0.12);
}

.qf-input::placeholder { color: #A0AEC0; }

.qf-select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23718096' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px !important;
}

textarea.qf-input { resize: vertical; }

.qf-check {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  font-size: 0.8rem;
  color: var(--text-mid);
  margin-bottom: 14px;
  line-height: 1.4;
}
.qf-check input[type="checkbox"] {
  width: 15px;
  height: 15px;
  margin-top: 2px;
  accent-color: var(--gold);
  flex-shrink: 0;
}

.btn-qf-submit {
  width: 100%;
  background: linear-gradient(135deg, var(--gold), var(--gold-light));
  color: var(--navy);
  font-weight: 700;
  font-size: 1rem;
  padding: 14px;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  transition: var(--transition);
  box-shadow: 0 6px 20px rgba(201,151,58,0.4);
  letter-spacing: 0.3px;
}
.btn-qf-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 32px rgba(201,151,58,0.5);
}

.qf-disclaimer {
  text-align: center;
  font-size: 0.73rem;
  color: var(--text-light);
  margin-top: 10px;
  line-height: 1.4;
}

/* ── Page Header ─────────────────────────────────────────────── */
.page-header {
    position        : relative;
    height          : auto;
    min-height      : 550px;
    display         : flex;
    align-items     : center;
    overflow        : hidden;
}
.page-header-bg {
    position        : absolute;
    inset           : 0;
    background-size : cover;
    background-position: center;
    transition      : transform 8s ease;
}
.page-header:hover .page-header-bg {
    transform       : scale(1.04);
}
.page-header-overlay {
    position        : absolute;
    inset           : 0;
    background      : linear-gradient(
        105deg,
        rgba(7, 20, 40, 0.92) 0%,
        rgba(11, 31, 58, 0.82) 55%,
        rgba(11, 31, 58, 0.60) 100%
    );
    z-index         : 1;
}
.page-header::after {
    content         : '';
    position        : absolute;
    bottom          : 0;
    left            : 0;
    right           : 0;
    height          : 4px;
    background      : linear-gradient(90deg, var(--gold), var(--gold-light), var(--gold));
    z-index         : 3;
}
.page-header .container {
    position        : relative;
    z-index         : 2;
}
.page-header .breadcrumb {
    background      : transparent;
    padding         : 0;
    margin-bottom   : 16px;
}
.page-header .breadcrumb-item {
    font-size       : 0.88rem;
    font-family     : 'DM Sans', sans-serif;
    font-weight     : 500;
    letter-spacing  : 0.3px;
}
.page-header .breadcrumb-item a {
    color           : rgba(255,255,255,0.7);
    text-decoration : none;
    transition      : var(--transition);
    background      : none !important;
    border          : none !important;
    padding         : 0 !important;
}
.page-header .breadcrumb-item a:hover {
    color           : var(--gold-light);
}
.page-header .breadcrumb-item.active {
    color           : rgba(255,255,255,0.95);
}
.page-header .breadcrumb-item + .breadcrumb-item::before {
    color           : rgba(255,255,255,0.4);
}
.page-title {
    font-family     : 'Playfair Display', serif;
    font-size       : clamp(2rem, 4.5vw, 3.4rem);
    font-weight     : 900;
    color           : var(--white);
    margin-bottom   : 14px;
    line-height     : 1.15;
}
.page-subtitle {
    font-family     : 'DM Sans', sans-serif;
    font-size       : 1.1rem;
    color           : rgba(255,255,255,0.82);
    margin          : 0;
    line-height     : 1.6;
    max-width       : 600px;
}

/* ===================================
   Inner Page Form Overlay — DESKTOP BASE (must be before media queries)
   =================================== */
.inner-form-overlay {
    position        : absolute;
    top             : 0;
    right           : 55px;
    width           : 400px;
    height          : 100%;
    z-index         : 10;
    display         : flex;
    align-items     : center;
    justify-content : center;
    padding         : 20px 0;
    pointer-events  : none;
}

.inner-form-overlay .quick-form-wrap {
    pointer-events  : all;
    width           : 100%;
}

.inner-form-overlay .quick-form-card {
    padding         : 20px 18px;
}

.inner-form-overlay .quick-form-card h3 {
    font-size       : 1.1rem;
    margin-bottom   : 2px;
}

.inner-form-overlay .quick-form-card p {
    font-size       : 0.82rem;
    margin-bottom   : 12px;
}

.inner-form-overlay .qf-group {
    margin-bottom   : 7px;
}

.inner-form-overlay .qf-input {
    padding         : 8px 12px;
    font-size       : 0.85rem;
}

.inner-form-overlay .qf-row {
    gap             : 7px;
}

.inner-form-overlay .qf-check {
    font-size       : 0.78rem;
    margin-bottom   : 10px;
}

.inner-form-overlay .btn-qf-submit {
    padding         : 11px;
    font-size       : 0.92rem;
}

.inner-form-overlay .qf-disclaimer {
    font-size       : 0.7rem;
    margin-top      : 7px;
}

/* ── Page Content Wrapper ────────────────────────────────────── */
.page-content {
    position        : relative;
    z-index         : 10;
    padding         : 80px 0;
    background      : var(--white);
}

/* ── BTGrid Inner Page ───────────────────────────────────────── */
.btgrid .row {
    margin-bottom   : 24px;
}

.btgrid .row:last-child {
    margin-bottom   : 0;
}

/* ── Content Boxes ───────────────────────────────────────────── */
.btgrid .content {
    padding         : 28px 32px;
    background      : var(--white);
    border-radius   : var(--radius-lg);
    height          : 100%;
    border          : 1px solid var(--border-gold);
    box-shadow      : var(--shadow-sm);
    transition      : var(--transition);
}

.btgrid .content:hover {
    box-shadow      : var(--shadow-md);
    transform       : translateY(-2px);
}

/* ── Headings ────────────────────────────────────────────────── */
.btgrid .content h1 {
    font-family     : 'Playfair Display', serif;
    font-size       : clamp(1.5rem, 3vw, 2rem);
    font-weight     : 900;
    color           : var(--navy);
    margin-bottom   : 16px;
    padding-bottom  : 14px;
    border-bottom   : 3px solid var(--gold-pale);
    position        : relative;
}

.btgrid .content h1::after {
    content         : '';
    position        : absolute;
    bottom          : -3px;
    left            : 0;
    width           : 60px;
    height          : 3px;
    background      : linear-gradient(90deg, var(--gold), var(--gold-light));
    border-radius   : 2px;
}

.btgrid .content h2 {
    font-family     : 'Playfair Display', serif;
    font-size       : 1.25rem;
    font-weight     : 700;
    color           : var(--navy);
    margin-top      : 8px;
    margin-bottom   : 14px;
    padding-bottom  : 10px;
    border-bottom   : 1px solid var(--border-gold);
    position        : relative;
}

.btgrid .content h2::after {
    content         : '';
    position        : absolute;
    bottom          : -1px;
    left            : 0;
    width           : 40px;
    height          : 2px;
    background      : linear-gradient(90deg, var(--gold), var(--gold-light));
    border-radius   : 2px;
}

.btgrid .content h3 {
    font-family     : 'Playfair Display', serif;
    font-size       : 1.05rem;
    font-weight     : 700;
    color           : var(--navy);
    margin-top      : 16px;
    margin-bottom   : 8px;
}

.btgrid .content h4 {
    font-family     : 'DM Sans', sans-serif;
    font-size       : 0.88rem;
    font-weight     : 700;
    color           : var(--gold);
    margin-bottom   : 6px;
    text-transform  : uppercase;
    letter-spacing  : 1.5px;
}

/* ── Paragraphs ─────────────────────────────────────────────── */
.btgrid .content p {
    font-family     : 'DM Sans', sans-serif;
    color           : var(--text-mid);
    line-height     : 1.85;
    margin-bottom   : 14px;
    font-size       : 1.02rem;
}

.btgrid .content p strong {
    color           : var(--navy);
    font-weight     : 700;
}

/* ── Lists ───────────────────────────────────────────────────── */
.btgrid .content ul {
    padding-left    : 0;
    list-style      : none;
    margin-bottom   : 16px;
}

.btgrid .content ul li {
    position        : relative;
    padding         : 9px 12px 9px 34px;
    margin-bottom   : 7px;
    background      : var(--cream);
    border-radius   : var(--radius);
    border-left     : 3px solid var(--gold);
    color           : var(--text-mid);
    font-size       : 1rem;
    transition      : var(--transition);
}

.btgrid .content ul li:hover {
    background      : var(--gold-pale);
    border-left-color: var(--gold-light);
}

.btgrid .content ul li::before {
    content         : '\f00c';
    font-family     : 'Font Awesome 5 Free';
    font-weight     : 900;
    position        : absolute;
    left            : 11px;
    top             : 50%;
    transform       : translateY(-50%);
    color           : var(--gold);
    font-size       : 10px;
}

.btgrid .content ul li p {
    margin-bottom   : 0;
    color           : var(--text-mid);
    font-size       : inherit;
}

/* ── Row 1 — intro block with cream tint ────────────────────── */
.btgrid .row-1 .content {
    background      : var(--cream);
    border-radius   : var(--radius-lg);
    padding         : 32px 36px;
    border          : 1px solid var(--border-gold);
    box-shadow      : 0 4px 20px rgba(201, 151, 58, 0.08);
    border-top      : 4px solid var(--gold);
}

.btgrid .row-1 .content p {
    color           : var(--text-dark);
    font-size       : 1.05rem;
    line-height     : 1.9;
}

.btgrid .row-1 .content p strong {
    color           : var(--navy);
}

.btgrid .row-1 .content h1,
.btgrid .row-1 .content h2 {
    color           : var(--navy);
}

/* ── Row 2 — cards with gold top border ─────────────────────── */
.btgrid .row-2 .content {
    background      : var(--white);
    border-top      : 3px solid var(--gold);
    box-shadow      : var(--shadow-sm);
}

.btgrid .row-2 .content:hover {
    border-top-color: var(--gold-light);
    box-shadow      : var(--shadow-md);
}

.btgrid .row-2 .content p strong:first-of-type {
    display         : inline-block;
    background      : var(--gold-pale);
    color           : var(--navy);
    padding         : 3px 12px;
    border-radius   : 50px;
    margin-bottom   : 6px;
    font-size       : 0.78rem;
    font-weight     : 700;
    letter-spacing  : 1px;
    text-transform  : uppercase;
    border          : 1px solid var(--border-gold);
}

/* ── Row 3 — dashed divider rows ────────────────────────────── */
.btgrid .row-3 .content p {
    padding-bottom  : 12px;
    border-bottom   : 1px dashed var(--border-gold);
}

.btgrid .row-3 .content p:last-child {
    border-bottom   : none;
    padding-bottom  : 0;
}

/* ── Column spacing ─────────────────────────────────────────── */
.btgrid .col-md-3,
.btgrid .col-md-4,
.btgrid .col-md-6,
.btgrid .col-md-12 {
    padding-right   : 10px;
    padding-left    : 10px;
    margin-bottom   : 16px;
}

/* ── Links in content ───────────────────────────────────────── */
.btgrid .content a {
    color           : var(--gold) !important;
    font-weight     : 600 !important;
    text-decoration : none !important;
    background      : var(--gold-pale) !important;
    padding         : 2px 9px !important;
    border-radius   : 5px !important;
    border-left     : 3px solid var(--gold) !important;
    transition      : var(--transition) !important;
    display         : inline;
}

.btgrid .content a:hover {
    color           : var(--white) !important;
    background      : linear-gradient(135deg, var(--gold), var(--gold-light)) !important;
    border-left-color: var(--navy) !important;
    box-shadow      : 0 3px 10px rgba(201,151,58,0.35) !important;
    padding         : 2px 11px !important;
}

.btgrid .content a:visited {
    color           : var(--navy) !important;
    background      : rgba(11,31,58,0.06) !important;
    border-left-color: var(--navy) !important;
}

.btgrid .content a:visited:hover {
    color           : var(--white) !important;
    background      : var(--navy) !important;
    border-left-color: var(--navy-dark) !important;
}

.btgrid .content ul li a {
    background      : none !important;
    border-left     : none !important;
    padding         : 0 !important;
    color           : var(--gold) !important;
    font-weight     : 600 !important;
    border-bottom   : 2px dotted var(--gold) !important;
    box-shadow      : none !important;
}

.btgrid .content ul li a:hover {
    color           : var(--white) !important;
    background      : var(--gold) !important;
    border-bottom   : none !important;
    border-left     : none !important;
    padding         : 2px 7px !important;
    border-radius   : 4px !important;
    box-shadow      : none !important;
}

.btgrid .content h1 a,
.btgrid .content h2 a,
.btgrid .content h3 a,
.btgrid .content h4 a {
    color           : inherit !important;
    background      : none !important;
    border-left     : none !important;
    padding         : 0 !important;
    font-weight     : inherit !important;
    box-shadow      : none !important;
}

.btgrid .content h1 a:hover,
.btgrid .content h2 a:hover,
.btgrid .content h3 a:hover,
.btgrid .content h4 a:hover {
    color           : var(--white) !important;
    background      : var(--gold) !important;
    border-left     : none !important;
    padding         : 2px 9px !important;
    border-radius   : 5px !important;
    box-shadow      : none !important;
}

.btgrid .row-1 .content a {
    color           : var(--navy) !important;
    background      : rgba(255,255,255,0.75) !important;
    border-left-color: var(--gold) !important;
    font-weight     : 700 !important;
}

.btgrid .row-1 .content a:hover {
    color           : var(--white) !important;
    background      : linear-gradient(135deg, var(--gold), var(--gold-light)) !important;
    box-shadow      : 0 3px 10px rgba(201,151,58,0.3) !important;
}

/* ── Content Article ─────────────────────────────────────────── */
.content-article {
    background      : var(--white);
}

.article-intro .lead {
    font-family     : 'DM Sans', sans-serif;
    font-size       : 1.2rem;
    color           : var(--text-mid);
    line-height     : 1.85;
    font-weight     : 500;
    margin-bottom   : 30px;
}

.content-article h2 {
    font-family     : 'Playfair Display', serif;
    font-size       : clamp(1.5rem, 3vw, 2.1rem);
    color           : var(--navy);
    font-weight     : 900;
    margin-top      : 50px;
    margin-bottom   : 22px;
    padding-bottom  : 14px;
    border-bottom   : 2px solid var(--gold-pale);
    position        : relative;
}

.content-article h2::after {
    content         : '';
    position        : absolute;
    bottom          : -2px;
    left            : 0;
    width           : 70px;
    height          : 2px;
    background      : linear-gradient(90deg, var(--gold), var(--gold-light));
    border-radius   : 2px;
}

.content-article h3 {
    font-family     : 'Playfair Display', serif;
    font-size       : 1.45rem;
    color           : var(--navy);
    font-weight     : 700;
    margin-top      : 34px;
    margin-bottom   : 16px;
}

.content-article p {
    font-size       : 1.05rem;
    line-height     : 1.9;
    color           : var(--text-mid);
    margin-bottom   : 18px;
}

.content-article a {
    color           : var(--gold);
    font-weight     : 600;
    text-decoration : none;
    transition      : var(--transition);
}

.content-article a:hover {
    color           : var(--gold-light);
    text-decoration : underline;
}

/* ── Content Grid Cards ─────────────────────────────────────── */
.content-grid {
    display         : grid;
    grid-template-columns: repeat(2, 1fr);
    gap             : 22px;
    margin          : 40px 0;
}

.content-card {
    background      : var(--cream);
    padding         : 28px 26px;
    border-radius   : var(--radius-lg);
    border          : 1px solid var(--border-gold);
    transition      : var(--transition);
    border-top      : 3px solid var(--gold);
}

.content-card:hover {
    transform       : translateY(-5px);
    box-shadow      : var(--shadow-md);
    background      : var(--white);
    border-top-color: var(--gold-light);
}

.card-icon {
    width           : 64px;
    height          : 64px;
    background      : linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
    border-radius   : var(--radius);
    display         : flex;
    align-items     : center;
    justify-content : center;
    color           : var(--navy);
    font-size       : 1.7rem;
    margin-bottom   : 18px;
    box-shadow      : 0 6px 20px rgba(201,151,58,0.3);
    transition      : var(--transition);
}

.content-card:hover .card-icon {
    transform       : scale(1.08) rotate(-3deg);
    box-shadow      : 0 10px 28px rgba(201,151,58,0.4);
}

.content-card h3 {
    font-family     : 'Playfair Display', serif;
    font-size       : 1.15rem;
    color           : var(--navy);
    margin-top      : 0;
    margin-bottom   : 10px;
}

.content-card p {
    font-size       : 0.97rem;
    color           : var(--text-mid);
    margin          : 0;
    line-height     : 1.7;
}

/* ── Styled List ────────────────────────────────────────────── */
.styled-list {
    list-style      : none;
    padding         : 0;
    margin          : 28px 0;
}

.styled-list li {
    padding         : 14px 0 14px 52px;
    position        : relative;
    font-size       : 1.05rem;
    line-height     : 1.75;
    color           : var(--text-mid);
    border-bottom   : 1px solid var(--border-gold);
    transition      : var(--transition);
}

.styled-list li:hover {
    color           : var(--navy);
    padding-left    : 56px;
}

.styled-list li:last-child {
    border-bottom   : none;
}

.styled-list li::before {
    content         : '\f00c';
    font-family     : 'Font Awesome 6 Free';
    font-weight     : 900;
    position        : absolute;
    left            : 0;
    top             : 14px;
    width           : 32px;
    height          : 32px;
    background      : linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
    color           : var(--navy);
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    font-size       : 0.82rem;
    box-shadow      : 0 3px 10px rgba(201,151,58,0.3);
}

.styled-list strong {
    color           : var(--navy);
    font-weight     : 700;
}

/* ── Numbered List ──────────────────────────────────────────── */
.numbered-list {
    counter-reset   : item;
    list-style      : none;
    padding         : 0;
    margin          : 28px 0;
}

.numbered-list li {
    counter-increment: item;
    padding         : 18px 0 18px 64px;
    position        : relative;
    font-size       : 1.05rem;
    line-height     : 1.85;
    color           : var(--text-mid);
    border-bottom   : 1px solid var(--border-gold);
}

.numbered-list li:last-child {
    border-bottom   : none;
}

.numbered-list li::before {
    content         : counter(item);
    position        : absolute;
    left            : 0;
    top             : 16px;
    width           : 46px;
    height          : 46px;
    background      : linear-gradient(135deg, var(--navy) 0%, var(--navy-dark) 100%);
    color           : var(--gold-light);
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    font-size       : 1.2rem;
    font-weight     : 900;
    font-family     : 'Playfair Display', serif;
    border          : 2px solid var(--border-gold);
}

.numbered-list strong {
    color           : var(--navy);
    font-weight     : 700;
}

/* ── Highlight Box ──────────────────────────────────────────── */
.highlight-box {
    background      : var(--cream);
    border-left     : 5px solid var(--gold);
    padding         : 32px 30px;
    border-radius   : var(--radius-lg);
    margin          : 36px 0;
    display         : flex;
    gap             : 24px;
    align-items     : flex-start;
    box-shadow      : var(--shadow-sm);
    border-top      : 1px solid var(--border-gold);
    border-right    : 1px solid var(--border-gold);
    border-bottom   : 1px solid var(--border-gold);
    transition      : var(--transition);
}

.highlight-box:hover {
    box-shadow      : var(--shadow-md);
    background      : var(--gold-pale);
}

.highlight-icon {
    width           : 65px;
    height          : 65px;
    background      : linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
    border-radius   : var(--radius);
    display         : flex;
    align-items     : center;
    justify-content : center;
    color           : var(--navy);
    font-size       : 1.8rem;
    flex-shrink     : 0;
    box-shadow      : 0 6px 20px rgba(201,151,58,0.3);
}

.highlight-content h3 {
    font-family     : 'Playfair Display', serif;
    font-size       : 1.35rem;
    color           : var(--navy);
    margin-top      : 0;
    margin-bottom   : 10px;
}

.highlight-content p {
    font-size       : 1rem;
    color           : var(--text-mid);
    margin          : 0;
    line-height     : 1.8;
}

/* ── Property Type Item ─────────────────────────────────────── */
.property-type-item {
    display         : flex;
    align-items     : center;
    gap             : 12px;
    padding         : 11px 18px;
    background      : var(--cream);
    border-radius   : var(--radius);
    font-size       : 1rem;
    color           : var(--text-mid);
    font-weight     : 600;
    border          : 1px solid var(--border-gold);
    transition      : var(--transition);
}

.property-type-item:hover {
    background      : var(--gold-pale);
    border-color    : var(--gold);
    color           : var(--navy);
}

.property-type-item i {
    color           : var(--gold);
    font-size       : 1.1rem;
    flex-shrink     : 0;
}

/* ── FAQ Accordion ──────────────────────────────────────────── */
.inner-faq-accordion .accordion-item {
    border          : 1px solid var(--border-gold);
    margin-bottom   : 12px;
    border-radius   : var(--radius-lg) !important;
    overflow        : hidden;
    box-shadow      : var(--shadow-sm);
    transition      : var(--transition);
}

.inner-faq-accordion .accordion-item:hover {
    box-shadow      : var(--shadow-md);
}

.inner-faq-accordion .accordion-button {
    background      : var(--cream);
    color           : var(--navy);
    font-family     : 'DM Sans', sans-serif;
    font-size       : 1.05rem;
    font-weight     : 600;
    padding         : 20px 24px;
    border          : none;
    border-radius   : var(--radius-lg) !important;
}

.inner-faq-accordion .accordion-button:not(.collapsed) {
    background      : linear-gradient(135deg, var(--navy) 0%, var(--navy-dark) 100%);
    color           : var(--gold-light);
    box-shadow      : none;
}

.inner-faq-accordion .accordion-button::after {
    filter          : none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23C9973A'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.inner-faq-accordion .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23E2B85A'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.inner-faq-accordion .accordion-body {
    padding         : 24px;
    background      : var(--white);
    font-family     : 'DM Sans', sans-serif;
    font-size       : 1.02rem;
    line-height     : 1.85;
    color           : var(--text-mid);
    border-top      : 1px solid var(--border-gold);
}

/* ── CTA Box ────────────────────────────────────────────────── */
.cta-box {
    background      : linear-gradient(135deg, var(--navy-dark) 0%, var(--navy) 100%);
    padding         : 52px 44px;
    border-radius   : var(--radius-lg);
    text-align      : center;
    margin-top      : 50px;
    box-shadow      : var(--shadow-lg);
    position        : relative;
    overflow        : hidden;
}

.cta-box::before {
    content         : '';
    position        : absolute;
    top             : -40%;
    right           : -10%;
    width           : 350px;
    height          : 350px;
    border-radius   : 50%;
    background      : radial-gradient(circle, rgba(201,151,58,0.12) 0%, transparent 70%);
    pointer-events  : none;
}

.cta-box::after {
    content         : '';
    position        : absolute;
    bottom          : -40%;
    left            : -8%;
    width           : 280px;
    height          : 280px;
    border-radius   : 50%;
    background      : radial-gradient(circle, rgba(201,151,58,0.08) 0%, transparent 70%);
    pointer-events  : none;
}

.cta-box h3 {
    font-family     : 'Playfair Display', serif;
    font-size       : clamp(1.6rem, 3vw, 2.2rem);
    color           : var(--white);
    margin-top      : 0;
    margin-bottom   : 14px;
    position        : relative;
    z-index         : 1;
}

.cta-box p {
    font-size       : 1.08rem;
    color           : rgba(255,255,255,0.82);
    margin-bottom   : 32px;
    line-height     : 1.75;
    position        : relative;
    z-index         : 1;
}

.cta-buttons {
    display         : flex;
    gap             : 14px;
    justify-content : center;
    flex-wrap       : wrap;
    position        : relative;
    z-index         : 1;
}

.btn-cta-primary {
    background      : linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
    color           : var(--navy) !important;
    padding         : 15px 38px;
    border-radius   : 50px;
    font-weight     : 700;
    font-size       : 1rem;
    border          : none;
    display         : inline-flex;
    align-items     : center;
    gap             : 10px;
    box-shadow      : 0 8px 24px rgba(201,151,58,0.4);
    transition      : var(--transition);
    text-transform  : uppercase;
    letter-spacing  : 0.5px;
    text-decoration : none;
}

.btn-cta-primary:hover {
    background      : linear-gradient(135deg, var(--gold-light) 0%, var(--gold) 100%);
    color           : var(--navy) !important;
    transform       : translateY(-3px);
    box-shadow      : 0 14px 36px rgba(201,151,58,0.5);
}

.btn-cta-secondary {
    background      : transparent;
    color           : var(--white) !important;
    padding         : 13px 36px;
    border-radius   : 50px;
    font-weight     : 700;
    font-size       : 1rem;
    border          : 2px solid rgba(255,255,255,0.45);
    display         : inline-flex;
    align-items     : center;
    gap             : 10px;
    transition      : var(--transition);
    text-decoration : none;
}

.btn-cta-secondary:hover {
    background      : var(--gold);
    color           : var(--navy) !important;
    border-color    : var(--gold);
    transform       : translateY(-3px);
    box-shadow      : 0 8px 24px rgba(201,151,58,0.35);
}

/* ── Sidebar ────────────────────────────────────────────────── */
.content-sidebar {
    position        : sticky;
    top             : 100px;
}

.sidebar-widget {
    background      : var(--white);
    padding         : 32px 28px;
    border-radius   : var(--radius-lg);
    box-shadow      : var(--shadow-sm);
    margin-bottom   : 26px;
    border          : 1px solid var(--border-gold);
    border-top      : 4px solid var(--gold);
    transition      : var(--transition);
}

.sidebar-widget:hover {
    box-shadow      : var(--shadow-md);
}

.sidebar-widget h3 {
    font-family     : 'Playfair Display', serif;
    font-size       : 1.3rem;
    color           : var(--navy);
    margin-top      : 0;
    margin-bottom   : 18px;
    font-weight     : 700;
    padding-bottom  : 12px;
    border-bottom   : 1px solid var(--border-gold);
}

.widget-contact {
    background      : linear-gradient(135deg, var(--navy-dark) 0%, var(--navy) 100%);
    border-top      : 4px solid var(--gold);
    border-color    : transparent;
    position        : relative;
    overflow        : hidden;
}

.widget-contact::before {
    content         : '';
    position        : absolute;
    top             : -30%;
    right           : -20%;
    width           : 180px;
    height          : 180px;
    border-radius   : 50%;
    background      : radial-gradient(circle, rgba(201,151,58,0.12) 0%, transparent 70%);
    pointer-events  : none;
}

.widget-contact h3 {
    color           : var(--white);
    border-bottom-color: rgba(201,151,58,0.2);
}

.widget-contact p {
    color           : rgba(255,255,255,0.78);
    margin-bottom   : 18px;
    font-size       : 0.97rem;
    line-height     : 1.7;
}

.widget-phone {
    display         : block;
    font-family     : 'Playfair Display', serif;
    font-size       : 1.8rem;
    font-weight     : 900;
    color           : var(--gold-light) !important;
    text-decoration : none;
    margin-bottom   : 14px;
    transition      : var(--transition);
    background      : none !important;
    border          : none !important;
    padding         : 0 !important;
}

.widget-phone:hover {
    color           : var(--gold) !important;
    transform       : translateX(4px);
}

.widget-hours {
    display         : flex;
    align-items     : center;
    gap             : 9px;
    color           : rgba(255,255,255,0.7);
    margin-bottom   : 22px;
    font-size       : 0.9rem;
}

.widget-hours i {
    color           : var(--gold);
}

.btn-widget {
    background      : linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
    color           : var(--navy) !important;
    padding         : 13px 28px;
    border-radius   : 50px;
    font-weight     : 700;
    width           : 100%;
    text-align      : center;
    display         : block;
    border          : none !important;
    transition      : var(--transition);
    text-decoration : none !important;
    background-image: none;
    box-shadow      : 0 6px 20px rgba(201,151,58,0.4);
    font-size       : 1rem;
}

.btn-widget:hover {
    background      : linear-gradient(135deg, var(--gold-light) 0%, var(--gold) 100%) !important;
    color           : var(--navy) !important;
    transform       : translateY(-2px);
    box-shadow      : 0 10px 30px rgba(201,151,58,0.5) !important;
}

.widget-list {
    list-style      : none;
    padding         : 0;
    margin          : 0;
}

.widget-list li {
    padding         : 11px 0;
    display         : flex;
    align-items     : center;
    gap             : 12px;
    font-size       : 0.97rem;
    color           : var(--text-mid);
    border-bottom   : 1px solid var(--border-gold);
    font-family     : 'DM Sans', sans-serif;
    transition      : var(--transition);
}

.widget-list li:last-child {
    border-bottom   : none;
}

.widget-list li:hover {
    color           : var(--navy);
    padding-left    : 4px;
}

.widget-list i {
    color           : var(--gold);
    font-size       : 1rem;
    flex-shrink     : 0;
}

.areas-list {
    display         : flex;
    flex-wrap       : wrap;
    gap             : 9px;
}

.area-tag {
    background      : var(--cream);
    color           : var(--navy);
    padding         : 7px 16px;
    border-radius   : 50px;
    font-size       : 0.88rem;
    font-weight     : 600;
    border          : 1px solid var(--border-gold);
    font-family     : 'DM Sans', sans-serif;
    transition      : var(--transition);
    cursor          : default;
}

.area-tag:hover {
    background      : var(--gold-pale);
    border-color    : var(--gold);
    color           : var(--navy);
}

.trust-badges {
    display         : flex;
    flex-direction  : column;
    gap             : 12px;
}

.trust-badge {
    display         : flex;
    align-items     : center;
    gap             : 14px;
    padding         : 14px 16px;
    background      : var(--cream);
    border-radius   : var(--radius);
    border          : 1px solid var(--border-gold);
    transition      : var(--transition);
}

.trust-badge:hover {
    background      : var(--gold-pale);
    border-color    : var(--gold);
}

.trust-badge i {
    width           : 42px;
    height          : 42px;
    background      : linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    color           : var(--navy);
    font-size       : 1.1rem;
    flex-shrink     : 0;
    box-shadow      : 0 4px 12px rgba(201,151,58,0.3);
}

.trust-badge span {
    font-weight     : 600;
    color           : var(--navy);
    font-size       : 0.9rem;
    font-family     : 'DM Sans', sans-serif;
    line-height     : 1.3;
}

/* ── Floating Actions ───────────────────────────────────────── */
.floating-actions {
    position        : fixed;
    bottom          : 90px;
    right           : 28px;
    display         : flex;
    flex-direction  : column;
    gap             : 12px;
    z-index         : 998;
}

.fab-button {
    width           : 52px;
    height          : 52px;
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    font-size       : 1.1rem;
    color           : var(--white) !important;
    text-decoration : none;
    transition      : var(--transition);
    box-shadow      : var(--shadow-md);
}

.fab-phone {
    background      : linear-gradient(135deg, var(--navy) 0%, var(--navy-dark) 100%);
    border          : 2px solid var(--border-gold);
}

.fab-phone:hover {
    background      : var(--gold);
    color           : var(--navy) !important;
    border-color    : var(--gold);
    transform       : translateY(-3px) scale(1.08);
}

.fab-offer {
    background      : linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
    color           : var(--navy) !important;
    border          : 2px solid transparent;
}

.fab-offer:hover {
    background      : linear-gradient(135deg, var(--gold-light) 0%, var(--gold) 100%);
    color           : var(--navy) !important;
    transform       : translateY(-3px) scale(1.08);
    box-shadow      : 0 10px 30px rgba(201,151,58,0.5);
}

/* ── Scroll to Top ──────────────────────────────────────────── */
.scroll-to-top {
    position        : fixed;
    bottom          : 28px;
    right           : 28px;
    z-index         : 999;
    width           : 46px;
    height          : 46px;
    background      : var(--gold);
    color           : var(--navy);
    border          : none;
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    font-size       : 1rem;
    cursor          : pointer;
    box-shadow      : 0 6px 20px rgba(201,151,58,0.45);
    opacity         : 0;
    transform       : translateY(20px);
    transition      : var(--transition);
}

.scroll-to-top.show,
.scroll-to-top:not([style*="display: none"]) {
    opacity         : 1;
    transform       : translateY(0);
}

.scroll-to-top:hover {
    background      : var(--gold-light);
    transform       : translateY(-3px);
}

/* =============================================================
   RESPONSIVE — All breakpoints in one place, after all base styles
   ============================================================= */

@media (max-width: 1100px) {
    /* Page header switches to stacked layout */
    .page-header {
        height          : auto;
        min-height      : unset;
        overflow        : hidden;
        flex-direction  : column;
        align-items     : stretch;
        padding         : 0;
    }

    /* Bg and overlay cover only the banner text area */
    .page-header-bg,
    .page-header-overlay {
        position        : absolute;
        top             : 0;
        left            : 0;
        right           : 0;
        bottom          : auto;
        inset           : unset;
        width           : 100%;
        height          : 500px;
        min-height      : unset;
    }

    .page-header .container {
        position        : relative;
        z-index         : 2;
        width           : 100%;
        min-height      : 280px;
        padding-top     : 40px;
        padding-bottom  : 30px;
    }

    /* Form becomes in-flow — no longer absolute */
    .inner-form-overlay {
        position        : relative !important;
        top             : auto !important;
        right           : auto !important;
        width           : 100% !important;
        height          : auto !important;
        z-index         : 2;
        background      : #0b1f3a;
        padding         : 30px 20px 40px;
        pointer-events  : all !important;
        transform       : none !important;
        display         : block !important;
    }

    .inner-form-overlay .quick-form-wrap {
        max-width       : 680px;
        margin          : 0 auto;
        width           : 100%;
        pointer-events  : all;
    }

    .inner-form-overlay .quick-form-card {
        box-shadow      : 0 8px 32px rgba(0,0,0,0.15);
        width           : 100%;
        box-sizing      : border-box;
    }
}

@media (max-width: 991px) {
    .page-title {
        font-size       : 2rem;
    }

    .page-subtitle {
        font-size       : 1rem;
    }

    .content-sidebar {
        position        : static;
        margin-top      : 40px;
    }

    .content-grid {
        grid-template-columns: 1fr;
    }

    .cta-box {
        padding         : 36px 24px;
    }

    .highlight-box {
        gap             : 16px;
        padding         : 24px 20px;
    }

    .page-content {
        padding         : 50px 0;
    }

    .btgrid .content {
        padding         : 22px 20px;
    }

    .btgrid .row-1 .content {
        padding         : 24px 22px;
    }
}

@media (max-width: 767px) {
    .page-header-bg,
    .page-header-overlay {
        height          : 420px;
    }

    .page-header .container {
        min-height      : 240px;
        padding-top     : 30px;
        padding-bottom  : 20px;
    }

    .page-title {
        font-size       : 1.7rem;
    }

    .page-subtitle {
        font-size       : 0.95rem;
    }

    .page-content {
        padding         : 36px 0;
    }

    .btgrid .content {
        padding         : 18px 16px;
    }

    .btgrid .row-1 .content {
        padding         : 20px 16px;
    }

    .btgrid .content h1 { font-size: 1.35rem; }
    .btgrid .content h2 { font-size: 1.1rem; }
    .btgrid .content h3 { font-size: 1rem; }

    .content-article h2 { font-size: 1.4rem; margin-top: 36px; }
    .content-article h3 { font-size: 1.2rem; }
    .content-article p  { font-size: 1rem; }

    .cta-box {
        padding         : 28px 18px;
        margin-top      : 36px;
    }

    .cta-buttons {
        flex-direction  : column;
    }

    .btn-cta-primary,
    .btn-cta-secondary {
        width           : 100%;
        justify-content : center;
        padding         : 13px 20px;
    }

    .highlight-box {
        flex-direction  : column;
        padding         : 20px 16px;
    }

    .highlight-icon {
        width           : 50px;
        height          : 50px;
        font-size       : 1.3rem;
    }

    .widget-phone {
        font-size       : 1.4rem;
    }

    .sidebar-widget {
        padding         : 20px 16px;
        margin-bottom   : 18px;
    }

    .floating-actions {
        bottom          : 80px;
        right           : 14px;
    }

    .fab-button {
        width           : 44px;
        height          : 44px;
        font-size       : 0.95rem;
    }

    .inner-form-overlay {
        padding         : 20px 15px 30px;
    }

    .inner-form-overlay .qf-row {
        flex-direction  : column;
        gap             : 0;
    }

    .inner-form-overlay .quick-form-card {
        padding         : 18px 14px;
    }
}

@media (max-width: 480px) {
    .page-title {
        font-size       : 1.5rem;
    }

    .page-content {
        padding         : 28px 0;
    }

    .btgrid .col-md-3,
    .btgrid .col-md-4,
    .btgrid .col-md-6,
    .btgrid .col-md-12 {
        padding-right   : 6px;
        padding-left    : 6px;
        margin-bottom   : 12px;
    }

    .cta-box {
        padding         : 22px 14px;
    }

    .highlight-box {
        padding         : 16px 14px;
    }

    .numbered-list li {
        padding-left    : 52px;
    }

    .numbered-list li::before {
        width           : 36px;
        height          : 36px;
        font-size       : 1rem;
    }
}