/*
Theme Name: Carolina Risk Partners Child
Theme URI: https://carolinariskpartners.com/
Description: Carolina Risk Partners child theme on Kadence. V10 standardizes all normal Pages, Posts, and category/tag/date archives while preserving self-contained CRP page designs.
Author: Carolina Risk Partners
Template: kadence
Version: 10.0.0
Text Domain: crp-kadence-child
*/

:root {
  --crp-navy:#102b44;
  --crp-navy-deep:#071d30;
  --crp-gold:#d2a03b;
  --crp-gold-light:#e7bc62;
  --crp-cream:#f4f2ed;
  --crp-white:#ffffff;
  --crp-ink:#10243a;
  --crp-muted:#657180;
  --crp-line:#e2e5e7;
  --crp-body-font:Aptos,"Segoe UI",Arial,Helvetica,sans-serif;
  --crp-heading-font:Georgia,"Times New Roman",serif;
  --crp-content:1180px;
  --crp-wide:1600px;
  --crp-pill:999px;
  --crp-shadow-soft:0 12px 34px rgba(7,29,48,.07);
}

.crp-page{color:var(--crp-ink);font-family:var(--crp-body-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.crp-page h1,.crp-page h2{font-family:var(--crp-heading-font);letter-spacing:-.04em}
.crp-page p,.crp-page li{line-height:1.65}
.crp-btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 22px;border:0;border-radius:var(--crp-pill);font-family:var(--crp-body-font);font-weight:800;text-decoration:none!important;transition:transform .18s ease,box-shadow .18s ease}
.crp-btn-primary{background:var(--crp-gold);color:var(--crp-navy-deep)!important}
.crp-btn-secondary{border:1px solid rgba(255,255,255,.34);background:transparent;color:#fff!important}
@media (hover:hover) and (pointer:fine){.crp-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(7,29,48,.15)}}

/* GLOBAL HEADER */
body:not(.home):not(.front-page) #masthead,
body:not(.home):not(.front-page) header.site-header,
body:not(.home):not(.front-page) .site-header,
body:not(.home):not(.front-page) #mobile-header{display:none!important}

#crp-global-header,#crp-global-header *{box-sizing:border-box!important}
#crp-global-header{position:sticky!important;top:0!important;z-index:99999!important;width:100%!important;background:#fff!important;border-bottom:1px solid #e7e8e8!important;box-shadow:0 2px 10px rgba(15,38,58,.035)!important;font-family:var(--crp-body-font)!important}
body.admin-bar #crp-global-header{top:32px!important}
#crp-global-header .crp-header-inner{width:min(1600px,calc(100% - 64px))!important;min-height:82px!important;margin:0 auto!important;display:flex!important;align-items:center!important;gap:34px!important}
#crp-global-header .crp-brand{flex:0 0 220px!important;display:flex!important;align-items:center!important;min-width:220px!important;height:82px!important}
#crp-global-header .crp-logo-img{display:block!important;width:195px!important;max-width:195px!important;height:auto!important;max-height:68px!important;object-fit:contain!important}
#crp-global-header .crp-nav{flex:1 1 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(22px,2vw,36px)!important;white-space:nowrap!important}
#crp-global-header .crp-nav a{color:#263a50!important;font-size:14px!important;font-weight:700!important;text-decoration:none!important}
#crp-global-header .crp-header-actions{display:flex!important;align-items:center!important;gap:16px!important;white-space:nowrap!important}
#crp-global-header .crp-header-cta{display:inline-flex!important;min-height:46px!important;align-items:center!important;justify-content:center!important;padding:0 20px!important;border-radius:999px!important;background:#d9aa43!important;color:#10243a!important;font-size:14px!important;font-weight:800!important;text-decoration:none!important}
#crp-global-header .crp-header-phone{color:#10243a!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important}
#crp-global-header .crp-mobile-toggle{display:none!important;width:44px!important;height:44px!important;align-items:center!important;justify-content:center!important;border:0!important;background:transparent!important;color:#10243a!important;cursor:pointer!important}
#crp-global-header .crp-mobile-toggle svg{width:26px!important;height:26px!important;stroke:currentColor!important;stroke-width:2!important;fill:none!important}
#crp-global-header .crp-mobile-menu{display:none!important;background:#fff!important;border-top:1px solid #e6e8ea!important}
#crp-global-header .crp-mobile-menu-inner{display:grid!important;gap:4px!important;padding:16px 22px 22px!important}
#crp-global-header .crp-mobile-menu a{padding:13px 4px!important;color:#23384d!important;font-size:16px!important;font-weight:700!important;text-decoration:none!important;border-bottom:1px solid #eef0f1!important}
#crp-global-header .crp-mobile-menu .crp-mobile-cta{margin-top:12px!important;border:0!important;border-radius:999px!important;text-align:center!important;background:var(--crp-gold)!important;color:var(--crp-navy-deep)!important}
#crp-global-menu-check{position:absolute!important;opacity:0!important;pointer-events:none!important}
#crp-global-menu-check:checked ~ .crp-mobile-menu{display:block!important}

@media (max-width:1220px){
  #crp-global-header .crp-header-inner{width:calc(100% - 40px)!important;gap:22px!important}
  #crp-global-header .crp-brand{flex-basis:190px!important;min-width:190px!important}
  #crp-global-header .crp-logo-img{width:170px!important;max-width:170px!important}
  #crp-global-header .crp-nav{gap:18px!important}
  #crp-global-header .crp-nav a{font-size:13px!important}
  #crp-global-header .crp-header-phone{display:none!important}
}
@media (max-width:980px){
  #crp-global-header .crp-header-inner{min-height:72px!important;justify-content:space-between!important}
  #crp-global-header .crp-brand{flex-basis:auto!important;min-width:0!important;height:72px!important}
  #crp-global-header .crp-logo-img{width:165px!important;max-width:165px!important}
  #crp-global-header .crp-nav,#crp-global-header .crp-header-actions{display:none!important}
  #crp-global-header .crp-mobile-toggle{display:inline-flex!important}
}
@media (max-width:782px){body.admin-bar #crp-global-header{top:46px!important}}

/* BLOG POSTS */
body.single-post .entry-header,
body.single-post .entry-hero-container-inner,
body.single-post .entry-hero,
body.single-post .hero-section-overlay{display:none!important}
body.single-post .content-area,
body.single-post .site-main,
body.single-post main.site-main,
body.single-post .content-container,
body.single-post .entry-content-wrap,
body.single-post .entry-content{max-width:none}
body.single-post .content-area,
body.single-post .site-main,
body.single-post main.site-main{margin:0;padding:0}

.crp-single-blog{background:#fff;color:var(--crp-ink);font-family:var(--crp-body-font);overflow:clip}
.crp-single-blog *, .crp-single-blog *::before,.crp-single-blog *::after{box-sizing:border-box}
.crp-single-blog__hero{background:radial-gradient(circle at 82% 16%,rgba(210,160,59,.16),transparent 31%),linear-gradient(135deg,var(--crp-navy-deep),var(--crp-navy));color:#fff;padding:72px 0 66px}
.crp-single-blog__hero-inner,.crp-single-blog__layout{width:min(var(--crp-content),calc(100% - 48px));margin:0 auto}
.crp-single-blog__eyebrow{margin:0 0 14px;color:var(--crp-gold-light);font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.crp-single-blog__title{max-width:980px;margin:0;color:#fff!important;font-family:var(--crp-heading-font)!important;font-size:clamp(2.6rem,5vw,4.85rem);line-height:.98;letter-spacing:-.048em}
.crp-single-blog__meta{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:22px;color:rgba(255,255,255,.76);font-size:.92rem;font-weight:650}
.crp-single-blog__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.crp-single-blog__layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:52px;align-items:start;padding:64px 0 88px}
.crp-single-blog__article{min-width:0;font-size:1.04rem}
.crp-single-blog__article h2{margin:2.15em 0 .65em;color:var(--crp-navy);font-family:var(--crp-heading-font);font-size:clamp(1.7rem,2.8vw,2.35rem);line-height:1.12;letter-spacing:-.035em}
.crp-single-blog__article h3{margin:1.8em 0 .55em;color:var(--crp-navy);font-size:1.25rem;line-height:1.25}
.crp-single-blog__article p,.crp-single-blog__article li{line-height:1.72}
.crp-single-blog__article img{max-width:100%;height:auto}
.crp-single-blog__sidebar{position:sticky;top:110px}
.crp-blog-sidecard{border:1px solid var(--crp-line);background:var(--crp-cream);padding:24px}
.crp-blog-sidecard__person{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.crp-blog-sidecard__person img{width:62px;height:62px;border-radius:50%;object-fit:cover;object-position:center top;background:#fff}
.crp-blog-sidecard__name{margin:0;color:var(--crp-navy);font-weight:900}
.crp-blog-sidecard__cred{margin:3px 0 0;color:var(--crp-muted);font-size:.85rem;line-height:1.35}
.crp-blog-sidecard h2{margin:0 0 10px;color:var(--crp-navy);font-family:var(--crp-heading-font);font-size:1.45rem;line-height:1.1;letter-spacing:-.03em}
.crp-blog-sidecard p{margin:0 0 15px;color:var(--crp-muted);font-size:.94rem;line-height:1.55}
.crp-blog-sidecard .crp-btn{width:100%;min-height:46px}
.crp-blog-sidecard__phone{display:block;margin-top:11px;color:var(--crp-navy)!important;font-size:.9rem;font-weight:850;text-align:center;text-decoration:none!important}
.crp-blog-sidecard__reviews{display:block;margin-top:14px;color:var(--crp-navy)!important;font-size:.88rem;font-weight:800;text-align:center;text-decoration:underline!important;text-underline-offset:3px}
.crp-blog-sidecard__review-img{display:block;width:100%;max-width:180px;height:auto;margin:12px auto 0}
.crp-single-blog--self-contained,.crp-single-blog--self-contained .crp-existing-post-content{width:100%;max-width:none;margin:0;padding:0}
body.single-post.crp-self-contained-post .entry-content,
body.single-post.crp-self-contained-post .entry-content-wrap,
body.single-post.crp-self-contained-post .wp-block-post-content{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important}
.crp-single-blog__nav{width:min(var(--crp-content),calc(100% - 48px));margin:0 auto;padding:0 0 70px}

/* SERVICE + INDUSTRY + RESOURCES FULL-WIDTH */
body.crp-service-page .entry-header,
body.crp-service-page .entry-hero-container-inner,
body.crp-service-page .entry-hero,
body.crp-service-page .hero-section-overlay,
body.crp-service-page .page-header,
body.crp-industry-page .entry-header,
body.crp-industry-page .entry-hero-container-inner,
body.crp-industry-page .entry-hero,
body.crp-industry-page .hero-section-overlay,
body.crp-industry-page .page-header,
body.crp-resources-page .entry-header,
body.crp-resources-page .entry-hero-container-inner,
body.crp-resources-page .entry-hero,
body.crp-resources-page .hero-section-overlay,
body.crp-resources-page .page-header{display:none!important}

body.crp-service-page .content-area,
body.crp-service-page .site-main,
body.crp-service-page main.site-main,
body.crp-service-page .content-container,
body.crp-service-page .entry-content-wrap,
body.crp-service-page .entry-content,
body.crp-service-page .wp-block-post-content,
body.crp-industry-page .content-area,
body.crp-industry-page .site-main,
body.crp-industry-page main.site-main,
body.crp-industry-page .content-container,
body.crp-industry-page .entry-content-wrap,
body.crp-industry-page .entry-content,
body.crp-industry-page .wp-block-post-content,
body.crp-resources-page .content-area,
body.crp-resources-page .site-main,
body.crp-resources-page main.site-main,
body.crp-resources-page .content-container,
body.crp-resources-page .entry-content-wrap,
body.crp-resources-page .entry-content,
body.crp-resources-page .wp-block-post-content{
  width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important
}
.crp-landing-shell,.crp-landing-shell .crp-landing-content{width:100%;max-width:none;margin:0;padding:0}

/* RESOURCES PAGE */
.crp-resources{background:#fff;color:var(--crp-ink);font-family:var(--crp-body-font)}
.crp-resources__hero{background:radial-gradient(circle at 86% 18%,rgba(210,160,59,.16),transparent 30%),linear-gradient(135deg,var(--crp-navy-deep),#1e244b 68%,#4f2d7f);color:#fff;padding:76px 0 68px}
.crp-resources__hero-inner,.crp-resources__content{width:min(var(--crp-content),calc(100% - 48px));margin:0 auto}
.crp-resources__eyebrow{margin:0 0 12px;color:var(--crp-gold-light);font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.crp-resources__hero h1{max-width:850px;margin:0;color:#fff!important;font-family:var(--crp-heading-font);font-size:clamp(2.8rem,5vw,5rem);line-height:.98;letter-spacing:-.05em}
.crp-resources__intro{max-width:760px;margin:20px 0 0;color:rgba(255,255,255,.82);font-size:1.08rem;line-height:1.65}
.crp-resources__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.crp-resources__content{padding:64px 0 88px}
.crp-resources__section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}
.crp-resources__section-head h2{margin:0;color:var(--crp-navy);font-family:var(--crp-heading-font);font-size:clamp(2rem,3vw,2.8rem);letter-spacing:-.04em}
.crp-resources__section-head p{max-width:620px;margin:0;color:var(--crp-muted);line-height:1.6}
.crp-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.crp-resource-card{display:flex;min-width:0;flex-direction:column;border:1px solid var(--crp-line);background:#fff;padding:26px;text-decoration:none!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.crp-resource-card__meta{margin-bottom:13px;color:#8a6b24;font-size:.74rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.crp-resource-card h3{margin:0;color:var(--crp-navy);font-family:var(--crp-heading-font);font-size:1.45rem;line-height:1.12;letter-spacing:-.03em}
.crp-resource-card__excerpt{margin:14px 0 20px;color:var(--crp-muted);font-size:.95rem;line-height:1.6}
.crp-resource-card__link{margin-top:auto;color:var(--crp-navy);font-size:.88rem;font-weight:900}
@media (hover:hover) and (pointer:fine){.crp-resource-card:hover{transform:translateY(-3px);border-color:rgba(210,160,59,.58);box-shadow:var(--crp-shadow-soft)}}
.crp-resource-pagination{margin-top:44px}
.crp-resource-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.crp-resource-pagination .page-numbers{display:inline-flex;min-width:42px;min-height:42px;align-items:center;justify-content:center;border:1px solid var(--crp-line);background:#fff;color:var(--crp-navy);font-weight:800;text-decoration:none}
.crp-resource-pagination .page-numbers.current{border-color:var(--crp-gold);background:var(--crp-gold);color:var(--crp-navy-deep)}

@media (max-width:900px){
  .crp-single-blog__hero{padding:52px 0 48px}
  .crp-single-blog__hero-inner,.crp-single-blog__layout,.crp-single-blog__nav,.crp-resources__hero-inner,.crp-resources__content{width:calc(100% - 36px)}
  .crp-single-blog__title{font-size:clamp(2.15rem,10vw,3.2rem);line-height:1.02}
  .crp-single-blog__layout{grid-template-columns:1fr;gap:38px;padding:46px 0 70px}
  .crp-single-blog__sidebar{position:static}
  .crp-resource-grid{grid-template-columns:1fr 1fr}
  .crp-resources__section-head{align-items:start;flex-direction:column}
}
@media (max-width:620px){
  .crp-resource-grid{grid-template-columns:1fr}
  .crp-resources__hero{padding:54px 0 50px}
  .crp-resources__hero h1{font-size:clamp(2.3rem,11vw,3.5rem)}
  .crp-resources__actions,.crp-single-blog__actions{flex-direction:column}
  .crp-resources__actions .crp-btn,.crp-single-blog__actions .crp-btn{width:100%}
}


/* ==========================================================
   V10: ALL NORMAL WORDPRESS PAGES
   ----------------------------------------------------------
   Every non-home Page now follows one of two automatic paths:
   1) Existing self-contained CRP custom HTML -> full-width canvas, no duplicate WP title.
   2) Plain/legacy page -> theme-generated CRP hero + consistent content container.
   ========================================================== */

/* Remove Kadence's page-title band for every normal Page except the front page. */
body.page:not(.home):not(.front-page) .entry-header,
body.page:not(.home):not(.front-page) .entry-hero-container-inner,
body.page:not(.home):not(.front-page) .entry-hero,
body.page:not(.home):not(.front-page) .hero-section-overlay,
body.page:not(.home):not(.front-page) .page-header {
  display: none !important;
}

/* Remove Kadence width/padding constraints from every page handled by V10. */
body.crp-v10-page .content-area,
body.crp-v10-page .site-main,
body.crp-v10-page main.site-main,
body.crp-v10-page .content-container,
body.crp-v10-page .entry-content-wrap,
body.crp-v10-page .entry-content,
body.crp-v10-page .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.crp-v10-page .site-main,
body.crp-v10-page main.site-main {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Existing custom CRP pages stay visually self-contained. */
.crp-v10-custom-shell,
.crp-v10-custom-shell .crp-v10-custom-content {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.crp-v10-custom-content > :first-child {
  margin-top: 0 !important;
}

/* Plain/legacy pages get a standard CRP shell automatically. */
.crp-v10-standard-page {
  background: #fff;
  color: var(--crp-ink);
  font-family: var(--crp-body-font);
}

.crp-v10-page-hero {
  background:
    radial-gradient(circle at 85% 18%, rgba(210,160,59,.14), transparent 31%),
    linear-gradient(135deg, var(--crp-navy-deep), #1d2447 68%, #4f2d7f);
  color: #fff;
  padding: 70px 0 64px;
}

.crp-v10-page-hero__inner,
.crp-v10-page-content {
  width: min(var(--crp-content), calc(100% - 48px));
  margin: 0 auto;
}

.crp-v10-page-eyebrow {
  margin: 0 0 12px;
  color: var(--crp-gold-light);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.crp-v10-page-hero h1 {
  max-width: 950px;
  margin: 0;
  color: #fff !important;
  font-family: var(--crp-heading-font) !important;
  font-size: clamp(2.65rem, 5vw, 4.7rem);
  line-height: 1;
  letter-spacing: -.048em;
}

.crp-v10-page-content {
  padding: 64px 0 88px;
  font-size: 1.02rem;
}

.crp-v10-page-content > :first-child {
  margin-top: 0;
}

.crp-v10-page-content h2 {
  margin: 2em 0 .65em;
  color: var(--crp-navy);
  font-family: var(--crp-heading-font);
  font-size: clamp(1.75rem, 3vw, 2.45rem);
  line-height: 1.12;
  letter-spacing: -.035em;
}

.crp-v10-page-content h3 {
  color: var(--crp-navy);
  line-height: 1.25;
}

.crp-v10-page-content p,
.crp-v10-page-content li {
  line-height: 1.72;
}

.crp-v10-page-content img {
  max-width: 100%;
  height: auto;
}

/* A light normalization layer for common CRP custom-page elements.
   It reinforces the site palette without flattening each page's unique composition. */
body.crp-v10-custom-page .crp-btn,
body.crp-v10-custom-page [class*="btn-primary"],
body.crp-v10-custom-page [class*="cta-primary"] {
  border-radius: var(--crp-pill);
}

body.crp-v10-custom-page input[type="submit"],
body.crp-v10-custom-page button[type="submit"] {
  border-radius: var(--crp-pill);
}

/* Categories/tags/date archives: ensure Kadence's outer archive title does not duplicate V10 archive.php. */
body.archive .entry-hero-container-inner,
body.archive .entry-hero,
body.archive .page-header,
body.archive .archive-title {
  display: none !important;
}

/* Mobile */
@media (max-width: 900px) {
  .crp-v10-page-hero__inner,
  .crp-v10-page-content {
    width: calc(100% - 36px);
  }

  .crp-v10-page-hero {
    padding: 52px 0 48px;
  }

  .crp-v10-page-hero h1 {
    font-size: clamp(2.2rem, 10vw, 3.4rem);
    line-height: 1.03;
  }

  .crp-v10-page-content {
    padding: 46px 0 70px;
  }
}
