/*
Theme Name: Postquil
Theme URI: https://postquil.com
Author: Rabby IT Firm
Author URI: https://rabbyitfirm.com
Description: Editorial "postal ledger" theme for guest-post & link placement agencies. Includes theme settings, one-click demo import, built-in on-page SEO (meta, Open Graph, JSON-LD schema, auto XML sitemap, IndexNow auto-indexing), and a Niche/Manifest content type for niche landing pages.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: postquil
*/

:root{
  --paper:#EEF0F3; --paper-2:#E4E7EC; --ink:#1B2A4A; --ink-2:#26365A;
  --stamp:#B23A34; --gold:#AD8A55; --charcoal:#1D2027; --line:#c7cdd6; --white:#FBFAF8;
}
*{box-sizing:border-box; margin:0; padding:0;}
body{background:var(--paper); color:var(--charcoal); font-family:'Iowan Old Style','Georgia',serif; -webkit-font-smoothing:antialiased;}
.wrap{max-width:1180px; margin:0 auto; padding:0 40px;}
a{color:inherit; text-decoration:none;}
img{max-width:100%; height:auto; display:block;}

.masthead{border-bottom:3px double var(--ink); background:var(--paper); position:sticky; top:0; z-index:50;}
.masthead-top{display:flex; justify-content:space-between; align-items:center; padding:10px 0; font-family:'Courier New',monospace; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-2); border-bottom:1px solid var(--line);}
.masthead-main{display:flex; justify-content:space-between; align-items:center; padding:18px 0;}
.brand{font-size:34px; font-weight:700; letter-spacing:.01em; color:var(--ink); display:flex; align-items:baseline; gap:10px;}
.brand small{font-family:'Courier New',monospace; font-size:11px; font-weight:400; letter-spacing:.15em; color:var(--stamp); text-transform:uppercase;}
nav.main-nav{display:flex; gap:28px; font-family:'Courier New',monospace; font-size:12.5px; letter-spacing:.05em; text-transform:uppercase;}
nav.main-nav a{color:var(--ink-2); padding-bottom:3px;}
nav.main-nav a:hover, nav.main-nav a.active{color:var(--stamp);}
.cta-mini{border:1.5px solid var(--ink); padding:9px 18px; font-family:'Courier New',monospace; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink);}
.cta-mini:hover{background:var(--ink); color:var(--white);}

.niche-strip{background:var(--charcoal); overflow:hidden; white-space:nowrap; border-bottom:1px solid #333844;}
.niche-strip .wrap{display:flex; padding:0; align-items:center; overflow-x:auto; scrollbar-width:none;}
.niche-strip .wrap::-webkit-scrollbar{display:none;}
.niche-strip a{font-family:'Courier New',monospace; font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; color:#8b93a8; padding:10px 16px; border-right:1px solid #333844; white-space:nowrap; flex-shrink:0;}
.niche-strip a.active{color:var(--gold); background:#262b36;}
.niche-strip a:hover{color:var(--white);}

.hero{padding:72px 0 60px; position:relative; display:grid; grid-template-columns:1.15fr .85fr; gap:60px; align-items:center;}
.eyebrow{font-family:'Courier New',monospace; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--stamp); margin-bottom:18px; display:flex; align-items:center; gap:12px;}
.eyebrow::before{content:''; width:26px; height:1px; background:var(--stamp);}
h1{font-size:54px; line-height:1.06; font-weight:700; color:var(--ink); letter-spacing:-.01em;}
h1 em{font-style:normal; color:var(--stamp); text-decoration:underline; text-decoration-color:var(--gold); text-decoration-thickness:2px; text-underline-offset:6px;}
.hero-sub{margin-top:22px; font-size:17px; line-height:1.65; color:var(--ink-2); max-width:480px;}
.hero-actions{margin-top:34px; display:flex; gap:16px; align-items:center;}
.btn-primary{background:var(--ink); color:var(--white); padding:15px 30px; font-family:'Courier New',monospace; font-size:13px; letter-spacing:.06em; text-transform:uppercase; border:1.5px solid var(--ink); display:inline-block;}
.btn-primary:hover{background:var(--paper); color:var(--ink);}
.btn-ghost{font-family:'Courier New',monospace; font-size:12.5px; letter-spacing:.05em; text-transform:uppercase; color:var(--ink-2); border-bottom:1px solid var(--ink-2); padding-bottom:2px;}

.postmark{width:340px; height:340px; margin-left:auto; position:relative;}
.postmark svg{width:100%; height:100%;}
.pm-ring-text{font-family:'Courier New',monospace; font-size:10.6px; letter-spacing:.25em;}
.pm-center{font-family:'Iowan Old Style',Georgia,serif;}

.ledger{border-top:1.5px solid var(--ink); border-bottom:1.5px solid var(--ink); padding:26px 0;}
.ledger .wrap{display:grid; grid-template-columns:repeat(4,1fr);}
.ledger-item{text-align:center; border-left:1px solid var(--line); padding:4px 10px;}
.ledger-item:first-child{border-left:none;}
.ledger-num{font-family:'Courier New',monospace; font-size:30px; font-weight:700; color:var(--ink);}
.ledger-label{font-family:'Courier New',monospace; font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-2); margin-top:6px;}

.section{padding:88px 0;}
.section-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:48px; border-bottom:1px solid var(--line); padding-bottom:22px;}
.section-head .eyebrow{margin-bottom:10px;}
.section-head h2{font-size:34px; color:var(--ink); font-weight:700; letter-spacing:-.01em;}
.section-head p{font-family:'Courier New',monospace; font-size:12px; color:var(--ink-2); max-width:260px; text-align:right; line-height:1.6;}

