* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.seo-page { margin: 0; min-width: 0; min-height: 100vh; overflow-x: hidden; line-height: 1.75; }
.seo-container { width: min(1100px, calc(100% - 36px)); margin: 0 auto; }
.seo-nav { position: sticky; z-index: 30; top: 0; border-bottom: 1px solid rgba(255,255,255,.8); background: rgba(255,255,255,.42); backdrop-filter: blur(24px) saturate(145%); -webkit-backdrop-filter: blur(24px) saturate(145%); }
.seo-nav-inner { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.seo-brand { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 800; color: #17213d; }
.seo-brand img { width: 132px; height: 40px; object-fit: cover; border: 1px solid rgba(255,255,255,.86); border-radius: 999px; box-shadow: 0 9px 24px rgba(61,79,170,.2); }
.seo-brand span { display: none; }
.seo-links { display: flex; align-items: center; gap: 20px; color: #59647f; font-size: 14px; }
.seo-links a:hover { color: #405bd7; }
.seo-hero { padding: 76px 0 50px; }
.seo-hero-grid { display: grid; grid-template-columns: 1.12fr .88fr; gap: 52px; align-items: center; }
.seo-eyebrow, .seo-chip { display: inline-flex; padding: 5px 12px; border: 1px solid rgba(255,255,255,.9); border-radius: 999px; color: #405bd7; background: rgba(255,255,255,.52); font-size: 12px; font-weight: 800; }
.seo-hero h1 { margin: 14px 0 18px; color: #17213d; font-size: clamp(38px, 6vw, 62px); line-height: 1.12; letter-spacing: -.035em; }
.seo-hero p { max-width: 650px; margin: 0; color: #5f6b86; font-size: 18px; }
.seo-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.seo-button { display: inline-flex; min-height: 48px; padding: 10px 22px; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.66); border-radius: 999px; color: #fff; background: linear-gradient(155deg,#718aff,#526cf2 48%,#3850cf); box-shadow: 0 15px 35px rgba(65,83,200,.28), inset 0 1px 0 rgba(255,255,255,.7); font-weight: 750; }
.seo-button.secondary { color: #3953c8; background: rgba(255,255,255,.58); box-shadow: 0 12px 30px rgba(55,75,137,.11), inset 0 1px 0 #fff; }
.seo-card { border: 1px solid rgba(255,255,255,.84); border-radius: 28px; background: linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.34)); box-shadow: var(--rs-shadow); backdrop-filter: blur(24px) saturate(145%); -webkit-backdrop-filter: blur(24px) saturate(145%); }
.seo-hero-card { padding: 28px; }
.seo-hero-card h2 { margin: 0 0 14px; font-size: 24px; }
.seo-facts { margin: 0; }
.seo-facts div { display: grid; grid-template-columns: 90px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.72); }
.seo-facts div:last-child { border-bottom: 0; }
.seo-facts dt { font-weight: 800; }.seo-facts dd { margin: 0; color: #65708a; }
.seo-section { padding: 54px 0; }
.seo-section h2 { margin: 0 0 10px; font-size: clamp(30px, 4vw, 42px); line-height: 1.25; }
.seo-section-lead { max-width: 730px; margin: 0 0 28px; color: #65708a; }
.seo-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.seo-grid .seo-card { padding: 26px; }
.seo-grid h3 { margin: 12px 0 8px; font-size: 21px; }.seo-grid p { margin: 0; color: #65708a; }
.seo-content { display: grid; grid-template-columns: minmax(0,1fr) 310px; gap: 26px; align-items: start; }
.seo-article { padding: 34px; }.seo-article h2 { margin-top: 32px; font-size: 29px; }.seo-article h2:first-child { margin-top: 0; }.seo-article h3 { margin-top: 24px; }.seo-article p,.seo-article li { color: #55617c; }
.seo-side { position: sticky; top: 96px; padding: 25px; }.seo-side .seo-button { width: 100%; margin: 5px 0; }
.seo-notice { padding: 16px 18px; border: 1px solid rgba(174,202,255,.82); border-radius: 17px; color: #43527c; background: rgba(235,244,255,.72); }
.seo-keywords { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }.seo-keywords a { padding: 6px 11px; border: 1px solid rgba(255,255,255,.84); border-radius: 999px; color: #405bd7; background: rgba(255,255,255,.52); font-size: 12px; }
.seo-faq details { margin: 10px 0; border: 1px solid rgba(255,255,255,.82); border-radius: 18px; background: rgba(255,255,255,.5); }.seo-faq summary { padding: 16px 18px; cursor: pointer; font-weight: 800; }.seo-faq details p { margin: 0; padding: 0 18px 18px; color: #5e6983; }
.seo-footer { margin-top: 48px; padding: 36px 0 calc(36px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(255,255,255,.78); color: #66718a; background: rgba(255,255,255,.28); }.seo-footer-inner { display: flex; justify-content: space-between; gap: 22px; }.seo-footer a { color: #405bd7; }
@media(max-width: 820px) { .seo-hero-grid,.seo-content { grid-template-columns: 1fr; }.seo-grid { grid-template-columns: 1fr; }.seo-side { position: static; }.seo-links { display: none; }.seo-hero { padding-top: 48px; } }
@media(max-width: 520px) { .seo-container { width: min(100% - 22px, 1100px); }.seo-hero-card,.seo-article { padding: 23px 20px; }.seo-footer-inner { flex-direction: column; }.seo-facts div { grid-template-columns: 1fr; gap: 2px; } }
