/*
Theme Name: Pingora Partners
Theme URI: https://pingorapartners.example
Author: Pingora Partners LLC
Author URI: https://pingorapartners.example
Description: A professional, modern, premium WordPress theme for Pingora Partners LLC — a partnership and investment firm based in Wilson, Wyoming. Features Deep Forest Green & Gold palette, Playfair Display & Lato typography, and a fully responsive layout.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pingora-partners
Tags: business, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, responsive
*/

/* ============================================
   Pingora Partners — Theme Styles
   Colors:
     --forest: #1B3A2D
     --gold:   #C9A84C
     --white:  #FFFFFF
     --gray:   #F5F5F5
============================================ */

:root{
  --forest:#1B3A2D;
  --forest-dark:#0F2419;
  --gold:#C9A84C;
  --gold-dark:#a88a37;
  --white:#FFFFFF;
  --gray:#F5F5F5;
  --text:#222;
  --muted:#666;
  --maxw:1200px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Lato',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  color:var(--text);
  background:var(--white);
  line-height:1.6;
  font-size:16px;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--forest);text-decoration:none;transition:color .2s}
a:hover{color:var(--gold)}

h1,h2,h3,h4,h5,h6{
  font-family:'Playfair Display',Georgia,serif;
  color:var(--forest);
  margin:0 0 .6em;
  line-height:1.25;
  font-weight:700;
}
h1{font-size:2.6rem}
h2{font-size:2rem}
h3{font-size:1.4rem}
p{margin:0 0 1em}

.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}

/* Buttons */
.btn{
  display:inline-block;
  padding:14px 30px;
  background:var(--gold);
  color:var(--forest-dark);
  font-weight:700;
  letter-spacing:.5px;
  text-transform:uppercase;
  font-size:.85rem;
  border:2px solid var(--gold);
  border-radius:2px;
  transition:all .25s ease;
}
.btn:hover{background:transparent;color:var(--gold)}
.btn-outline{background:transparent;color:var(--white);border-color:var(--white)}
.btn-outline:hover{background:var(--white);color:var(--forest)}

/* Header */
.site-header{
  background:var(--white);
  border-bottom:1px solid #eee;
  position:sticky;top:0;z-index:100;
  box-shadow:0 1px 6px rgba(0,0,0,.04);
}
.site-header .container{
  display:flex;align-items:center;justify-content:space-between;
  padding-top:18px;padding-bottom:18px;
}
.site-branding a{display:flex;align-items:center;gap:12px}
.site-title{
  font-family:'Playfair Display',serif;
  font-size:1.5rem;color:var(--forest);font-weight:700;margin:0;
}
.site-description{font-size:.8rem;color:var(--muted);margin:0}
.custom-logo{max-height:50px;width:auto}

/* Nav */
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:28px}
.main-nav a{
  color:var(--forest);font-weight:700;font-size:.92rem;
  text-transform:uppercase;letter-spacing:.5px;
}
.main-nav a:hover,.main-nav .current-menu-item > a{color:var(--gold)}

.menu-toggle{
  display:none;background:none;border:0;cursor:pointer;
  font-size:1.6rem;color:var(--forest);
}

/* Hero */
.hero{
  background:linear-gradient(135deg,var(--forest) 0%,var(--forest-dark) 100%);
  color:var(--white);
  padding:120px 0;
  text-align:center;
  position:relative;
}
.hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
.hero h1{color:var(--white);font-size:3.2rem;margin-bottom:.4em}
.hero .lead{font-size:1.2rem;max-width:760px;margin:0 auto 2em;opacity:.92}
.hero .accent{color:var(--gold)}

/* Section */
.section{padding:90px 0}
.section-alt{background:var(--gray)}
.section-header{text-align:center;max-width:720px;margin:0 auto 60px}
.section-header h2{position:relative;padding-bottom:18px}
.section-header h2::after{
  content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:60px;height:3px;background:var(--gold);
}
.section-header p{color:var(--muted);font-size:1.05rem}

/* Grids */
.grid{display:grid;gap:30px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}

