/*
Theme Name: PinRankSEO Blue Harbor Authority v3
Author: OpenAI
Version: 9.0
Description: PinRankSEO Blue Harbor theme with transparent logo branding, legal pages, fixed anchors and a branded 404 error page.
*/

:root{
  --prs-page-start:#f5faff;
  --prs-page-mid:#edf6ff;
  --prs-page-end:#ffffff;
  --prs-card:#d8e8ff;
  --prs-card-deep:#c8dcff;
  --prs-card-soft:#e7f1ff;
  --prs-text:#122033;
  --prs-muted:#5f6f89;
  --prs-blue:#4f8cff;
  --prs-blue-dark:#2563eb;
  --prs-violet:#9b8cff;
  --prs-border:rgba(79,140,255,.24);
  --prs-shadow:0 22px 55px rgba(55,90,150,.13);
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  background:
    radial-gradient(circle at top left,rgba(125,180,255,.30),transparent 28%),
    radial-gradient(circle at top right,rgba(185,210,255,.26),transparent 30%),
    linear-gradient(180deg,var(--prs-page-start) 0%,var(--prs-page-mid) 42%,var(--prs-page-end) 100%);
  color:var(--prs-text);
}

a{color:inherit}

.prs-wrap{
  width:min(1140px,92%);
  margin:0 auto;
}

/* Header + hamburger */
.prs-site-header{
  position:sticky;
  top:0;
  z-index:999;
  background:rgba(245,250,255,.84);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(79,140,255,.14);
}

.prs-header-inner{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}

.prs-logo{
  font-size:24px;
  font-weight:760;
  letter-spacing:-.035em;
  text-decoration:none;
  color:#111827;
}

.prs-menu-toggle{
  display:none;
}

.prs-hamburger{
  display:none;
  width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid var(--prs-border);
  background:#fff;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}

.prs-hamburger span,
.prs-hamburger span:before,
.prs-hamburger span:after{
  display:block;
  width:20px;
  height:2px;
  background:#122033;
  border-radius:99px;
  position:relative;
  transition:.25s ease;
}

.prs-hamburger span:before,
.prs-hamburger span:after{
  content:"";
  position:absolute;
  left:0;
}

.prs-hamburger span:before{top:-7px}
.prs-hamburger span:after{top:7px}

.prs-nav{
  display:flex;
  align-items:center;
  gap:22px;
}

.prs-nav a{
  text-decoration:none;
  color:#475569;
  font-size:14px;
  font-weight:650;
}

.prs-nav a:hover{color:var(--prs-blue-dark)}

/* Hero */
.prs-hero{
  padding:86px 0 68px;
}

.prs-hero-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:56px;
  align-items:center;
}

.prs-kicker{
  display:inline-flex;
  padding:8px 13px;
  border-radius:999px;
  background:#eef6ff;
  border:1px solid var(--prs-border);
  color:var(--prs-blue-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.prs-hero h1{
  max-width:700px;
  margin:18px 0 20px;
  font-size:clamp(34px,4.7vw,62px);
  line-height:1.05;
  letter-spacing:-.052em;
  font-weight:730;
  color:#111827;
}

.prs-gradient-text{
  background:linear-gradient(135deg,#2563eb,#7c3aed);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.prs-hero p{
  max-width:600px;
  font-size:16px;
  line-height:1.68;
  color:var(--prs-muted);
  margin:0 0 20px;
}

.prs-hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:30px;
}

/* Buttons */
.prs-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 22px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--prs-blue),var(--prs-violet));
  color:#fff!important;
  text-decoration:none!important;
  font-size:14px;
  font-weight:800;
  box-shadow:0 12px 28px rgba(79,140,255,.24);
}

.prs-btn.secondary{
  background:#fff!important;
  color:var(--prs-blue-dark)!important;
  border:1px solid var(--prs-border);
  box-shadow:none;
}

/* Cards */
.prs-dashboard,
.prs-card,
.prs-pricing-card,
.prs-metric{
  background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep))!important;
  border:1px solid rgba(79,140,255,.22)!important;
  box-shadow:var(--prs-shadow)!important;
}

.prs-dashboard,
.prs-card,
.prs-pricing-card{
  border-radius:28px;
}

