/* GEO page styles and the small set of shared base rules this page needs. */
@font-face { font-family:Inter;font-style:normal;font-weight:300 800;font-display:swap;src:url('../fonts/inter-variable-latin.woff2') format('woff2'); }

:where(.geo-page) { --red:#dc2626;--ink:#1f0a0d;--muted:#526174;--max:72rem; }
:where(.geo-page) h2,:where(.geo-page) h3 { margin:0; }
:where(.geo-page) button { margin:0;font:inherit;color:inherit;border:0;background:none;cursor:pointer; }
:where(.geo-page) .mx-auto { margin-inline:auto; }
:where(.geo-page) .mb-5 { margin-bottom:1.25rem; }
:where(.geo-page) .max-w-6xl { max-width:72rem; }
:where(.geo-page) .section-alt { background:#faf7f8; }
.geo-page :where(a,button):focus-visible { outline:3px solid rgba(220,38,38,.3);outline-offset:3px; }
:where(.geo-page) .heading-display { color:var(--ink);font:600 clamp(2.25rem,4.6vw,4rem)/1.02 Oswald,sans-serif;letter-spacing:-.015em;text-transform:uppercase; }
:where(.geo-page) .body-copy { margin-bottom:1rem;color:var(--muted);line-height:1.75; }
:where(.geo-page) .text-link { display:inline-flex;align-items:center;margin-top:1rem;color:#b91c1c;font-size:.86rem;font-weight:700; }
:where(.geo-page) .text-link svg { width:1rem;height:1rem;margin-left:.5rem; }
:where(.geo-page) .agency-kicker { display:block;margin-bottom:.45rem;color:var(--red);font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase; }
:where(.geo-page) .white-label-section { padding-block:1.35rem!important;border-block:1px solid #fecaca;background:#fff7f7; }
:where(.geo-page) .white-label-strip { display:flex;align-items:center;justify-content:space-between;gap:clamp(1.5rem,4vw,4rem); }
:where(.geo-page) .white-label-strip-copy { max-width:45rem; }
:where(.geo-page) .white-label-strip h2 { margin-bottom:.35rem;color:var(--ink);font-size:clamp(1.25rem,2.2vw,1.7rem);font-weight:800; }
:where(.geo-page) .white-label-strip-copy > p:not(.agency-kicker) { color:var(--muted);font-size:.76rem;line-height:1.55; }
:where(.geo-page) .white-label-strip-cta { display:inline-flex;min-height:3.1rem;flex:0 0 auto;align-items:center;gap:.55rem;padding:.8rem 1.15rem;border-radius:.75rem;background:var(--red);color:#fff;font-size:.78rem;font-weight:800; }
:where(.geo-page) .white-label-strip-cta svg { width:1rem;height:1rem; }
:where(.geo-page) main > section:not(.hero-section-chatgpt) { padding:clamp(3.75rem,5.5vw,5.25rem) 1.5rem; }
:where(.geo-page) main > section:not(.hero-section-chatgpt) > div { width:min(100%,var(--max)); }

@media (max-width:900px) {
  :where(.geo-page) .white-label-strip { align-items:flex-start;flex-direction:column; }
}

@media (max-width:767px) {
  :where(.geo-page) main > section:not(.hero-section-chatgpt) { padding:3.5rem 1rem; }
  :where(.geo-page) .heading-display { font-size:clamp(2.15rem,10vw,3.2rem); }
  :where(.geo-page) .hero-secondary { text-align:center; }
}

@media (max-width:700px) {
  :where(.geo-page) .white-label-strip-cta { width:100%;justify-content:center; }
}

@media (prefers-reduced-motion:reduce) {
  :where(.geo-page) *, :where(.geo-page) *::before, :where(.geo-page) *::after { scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important; }
}

/* GEO audit offer: rules used by the section embedded on this page. */
#geo-audit-offer {
  position:relative;
  isolation:isolate;
  background-color:#210407;
  background-image:radial-gradient(ellipse at 90% 22%,rgba(239,68,68,.28),transparent 48%),radial-gradient(ellipse at 0% 100%,rgba(153,27,27,.48),transparent 48%),linear-gradient(115deg,#210407 15%,#450a0a 75%,#7f1d1d);
  color:#fff;
  padding:64px 24px;
}
#geo-audit-offer::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-image:radial-gradient(circle,rgba(254,205,211,.24) 1px,transparent 1.7px),linear-gradient(rgba(254,205,211,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(254,205,211,.045) 1px,transparent 1px);
  background-size:28px 28px,112px 112px,112px 112px;
  -webkit-mask-image:linear-gradient(110deg,transparent 15%,#000 95%);
  mask-image:linear-gradient(110deg,transparent 15%,#000 95%);
}
#geo-audit-offer::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-image:radial-gradient(ellipse 650px 650px at 100% 12%,transparent 48%,rgba(254,205,211,.2) 48.1%,transparent 48.4%,transparent 62%,rgba(254,205,211,.15) 62.1%,transparent 62.4%,transparent 76%,rgba(254,205,211,.1) 76.1%,transparent 76.4%,transparent 90%,rgba(254,205,211,.065) 90.1%,transparent 90.4%),linear-gradient(125deg,transparent 48%,rgba(239,68,68,.08) 58%,transparent 68%),radial-gradient(ellipse at 85% 5%,rgba(248,113,113,.16),transparent 42%);
  background-size:100% 100%,200% 200%,100% 100%;
  animation:geo-audit-ambient-light 14s ease-in-out infinite alternate;
}
@keyframes geo-audit-ambient-light {
  from { background-position:0 0,100% 0%,0 0;opacity:.65; }
  to { background-position:0 0,0% 100%,0 0;opacity:1; }
}
#geo-audit-offer,#geo-audit-offer * { box-sizing:border-box; }
#geo-audit-offer .geo-layout {
  max-width:1100px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  align-items:center;
  gap:56px;
}
#geo-audit-offer .geo-benefits {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px 28px;
  margin:30px 0 0;
  padding:28px 0 0;
  border-top:1px solid #7f1d1d;
  list-style:none;
}
#geo-audit-offer .geo-benefits li { margin:0;color:#fecdd3;font-size:14px;line-height:1.6; }
#geo-audit-offer .geo-benefits strong { display:block;margin-bottom:5px;color:#fff;font-size:16px;font-weight:700; }
#geo-audit-offer h2 { max-width:650px;margin:0 0 18px;color:#fff;font-size:clamp(30px,3.3vw,42px);font-weight:700;line-height:1.18;letter-spacing:-.025em;text-wrap:balance; }
#geo-audit-offer .geo-intro { max-width:620px;margin:0;color:#fecdd3;font-size:16px;line-height:1.7; }
#geo-audit-offer .geo-card { min-width:0;padding:30px 26px;border:1px solid #fecaca;border-radius:18px;background:#fff;color:#334155;box-shadow:0 16px 40px rgba(31,4,9,.16); }
#geo-audit-offer .geo-package { margin:0 0 12px;color:#b91c1c;font-size:21px;line-height:1.3;font-weight:700; }
#geo-audit-offer .geo-price { margin:0 0 24px;color:#b91c1c;font-size:56px;font-weight:800;line-height:1.1;letter-spacing:-.04em; }
#geo-audit-offer .geo-cents { font-size:.55em;letter-spacing:-.02em; }
#geo-audit-offer .geo-button { display:flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:13px 14px;border-radius:8px;background:#dc2626;color:#fff;font-size:15px;font-weight:700;line-height:1.5;text-decoration:none;transition:background-color .2s ease; }
#geo-audit-offer .geo-button:hover { background:#991b1b;color:#fff; }
#geo-audit-offer .geo-sample { margin-top:24px;padding-top:20px;border-top:1px solid #e9dfe2; }
#geo-audit-offer .geo-sample-link { display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#b91c1c;font-size:14px;font-weight:700;line-height:1.5;text-decoration:underline;text-underline-offset:4px; }
#geo-audit-offer .geo-sample-link:hover { color:#991b1b; }
#geo-audit-offer a:focus-visible { outline:3px solid #dc2626;outline-offset:4px; }

@media (max-width:850px) {
  #geo-audit-offer .geo-layout { grid-template-columns:1fr;gap:32px; }
  #geo-audit-offer .geo-card { width:100%;max-width:480px; }
}
@media (max-width:480px) {
  #geo-audit-offer { padding:42px 20px; }
  #geo-audit-offer .geo-benefits { grid-template-columns:1fr;gap:20px;margin-top:24px;padding-top:24px; }
  #geo-audit-offer .geo-card { padding:26px 22px; }
}
@media (prefers-reduced-motion:reduce) {
  #geo-audit-offer::after { animation:none; }
  #geo-audit-offer .geo-button { transition:none; }
}

.geo-page .heading-gradient { background:linear-gradient(135deg,#ef4444,#991b1b);background-clip:text;color:transparent; }
.geo-page .hero-section-chatgpt .geo-hero-art { background-image:url('../img/geo-services-hero-banner.webp');background-position:72% top; }
.geo-page .hero-section-chatgpt #hero-title {
  max-width:38rem;
  font-size:clamp(2.25rem,4.4vw,3.75rem);
  line-height:1.1;
  text-wrap:balance;
}
.geo-page .geo-light { color:#fda4af; }
.geo-page .geo-hero-note { color:#fda4af;font-size:.8rem;letter-spacing:.04em; }
.geo-proof-strip { padding-block:1rem !important; border-block:1px solid #f1d6da; background:linear-gradient(180deg,#fff,#fff8f8); }
.geo-proof-strip-inner { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch; }
.geo-proof-item { display:flex;align-items:center;justify-content:center;gap:.75rem;min-height:62px;padding:.5rem clamp(.7rem,2vw,1.75rem); }
.geo-proof-item + .geo-proof-item { border-left:1px solid #eee0e3; }
.geo-proof-item strong { color:#30121a;font-size:.8rem;font-weight:800;letter-spacing:.02em;line-height:1.35;white-space:nowrap; }
.geo-proof-icon { display:grid;place-items:center;flex:0 0 2.35rem;width:2.35rem;height:2.35rem;border:1px solid #f0b7be;border-radius:50%;background:#fff1f2;color:#b91c1c; }
.geo-proof-icon svg { width:1.1rem;height:1.1rem; }
.geo-proof-logo { display:grid;place-items:center;flex:0 0 3.8rem;width:3.8rem;height:2.35rem; }
.geo-proof-logo img { width:3.8rem;height:auto;max-height:1.35rem;object-fit:contain; }
.geo-split { display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center; }
.geo-split>* { min-width:0; }
.geo-grid-three { display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem; }
.geo-grid-two { display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem; }
.geo-space { margin-top:2.5rem; }
.geo-section-intro { max-width:760px; }
.geo-mascot { margin:0;display:grid;place-items:center;min-height:300px; }
.geo-mascot img { max-height:430px;width:auto;max-width:100%;object-fit:contain; }
.geo-numbered article { display:flex;gap:1rem;margin-top:1.5rem; }
.geo-numbered article>span,.geo-card-number { color:#b91c1c;font-size:.75rem;font-weight:800;letter-spacing:.08em; }
.geo-numbered article>span { padding-top:3px; }
.geo-numbered h3 { font-size:1rem;color:#251017;margin-bottom:.35rem; }
.geo-numbered p { font-size:.91rem;line-height:1.75;color:#526174; }
.geo-card-number { display:block;margin-bottom:1rem; }
.geo-page .geo-case-strip { padding:26px 24px; border-block:1px solid #f0d4d9; background:linear-gradient(110deg,#fff8f8,#fff0f2); }
.geo-case-inner { display:flex;align-items:center;justify-content:space-between;gap:32px; }
.geo-case-copy { min-width:0;border-left:3px solid #b91c1c;padding-left:20px; }
.geo-case-copy .section-eyebrow { margin:0 0 7px;color:#b91c1c;font-size:.65rem;letter-spacing:.14em; }
.geo-case-copy h2 { margin:0;color:#30121a;font:500 clamp(1.2rem,1.8vw,1.5rem)/1.3 Oswald,sans-serif; }
.geo-case-description { margin:8px 0 0;color:#65535a;font-size:.85rem;line-height:1.6; }
.geo-case-link { display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:18px;min-height:46px;padding:12px 19px;border:1px solid #b91c1c;border-radius:8px;background:#fff;color:#991b1b;font-size:.8rem;font-weight:700;text-decoration:none; }
.geo-case-link:hover { background:#991b1b;color:#fff; }
.geo-case-link:focus-visible { outline:3px solid #b91c1c;outline-offset:4px; }
@media(max-width:700px) { .geo-case-inner { flex-direction:column;align-items:flex-start;gap:20px; }.geo-case-link { margin-left:23px; } }
.geo-opportunity-mascot { margin:0;display:flex;align-items:center;justify-content:center;min-width:0; }
.geo-opportunity-mascot img { display:block;width:100%;max-width:520px;height:auto; }
@media(max-width:900px) { .geo-opportunity-mascot img { max-width:420px; } }
.geo-demo { min-width:0; }
.geo-tabs { display:flex;padding:5px;background:#eae5e7;border-radius:13px;margin-bottom:12px;gap:4px; }
.geo-tabs button { flex:1;padding:11px 6px;border-radius:9px;font-size:.76rem;font-weight:700; }
.geo-tabs button[aria-selected="true"] { background:#fff;color:#9f1239;box-shadow:0 2px 6px #21040712; }
.geo-tabs button:hover { background:#fff9; }
.geo-window { background:#fff;border:1px solid #e0dadd;border-radius:16px;box-shadow:0 18px 45px #2104070b;overflow:hidden;color:#252525; }
.geo-window [role="tabpanel"] { min-height:540px; }
.geo-window [hidden] { display:none; }
.geo-window-bar { display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid #eee;font-size:.9rem; }
.geo-preview-label { font-size:.65rem;color:#777; }
.geo-conversation { padding:22px; }
.geo-user { margin-left:auto;max-width:86%;padding:12px 16px;background:#f3f3f3;border-radius:18px;font-size:.78rem; }
.geo-answer { margin-top:22px;font-size:.79rem;line-height:1.75; }
.geo-ai-mark { display:block;font-size:24px;margin-bottom:7px;color:#222; }
.geo-answer ul { padding-left:19px;margin:12px 0; }
.geo-answer mark { background:#fff0e8;color:#872e18;padding:2px 4px;border-radius:3px; }
.geo-citation { background:#eee;border-radius:9px;padding:1px 6px;font-size:.6rem; }
.geo-source { display:flex;align-items:center;gap:10px;padding:13px;margin-top:16px;border:1px solid #e5e5e5;border-radius:10px;background:#fff; }
.geo-source-icon { display:grid;place-items:center;background:#e3eee6;color:#32553b;border-radius:8px;flex:0 0 30px;height:30px;font-weight:700; }
.geo-source small { display:block;font-size:.55rem;letter-spacing:.04em;color:#777; }
.geo-source strong { display:block;font-size:.72rem;line-height:1.6; }
.geo-composer { display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border:1px solid #ddd;border-radius:24px;font-size:.77rem;color:#888;margin-top:23px; }
.geo-composer span { color:#444;font-size:1rem; }
.geo-demo-note,.geo-source-note { font-size:.72rem;color:#687080;line-height:1.65;margin-top:14px; }
.geo-source-note a { text-decoration:underline;text-underline-offset:3px; }
.geo-google-top { padding:18px 22px 0; }
.geo-google-word { font-family:Arial,sans-serif;font-size:26px;letter-spacing:-1.8px;margin-bottom:15px; }
.geo-google-word span:nth-child(1),.geo-google-word span:nth-child(4) { color:#4285f4; }
.geo-google-word span:nth-child(2),.geo-google-word span:nth-child(6) { color:#ea4335; }
.geo-google-word span:nth-child(3) { color:#fbbc05; }
.geo-google-word span:nth-child(5) { color:#34a853; }
.geo-searchbox { display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:25px;background:#f2f4f7;padding:12px 15px;font-size:.74rem; }
.geo-search-nav { display:flex;gap:23px;font-size:.68rem;color:#777;border-bottom:1px solid #eee;padding:17px 0 11px; }
.geo-search-nav b { color:#202124; }
.geo-overview { margin:18px 22px;padding:16px;background:linear-gradient(140deg,#f0f5ff,#f9f4ff 65%,#fff);border-radius:12px;font-size:.78rem;line-height:1.75; }
.geo-overview-title { display:block;margin-bottom:13px; }
.geo-overview ol { padding-left:18px; }
.geo-source-caption { display:block;font-size:.64rem;color:#687080; }
.geo-organic { margin:24px 24px;font-size:.76rem;line-height:1.6; }
.geo-organic small { color:#4c5157;font-size:.66rem; }
.geo-organic p { color:#1a0dab;font-size:1rem;margin:4px 0; }
.geo-organic-small { margin-top:10px; }
.geo-related { margin:24px;font-size:.77rem; }
.geo-related>strong { font-size:1rem; }
.geo-related p { display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #eee;padding:13px 0; }
.geo-report { border:1px solid #e7dfe1;border-radius:18px;background:#fff;overflow:hidden; }
.geo-report-heading { display:flex;justify-content:space-between;gap:1rem;padding:22px;background:#2b0b13;color:#fff; }
.geo-report-heading span { color:#fecdd3;font-size:.72rem; }
.geo-report dl { margin:0;padding:0 24px; }
.geo-report dl>div { padding:20px 0;border-bottom:1px solid #eee; }
.geo-report dl>div:last-child { border:0; }
.geo-report dt { color:#991b1b;font-size:.75rem;font-weight:800;margin-bottom:6px; }
.geo-report dd { margin:0;font-size:.87rem; }
.geo-plan { display:flex;flex-direction:column;position:relative;overflow:hidden;border:1px solid #e7dfe1;border-radius:16px;padding:32px;background:#fff;box-shadow:0 10px 24px #2104070a;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease; }
.geo-plan::before { position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#ef4444,#991b1b);content:"";transform:scaleX(0);transform-origin:left;transition:transform .28s ease; }
.geo-plan-featured { background:#fff7f7;border-color:#edb7bf; }
.geo-plan:hover,.geo-plan:focus-within { border-color:#dc2626;box-shadow:0 20px 42px #2104071c;transform:translateY(-7px); }
.geo-plan:hover::before,.geo-plan:focus-within::before { transform:scaleX(1); }
.geo-plan h3 { font:500 1.9rem/1.2 Oswald,sans-serif;color:#210407;margin-bottom:15px;transition:color .28s ease; }
.geo-plan:hover h3,.geo-plan:focus-within h3 { color:#b91c1c; }
.geo-plan-price { color:#b91c1c;font-size:1.1rem!important;font-weight:700;line-height:1.4!important;margin:-4px 0 18px; }
.geo-plan p,.geo-plan li { font-size:.9rem;line-height:1.8; }
.geo-plan ul { padding-left:20px;margin:20px 0 25px; }
.geo-plan .btn-ppc { display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;gap:.65rem;min-height:50px;max-width:100%;margin-top:auto;padding:14px 22px;border:1px solid #dc2626;border-radius:10px;background:#dc2626;color:#fff;font-size:.88rem;font-weight:750;line-height:1.4;text-align:center;text-decoration:none;box-shadow:0 6px 14px #991b1b24;transition:background-color .2s ease,border-color .2s ease,transform .28s ease,box-shadow .28s ease; }
.geo-plan .btn-ppc:hover { background:#991b1b;border-color:#991b1b; }
.geo-plan .btn-ppc:focus-visible { outline:3px solid #991b1b;outline-offset:4px; }
.geo-plan:hover .btn-ppc,.geo-plan:focus-within .btn-ppc { box-shadow:0 8px 18px #991b1b2e;transform:translateY(-2px); }
.geo-faqs { margin-top:30px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem; }
.geo-faqs details { border-bottom:1px solid #e1dadd; }
.geo-faqs summary { cursor:pointer;padding:22px 8px;font-weight:650;color:#30121a; }
.geo-faqs details p { padding:0 28px 23px;max-width:960px;line-height:1.8;font-size:.93rem; }
.geo-faqs summary:focus-visible { outline:3px solid #dc26264d;outline-offset:2px; }
.geo-final { background-image:url('../img/GEO-Images/geo-services-cta-mascot.webp'),radial-gradient(ellipse at 90% 50%,#621522,#210407 70%);background-position:95% center,center;background-size:auto 90%,cover;background-repeat:no-repeat;color:#fbd5dc; }
.geo-final .heading-display { color:#fff;max-width:750px; }
.geo-final .heading-display span { color:#fb7185; }
.geo-final p:not(.section-eyebrow) { max-width:670px;line-height:1.8; }
.geo-final-actions { display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:28px; }
.geo-final-actions .btn-ppc { display:inline-flex;min-height:3.25rem;align-items:center;justify-content:center;gap:.55rem;padding:.85rem 1.3rem;border:0;border-radius:.75rem;background:#dc2626;color:#fff;font-size:.82rem;font-weight:800;text-align:center;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.geo-final-actions .btn-ppc:hover { background:#b91c1c;box-shadow:0 12px 28px -14px #dc2626d9;transform:translateY(-1px); }
.geo-final-actions .btn-ppc:focus-visible { outline:3px solid #fff;outline-offset:3px; }
.geo-final-actions .btn-ppc svg { width:1.1rem;height:1.1rem; }
@media(max-width:900px) { .geo-split { grid-template-columns:1fr;gap:2rem; }.geo-grid-three { grid-template-columns:1fr; }.geo-mascot img { max-height:300px; }.geo-mascot-split .geo-mascot { order:2; }.geo-demo { width:100%;max-width:620px;margin:auto; }.geo-proof-strip-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }.geo-proof-item:nth-child(odd) { border-left:0; }.geo-proof-item:nth-child(n+3) { border-top:1px solid #eee0e3; } }
@media(max-width:600px) { .geo-grid-two,.geo-faqs { grid-template-columns:1fr; }.geo-plan { padding:24px; }.geo-tabs button { font-size:.68rem; }.geo-conversation { padding:16px; }.geo-window [role="tabpanel"] { min-height:560px; }.geo-google-top { padding-inline:16px; }.geo-overview { margin-inline:14px; }.geo-preview-label { font-size:.55rem; }.geo-report-heading { flex-direction:column;gap:4px; }.geo-proof-strip-inner { grid-template-columns:1fr; }.geo-proof-item,.geo-proof-item:nth-child(n+3) { justify-content:flex-start; border-top:0; border-left:0; }.geo-proof-item + .geo-proof-item { border-top:1px solid #eee0e3; } }
@media (prefers-reduced-motion: reduce) { .geo-plan,.geo-plan::before,.geo-plan h3,.geo-plan .btn-ppc { transition:none; } .geo-plan:hover,.geo-plan:focus-within { transform:none; } }
