/* CC My Story Page v1.0.0: component styles for /my-story/ (page 25).
   Ported from the approved preview; class prefix .ccm-.
   The .cca-quiz-* block styles the markup rendered by the site-wide
   Coach Chioma Identity Quiz plugin inside #cca-quiz (same end-state
   rules as cc-blog-page's blog.css / cc-about-page's about.css). */

/* Hide the theme's stray page title above the component (page-25 scoped,
   same fix as CC Contact Page used for page 35). */
.page-id-25 .page-header{display:none !important}

.ccm{--ivory:#FAF6EF;--blush:#F3DFDC;--dusty:#D9A5A0;--rose:#B76E79;--rose-deep:#9E5561;--forest:#24513B;--taupe:#B8A99A;--black:#141414;--ink:#2A2320;--line:rgba(183,110,121,.35);--shadow:0 18px 40px rgba(20,20,20,.10);width:100vw;margin-left:calc(50% - 50vw);background:var(--ivory);color:var(--ink);font-family:'Jost',sans-serif;font-size:17px;line-height:1.65;overflow-x:hidden}
.ccm *{box-sizing:border-box}
.ccm img{max-width:100%}
.ccm a{color:var(--rose)}
.ccm-wrap{max-width:1280px;margin:0 auto;padding:0 clamp(20px,4vw,56px)}
.ccm section{padding:clamp(56px,8vw,96px) 0}

/* ---------- shared ---------- */
.ccm-script{font-family:'Alex Brush',cursive;color:var(--rose);font-size:clamp(1.9rem,3.4vw,2.6rem);line-height:1;margin:0}
.ccm-script-block{display:block;margin-bottom:14px}
.ccm-script-dusty{color:var(--dusty)}
.ccm-h2{font-family:'Playfair Display',serif;font-weight:400;color:var(--black);font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.05;margin:.15em 0 .5em;max-width:14em}
.ccm-h2 em{font-style:italic;color:var(--rose)}
.ccm-h2-blushpop em{color:var(--rose-deep)}
.ccm-btn{display:inline-block;text-decoration:none;font-weight:500;font-size:1rem;padding:14px 30px;border-radius:999px;border:2px solid transparent;text-align:center;transition:background .25s ease,color .25s ease,border-color .25s ease}
.ccm-btn-rose{background:var(--rose);color:#141414;border-color:var(--rose)}
.ccm-btn-rose:hover{background:var(--blush);border-color:var(--blush);color:#141414}
.ccm-btn-outline{background:transparent;color:var(--black);border-color:var(--dusty)}
.ccm-btn-outline:hover{background:var(--blush);border-color:var(--blush);color:#141414}
/* End-state guards: the theme/Elementor kit out-specifies plain rules, so
   the homepage button system (rose bg, BLACK text, blush hover) is forced. */
.ccm .ccm-btn{transition:background .18s ease,color .18s ease,border-color .18s ease}
.ccm .ccm-btn-rose{color:#141414 !important}
.ccm .ccm-btn-rose:hover{background:#F3DFDC !important;color:#141414 !important;border-color:#F3DFDC !important}
.ccm .ccm-btn-outline{border-color:#D9A5A0 !important;color:#141414 !important;background:transparent !important}
.ccm .ccm-btn-outline:hover{background:#F3DFDC !important;color:#141414 !important;border-color:#D9A5A0 !important}
/* On the blush "work together" band a blush hover would vanish: hover white, like the About band buttons. */
.ccm .ccm-together .ccm-btn-rose:hover{background:#FFFFFF !important;color:#141414 !important;border-color:#FFFFFF !important}

/* ---------- hero ---------- */
.ccm-hero{padding:clamp(40px,6vw,72px) 0 clamp(64px,8vw,104px)}
.ccm-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:center}
.ccm-lockup{width:min(300px,70vw);height:auto;display:block;margin-bottom:26px}
.ccm-h1{font-family:'Playfair Display',serif;font-weight:400;color:var(--black);font-size:clamp(2rem,4.6vw,3.9rem);line-height:1.05;margin:.18em 0 .3em;letter-spacing:.005em;white-space:nowrap}
.ccm-h1 .ccm-line{display:block}
.ccm-h1 .ccm-pop{font-style:italic;color:var(--rose)}
.ccm-lede{font-size:clamp(1.15rem,2vw,1.35rem);max-width:34em;margin:0 0 14px}
.ccm-sub{max-width:34em;margin:0 0 34px}
.ccm-btnrow{display:flex;gap:16px;flex-wrap:wrap}
.ccm-arch-wrap{position:relative;justify-self:center;width:min(480px,100%)}
.ccm-arch{border-radius:999px 999px 28px 28px;overflow:hidden;border:6px solid var(--blush);box-shadow:var(--shadow);aspect-ratio:4/4.6;background:var(--blush)}
.ccm-arch img{width:100%;height:100%;object-fit:cover;object-position:center 22%;display:block}
.ccm-medallion{position:absolute;left:-26px;bottom:34px;width:clamp(104px,24vw,148px);aspect-ratio:1/1;background:var(--ivory);border-radius:50%;border:2px solid var(--dusty);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow)}
.ccm-medallion img{width:78%;height:78%;object-fit:contain;display:block}

/* ---------- mission band ---------- */
.ccm-mission{background:var(--blush)}
.ccm-statement{font-family:'Playfair Display',serif;font-weight:400;color:#141414;font-size:clamp(1.7rem,3.6vw,2.7rem);line-height:1.25;max-width:22em;margin:0 0 28px}
.ccm-statement em{font-style:italic;color:var(--rose-deep)}
.ccm-mission-cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,48px);max-width:1020px;color:#2A2320}
.ccm-mission-cols p{margin:0}

/* ---------- superpower ---------- */
.ccm-body{max-width:46em}
.ccm-body p{margin:0 0 1.1em}
.ccm-conviction{font-family:'Playfair Display',serif;font-style:italic;color:var(--black);font-size:clamp(1.35rem,2.6vw,1.8rem);line-height:1.4;border-left:3px solid var(--dusty);padding-left:22px;margin:34px 0;max-width:30em}
.ccm-clients{max-width:46em;margin-top:8px}
.ccm-clients h3{font-family:'Playfair Display',serif;font-weight:400;color:var(--black);font-size:1.5rem;margin:0 0 .4em}
.ccm-clients p{margin:0}
.ccm-beliefs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(40px,5vw,64px)}
.ccm-belief{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 26px;box-shadow:0 8px 24px rgba(20,20,20,.05)}
.ccm-belief-script{font-family:'Alex Brush',cursive;color:var(--rose);font-size:1.7rem;line-height:1;margin:0}
.ccm-belief-line{margin:.35em 0 0;font-family:'Playfair Display',serif;font-size:1.22rem;line-height:1.35;color:var(--black)}

/* ---------- testimonial ---------- */
.ccm-testi{background:var(--forest);color:#FAF6EF;text-align:center}
.ccm-testi-heart{width:54px;height:auto;margin:0 auto 22px;display:block}
.ccm-testi-figure{margin:0}
.ccm-testi-quote{margin:0 auto;max-width:22em;font-family:'Playfair Display',serif;font-style:italic;font-weight:400;font-size:clamp(1.6rem,3.6vw,2.5rem);line-height:1.35}
.ccm-testi-cap{margin-top:26px;font-size:1rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dusty)}

/* ---------- work together ---------- */
.ccm-together{background:var(--blush)}
.ccm-together .ccm-h2{color:#141414;margin-bottom:.2em}
.ccm-intro{color:#2A2320;max-width:40em;margin:0 0 36px}
.ccm-checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px 34px;max-width:1060px}
.ccm-checks li{display:flex;gap:14px;align-items:flex-start;color:#2A2320;background:rgba(255,255,255,.55);border:1px solid rgba(183,110,121,.25);border-radius:14px;padding:16px 18px}
.ccm-check-dot{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--rose);display:flex;align-items:center;justify-content:center;margin-top:1px}
.ccm-check-dot svg{width:15px;height:15px}
.ccm-closing{margin-top:44px}
.ccm-tagline{font-family:'Playfair Display',serif;font-style:italic;color:#141414;font-size:clamp(1.3rem,2.4vw,1.7rem);margin:0 0 24px;max-width:26em}

/* ---------- faith ---------- */
.ccm-faith{text-align:center}
.ccm-faith-p{font-family:'Playfair Display',serif;font-weight:400;color:var(--black);font-size:clamp(1.35rem,2.8vw,1.9rem);line-height:1.5;max-width:34em;margin:0 auto}
.ccm-faith-p em{font-style:italic;color:var(--rose)}

/* ---------- quiz band ---------- */
.ccm-quiz-band{background:var(--forest);color:#FAF6EF}
.ccm-quiz-in{max-width:820px;margin:0 auto;text-align:center}
.ccm-quiz-h2{font-family:'Playfair Display',serif;font-weight:400;color:#FAF6EF;font-size:clamp(2.1rem,4.6vw,3.2rem);line-height:1.08;margin:.15em 0 .3em}
.ccm-quiz-h2 em{font-style:italic;color:var(--dusty)}
.ccm-quiz-sub{max-width:38em;margin:0 auto;color:#EFE6DC;font-weight:300}

/* Quiz internals: rendered by the Coach Chioma Identity Quiz plugin inside
   #cca-quiz. End-state rules mirror blog.css / about.css. */
.cca-quiz-card{background:transparent;color:var(--black);display:block;padding:46px 42px;text-align:center;margin-top:22px;min-height:230px;font-size:1.15rem;font-family:'Jost',sans-serif}
.cca-quiz-progress{letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;color:#F3DFDC;font-weight:600;margin:0 0 10px;text-align:center}
.cca-quiz-q{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:1.5rem;line-height:1.25;color:#FAF6EF;margin:0 0 18px;text-align:center}
.cca-quiz-opts{display:flex;flex-direction:column;gap:10px}
.cca-quiz-opt{background:transparent;border:1px solid #F3DFDC;color:#FAF6EF;border-radius:999px;padding:14px 18px;font-family:'Jost',sans-serif;font-size:1rem;font-weight:300;cursor:pointer;text-align:center;white-space:normal;line-height:1.45}
.cca-quiz-opt:hover{background:rgba(243,223,220,.18);border-color:#F3DFDC}
.cca-quiz-t{background:rgba(250,246,239,.09);border:1px solid rgba(243,223,220,.38);border-radius:16px;padding:20px 24px;max-width:64ch;margin:0 auto 16px;text-align:center;color:#FAF6EF;font-weight:300}
.cca-quiz-btn{display:block;width:fit-content;margin:26px auto 10px;background:#B76E79;color:#fff;text-decoration:none;border-radius:999px;padding:13px 28px;font-weight:500}
.cca-quiz-btn:hover{background:#9E5561;color:#fff}
.cca-quiz-restart{display:block;margin-top:20px;text-align:center;color:#F3DFDC;font-size:.92rem}

/* ---------- scroll reveal: content is visible by default; JS arms the gentle slide/fade ---------- */
.cc-rv{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,.61,.36,1)}
.cc-rv-in{opacity:1 !important;transform:none !important}
@media (prefers-reduced-motion: reduce){.cc-rv{opacity:1;transform:none;transition:none}}

/* ---------- responsive ---------- */
@media(max-width:1020px){.ccm-lockup{display:none}}
@media(max-width:860px){
 .ccm-hero-grid{grid-template-columns:1fr}
 .ccm-arch-wrap{width:min(340px,88vw);margin-top:8px}
 .ccm-medallion{left:10px;bottom:22px;width:104px}
 .ccm-mission-cols{grid-template-columns:1fr}
 .ccm-beliefs{grid-template-columns:1fr}
 .ccm-checks{grid-template-columns:1fr}
 .ccm-btnrow .ccm-btn{flex:1 1 100%}
}
@media(max-width:640px){
 .cca-quiz-card{padding:34px 20px}
 .cca-quiz-q{font-size:1.55rem}
 .cca-quiz-opt{padding:14px 18px !important}
}
