/* SERVICE DETAIL PAGES (Umrah, Insurance, Recruitment, Flight, Hotel) */
.tx-sd-hero{position:relative;background-size:cover;background-position:center;padding:70px 0 80px;background-color:#00406B}
.tx-sd-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,20,50,.78) 0%,rgba(0,20,50,.35) 70%)}
.tx-sd-eyebrow{display:block;position:relative;z-index:2;color:#f5a623;font:italic 700 1.05rem 'Nunito Sans',sans-serif;margin-bottom:8px}
.tx-sd-heading{position:relative;z-index:2;color:#fff;font:800 clamp(2rem,4.5vw,3rem) 'Oswald',sans-serif;text-transform:uppercase;margin-bottom:10px}
.tx-sd-hero .bc-trail{position:relative;z-index:2}

.tx-sd-kicker{display:block;color:#e63946;font:italic 700 .95rem 'Nunito Sans',sans-serif;margin-bottom:6px}
.tx-sd-h2{font:800 clamp(1.5rem,3vw,2rem) 'Oswald',sans-serif;color:#00406B;margin-bottom:14px}
.tx-sd-h2.text-center{margin-bottom:34px}

.tx-sd-intro{padding:64px 0 50px}
.tx-sd-text p{color:#555;font-size:.95rem;line-height:1.8;margin-bottom:12px}
.tx-sd-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.tx-sd-btn{display:inline-flex;align-items:center;gap:8px;border:2px solid transparent;border-radius:30px;padding:12px 26px;font:700 .9rem 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;cursor:pointer;transition:.25s}
.tx-sd-btn--gold{background:#f5a623;color:#fff}.tx-sd-btn--gold:hover{background:#d4880c;color:#fff}
.tx-sd-btn--outline{border-color:#00406B;color:#00406B;background:transparent}.tx-sd-btn--outline:hover{background:#00406B;color:#fff}
.tx-sd-btn--ghost{border-color:rgba(255,255,255,.6);color:#fff;background:transparent}.tx-sd-btn--ghost:hover{background:#fff;color:#00406B}

.tx-sd-photo{position:relative}
.tx-sd-photo img{width:100%;height:400px;object-fit:cover;border-radius:16px;box-shadow:0 20px 44px rgba(0,64,107,.2);display:block}
.tx-sd-photo-badge{position:absolute;left:-14px;bottom:26px;background:#00406B;color:#fff;border-radius:12px;padding:14px 20px;box-shadow:0 12px 30px rgba(0,0,0,.2);border-left:4px solid #f5a623}
.tx-sd-photo-badge strong{display:block;font:700 1.6rem 'Oswald',sans-serif;color:#f5a623;line-height:1}
.tx-sd-photo-badge span{font-size:.8rem;opacity:.9}

.tx-sd-grid{display:grid;gap:22px}
.tx-sd-grid--3{grid-template-columns:repeat(3,1fr)}
.tx-sd-grid--4{grid-template-columns:repeat(4,1fr)}

.tx-sd-features{padding:56px 0;background:#f7f9fb}
.tx-sd-card{background:#fff;border:1px solid #e9ecef;border-radius:14px;padding:26px 22px;transition:.25s}
.tx-sd-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(0,64,107,.12);border-color:transparent}
.tx-sd-card-icon{width:52px;height:52px;border-radius:12px;background:#00406B;color:#fff;font-size:1.25rem;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.tx-sd-card h3,.tx-sd-type h3{font:700 1.05rem 'Oswald',sans-serif;color:#00406B;margin:0 0 6px}
.tx-sd-card p,.tx-sd-type p{color:#6c757d;font-size:.87rem;line-height:1.6;margin:0}

.tx-sd-types{padding:56px 0 20px}
.tx-sd-type{text-align:center;padding:26px 18px;border:1px solid #e9ecef;border-radius:14px;border-top:4px solid #f5a623;background:#fff}
.tx-sd-type-icon{width:60px;height:60px;border-radius:50%;background:#f1f6fa;color:#015285;font-size:1.4rem;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}

.tx-sd-tours{padding:50px 0 30px}
.tx-sd-tour{display:block;background:#fff;border:1px solid #e9ecef;border-radius:14px;overflow:hidden;text-decoration:none;transition:.25s}
.tx-sd-tour:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(0,64,107,.14)}
.tx-sd-tour-img{display:block;height:200px;background:#dfe8ef;overflow:hidden}
.tx-sd-tour-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.tx-sd-tour:hover .tx-sd-tour-img img{transform:scale(1.06)}
.tx-sd-tour-body{display:block;padding:16px 18px 18px}
.tx-sd-tour-body strong{display:block;font:700 1.02rem 'Oswald',sans-serif;color:#00406B;margin-bottom:4px}
.tx-sd-tour-body em{display:block;font-style:normal;color:#6c757d;font-size:.82rem;margin-bottom:8px}
.tx-sd-tour-link{font:700 .8rem 'Oswald',sans-serif;text-transform:uppercase;color:#015285}

.tx-sd-faq{padding:50px 0 20px}
.tx-sd-faq-list{max-width:820px;margin:0 auto}
.tx-sd-faq-item{border:1px solid #e9ecef;border-radius:12px;margin-bottom:12px;background:#fff;overflow:hidden}
.tx-sd-faq-item summary{cursor:pointer;list-style:none;padding:16px 50px 16px 20px;font:700 .98rem 'Oswald',sans-serif;color:#00406B;position:relative}
.tx-sd-faq-item summary::-webkit-details-marker{display:none}
.tx-sd-faq-item summary::after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.4rem;color:#f5a623}
.tx-sd-faq-item[open] summary::after{content:'–'}
.tx-sd-faq-item[open] summary{background:#f7f9fb}
.tx-sd-faq-item p{margin:0;padding:14px 20px 18px;color:#6c757d;font-size:.9rem;line-height:1.7}

.tx-sd-cta{padding:40px 0 60px}
.tx-sd-cta-band{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:linear-gradient(120deg,#00406B,#015285);border-radius:16px;padding:34px 40px;color:#fff}
.tx-sd-cta-band h2{font:700 1.6rem 'Oswald',sans-serif;margin:0 0 6px;color:#fff}
.tx-sd-cta-band p{margin:0;opacity:.85;font-size:.95rem;max-width:520px}
.tx-sd-cta-band .tx-sd-actions{margin-top:0}

@media (max-width:991px){
  .tx-sd-grid--3{grid-template-columns:repeat(2,1fr)}
  .tx-sd-grid--4{grid-template-columns:repeat(2,1fr)}
  .tx-sd-photo img{height:320px}
  .tx-sd-photo-badge{left:10px}
}
@media (max-width:575px){
  .tx-sd-hero{padding:50px 0 60px}
  .tx-sd-intro{padding:44px 16px 30px}
  .tx-sd-features,.tx-sd-types,.tx-sd-tours,.tx-sd-faq{padding-left:16px;padding-right:16px}
  .tx-sd-cta{padding:30px 16px 48px}
  .tx-sd-grid--3,.tx-sd-grid--4{grid-template-columns:1fr}
  .tx-sd-photo img{height:240px}
  .tx-sd-actions .tx-sd-btn{flex:1 1 100%;justify-content:center}
  .tx-sd-cta-band{padding:26px 22px;text-align:center;justify-content:center}
}

/* ---- additions specific to the shared service layout ---- */
.tx-sd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tx-sd-photo--empty{height:400px;border-radius:16px;background:linear-gradient(135deg,#00406B,#015285);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.25);font-size:7rem}
.tx-sd-steps{padding:56px 0;background:#f7f9fb;margin-top:30px}
.tx-sd-steps-row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.tx-sd-step{text-align:center;padding:0 10px;position:relative}
.tx-sd-step:not(:last-child)::after{content:'';position:absolute;top:28px;left:calc(50% + 40px);right:calc(-50% + 40px);border-top:2px dashed #c9d6e0}
.tx-sd-step-num{width:56px;height:56px;border-radius:50%;background:#00406B;color:#fff;font:700 1.3rem 'Oswald',sans-serif;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;position:relative;z-index:1;border:4px solid #f7f9fb;box-shadow:0 0 0 2px #00406B}
.tx-sd-step h4{font:700 1rem 'Oswald',sans-serif;color:#00406B;margin:0 0 6px}
.tx-sd-step p{color:#6c757d;font-size:.84rem;line-height:1.55;margin:0}
.tx-sd-faq{padding:56px 0 20px}
@media (max-width:991px){
  .tx-sd-grid{grid-template-columns:repeat(2,1fr)}
  .tx-sd-steps-row{grid-template-columns:repeat(2,1fr);row-gap:30px}
  .tx-sd-step::after{display:none!important}
  .tx-sd-photo--empty{height:260px}
}
@media (max-width:575px){
  .tx-sd-grid,.tx-sd-steps-row{grid-template-columns:1fr}
  .tx-sd-steps{padding:44px 16px}
  .tx-sd-photo--empty{height:200px;font-size:5rem}
}