/* Cards */
.card{
  background:var(--white);
  padding:36px 30px;
  border:1px solid #eee;
  border-top:3px solid var(--gold);
  border-radius:2px;
  transition:transform .25s,box-shadow .25s;
}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(27,58,45,.12)}
.card .icon{
  width:60px;height:60px;border-radius:50%;
  background:var(--forest);color:var(--gold);
  display:flex;align-items:center;justify-content:center;
  font-size:1.6rem;font-weight:700;margin-bottom:20px;
  font-family:'Playfair Display',serif;
}
.card h3{margin-bottom:.5em}
.card p{color:var(--muted);margin:0}

/* About */
.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.about-grid .stat-box{
  background:var(--forest);color:var(--white);
  padding:40px;border-left:4px solid var(--gold);
}
.about-grid .stat-box h3{color:var(--gold);font-size:2.4rem;margin-bottom:.2em}
.about-grid .stat-box p{margin:0;opacity:.9}

/* Contact */
.contact-box{
  background:var(--white);padding:50px;text-align:center;
  border:1px solid #eee;border-top:4px solid var(--gold);max-width:720px;margin:0 auto;
}
.contact-box address{font-style:normal;font-size:1.1rem;line-height:1.9;color:var(--text)}
.contact-box .label{
  color:var(--gold);text-transform:uppercase;letter-spacing:1px;
  font-size:.8rem;font-weight:700;margin-bottom:8px;display:block;
}

/* Footer */
.site-footer{background:var(--forest-dark);color:#cfd8d2;padding:70px 0 0}
.site-footer h4{color:var(--white);font-family:'Playfair Display',serif;margin-bottom:18px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;margin-bottom:50px}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer ul li{margin-bottom:10px}
.site-footer a{color:#cfd8d2}
.site-footer a:hover{color:var(--gold)}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);
  padding:24px 0;text-align:center;font-size:.88rem;
}
.footer-bottom .ein{opacity:.7;margin-left:8px}

/* Posts */
.post,.page-content{
  background:var(--white);padding:40px;margin-bottom:30px;
  border:1px solid #eee;border-radius:2px;
}
.post-title{margin-bottom:.3em}
.post-meta{color:var(--muted);font-size:.9rem;margin-bottom:1.4em}
.post-meta a{color:var(--gold)}
.read-more{
  display:inline-block;margin-top:14px;color:var(--gold);
  font-weight:700;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px;
}

/* Sidebar */
.content-area{display:grid;grid-template-columns:2fr 1fr;gap:40px}
.widget{
  background:var(--white);padding:28px;border:1px solid #eee;
  border-top:3px solid var(--gold);margin-bottom:24px;
}
.widget-title{font-size:1.1rem;margin-bottom:1em}

/* 404 */
.error-404{text-align:center;padding:120px 0}
.error-404 h1{font-size:6rem;color:var(--gold);margin-bottom:.1em}

/* Pagination */
.pagination{display:flex;justify-content:center;gap:8px;margin-top:40px}
.pagination a,.pagination span{
  padding:10px 16px;background:var(--white);border:1px solid #ddd;
  color:var(--forest);font-weight:700;
}
.pagination .current{background:var(--forest);color:var(--white);border-color:var(--forest)}

/* Responsive */
@media (max-width:900px){
  .grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}
  .about-grid,.footer-grid,.content-area{grid-template-columns:1fr;gap:30px}
  .hero{padding:80px 0}
  .hero h1{font-size:2.2rem}
  h1{font-size:2rem}h2{font-size:1.6rem}
}
@media (max-width:640px){
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  .menu-toggle{display:block}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);border-top:1px solid #eee}
  .main-nav.open{display:block}
  .main-nav ul{flex-direction:column;gap:0;padding:10px 24px}
  .main-nav li{padding:12px 0;border-bottom:1px solid #f0f0f0}
  .site-header .container{position:relative}
  .section{padding:60px 0}
  .contact-box,.post,.page-content{padding:28px}
}

/* WP core classes */
.alignleft{float:left;margin:0 20px 20px 0}
.alignright{float:right;margin:0 0 20px 20px}
.aligncenter{display:block;margin:0 auto 20px}
.wp-caption{max-width:100%}
.screen-reader-text{
  position:absolute!important;clip:rect(1px,1px,1px,1px);
  height:1px;width:1px;overflow:hidden;
}
.sticky{border-left:4px solid var(--gold)}
