/* CarryParcel Support — main content only. Navbar/footer styles remain in shared files. */
body.support-page,
.support-page { background: #f7f9fc; color: #18243a; }

/* Establish dedicated stacking layer above injected background (.cp-bg-system at z-index: 0) */
body.support-page main,
body.support-page main.support-page,
body.support-page .cp-support-section,
body.support-page .cp-support-hero,
body.support-page .cp-support-contact-strip {
  position: relative;
  z-index: 1;
}

/* Scope instant 100% visibility strictly to main Support page content */
body.support-page main,
body.support-page main section,
body.support-page main div,
body.support-page main article,
body.support-page main a,
body.support-page main p,
body.support-page main h1,
body.support-page main h2,
body.support-page main h3,
body.support-page main details,
body.support-page main summary {
  opacity: 1 !important;
  visibility: visible !important;
}

body.support-page main .hidden,
body.support-page main .hidden.show,
body.support-page main [class*="hidden"] {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  transition: none !important;
  animation: none !important;
  will-change: auto !important;
}

/* Ensure cookie modals and backdrops are hidden when not active */
body.support-page .cp-notice-modal:not(.show),
body.support-page .cp-banner-bar:not(.show),
body.support-page .cp-banner-backdrop:not(.show),
body.support-page .tb-cookie-modal:not(.show),
body.support-page .tb-cookie-banner:not(.show),
body.support-page .tb-cookie-backdrop:not(.show) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  display: none !important;
}

