.resource-section { padding-top:132px; }
.resource-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.resource-card { display:flex; flex-direction:column; min-height:270px; padding:25px; background:#fff; border:1px solid var(--line); border-radius:8px; box-shadow:0 8px 22px rgb(16 24 40 /.025); transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease; }
.resource-card:hover { border-color:#f6b5a4; box-shadow:0 18px 30px rgb(16 24 40 /.08); transform:translateY(-4px); }
.resource-kicker { color:var(--coral); font-family:"DM Mono",monospace; font-size:10px; font-weight:500; letter-spacing:.45px; text-transform:uppercase; }
.resource-card h3 { margin:29px 0 10px; color:var(--navy); font-size:19px; letter-spacing:0; }
.resource-card p { margin:0; color:var(--muted); font-size:13px; line-height:1.72; }
.resource-link { display:inline-flex; align-items:center; gap:8px; margin-top:auto; padding-top:26px; color:var(--slate); font-size:12px; font-weight:800; }
.resource-link b { color:var(--coral); font-size:16px; font-weight:500; }
.faq-section { padding-top:118px; padding-bottom:24px; }
.faq-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 16px; }
.faq-list details { padding:20px 22px; background:#fff; border:1px solid var(--line); border-radius:8px; }
.faq-list summary { position:relative; padding-right:22px; color:var(--navy); cursor:pointer; font-size:14px; font-weight:800; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { position:absolute; top:-2px; right:0; color:var(--coral); content:"+"; font-size:20px; font-weight:500; }
.faq-list details[open] summary::after { content:"-"; }
.faq-list p { margin:13px 0 0; color:var(--muted); font-size:13px; line-height:1.7; }
.site-footer { grid-template-columns:auto minmax(120px,1fr) auto auto auto; }
.footer-links { display:flex; flex-wrap:wrap; gap:12px; font-size:10px; font-weight:700; }
.footer-links a:hover { color:var(--coral); }

.seo-page .site-header { border-bottom:1px solid var(--line); }
.page-main { width:min(980px,calc(100% - 48px)); margin-inline:auto; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; padding-top:31px; color:var(--muted); font-family:"DM Mono",monospace; font-size:10px; letter-spacing:.3px; }
.breadcrumbs a:hover { color:var(--coral); }
.breadcrumbs span { color:var(--soft); }
.content-hero { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:74px; align-items:center; padding:82px 0 88px; border-bottom:1px solid var(--line); }
.topic-label { margin:0 0 18px; color:var(--coral); font-family:"DM Mono",monospace; font-size:10px; font-weight:500; letter-spacing:.7px; text-transform:uppercase; }
.content-hero h1 { max-width:700px; margin:0; color:var(--navy); font-size:52px; font-weight:800; line-height:1.06; letter-spacing:0; }
.content-lede { max-width:670px; margin:24px 0 0; color:var(--muted); font-size:17px; line-height:1.75; }
.content-hero .hero-actions { margin-top:28px; }
.topic-visual { position:relative; display:grid; place-items:center; min-height:244px; background:#101828; border:1px solid #26344a; border-radius:8px; overflow:hidden; }
.topic-visual::before,.topic-visual::after { position:absolute; content:""; }
.topic-visual::before { width:270px; height:1px; background:#43516a; transform:rotate(-34deg); }
.topic-visual::after { width:190px; height:1px; background:#f15f3d; transform:rotate(42deg); }
.topic-visual img { position:relative; z-index:1; width:92px; height:92px; object-fit:contain; }
.content-section { padding:78px 0; border-bottom:1px solid var(--line); }
.content-layout { display:grid; grid-template-columns:minmax(0,1fr) 240px; gap:76px; align-items:start; }
.content-layout h2,.content-section > h2 { max-width:720px; margin:0 0 20px; color:var(--navy); font-size:34px; letter-spacing:0; line-height:1.16; }
.prose { color:var(--muted); font-size:15px; line-height:1.78; }
.prose p { margin:0 0 18px; }
.prose strong { color:var(--slate); }
.prose ul { display:grid; gap:12px; margin:23px 0; padding:0; list-style:none; }
.prose li { position:relative; padding-left:22px; }
.prose li::before { position:absolute; top:.7em; left:0; width:7px; height:7px; background:var(--coral); border-radius:50%; content:""; }
.content-note { padding:24px; color:#d6dfed; background:#172238; border-radius:8px; }
.content-note b { display:block; margin-bottom:9px; color:#fff; font-size:13px; }
.content-note p { margin:0; color:#b9c5d8; font-size:12px; line-height:1.65; }
.steps-list { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:34px; }
.steps-list article { padding:0 22px 0 0; border-right:1px solid var(--line); }
.steps-list article:last-child { padding-right:0; border-right:0; }
.steps-list span { display:block; margin-bottom:17px; color:var(--coral); font-family:"DM Mono",monospace; font-size:11px; }
.steps-list h3 { margin:0 0 9px; color:var(--navy); font-size:16px; letter-spacing:0; }
.steps-list p { margin:0; color:var(--muted); font-size:13px; line-height:1.7; }
.page-faq { padding-bottom:84px; }
.page-cta { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:50px; align-items:center; margin:0 0 82px; padding:48px 52px; color:#d6dfed; background:#101828; border-radius:8px; }
.page-cta h2 { max-width:620px; margin:0; color:#fff; font-size:34px; line-height:1.15; letter-spacing:0; }
.page-cta p { margin:15px 0 0; color:#b9c5d8; font-size:14px; line-height:1.65; }
.seo-page .site-footer { width:min(980px,calc(100% - 48px)); }

@media (max-width:920px) {
  .resource-grid { grid-template-columns:1fr; }
  .resource-card { min-height:0; }
  .faq-list { grid-template-columns:1fr; }
  .site-footer { grid-template-columns:auto 1fr auto; }
  .footer-links { grid-column:1 / -1; }
  .content-hero,.content-layout { grid-template-columns:1fr; gap:34px; }
  .topic-visual { width:min(100%,420px); min-height:190px; }
  .steps-list { grid-template-columns:1fr; gap:22px; }
  .steps-list article { padding:0 0 22px; border-right:0; border-bottom:1px solid var(--line); }
  .steps-list article:last-child { padding-bottom:0; border-bottom:0; }
  .page-cta { grid-template-columns:1fr; gap:28px; }
}

@media (max-width:620px) {
  .resource-section,.faq-section { padding-top:92px; }
  .site-footer { grid-template-columns:1fr 1fr; }
  .site-footer p,.footer-links { grid-column:1 / -1; }
  .page-main,.seo-page .site-footer { width:calc(100% - 32px); }
  .breadcrumbs { padding-top:23px; }
  .content-hero { padding:54px 0 62px; }
  .content-hero h1 { font-size:40px; }
  .content-lede { font-size:15px; }
  .content-section { padding:58px 0; }
  .content-layout h2,.content-section > h2,.page-cta h2 { font-size:29px; }
  .topic-visual { min-height:165px; }
  .page-cta { margin-bottom:58px; padding:34px 25px; }
}
