/* =====================================================================
   SHANEXWEBCO — Google Business Profile, SEO & AI Search (service page)
   File: assets/css/seo-services.css · Mobile-first · Light "search" hero, navy + gold with Google accents
   01 Base · 02 Hero + search stage · 03 Heads · 04 Three places · 05 GBP profile · 06 Result anatomy
   07 AI search + code · 08 Process · 09 Included · 10 Pricing · 11 Screenshots · 12 FAQ · 13 CTA · 14 Safety
   ===================================================================== */

/* 01 — Base */
.sa {
    --navy: var(--color-primary, #092B4C);
    --navy-deep: var(--color-primary-dark, #061B30);
    --navy-ink: #04111F;
    --navy-mid: var(--color-primary-light, #194C76);
    --gold: var(--color-secondary, #F0C779);
    --gold-deep: var(--color-secondary-dark, #C99643);
    --gold-grad: linear-gradient(135deg, #FFE3AA, #E9B963);
    --g-blue: #4285F4; --g-red: #EA4335; --g-yellow: #FBBC05; --g-green: #34A853;
    --link: #1A0DAB;
    --ink: var(--text-heading, #071F39);
    --body: var(--text-body, #536477);
    --muted: var(--text-muted, #78879A);
    --line: var(--border-color, #E8EEF4);
    --soft: var(--bg-light, #F6F9FC);
    --font-h: var(--font-heading, 'Poppins', sans-serif);
    --hh: var(--sx-hh, 0px);
    --ease: cubic-bezier(.2, .8, .2, 1);
    position: relative;
    background: #fff;
    color: var(--body);
    font-family: var(--font-body, 'Inter', system-ui, sans-serif);
    overflow-x: clip;
    -webkit-font-smoothing: antialiased;
}
.sa *, .sa *::before, .sa *::after { box-sizing: border-box; }
.sa h1, .sa h2, .sa h3, .sa p, .sa ul, .sa ol, .sa figure, .sa pre { margin: 0; padding: 0; }
.sa ul, .sa ol { list-style: none; }
.sa img { display: block; max-width: 100%; }
.sa a { color: inherit; }
.sa :where(a, button, summary):focus-visible { outline: 3px solid var(--gold-deep); outline-offset: 3px; }
.sa-wrap { width: min(calc(100% - 32px), 1240px); margin-inline: auto; }
.sa-w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .1em; margin-bottom: -.1em; }
.sa-w__i { display: inline-block; }
.sa-eyebrow { display: inline-block; color: var(--gold-deep); font-size: 11.5px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; line-height: 1.5; }
.sa h1 em, .sa h1 em .sa-w__i, .sa .sa-hero__title em, .sa .sa-hero__title em .sa-w__i, .sa h2 em, .sa h2 em .sa-w__i { font-style: normal; background: linear-gradient(90deg, var(--g-blue), #2F6FD6 35%, var(--gold-deep) 75%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.sa-price h2 em, .sa-price h2 em .sa-w__i, .sa-cta h2 em, .sa-proc h2 em, .sa-proc h2 em .sa-w__i { background: var(--gold-grad); -webkit-background-clip: text; background-clip: text; }

.sa-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 26px; border-radius: 999px; border: 1.5px solid transparent; font: 600 15px/1 var(--font-h); text-decoration: none; white-space: nowrap; transition: background .3s, color .3s, box-shadow .3s, border-color .3s; will-change: transform; }
.sa-btn span { transition: transform .35s var(--ease); }
.sa-btn:hover span { transform: translateX(4px); }
.sa-btn--gold { background: var(--gold-grad); color: var(--navy-ink) !important; box-shadow: 0 14px 34px -14px rgba(201,150,67,.9); }
.sa-btn--gold:hover { box-shadow: 0 20px 44px -12px rgba(201,150,67,1); }
.sa-btn--line { border-color: var(--navy); color: var(--navy) !important; }
.sa-btn--line:hover { background: var(--navy); color: #fff !important; }
.sa-btn--glass { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.3); color: #fff !important; }
.sa-btn--glass:hover { background: rgba(255,255,255,.16); border-color: var(--gold); }
.sa-stars { display: inline-flex; gap: 1px; color: var(--g-yellow); }
.sa-stars svg { width: 13px; height: 13px; }

/* 02 — Hero */
.sa-hero { position: relative; overflow: hidden; padding: clamp(36px, 6vw, 80px) 0 clamp(60px, 8vw, 110px); background: radial-gradient(ellipse 60% 70% at 85% 30%, rgba(66,133,244,.12), transparent 70%), radial-gradient(ellipse 50% 60% at 10% 90%, rgba(240,199,121,.22), transparent 70%), #fff; }
.sa-hero__dots { position: absolute; inset: 0; background-image: radial-gradient(rgba(9,43,76,.13) 1.2px, transparent 1.2px); background-size: 22px 22px; -webkit-mask-image: radial-gradient(ellipse 70% 70% at 70% 40%, #000, transparent 75%); mask-image: radial-gradient(ellipse 70% 70% at 70% 40%, #000, transparent 75%); pointer-events: none; }
.sa-hero__in { position: relative; display: grid; gap: 46px; align-items: center; }
.sa-crumb { margin-bottom: 18px; font-size: 13px; color: var(--muted); }
.sa-crumb ol { display: flex; flex-wrap: wrap; gap: 8px; }
.sa-crumb li + li::before { content: '/'; margin-right: 8px; opacity: .5; }
.sa-crumb a { text-decoration: none; }
.sa-crumb a:hover { color: var(--gold-deep); }
.sa .sa-hero h1.sa-hero__h1 { display: block; margin: 0; font-family: var(--font-h); font-size: clamp(11.5px, 3vw, 13px); font-weight: 700; letter-spacing: .16em; color: var(--gold-deep); }
.sa .sa-hero__title { margin-top: 12px; font: 800 clamp(42px, 11vw, 82px)/1.02 var(--font-h); letter-spacing: -.045em; color: var(--ink); }
.sa .sa-hero__lead { margin-top: 20px; max-width: 560px; font-size: clamp(16px, 1.5vw, 18.5px); line-height: 1.7; }
.sa-hero__btns { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.sa-hero__where { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.sa-hero__where li { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--line); font: 600 14px/1 var(--font-h); color: var(--ink); box-shadow: 0 8px 20px -14px rgba(9,43,76,.5); }
.sa-hero__where svg { width: 18px; height: 18px; }
.sa-hero__where li:nth-child(1) svg { color: var(--g-red); } .sa-hero__where li:nth-child(2) svg { color: var(--g-blue); } .sa-hero__where li:nth-child(3) svg { color: var(--gold-deep); }

.sa-stage { position: relative; width: min(100%, 500px); margin: 0 auto; }
.sa-sbox { position: relative; z-index: 2; display: flex; align-items: center; gap: 12px; height: 60px; padding: 0 18px; border-radius: 999px; background: #fff; border: 1px solid #DFE1E5; box-shadow: 0 18px 40px -20px rgba(9,43,76,.55); }
.sa-sbox__g { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; flex: 0 0 18px; }
.sa-sbox__g i { width: 8px; height: 8px; border-radius: 50%; }
.sa-sbox__g i:nth-child(1) { background: var(--g-blue); } .sa-sbox__g i:nth-child(2) { background: var(--g-red); } .sa-sbox__g i:nth-child(3) { background: var(--g-yellow); } .sa-sbox__g i:nth-child(4) { background: var(--g-green); }
.sa-sbox__q { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font: 500 16px/1 var(--font-body, sans-serif); color: #202124; min-width: 0; }
.sa-sbox__caret { flex: 0 0 2px; height: 22px; margin-left: -10px; background: var(--g-blue); animation: saBlink 1s steps(1) infinite; }
@keyframes saBlink { 50% { opacity: 0; } }
.sa-sbox > svg { flex: 0 0 22px; width: 22px; height: 22px; margin-left: auto; color: var(--g-blue); }
.sa-tabs { display: flex; gap: 6px; margin: 16px 0 10px 8px; }
.sa-tabs span { padding: 7px 14px; border-radius: 999px; font: 600 13px/1 var(--font-h); color: var(--muted); transition: background .3s, color .3s; }
.sa-tabs span.is-on { background: var(--navy); color: #fff; }
.sa-panes { position: relative; display: grid; min-height: 330px; border-radius: 26px; background: #fff; border: 1px solid var(--line); box-shadow: 0 50px 90px -50px rgba(9,43,76,.6); overflow: hidden; }
.sa-pane { grid-area: 1 / 1; padding: 16px; opacity: 0; visibility: hidden; transform: translateY(14px); transition: opacity .45s, transform .45s var(--ease), visibility .45s; }
.sa-pane.is-on { opacity: 1; visibility: visible; transform: none; }
.sa-map { position: relative; height: 150px; border-radius: 16px; overflow: hidden; background: #E8F0E3; }
.sa-map__road { position: absolute; background: #fff; box-shadow: 0 0 0 1px #DDE3D6; }
.sa-map__road--a { left: -10%; right: -10%; top: 55%; height: 12px; transform: rotate(-8deg); }
.sa-map__road--b { top: -10%; bottom: -10%; left: 38%; width: 10px; transform: rotate(12deg); }
.sa-map__park { position: absolute; right: 8%; top: 12%; width: 70px; height: 46px; border-radius: 12px; background: #CDE5C3; }
.sa-pin { position: absolute; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50% 50% 50% 0; background: #A0A9B4; transform-origin: 0 100%; rotate: -45deg; }
.sa-pin:nth-of-type(2) { left: 18%; top: 28%; } .sa-pin:nth-of-type(3) { left: 72%; top: 60%; }
.sa-pin.is-you { left: 46%; top: 22%; width: 38px; height: 38px; background: var(--g-red); box-shadow: 0 10px 20px -6px rgba(234,67,53,.7); }
.sa-pin.is-you svg { width: 18px; height: 18px; color: #fff; rotate: 45deg; }
.sa-lc { display: grid; gap: 4px; margin-top: 10px; padding: 12px 14px; border-radius: 14px; border: 1px solid var(--line); }
.sa-lc.is-you { border-color: rgba(66,133,244,.45); background: #F5F9FF; }
.sa-lc b { font: 700 15px/1.2 var(--font-h); color: var(--ink); }
.sa-lc > b:empty { width: 45%; height: 10px; border-radius: 4px; background: #E6EBF2; }
.sa-lc small { font-size: 12px; color: var(--g-green); }
.sa-lc__l { display: block; width: 70%; height: 8px; border-radius: 4px; background: #EEF2F6; }
.sa-lc__acts { display: flex; gap: 8px; margin-top: 4px; }
.sa-lc__acts i, .sa-prof__acts i { display: inline-flex; align-items: center; gap: 5px; padding: 6px 10px; border-radius: 999px; border: 1px solid #DADCE0; font: 600 11.5px/1 var(--font-h); font-style: normal; color: #1A73E8; }
.sa-lc__acts svg, .sa-prof__acts svg { width: 13px; height: 13px; }
.sa-res { display: grid; gap: 4px; padding: 14px 10px; border-bottom: 1px solid #F0F2F5; }
.sa-res small { font-size: 12px; color: #4D5156; }
.sa-res b { font: 500 17px/1.3 var(--font-body, sans-serif); color: var(--link); }
.sa-res span { font-size: 13px; line-height: 1.5; color: #4D5156; }
.sa-res.is-you { border-radius: 14px; background: #F5F9FF; border: 1px solid rgba(66,133,244,.3); }
.sa-res:not(.is-you) small, .sa-res:not(.is-you) b, .sa-res:not(.is-you) span { display: block; height: 9px; border-radius: 4px; background: #EEF2F6; }
.sa-res:not(.is-you) small { width: 35%; } .sa-res:not(.is-you) b { width: 70%; height: 12px; } .sa-res:not(.is-you) span { width: 90%; }
.sa-pane--ai { padding: 22px; background: linear-gradient(160deg, #F7F4FF, #EEF5FF 60%, #FFF8EA); }
.sa-ai__h { display: inline-flex; align-items: center; gap: 8px; font: 700 14px/1 var(--font-h); color: var(--ink); }
.sa-ai__h svg { width: 22px; height: 22px; color: var(--g-blue); }
.sa-ai__t { min-height: 7.5em; margin-top: 14px; font-size: 16px; line-height: 1.6; color: #202124; }
.sa-ai__t::after, .sa-chat__a p::after { content: '▍'; margin-left: 2px; color: var(--g-blue); animation: saBlink 1s steps(1) infinite; }
.sa-ai__src, .sa-chat__src { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.sa-ai__src i, .sa-chat__src i { padding: 6px 10px; border-radius: 999px; background: #fff; border: 1px solid var(--line); font: 600 11.5px/1 var(--font-h); font-style: normal; color: var(--navy); }
html:not(.sa-gsap) .sa-pane--maps { opacity: 1; visibility: visible; transform: none; }
@media (min-width: 1000px) { .sa-hero__in { grid-template-columns: 1.05fr 1fr; gap: 60px; min-height: calc(76svh - var(--hh)); } .sa-panes { min-height: 360px; } }

/* 03 — Heads */
.sa-sec { position: relative; padding: clamp(64px, 9vw, 110px) 0; }
.sa-head { max-width: 720px; margin-bottom: clamp(30px, 5vw, 52px); }
.sa-head h2 { margin-top: 12px; font: 800 clamp(32px, 8vw, 54px)/1.08 var(--font-h); letter-spacing: -.04em; color: var(--ink); }
.sa-head p { margin-top: 16px; font-size: clamp(15.5px, 1.3vw, 18px); line-height: 1.7; }
.sa-head--center { margin-inline: auto; text-align: center; }

/* 04 — Three places */
.sa-where { background: var(--soft); }
.sa-where__grid { display: grid; gap: 18px; }
.sa-wcard { position: relative; overflow: hidden; padding: 28px 24px; border-radius: 26px; background: #fff; border: 1px solid var(--line); box-shadow: 0 30px 60px -40px rgba(9,43,76,.5); transform-style: preserve-3d; }
.sa-wcard__no { position: absolute; right: 20px; top: 14px; font: 800 54px/1 var(--font-h); color: rgba(9,43,76,.06); letter-spacing: -.04em; }
.sa-wcard__ic { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 18px; color: #fff; }
.sa-wcard__ic svg { width: 28px; height: 28px; }
.sa-wcard--maps .sa-wcard__ic { background: linear-gradient(135deg, #EA4335, #FF7A59); }
.sa-wcard--search .sa-wcard__ic { background: linear-gradient(135deg, #4285F4, #2B5FD9); }
.sa-wcard--ai .sa-wcard__ic { background: linear-gradient(135deg, #6E4BD8, #4285F4 60%, #E9B963); }
.sa-wcard h3 { margin-top: 18px; font: 700 22px/1.2 var(--font-h); color: var(--ink); }
.sa-wcard h3 small { display: block; margin-top: 4px; font: 600 13px/1.2 var(--font-h); color: var(--gold-deep); }
.sa-wcard > p { margin-top: 10px; font-size: 15px; line-height: 1.6; }
.sa-wcard ul { display: grid; gap: 10px; margin-top: 18px; padding-top: 18px; border-top: 1px dashed var(--line); }
.sa-wcard li, .sa-ai__list li { display: flex; gap: 10px; align-items: flex-start; font-size: 14.5px; line-height: 1.45; color: var(--ink); }
.sa-wcard li svg, .sa-ai__list li svg { flex: 0 0 22px; width: 22px; height: 22px; padding: 4px; border-radius: 50%; background: rgba(52,168,83,.14); color: var(--g-green); }
@media (min-width: 900px) { .sa-where__grid { grid-template-columns: repeat(3, 1fr); gap: 22px; } }

/* 05 — GBP profile */
.sa-gbp { background: #fff; }
.sa-gbp__in { display: grid; gap: 46px; align-items: center; }
.sa-gbp__checks { display: grid; gap: 10px; }
.sa-gbp__checks li { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 16px; background: var(--soft); border: 1px solid var(--line); font: 600 15px/1.35 var(--font-h); color: var(--muted); transition: color .4s, background .4s, border-color .4s; }
.sa-gbp__checks i { flex: 0 0 26px; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; border: 2px solid #D5DCE5; color: transparent; transition: background .4s, border-color .4s, color .4s; }
.sa-gbp__checks svg { width: 14px; height: 14px; }
.sa-gbp__checks li.is-on, html:not(.sa-gsap) .sa-gbp__checks li { color: var(--ink); background: #fff; border-color: rgba(52,168,83,.4); }
.sa-gbp__checks li.is-on i, html:not(.sa-gsap) .sa-gbp__checks i { background: var(--g-green); border-color: var(--g-green); color: #fff; }
.sa-prof { width: min(100%, 420px); margin: 0 auto; border-radius: 26px; overflow: hidden; background: #fff; border: 1px solid var(--line); box-shadow: 0 50px 90px -50px rgba(9,43,76,.65); }
.sa-prof__photos { display: grid; grid-template-columns: 2fr 1fr; grid-template-rows: 1fr 1fr; gap: 3px; height: 150px; }
.sa-prof__photos i { background: linear-gradient(135deg, var(--navy-mid), var(--navy)); }
.sa-prof__photos i:first-child { grid-row: span 2; background: radial-gradient(circle at 70% 30%, rgba(233,185,99,.8), transparent 50%), linear-gradient(135deg, #0B2A4A, #194C76); }
.sa-prof__photos i:nth-child(3) { background: var(--gold-grad); }
.sa-prof__body { display: grid; gap: 14px; padding: 18px; }
.sa-prof__name { display: grid; gap: 4px; }
.sa-prof__name b { font: 700 20px/1.2 var(--font-h); color: #202124; }
.sa-prof__name small { font-size: 13px; color: #70757A; }
.sa-prof__acts { display: flex; flex-wrap: wrap; gap: 8px; }
.sa-prof__info { display: grid; gap: 8px; padding: 12px 0; border-block: 1px solid #F0F2F5; }
.sa-prof__info span { display: flex; align-items: center; gap: 10px; }
.sa-prof__info svg { width: 16px; height: 16px; color: #70757A; }
.sa-prof__info i { flex: 1; height: 8px; border-radius: 4px; background: #EEF2F6; max-width: 70%; }
.sa-open { font: 700 12.5px/1 var(--font-h); color: var(--g-green); }
.sa-prof__post { display: flex; gap: 12px; align-items: center; }
.sa-prof__post-img { flex: 0 0 64px; height: 64px; border-radius: 12px; background: linear-gradient(135deg, #FFE3AA, #E9B963); }
.sa-prof__post div { display: grid; gap: 6px; flex: 1; }
.sa-prof__post b { font: 700 13px/1 var(--font-h); color: #202124; }
.sa-prof__post i, .sa-prof__rev > i { display: block; height: 7px; border-radius: 4px; background: #EEF2F6; }
.sa-prof__post i + i { width: 60%; }
.sa-prof__rev { display: grid; gap: 8px; }
.sa-prof__reply { display: grid; gap: 6px; margin-left: 14px; padding: 10px 12px; border-left: 3px solid var(--g-blue); border-radius: 0 10px 10px 0; background: #F5F9FF; }
.sa-prof__reply b { font: 700 11.5px/1 var(--font-h); color: var(--navy); }
.sa-prof__reply i { display: block; height: 7px; width: 80%; border-radius: 4px; background: #DCE6F5; }
@media (min-width: 1000px) { .sa-gbp__in { grid-template-columns: 1.1fr .9fr; gap: 80px; } }

/* 06 — Result anatomy */
.sa-snip { background: var(--soft); }
.sa-snip__in { display: grid; gap: 30px; align-items: center; }
.sa-serp { display: grid; gap: 8px; padding: 24px 22px; border-radius: 22px; background: #fff; border: 1px solid var(--line); box-shadow: 0 40px 80px -45px rgba(9,43,76,.55); }
.sa-serp > * { border-radius: 8px; outline: 2px dashed transparent; outline-offset: 4px; transition: outline-color .4s, background .4s; }
.sa-serp__url { display: flex; align-items: center; gap: 8px; font-size: 13px; color: #4D5156; }
.sa-serp__url i { flex: 0 0 24px; height: 24px; border-radius: 50%; background: var(--gold-grad); }
.sa-serp__title { font: 500 clamp(17px, 2vw, 21px)/1.3 var(--font-body, sans-serif); color: var(--link); }
.sa-serp__desc { font-size: 14px; line-height: 1.55; color: #4D5156; }
.sa-serp__faq { display: grid; margin-top: 4px; border-top: 1px solid #EBEDF0; }
.sa-serp__faq span { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid #EBEDF0; font-size: 13.5px; color: #202124; }
.sa-serp__faq i { font-style: normal; color: #70757A; }
.sa-serp > .is-on { outline-color: var(--gold-deep); background: rgba(240,199,121,.14); }
.sa-snip__notes { display: grid; gap: 10px; }
.sa-snip__notes li { display: grid; grid-template-columns: 40px 1fr; gap: 14px; padding: 14px 16px; border-radius: 16px; background: #fff; border: 1px solid var(--line); transition: border-color .4s, box-shadow .4s; }
.sa-snip__notes li.is-on { border-color: rgba(201,150,67,.6); box-shadow: 0 20px 40px -30px rgba(201,150,67,.9); }
.sa-snip__notes span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--navy); color: var(--gold); font: 800 15px/1 var(--font-h); }
.sa-snip__notes h3 { font: 700 16.5px/1.3 var(--font-h); color: var(--ink); }
.sa-snip__notes p { margin-top: 3px; font-size: 14px; line-height: 1.5; }
.sa-tech { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 30px; }
.sa-tech li { display: grid; gap: 4px; padding: 16px; border-radius: 16px; background: var(--navy); color: rgba(255,255,255,.7); font-size: 13px; line-height: 1.45; }
.sa-tech b { font: 700 15.5px/1.2 var(--font-h); color: var(--gold); }
@media (min-width: 1000px) { .sa-snip__in { grid-template-columns: 1.15fr .85fr; gap: 60px; } .sa-tech { grid-template-columns: repeat(4, 1fr); gap: 16px; } }

/* 07 — AI search */
.sa-ai { background: #fff; }
.sa-ai__in { display: grid; gap: 46px; align-items: center; }
.sa-chat { width: min(100%, 480px); margin: 0 auto; padding: 18px; border-radius: 24px; background: linear-gradient(160deg, #0B1A2B, #10233A); color: rgba(255,255,255,.85); box-shadow: 0 50px 90px -45px rgba(4,17,31,.9); }
.sa-chat__top { display: flex; align-items: center; gap: 6px; padding-bottom: 14px; margin-bottom: 14px; border-bottom: 1px solid rgba(255,255,255,.08); }
.sa-chat__top i { width: 9px; height: 9px; border-radius: 50%; background: rgba(255,255,255,.2); }
.sa-chat__top b { margin-left: 8px; font: 600 13px/1 var(--font-h); color: rgba(255,255,255,.7); }
.sa-chat__q { justify-self: end; margin-left: auto; width: fit-content; max-width: 85%; padding: 12px 14px; border-radius: 16px 16px 4px 16px; background: #2B3A4F; font-size: 14.5px; line-height: 1.5; color: #fff; }
.sa-chat__a { display: flex; gap: 10px; margin-top: 16px; }
.sa-chat__av { flex: 0 0 32px; display: grid; place-items: center; height: 32px; border-radius: 10px; background: linear-gradient(135deg, #6E4BD8, #4285F4); color: #fff; }
.sa-chat__av svg { width: 18px; height: 18px; }
.sa-chat__a p { min-height: 6.4em; font-size: 15px; line-height: 1.6; color: #fff; }
.sa-chat__src { margin-left: 42px; }
.sa-chat__src i { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.14); color: var(--gold); }
.sa-chat__note { display: block; margin-top: 14px; text-align: right; font-size: 11px; color: rgba(255,255,255,.4); }
.sa-ai__list { display: grid; gap: 10px; }
.sa-ai__list li svg { background: rgba(66,133,244,.12); color: var(--g-blue); }
.sa-code { margin-top: 24px; border-radius: 16px; overflow: hidden; background: #0B1626; border: 1px solid #1B2A3D; }
.sa-code__bar { display: flex; align-items: center; gap: 8px; padding: 10px 14px; background: #101F33; font: 600 12px/1 ui-monospace, Menlo, monospace; color: rgba(255,255,255,.6); }
.sa-code__bar svg { width: 16px; height: 16px; color: var(--gold); }
.sa-code pre { min-height: 13.5em; padding: 14px 16px; overflow-x: auto; }
.sa-code code { font: 500 12.5px/1.65 ui-monospace, Menlo, Consolas, monospace; color: #9FE3B4; white-space: pre; }
@media (min-width: 1000px) { .sa-ai__in { grid-template-columns: 1fr 1fr; gap: 80px; } }

/* 08 — Process */
.sa-proc { background: radial-gradient(ellipse 80% 60% at 50% 0%, var(--navy-mid), var(--navy-deep) 55%, var(--navy-ink)); color: rgba(255,255,255,.72); }
.sa-proc .sa-head h2 { color: #fff; }
.sa-proc .sa-eyebrow { color: var(--gold); }
.sa-proc .sa-head p { color: rgba(255,255,255,.72); }
.sa .sa-proc__list { position: relative; display: grid; gap: 14px; padding-left: 62px; max-width: 1180px; margin: 0 auto; }
.sa-proc__line { position: absolute; left: 24px; top: 24px; bottom: 24px; width: 3px; border-radius: 3px; background: rgba(255,255,255,.12); }
.sa-proc__line i { position: absolute; inset: 0; border-radius: inherit; background: var(--gold-grad); transform: scaleY(0); transform-origin: 50% 0; }
.sa-pstep { position: relative; padding: 18px 20px; border-radius: 18px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); transition: background .5s, border-color .5s; }
.sa-pstep > span { position: absolute; left: -62px; top: 16px; display: grid; place-items: center; width: 50px; height: 50px; border-radius: 50%; background: var(--navy-ink); border: 2px solid rgba(255,255,255,.18); color: rgba(255,255,255,.6); font: 800 17px/1 var(--font-h); transition: background .5s, color .5s, border-color .5s; }
.sa-pstep.is-on, html:not(.sa-gsap) .sa-pstep { background: rgba(240,199,121,.08); border-color: rgba(240,199,121,.4); }
.sa-pstep.is-on > span, html:not(.sa-gsap) .sa-pstep > span { background: var(--gold-grad); border-color: transparent; color: var(--navy-ink); }
.sa-pstep h3 { font: 700 18px/1.25 var(--font-h); color: #fff; }
.sa-pstep p { margin-top: 5px; font-size: 14.5px; line-height: 1.55; }
html:not(.sa-gsap) .sa-proc__line i { transform: none; }
@media (min-width: 1000px) {
    .sa .sa-proc__list { grid-template-columns: repeat(5, 1fr); padding: 76px 0 0; }
    .sa-proc__line { left: 10%; right: 10%; top: 25px; bottom: auto; width: auto; height: 3px; }
    .sa-proc__line i { transform: scaleX(0); transform-origin: 0 50%; }
    .sa-pstep { text-align: center; }
    .sa-pstep > span { left: 50%; top: -76px; margin-left: -25px; }
}

/* 09 — Included */
.sa-inc { background: #fff; }
.sa-inc__grid { display: grid; gap: 12px; }
.sa-inc__grid li { display: flex; align-items: center; gap: 14px; padding: 18px 20px; border-radius: 18px; background: var(--soft); border: 1px solid var(--line); font: 600 15.5px/1.4 var(--font-h); color: var(--ink); transition: transform .4s var(--ease), background .3s, color .3s; }
.sa-inc__grid li:hover { transform: translateY(-4px); background: var(--navy); color: #fff; }
.sa-inc__grid li span { flex: 0 0 auto; font: 800 13px/1 var(--font-h); color: var(--gold-deep); }
@media (min-width: 700px) { .sa-inc__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .sa-inc__grid { grid-template-columns: repeat(3, 1fr); } }

/* 10 — Pricing */
.sa-price { background: var(--navy-ink); color: rgba(255,255,255,.75); }
.sa-price .sa-head h2 { color: #fff; }
.sa-price .sa-eyebrow { color: var(--gold); }
.sa-price__grid { display: grid; gap: 18px; max-width: 1100px; margin: 0 auto; }
.sa-pc { position: relative; display: flex; flex-direction: column; padding: 28px 24px; border-radius: 26px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12); }
.sa-pc.is-featured { border-color: rgba(240,199,121,.7); background: linear-gradient(180deg, rgba(240,199,121,.14), rgba(255,255,255,.04) 45%); box-shadow: 0 40px 90px -40px rgba(240,199,121,.5); }
.sa-pc__tag { align-self: flex-start; padding: 6px 12px; border-radius: 999px; background: rgba(255,255,255,.08); font: 700 11px/1 var(--font-h); letter-spacing: .06em; text-transform: uppercase; color: var(--gold); }
.sa-pc.is-featured .sa-pc__tag { background: var(--gold-grad); color: var(--navy-ink); }
.sa-pc h3 { margin-top: 16px; font: 700 20px/1.25 var(--font-h); color: #fff; }
.sa-pc__price { margin-top: 8px; font-size: 14px; }
.sa-pc__price small { font-size: 13px; opacity: .7; }
.sa-pc__price b { font: 800 38px/1 var(--font-h); color: #fff; letter-spacing: -.03em; }
.sa-pc ul { display: grid; gap: 10px; margin: 18px 0 24px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); }
.sa-pc li { display: flex; gap: 10px; align-items: flex-start; font-size: 14.5px; color: #fff; }
.sa-pc li svg { flex: 0 0 22px; width: 22px; height: 22px; padding: 4px; border-radius: 50%; background: rgba(240,199,121,.16); color: var(--gold); }
.sa-pc .sa-btn { margin-top: auto; }
.sa-pc .sa-btn--line { color: #fff !important; border-color: rgba(255,255,255,.35); }
.sa-pc .sa-btn--line:hover { background: #fff; color: var(--navy-ink) !important; }
.sa .sa-price__extra { max-width: 720px; margin: 26px auto 0; padding: 16px 20px; border-radius: 18px; background: rgba(255,255,255,.05); border: 1px dashed rgba(240,199,121,.45); text-align: center; font-size: 15px; line-height: 1.6; }
.sa-price__extra b { color: #fff; font-weight: 600; }
.sa-price__extra a { color: var(--gold); font-weight: 600; white-space: nowrap; }
.sa .sa-price__note { display: flex; align-items: flex-start; justify-content: center; gap: 10px; max-width: 720px; margin: 28px auto 0; text-align: left; font-size: 14.5px; line-height: 1.55; }
.sa-price__note svg { flex: 0 0 22px; width: 22px; height: 22px; color: var(--gold); }
@media (min-width: 900px) { .sa-price__grid { grid-template-columns: repeat(3, 1fr); } }

/* 11 — Screenshots */
.sa-shots { background: var(--soft); }
.sa-shots__grid { display: grid; gap: 18px; }
.sa-shot { border-radius: 20px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px var(--line), 0 30px 60px -35px rgba(9,43,76,.5); }
.sa-shot img { width: 100%; height: auto; }
.sa-shot figcaption { padding: 12px 16px; font-size: 14px; color: var(--ink); }
.sa-ph { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-height: 240px; padding: 16px; text-align: center; background: repeating-linear-gradient(45deg, #EEF2F7, #EEF2F7 10px, #F7F9FC 10px, #F7F9FC 20px); border: 2px dashed rgba(201,150,67,.8); }
.sa-ph b { font: 700 15px/1.3 var(--font-h); color: var(--gold-deep); }
.sa-ph code { padding: 4px 8px; border-radius: 6px; background: #fff; font: 500 11px/1.4 ui-monospace, Menlo, monospace; word-break: break-all; }
.sa-ph small { font-size: 11px; color: var(--muted); }
@media (min-width: 760px) { .sa-shots__grid { grid-template-columns: repeat(3, 1fr); } }

/* 12 — FAQ */
.sa-faq { background: #fff; }
.sa-faq__item { margin-bottom: 10px; border-radius: 18px; background: var(--soft); border: 1px solid var(--line); }
.sa-faq__item[open] { background: #fff; border-color: rgba(201,150,67,.5); box-shadow: 0 20px 40px -30px rgba(9,43,76,.45); }
.sa-faq__item summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 18px 20px; }
.sa-faq__item summary::-webkit-details-marker { display: none; }
.sa-faq__item h3 { font: 600 clamp(15.5px, 1.6vw, 17.5px)/1.4 var(--font-h); color: var(--ink); }
.sa-faq__item i { position: relative; flex: 0 0 32px; height: 32px; border-radius: 50%; background: #fff; border: 1px solid var(--line); color: var(--navy); }
.sa-faq__item i::before, .sa-faq__item i::after { content: ''; position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; margin: -1px 0 0 -6px; border-radius: 2px; background: currentColor; }
.sa-faq__item i::after { transform: rotate(90deg); transition: transform .4s var(--ease); }
.sa-faq__item[open] i { background: var(--navy); color: var(--gold); }
.sa-faq__item[open] i::after { transform: rotate(0); }
.sa-faq__item p { padding: 0 20px 20px; font-size: 15px; line-height: 1.7; }
@media (min-width: 1000px) { .sa-faq__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 64px; align-items: start; } }

/* 13 — CTA */
.sa-cta { padding: 0 0 clamp(60px, 8vw, 100px); background: #fff; }
.sa-cta__box { position: relative; overflow: hidden; padding: clamp(50px, 8vw, 90px) clamp(22px, 5vw, 64px); border-radius: 28px; text-align: center; background: radial-gradient(ellipse 80% 80% at 50% 0%, var(--navy-mid), var(--navy-deep) 60%, var(--navy-ink)); color: #fff; }
.sa-cta__ring { position: absolute; left: 50%; top: 50%; width: 760px; height: 760px; margin: -380px 0 0 -380px; border-radius: 50%; background: conic-gradient(from 0deg, rgba(66,133,244,.3), rgba(234,67,53,.18), rgba(251,188,5,.22), rgba(52,168,83,.22), rgba(66,133,244,.3)); filter: blur(55px); animation: saSpin 16s linear infinite; pointer-events: none; }
@keyframes saSpin { to { transform: rotate(360deg); } }
.sa-cta__search { position: relative; display: inline-flex; align-items: center; gap: 10px; margin-bottom: 22px; padding: 12px 20px; border-radius: 999px; background: #fff; color: #202124; font-size: 15px; box-shadow: 0 16px 34px -14px rgba(0,0,0,.7); }
.sa-cta__search svg { width: 18px; height: 18px; color: var(--g-blue); }
.sa-cta__box h2 { position: relative; font: 800 clamp(30px, 6vw, 54px)/1.1 var(--font-h); letter-spacing: -.04em; color: #fff; }
.sa-cta__box h2 em { display: block; font-style: normal; background: var(--gold-grad); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.sa-cta__box p { position: relative; margin: 16px auto 0; max-width: 560px; font-size: 16.5px; line-height: 1.65; color: rgba(255,255,255,.78); }
.sa-cta__btns { position: relative; display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 30px; }

/* 14 — Motion safety */
.shx-js:not(.sa-safe):not(.sa-run) .sa-hero [data-sa-in],
.shx-js:not(.sa-safe):not(.sa-run) .sa-hero__title { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
    .sa-cta__ring, .sa-sbox__caret, .sa-ai__t::after, .sa-chat__a p::after { animation: none !important; }
    .sa *, .sa *::before, .sa *::after { transition-duration: .01ms !important; }
}