/* ===== CampMate Header — EXACT match with landing page (app.css lines 763-825) ===== */
html{font-size:16px!important;scroll-behavior:auto}
.landing-header,.landing-header *{font-family:Inter,-apple-system,system-ui,Segoe UI,Roboto,sans-serif}
.landing-header{position:fixed;top:0;left:0;right:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:rgba(15,31,24,0.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(82,183,136,0.1)}
.landing-logo{display:flex;align-items:center;font-size:1.25rem;font-weight:700;color:#FFFFFF;text-decoration:none}
.landing-logo .highlight{color:#52B788}
.landing-header-actions{display:flex;align-items:center;gap:0.75rem}
.landing-btn{padding:0.5rem 1.25rem;border-radius:8px;border:1px solid rgba(82,183,136,0.3);background:rgba(15,31,24,0.55);color:#e8f0ec;font-size:0.8125rem;font-weight:500;cursor:pointer;transition:all 0.25s ease;letter-spacing:0.3px;line-height:1.3;display:inline-flex;align-items:center}
.landing-btn:hover{border-color:#52B788;background:rgba(82,183,136,0.1)}
.landing-btn-primary{background:linear-gradient(135deg,#52B788 0%,#2D6A4F 100%);border-color:transparent;color:#fff}
.landing-btn-primary:hover{box-shadow:0 4px 16px rgba(82,183,136,0.3);transform:translateY(-1px)}

/* ===== Typography (detail + overview pages) ===== */
.gh-article-title,.article-title,h1.gh-article-title{font-size:clamp(2rem,4vw,3.5rem)!important;line-height:1.15!important}
.gh-article,.gh-content,.gh-article p,.gh-content p,.gh-article li,.gh-content li{font-size:1.15rem!important;line-height:1.7!important}
.gh-article h2,.gh-content h2{font-size:2rem!important;line-height:1.25!important}
.gh-article h3,.gh-content h3{font-size:1.5rem!important;line-height:1.3!important}
.gh-article h4,.gh-content h4,.gh-article h5,.gh-content h5{font-size:1.25rem!important;line-height:1.4!important}
figcaption,.gh-article figcaption,.gh-content figcaption{font-size:0.875rem!important;line-height:1.4!important}

/* Homepage cards */
.post-card-title{font-size:1.5rem!important;line-height:1.25!important}
.post-card-excerpt{font-size:1rem!important;line-height:1.55!important}
.post-card-meta,.post-card-meta *{font-size:0.8rem!important}
.post-card-meta-author{font-weight:600;color:#15171A;text-decoration:none}
.post-card-meta-author:hover{color:#2D6A4F}
@media(max-width:640px){.post-card-title{font-size:1.25rem!important}.post-card-excerpt{font-size:0.95rem!important}.post-card-meta{flex-wrap:wrap!important;row-gap:2px!important}}

/* ===== Hide Ghost portal ===== */
#ghost-portal-root,.gh-portal,.gh-portal-btn{display:none!important}

/* ===== Hide Casper header ===== */
.gh-head,.gh-head-logo,.gh-head-brand,.gh-head-menu,.gh-head-actions,.gh-head-members,.gh-head-inner,.gh-head .gh-head-btn,.gh-head .gh-head-link,.gh-head .gh-social,.gh-head-search,.gh-search,.gh-search-trigger,.gh-search-button,#gh-navigation,.gh-navigation,.gh-nav,.gh-nav-menu{display:none!important}

/* ===== Hide Casper footer / CTA (keep site-description visible) ===== */
.site-footer,.site-footer-inner,.site-footer-nav,.site-footer .copyright,.gh-powered-by,.footer-cta,.footer-cta-inner,.footer-cta-title,.footer-cta-button,.footer-cta-input,.gh-footer-cta,.gh-footer-signup,.gh-subscribe-section,.gh-foot,.gh-footer,.gh-footer-inner,.gh-footer-nav,.gh-footer-copyright,.gh-footer-signup{display:none!important}

/* ===== Hide subscribe/signup ===== */
.gh-subscribe,.gh-subscribe-form,.gh-cta,.gh-cta-form,form[data-members-form],form[data-members-signup],.gh-signup,.gh-signup-form,.gh-portal-trigger,button[data-portal]{display:none!important}

/* ===== Content spacing ===== */
body>.gh-outer,body>.gh-cover,body>main,body>.gh-main,body>.gh-content-blocks,main.gh-main,.site-main,.article{padding-top:5rem!important}
.gh-header,.gh-cover,.gh-header.has-image{margin-top:0!important;position:relative}
.gh-viewport{margin-top:-41px!important}
.gh-header.has-image{position:relative!important;height:60vh;overflow:hidden;margin:0!important}
.gh-header.has-image .gh-header-inner,.gh-archive-header.has-image .gh-header-inner{position:absolute!important;top:calc(50% + 56px)!important;left:50%!important;transform:translate(-50%,-50%)!important;text-align:center!important;z-index:1!important;width:90%!important;max-width:720px!important}
.gh-header-image{position:absolute!important;top:0;left:0;width:100%!important;height:100%!important;object-fit:cover!important}

/* ===== FAB ===== */
.cm-fab{position:fixed;bottom:1.5rem;left:1.5rem;z-index:999;display:flex;align-items:center;gap:0.375rem;padding:0.4rem 0.75rem;line-height:1.2!important;background:rgba(10,26,18,0.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(82,183,136,0.25);border-radius:8px;color:#e8f0ea;font-size:0.75rem;font-weight:500;text-decoration:none;transition:all 0.25s ease;box-shadow:0 2px 12px rgba(0,0,0,0.4)}
.cm-fab span{line-height:1!important;display:inline-block}.cm-fab:hover{color:#52B788;border-color:rgba(82,183,136,0.35);background:rgba(15,31,24,0.7);transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,0.3)}

@media(max-width:640px){
  .landing-header{padding:0.5rem 0.75rem}.landing-btn{padding:0.375rem 0.625rem;font-size:0.6875rem}.landing-header-actions{gap:0.5rem}.landing-logo{font-size:1rem}
  .gh-header.has-image{height:55vh!important}.gh-header.has-image .gh-header-inner{top:calc(50% + 24px)!important}.gh-viewport{margin-top:0!important}
  body>.gh-outer,body>.gh-cover,body>main,body>.gh-main,main.gh-main,.site-main,.article{padding-top:3rem!important}
  .gh-article-title,.article-title,h1.gh-article-title{font-size:clamp(1.75rem,5vw,2.5rem)!important;line-height:1.2!important}
  .gh-article,.gh-content,.gh-article p,.gh-content p,.gh-article li,.gh-content li{font-size:1.1rem!important;line-height:1.6!important}
  .gh-article h2,.gh-content h2{font-size:1.6rem!important;line-height:1.25!important}
  .gh-article h3,.gh-content h3{font-size:1.3rem!important;line-height:1.3!important}
  .gh-article h4,.gh-content h4,.gh-article h5,.gh-content h5{font-size:1.1rem!important;line-height:1.35!important}
  figcaption,.gh-article figcaption,.gh-content figcaption{font-size:0.85rem!important;line-height:1.4!important}
}
/* ===== Article typography — polished for American readers ===== */
/* Content width: 720px max for comfortable reading */
.gh-content,.gh-canvas{max-width:720px!important;margin-left:auto!important;margin-right:auto!important}
/* Body text: 17.6px/1.6 — clean and readable */
.gh-content p,.gh-article p{font-size:1.1rem!important;line-height:1.6!important;margin-bottom:1.25em!important}
/* Remove ghost empty-paragraph spacing hack */
.gh-content p:empty,.gh-article p:empty{display:none!important}
/* Headings: tighter spacing */
.gh-content h2,.gh-article h2{font-size:1.75rem!important;line-height:1.25!important;margin-top:2.5rem!important;margin-bottom:0.75rem!important;font-weight:700!important}
.gh-content h3,.gh-article h3{font-size:1.35rem!important;line-height:1.3!important;margin-top:2rem!important;margin-bottom:0.5rem!important;font-weight:700!important}
/* Lists */
.gh-content li,.gh-article li{font-size:1.1rem!important;line-height:1.6!important;margin-bottom:0.4em!important}
/* Tables */
.gh-content table{width:100%!important;max-width:100%!important;border-collapse:collapse!important;margin:1.5rem 0!important}
.gh-content td,.gh-content th{padding:10px 14px!important;text-align:left!important;border-bottom:1px solid #e0e0e0!important;font-size:1rem!important}
.gh-content th{font-weight:700!important;color:#333!important;border-bottom-width:2px!important}
/* Blockquotes */
.gh-content blockquote{border-left:3px solid #52B788!important;padding-left:1.5rem!important;margin:1.5rem 0!important;color:#555!important;font-style:italic!important}
/* Horizontal rules */
.gh-content hr{margin:2rem 0!important;border:none!important;border-top:1px solid #e0e0e0!important}
/* Figure captions */
.gh-content figcaption,.gh-content figcaption p{font-size:0.85rem!important;color:#888!important;text-align:center!important;margin-top:0.5rem!important}
/* Mobile */
@media(max-width:640px){
  .gh-content,.gh-canvas{max-width:100%!important;padding:0 1rem!important}
  .gh-content p,.gh-article p{font-size:1.05rem!important;line-height:1.55!important}
  .gh-content h2{font-size:1.5rem!important;margin-top:2rem!important}
  .gh-content h3{font-size:1.2rem!important}
}

/* Show full cover image without cropping */
.site-header-content{aspect-ratio:auto!important;height:auto!important;max-height:none!important}

/* Cover image — keep tents visible at bottom, green bg when loading */
.site-header-cover{object-position:center bottom!important}
.site-header-content,.site-header{background-color:#1a2a1e!important}

/* Collapse hidden Casper sections so they don't create blank space */
.footer-cta,.site-footer{height:0!important;padding:0!important;margin:0!important;overflow:hidden!important}
/* Reduce gap between article end and footer */
.article,article.gh-article{margin-bottom:0!important}

/* Affiliate disclosure — tiny, muted, just passing compliance */
.gh-content blockquote{font-size:0.75rem!important;line-height:1.3!important;color:#7a9788!important;border-left:2px solid #52B788!important;background:#f7f9f7!important;padding:0.25rem 0.75rem!important;margin:0 0 0.25rem!important;font-style:italic!important}
.gh-content blockquote strong{font-weight:700!important}
.gh-content blockquote p{margin:0!important;font-size:0.75rem!important;line-height:1.3!important}

/* In-content links — brand green (replaces Ghost pink accent #FF1A75) */
.gh-content a,.article-content a{color:#2D6A4F!important}
.gh-content a:hover,.article-content a:hover{color:#52B788!important}