/* Modal close button pointer-events and high z-index override */
.cp-notice-close,
.tb-cookie-close,
.cp-banner-btn,
.tb-cookie-btn,
.cp-notice-modal-actions,
.tb-cookie-modal-actions {
  position: relative !important;
  z-index: 100000 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
.cp-support-shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.cp-support-section { padding: 72px 0; }
.cp-support-hero { position: relative; overflow: hidden; background: linear-gradient(135deg, #f7faff 0%, #eef5ff 100%); border-bottom: 1px solid #e3eaf4; }
.cp-support-hero::before, .cp-support-hero::after { content:""; position:absolute; border-radius:50%; pointer-events:none; filter:blur(2px); }
.cp-support-hero::before { width:360px; height:360px; right:-120px; top:-150px; background:rgba(30,102,255,.10); }
.cp-support-hero::after { width:280px; height:280px; left:-120px; bottom:-160px; background:rgba(14,165,233,.08); }
.cp-support-hero-grid { position:relative; z-index:1; min-height:520px; display:grid; grid-template-columns:1.25fr .75fr; gap:70px; align-items:center; padding:72px 0; }
.cp-support-kicker { display:inline-flex; align-items:center; gap:8px; color:#1769ff; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.cp-support-kicker i { font-size:8px; }
.cp-support-hero h1 { margin:16px 0 18px; max-width:720px; font-size:clamp(38px,5vw,62px); line-height:1.06; letter-spacing:-.035em; }
.cp-support-hero h1 span { color:#1769ff; }
.cp-support-hero-copy > p { max-width:700px; margin:0; color:#63718a; font-size:17px; line-height:1.8; }
.cp-support-actions, .cp-support-contact-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.cp-support-btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:48px; padding:0 20px; border-radius:12px; text-decoration:none; font-weight:700; transition:transform .18s ease, box-shadow .18s ease, background .18s ease; }
.cp-support-btn:hover { transform:translateY(-1px); }
.cp-support-btn-primary { background:#1769ff; color:#fff; box-shadow:0 10px 24px rgba(23,105,255,.20); }
.cp-support-btn-primary:hover { background:#0f5be4; }
.cp-support-btn-secondary { background:#fff; color:#18304f; border:1px solid #d9e2ef; }
.cp-support-btn-light { background:#fff; color:#1769ff; border:1px solid rgba(255,255,255,.7); }
.cp-support-note { display:flex; align-items:flex-start; gap:8px; margin-top:18px !important; max-width:700px; font-size:13px !important; line-height:1.6 !important; color:#7b879b !important; }
.cp-support-note i { color:#1769ff; margin-top:3px; }
.cp-support-hero-card { padding:30px; background:rgba(255,255,255,.88); border:1px solid #dfe7f2; border-radius:24px; box-shadow:0 20px 55px rgba(36,58,90,.10); }
.cp-support-hero-icon { width:58px; height:58px; display:grid; place-items:center; border-radius:16px; background:#eaf2ff; color:#1769ff; font-size:24px; }
.cp-support-hero-card h2 { margin:20px 0 18px; font-size:25px; }
.cp-support-hero-card ul { list-style:none; margin:0; padding:0; display:grid; gap:13px; }
.cp-support-hero-card li { display:flex; align-items:center; gap:12px; color:#596982; line-height:1.45; }
.cp-support-hero-card li i { width:24px; color:#1769ff; text-align:center; }
.cp-support-heading { max-width:760px; margin-bottom:32px; }
.cp-support-heading h2 { margin:10px 0 10px; font-size:clamp(28px,3.2vw,40px); line-height:1.15; letter-spacing:-.025em; }
.cp-support-heading p { margin:0; color:#718097; line-height:1.7; }
.cp-support-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.cp-support-card { min-height:150px; display:grid; grid-template-columns:auto 1fr auto; gap:18px; align-items:start; padding:24px; background:#fff; border:1px solid #e0e7f0; border-radius:18px; color:inherit; text-decoration:none; transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.cp-support-card:hover { transform:translateY(-3px); border-color:#b9d1ff; box-shadow:0 12px 32px rgba(32,61,100,.08); }
.cp-support-card-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:13px; background:#edf4ff; color:#1769ff; font-size:18px; }
.cp-support-card h3 { margin:2px 0 7px; font-size:18px; }
.cp-support-card p { margin:0; color:#718097; line-height:1.6; font-size:14px; }
.cp-support-arrow { color:#9aa8bb; margin-top:4px; }
.cp-support-area-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.cp-support-area { display:flex; gap:15px; align-items:flex-start; padding:22px; background:#fff; border:1px solid #e0e7f0; border-radius:16px; text-decoration:none; color:inherit; transition:transform .18s ease, box-shadow .18s ease; }
.cp-support-area:hover { transform:translateY(-2px); box-shadow:0 10px 28px rgba(32,61,100,.07); }
.cp-support-area > i { width:42px; height:42px; flex:0 0 42px; display:grid; place-items:center; border-radius:12px; background:#f0f6ff; color:#1769ff; }
.cp-support-area h3 { margin:0 0 6px; font-size:16px; }
.cp-support-area p { margin:0; color:#748197; font-size:13px; line-height:1.55; }
.cp-support-faq { background:#fff; border-top:1px solid #e4eaf2; border-bottom:1px solid #e4eaf2; }
.cp-support-faq-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:60px; align-items:start; }
.cp-support-faq-intro { position:sticky; top:100px; margin:0; }
.cp-support-text-link { display:inline-flex; align-items:center; gap:8px; margin-top:24px; color:#1769ff; font-weight:700; text-decoration:none; }
.cp-support-text-link:hover { text-decoration:underline; }
.cp-support-faq-list { display:grid; gap:10px; }
.cp-support-faq-list details { border:1px solid #e0e7f0; border-radius:14px; background:#fff; overflow:hidden; }
.cp-support-faq-list summary { cursor:pointer; list-style:none; padding:20px 22px; font-weight:700; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.cp-support-faq-list summary::-webkit-details-marker { display:none; }
.cp-support-faq-list summary::after { content:'+'; color:#1769ff; font-size:22px; font-weight:400; }
.cp-support-faq-list details[open] summary::after { content:'−'; }
.cp-support-faq-list details p { margin:0; padding:0 22px 20px; color:#6f7d92; line-height:1.7; font-size:14px; }
.cp-support-contact-strip { padding:58px 0; background:#1769ff; color:#fff; }
.cp-support-contact-inner { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.cp-support-contact-inner .cp-support-kicker { color:#cfe0ff; }
.cp-support-contact-inner h2 { margin:9px 0 8px; font-size:clamp(28px,3vw,38px); }
.cp-support-contact-inner p { margin:0; max-width:680px; color:#e0eaff; line-height:1.65; }
.cp-support-contact-actions { margin-top:0; }
@media (max-width: 900px) {
  .cp-support-hero-grid, .cp-support-faq-grid { grid-template-columns:1fr; gap:34px; }
  .cp-support-hero-grid { min-height:0; }
  .cp-support-faq-intro { position:static; }
  .cp-support-area-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cp-support-contact-inner { align-items:flex-start; flex-direction:column; }
}
@media (max-width: 640px) {
  .cp-support-shell { width:min(100% - 28px,1180px); }
  .cp-support-section { padding:52px 0; }
  .cp-support-hero-grid { padding:54px 0; }
  .cp-support-hero h1 { font-size:38px; }
  .cp-support-card-grid, .cp-support-area-grid { grid-template-columns:1fr; }
  .cp-support-card { grid-template-columns:auto 1fr; }
  .cp-support-card .cp-support-arrow { grid-column:2; display:none; }
  .cp-support-actions, .cp-support-contact-actions { width:100%; }
  .cp-support-btn { flex:1 1 180px; }
  .cp-support-hero-card { padding:24px; }
}
@media (prefers-reduced-motion: reduce) {
  .cp-support-btn, .cp-support-card, .cp-support-area { transition:none; }
}
