/* Industry pages, Apple product-page layer. Loaded after telecom.css on the seven industry pages. */
html body .tc-section { padding-top: clamp(6rem, 11vw, 10rem) !important; padding-bottom: clamp(6rem, 11vw, 10rem) !important; }
html body .tc-h2, html body .tc-section h2 { font-size: clamp(2.4rem, 1.4rem + 3.4vw, 4.25rem) !important; font-weight: 700 !important; letter-spacing: -0.045em !important; line-height: 1.04 !important; }
html body .tc-hero h1 { font-size: clamp(2.8rem, 1.2rem + 5vw, 5.5rem) !important; font-weight: 700 !important; letter-spacing: -0.05em !important; line-height: 1.0 !important; }
html body .tc-lead { font-size: clamp(1.15rem, 1rem + 0.6vw, 1.5rem) !important; line-height: 1.4 !important; letter-spacing: -0.015em !important; }
html body .tc-light .tc-lead, html body .tc-section:not(.tc-dark) .tc-lead { color: #6E6E73 !important; }
html body .tc-eyebrow { text-transform: none !important; letter-spacing: -0.01em !important; font-size: 1rem !important; font-weight: 600 !important; }
html body .tc-btn { border-radius: 999px !important; padding: 1rem 2rem !important; font-size: 1.0625rem !important; transition: transform .3s cubic-bezier(.34,1.56,.64,1), background .2s !important; }
html body .tc-btn:active { transform: scale(.96) !important; }
html body .tc-cards > *, html body .tc-metric, html body .tc-faq-item, html body .mo-card, html body .tc-dash, html body .tc-modal-panel, html body .tc-note {
  border-radius: 24px !important;
html body }
html body .tc-section:not(.tc-dark) .tc-cards > *, html body .tc-section:not(.tc-dark) .tc-metric, html body .mo-card, html body .tc-faq-item {
  border-color: transparent !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.04), 0 12px 32px rgba(0,0,0,.06) !important;
  transition: transform .4s cubic-bezier(.34,1.56,.64,1), box-shadow .4s !important;
html body }
html body .tc-section:not(.tc-dark) .tc-cards > *:hover, html body .mo-card:hover { transform: translateY(-4px); box-shadow: 0 4px 16px rgba(0,0,0,.06), 0 24px 56px rgba(0,0,0,.10) !important; }
html body .tc-chip-tag, html body .mo-tab { border-radius: 999px !important; }
html body .tc-uc-ic, html body .tc-ic, html body .mo-ic { border-radius: 14px; }
@media (prefers-reduced-motion: reduce) { .tc-cards > *:hover, html body .mo-card:hover { transform: none !important; } }
/* Use-case pop-up: one clean panel, nothing clipped at top or bottom */
html body .tc-modal-panel { background: #FFFFFF !important; padding: 2.75rem 2.5rem !important; }
html body .tc-modal-grid { background: none !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important; overflow: visible !important; max-height: none !important; padding: 0 !important; }
html body .tc-modal-grid > div:last-child { padding-top: .25rem; padding-bottom: .5rem; }
html body .tc-modal-x { z-index: 2; }
/* Closing banner heading: solid black, no faded gradient */
html body .tc-final h2, html body .tc-final .tc-h2 { color: #1D1D1F !important; -webkit-text-fill-color: #1D1D1F !important; background: none !important; }

/* Persona selector: Apple pill tabs (no curved underline) */
html body .mo-tabs { gap: .5rem !important; border-bottom: 0 !important; }
html body .mo-tab { border: 0 !important; margin: 0 !important; padding: .55rem 1.1rem !important; border-radius: 999px !important; transition: background .25s ease, color .25s ease, transform .15s ease; }
html body .mo-tab:hover { background: rgba(15,23,42,.06); }
html body .mo-tab[aria-selected="true"] { background: #161C16 !important; color: #FFFFFF !important; }
html body .mo-tab:active { transform: scale(.96); }
@media (prefers-reduced-motion: reduce) { html body .mo-tab:active { transform: none; } }

/* "For every margin owner" section — Apple layer */
html body .mo-tabs { display: inline-flex !important; padding: .3rem !important; background: rgba(15,23,42,.05) !important; border-radius: 999px !important; gap: .15rem !important; }
html body .mo-tab[aria-selected="true"] { box-shadow: 0 4px 12px rgba(15,23,42,.18); }
html body .mo-panel { padding-top: 2.75rem !important; animation: mo-in .5s cubic-bezier(.2,.8,.2,1) !important; }
html body .mo-split { gap: clamp(2rem, 4vw, 4rem) !important; }
html body .mo-role { color: #FF0000 !important; text-transform: none !important; letter-spacing: 0 !important; font-size: .95rem !important; font-weight: 600 !important; }
html body .mo-q { font-size: clamp(1.75rem, 1.3rem + 1.2vw, 2.4rem) !important; line-height: 1.12 !important; letter-spacing: -0.035em !important; }
html body .mo-xk { text-transform: none !important; letter-spacing: 0 !important; font-size: .9rem !important; font-weight: 600 !important; color: var(--text-muted, #64748B) !important; }
html body .mo-x { font-size: 1.0625rem !important; line-height: 1.55 !important; color: var(--text-muted, #475569) !important; }
html body .mo-cards { gap: 1.1rem !important; }
html body .mo-card { background: #FFFFFF !important; border: 0 !important; border-radius: 22px !important; padding: 1.6rem !important; gap: .6rem !important; transition: transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease !important; }
html body .mo-ic { width: 40px !important; height: 40px !important; padding: 9px; background: rgba(255,0,0,.08); border-radius: 12px !important; margin-bottom: .4rem !important; }
html body .mo-k { text-transform: none !important; letter-spacing: 0 !important; font-size: .82rem !important; font-weight: 600 !important; color: var(--text-muted, #64748B) !important; }
html body .mo-card strong { font-size: 1.15rem !important; letter-spacing: -0.02em !important; }
html body .mo-d { font-size: .95rem !important; color: var(--text-muted, #475569) !important; }
html body .mo-ev { margin-top: 2.5rem !important; border: 0 !important; gap: 1.1rem !important; }
html body .mo-ev > div, html body .mo-ev > div + div { background: #FFFFFF; border: 0 !important; border-radius: 18px; padding: 1.25rem 1.4rem !important; box-shadow: 0 1px 3px rgba(15,23,42,.05), 0 10px 28px -12px rgba(15,23,42,.12); }
html body .mo-ev dt { letter-spacing: .02em !important; font-size: .82rem !important; font-weight: 700 !important; margin-bottom: .35rem !important; }
html body .mo-ev dd { font-size: 1rem !important; line-height: 1.45; }
@media (max-width: 640px) { html body .mo-tabs { display: flex !important; overflow-x: auto; } html body .mo-ev { gap: .75rem !important; } }

/* Common questions: aligned rounded cards with a +/− indicator, even spacing */
html body .tc-faq .container > *, html body .tc-faq h2 { max-width: 52rem; }
html body .tc-faq h2 { margin-bottom: 2rem !important; }
html body .tc-faq-item { max-width: 52rem; margin: 0 0 .85rem !important; padding: 0 !important; border: 0 !important; border-radius: 18px !important; background: #FFFFFF !important; overflow: hidden; }
html body .tc-faq-item summary { list-style: none !important; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.15rem 1.5rem !important; font-size: 1.05rem; letter-spacing: -0.01em; }
html body .tc-faq-item summary::-webkit-details-marker { display: none; }
html body .tc-faq-item summary::after { content: "+"; flex: none; width: 28px; height: 28px; border-radius: 50%; background: rgba(15,23,42,.06); display: grid; place-items: center; font-weight: 500; font-size: 1.1rem; color: var(--text-primary); transition: transform .3s ease; }
html body .tc-faq-item[open] summary::after { content: "−"; }
html body .tc-faq-item p { margin: 0 !important; padding: 0 1.5rem 1.3rem !important; }
html body .tc-faq-more { margin-top: 1.75rem !important; }
html body section.tc-faq, html body .tc-section.tc-faq { padding-top: clamp(3rem, 5vw, 5rem) !important; padding-bottom: clamp(3rem, 5vw, 5rem) !important; }
html body .tc-faq h2 { font-size: clamp(2rem, 1.5rem + 1.8vw, 3rem) !important; }
html body .tc-section:has(+ .tc-faq) { padding-bottom: clamp(3rem, 5vw, 5rem) !important; }
