    /* Page-specific styles only - common.css handles all utilities */
    /* ==============================
       BRAND VARIABLES
    ============================== */
    :root {
      --dark-blue: #0c2c4a;
      --sky-blue: #0ea5e9;
      --golden: #f59e0b;
      --light-bg: #f8fafc;
      --text-dark: #1f2937;
      --text-muted: #6b7280;
      --card-radius: 18px;
    }


    /* ── PAGE HERO ── */
    .page-hero {
      background: linear-gradient(135deg, var(--db) 0%, #1a4a6e 50%, var(--sb) 100%);
      padding: 130px 0 70px;
      position: relative;
      overflow: hidden;
    }
    .page-hero::before {
      content:''; position:absolute;
      top:-60px; right:-60px; width:300px; height:300px;
      background:rgba(245,158,11,.12); border-radius:50%;
    }
    .page-hero::after {
      content:''; position:absolute;
      bottom:-80px; left:-80px; width:400px; height:400px;
      background:rgba(14,165,233,.1); border-radius:50%;
    }
    .page-hero .hero-grid {
      position:absolute; inset:0;
      background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);
      background-size:36px 36px; pointer-events:none;
    }
    .page-hero .hero-inner { position:relative; z-index:2; }
    .page-hero .hero-badge {
      display:inline-block;
      background:rgba(245,158,11,.2); color:var(--golden);
      border:1px solid rgba(245,158,11,.4); border-radius:50px;
      padding:6px 20px; font-size:12px; font-weight:700;
      letter-spacing:2px; text-transform:uppercase; margin-bottom:16px;
    }
    .page-hero h1 { font-size:52px; font-weight:900; color:#fff; line-height:1.1; font-family:'Raleway',sans-serif; }
    .page-hero h1 span { color:var(--golden); }
    .page-hero p { color:rgba(255,255,255,.8); font-size:17px; line-height:1.7; max-width:560px; }
    .breadcrumbs-bar {
      background:rgba(255,255,255,.08); border-top:1px solid rgba(255,255,255,.1);
      padding:14px 0; position:relative; z-index:2;
    }
    .breadcrumbs-bar ol { display:flex; list-style:none; padding:0; margin:0; gap:8px; }
    .breadcrumbs-bar ol li { color:rgba(255,255,255,.6); font-size:13px; }
    .breadcrumbs-bar ol li a { color:var(--golden); text-decoration:none; }
    .breadcrumbs-bar ol li.current { color:#fff; font-weight:600; }
    .breadcrumbs-bar ol li:not(:last-child)::after { content:'/'; margin-left:8px; }

    /* hero contact quick-info cards */
    .hero-contact-card {
      background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.15);
      border-radius:14px; padding:20px 22px;
      backdrop-filter:blur(8px); transition:.3s;
      display:flex; align-items:flex-start; gap:14px;
    }
    .hero-contact-card:hover { background:rgba(255,255,255,.16); transform:translateY(-4px); }
    .hero-contact-card .hcc-icon {
      width:44px; height:44px; border-radius:11px;
      background:linear-gradient(135deg,var(--golden),var(--gold-d));
      display:flex; align-items:center; justify-content:center;
      font-size:18px; color:#fff; flex-shrink:0;
    }
    .hero-contact-card h5 { font-size:13px; color:rgba(255,255,255,.6); font-weight:500; margin:0 0 4px; }
    .hero-contact-card p { font-size:14px; color:#fff; font-weight:600; margin:0; }

    /* ── CONTACT SECTION ── */
    .contact-section { padding:90px 0; background:#fff; }

    /* Info cards */
    .contact-info-card {
      background:var(--light-bg); border-radius:var(--card-radius);
      padding:32px 28px; height:100%; text-align:center;
      border:2px solid transparent; transition:.35s;
      position:relative; overflow:hidden;
    }
    .contact-info-card::after {
      content:''; position:absolute;
      bottom:0; left:0; right:0; height:3px;
      background:linear-gradient(90deg,var(--dark-blue),var(--sky-blue));
      transform:scaleX(0); transform-origin:left; transition:.35s;
    }
    .contact-info-card:hover::after { transform:scaleX(1); }
    .contact-info-card:hover { box-shadow:0 20px 50px rgba(12,44,74,.1); transform:translateY(-6px); }
    .contact-info-card .ci-icon {
      width:64px; height:64px; border-radius:16px;
      background:linear-gradient(135deg,var(--dark-blue),#1a4a6e);
      display:flex; align-items:center; justify-content:center;
      font-size:26px; color:#fff; margin:0 auto 18px; transition:.35s;
    }
    .contact-info-card:hover .ci-icon { background:linear-gradient(135deg,var(--golden),var(--gold-d)); transform:rotate(8deg) scale(1.1); }
    .contact-info-card h4 { font-size:17px; font-weight:700; color:var(--text-dark); margin-bottom:8px; }
    .contact-info-card p { color:var(--text-muted); font-size:14px; line-height:1.7; margin:0; }
    .contact-info-card a { color:var(--dark-blue); font-weight:600; text-decoration:none; }
    .contact-info-card a:hover { color:var(--golden); }

    /* Map wrapper */
    .map-wrapper {
      border-radius:20px; overflow:hidden;
      box-shadow:0 8px 30px rgba(0,0,0,.1);
      border:3px solid rgba(12,44,74,.08);
    }
    .map-wrapper iframe { display:block; width:100%; height:320px; border:0; }

    /* Contact Form Card */
    .contact-form-card {
      background:var(--light-bg); border-radius:var(--card-radius);
      padding:40px 40px;
      box-shadow:0 4px 30px rgba(0,0,0,.06);
    }
    .contact-form-card .form-control,
    .contact-form-card .form-select {
      border:2px solid rgba(12,44,74,.1);
      border-radius:10px; padding:12px 16px;
      font-size:14px; transition:.3s;
      background:#fff;
    }
    .contact-form-card .form-control:focus,
    .contact-form-card .form-select:focus {
      border-color:var(--dark-blue);
      box-shadow:0 0 0 3px rgba(12,44,74,.1);
    }
    .contact-form-card label { font-weight:600; font-size:13px; color:var(--text-dark); margin-bottom:6px; }
    .contact-form-card textarea { resize:none; }

    .btn-submit {
      background:linear-gradient(135deg,var(--dark-blue),#1a4a6e);
      color:#fff; border:none; border-radius:50px;
      padding:13px 40px; font-weight:700; font-size:15px;
      cursor:pointer; transition:.3s; width:100%;
      display:flex; align-items:center; justify-content:center; gap:8px;
    }
    .btn-submit:hover {
      background:linear-gradient(135deg,var(--golden),var(--gold-d));
      transform:translateY(-3px); box-shadow:0 10px 28px rgba(245,158,11,.35);
    }

    /* Side contact panel */
    .contact-side-panel { padding-left:10px; }
    .side-info-item {
      display:flex; align-items:flex-start; gap:14px;
      padding:18px 20px; background:#fff; border-radius:12px;
      margin-bottom:12px; box-shadow:0 2px 12px rgba(0,0,0,.06);
      border-left:3px solid var(--dark-blue); transition:.3s;
    }
    .side-info-item:hover { border-left-color:var(--golden); transform:translateX(4px); box-shadow:0 4px 20px rgba(12,44,74,.1); }
    .side-info-item .sii-icon {
      width:40px; height:40px; border-radius:10px;
      background:linear-gradient(135deg,var(--dark-blue),var(--sky-blue));
      display:flex; align-items:center; justify-content:center;
      font-size:17px; color:#fff; flex-shrink:0; transition:.3s;
    }
    .side-info-item:hover .sii-icon { background:linear-gradient(135deg,var(--golden),var(--gold-d)); }
    .side-info-item h5 { font-size:13px; color:var(--text-muted); font-weight:500; margin:0 0 3px; }
    .side-info-item p { font-size:14px; color:var(--text-dark); font-weight:600; margin:0; }

    /* FAQ accordion */
    .faq-section { padding:90px 0; background:var(--light-bg); }
    .faq-accordion .accordion-item {
      border:2px solid rgba(12,44,74,.08); border-radius:12px!important;
      margin-bottom:12px; overflow:hidden;
    }
    .faq-accordion .accordion-button {
      font-weight:600; font-size:15px; color:var(--text-dark);
      background:#fff; border-radius:12px!important; padding:18px 22px;
    }
    .faq-accordion .accordion-button:not(.collapsed) {
      color:var(--dark-blue); background:rgba(12,44,74,.04);
      box-shadow:none;
    }
    .faq-accordion .accordion-button::after {
      filter:none;
    }
    .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='%230c2c4a'%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");
    }
    .faq-accordion .accordion-body { font-size:14px; color:var(--text-muted); line-height:1.75; padding:0 22px 18px; background:#fff; }

    /* ── CTA BANNER ── */
    .cta-banner {
      padding:70px 0;
      background:linear-gradient(135deg,var(--dark-blue) 0%,#1a4a6e 50%,var(--sky-blue) 100%);
      position:relative; overflow:hidden;
    }
    .cta-banner::before {
      content:''; position:absolute; top:-60px; right:-60px;
      width:300px; height:300px; background:rgba(245,158,11,.1); border-radius:50%;
    }
    .cta-banner h2 { font-size:38px; font-weight:800; color:#fff; font-family:'Raleway',sans-serif; }
    .cta-banner p { color:rgba(255,255,255,.8); font-size:17px; }
    .cta-banner .btn-light {
      border-radius:50px; padding:12px 32px; font-weight:700;
      color:var(--dark-blue); border:none; transition:.3s;
    }
    .cta-banner .btn-light:hover { background:var(--golden); color:#fff; transform:translateY(-3px); box-shadow:0 10px 25px rgba(245,158,11,.4); }
    .cta-banner .btn-outline-light {
      border-radius:50px; padding:12px 32px; font-weight:700;
      border:2px solid rgba(255,255,255,.5); color:#fff; transition:.3s;
    }
    .cta-banner .btn-outline-light:hover { background:rgba(255,255,255,.15); border-color:#fff; color:#fff; transform:translateY(-3px); }

    /* ── MODAL ── */
    .glass-modal {
      background:rgba(255,255,255,.97); backdrop-filter:blur(20px);
      border:1px solid rgba(255,255,255,.2); box-shadow:0 25px 50px rgba(0,0,0,.15);
      border-radius:20px;
    }

    /* ── RESPONSIVE ── */
    @media(max-width:991px){
      .page-hero h1 { font-size:36px; }
      .section-heading { font-size:28px; }
      .contact-side-panel { padding-left:0; padding-top:30px; }
      .contact-form-card { padding:28px 22px; }
    }
    @media(max-width:767px){
      .page-hero h1 { font-size:30px; }
      .page-hero { padding:110px 0 50px; }
    }
