body { min-height: 100vh; }
.service-site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  border-bottom: 1px solid rgba(201,161,74,.2);
  background: rgba(13,13,13,.86);
  -webkit-backdrop-filter: blur(18px) saturate(135%);
  backdrop-filter: blur(18px) saturate(135%);
}
.service-site-nav {
  display: flex;
  min-height: 74px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.service-site-brand { display: inline-flex; align-items: center; gap: 12px; }
.service-site-brand img { width: 42px; height: 42px; object-fit: contain; border-radius: 8px; }
.service-site-brand span { color: #f5f1e8; font: 700 1.05rem 'Playfair Display', serif; }
.service-site-links { display: flex; align-items: center; gap: 22px; color: rgba(245,241,232,.75); font-size: .86rem; }
.service-site-links a:hover { color: #e8c06a; }
.service-hero {
  padding: 76px 0 60px;
  background: radial-gradient(ellipse at 82% 15%, rgba(201,161,74,.12), transparent 38%), linear-gradient(150deg,#111,#0b0b0b 70%);
  border-bottom: 1px solid rgba(201,161,74,.18);
}
.service-breadcrumbs { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 24px; color: rgba(245,241,232,.55); font-size: .78rem; }
.service-breadcrumbs a { color: #e8c06a; }
.service-hero h1 { max-width: 850px; margin: 0 0 18px; font: 700 clamp(2.2rem, 5vw, 4.1rem)/1.12 'Playfair Display', serif; }
.service-hero h1 em { color: #e8c06a; font-style: normal; }
.service-hero p { max-width: 720px; color: rgba(245,241,232,.7); font-size: 1rem; line-height: 1.8; }
.service-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.service-content-section { padding: 68px 0; }
.service-content-section h2 { margin: 0 0 12px; font: 700 clamp(1.7rem, 3.5vw, 2.5rem)/1.2 'Playfair Display', serif; }
.service-content-section > .container > p { max-width: 740px; color: rgba(245,241,232,.68); line-height: 1.75; }
.service-detail-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 28px; }
.service-detail-grid .feature-card { min-height: 0; }
.service-planning-band {
  margin-top: 34px;
  padding: 26px;
  border: 1px solid rgba(201,161,74,.22);
  border-radius: 10px;
  background: linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  box-shadow: 8px 9px 24px rgba(0,0,0,.38),inset 1px 1px 0 rgba(255,255,255,.05);
}
.service-planning-band h3 { margin: 0 0 8px; font: 700 1.35rem 'Playfair Display',serif; }
.service-planning-band p { margin: 0; color: rgba(245,241,232,.68); line-height: 1.7; }
.service-faq { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 26px; }
.service-faq details {
  padding: 18px 20px;
  border: 1px solid rgba(201,161,74,.2);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}
.service-faq summary { color: #f5f1e8; font-weight: 700; cursor: pointer; }
.service-faq details p { margin: 12px 0 0; color: rgba(245,241,232,.68); font-size: .9rem; line-height: 1.7; }
.service-related { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.service-page-footer { padding: 24px 0; border-top: 1px solid rgba(201,161,74,.17); color: rgba(245,241,232,.56); font-size: .8rem; }
@media (max-width: 760px) {
  .service-site-links { gap: 12px; font-size: .78rem; }
  .service-detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .service-faq { grid-template-columns: 1fr; }
  .service-hero { padding: 58px 0 48px; }
}
@media (max-width: 520px) {
  .service-site-nav { min-height: 64px; }
  .service-site-brand span { font-size: .92rem; }
  .service-site-links { gap: 10px; }
  .service-site-links a:nth-child(2) { display: none; }
  .service-detail-grid { grid-template-columns: 1fr; }
  .service-hero-actions > a { flex: 1 1 auto; justify-content: center; }
}
