/* ════════════════════════
   SERVICE DETAIL PAGE STYLES
════════════════════════ */

/* ─── SERVICE HERO ─── */
.service-hero {
  background: var(--section-alt,#F5EFE3);
  padding: 150px 6% 80px;
  border-bottom: 1px solid var(--border);
  position: relative; overflow: hidden;
}
.service-hero::before { content:''; position:absolute; bottom:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,var(--gold),transparent); }

.sh-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.sh-icon { width: 80px; height: 80px; border: 1.5px solid var(--gold); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 2rem; color: var(--gold); margin-bottom: 28px; }
.sh-label { font-family: var(--font-ui); font-size: 0.56rem; letter-spacing: 4px; text-transform: uppercase; color: var(--gold); margin-bottom: 16px; }
.sh-title { font-family: var(--font-display); font-size: clamp(2.2rem,3.8vw,3.6rem); font-weight: 400; color: var(--text-dark); line-height: 1.1; margin-bottom: 20px; }
.sh-title em { font-style: italic; color: var(--gold); }
.sh-desc { font-size: 0.92rem; line-height: 1.95; color: var(--text-mid); font-weight: 300; margin-bottom: 36px; }

.sh-img { position: relative; padding-bottom: 20px; padding-right: 20px; }
.sh-img img { width: 100%; height: 420px; object-fit: cover; }
.sh-img::after { content:''; position:absolute; bottom:0; right:0; width:calc(100% - 20px); height:calc(100% - 20px); border:1px solid var(--border); z-index:-1; }

/* ─── FEATURES ─── */
.features-section { padding: 100px 6%; background: var(--cream); }
.features-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; margin-top: 56px; }
.feat-card {
  background: #fff; border: 1px solid var(--border);
  padding: 32px 26px; position: relative; overflow: hidden;
  transition: all 0.35s;
}
.feat-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-3px); }
.feat-card::before { content:''; position:absolute; bottom:0; left:0; right:0; height:3px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform 0.4s; }
.feat-card:hover::before { transform:scaleX(1); }
.feat-ic { width: 48px; height: 48px; border-radius:50%; background:rgba(184,134,11,0.07); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:1.2rem; color:var(--gold); margin-bottom:18px; transition:all 0.3s; }
.feat-card:hover .feat-ic { background:var(--gold); color:#fff; border-color:var(--gold); }
.feat-title { font-family:var(--font-display); font-size:1.1rem; font-weight:600; color:var(--text-dark); margin-bottom:10px; }
.feat-desc { font-size:0.82rem; line-height:1.85; color:var(--text-mid); font-weight:300; }

/* ─── DETAIL LIST ─── */
.details-section { padding: 80px 6%; background: var(--section-alt,#F5EFE3); }
.detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start; margin-top: 50px; }
.detail-list { display: grid; gap: 12px; }
.detail-item { display: flex; align-items: flex-start; gap: 14px; padding: 16px 20px; background: #fff; border: 1px solid var(--border); transition: all 0.3s; }
.detail-item:hover { border-color: var(--gold); box-shadow: var(--shadow-sm); }
.detail-item-link { text-decoration: none; align-items: center; }
.detail-item-link .detail-text { flex: 1; }
.detail-item-link:hover .detail-arrow { transform: translateX(4px); }
.detail-check { color: var(--gold); margin-top: 2px; flex-shrink: 0; }
.detail-text { font-size: 0.85rem; line-height: 1.75; color: var(--text-body); }
.detail-arrow { color: var(--gold); font-size: 0.7rem; transition: transform 0.3s; }

/* ─── RELATED SERVICES ─── */
.related-section { padding: 80px 6%; background: var(--cream); }
.related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; margin-top: 50px; }
.related-card { background: var(--section-alt); border: 1px solid var(--border); padding: 28px 24px; transition: all 0.3s; }
.related-card:hover { border-color: var(--gold); background: #fff; box-shadow: var(--shadow-sm); }
.related-icon { font-size: 1.3rem; color: var(--gold); margin-bottom: 14px; }
.related-title { font-family: var(--font-display); font-size: 1.1rem; font-weight: 600; color: var(--text-dark); margin-bottom: 8px; }
.related-link { font-family: var(--font-ui); font-size: 0.56rem; letter-spacing: 2px; text-transform: uppercase; color: var(--gold); display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; transition: gap 0.3s; }
.related-link:hover { gap: 10px; }

/* ─── RESPONSIVE ─── */
@media (max-width:1024px) { .sh-grid { grid-template-columns: 1fr; gap: 50px; } .features-grid { grid-template-columns: 1fr 1fr; } .detail-grid { grid-template-columns: 1fr; } }
@media (max-width:768px) { .features-grid { grid-template-columns: 1fr; } .related-grid { grid-template-columns: 1fr; } }