.prs-dashboard{
  padding:30px;
}

.prs-card,
.prs-pricing-card{
  padding:30px;
}

.prs-dashboard h2,
.prs-card h3,
.prs-pricing-card h3{
  color:#111827;
  font-weight:700;
  letter-spacing:-.025em;
}

.prs-dashboard h2{
  font-size:23px;
  line-height:1.18;
  margin:14px 0 0;
}

.prs-metrics{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  margin-top:22px;
}

.prs-metric{
  padding:18px;
  border-radius:18px;
}

.prs-metric strong{
  display:block;
  font-size:22px;
  line-height:1;
  margin-bottom:6px;
  color:#111827;
}

.prs-metric span{
  color:#485972;
  font-size:12px;
  line-height:1.38;
}

/* Sections */
.prs-section{
  padding:76px 0;
}

.prs-section-title{
  max-width:790px;
  margin:0 0 18px;
  font-size:clamp(28px,3.8vw,48px);
  line-height:1.08;
  letter-spacing:-.04em;
  font-weight:720;
  color:#111827;
}

.prs-section-text{
  max-width:760px;
  color:var(--prs-muted);
  font-size:16px;
  line-height:1.68;
  margin:0 0 34px;
}

.prs-grid-2,
.prs-grid-3,
.prs-grid-4{
  display:grid;
  gap:24px;
}

.prs-grid-2{grid-template-columns:repeat(2,1fr)}
.prs-grid-3{grid-template-columns:repeat(3,1fr)}
.prs-grid-4{grid-template-columns:repeat(4,1fr)}

.prs-card p,
.prs-pricing-card p{
  color:#485972;
  font-size:14px;
  line-height:1.62;
}

.prs-card h3{
  font-size:22px;
  margin:0 0 12px;
}

/* Pricing */
#plans{
  scroll-margin-top:90px;
}

.prs-pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  align-items:stretch;
}

.prs-pricing-card{
  display:flex;
  flex-direction:column;
  text-align:center;
  min-height:100%;
}

.prs-pricing-card h3{
  font-size:24px;
  margin:0 0 8px;
}

.prs-price{
  font-size:38px;
  line-height:1;
  letter-spacing:-.035em;
  font-weight:750;
  color:#111827;
  margin:10px 0 18px;
}

.prs-plan-list{
  list-style:none;
  padding:0;
  margin:0 0 24px;
  text-align:left;
}

.prs-plan-list li{
  position:relative;
  padding-left:28px;
  margin-bottom:13px;
  color:#485972;
  font-size:14px;
  line-height:1.48;
}

.prs-plan-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:18px;
  height:18px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#dcfce7;
  color:#16a34a;
  font-size:12px;
  font-weight:900;
}

.prs-pricing-card .prs-btn{
  margin-top:auto;
  align-self:center;
  min-width:170px;
}

/* Footer - same as card background */
.prs-footer{
  margin-top:24px;
  padding:72px 0 46px;
  background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep))!important;
  border-top:1px solid rgba(79,140,255,.22);
}

.prs-footer-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  gap:36px;
}

.prs-footer h3{
  margin:0 0 12px;
  font-size:22px;
  line-height:1.2;
  letter-spacing:-.03em;
  color:#111827;
}

.prs-footer h4{
  margin:0 0 16px;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#485972;
}

.prs-footer p{
  color:#485972;
  max-width:360px;
  line-height:1.7;
}

.prs-footer a{
  display:block;
  margin-bottom:12px;
  color:#485972;
  text-decoration:none;
  font-size:14px;
  font-weight:540;
}

.prs-footer a:hover{
  color:var(--prs-blue-dark);
}

/* Responsive */
@media(max-width:1024px){
  .prs-wrap{width:min(94%,980px)}
  .prs-hero-grid{gap:34px}
  .prs-pricing-grid{gap:18px}
  .prs-pricing-card{padding:24px}
}

