/* Scoped to the four new SEO pages. Existing pages and the news layout stay unchanged. */
.seo-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(112deg,#0f0122 8%,#171039 67%,#251344);color:#fff;padding:165px 0 82px}
.seo-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 86% 30%,#7a2dff30,transparent 48%),radial-gradient(ellipse at 67% 95%,#03ffc019,transparent 48%)}
.seo-hero-grid{position:absolute;inset:0;z-index:-1;opacity:.4;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,transparent 20%,#000)}
.seo-hero-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.7fr);gap:65px;align-items:center}
.seo-hero h1{font-size:clamp(2.45rem,4vw,4.2rem);line-height:1.09;letter-spacing:-.055em;font-weight:650;margin:24px 0;max-width:850px}
.seo-hero-lead{max-width:750px;color:#d8d1e8;font-size:1.13rem;line-height:1.75}.seo-hero-lead strong{font-weight:450}
.seo-hero-cta{margin-top:30px}.seo-hero-cta .btn{font-size:.83rem;text-align:center;padding:16px 22px}
.seo-hero-visual{position:relative;padding:38px 24px 28px;isolation:isolate}
.seo-visual-orbit{position:absolute;width:330px;height:330px;border-radius:50%;border:1px solid #03ffc028;left:50%;top:44%;transform:translate(-50%,-50%);z-index:-1}
.seo-visual-orbit::after{content:"";position:absolute;inset:35px;border-radius:50%;border:1px solid #7a2dff50}
.seo-visual-core{position:relative;margin:0 auto 28px;width:215px;min-height:88px;display:grid;place-items:center;background:#130d2e;border:1px solid #ffffff2b;border-radius:17px;box-shadow:0 20px 55px #0004}
.seo-visual-core img{display:block;width:155px;height:auto;max-width:90%}
.seo-visual-steps{display:grid;gap:12px}.seo-visual-steps>div{display:flex;align-items:center;gap:15px;border:1px solid #ffffff26;border-radius:12px;background:linear-gradient(120deg,#292044eb,#1b1533ed);padding:18px 20px;box-shadow:0 12px 25px #0002}
.seo-visual-steps span{color:#03ffc0;font-size:.71rem;letter-spacing:.08em}.seo-visual-steps strong{font-size:1rem;font-weight:550}.seo-visual-steps svg{width:20px;height:20px;margin-left:auto;color:#03ffc0}
.seo-intro{padding:55px 0;border-bottom:1px solid #e5e4ef}.seo-intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:35px;font-size:1.05rem;line-height:1.85;color:#565166}.seo-intro-copy>p{margin:0}.seo-intro-copy strong{font-weight:550;color:#302443}
.seo-section{padding:75px 0;background:#fff}.seo-section-tint{background:#f8f7fc;border-top:1px solid #efecf5;border-bottom:1px solid #efecf5}
.seo-section-heading{display:grid;grid-template-columns:55px minmax(0,850px);gap:20px;align-items:start;margin-bottom:30px}
.seo-section-number{padding-top:12px;font-size:.76rem;letter-spacing:.12em;color:#7a2dff;border-top:2px solid #7a2dff}
.seo-section h2{font-size:clamp(1.9rem,3vw,2.65rem);line-height:1.16;letter-spacing:-.04em;font-weight:620;margin:0}
.seo-section-copy{max-width:900px;margin-left:75px;font-size:1.06rem;line-height:1.85;color:#565166}.seo-section-copy p{margin:0 0 21px}.seo-section-copy p:last-child{margin-bottom:0}.seo-section-copy strong{color:#302443;font-weight:600}
.seo-contents a{color:#6928d9;text-decoration:underline;text-underline-offset:4px}.seo-contents a:hover{color:#491297}
.seo-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:34px}
.seo-step-card{position:relative;border:1px solid #e4deed;border-radius:16px;background:white;padding:30px 32px;box-shadow:0 10px 35px #21113304}
.seo-step-card::before{content:"";position:absolute;inset:28px auto auto 0;height:32px;width:3px;background:#7a2dff}
.seo-step-card h3{font-size:1.25rem;line-height:1.4;letter-spacing:-.02em;font-weight:620;margin:0 0 17px;color:#25133b}
.seo-step-card p,.seo-step-card li{font-size:.99rem;line-height:1.8;color:#676174}.seo-step-card p+p{margin-top:14px}.seo-step-card ul{padding-left:20px}.seo-step-card:last-child:nth-child(odd){grid-column:1/-1}
.seo-faq{background:#f8f7fc}.seo-faq-list{display:grid;gap:14px;margin-left:75px;max-width:1000px}
.seo-question{border:1px solid #e6e0ed;border-radius:14px;background:#fff;overflow:hidden}.seo-question summary{cursor:pointer;list-style:none;padding:23px 60px 23px 25px;position:relative}.seo-question summary::-webkit-details-marker{display:none}.seo-question summary::after{content:"+";position:absolute;right:25px;top:18px;font-size:1.6rem;color:#7a2dff}.seo-question[open] summary::after{content:"−"}.seo-question h3{font-size:1rem;line-height:1.5;letter-spacing:0;font-weight:600;margin:0;color:#302443}.seo-question>div{padding:0 25px 24px;color:#676174;font-size:1rem;line-height:1.8}.seo-question summary:focus-visible{outline:3px solid #7a2dff;outline-offset:-4px}
.seo-closing{position:relative;background:linear-gradient(110deg,#130626,#271740);padding:70px 0;color:#fff;overflow:hidden}.seo-closing::after{content:"";position:absolute;right:-100px;top:-180px;width:500px;height:500px;border:1px solid #03ffc029;border-radius:50%;pointer-events:none}.seo-closing .max>div{max-width:920px}.seo-closing h3{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.2;margin:0 0 22px;letter-spacing:-.035em;font-weight:600}.seo-closing p{color:#d5cde1;line-height:1.8;font-size:1.05rem;max-width:820px;margin-top:18px}.seo-closing a{display:inline-flex;align-items:center;min-height:52px;padding:13px 22px;border-radius:9px;background:#03ffc0;color:#100721;text-decoration:none;font-size:.88rem;font-weight:650}.seo-closing a:hover{background:#52ffdb;color:#100721}
@media(max-width:1000px){.seo-hero-layout{gap:28px;grid-template-columns:minmax(0,1.25fr) minmax(240px,.7fr)}.seo-hero-visual{padding-left:0;padding-right:0}.seo-hero h1{font-size:clamp(2.2rem,4.6vw,3.5rem)}}
@media(max-width:760px){.seo-hero{padding:135px 0 55px}.seo-hero-layout{grid-template-columns:1fr}.seo-hero h1{font-size:clamp(2.1rem,7.7vw,3.5rem)}.seo-hero-visual{max-width:380px;width:100%;margin:10px auto 0}.seo-visual-orbit{width:270px;height:270px}.seo-hero-lead{font-size:1.03rem}.seo-intro{padding:36px 0}.seo-intro-copy{grid-template-columns:1fr;gap:22px;font-size:1rem}.seo-section{padding:50px 0}.seo-section-heading{grid-template-columns:32px minmax(0,1fr);gap:14px;margin-bottom:24px}.seo-section-number{font-size:.66rem;padding-top:7px}.seo-section-copy{margin-left:0;font-size:1rem}.seo-card-grid{grid-template-columns:1fr;gap:16px;margin-top:25px}.seo-step-card{padding:25px}.seo-faq-list{margin-left:0}.seo-question summary{padding-left:21px}.seo-closing{padding:50px 0}.seo-closing p{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.seo-hero *{animation:none!important;transition:none!important}}

/* Appointment and contact CTAs keep the site's green button treatment everywhere. */
.seo-hero a.seo-cta-link,.seo-contents a.seo-cta-link,.seo-intro a.seo-cta-link{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:15px 24px;border:1px solid transparent;border-radius:10px;background:#03ffc0;color:#0f0122;text-decoration:none;font-size:.9rem;line-height:1.5;font-weight:650;box-shadow:0 9px 28px #03ffc015;cursor:pointer}
.seo-hero a.seo-cta-link:hover,.seo-contents a.seo-cta-link:hover,.seo-intro a.seo-cta-link:hover{background:#52ffdb;color:#0f0122;text-decoration:none}
.seo-hero a.seo-cta-link:focus-visible,.seo-contents a.seo-cta-link:focus-visible,.seo-intro a.seo-cta-link:focus-visible{outline:3px solid #7a2dff;outline-offset:4px}
@media(max-width:590px){.seo-hero a.seo-cta-link,.seo-contents a.seo-cta-link,.seo-intro a.seo-cta-link{max-width:100%;text-align:center}}

/* 1.5.3 - Match the validated bold links and northeast arrow on green buttons. */
.seo-hero a,.seo-intro-copy a,.seo-contents a{font-weight:700}
.seo-hero a.seo-cta-link,.seo-contents a.seo-cta-link,.seo-intro a.seo-cta-link{font-weight:700;gap:14px}
.seo-link-arrow{display:inline-block;flex:0 0 auto;line-height:1;font-size:1.05em;font-weight:700;text-decoration:none}
