/* article-components.css — runhockeyapparel.com article body elements. */
.article-content h2,.article-content h3,.article-content h4{scroll-margin-top:110px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#0B1B33;line-height:1.22;letter-spacing:-.01em}
.article-content h2{font-size:clamp(1.45rem,2.4vw,1.8rem);font-weight:800;margin:2.75rem 0 1rem;padding-top:.25rem}
.article-content h3{font-size:1.25rem;font-weight:700;margin:2rem 0 .75rem}
.article-content h4{font-size:1.075rem;font-weight:700;margin:1.6rem 0 .6rem}
.article-content p{margin:0 0 1.15rem}
.article-content ul,.article-content ol{margin:0 0 1.35rem;padding-left:1.4rem}
.article-content li+li{margin-top:.5rem}
.article-content li::marker{color:#1F4E79;font-weight:700}
.article-content strong{color:#0B1B33}

.article-content table{width:100%;border-collapse:separate;border-spacing:0;margin:1.75rem 0;border:1px solid #DCE3EC;border-radius:12px;overflow:hidden;font-size:.95rem}
.article-content thead th{background:#0B1B33;color:#fff;font-weight:700;text-align:left;padding:.8rem 1rem}
.article-content tbody td{padding:.75rem 1rem;border-top:1px solid #DCE3EC;vertical-align:top}
.article-content tbody tr:nth-child(even){background:#F7F9FC}

.article-content blockquote{margin:1.75rem 0;padding:1.1rem 1.4rem;border-left:4px solid #F59E0B;background:#F7F9FC;border-radius:0 12px 12px 0;color:#0B1B33}
.article-content blockquote p:last-child{margin-bottom:0}

.article-content code{background:#F7F9FC;border:1px solid #DCE3EC;padding:.15em .4em;border-radius:4px;font-size:.9em;color:#163B5E}
.article-content pre{background:#0B1B33;color:#DCE3EC;padding:1.25rem 1.5rem;border-radius:12px;overflow-x:auto;margin:1.75rem 0}
.article-content pre code{background:transparent;border:0;padding:0;color:inherit}
.article-content hr{border:0;border-top:1px solid #DCE3EC;margin:2.5rem 0}

.article-content .rh-callout{background:#F7F9FC;border:1px solid #DCE3EC;border-radius:12px;padding:1.25rem 1.4rem;margin:1.75rem 0}
.article-content .rh-callout>:last-child{margin-bottom:0}
.article-content .rh-callout-title{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#1F4E79;margin:0 0 .5rem}

.cta-banner-section{margin:2.75rem 0}
.cta-banner{background:#0B1B33;background-image:linear-gradient(135deg,#0B1B33 0%,#1F4E79 100%);border-radius:12px;padding:2.5rem 2rem;text-align:center;margin:0;color:#fff}
.cta-banner-title,.cta-banner .cta-heading{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#fff;font-size:1.45rem;font-weight:800;margin:0 0 .6rem;line-height:1.25}
.cta-banner-body,.cta-banner p{color:rgba(255,255,255,.9);max-width:560px;margin:0 auto 1.4rem;font-size:1rem;line-height:1.65}
.cta-banner-button,.cta-banner .cta-button{display:inline-block;background:#F59E0B;color:#0B1B33!important;font-weight:700;padding:.85rem 1.9rem;border:0;border-radius:6px;text-decoration:none!important;transition:background .2s ease,transform .2s ease}
.cta-banner-button:hover,.cta-banner .cta-button:hover{background:#FFB62E;transform:translateY(-2px)}

.faq-section{margin:2.75rem 0}
.faq-item{border:1px solid #DCE3EC;border-radius:12px;padding:.9rem 1.2rem;margin-bottom:.75rem;background:#fff}
.faq-item summary{font-weight:700;color:#0B1B33;cursor:pointer}
.faq-answer{margin-top:.6rem;color:#14243B}

@media (max-width:768px){
  .article-content table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .cta-banner{padding:2rem 1.25rem}
}
@media (prefers-reduced-motion:reduce){.cta-banner-button,.cta-banner .cta-button{transition:none}.cta-banner-button:hover,.cta-banner .cta-button:hover{transform:none}}
.cta-banner .cta-heading,.cta-banner .cta-banner-title{max-width:none}
