.rc-home-page { min-height:100svh; display:flex; flex-direction:column; }
.rc-home-main { flex:1; display:flex; }
.rc-home-main>.rc-hero { width:100%; display:flex; align-items:center; }
/* Landing hierarchy: blue builds continuity; yellow is reserved for the next action. */
.rc-home-hero { display:grid; grid-template-columns:1.08fr 1fr; gap:20px 64px; align-items:start; color:#fff; text-align:left; }
.rc-home-hero h1 { grid-column:1; grid-row:1; align-self:end; margin:0; font-size:clamp(2.5rem,4.1vw,3.6rem); line-height:1.08; font-weight:800; }
.rc-home-hero h1>span { display:block; color:#e0f5ff; }
.rc-home-prompt { grid-column:1; grid-row:2; max-width:30ch; margin:0; color:#fff; font-size:1.125rem; line-height:1.5; }
.rc-home-actions { display:contents; }
.rc-home-actions .rc-button { min-width:0; }
.rc-home-demo { grid-column:2; grid-row:1/span 3; align-self:center; display:block; padding:0; border:2px solid #fff; border-radius:20px; background:#fff; color:#0757bc; box-shadow:0 20px 55px #03428338; overflow:hidden; text-align:left; }
.rc-home-demo:hover { background:#fff; border-color:#fff; transform:translateY(-3px); box-shadow:0 24px 60px #03428350; }
.rc-home-demo:focus-visible { outline:4px solid #ffdb45; outline-offset:5px; }
.rc-home-preview { display:block; background:#edf4f5; }
.rc-home-preview-label { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:13px 16px; background:#f8fcff; color:#12345b; font-size:.875rem; line-height:1.4; font-weight:700; }
.rc-home-preview-label>span { padding:3px 8px; border-radius:5px; background:#e2efff; color:#0757bc; font-size:.75rem; font-weight:600; }
.rc-home-preview-map { display:block; width:100%; height:250px; }
.rc-home-demo-action { display:flex; gap:12px; align-items:center; padding:18px; font-size:1.125rem; line-height:1.3; font-weight:750; }
.rc-home-demo-action small { display:block; margin-top:4px; color:#4b6581; font-size:.875rem; line-height:1.4; font-weight:400; }
.rc-home-play { display:grid; place-items:center; flex:0 0 40px; height:40px; padding-left:3px; border-radius:50%; background:#e8f3ff; color:#0963d6; font-size:1rem; }
.rc-home-demo-arrow { margin-left:auto; font-size:1.5rem; }
.rc-home-scan { grid-column:1; grid-row:3; align-self:start; justify-content:center; width:100%; max-width:480px; min-height:62px; padding:17px 18px; font-size:1rem; }
.rc-home-page .rc-product-label,.rc-home-page .rc-header-phone { display:none; }
.rc-home-actions .rc-button-primary { overflow:hidden; isolation:isolate; }
.rc-home-actions .rc-button-primary::after { content:""; position:absolute; top:-75%; left:0; width:35%; height:250%; background:linear-gradient(90deg,transparent,#ffffffb8,transparent); pointer-events:none; opacity:0; transform:translateX(-160%) skewX(-20deg); animation:rc-cta-light-streak 3s ease-in-out infinite; }
@keyframes rc-cta-light-streak {
  0%,75% { transform:translateX(-160%) skewX(-20deg); opacity:0; }
  76% { opacity:.85; }
  95% { transform:translateX(400%) skewX(-20deg); opacity:.85; }
  100% { transform:translateX(400%) skewX(-20deg); opacity:0; }
}
@media(prefers-reduced-motion:reduce) { .rc-home-actions .rc-button-primary::after { display:none; animation:none; } }
/* A quiet coastal world behind the homepage's two choices. No map API or script required. */
.rc-home-main>.rc-hero { position:relative; isolation:isolate; overflow:hidden; background:radial-gradient(ellipse at 50% 36%,#0757bc 0%,#096ace 35%,transparent 75%),linear-gradient(180deg,#218ced 0%,#5bbced 62%,#94e0ed 100%); }
.rc-home-hero { position:relative; z-index:1; padding-block:52px clamp(110px,15vh,150px); }
.rc-home-hero h1 { text-wrap:balance; text-shadow:0 3px 24px #064b8c50; }
.rc-home-prompt { text-shadow:0 2px 12px #064b8c70; }
.rc-home-scene { position:absolute; inset:0; overflow:hidden; pointer-events:none; user-select:none; }
.rc-scene-sun { position:absolute; top:9%; right:10%; width:clamp(62px,7vw,104px); aspect-ratio:1; border-radius:50%; background:linear-gradient(135deg,#fff9d8,#ffd89b); box-shadow:0 0 60px 24px #fff2c51f,0 0 130px 60px #fff2c512; }
.rc-scene-cloud { position:absolute; color:#fff; width:clamp(120px,18vw,280px); height:auto; opacity:.7; animation:rc-cloud-drift 27s ease-in-out infinite alternate; }
.rc-scene-cloud--one { top:10%; left:-3%; opacity:.85; }
.rc-scene-cloud--two { top:8%; right:-4%; width:clamp(150px,23vw,350px); opacity:.5; animation-duration:33s; animation-delay:-14s; }
.rc-scene-cloud--three { top:43%; left:-10%; width:clamp(90px,12vw,180px); opacity:.3; animation-duration:36s; animation-delay:-9s; }
.rc-scene-birds { position:absolute; top:20%; left:71%; width:90px; color:#ecfaff; opacity:.65; }
.rc-scene-landscape { position:absolute; inset:auto 0 0; width:100%; height:52%; min-height:240px; }
.rc-scene-water { animation:rc-water-glint 7s ease-in-out infinite alternate; }
.rc-scene-boat { animation:rc-boat-float 6s ease-in-out infinite alternate; transform-origin:836px 349px; }
@keyframes rc-cloud-drift { from { transform:translateX(-14px); } to { transform:translateX(36px); } }
@keyframes rc-water-glint { from { opacity:.25; transform:translateX(-7px); } to { opacity:.6; transform:translateX(7px); } }
@keyframes rc-boat-float { from { transform:translate(836px,349px); } to { transform:translate(836px,345px); } }
@media(prefers-reduced-motion:reduce) { .rc-home-scene * { animation:none!important; } }
@media(max-width:900px) {
  .rc-home-hero { display:block; max-width:560px; padding-block:28px 90px; text-align:center; }
  .rc-home-hero h1 { margin-bottom:12px; font-size:clamp(2rem,5.8vw,3rem); }
  .rc-home-prompt { max-width:32ch; margin:0 auto 22px; font-size:1rem; }
  .rc-home-actions { display:flex; flex-direction:column; max-width:440px; margin-inline:auto; gap:14px; }
  .rc-home-demo { width:100%; }
  .rc-home-scan { max-width:none; }
  .rc-home-preview-map { height:190px; }
}
@media(max-width:600px) {
  .rc-home-hero { padding-block:24px 64px; }
  .rc-home-hero h1 { font-size:clamp(1.8rem,7.5vw,2.5rem); }
  .rc-home-prompt { margin-bottom:18px; line-height:1.4; }
  .rc-home-actions { gap:12px; }
  .rc-home-preview-label { padding:10px 12px; }
  .rc-home-preview-map { height:160px; }
  .rc-home-demo-action { padding:14px 12px; font-size:1rem; gap:10px; }
  .rc-home-play { flex-basis:34px; height:34px; }
  .rc-home-scan { min-height:58px; padding:15px 10px; }
  .rc-scene-sun { top:7%; right:8%; width:60px; }
  .rc-scene-cloud--one { top:9%; left:-10%; }
  .rc-scene-cloud--two { top:5%; right:-17%; opacity:.3; }
  .rc-scene-cloud--three { top:49%; left:-8%; }
  .rc-scene-birds { top:17%; left:57%; width:65px; }
  .rc-scene-landscape { height:32%; min-height:150px; }
}
@media(max-height:700px) and (max-width:900px) {
  .rc-home-hero { padding-block:16px 24px; }
  .rc-home-hero h1 { font-size:1.8rem; margin-bottom:8px; }
  .rc-home-prompt { margin-bottom:14px; }
  .rc-home-preview-map { height:114px; }
  .rc-home-preview-label { padding-block:7px; }
  .rc-home-demo-action { padding-block:11px; }
  .rc-home-actions { gap:10px; }
}
@media(max-height:600px) { .rc-scene-landscape { height:28%; min-height:120px; } .rc-scene-sun { top:5%; } .rc-scene-cloud--one { top:0; width:110px; } .rc-scene-cloud--two,.rc-scene-cloud--three,.rc-scene-birds { display:none; } }
@media(min-width:650px) and (max-width:900px) and (max-height:500px) {
  .rc-home-hero { display:grid; grid-template-columns:1fr 1fr; max-width:none; gap:10px 28px; padding-block:16px; text-align:left; }
  .rc-home-hero h1 { margin:0; font-size:1.8rem; }
  .rc-home-prompt { margin:0; font-size:.9375rem; }
  .rc-home-actions { display:contents; }
  .rc-home-preview-map { height:110px; }
  .rc-home-demo-action { padding:12px; font-size:.9375rem; }
  .rc-home-demo-action small { font-size:.8125rem; }
  .rc-home-demo-arrow { display:none; }
  .rc-home-play { flex-basis:30px; height:30px; }
  .rc-home-scan { min-height:54px; padding:12px; font-size:.9375rem; }
}
.rc-page { background:#fff; }
.rc-page:has(#rank-checker-app[data-stage="3"]) { overflow-anchor:none; }
.rc-header-phone { background:transparent; border-color:#d1e0ef; box-shadow:none; }
.rc-header-phone:hover { background:#f1f7fd; border-color:#8bb6e7; }
.rc-hero { background:linear-gradient(125deg,#0963d6,#0757bc); }
.rc-intro .rc-eyebrow { padding:0; border:0; border-radius:0; background:none; color:#e6f2ff; }
.rc-intro .rc-spark { color:#ffb17b; }
.rc-intro h1 { font-size:clamp(2.7rem,4.4vw,4.2rem); }
.rc-intro h1 em { color:#fff; }
.rc-intro-copy { max-width:470px; color:#eef6ff; line-height:1.55; }
.rc-form-shell { border:1px solid #d7e7f7; border-top:4px solid #c5dffa; box-shadow:0 18px 46px #003a7c33; }
.rc-scan-details .rc-specs strong { color:#fff; }
.rc-scan-details .rc-specs small { color:#e0edfc; }
.rc-scan-details .rc-play { color:#fff; border:1px solid #b6d5fa; background:transparent; }
.rc-scan-details .rc-sample-link>span:last-child { color:#d6eaff; }
.rc-scan-details .rc-sample-link:hover .rc-play { background:#ffffff1a; box-shadow:none; }
.rc-specs small { margin-top:5px; }
.rc-sample-link { font-weight:500; }
.rc-sample-link:hover { text-decoration:underline; text-underline-offset:4px; }
.rc-explainer { padding-block:80px; background:#fff; border:0; }
.rc-opportunity-heading { max-width:780px; margin-bottom:36px; }
.rc-opportunity-heading .rc-eyebrow { margin-bottom:14px; }
.rc-opportunity-heading h2 { font-size:clamp(2rem,3.1vw,2.7rem); margin-bottom:18px; }
.rc-opportunity-heading p:not(.rc-eyebrow) { max-width:680px; margin:0; }
.rc-opportunity-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.rc-opportunity-card { min-width:0; padding:32px; border:1px solid #d9e4ef; border-radius:16px; background:#f8fafc; }
.rc-opportunity-card .rc-overline { color:#4b6581; margin-bottom:16px; }
.rc-opportunity-card h3 { font-size:1.7rem; line-height:1.2; margin-bottom:16px; }
.rc-explainer .rc-opportunity-card p:not(.rc-overline) { max-width:none; font-size:1.125rem; line-height:1.7; }
.rc-opportunity-card ul { padding:0; margin:24px 0 0; list-style:none; display:grid; gap:13px; }
.rc-opportunity-card li { display:grid; grid-template-columns:20px minmax(0,1fr); gap:10px; font-size:1rem; line-height:1.6; }
.rc-opportunity-card li::before { content:"?"; color:#60738b; font-weight:700; }
.rc-opportunity-next { background:#eff7ff; border-color:#b8d7f5; border-top:3px solid #0963d6; }
.rc-opportunity-next .rc-overline { color:#0757b8; }
.rc-opportunity-next li::before { content:"✓"; color:#0757b8; }
.rc-scan-bridge { margin-top:42px; padding-top:30px; border-top:1px solid #d9e4ef; }
.rc-scan-bridge h3 { margin-bottom:8px; font-size:1.4rem; }
.rc-explainer .rc-scan-bridge p { max-width:none; }
.rc-how-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin-top:28px; }
.rc-how-steps li,.rc-how-steps li:first-child,.rc-how-steps li:last-child { display:block; padding:0; border:0; }
.rc-how-steps li>span { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; margin-bottom:16px; border:1px solid #d1e2f3; border-radius:50%; background:#f1f7fd; font-size:1rem; }
.rc-how-steps h3 { font-size:1.125rem; line-height:1.4; }
.rc-how-steps p { font-size:1rem!important; line-height:1.7!important; }
.rc-faq { border-top:1px solid #d9e4ef; gap:70px; padding-block:64px; }
.rc-faq .rc-eyebrow { margin-bottom:14px; }
.rc-faq summary::after { color:#0963d6; }
.rc-next-step { padding-block:52px; background:#eef6ff; border-top:1px solid #d9e8f7; }
.rc-next-step-inner { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.rc-next-step .rc-eyebrow { margin-bottom:12px; }
.rc-next-step h2 { margin-bottom:14px; font-size:clamp(1.8rem,3vw,2.5rem); line-height:1.15; }
.rc-next-step p { margin-bottom:0; color:#4b6581; }
.rc-next-step-action { flex:0 0 auto; }
.rc-next-step-action>p { margin-top:12px; text-align:center; font-size:.875rem; }
.rc-next-step-action .rc-button { min-width:260px; }
.rc-footer-main>a:last-child,.rc-footer a:hover { color:#fff; }
.rc-footer a:hover { text-decoration:underline; text-underline-offset:4px; }
#rank-business { scroll-margin-top:100px; }
.rc-workspace[data-stage="3"] { padding-top:14px; }
.rc-workspace[data-stage="3"] .rc-form-shell { display:none; }
.rc-report-heading { flex-direction:row; flex-wrap:wrap; align-items:center; gap:6px 14px; margin-bottom:10px; }
.rc-report-heading>div { flex:1 1 180px; }
.rc-report-title { display:flex; align-items:center; gap:8px; }
.rc-report-heading h2 { min-width:0; margin:0; font-size:1.125rem; line-height:1.3; letter-spacing:-.02em; }
.rc-report-heading .rc-sample-badge { flex-shrink:0; padding:0 6px; font-size:.875rem; line-height:1.4; letter-spacing:0; background:#fff; }
.rc-report-query { margin:4px 0 0; font-size:.875rem; line-height:1.4; }
.rc-report-query strong { margin-left:3px; padding:1px 6px; font-size:1rem; line-height:1.35; }
.rc-report-heading>.rc-back { margin:0; padding:5px 0; min-height:44px; font-size:.875rem; }
.rc-report-layout { margin-top:10px; }
/* Keep the result numbers and the competitive gap in view without explanatory panels. */
.rc-visibility-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 10px; padding:12px 14px 0; }
.rc-visibility-heading h3 { font-size:1rem; line-height:1.4; }
.rc-visibility-heading>p:last-child { margin:0; font-size:.875rem; line-height:1.4; }
.rc-visibility-card:is([data-progress-state="complete"],[data-progress-state="partial"]) .rc-visibility-heading { background:none; }
.rc-visibility-card .rc-stat-grid { margin:10px 12px 12px; }
.rc-visibility-card .rc-stat { padding:9px 10px; }
.rc-visibility-card .rc-stat>span { min-height:0; font-size:.875rem; line-height:1.35; letter-spacing:0; }
.rc-visibility-card .rc-stat>strong { margin:3px 0 0; font-size:1.65rem; line-height:1.1; }
.rc-competitor-card { padding:12px 14px; }
.rc-compact-leader-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.rc-compact-leader-heading h3 { margin:0; font-size:1rem; line-height:1.4; }
.rc-compact-leader-heading>span { flex-shrink:0; color:#dceeff; font-size:.875rem; }
.rc-competitors { margin:9px 0 0; }
.rc-competitor { grid-template-columns:24px minmax(0,1fr) auto; gap:8px; align-items:center; padding:9px 0; border-color:#ffffff26; }
.rc-competitor-number { width:24px; height:24px; font-size:.875rem; }
.rc-competitor-body { gap:3px; }
.rc-competitor-name { font-size:1rem; line-height:1.35; }
.rc-competitor-rating { font-size:.875rem; line-height:1.4; margin:0; }
.rc-competitor-coverage { text-align:right; min-width:54px; }
.rc-competitor-coverage strong { display:block; font-size:1.3rem; line-height:1.2; color:#fff; }
.rc-competitor-coverage span { display:block; font-size:.875rem; line-height:1.35; color:#ffe0c6; }
.rc-comparison-card { margin-top:14px; border-top-width:3px; }
.rc-comparison-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 10px; padding:12px 14px; }
.rc-comparison-heading h3 { margin:0; font-size:1.125rem; line-height:1.4; }
.rc-comparison-heading .rc-comparison-status { margin:0; font-size:.875rem; line-height:1.4; }
.rc-comparison-table { min-width:0; font-size:.875rem; }
.rc-comparison-table th,.rc-comparison-table td { padding:9px 5px; line-height:1.35; }
.rc-comparison-table th:first-child,.rc-comparison-table td:first-child:not([colspan]) { position:static; width:32%; padding-left:12px; box-shadow:none; }
.rc-comparison-name { font-size:.875rem; line-height:1.35; }
.rc-comparison-meta { margin-top:2px; font-size:.875rem; line-height:1.3; }
.rc-comparison-value { font-size:1rem; line-height:1.3; }
.rc-comparison-table .is-your-business>* { background:#f0f6fd; }
.rc-comparison-table .is-your-business>:first-child { background:#f0f6fd; box-shadow:inset 3px 0 #0963d6; }
.rc-comparison-table .is-ahead>* { background:#fff8f0; }
.rc-comparison-table .is-ahead>:first-child { box-shadow:inset 3px 0 #ff8b3d; }
.rc-comparison-table .is-ahead>td:first-of-type .rc-comparison-value { color:#995015; }
.rc-comparison-lead { display:block; margin-top:2px; color:#995015; font-size:.875rem; }
@media(max-width:850px) {
  .rc-intro h1 { font-size:clamp(2rem,6.8vw,2.8rem); }
  .rc-opportunity-card { padding:24px; }
  .rc-how-steps { gap:22px; }
  .rc-how-steps li>span { margin-bottom:12px; }
  .rc-faq { gap:36px; }
}
@media(max-width:600px) {
  .rc-intro .rc-eyebrow { display:none; }
  .rc-intro h1 { font-size:clamp(1.9rem,7.6vw,2.5rem); margin-bottom:8px; }
  .rc-intro-copy { font-size:1rem; line-height:1.4; }
  .rc-explainer { padding-block:44px; }
  .rc-opportunity-heading { margin-bottom:24px; }
  .rc-opportunity-heading h2 { font-size:1.9rem; }
  .rc-opportunity-heading h2 br { display:none; }
  .rc-opportunity-grid { grid-template-columns:1fr; gap:16px; }
  .rc-opportunity-card { padding:24px; }
  .rc-opportunity-card h3 { font-size:1.5rem; }
  .rc-scan-bridge { margin-top:30px; padding-top:24px; }
  .rc-scan-bridge h3 { font-size:1.3rem; line-height:1.35; }
  .rc-how-steps { grid-template-columns:1fr; gap:24px; margin-top:24px; }
  .rc-how-steps li,.rc-how-steps li:first-child,.rc-how-steps li:last-child { display:flex; gap:16px; }
  .rc-how-steps li>span { flex:0 0 36px; margin:0; }
  .rc-how-steps h3 { margin-bottom:7px; }
  .rc-faq { gap:24px; padding-block:42px; }
  .rc-faq h2 { font-size:1.9rem; }
  .rc-next-step { padding-block:36px; }
  .rc-next-step-inner { flex-direction:column; align-items:stretch; gap:24px; }
  .rc-next-step-action .rc-button { width:100%; min-width:0; }
  #rank-business { scroll-margin-top:82px; }
}
@media(max-width:360px) {
  .rc-intro h1 { font-size:1.75rem; }
  .rc-intro-copy { font-size:.875rem; line-height:1.4; }
}
@media print { .rc-next-step { display:none; } }


