/* TURBOHOST v4.104 — content-specific adjustments ONLY.
   Header, footer, hero, plan cards, FAQ and CTA are the shared landing components.
   Shared header and footer are loaded unchanged by the root PHP page. */
.th102-assistance-page {
  --th-assistance-blue:#1062fe;
  --th-assistance-cyan:#009aff;
  --svg-icon-color-1:#1062fe;
  --svg-icon-color-2:#009aff;
  --svg-icon-color-3:#143c79;
  --svg-icon-color-4:#fff;
  display:block;
  width:100%;min-width:0;overflow:clip;
}
.th102-assistance-page, .th102-assistance-page * {box-sizing:border-box;}
.th102-assistance-page .landing-hero--assistance { isolation:isolate; }
.th102-assistance-page .landing-hero--assistance .landing-hero__content {z-index:3;}
.th102-assistance-page .landing-hero--assistance .landing-hero__bg {z-index:0;}
/* Reuse the four-column grid of the landing plan-cards component. */
.th102-assistance-page .th-assistance-plans {padding:90px 0 83px;}
.th102-assistance-page .th-assistance-plans .container {max-width:1280px;margin:0 auto;padding:0 24px;}
.th102-assistance-page .th-assistance-plans .plan-cards__subtitle {max-width:850px;margin:0 auto 32px;text-align:center;}
.th102-assistance-page .th-assistance-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.th102-assistance-page .th-assistance-grid > [class*="col-"] {min-width:0;max-width:100%;padding:0;display:flex;}
.th102-assistance-page .th-assistance-grid .th-assistance-card {
  flex:1 1 auto;min-height:460px;height:100%;padding:26px 19px 24px;
  text-align:center;align-items:center;
}
.th102-assistance-page .th-assistance-card .plan-card__icon {
  width:74px;height:74px;margin:0 auto 18px;
  background:transparent;border:0;border-radius:0;
}
.th102-assistance-page .th-assistance-card .plan-card__icon svg {
  width:64px;height:64px;max-width:64px;
  --svg-icon-color-1:#0866ff;
  --svg-icon-color-2:#00a4ff;
  --svg-icon-color-3:#123b78;
}
.th102-assistance-page .th-assistance-card .plan-card__name {
  margin:0 0 15px;font-size:1.17rem;line-height:1.32;color:#071a3d;
}
.th102-assistance-page .th-assistance-card .plan-card__description,
.th102-assistance-page .th-assistance-card .plan-card__description p {
  margin:0;color:#64748b;font-size:.89rem;line-height:1.6;text-align:center;
}
.th102-assistance-page .th-assistance-card .th-assistance-copy {flex:1 1 auto;}
.th102-assistance-page .th-assistance-card .th-assistance-price {
  width:100%;margin-top:auto;padding-top:20px;border-top:1px solid #dfe6f1;
}
.th102-assistance-page .th-assistance-card .price {display:block;}
.th102-assistance-page .th-assistance-card .plan-card__amount {
  color:#071a3d;font-size:clamp(1.4rem,2.2vw,1.85rem);
  font-weight:700;line-height:1.35;
}
.th102-assistance-page .th-assistance-card .plan-card__period {font-size:.82rem;color:#64748b;margin-top:6px;}
.th102-assistance-page .th-assistance-card .th-points {margin:16px 0 0;color:#075cff;font-weight:700;font-size:13px;}
.th102-assistance-page .th-assistance-card :is(.th-points-cycle,.th-included-note) {
  margin-top:5px;color:#64748b;font-size:11px;line-height:1.5;
}
.th102-assistance-page .th-assistance-plans .alert.alert-light {
  max-width:1010px;margin:0 auto 30px;padding:0;
  border:0;border-radius:0;box-shadow:none;
  background:transparent;color:#475569;font-size:13px;line-height:1.75;
}
.th102-assistance-page .th-assistance-plans .alert.alert-light strong {color:#071a3d;}
.th102-assistance-page .th-assistance-plans .section-title.text-center {margin:28px 0 0;text-align:center;}
/* Existing marketing buttons: use their global variants instead of custom WHMCS buttons. */
.th102-assistance-page :is(.landing-hero,.site-section,.cta-final) .btn.btn-primary,
.th102-assistance-page .th-assistance-plans .btn.btn-primary {
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:12px 22px;
  border:0;border-radius:999px;
  background:#1062fe;color:#fff;text-decoration:none;
  font-size:13px;font-weight:650;
}
.th102-assistance-page .th-assistance-plans .btn.btn-primary:hover,
.th102-assistance-page .site-section .btn.btn-primary:hover {background:#0052e3;color:#fff;}
/* Content sections use landing widths and spacious typography. */
.th102-assistance-page .site-section {
  padding:85px 0;
  background:transparent;
  color:#e7f0ff;
  scroll-margin-top:80px;
}
.th102-assistance-page .site-section.section-secondary,
.th102-assistance-page .site-section.th-assistance-info {background:#0a2fa8;}
.th102-assistance-page .site-section .container {
  width:min(1180px,calc(100% - 40px));max-width:100%;margin:0 auto;
}
.th102-assistance-page .site-section .section-title {
  margin:0 0 20px;color:#fff;
  font-size:clamp(26px,3vw,40px);font-weight:700;line-height:1.15;
}
.th102-assistance-page .site-section .section-subtitle {
  max-width:920px;margin:0 0 30px;color:#bcd0ef;font-size:1rem;line-height:1.7;
}
.th102-assistance-page .site-section .alert.alert-light {
  padding:0;margin:25px 0;
  border:0;border-radius:0;box-shadow:none;
  background:transparent;color:#d5e5ff;
}
.th102-assistance-page .site-section .alert.alert-light strong {color:#fff;}
.th102-assistance-page .site-section .row-eq-height {
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;
}
.th102-assistance-page .site-section .th-points-card {
  height:100%;padding:27px 22px;
  border:2px solid rgb(117 151 255 / 45%);border-radius:28px;
  background:transparent;
}
.th102-assistance-page .site-section .th-points-card .package-title {color:#fff;margin:0 0 14px;font-size:19px;}
.th102-assistance-page .site-section .th-points-card .package-desc {color:#c5d6f1;line-height:1.7;}
.th102-assistance-page .site-section .th-points-card .th-points {color:#9dd5ff;font-weight:700;margin-top:12px;}
.th102-assistance-page .site-section .row-eq-height > [class*="col-"] {min-width:0;}
.th102-assistance-page .th-assistance-info .row {
  display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;
}
.th102-assistance-page .th-assistance-info .row > [class*="col-"] {min-width:0;}
.th102-assistance-page .th-assistance-info img {width:100%;max-width:540px;height:auto;border-radius:20px;}
.th102-assistance-page .th-assistance-info .th-support-flow {margin:0 0 26px;padding-left:23px;}
.th102-assistance-page .th-assistance-info .th-support-flow li {margin:0 0 14px;color:#d7e6ff;line-height:1.65;}
.th102-assistance-page .th-assistance-info .th-support-flow strong {color:#fff;}
/* Shared FAQ section uses <details> exactly as the main landings. */
.th102-assistance-page .th-assistance-faq {padding:95px 0;}
.th102-assistance-page .th-assistance-faq .faq-title {font-size:clamp(27px,3vw,40px);}
.th102-assistance-page .th-assistance-faq .faq-a p {margin:0 0 10px;color:#64748b;}
.th102-assistance-page .th-assistance-faq .faq-a p:last-child {margin-bottom:0;}
.th102-assistance-page .th-assistance-faq .th-assistance-faq-notes {margin-top:30px;color:#64748b;font-size:12px;line-height:1.7;}
.th102-assistance-page .th-assistance-faq .th-assistance-faq-notes p {margin:0 0 12px;}
.th102-assistance-page .th-assistance-faq .th-assistance-faq-notes a {color:#075cff;}
/* Shared landing CTA */
.th102-assistance-page .th-assistance-cta {padding:90px 24px;}
@media (max-width:1150px) {
  .th102-assistance-page .th-assistance-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .th102-assistance-page .site-section .row-eq-height {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:780px) {
  .th102-assistance-page .th-assistance-info .row {grid-template-columns:1fr;gap:12px;}
  .th102-assistance-page .site-section {padding:60px 0;}
  .th102-assistance-page .th-assistance-plans {padding:65px 0;}
  .th102-assistance-page .th-assistance-faq {padding:65px 0;}
}
@media (max-width:540px) {
  .th102-assistance-page .th-assistance-grid,
  .th102-assistance-page .site-section .row-eq-height {grid-template-columns:minmax(0,1fr);}
  .th102-assistance-page .th-assistance-grid .th-assistance-card {min-height:0;}
  .th102-assistance-page .th-assistance-plans .container {padding:0 16px;}
  .th102-assistance-page .site-section .container {width:calc(100% - 30px);}
  .th102-assistance-page .th-assistance-cta {padding:65px 18px;}
}