.stamp-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:22px;}
.stamp{background:var(--white); border:2px dashed var(--line); padding:24px 16px 20px; position:relative; transition:border-color .15s, transform .15s; display:block;}
.stamp:hover{border-color:var(--stamp); transform:translateY(-3px);}
.stamp::before{content:''; position:absolute; inset:8px; border:1px solid var(--line); pointer-events:none;}
.stamp-icon{font-family:'Courier New',monospace; font-size:11px; color:var(--stamp); letter-spacing:.1em; margin-bottom:14px;}
.stamp h3{font-size:17px; color:var(--ink); font-weight:700; margin-bottom:8px;}
.stamp p{font-size:12.5px; color:var(--ink-2); font-family:'Courier New',monospace; line-height:1.5;}

.manifest{background:var(--paper-2);}
.manifest-list{display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid var(--ink); border-left:1px solid var(--ink);}
.manifest-item{border-right:1px solid var(--ink); border-bottom:1px solid var(--ink); padding:30px 24px; background:var(--paper-2);}
.manifest-tag{font-family:'Courier New',monospace; font-size:11px; color:var(--stamp); letter-spacing:.1em; margin-bottom:16px; display:block;}
.manifest-item h4{font-size:19px; color:var(--ink); margin-bottom:10px; font-weight:700;}
.manifest-item p{font-size:13px; color:var(--ink-2); line-height:1.6; font-family:'Courier New',monospace;}

table.listing{width:100%; border-collapse:collapse; font-family:'Courier New',monospace; font-size:13px;}
table.listing th{text-align:left; padding:12px 10px; border-bottom:1.5px solid var(--ink); text-transform:uppercase; font-size:10.5px; letter-spacing:.08em; color:var(--ink-2);}
table.listing td{padding:14px 10px; border-bottom:1px solid var(--line); color:var(--charcoal);}
table.listing tr:hover td{background:var(--white);}
.tag{display:inline-block; padding:3px 9px; border:1px solid var(--gold); color:var(--gold); font-size:10.5px; letter-spacing:.05em; text-transform:uppercase;}
.score{color:var(--stamp); font-weight:700;}

.tiers{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.tier{background:var(--white); border:1.5px solid var(--ink); padding:34px 28px; position:relative;}
.tier.featured{background:var(--ink); color:var(--white);}
.tier.featured .tier-label, .tier.featured h3, .tier.featured .price{color:var(--white);}
.tier.featured li{color:#d8dee8;}
.tier-label{font-family:'Courier New',monospace; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--stamp); margin-bottom:14px; display:block;}
.tier h3{font-size:15px; color:var(--ink-2); font-family:'Courier New',monospace; margin-bottom:18px;}
.price{font-size:38px; font-weight:700; color:var(--ink); margin-bottom:4px;}
.price span{font-size:13px; font-family:'Courier New',monospace; font-weight:400;}
.tier ul{list-style:none; margin:24px 0 28px; padding-top:20px; border-top:1px dashed var(--line);}
.tier.featured ul{border-top-color:#465378;}
.tier li{font-size:13px; padding:7px 0; color:var(--ink-2); font-family:'Courier New',monospace;}
.tier li::before{content:'— '; color:var(--stamp);}
.tier.featured li::before{color:var(--gold);}
.tier-btn{display:block; text-align:center; padding:13px; border:1.5px solid var(--ink); font-family:'Courier New',monospace; font-size:12px; letter-spacing:.05em; text-transform:uppercase; color:var(--ink);}
.tier.featured .tier-btn{border-color:var(--white); color:var(--white);}
.tier-btn:hover{background:var(--ink); color:var(--white);}
.tier.featured .tier-btn:hover{background:var(--white); color:var(--ink);}

.faq{max-width:760px;}
.faq-item{border-bottom:1px solid var(--line); padding:22px 0;}
.faq-item h4{font-size:16.5px; color:var(--ink); margin-bottom:8px; font-weight:700;}
.faq-item p{font-size:13.5px; color:var(--ink-2); line-height:1.65;}

.final-cta{background:var(--ink); color:var(--white); padding:90px 0; text-align:center;}
.final-cta .eyebrow{color:var(--gold); justify-content:center;}
.final-cta .eyebrow::before{background:var(--gold);}
.final-cta h2{font-size:42px; margin-bottom:20px; max-width:640px; margin-left:auto; margin-right:auto; line-height:1.15;}
.final-cta p{font-family:'Courier New',monospace; font-size:13px; color:#c3cadd; margin-bottom:34px;}
.final-cta .btn-primary{background:var(--stamp); border-color:var(--stamp); color:var(--white);}
.final-cta .btn-primary:hover{background:transparent; color:var(--stamp);}

footer.site-footer{background:var(--charcoal); color:#9aa2b4; padding:36px 0; font-family:'Courier New',monospace; font-size:11.5px;}
footer.site-footer .wrap{display:flex; justify-content:space-between; letter-spacing:.03em; flex-wrap:wrap; gap:10px;}

.pq-content{padding:88px 0; max-width:760px; margin:0 auto; line-height:1.8;}
.pq-content h2{color:var(--ink); margin:30px 0 14px; font-size:26px;}
.pq-content p{margin-bottom:16px; color:var(--ink-2);}

@media(max-width:900px){
  .hero{grid-template-columns:1fr; gap:36px;}
  .postmark{margin:0 auto;}
  h1{font-size:36px;}
  .ledger .wrap{grid-template-columns:repeat(2,1fr); row-gap:20px;}
  .stamp-grid{grid-template-columns:repeat(2,1fr);}
  .manifest-list{grid-template-columns:1fr;}
  .tiers{grid-template-columns:1fr;}
  nav.main-nav{display:none;}
  .section-head{flex-direction:column; align-items:flex-start; gap:14px;}
  .section-head p{text-align:left;}
}