@media(max-width:900px){
  .prs-hamburger{
    display:flex;
  }

  .prs-nav{
    position:absolute;
    top:76px;
    left:4%;
    right:4%;
    display:none;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:14px;
    border-radius:20px;
    background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep));
    border:1px solid var(--prs-border);
    box-shadow:var(--prs-shadow);
  }

  .prs-nav a{
    display:block;
    width:100%;
    padding:13px 12px;
    border-radius:12px;
  }

  .prs-nav a:hover{
    background:rgba(255,255,255,.38);
  }

  .prs-menu-toggle:checked ~ .prs-nav{
    display:flex;
  }

  .prs-menu-toggle:checked + .prs-hamburger span{
    background:transparent;
  }

  .prs-menu-toggle:checked + .prs-hamburger span:before{
    top:0;
    transform:rotate(45deg);
  }

  .prs-menu-toggle:checked + .prs-hamburger span:after{
    top:0;
    transform:rotate(-45deg);
  }

  .prs-hero{
    padding:64px 0 46px;
  }

  .prs-hero-grid,
  .prs-grid-2,
  .prs-grid-3,
  .prs-grid-4,
  .prs-pricing-grid,
  .prs-footer-grid{
    grid-template-columns:1fr;
  }

  .prs-section{
    padding:56px 0;
  }

  .prs-footer{
    padding:56px 0 36px;
  }
}

@media(max-width:640px){
  .prs-wrap{width:92%}

  .prs-header-inner{
    min-height:68px;
  }

  .prs-nav{
    top:68px;
  }

  .prs-logo{
    font-size:21px;
  }

  .prs-hero h1{
    font-size:36px;
    line-height:1.08;
    letter-spacing:-.04em;
  }

  .prs-hero p,
  .prs-section-text{
    font-size:15px;
    line-height:1.62;
  }

  .prs-hero-actions{
    flex-direction:column;
  }

  .prs-btn{
    width:100%;
  }

  .prs-dashboard,
  .prs-card,
  .prs-pricing-card{
    padding:22px;
    border-radius:22px;
  }

  .prs-metrics{
    grid-template-columns:1fr;
  }

  .prs-section-title{
    font-size:30px;
    line-height:1.12;
    letter-spacing:-.032em;
  }

  .prs-price{
    font-size:34px;
  }

  .prs-footer-grid{
    gap:26px;
  }
}

@media(max-width:390px){
  .prs-hero h1{
    font-size:31px;
  }

  .prs-section-title{
    font-size:27px;
  }

  .prs-dashboard,
  .prs-card,
  .prs-pricing-card{
    padding:18px;
  }

  .prs-plan-list li{
    font-size:13px;
  }
}



/* FAQ Accordion Section */
.prs-faq-section{
  padding:76px 0 86px;
}

.prs-faq-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:34px;
  align-items:start;
}

.prs-faq-stack{
  display:grid;
  gap:14px;
}

.prs-faq-item{
  background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep));
  border:1px solid rgba(79,140,255,.22);
  border-radius:22px;
  box-shadow:var(--prs-shadow);
  overflow:hidden;
}

.prs-faq-item summary{
  cursor:pointer;
  list-style:none;
  padding:20px 56px 20px 22px;
  position:relative;
  font-weight:720;
  color:#111827;
  letter-spacing:-.018em;
}

.prs-faq-item summary::-webkit-details-marker{
  display:none;
}

.prs-faq-item summary:after{
  content:"+";
  position:absolute;
  right:22px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  border-radius:999px;
  background:rgba(255,255,255,.48);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--prs-blue-dark);
  font-weight:850;
}

.prs-faq-item[open] summary:after{
  content:"–";
}

.prs-faq-item p{
  margin:0;
  padding:0 22px 22px;
  color:#485972;
  font-size:15px;
  line-height:1.68;
}

@media(max-width:900px){
  .prs-faq-grid{
    grid-template-columns:1fr;
  }

  .prs-faq-section{
    padding:56px 0 66px;
  }
}

@media(max-width:640px){
  .prs-faq-item summary{
    padding:18px 50px 18px 18px;
    font-size:15px;
  }

  .prs-faq-item p{
    padding:0 18px 18px;
    font-size:14px;
  }
}



/* Inner pages */
.prs-inner-page{
  padding:90px 0 80px;
}

.prs-inner-card{
  background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep));
  border:1px solid rgba(79,140,255,.22);
  border-radius:28px;
  padding:42px;
  box-shadow:var(--prs-shadow);
}

.prs-inner-card h1{
  font-size:48px;
  line-height:1.08;
  letter-spacing:-.04em;
  margin:0 0 18px;
  color:#111827;
}

