.resources-page main { background: #f5f7f9; }
.resources-page main p { color: #526578; font-size: 15px; line-height: 1.72; }
.resources-page main h1,
.resources-page main h2,
.resources-page main h3 { color: #0b2946; }
.resources-page main > .section-pad { padding-top: clamp(36px,4vw,52px); padding-bottom: clamp(36px,4vw,52px); }
.resources-page main section[id], .resources-page main article[id] { scroll-margin-top: 88px; }
.rs-breadcrumb { display: flex; gap: 9px; margin-bottom: 38px; color: #718296; font-size: 12px; font-weight: 800; }
.rs-breadcrumb a { color: #205878; }
.rs-heading { max-width: 850px; margin-bottom: 28px; }
.rs-heading h2,
.rs-more h2,
.rs-cta h2 { margin: 7px 0 14px; font-size: clamp(32px, 4vw, 48px); line-height: 1.08; letter-spacing: -.035em; }
.rs-heading > p:last-child { max-width: 760px; }

.rs-hero { display: grid; place-items: center; min-height: 260px; padding-top: 102px !important; padding-bottom: 38px !important; text-align: center; background-color: #dcecf8; background-image: linear-gradient(135deg,rgba(255,255,255,.62),rgba(179,211,235,.55)),linear-gradient(rgba(18,62,97,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(18,62,97,.045) 1px,transparent 1px); background-size: auto,32px 32px,32px 32px; }
.rs-hero h1 { margin: 0; font-size: clamp(34px,6.5vw,78px); line-height: 1; letter-spacing: -.05em; white-space: nowrap; }
.rs-hero .lead { max-width: 720px; font-size: 17px; }
.rs-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.rs-hero-map { position: relative; display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; overflow: hidden; border: 1px solid #cfd9e1; background: #cfd9e1; box-shadow: 0 28px 68px rgba(11,41,70,.14); }
.rs-hero-map > a { min-height: 144px; padding: 24px; color: #fff; background: #0c3152; transition: background .2s ease; }
.rs-hero-map > a:hover { background: #12476f; }
.rs-hero-map > a span { display: block; color: #f59e0b; font-size: 11px; font-weight: 900; }
.rs-hero-map > a strong { display: block; max-width: 150px; margin-top: 25px; font-size: 17px; line-height: 1.25; }
.rs-map-center { position: absolute; z-index: 2; left: 50%; top: 50%; display: grid; place-items: center; width: 168px; height: 168px; padding: 20px; border: 9px solid #e7edf2; border-radius: 50%; text-align: center; transform: translate(-50%,-50%); background: #f59e0b; box-shadow: 0 10px 30px rgba(7,29,48,.18); }
.rs-map-center small { color: #3d4c59; font-size: 8px; font-weight: 900; letter-spacing: .08em; }
.rs-map-center strong { color: #0b2946; font-size: 16px; line-height: 1.2; }

.rs-content-types { background: #fff; }
.rs-type-grid { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid #d5dfe7; }
.rs-type-grid > a { display: grid; grid-template-columns: 40px 1fr; gap: 15px; min-height: 285px; padding: 26px 22px; border-right: 1px solid #d5dfe7; color: inherit; }
.rs-type-grid > a:last-child { border-right: 0; }
.rs-type-grid > a > span { display: grid; place-items: center; width: 35px; height: 35px; color: #0b2946; background: #f59e0b; font-size: 10px; font-weight: 900; }
.rs-type-grid small { color: #d17600; font-size: 8px; font-weight: 900; letter-spacing: .08em; }
.rs-type-grid h3 { margin: 15px 0 9px; font-size: 20px; }
.rs-type-grid p { margin: 0; font-size: 13px !important; }
.rs-type-grid b { display: block; margin-top: 22px; color: #0f527d; font-size: 11px; }

.rs-categories { background: #e8f0f5; }
.rs-category-grid { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 36px) / 3); gap: 18px; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; }
.rs-category-grid::-webkit-scrollbar { display: none; }
.rs-category-grid article,
.rs-category-grid > .rs-curated-guide { padding: 28px; border: 1px solid #d4dee6; color: inherit; background: #fff; scroll-snap-align: start; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.rs-category-grid > .rs-curated-guide:hover { transform: translateY(-3px); border-color: #9fb7c9; box-shadow: 0 14px 30px rgba(11,41,70,.1); }
.rs-category-grid > .rs-curated-guide:focus-visible { outline: 3px solid #f59e0b; outline-offset: 3px; }
.rs-category-head { display: flex; gap: 17px; align-items: center; }
.rs-category-head span { display: grid; place-items: center; width: 42px; height: 42px; color: #0b2946; background: #f59e0b; font-size: 11px; font-weight: 900; }
.rs-category-head h3 { margin: 4px 0 0; font-size: 22px; }
.rs-category-head small { color: #d17600; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.rs-category-grid article > p,
.rs-category-grid > .rs-curated-guide > p { min-height: 72px; margin: 20px 0 10px; }
.rs-category-grid ul { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 20px; margin: 0 0 24px; padding: 18px 0; border-top: 1px solid #e0e6eb; border-bottom: 1px solid #e0e6eb; list-style: none; }
.rs-category-grid li { position: relative; padding-left: 13px; color: #54677a; font-size: 12px; line-height: 1.5; }
.rs-category-grid li::before { content: ""; position: absolute; left: 0; top: 7px; width: 5px; height: 5px; background: #e48912; }
.rs-category-grid article > a { color: #0d527e; font-size: 12px; font-weight: 900; }
.rs-category-grid > .rs-curated-guide > strong { color: #0d527e; font-size: 12px; font-weight: 900; }

.rs-featured { background: #fff; }
.rs-guide-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; counter-reset: guides; }
.rs-guide-grid > a { position: relative; min-height: 245px; padding: 25px; overflow: hidden; border: 1px solid #d5dee6; color: inherit; background: #f8fafb; transition: transform .2s ease, box-shadow .2s ease; }
.rs-guide-grid > a:hover { transform: translateY(-3px); box-shadow: 0 15px 30px rgba(14,46,70,.09); }
.rs-guide-grid small { color: #ca7000; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.rs-guide-grid > a > span { position: absolute; right: 18px; top: 14px; color: #e4e9ed; font-size: 46px; font-weight: 900; }
.rs-guide-grid h3 { position: relative; max-width: 88%; margin: 42px 0 11px; font-size: 20px; line-height: 1.2; }
.rs-guide-grid p { position: relative; margin: 0; font-size: 13px !important; }
.rs-guide-grid > a::after { content: "→"; position: absolute; right: 22px; bottom: 18px; color: #d87900; font-size: 20px; }
.rs-latest { background: #fff; }
.rs-latest-grid { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 45px)/4); gap: 15px; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; }
.rs-latest-grid::-webkit-scrollbar { display: none; }
.rs-latest-grid a { display: flex; flex-direction: column; min-height: 280px; padding: 25px; border: 1px solid #d8e1e7; border-top: 4px solid #123e61; color: inherit; background: #f6f9fb; scroll-snap-align: start; }
.rs-latest-grid small { color: #d17600; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.rs-latest-grid h3 { margin: 34px 0 10px; font-size: 19px; line-height: 1.25; }
.rs-latest-grid p { margin: 0 0 22px; font-size: 12px !important; }
.rs-latest-grid span { margin-top: auto; color: #0d527e; font-size: 11px; font-weight: 900; }

.rs-decision-table { background: #0b2946; }
.rs-decision-table .rs-heading h2,
.rs-decision-table .rs-heading p { color: #fff !important; }
.rs-decision-table .eyebrow { color: #f59e0b !important; }
.rs-table-wrap { overflow-x: auto; border: 1px solid rgba(255,255,255,.2); }
.rs-decision-table table { width: 100%; min-width: 800px; border-collapse: collapse; background: #fff; }
.rs-decision-table th { padding: 16px 18px; color: #fff; background: #15476d; font-size: 11px; text-align: left; letter-spacing: .04em; }
.rs-decision-table td { padding: 16px 18px; border-right: 1px solid #dce3e9; border-bottom: 1px solid #dce3e9; color: #506377; font-size: 13px; }
.rs-decision-table tr:last-child td { border-bottom: 0; }
.rs-decision-table > small { display: block; margin-top: 15px; color: #b8c9d6; font-size: 11px; }

.rs-more { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; background: #fff; }
.rs-more-card { padding: clamp(26px,3vw,36px); color: #fff; background: linear-gradient(145deg,#0d3153,#164f78); cursor: pointer; transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.rs-more-card:hover { transform: translateY(-3px); box-shadow: 0 16px 34px rgba(11,41,70,.14); }
.rs-more-card:focus-visible { outline: 3px solid #f59e0b; outline-offset: 3px; }
.rs-more-card h2 { font-size: clamp(30px,3.5vw,42px); }
.rs-more-card h2,
.rs-more-card p { color: #fff !important; }
.rs-more-card.light { color: inherit; border: 1px solid #d4dee6; background: #f3f7fa; }
.rs-more-card.light h2 { color: #0b2946 !important; }
.rs-more-card.light p { color: #526578 !important; }
.rs-more-card .button { margin-top: 18px; }
.rs-more-card:not(.light) .button.ghost { border-color: #ff6b0b; color: #fff; background: #ff6b0b; }
.rs-more-card:not(.light) .button.ghost:hover { border-color: #e85a00; color: #fff; background: #e85a00; }

.rs-featured,
.rs-decision-table,
.rs-more:not([aria-label]) { display: none; }

.rs-quote { background-color: #0b2946; background-image: linear-gradient(120deg,rgba(11,41,70,.96),rgba(18,70,105,.88)),url("/assets/customization/background.webp"); }
.rs-quote .quote-copy { align-self: center; }
.rs-quote .quote-copy > .eyebrow { color: #f59e0b; }
.rs-quote .quote-copy > h2,
.rs-quote .quote-copy > p,
.rs-quote .quote-checklist h3,
.rs-quote .quote-checklist li { color: #fff !important; }
.rs-quote .quote-copy > p { color: #c6d6e2 !important; }
.rs-quote .quote-checklist { padding: 20px 22px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.06); }
.rs-quote .quote-checklist h3 { margin-top: 0; }
.rs-quote .quote-checklist ul { margin-bottom: 0; }
.rs-quote .quote-more-link { margin-top: 20px; border-color: #ff6b0b; color: #fff; background: #ff6b0b; }
.rs-quote .quote-more-link:hover { border-color: #e85a00; color: #fff; background: #e85a00; }
.rs-quote .quote-form { background: #fff; box-shadow: 0 24px 60px rgba(4,20,34,.24); }
.rs-quote .quote-copy h2 { margin: 8px 0 16px; font-size: clamp(34px,4vw,52px); line-height: 1.08; letter-spacing: -.035em; }

.rs-cta { display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: center; padding-top: 60px; padding-bottom: 60px; background: #f59e0b; }
.rs-cta > div { max-width: 850px; }
.rs-cta p { color: #293f52 !important; }

.guide-page main { background: #f7f9fa; }
.guide-hero { padding-top: 132px; padding-bottom: 70px; background: linear-gradient(135deg,#f3f7f9,#e5edf2); }
.guide-hero-inner { max-width: 940px; }
.guide-hero h1 { margin: 10px 0 20px; font-size: clamp(44px,6vw,72px); line-height: 1.02; letter-spacing: -.045em; }
.guide-meta { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 25px; }
.guide-meta span { padding: 7px 10px; border: 1px solid #ccd8e0; border-radius: 999px; color: #31516a; background: #fff; font-size: 11px; font-weight: 800; }
.guide-layout { display: grid; grid-template-columns: minmax(0,1fr) 280px; gap: 60px; align-items: start; background: #fff; }
.guide-article { max-width: 850px; }
.guide-article .guide-summary { margin: 0 0 34px; padding: 24px; border-left: 4px solid #f59e0b; background: #f1f5f7; }
.guide-article h2 { margin: 42px 0 14px; font-size: 30px; line-height: 1.15; }
.guide-article h3 { margin: 27px 0 10px; font-size: 20px; }
.guide-article p, .guide-article li { color: #526578; font-size: 15px; line-height: 1.75; }
.guide-article ul, .guide-article ol { padding-left: 22px; }
.guide-editorial-note { margin: 0 0 42px; padding: 20px 22px; border: 1px solid #d7e1e7; background: #f8fafb; }
.guide-editorial-note strong { color: #b96500; font-size: 11px; letter-spacing: .08em; }
.guide-editorial-note p { margin: 8px 0 0; font-size: 13px; }
.guide-content-section { position: relative; padding-left: 54px; scroll-margin-top: 100px; }
.guide-section-number { position: absolute; left: 0; top: 2px; display: grid; place-items: center; width: 36px; height: 36px; color: #0b2946; background: #f59e0b; font-size: 10px; font-weight: 900; }
.guide-content-section h2 { margin-top: 46px; }
.guide-module { margin-top: 46px; padding: 26px; border-top: 4px solid #174b6f; background: #eef3f6; scroll-margin-top: 100px; }
.guide-module h2 { margin: 0 0 18px; font-size: 25px; }
.guide-module-copy p { margin: 0; }
.guide-module-copy p + p { margin-top: 12px; padding-top: 12px; border-top: 1px solid #d4dee5; }
.guide-checklist { display: grid; gap: 10px; margin: 0; padding: 0 !important; list-style: none; }
.guide-checklist li { position: relative; padding: 11px 14px 11px 42px; border: 1px solid #d2dde4; background: #fff; }
.guide-checklist li::before { content: "✓"; position: absolute; left: 14px; top: 10px; color: #d77900; font-weight: 900; }
.guide-review-button { margin-top: 34px; }
.guide-article table { width: 100%; margin: 24px 0; border-collapse: collapse; }
.guide-article th, .guide-article td { padding: 13px 15px; border: 1px solid #d6e0e7; font-size: 13px; text-align: left; }
.guide-article th { color: #fff; background: #123e61; }
.guide-note { margin: 28px 0; padding: 20px 22px; border: 1px solid #efcf9f; background: #fff8eb; }
.guide-note strong { color: #b86200; }
.guide-toc { position: sticky; top: 100px; padding: 24px; border-top: 4px solid #f59e0b; background: #eef3f6; }
.guide-toc > strong { color: #0b2946; font-size: 13px; }
.guide-toc a { display: block; padding: 11px 0; border-bottom: 1px solid #d5dee5; color: #3d5b72; font-size: 12px; }
.guide-related { background: #edf2f5; }
.guide-related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.guide-related-grid a { padding: 23px; border: 1px solid #d5dee6; color: inherit; background: #fff; }
.guide-related-grid small { color: #d17600; font-size: 9px; font-weight: 900; }
.guide-related-grid h3 { margin: 16px 0 8px; font-size: 18px; }
.guide-related-grid p { margin: 0; font-size: 12px !important; }

.resource-section-hero { padding-top: 132px; padding-bottom: 72px; background: linear-gradient(135deg,#f3f7f9,#e5edf2); }
.resource-section-hero > * { max-width: 900px; }
.resource-section-hero h1 { margin: 10px 0 18px; font-size: clamp(46px,6vw,72px); line-height: 1.02; letter-spacing: -.045em; }
.resource-section-hero > p:last-of-type { font-size: 17px; }
.resource-section-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.resource-section-tabs a { padding: 8px 11px; border: 1px solid #c9d5de; border-radius: 999px; color: #214c69; background: #fff; font-size: 11px; font-weight: 800; }

/* Technical guide index */
.guides-index-hero { padding-top: 132px; padding-bottom: 78px; color: #fff; background: linear-gradient(118deg,#071f35 0%,#0b3557 62%,#155b82 100%); }
.guides-index-hero .rs-breadcrumb { color: #9db6c8; }
.guides-index-hero .rs-breadcrumb a { color: #d3e2ec; }
.guides-hero-layout { display: grid; grid-template-columns: minmax(0,1fr) 350px; gap: clamp(50px,8vw,110px); align-items: end; }
.resources-page .guides-index-hero h1 { max-width: 850px; margin: 10px 0 22px; color: #fff; font-size: clamp(48px,6.5vw,82px); line-height: .98; letter-spacing: -.055em; }
.guides-hero-lead { max-width: 730px; margin-bottom: 28px; color: #c2d3df !important; font-size: 17px !important; }
.guides-hero-panel { display: grid; grid-template-columns: 1fr 1fr; gap: 0; padding: 26px; border-top: 4px solid #f59e0b; background: rgba(255,255,255,.08); box-shadow: 0 22px 50px rgba(0,0,0,.2); }
.guides-hero-panel > div { padding: 0 18px 20px 0; }
.guides-hero-panel > div + div { padding-left: 18px; border-left: 1px solid rgba(255,255,255,.2); }
.guides-hero-panel strong { display: block; color: #fff; font-size: 42px; line-height: 1; }
.guides-hero-panel span { display: block; margin-top: 7px; color: #a9c0cf; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.guides-hero-panel p { grid-column: 1/-1; margin: 4px 0 18px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.16); color: #d6e2e9 !important; font-size: 13px !important; }
.guides-hero-panel a { grid-column: 1/-1; display: inline-flex; align-items: center; width: fit-content; min-height: 42px; padding: 10px 15px; color: #102f48; background: #f59e0b; font-size: 14px; font-weight: 900; }
.guides-path { background: #edf3f6; }
.guides-path-grid { display: grid; grid-template-columns: repeat(5,1fr); border: 1px solid #cdd9e1; background: #fff; }
.guides-path-grid a { position: relative; min-height: 150px; padding: 25px 22px; border-right: 1px solid #d6e0e6; color: inherit; transition: color .2s ease,background .2s ease; }
.guides-path-grid a:last-child { border-right: 0; }
.guides-path-grid a:hover { color: #fff; background: #0d3d61; }
.guides-path-grid span { display: block; color: #da7d06; font-size: 10px; font-weight: 900; }
.guides-path-grid strong { display: block; margin-top: 28px; font-size: 19px; }
.guides-path-grid small { display: block; margin-top: 5px; color: #6a7d8d; font-size: 11px; }
.guides-path-grid a:hover small { color: #bcd0de; }
.guides-path-grid a::after { content: "↓"; position: absolute; right: 20px; top: 20px; color: #a8b8c3; }
.guides-library { background: #fff; }
.guides-library-head { display: flex; justify-content: space-between; gap: 30px; align-items: end; }
.guides-count { margin-bottom: 28px; color: #6c7f8f; font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.guide-group { display: grid; grid-template-columns: 210px minmax(0,1fr); gap: 34px; padding: 34px 0; border-top: 1px solid #d6e0e6; scroll-margin-top: 90px; }
.guide-group > header { display: flex; gap: 16px; align-items: flex-start; }
.guide-group > header > span { display: grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; color: #102f48; background: #f59e0b; font-size: 11px; font-weight: 900; }
.guide-group > header p { margin: 1px 0 4px; color: #cd7300 !important; font-size: 9px !important; font-weight: 900; letter-spacing: .1em; }
.guide-group > header h3 { margin: 0; font-size: 18px; line-height: 1.2; }
.guides-card-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.guides-card-grid--two { grid-template-columns: repeat(2,1fr); }
.guides-card-grid--single { grid-template-columns: minmax(0,2fr) 1fr 1fr; }
.guide-index-card { position: relative; display: flex; flex-direction: column; min-height: 205px; padding: 20px 22px; overflow: hidden; border: 1px solid #d5dfe6; color: inherit; background: #f7f9fa; transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.guide-index-card:hover { transform: translateY(-3px); border-color: #aebfca; box-shadow: 0 14px 30px rgba(11,41,70,.1); }
.guide-index-card small { color: #c96e00; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.guide-index-card h4 { margin: 22px 0 8px; font-size: 20px; line-height: 1.22; }
.guide-index-card p { margin: 0 0 10px; color: #607284 !important; font-size: 12px !important; }
.guide-index-card b { margin-top: 0; color: #0b527d; font-size: 11px; }
.guide-index-card--featured { color: #fff; border-color: #0b3455; background: #0b3455; }
.guide-index-card--featured h4 { color: #fff; }
.guide-index-card--featured p { color: #bfd0dc !important; }
.guide-index-card--featured b { color: #f5a21b; }
.guides-inquiry { scroll-margin-top: 70px; }
.guides-inquiry .quote-copy { align-self: start; }
.guides-inquiry .quote-form select { min-height: 48px; }
.faq-layout { display: grid; gap: 18px; background: #fff; }
.faq-group { display: grid; grid-template-columns: 250px 1fr; gap: 0 28px; padding: 28px; border: 1px solid #d5dfe6; background: #f7f9fa; scroll-margin-top: 88px; }
.faq-group-intro { grid-row: 1; }
.faq-group-intro > span { color: #d17600; font-size: 11px; font-weight: 900; }
.faq-group h2 { margin: 18px 0; font-size: 25px; }
.faq-group details { border-bottom: 1px solid #d5dfe6; }
.faq-group details:last-child { border-bottom: 0; }
.faq-group summary { position: relative; padding: 12px 42px 12px 0; color: #123b5b; font-size: 15px; font-weight: 850; cursor: pointer; list-style: none; }
.faq-group summary::-webkit-details-marker { display: none; }
.faq-group summary::after { content: "+"; position: absolute; right: 5px; top: 7px; display: grid; place-items: center; width: 28px; height: 28px; color: #0b2946; background: #f59e0b; }
.faq-group details[open] summary::after { content: "−"; }
.faq-group details p { margin: 0 0 12px; padding-right: 40px; font-size: 13px !important; }
.faq-question-list,
.article-faq-questions { grid-column: 2; grid-row: 1 / span 2; min-width: 0; align-self: start; }
.faq-overview { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; max-width: 510px; margin-top: 28px; }
.faq-overview > div { padding: 18px; border-top: 3px solid #f59e0b; background: rgba(255,255,255,.7); }
.faq-overview strong,.faq-overview span { display: block; }
.faq-overview strong { color: #0b2946; font-size: 27px; line-height: 1; }
.faq-overview span { margin-top: 7px; color: #587083; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.faq-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.48fr); column-gap: clamp(36px,7vw,96px); }
.faq-hero .rs-breadcrumb,
.faq-hero .resource-section-tabs { grid-column: 1/-1; }
.faq-hero > h1,
.faq-hero > p { grid-column: 1; }
.faq-hero .faq-overview { grid-column: 2; grid-row: 2 / span 2; align-self: center; width: 100%; max-width: none; margin-top: 0; }
.faq-search-section { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,430px); gap: 50px; align-items: end; background: #0b2946; }
.faq-search-section h2 { margin: 7px 0 12px; color: #fff; }
.faq-search-section p { color: #bdcfdb !important; }
.faq-resource-links { display: flex; flex-wrap: wrap; gap: 18px; }
.faq-resource-links a { color: #f59e0b; font-size: 12px; font-weight: 900; }
.faq-search { color: #d6e3eb; font-size: 11px; font-weight: 900; }
.faq-search input { display: block; width: 100%; min-height: 52px; margin: 8px 0; padding: 12px 15px; border: 1px solid #8da4b5; background: #fff; font: inherit; }
.faq-result-count { color: #9eb6c6; font-size: 10px; letter-spacing: .1em; }
.faq-group-intro p { color: #5c7282; font-size: 12px !important; line-height: 1.65; }
.faq-answer-copy { white-space: pre-line; line-height: 1.8; }
.faq-related { grid-column: 1; grid-row: 2; align-self: start; display: grid; grid-template-columns: 1fr; gap: 8px; margin-top: 18px; padding: 18px; border-left: 4px solid #f59e0b; background: #e8f0f5; }
.faq-related strong { grid-column: 1; color: #b96600; font-size: 10px; letter-spacing: .08em; }
.faq-related a { display: block; padding: 9px 11px; border: 1px solid #c7d6e0; color: #0b527f; background: #fff; font-size: 11px; font-weight: 800; line-height: 1.45; }
.faq-related a:hover { color: #fff; border-color: #0b527f; background: #0b527f; }
.faq-empty { text-align: center; background: #f3f7f9; }
.faq-empty strong { color: #0b2946; font-size: 22px; }
.faq-project-cta { display: grid; grid-template-columns: minmax(0,1fr) minmax(350px,.7fr); gap: 55px; align-items: center; background: #f59e0b; }
.faq-project-cta h2 { margin: 7px 0 14px; }
.faq-project-cta p { color: #293f52 !important; }
.faq-project-cta small { color: #3f5363; }
.faq-cta-side { padding: 24px; background: rgba(255,255,255,.38); }
.faq-cta-side ul { margin: 14px 0 20px; padding-left: 18px; }
.faq-cta-side li { margin: 7px 0; color: #213e53; font-size: 12px; }
.faq-cta-side .button { color: #fff; background: #0b2946; }
.article-series { background: #fff; }
.article-series-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; }
.article-series-grid article { position: relative; padding: 30px; border: 1px solid #d5dfe6; background: #f7f9fa; }
.article-series-grid article > span { position: absolute; right: 22px; top: 15px; color: #dfe5e9; font-size: 52px; font-weight: 900; }
.article-series-grid h3 { position: relative; margin: 18px 0 10px; font-size: 25px; }
.article-series-grid p { max-width: 540px; }
.article-series-grid ul { margin: 22px 0; padding: 18px 0; border-top: 1px solid #dce4e9; border-bottom: 1px solid #dce4e9; list-style: none; }
.article-series-grid li { position: relative; padding: 6px 0 6px 15px; color: #506477; font-size: 13px; }
.article-series-grid li::before { content: ""; position: absolute; left: 0; top: 13px; width: 5px; height: 5px; background: #f59e0b; }
.article-series-grid a { color: #0b527f; font-size: 12px; font-weight: 900; }

/* Articles & insights index */
.articles-index-hero { padding-top: 132px; padding-bottom: 78px; color: #fff; background: linear-gradient(118deg,#071f35 0%,#0b3557 62%,#155b82 100%); }
.articles-index-hero .rs-breadcrumb { color: #9db6c8; }
.articles-index-hero .rs-breadcrumb a { color: #d3e2ec; }
.articles-hero-layout { display: grid; grid-template-columns: minmax(0,1fr) 350px; gap: clamp(50px,8vw,110px); align-items: end; }
.resources-page .articles-index-hero h1 { max-width: 850px; margin: 10px 0 22px; color: #fff; font-size: clamp(52px,7vw,88px); line-height: .92; letter-spacing: -.055em; }
.articles-hero-lead { max-width: 740px; margin-bottom: 0; color: #c2d3df !important; font-size: 17px !important; }
.articles-hero-panel { display: grid; grid-template-columns: 1fr 1fr; padding: 26px; border-top: 4px solid #f59e0b; background: rgba(255,255,255,.08); box-shadow: 0 22px 50px rgba(0,0,0,.2); }
.articles-hero-panel > div { padding: 0 18px 20px 0; }
.articles-hero-panel > div + div { padding-left: 18px; border-left: 1px solid rgba(255,255,255,.2); }
.articles-hero-panel .articles-hero-language { grid-column: 1/-1; padding: 16px 0 18px; border-top: 1px solid rgba(255,255,255,.16); border-left: 0; }
.articles-hero-panel .articles-hero-language strong { font-size: 24px; letter-spacing: .04em; }
.articles-hero-panel strong { display: block; color: #fff; font-size: 42px; line-height: 1; }
.articles-hero-panel span { display: block; margin-top: 7px; color: #a9c0cf; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.articles-hero-panel p { grid-column: 1/-1; margin: 4px 0 18px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.16); color: #d6e2e9 !important; font-size: 13px !important; }
.articles-hero-panel a { grid-column: 1/-1; width: fit-content; color: #102f48; background: #f59e0b; padding: 11px 15px; font-size: 13px; font-weight: 900; }
.articles-explorer { background: #fff; }
.articles-library-head { display: flex; justify-content: space-between; gap: 30px; align-items: end; }
.articles-result-count { margin-bottom: 28px; color: #6c7f8f; font-size: 10px; font-weight: 900; letter-spacing: .12em; white-space: nowrap; }
.articles-tools { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-bottom: 28px; padding: 14px; border: 1px solid #d6e0e6; background: #f3f7f9; }
.articles-filters { display: flex; flex-wrap: wrap; gap: 7px; }
.articles-filters button { min-height: 38px; padding: 8px 13px; border: 1px solid transparent; color: #405d72; background: transparent; font: inherit; font-size: 11px; font-weight: 900; cursor: pointer; }
.articles-filters button:hover { color: #0b2946; background: #fff; }
.articles-filters button.is-active { color: #fff; background: #0d3d61; }
.articles-search { position: relative; flex: 0 1 330px; }
.articles-search input { width: 100%; min-height: 44px; padding: 10px 14px; border: 1px solid #cbd7df; color: #16344d; background: #fff; font: inherit; font-size: 12px; outline: none; }
.articles-search input:focus { border-color: #e58a0d; box-shadow: 0 0 0 3px rgba(245,158,11,.15); }
.articles-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.article-index-card { position: relative; display: flex; flex-direction: column; min-height: 285px; padding: 24px; overflow: hidden; border: 1px solid #d6e0e6; border-top: 4px solid #164b70; color: inherit; background: #f7f9fa; text-decoration: none; cursor: pointer; transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.article-index-card:hover { transform: translateY(-3px); border-color: #b9cbd7; box-shadow: 0 17px 34px rgba(11,41,70,.1); }
.article-index-card--featured { background: linear-gradient(145deg,#f8fafb,#edf4f7); }
.article-card-meta { display: flex; gap: 12px; align-items: center; }
.article-card-meta span { color: #cb7300; font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.article-card-meta small { padding-left: 12px; border-left: 1px solid #cbd6dd; color: #728491; font-size: 9px; font-weight: 800; }
.article-index-card h3 { position: relative; max-width: 100%; margin: 28px 0 11px; font-size: clamp(20px,1.75vw,25px); line-height: 1.15; letter-spacing: -.025em; }
.article-index-card > p { max-width: 620px; margin: 0 0 17px; font-size: 12px !important; }
.article-index-card h3,.article-index-card > p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; }
.article-index-card h3 { -webkit-line-clamp: 3; }
.article-index-card > p { -webkit-line-clamp: 4; }
.article-card-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 24px; }
.article-card-tags span { padding: 5px 8px; border: 1px solid #d3dde4; color: #5e7180; background: #fff; font-size: 9px; font-weight: 800; }
.article-card-link { width: fit-content; margin-top: auto; color: #0b527f; font-size: 12px; font-weight: 900; }
.article-index-card:hover .article-card-link { color: #d67800; }
.article-index-card:focus-visible { outline: 3px solid #f59e0b; outline-offset: 3px; }
.article-preserve-lines { white-space: pre-line; }
.article-direct-answer p { margin: 14px 0 0; color: #24435b; }
.article-copy-section p { line-height: 1.85; }
.article-shared-faq { background: #eef3f6; }
.article-shared-faq .rs-heading { max-width: 780px; margin-bottom: 28px; }
.article-faq-list { max-width: 1050px; margin: 0 auto; }
.article-standards { background: #f3f7f9; }
.article-standards .rs-heading { max-width: 860px; }
.article-reference-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 30px; }
.article-reference-grid article { padding: 24px; border-top: 4px solid #164b70; background: #fff; }
.article-reference-grid h3 { margin: 0 0 16px; font-size: 20px; }
.article-reference-grid ul { margin: 0; padding-left: 18px; }
.article-reference-grid li { margin: 8px 0; color: #4d6475; font-size: 12px; line-height: 1.6; }
.article-index-card[hidden] { display: none; }
.articles-empty { padding: 65px 24px; border: 1px dashed #c4d1da; text-align: center; background: #f7f9fa; }
.articles-empty strong { color: #0b2946; font-size: 21px; }
.articles-empty p { margin-bottom: 0; }
.articles-guide-cta { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 50px; align-items: center; background: #f59e0b; }
.articles-guide-cta > div { max-width: 850px; }
.articles-guide-cta h2 { margin: 7px 0 14px; font-size: clamp(32px,4vw,48px); line-height: 1.08; letter-spacing: -.035em; }
.articles-guide-cta p { color: #293f52 !important; }
.articles-guide-cta .button.primary { color: #fff; background: #0b2946; }
.articles-guide-cta .button.primary:hover { background: #164b70; }
.articles-inquiry .quote-copy { align-self: start; }
.download-section { background: #fff; }
.download-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.download-grid article { position: relative; display: flex; flex-direction: column; min-height: 320px; padding: 27px; border: 1px solid #d5dfe6; background: #f7f9fa; }
.download-grid article > span { position: absolute; right: 20px; top: 13px; color: #dfe5e9; font-size: 48px; font-weight: 900; }
.download-grid small { color: #d17600; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.download-grid h3 { position: relative; max-width: 85%; margin: 45px 0 10px; font-size: 21px; }
.download-grid p { margin: 0 0 22px; font-size: 13px !important; }
.download-grid .button { margin-top: auto; align-self: flex-start; }

@media(max-width:1100px){.rs-category-grid{grid-auto-columns:calc((100% - 18px) / 2)}.rs-type-grid{grid-template-columns:1fr 1fr}.rs-type-grid>a:nth-child(2){border-right:0}.rs-type-grid>a:nth-child(-n+2){border-bottom:1px solid #d5dfe7}.rs-guide-grid,.rs-latest-grid{grid-template-columns:1fr 1fr}.guide-layout{grid-template-columns:1fr}.guide-toc{position:static}.guide-related-grid{grid-template-columns:1fr 1fr}.download-grid{grid-template-columns:1fr 1fr}.guides-hero-layout{grid-template-columns:1fr 300px;gap:45px}.guides-path-grid{grid-template-columns:repeat(3,1fr)}.guides-path-grid a:nth-child(3){border-right:0}.guides-path-grid a:nth-child(-n+3){border-bottom:1px solid #d6e0e6}.guide-group{grid-template-columns:1fr}.guides-card-grid--single{grid-template-columns:2fr 1fr 1fr}.guides-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.resources-page{overflow-x:hidden}.resources-page main>.section-pad{padding-top:38px;padding-bottom:38px}.rs-hero{min-height:220px;padding-top:92px!important;padding-bottom:30px!important}.rs-hero h1,.guide-hero h1,.resource-section-hero h1{font-size:41px}.rs-type-grid,.rs-guide-grid,.rs-latest-grid,.rs-more,.guide-related-grid,.article-series-grid,.download-grid{grid-template-columns:1fr}.rs-category-grid{grid-auto-columns:100%}.rs-type-grid>a{border-right:0;border-bottom:1px solid #d5dfe7}.rs-type-grid>a:nth-child(3){border-bottom:1px solid #d5dfe7}.rs-category-grid ul{grid-template-columns:1fr}.rs-cta{grid-template-columns:1fr}.rs-hero-actions{flex-direction:column}.resources-page main .button{width:100%;white-space:normal}.guide-hero,.resource-section-hero{padding-top:110px}.guide-layout{gap:35px}.guide-content-section{padding-left:0}.guide-section-number{position:static;margin-bottom:14px}.guide-content-section h2{margin-top:28px}.guide-module{padding:20px}.guide-module h2{font-size:22px}.faq-group{grid-template-columns:1fr}.faq-group-intro{grid-row:auto}.faq-group details p{padding-right:0}.faq-related{grid-column:1;grid-template-columns:1fr}.faq-related strong{grid-column:1}.faq-overview{grid-template-columns:1fr}.faq-search-section,.faq-project-cta{grid-template-columns:1fr}.download-grid .button{align-self:stretch}.resources-page .site-footer{min-width:0}.resources-page .footer-main,.resources-page .footer-links,.resources-page .footer-copy{min-width:0;width:auto}.resources-page .footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}.resources-page .footer-link-group{min-width:0}.guides-index-hero{padding-top:108px!important}.guides-index-hero h1{font-size:42px}.guides-hero-layout{grid-template-columns:1fr;gap:38px}.guides-path-grid{grid-template-columns:1fr 1fr}.guides-path-grid a,.guides-path-grid a:nth-child(3){border-right:1px solid #d6e0e6;border-bottom:1px solid #d6e0e6}.guides-path-grid a:nth-child(even){border-right:0}.guides-path-grid a:last-child{border-bottom:0}.guides-card-grid,.guides-card-grid--two,.guides-card-grid--single{grid-template-columns:1fr}.guide-index-card{min-height:195px}.guide-group{gap:20px;padding:28px 0}}

@media(max-width:980px){.articles-hero-layout{grid-template-columns:1fr;gap:38px}.articles-hero-panel{max-width:520px}.articles-tools{align-items:stretch;flex-direction:column}.articles-search{flex-basis:auto;max-width:none}.articles-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.articles-guide-cta{grid-template-columns:1fr}}
@media(max-width:760px){.articles-index-hero{padding-top:108px!important}.resources-page .articles-index-hero h1{font-size:48px}.articles-library-head{display:block}.articles-tools{padding:10px}.articles-filters{display:grid;grid-template-columns:1fr 1fr}.articles-filters button:first-child{grid-column:1/-1}.articles-card-grid,.article-reference-grid{grid-template-columns:1fr}.article-index-card{min-height:280px;padding:22px}.article-index-card h3{max-width:100%;margin-top:26px}.articles-guide-cta .button{width:100%}}
@media(max-width:420px){.resources-page .footer-links{grid-template-columns:1fr}}
@media(max-width:520px){.rs-hero h1{font-size:clamp(25px,8vw,32px)}}
@media(max-width:1100px){.rs-latest-grid{grid-template-columns:none;grid-auto-columns:calc((100% - 15px)/2)}}
@media(max-width:760px){.rs-latest-grid{grid-template-columns:none;grid-auto-columns:100%}}

@media(max-width:760px){
  .faq-hero { grid-template-columns: 1fr; }
  .faq-hero .faq-overview { grid-column: 1; grid-row: auto; margin-top: 22px; }
  .faq-question-list,
  .article-faq-questions { grid-column: 1; grid-row: auto; }
}
