/*
Theme Name: CarCampingPaws
Theme URI: https://carcampingpaws.com
Author: CarCampingPaws
Author URI: https://carcampingpaws.com
Description: A warm, editorial WordPress theme for a dog car-camping blog. Forest green + sunset orange brand system, built for gear reviews, destination guides, and AdSense-ready layouts.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 6.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: carcampingpaws
Tags: blog, custom-menu, custom-logo, featured-images, translation-ready, two-columns, right-sidebar
*/

:root{
  --forest:#1E3A2B;
  --forest-dark:#132A1D;
  --forest-tint:#2A4C39;
  --orange:#E85D04;
  --orange-light:#FF8C3A;
  --cream:#FDFBF5;
  --cream-alt:#F3EEDF;
  --sage:#7C8B72;
  --ink:#20281F;
  --line:#DCD4BE;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--cream); color:var(--ink); font-family:'Inter',sans-serif; -webkit-font-smoothing:antialiased; margin:0;}
a{text-decoration:none; color:inherit;}
img{max-width:100%; display:block;}
.font-display{font-family:'Fraunces',serif;}
.font-mono{font-family:'DM Mono',monospace;}
::selection{background:var(--orange); color:#fff;}

/* signature: dashed trail line with paw waypoints */
.trail-divider{position:relative; height:64px;}
.trail-divider svg{position:absolute; inset:0; width:100%; height:100%;}

/* paw bullet for lists */
.paw-bullet{list-style:none; padding-left:0;}
.paw-bullet::before{
  content:"";
  display:inline-block;
  width:10px; height:10px;
  margin-right:8px;
  background:var(--orange);
  border-radius:50%;
  vertical-align:middle;
}

.badge{
  font-family:'DM Mono',monospace;
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:4px;
  font-weight:500;
  display:inline-block;
}
.badge-destinations{background:#FCE7D6; color:#B9440A;}
.badge-gear-reviews{background:#E1E9DD; color:#1E3A2B;}
.badge-tips-guides{background:#EDEAD8; color:#5C6650;}
.badge-default{background:#EDEAD8; color:#5C6650;}

.card-hover{transition:transform .35s ease, box-shadow .35s ease;}
.card-hover:hover{transform:translateY(-6px); box-shadow:0 22px 40px -18px rgba(30,58,43,.35);}

.ad-slot{
  border:1.5px dashed #C9BFA1;
  background:repeating-linear-gradient(135deg, #F7F3E7, #F7F3E7 10px, #F1EBDA 10px, #F1EBDA 20px);
  display:flex; align-items:center; justify-content:center;
  color:#9C9273; font-family:'DM Mono',monospace; font-size:12px; letter-spacing:.08em; text-transform:uppercase;
  border-radius:6px;
}

.nav-link{position:relative; font-weight:500; color:var(--forest);}
.nav-link::after{content:"";position:absolute; left:0; bottom:-4px; width:0; height:2px; background:var(--orange); transition:width .25s ease;}
.nav-link:hover::after, .nav-link.current-menu-item::after{width:100%;}

.btn-primary{
  background:var(--orange); color:#fff !important; font-weight:600;
  padding:12px 26px; border-radius:999px; display:inline-flex; align-items:center; gap:8px;
  transition:background .25s ease, transform .25s ease; border:none; cursor:pointer;
  box-shadow:0 10px 24px -10px rgba(232,93,4,.55);
}
.btn-primary:hover{background:var(--orange-light); transform:translateY(-2px);}
.btn-outline{
  border:1.5px solid rgba(255,255,255,.7); color:#fff !important; font-weight:600;
  padding:12px 26px; border-radius:999px; display:inline-flex; align-items:center; gap:8px;
  transition:background .25s ease, border-color .25s ease;
}
.btn-outline:hover{background:rgba(255,255,255,.12);}

.postcard{background:var(--cream); border:1.5px dashed var(--orange); position:relative;}
.postcard::after{
  content:"◆ TRAIL PASS ◆";
  position:absolute; top:10px; right:12px;
  font-family:'DM Mono',monospace; font-size:9px; letter-spacing:.1em; color:var(--orange); opacity:.55;
}

.hamburger span{display:block; width:22px; height:2px; background:var(--forest); margin:4px 0; transition:.3s;}
.mobile-menu{max-height:0; overflow:hidden; transition:max-height .35s ease;}
.mobile-menu.open{max-height:640px;}

.fade-in{animation:fadeIn .6s ease both;}
@keyframes fadeIn{from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:translateY(0);}}

/* WP-specific helpers */
.screen-reader-text{position:absolute !important; clip:rect(1px,1px,1px,1px); word-wrap:normal !important; height:1px; width:1px; overflow:hidden;}
.wp-pagination a, .wp-pagination span{
  font-family:'DM Mono',monospace; font-size:12px; padding:8px 14px; border:1px solid var(--line); border-radius:6px; margin-right:6px; display:inline-block;
}
.wp-pagination .current{background:var(--forest); color:#fff; border-color:var(--forest);}
.gallery-caption, .wp-caption-text{font-family:'DM Mono',monospace; font-size:12px; color:var(--sage); text-align:center; margin-top:6px;}
blockquote{border-left:3px solid var(--orange); padding-left:16px; font-style:italic; color:var(--forest-tint); margin:24px 0;}