.prs-inner-card h2{
  margin:38px 0 14px;
  font-size:28px;
  line-height:1.15;
  letter-spacing:-.03em;
  color:#111827;
}

.prs-inner-card p,
.prs-inner-card li{
  color:#485972;
  font-size:15px;
  line-height:1.75;
}

.prs-contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin-top:28px;
}

.prs-contact-box{
  background:rgba(255,255,255,.35);
  border-radius:20px;
  padding:24px;
}

.prs-contact-box h3{
  margin-top:0;
  font-size:22px;
}

@media(max-width:768px){

  .prs-inner-page{
    padding:56px 0 46px;
  }

  .prs-inner-card{
    padding:24px;
    border-radius:22px;
  }

  .prs-inner-card h1{
    font-size:36px;
  }

  .prs-inner-card h2{
    font-size:24px;
  }

  .prs-contact-grid{
    grid-template-columns:1fr;
  }

}



/* Contact form */
.prs-contact-form{
  margin-top:34px;
  display:grid;
  gap:18px;
}

.prs-form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.prs-field label{
  display:block;
  margin:0 0 8px;
  color:#122033;
  font-size:13px;
  font-weight:750;
}

.prs-field input,
.prs-field textarea,
.prs-field select{
  width:100%;
  min-height:48px;
  border-radius:16px;
  border:1px solid rgba(79,140,255,.26);
  background:rgba(255,255,255,.55);
  color:#122033;
  padding:13px 15px;
  font:inherit;
  outline:none;
}

.prs-field textarea{
  min-height:150px;
  resize:vertical;
}

.prs-field input:focus,
.prs-field textarea:focus,
.prs-field select:focus{
  border-color:rgba(37,99,235,.55);
  box-shadow:0 0 0 4px rgba(79,140,255,.14);
}

.prs-form-note{
  color:#485972;
  font-size:13px;
  line-height:1.6;
}

.prs-form-success,
.prs-form-error{
  padding:16px 18px;
  border-radius:18px;
  margin:22px 0;
  font-size:14px;
  line-height:1.55;
}

.prs-form-success{
  background:#dcfce7;
  border:1px solid rgba(22,163,74,.25);
  color:#166534;
}

.prs-form-error{
  background:#fee2e2;
  border:1px solid rgba(220,38,38,.25);
  color:#991b1b;
}

@media(max-width:700px){
  .prs-form-row{
    grid-template-columns:1fr;
  }
}




/* Plan intake forms */
.prs-intake-hero{
  padding:80px 0 36px;
}

.prs-intake-layout{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:28px;
  align-items:start;
}

.prs-intake-summary{
  position:sticky;
  top:104px;
}

.prs-intake-summary .prs-price{
  margin-top:12px;
}

.prs-intake-list{
  list-style:none;
  padding:0;
  margin:22px 0 0;
}

.prs-intake-list li{
  position:relative;
  padding-left:28px;
  margin-bottom:13px;
  color:#485972;
  font-size:14px;
  line-height:1.5;
}

.prs-intake-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:18px;
  height:18px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#dcfce7;
  color:#16a34a;
  font-size:12px;
  font-weight:900;
}

.prs-intake-form{
  display:grid;
  gap:20px;
}

.prs-intake-form fieldset{
  border:0;
  padding:0;
  margin:0;
}

.prs-intake-form legend{
  font-size:20px;
  line-height:1.2;
  letter-spacing:-.025em;
  font-weight:740;
  color:#111827;
  margin:0 0 16px;
}

.prs-intake-card{
  background:rgba(255,255,255,.35);
  border:1px solid rgba(79,140,255,.20);
  border-radius:22px;
  padding:22px;
}

.prs-form-row-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.prs-form-row-3{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:16px;
}

.prs-check-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.prs-check-option{
  display:flex;
  gap:10px;
  align-items:flex-start;
  background:rgba(255,255,255,.40);
  border:1px solid rgba(79,140,255,.16);
  border-radius:16px;
  padding:13px;
  color:#485972;
  font-size:14px;
  line-height:1.45;
}

.prs-check-option input{
  margin-top:3px;
}

