/* Source-first, static portal-intelligence extension. Accessible, no JavaScript. */
.portal-intelligence{max-width:1380px;margin:0 auto;padding:0 24px 72px}
.portal-hero{padding-bottom:22px}
.portal-route-links{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0}
.portal-route-links a,.portal-section-heading>a,.portal-method-panel>a{
  display:inline-flex;align-items:center;padding:10px 14px;border-radius:12px;
  border:1px solid rgba(47,143,157,.25);background:rgba(51,161,165,.065);
  color:inherit;font-weight:700;text-decoration:none
}
.portal-section{padding:35px 0;border-top:1px solid rgba(88,140,158,.18)}
.portal-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}
.portal-section-heading h2{margin:8px 0 10px}
.portal-section-heading p{max-width:70ch}
.portal-model-grid,.portal-change-grid,.portal-week-grid,.portal-home-grid{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}
.portal-model-card,.portal-change-card,.portal-news-card,.portal-home-grid>a{
  border-radius:17px;border:1px solid rgba(108,153,169,.22);padding:21px;
  background:var(--card-bg,rgba(72,128,144,.045));min-width:0;overflow-wrap:anywhere
}
.portal-model-card h3,.portal-change-card h3{margin:12px 0;font-size:1.23rem;line-height:1.3}
.portal-model-card h3 a,.portal-change-card h3 a,.portal-news-card a{color:inherit;text-decoration:none}
.portal-model-card h3 a:hover,.portal-change-card h3 a:hover,.portal-news-card a:hover{text-decoration:underline}
.portal-model-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;color:var(--text-muted,#5a7887);font-size:.78rem;letter-spacing:.025em}
.portal-fit,.portal-caution{line-height:1.6;font-size:.94rem}
.portal-fit strong,.portal-caution strong{display:block;margin-bottom:5px;font-size:.73rem;letter-spacing:.075em;text-transform:uppercase;color:var(--accent,#177b87)}
.portal-mini-facts{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}
.portal-mini-facts span{border:1px solid rgba(83,150,151,.2);border-radius:8px;padding:6px 8px;font-size:.78rem}
.portal-card-link{display:inline-block;font-weight:700;margin-top:5px}
.portal-change-actions{display:flex;flex-wrap:wrap;gap:12px;font-size:.88rem}
.portal-method,.portal-method-panel{color:var(--text-muted,#5d7583);font-size:.94rem;line-height:1.65}
.portal-method-panel{border-radius:17px;padding:26px;margin:24px 0 42px;background:rgba(42,138,147,.06);border:1px solid rgba(46,131,137,.18)}
.portal-method-panel h2{color:var(--text-primary,inherit);margin-top:0}
.portal-change-card{border-left:3px solid #2b9a9e}
.portal-change-card p{margin:10px 0}
.portal-news-card{padding:12px}
.portal-news-card>a{display:block}
.portal-news-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:10px}
.portal-news-kicker{display:block;margin:12px 4px 7px;text-transform:uppercase;font-size:.73rem;letter-spacing:.07em;color:var(--text-muted,#647c88)}
.portal-news-card strong{display:block;font-size:1.07rem;line-height:1.35}
.portal-news-card p,.portal-news-card small{display:block;margin:10px 0 4px;line-height:1.5}
.portal-home-entry{margin-top:36px;margin-bottom:40px}
.portal-home-grid>a{display:flex;flex-direction:column;gap:9px;text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease}
.portal-home-grid>a:hover{transform:translateY(-2px);border-color:#2d9ea3}
.portal-home-grid span{font-size:.76rem;color:var(--text-muted,#647d87);letter-spacing:.08em}
.portal-home-grid strong{font-size:1.3rem}
.portal-home-grid p{font-size:.95rem;line-height:1.55}
.portal-home-grid b{margin-top:auto;font-size:.88rem;color:var(--accent,#16858b)}
@media(max-width:960px){.portal-model-grid,.portal-change-grid,.portal-week-grid,.portal-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.portal-intelligence{padding:0 16px 42px}.portal-model-grid,.portal-change-grid,.portal-week-grid,.portal-home-grid{grid-template-columns:1fr}.portal-section-heading{display:block}.portal-method-panel{padding:19px}.portal-model-card,.portal-change-card{padding:19px}}
@media(prefers-reduced-motion:reduce){.portal-home-grid>a{transition:none}.portal-home-grid>a:hover{transform:none}}


/* Verified official-provider favicon. Neutral initials if missing/blocked. */
.portal-provider-identity{display:inline-flex;align-items:center;gap:8px;min-width:0}
.portal-provider-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:12px;border:1px solid rgba(101,150,159,.28);background:#fff;box-shadow:0 2px 9px rgba(12,48,63,.06);overflow:hidden}
.portal-provider-badge img{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);object-fit:contain;background:#fff;padding:4px;border-radius:8px}
.portal-provider-badge img[hidden]{display:none!important}
.portal-provider-initials{font-size:.76rem;font-weight:800;letter-spacing:.015em;color:#245968}
.portal-provider-name{display:block;color:var(--text-muted,#536f7e);font-size:.78rem;line-height:1.35;font-weight:650;overflow-wrap:anywhere}
.portal-model-heading{display:grid;grid-template-columns:40px minmax(0,1fr);gap:0 12px;align-items:center;margin:14px 0 16px}
.portal-model-heading .portal-provider-identity{display:contents}
.portal-model-heading .portal-provider-badge{grid-column:1;grid-row:1 / 3}
.portal-model-heading .portal-provider-name{grid-column:2;grid-row:1}
.portal-model-heading h3{grid-column:2;grid-row:2;margin:3px 0 0;line-height:1.3;overflow-wrap:anywhere}
.portal-change-card .portal-model-heading{margin:15px 0}
.changes-brand-heading{display:flex;align-items:center;gap:12px}
.changes-brand-heading .portal-provider-badge{flex:0 0 34px;width:34px;height:34px;border-radius:10px}
.changes-meaningful-cta{margin:20px 0 30px}
.changes-meaningful-cta a{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;padding:18px 22px;border:1px solid rgba(75,149,158,.32);border-radius:14px;background:rgba(55,151,158,.055);color:inherit;text-decoration:none}
.changes-meaningful-cta strong{font-size:1.04rem}
.changes-meaningful-cta span{font-size:.91rem}
@media(max-width:620px){.portal-model-heading{gap:0 11px}.portal-provider-badge{flex-basis:38px;width:38px;height:38px}.changes-meaningful-cta a{padding:15px}}
