/* ==========================================================
   SEO - Search Engine Optimization Service Page
   Prefix: seo- (no overlap with hero-/ap-/tf-/ft-/sv-/smm-/pc-/wd-/apd-/nav-)
   Palette: Red / Yellow / Black / White (hardcoded hex)
   Style: dashboard/analytics inspired
   ========================================================== */
*{box-sizing:border-box;margin:0;padding:0;}
.seo-page{font-family:'Poppins','Segoe UI',Arial,sans-serif;color:#333333;background:#FFFFFF;}
.seo-container{max-width:1160px;margin:0 auto;padding:0 20px;}

.seo-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  color:#E53935;font-size:13px;font-weight:700;
  letter-spacing:1.4px;text-transform:uppercase;margin-bottom:14px;
}
.seo-eyebrow::before{content:"";width:22px;height:2px;background:#E53935;}

.seo-btn-primary,.seo-btn-solid{
  display:inline-block;font-weight:700;font-size:14.5px;text-decoration:none;
  padding:15px 34px;border-radius:30px;transition:background .25s ease,transform .25s ease;
}
.seo-btn-primary{background:#E53935;color:#fff;}
.seo-btn-primary:hover{background:#B71C1C;transform:translateY(-2px);}
.seo-btn-solid{background:#FFC107;color:#1A1A1A;}
.seo-btn-solid:hover{background:#F9A825;transform:translateY(-2px);}

/* ---- shared section head ---- */
.seo-section-head{text-align:center;max-width:660px;margin:0 auto 50px;}
.seo-section-head h2{font-size:32px;font-weight:800;color:#1A1A1A;margin-bottom:12px;line-height:1.3;}
.seo-section-head p{font-size:14.5px;color:#777;line-height:1.7;}

/* ==========================================================
   HERO — split layout with animated bar chart
   ========================================================== */
.seo-hero{background:#1A1A1A;padding:90px 0 70px;position:relative;overflow:hidden;}
.seo-hero::before{
  content:"";position:absolute;top:-160px;right:-100px;width:340px;height:340px;
  border-radius:50%;background:#E53935;opacity:.15;
}
.seo-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;}
.seo-hero .seo-eyebrow{color:#FFC107;}
.seo-hero .seo-eyebrow::before{background:#FFC107;}
.seo-hero-copy h1{font-size:38px;font-weight:800;color:#FFFFFF;line-height:1.25;margin-bottom:18px;letter-spacing:-.01em;}
.seo-hero-sub{font-size:15px;line-height:1.85;color:#C9C9C9;max-width:500px;margin-bottom:16px;}
.seo-hero-actions{margin-top:14px;}

.seo-hero-visual{
  position:relative;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:18px;padding:36px 30px 26px;
}
.seo-rank-badge{
  position:absolute;top:-18px;right:26px;width:52px;height:52px;border-radius:50%;
  background:linear-gradient(135deg,#FFC107,#F9A825);color:#1A1A1A;font-weight:800;font-size:16px;
  display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(255,193,7,.35);
}
.seo-chart{display:flex;align-items:flex-end;gap:14px;height:160px;}
.seo-bar{
  flex:1;height:var(--h);border-radius:6px 6px 0 0;
  background:linear-gradient(180deg,#E53935,#B71C1C);
  animation:seo-grow .9s cubic-bezier(.2,.8,.3,1) both;
  animation-delay:var(--d);transform-origin:bottom;
}
.seo-bar:last-child{background:linear-gradient(180deg,#FFC107,#F9A825);}
@keyframes seo-grow{from{transform:scaleY(0);}to{transform:scaleY(1);}}
.seo-chart-label{display:block;text-align:center;margin-top:18px;font-size:12.5px;letter-spacing:.4px;text-transform:uppercase;color:#999;}

/* ==========================================================
   TOOLS STRIP
   ========================================================== */
.seo-tools{background:#1A1A1A;padding:0 0 200px;text-align:center;}
.seo-tools__label{font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#8f8f8f;margin-bottom:16px;}
.seo-tools__row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;}
.seo-tools__item{display:flex;align-items:center;justify-content:center;background:#ffffff;border:1px solid rgba(255,255,255,.12);border-radius:99px;padding:8px 20px;height:44px;box-sizing:border-box;}
.seo-tools__item img{height:24px;width:auto;max-width:100px;object-fit:contain;display:block;}
.seo-tools__item--more{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);}
.seo-tools__item--more span,.seo-tools__item--more{font-size:13px;font-weight:700;color:#e8e8e8;}
/* ==========================================================
   TRUST STRIP
   ========================================================== */
   .seo-trust {
    background: #fafafa;
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
    padding: 48px 20px;
}

.seo-trust-grid {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}

.seo-trust-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 8px 25px;
}

/* Vertical divider */
.seo-trust-item:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 10px;
    width: 1px;
    height: 65px;
    background: #e5e5e5;
}

.seo-trust-value {
    display: flex;
    align-items: baseline;
    justify-content: center;
    white-space: nowrap;
    line-height: 1;
}

.seo-trust-num,
.seo-trust-suffix {
    font-size: 38px;
    font-weight: 800;
    color: #e53935;
    letter-spacing: -1px;
}

.seo-trust-suffix {
    margin-left: 2px;
}

.seo-trust-label {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.4;
    color: #666;
    font-weight: 500;
}

/* Tablet */
@media (max-width: 768px) {
    .seo-trust {
        padding: 35px 15px;
    }

    .seo-trust-grid {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 30px;
    }

    .seo-trust-item {
        padding: 5px 15px;
    }

    .seo-trust-item:nth-child(2)::after {
        display: none;
    }

    .seo-trust-item:nth-child(3)::after {
        display: block;
    }

    .seo-trust-num,
    .seo-trust-suffix {
        font-size: 32px;
    }
}

/* Mobile */
@media (max-width: 480px) {
    .seo-trust {
        padding: 30px 12px;
    }

    .seo-trust-grid {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 25px;
    }

    .seo-trust-item {
        padding: 5px 8px;
    }

    .seo-trust-item::after {
        height: 55px;
    }

    .seo-trust-num,
    .seo-trust-suffix {
        font-size: 28px;
    }

    .seo-trust-label {
        font-size: 11.5px;
        margin-top: 8px;
    }
}
/* ==========================================================
   WHY US — circular progress rings
   ========================================================== */
.seo-why{padding:85px 0;background:#1A1A1A;}
.seo-why .seo-section-head h2{color:#FFFFFF;}
.seo-why .seo-section-head p{color:#AAAAAA;}
.seo-why .seo-eyebrow{color:#FFC107;}
.seo-why .seo-eyebrow::before{background:#FFC107;}
.seo-rings-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.seo-ring-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:34px 22px;text-align:center;transition:transform .3s ease,background .3s ease;}
.seo-ring-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.07);}
.seo-ring{--pct:0;width:104px;height:104px;border-radius:50%;margin:0 auto 20px;background:conic-gradient(#FFC107 calc(var(--pct)*1%), rgba(255,255,255,.08) 0);display:flex;align-items:center;justify-content:center;position:relative;}
.seo-ring::before{content:"";position:absolute;inset:8px;border-radius:50%;background:#1A1A1A;}
.seo-ring-value{position:relative;z-index:1;font-size:20px;font-weight:800;color:#FFFFFF;}
.seo-ring-card h3{font-size:15px;font-weight:700;color:#FFFFFF;margin-bottom:8px;line-height:1.4;}
.seo-ring-card p{font-size:12.5px;line-height:1.6;color:#AAAAAA;}
.seo-why__foot{text-align:center;font-size:14px;font-weight:600;color:#FFC107;margin-top:40px;}

/* ==========================================================
   SERVICES — diagonal accent cards
   ========================================================== */
.seo-services{padding:85px 0;background:#FFFFFF;}
.seo-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.seo-service-card{position:relative;background:#FAFAFA;border:1px solid #EDEDED;border-radius:16px;padding:34px 26px 28px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.seo-service-card:hover{transform:translateY(-8px);box-shadow:0 20px 42px rgba(0,0,0,.08);border-color:#FFECB3;}
.seo-service-num{position:absolute;top:10px;right:16px;font-size:44px;font-weight:800;color:transparent;-webkit-text-stroke:1.2px #E7E7E7;line-height:1;}
.seo-service-icon{position:relative;z-index:1;width:52px;height:52px;border-radius:12px;background:#FFECB3;color:#B71C1C;display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:background .3s ease,color .3s ease,transform .3s ease;}
.seo-service-card:hover .seo-service-icon{background:#E53935;color:#fff;transform:rotate(-6deg);}
.seo-service-icon svg{width:24px;height:24px;}
.seo-service-card h3{position:relative;z-index:1;font-size:17px;font-weight:700;color:#1A1A1A;margin-bottom:8px;}
.seo-service-card p{position:relative;z-index:1;font-size:13.5px;line-height:1.7;color:#666;}

/* ==========================================================
   SMALL BUSINESS — split layout
   ========================================================== */
.seo-smallbiz{padding:85px 0;background:#FAFAFA;}
.seo-smallbiz-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:center;}
.seo-smallbiz-media {
    width: 100%;
    max-width: 520px;
    margin: 0 auto;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.1);
}

.seo-smallbiz-media img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: contain;
}
.seo-smallbiz-copy h2{font-size:28px;font-weight:800;color:#1A1A1A;line-height:1.3;margin-bottom:16px;}
.seo-smallbiz-copy p{font-size:14.5px;line-height:1.8;color:#555;margin-bottom:12px;}
.seo-smallbiz-subhead{font-weight:700;color:#1A1A1A;}
.seo-checklist{list-style:none;margin:16px 0 18px;}
.seo-checklist li{position:relative;padding:9px 0 9px 30px;font-size:13.5px;line-height:1.6;color:#444;}
.seo-checklist li::before{content:"✓";position:absolute;left:0;top:9px;width:20px;height:20px;border-radius:50%;background:#E53935;color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;}
.seo-smallbiz-note{font-weight:700;color:#B71C1C;}

/* ==========================================================
   PRICING
   ========================================================== */
.seo-pricing{padding:85px 0;background:#FAFAFA;}
.seo-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
.seo-price-card{position:relative;background:#FFFFFF;border:1px solid #EDEDED;border-radius:18px;padding:38px 30px;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease;}
.seo-price-card:hover{transform:translateY(-6px);box-shadow:0 20px 42px rgba(0,0,0,.08);}
.seo-price-card--featured{background:#1A1A1A;border-color:#1A1A1A;transform:scale(1.04);}
.seo-price-card--featured:hover{transform:scale(1.04) translateY(-6px);}
.seo-price-tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:#FFC107;color:#1A1A1A;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;padding:5px 16px;border-radius:99px;}
.seo-price-card h3{font-size:18px;font-weight:800;color:#1A1A1A;margin-bottom:10px;}
.seo-price-card--featured h3{color:#FFFFFF;}
.seo-price-amount{font-size:28px;font-weight:800;color:#E53935;margin-bottom:8px;}
.seo-price-card--featured .seo-price-amount{color:#FFC107;}
.seo-price-amount small{font-size:12px;font-weight:600;color:#999;margin-left:4px;}
.seo-price-scope{font-size:12px;line-height:1.6;color:#888;margin-bottom:18px;}
.seo-price-card--featured .seo-price-scope{color:#bbb;}
.seo-price-list{list-style:none;margin-bottom:26px;flex-grow:1;}
.seo-price-list li{font-size:13px;color:#555;padding:8px 0;border-bottom:1px dashed #EDEDED;}
.seo-price-card--featured .seo-price-list li{color:#CFCFCF;border-bottom-color:rgba(255,255,255,.1);}
.seo-price-list li:last-child{border-bottom:none;}
.seo-price-cta{display:inline-block;text-align:center;background:#FFFFFF;color:#E53935;border:1.5px solid #E53935;font-weight:700;font-size:13.5px;padding:12px 0;border-radius:30px;text-decoration:none;transition:background .25s ease,color .25s ease;}
.seo-price-cta:hover{background:#E53935;color:#fff;}
.seo-price-cta--solid{background:#FFC107;border-color:#FFC107;color:#1A1A1A;}
.seo-price-cta--solid:hover{background:#F9A825;color:#1A1A1A;}
.seo-pricing-note{text-align:center;font-size:13px;color:#999;font-style:italic;margin-top:30px;}

/* ==========================================================
   SEO BY BUSINESS TYPE — comparison table
   ========================================================== */
.seo-bytype{padding:85px 0;background:#FFFFFF;}
.seo-table__wrap{max-width:1100px;margin:0 auto;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:16px;border:1px solid #EDEDED;box-shadow:0 8px 22px rgba(0,0,0,.05);}
.seo-table{width:100%;border-collapse:collapse;font-size:13px;min-width:720px;}
.seo-table thead th{background:#1A1A1A;color:#fff;text-align:left;padding:14px 18px;font-weight:700;font-size:12.5px;}
.seo-table tbody td{padding:13px 18px;border-bottom:1px solid #EDEDED;color:#444;vertical-align:top;}
.seo-table tbody tr:last-child td{border-bottom:none;}
.seo-table tbody tr:nth-child(even){background:#FAFAFA;}

/* ==========================================================
   PROCESS — vertical timeline
   ========================================================== */
.seo-process{padding:85px 0;background:#FAFAFA;}
.seo-timeline{position:relative;max-width:760px;margin:0 auto;padding-left:8px;}
.seo-timeline::before{content:"";position:absolute;top:6px;bottom:6px;left:27px;width:2px;background:linear-gradient(180deg,#E53935,#FFC107);}
.seo-timeline-item{position:relative;display:flex;gap:26px;padding-bottom:44px;}
.seo-timeline-item:last-child{padding-bottom:0;}
.seo-timeline-dot{flex-shrink:0;width:56px;height:56px;border-radius:50%;background:#FFFFFF;border:2px solid #E53935;color:#E53935;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;}
.seo-timeline-body h3{font-size:18px;font-weight:700;color:#1A1A1A;margin-bottom:6px;padding-top:10px;}
.seo-timeline-body p{font-size:14px;line-height:1.75;color:#666;}

/* ==========================================================
   CASE STUDY
   ========================================================== */
.seo-case{padding:85px 0;background:#FFFFFF;}
.seo-case-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;}
.seo-case-copy h2{font-size:28px;font-weight:800;color:#1A1A1A;line-height:1.3;margin-bottom:16px;}
.seo-case-copy p{font-size:14px;line-height:1.8;color:#555;margin-bottom:12px;}
.seo-case-copy strong{color:#1A1A1A;}
.seo-case-media{border-radius:14px;overflow:hidden;margin:18px 0;box-shadow:0 12px 26px rgba(0,0,0,.08);}
.seo-case-media img{display:block;width:100%;height:auto;}
.seo-case-foot{font-weight:700;color:#B71C1C;}
.seo-case-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.seo-case-stat{background:#FAFAFA;border:1px solid #EDEDED;border-radius:14px;padding:22px 18px;text-align:center;}
.seo-case-stat__num{display:block;font-size:22px;font-weight:800;color:#E53935;margin-bottom:6px;}
.seo-case-stat__label{font-size:12px;line-height:1.5;color:#777;}

/* ==========================================================
   FAQ
   ========================================================== */
.seo-faq{padding:85px 0;background:#FAFAFA;}
.seo-faq__list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.seo-faq__item{background:#FFFFFF;border:1px solid #EDEDED;border-left:3px solid transparent;border-radius:14px;padding:18px 22px;transition:border-color .25s ease;}
.seo-faq__item[open]{border-left-color:#E53935;}
.seo-faq__item summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;}
.seo-faq__item summary h3{font-size:14.5px;font-weight:700;color:#1A1A1A;margin:0;}
.seo-faq__item summary::-webkit-details-marker{display:none;}
.seo-faq__item summary::after{content:"+";flex:0 0 auto;width:24px;height:24px;border-radius:50%;background:#E53935;color:#fff;font-size:15px;font-weight:800;display:flex;align-items:center;justify-content:center;}
.seo-faq__item[open] summary::after{content:"–";}
.seo-faq__item p{font-size:13px;line-height:1.75;color:#666;margin:14px 0 0;}

/* ==========================================================
   FINAL CTA
   ========================================================== */
.seo-cta{padding:85px 0;background:linear-gradient(135deg,#1A1A1A 0%,#2A0E0E 55%,#B71C1C 100%);}
.seo-cta-inner{text-align:center;max-width:640px;margin:0 auto;}
.seo-cta h2{font-size:29px;font-weight:800;color:#FFFFFF;margin-bottom:16px;}
.seo-cta p{font-size:15px;line-height:1.8;color:#E8E2E2;margin-bottom:28px;}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media (max-width:1024px){
  .seo-hero-grid{grid-template-columns:1fr;text-align:center;}
  .seo-hero-copy{margin:0 auto;}
  .seo-hero-sub{margin-left:auto;margin-right:auto;}
  .seo-services-grid{grid-template-columns:repeat(2,1fr);}
  .seo-rings-grid{grid-template-columns:repeat(2,1fr);}
  .seo-trust-grid{grid-template-columns:repeat(2,1fr);}
  .seo-pricing-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto;}
  .seo-price-card--featured{transform:none;}
  .seo-price-card--featured:hover{transform:translateY(-6px);}
  .seo-hero-copy h1{font-size:32px;}
  .seo-smallbiz-grid{grid-template-columns:1fr;}
  .seo-smallbiz-media{order:-1;aspect-ratio:16/9;}
  .seo-case-grid{grid-template-columns:1fr;}
  .seo-case-stats{grid-template-columns:repeat(2,1fr);}
}

@media (max-width:768px){
  .seo-hero{padding:70px 0 50px;}
  .seo-services,.seo-why,.seo-process,.seo-pricing,.seo-cta,.seo-smallbiz,.seo-bytype,.seo-case,.seo-faq{padding:60px 0;}
  .seo-trust-grid{grid-template-columns:repeat(2,1fr);gap:26px;}
  .seo-section-head h2,.seo-cta h2{font-size:24px;}
  .seo-hero-copy h1{font-size:26px;}
  .seo-timeline::before{left:23px;}
  .seo-timeline-dot{width:48px;height:48px;font-size:12px;}
  .seo-case-stats{grid-template-columns:1fr 1fr;}
}

@media (max-width:480px){
  .seo-services-grid,.seo-rings-grid,.seo-trust-grid,.seo-case-stats{grid-template-columns:1fr;}
  .seo-btn-primary,.seo-btn-solid{width:100%;text-align:center;}
}

@media (prefers-reduced-motion:reduce){
  .seo-bar{animation:none;transform:scaleY(1);}
  .seo-service-card,.seo-ring-card,.seo-price-card{transition:none;}
}