.prs-plan-locked{
  background:#eef6ff!important;
  font-weight:750!important;
  color:#122033!important;
}

.prs-hidden-field{
  position:absolute!important;
  left:-9999px!important;
  opacity:0!important;
}

@media(max-width:900px){
  .prs-intake-layout{
    grid-template-columns:1fr;
  }

  .prs-intake-summary{
    position:relative;
    top:auto;
  }

  .prs-form-row-2,
  .prs-form-row-3,
  .prs-check-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .prs-intake-hero{
    padding:54px 0 28px;
  }

  .prs-intake-card{
    padding:18px;
  }
}




/* Classic Editor page rendering */
.prs-classic-page{
  padding:72px 0 76px;
}

.prs-classic-content{
  background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep));
  border:1px solid rgba(79,140,255,.22);
  border-radius:28px;
  padding:34px;
  box-shadow:var(--prs-shadow);
}

.prs-classic-content h1,
.prs-classic-content h2,
.prs-classic-content h3{
  color:#111827;
  letter-spacing:-.03em;
}

.prs-classic-content p{
  color:#485972;
  line-height:1.72;
}

@media(max-width:640px){
  .prs-classic-page{
    padding:46px 0 52px;
  }

  .prs-classic-content{
    padding:22px;
    border-radius:22px;
  }
}




/* Simple vertical intake layout */
.prs-intake-layout{
  display:block!important;
  max-width:880px;
  margin:0 auto;
}

.prs-intake-summary{
  position:relative!important;
  top:auto!important;
  margin-bottom:24px;
}

.prs-form-row-2,
.prs-form-row-3{
  grid-template-columns:1fr!important;
}

.prs-intake-form{
  max-width:100%;
}

.prs-intake-form .prs-field textarea{
  min-height:130px;
}




/* Intake form spacing refinement */
.prs-intake-form{
  gap:28px!important;
}

.prs-intake-card{
  padding:30px!important;
}

.prs-intake-form fieldset{
  display:grid;
  gap:22px;
}

.prs-intake-form legend{
  margin-bottom:6px!important;
  padding-bottom:4px;
}

.prs-intake-form .prs-field{
  display:block;
  margin-bottom:4px;
}

.prs-intake-form .prs-field label{
  display:block;
  margin-bottom:11px!important;
  line-height:1.45!important;
}

.prs-intake-form .prs-field input,
.prs-intake-form .prs-field textarea,
.prs-intake-form .prs-field select{
  min-height:54px!important;
  padding:15px 16px!important;
  line-height:1.45!important;
}

.prs-intake-form .prs-form-note{
  margin-top:2px;
  margin-bottom:2px;
  line-height:1.65!important;
}

.prs-intake-form .prs-btn{
  margin-top:4px;
}

@media(max-width:640px){
  .prs-intake-card{
    padding:24px!important;
  }

  .prs-intake-form{
    gap:22px!important;
  }

  .prs-intake-form fieldset{
    gap:18px;
  }
}



/* Blog system */
.prs-blog-page{padding:78px 0 82px}
.prs-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.prs-blog-card{background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep));border:1px solid rgba(79,140,255,.22);border-radius:26px;overflow:hidden;box-shadow:var(--prs-shadow)}
.prs-blog-thumb{height:220px;background:linear-gradient(135deg,#dbeafe,#c7d2fe)}
.prs-blog-content{padding:24px}
.prs-blog-meta{color:#64748b;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}
.prs-blog-card h2{font-size:26px;line-height:1.14;margin:0 0 14px;letter-spacing:-.04em}
.prs-blog-card h2 a{color:#111827;text-decoration:none}
.prs-blog-card p{color:#485972;line-height:1.7}
.prs-blog-link{color:#2563eb;font-weight:750;text-decoration:none}
.prs-single-wrap{max-width:900px;margin:0 auto}
.prs-single-post{background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep));border:1px solid rgba(79,140,255,.22);border-radius:30px;padding:42px;box-shadow:var(--prs-shadow)}
.prs-single-post h1{font-size:54px;line-height:1.02;letter-spacing:-.05em}
.prs-single-post h2{margin:40px 0 16px;font-size:34px;line-height:1.1}
.prs-single-post p,.prs-single-post li{color:#485972;font-size:16px;line-height:1.85}
@media(max-width:980px){.prs-blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.prs-blog-grid{grid-template-columns:1fr}.prs-single-post{padding:26px}.prs-single-post h1{font-size:40px}}



/* Editable Home / Classic Editor content support */
.prs-editable-home .entry-content > *:first-child{
  margin-top:0;
}

.prs-blog-empty{
  background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep));
  border:1px solid rgba(79,140,255,.22);
  border-radius:26px;
  padding:30px;
  color:#485972;
  box-shadow:var(--prs-shadow);
}




/* Wide full-width blog cards */
.prs-blog-grid{
  grid-template-columns:1fr!important;
  max-width:100%!important;
}

.prs-blog-card{
  display:grid;
  grid-template-columns:320px 1fr;
  align-items:stretch;
  width:100%;
}

.prs-blog-thumb{
  height:100%!important;
  min-height:260px;
}

.prs-blog-content{
  padding:34px!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.prs-blog-card h2{
  font-size:36px!important;
  line-height:1.08!important;
  margin-bottom:18px!important;
}

.prs-blog-card p{
  font-size:16px!important;
  line-height:1.8!important;
  max-width:1000px;
}

.prs-blog-link{
  margin-top:10px;
  display:inline-flex;
}

@media(max-width:900px){

  .prs-blog-card{
    grid-template-columns:1fr!important;
  }

  .prs-blog-thumb{
    min-height:220px;
  }

  .prs-blog-card h2{
    font-size:30px!important;
  }

  .prs-blog-content{
    padding:26px!important;
  }
}




/* Blog category and tag pills */
.prs-post-taxonomy{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 14px;
}

.prs-tax-pill{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.46);
  border:1px solid rgba(79,140,255,.20);
  color:#2563eb;
  font-size:11px;
  font-weight:750;
  letter-spacing:.02em;
  text-decoration:none!important;
}

.prs-tax-pill.tag{
  color:#475569;
  background:rgba(255,255,255,.32);
}

.prs-single-taxonomy{
  margin:18px 0 28px;
}




/* Footer link spacing fix */
.prs-footer a{
  display:block;
  margin-bottom:6px!important;
  line-height:1.35!important;
}

.prs-footer h4{
  margin-bottom:12px!important;
}

.prs-footer-grid{
  gap:36px!important;
}




/* FORCE footer compact link spacing */
.prs-footer .prs-footer-grid div a,
.prs-footer a{
  display:block!important;
  margin-top:0!important;
  margin-bottom:4px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  line-height:1.25!important;
  min-height:0!important;
}

.prs-footer .prs-footer-grid{
  row-gap:18px!important;
}

.prs-footer h4{
  margin-bottom:9px!important;
}

/* Ensure non-pricing CTA buttons scroll to plan cards */
.prs-hero .prs-btn,
.prs-section .prs-btn{
  scroll-margin-top:90px;
}




/* FINAL COMPACT FOOTER SYSTEM */
.prs-footer{
  padding:44px 0 34px!important;
}

.prs-footer-grid{
  display:grid!important;
  grid-template-columns:2fr 1fr 1fr 1fr!important;
  gap:28px!important;
  align-items:start!important;
}

.prs-footer h3{
  margin:0 0 8px!important;
  line-height:1.1!important;
}

.prs-footer h4{
  margin:0 0 8px!important;
  line-height:1.15!important;
}

.prs-footer p{
  margin:0!important;
  max-width:360px!important;
  line-height:1.45!important;
}

.prs-footer a,
.prs-footer .prs-footer-links a{
  display:block!important;
  margin:0 0 3px!important;
  padding:0!important;
  line-height:1.22!important;
  min-height:0!important;
  height:auto!important;
}

.prs-footer .prs-footer-links{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}

@media(max-width:900px){
  .prs-footer-grid{
    grid-template-columns:1fr 1fr!important;
    gap:22px!important;
  }
}

@media(max-width:560px){
  .prs-footer{
    padding:34px 0 28px!important;
  }

  .prs-footer-grid{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
}



/* Single post sidebar layout */
.prs-single-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 320px;
  gap:32px;
  align-items:start;
}

.prs-single-sidebar{
  position:sticky;
  top:104px;
}

.prs-widget-card{
  background:linear-gradient(180deg,var(--prs-card),var(--prs-card-deep));
  border:1px solid rgba(79,140,255,.22);
  border-radius:26px;
  padding:24px;
  box-shadow:var(--prs-shadow);
}

.prs-single-sidebar .widget{
  margin:0 0 22px;
}

.prs-single-sidebar .widget:last-child{
  margin-bottom:0;
}

.prs-single-sidebar .widget-title,
.prs-single-sidebar h2,
.prs-single-sidebar h3{
  font-size:20px;
  line-height:1.18;
  letter-spacing:-.025em;
  color:#111827;
  margin:0 0 14px;
}

.prs-single-sidebar p,
.prs-single-sidebar li,
.prs-single-sidebar a{
  color:#485972;
  font-size:14px;
  line-height:1.65;
}

.prs-single-sidebar ul{
  margin:0;
  padding-left:18px;
}

.prs-single-sidebar a{
  text-decoration:none;
}

.prs-single-sidebar a:hover{
  color:#2563eb;
  text-decoration:underline;
}

.prs-single-post{
  max-width:none!important;
}

@media(max-width:980px){
  .prs-single-layout{
    grid-template-columns:1fr;
  }

  .prs-single-sidebar{
    position:relative;
    top:auto;
  }
}


/* Transparent PinRankSEO logo placement */
.prs-logo img{max-height:58px;width:auto;display:block;}
.prs-footer-brand-logo{max-width:260px;width:100%;height:auto;display:block;margin:0 0 14px;}
@media(max-width:560px){.prs-logo img{max-height:48px}.prs-footer-brand-logo{max-width:230px}}


/* Branded 404 page */
.prs-404{
  min-height:calc(100vh - 76px);
  padding:86px 0 96px;
  background:
    radial-gradient(circle at 18% 10%,rgba(79,140,255,.22),transparent 30%),
    radial-gradient(circle at 85% 15%,rgba(155,140,255,.18),transparent 34%),
    linear-gradient(180deg,var(--prs-page-start) 0%,var(--prs-page-mid) 54%,var(--prs-page-end) 100%);
}
.prs-404-container{width:min(1050px,92%);margin:0 auto;text-align:center}
.prs-404-badge{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:999px;border:1px solid var(--prs-border);background:rgba(255,255,255,.72);box-shadow:var(--prs-shadow);font-weight:800;color:var(--prs-blue-dark);letter-spacing:.08em;text-transform:uppercase;font-size:13px;margin-bottom:18px}
.prs-404 h1{font-size:clamp(38px,6vw,72px);line-height:.96;letter-spacing:-.055em;margin:0 0 18px;color:#0f172a}
.prs-404-intro{font-size:clamp(18px,2.2vw,24px);font-weight:700;color:#27364d;max-width:760px;margin:0 auto 12px}
.prs-404 p{color:var(--prs-muted);font-size:18px;line-height:1.7;max-width:850px;margin:0 auto 28px}
.prs-404-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:32px 0 34px}
.prs-404-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:36px auto;max-width:980px;text-align:left}
.prs-404-card{background:rgba(255,255,255,.76);border:1px solid var(--prs-border);border-radius:24px;padding:24px;box-shadow:var(--prs-shadow)}
.prs-404-card h3{margin:0 0 8px;font-size:22px;color:#101827}.prs-404-card p{font-size:15.5px;line-height:1.55;margin:0;color:var(--prs-muted)}
.prs-404-links{margin:34px auto 0;max-width:760px;background:rgba(255,255,255,.62);border:1px solid var(--prs-border);border-radius:24px;padding:24px;box-shadow:var(--prs-shadow);text-align:center}
.prs-404-links h4{margin:0 0 14px;font-size:18px;color:#111827}.prs-404-links ul{display:flex;gap:10px 18px;justify-content:center;flex-wrap:wrap;margin:0;padding:0;list-style:none}.prs-404-links a{font-weight:800;color:var(--prs-blue-dark);text-decoration:none}.prs-404-links a:hover{text-decoration:underline}
@media(max-width:800px){.prs-404{padding:58px 0 72px}.prs-404-grid{grid-template-columns:1fr}.prs-404 p{font-size:16px}.prs-404-actions a{width:100%;justify-content:center}}
