/* Crescent & Crayon V3 — colorful, stable, simple-interaction public design */
:root{
  --cc-navy:#20325a;
  --cc-ink:#243047;
  --cc-muted:#667085;
  --cc-purple:#7657e8;
  --cc-purple-2:#9a7cff;
  --cc-coral:#ff6f61;
  --cc-pink:#ffd9e7;
  --cc-teal:#16a6a1;
  --cc-mint:#dff8eb;
  --cc-sky:#dff3ff;
  --cc-blue:#5cb8ff;
  --cc-yellow:#ffd166;
  --cc-cream:#fff8e8;
  --cc-white:#ffffff;
  --cc-line:rgba(32,50,90,.12);
  --cc-shadow:0 18px 44px rgba(39,45,86,.12);
  --cc-shadow-hover:0 24px 58px rgba(39,45,86,.18);
  --cc-radius:24px;
  --cc-radius-sm:16px;
  --cc-max:1220px;
  --cc-pad:max(20px,calc((100vw - var(--cc-max))/2));
}

/* ---------- theme containment ---------- */
.ccv2-active .site-main,
.ccv2-active .entry-content,
.ccv2-active .wp-block-post-content{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
.ccv2-active .entry-content>.ccv2-shell,
.ccv2-active .wp-block-post-content>.ccv2-shell{max-width:none!important;width:100%!important}
.ccv2-hide-theme-title .entry-header,
.ccv2-hide-theme-title .entry-title,
.ccv2-hide-theme-title .page-title,
.ccv2-hide-theme-title .wp-block-post-title,
.ccv2-hide-theme-title .ast-single-post-order,
.ccv2-hide-theme-title .elementor-page-title{display:none!important}
.ccv2-template-main{width:100%;max-width:none;margin:0;padding:0;overflow:hidden}

/* ---------- base ---------- */
.ccv2-shell{width:100%;max-width:none;margin:0;background:#fff;color:var(--cc-ink);font-size:16px;line-height:1.72;overflow:hidden}
.ccv2-shell *{box-sizing:border-box}
.ccv2-shell img{display:block;max-width:100%;height:auto}
.ccv2-shell a{text-underline-offset:.18em}
.ccv2-shell h1,.ccv2-shell h2,.ccv2-shell h3{margin-top:0;color:var(--cc-navy);letter-spacing:-.025em;line-height:1.12}
.ccv2-shell h1{font-size:clamp(2.1rem,4vw,3.2rem);max-width:16ch;margin-bottom:20px}
.ccv2-shell h2{font-size:clamp(1.7rem,2.9vw,2.45rem);margin-bottom:12px}
.ccv2-shell h3{font-size:clamp(1.08rem,1.7vw,1.35rem)}
.ccv2-shell p{overflow-wrap:anywhere}

/* ---------- breadcrumbs ---------- */
.ccv2-breadcrumbs{width:min(var(--cc-max),calc(100% - 40px));margin:0 auto;padding:18px 0 0;font-size:.88rem;color:var(--cc-muted)}
.ccv2-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.ccv2-breadcrumbs li:not(:last-child)::after{content:"/";margin-left:8px;color:#a1a9b7}
.ccv2-breadcrumbs a{color:var(--cc-purple);text-decoration:none;font-weight:700}

/* ---------- hero ---------- */
.ccv2-hero,
.ccv2-book-hero,
.ccv2-printable-hero,
.ccv2-article-hero,
.ccv2-legal{
  width:100%;
  padding:70px var(--cc-pad);
}
.ccv2-hero{
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(340px,.97fr);
  align-items:center;
  gap:clamp(30px,5vw,64px);
  min-height:0;
  background:linear-gradient(135deg,#fff5cf 0%,#ffe5ed 38%,#eef0ff 67%,#e2f8ff 100%);
  position:relative;
}
.ccv2-hero::before,.ccv2-hero::after{content:"";position:absolute;border-radius:999px;pointer-events:none;opacity:.9}
.ccv2-hero::before{width:110px;height:110px;right:7%;top:38px;background:rgba(255,209,102,.35)}
.ccv2-hero::after{width:64px;height:64px;left:4%;bottom:28px;background:rgba(118,87,232,.13)}
.ccv2-hero__copy,.ccv2-hero__visual{position:relative;z-index:1;min-width:0}
.ccv2-eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:12px;padding:7px 11px;border-radius:999px;background:rgba(118,87,232,.10);color:#6247cf;font-size:.75rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.ccv2-lead{max-width:64ch;margin:0;color:#526071;font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.72}
.ccv2-actions{display:flex;flex-wrap:wrap;gap:11px;align-items:center;margin-top:24px}
.ccv2-trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.ccv2-trust span{padding:7px 11px;border:1px solid rgba(32,50,90,.08);border-radius:999px;background:rgba(255,255,255,.72);color:#4d596a;font-size:.85rem;font-weight:700;box-shadow:0 5px 18px rgba(32,50,90,.05)}

/* ---------- buttons ---------- */
.ccv2-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 20px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--cc-purple),#8968f3);color:#fff!important;text-decoration:none!important;font-weight:850;box-shadow:0 10px 24px rgba(118,87,232,.24);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.ccv2-btn:hover,.ccv2-btn:focus-visible{transform:translateY(-2px);box-shadow:0 15px 30px rgba(118,87,232,.30);filter:saturate(1.08)}
.ccv2-btn--ghost{background:#fff;color:var(--cc-navy)!important;border:1px solid var(--cc-line);box-shadow:0 8px 20px rgba(32,50,90,.08)}
.ccv2-btn--ghost:hover{border-color:rgba(118,87,232,.28)}
.ccv2-btn--small{min-height:40px;padding:8px 15px;font-size:.9rem}
.ccv2-btn--disabled{opacity:.56;cursor:not-allowed;box-shadow:none}
.ccv2-text-link{display:inline-flex;align-items:center;gap:5px;color:#6549d7!important;text-decoration:none!important;font-weight:850;transition:color .18s ease,transform .18s ease}
.ccv2-text-link:hover{color:var(--cc-coral)!important;transform:translateX(2px)}
.ccv2-text-link--large{font-size:1.05rem}

/* ---------- sections ---------- */
.ccv2-section{width:100%;padding:70px var(--cc-pad);background:#fff}
.ccv2-section--wash{background:linear-gradient(135deg,#edfff7 0%,#eaf7ff 48%,#f4efff 100%)}
.ccv2-section--paper{background-color:var(--cc-cream);background-image:radial-gradient(rgba(255,111,97,.10) 1px,transparent 1px);background-size:18px 18px}
.ccv2-section--dark{background:linear-gradient(135deg,#674ee0 0%,#4c79e9 52%,#17a7a3 100%);color:#fff}
.ccv2-section--dark h2,.ccv2-section--dark h3,.ccv2-section--dark .ccv2-card h3{color:#fff}
.ccv2-section--dark .ccv2-section-head>p,.ccv2-section--dark .ccv2-card p{color:rgba(255,255,255,.83)}
.ccv2-section--dark .ccv2-eyebrow{background:rgba(255,255,255,.16);color:#fff}
.ccv2-section--dark .ccv2-card{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24);box-shadow:0 18px 42px rgba(35,34,95,.20)}
.ccv2-section--dark .ccv2-card__media{background:rgba(255,255,255,.1)}
.ccv2-section--dark .ccv2-text-link{color:#fff!important}
.ccv2-section--dark .ccv2-btn{background:#fff;color:#563fd1!important;box-shadow:0 10px 24px rgba(32,38,93,.18)}
.ccv2-section-head{max-width:780px;margin-bottom:30px}
.ccv2-section-head>p{margin:0;color:var(--cc-muted);font-size:1.03rem;max-width:68ch}
.ccv2-center{text-align:center;margin-top:30px}
.ccv2-prose{max-width:74ch;color:var(--cc-muted);font-size:1.03rem}

/* ---------- grids/cards ---------- */
.ccv2-grid{display:grid;gap:20px}
.ccv2-grid--cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.ccv2-grid--paths{grid-template-columns:repeat(4,minmax(0,1fr))}
.ccv2-grid--values{grid-template-columns:repeat(4,minmax(0,1fr))}
.ccv2-grid--values>div{padding:24px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-sm);background:#fff;box-shadow:0 9px 22px rgba(39,45,86,.07)}

.ccv2-card{--card-accent:var(--cc-purple);position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--cc-line);border-top:5px solid var(--card-accent);border-radius:var(--cc-radius);background:#fff;box-shadow:0 10px 28px rgba(39,45,86,.09);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.ccv2-grid--cards>.ccv2-card:nth-child(5n+2),.ccv2-filter-item:nth-child(5n+2) .ccv2-card{--card-accent:var(--cc-coral)}
.ccv2-grid--cards>.ccv2-card:nth-child(5n+3),.ccv2-filter-item:nth-child(5n+3) .ccv2-card{--card-accent:var(--cc-teal)}
.ccv2-grid--cards>.ccv2-card:nth-child(5n+4),.ccv2-filter-item:nth-child(5n+4) .ccv2-card{--card-accent:var(--cc-yellow)}
.ccv2-grid--cards>.ccv2-card:nth-child(5n+5),.ccv2-filter-item:nth-child(5n+5) .ccv2-card{--card-accent:var(--cc-blue)}
.ccv2-card:hover{transform:translateY(-6px);box-shadow:var(--cc-shadow-hover);border-color:rgba(32,50,90,.15)}
.ccv2-card__media{position:relative;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(135deg,var(--cc-sky),var(--cc-pink))}
.ccv2-book-card .ccv2-card__media{aspect-ratio:4/5}
.ccv2-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .38s ease}
.ccv2-card:hover .ccv2-card__media img{transform:scale(1.045)}
.ccv2-card__media--fallback{display:grid;place-items:center;color:var(--cc-purple);font-size:2.8rem}
.ccv2-card__body{display:flex;flex:1;flex-direction:column;padding:21px}
.ccv2-card__body h3{margin:0 0 9px}
.ccv2-card__body h3 a{color:inherit;text-decoration:none}
.ccv2-card__body p{margin:0 0 17px;color:var(--cc-muted);font-size:.95rem}
.ccv2-card__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:auto}

/* ---------- path cards ---------- */
.ccv2-path-card{--path-bg:#f4efff;--path-icon:#7657e8;display:block;padding:24px;border:1px solid var(--cc-line);border-radius:22px;background:var(--path-bg);color:var(--cc-ink)!important;text-decoration:none!important;box-shadow:0 9px 24px rgba(39,45,86,.07);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.ccv2-path-card:nth-child(4n+2){--path-bg:#fff0f2;--path-icon:#ff6f61}
.ccv2-path-card:nth-child(4n+3){--path-bg:#eafff5;--path-icon:#16a6a1}
.ccv2-path-card:nth-child(4n+4){--path-bg:#fff7d6;--path-icon:#cc8c00}
.ccv2-path-card:hover{transform:translateY(-5px);box-shadow:var(--cc-shadow);border-color:rgba(118,87,232,.20)}
.ccv2-path-card__icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:15px;border-radius:15px;background:#fff;color:var(--path-icon);font-size:1.25rem;font-weight:950;box-shadow:0 7px 18px rgba(39,45,86,.08)}
.ccv2-path-card h3{margin:0 0 7px}
.ccv2-path-card p{margin:0 0 15px;color:var(--cc-muted);font-size:.94rem}

/* ---------- collages ---------- */
.ccv2-collage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;position:relative}
.ccv2-collage__item{margin:0;overflow:hidden;border:5px solid #fff;border-radius:20px;background:#fff;box-shadow:0 14px 34px rgba(39,45,86,.13);transition:transform .22s ease,box-shadow .22s ease}
.ccv2-collage__item:nth-child(1){transform:rotate(-2deg)}
.ccv2-collage__item:nth-child(2){transform:rotate(2deg) translateY(18px)}
.ccv2-collage__item:nth-child(3){transform:rotate(1.5deg) translateY(-7px)}
.ccv2-collage__item:nth-child(4){transform:rotate(-1.5deg) translateY(10px)}
.ccv2-collage__item:hover{transform:rotate(0) translateY(-4px);box-shadow:0 20px 45px rgba(39,45,86,.18)}
.ccv2-collage__item img{width:100%;aspect-ratio:4/5;object-fit:cover}
.ccv2-collage--story .ccv2-collage__item img{aspect-ratio:4/3}
.ccv2-collage--stack{max-width:620px}

/* ---------- split/content helpers ---------- */
.ccv2-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,5vw,66px);align-items:center}
.ccv2-checklist,.ccv2-steps{display:grid;gap:11px;margin:22px 0 0;padding:0;list-style:none}
.ccv2-checklist li,.ccv2-steps li{position:relative;padding:14px 16px 14px 46px;border:1px solid var(--cc-line);border-radius:14px;background:#fff;box-shadow:0 6px 16px rgba(39,45,86,.05)}
.ccv2-checklist li::before{content:"✓";position:absolute;left:15px;top:12px;color:var(--cc-teal);font-weight:950}
.ccv2-steps{counter-reset:ccstep}
.ccv2-steps li{counter-increment:ccstep;padding-left:52px}
.ccv2-steps li::before{content:counter(ccstep);position:absolute;left:13px;top:11px;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--cc-purple),var(--cc-coral));color:#fff;font-size:.84rem;font-weight:900}
.ccv2-feature-story{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:28px;align-items:center}

/* ---------- faq/contact/legal ---------- */
.ccv2-faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ccv2-faq-item,.ccv2-contact-card,.ccv2-legal__panel{padding:24px;border:1px solid var(--cc-line);border-radius:22px;background:#fff;box-shadow:0 10px 26px rgba(39,45,86,.07)}
.ccv2-faq-item:nth-child(3n+1){border-top:5px solid var(--cc-purple)}
.ccv2-faq-item:nth-child(3n+2){border-top:5px solid var(--cc-coral)}
.ccv2-faq-item:nth-child(3n+3){border-top:5px solid var(--cc-teal)}
.ccv2-faq-item p,.ccv2-contact-card p,.ccv2-legal__panel p{color:var(--cc-muted)}
.ccv2-legal{max-width:none;background:linear-gradient(135deg,#fff8df,#f5efff 55%,#e7faff)}
.ccv2-legal>div,.ccv2-legal>h1,.ccv2-legal>p,.ccv2-legal__panel{max-width:900px}
.ccv2-legal__panel{margin-top:28px}

/* ---------- filters ---------- */
.ccv2-filterbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:14px;border:1px solid var(--cc-line);border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(39,45,86,.06)}
.ccv2-filterbar__buttons{display:flex;flex-wrap:wrap;gap:8px}
.ccv2-filterbar button,.ccv2-pagination button{min-height:38px;padding:7px 13px;border:1px solid var(--cc-line);border-radius:999px;background:#fff;color:var(--cc-navy);font-weight:800;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.ccv2-filterbar button:hover,.ccv2-filterbar button.is-active,.ccv2-pagination button.is-active{background:var(--cc-purple);color:#fff;border-color:var(--cc-purple);transform:translateY(-1px)}
.ccv2-search input{width:min(300px,100%);min-height:42px;padding:9px 13px;border:1px solid var(--cc-line);border-radius:999px;background:#fbfcff;color:var(--cc-ink)}
.ccv2-pagination{display:flex;justify-content:center;gap:7px;margin-top:25px}
.ccv2-empty{padding:20px;text-align:center;color:var(--cc-muted)}
.ccv2-filter-item[hidden]{display:none!important}

/* ---------- visual wall ---------- */
.ccv2-visual-wall{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.ccv2-visual-wall__item{margin:0;overflow:hidden;border:1px solid var(--cc-line);border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(39,45,86,.07);transition:transform .2s ease,box-shadow .2s ease}
.ccv2-visual-wall__item:hover{transform:translateY(-4px);box-shadow:var(--cc-shadow)}
.ccv2-visual-wall__item img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .3s ease}
.ccv2-visual-wall__item:hover img{transform:scale(1.04)}
.ccv2-visual-wall__item figcaption{padding:10px 11px;color:var(--cc-muted);font-size:.78rem;font-weight:750}

/* ---------- book / printable / article heroes ---------- */
.ccv2-book-hero,.ccv2-printable-hero{display:grid;grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr);gap:clamp(30px,5vw,68px);align-items:center;background:linear-gradient(135deg,#e7fbff,#f4efff 48%,#fff2d3)}
.ccv2-book-hero__media{padding:18px;border-radius:28px;background:#fff;box-shadow:var(--cc-shadow)}
.ccv2-book-hero__media>img{width:100%;max-height:590px;object-fit:contain;border-radius:17px}
.ccv2-book-hero__copy h1,.ccv2-printable-hero h1{font-size:clamp(2.05rem,3.7vw,3.1rem)}
.ccv2-commercial-title{margin:-7px 0 18px;color:#677286;font-weight:700;line-height:1.55}
.ccv2-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.ccv2-facts span{padding:7px 11px;border-radius:999px;background:#fff;border:1px solid var(--cc-line);font-size:.86rem;font-weight:800;color:var(--cc-navy)}
.ccv2-disclosure,.ccv2-small{font-size:.82rem;color:var(--cc-muted)}
.ccv2-paper-stack{position:relative;min-height:440px;display:grid;place-items:center}
.ccv2-paper-stack figure{position:absolute;width:min(72%,360px);margin:0;border:7px solid #fff;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 16px 38px rgba(39,45,86,.16);transition:transform .25s ease}
.ccv2-paper-stack figure:nth-child(1){transform:translate(-40px,-4px) rotate(-7deg)}
.ccv2-paper-stack figure:nth-child(2){transform:translate(-20px,8px) rotate(-3.5deg)}
.ccv2-paper-stack figure:nth-child(3){transform:translate(0,16px)}
.ccv2-paper-stack figure:nth-child(4){transform:translate(20px,25px) rotate(3.5deg)}
.ccv2-paper-stack figure:nth-child(5){transform:translate(40px,34px) rotate(7deg)}
.ccv2-paper-stack:hover figure:nth-child(1){transform:translate(-58px,-9px) rotate(-8deg)}
.ccv2-paper-stack:hover figure:nth-child(5){transform:translate(58px,38px) rotate(8deg)}

.ccv2-article-hero{padding-top:58px;padding-bottom:52px;background:linear-gradient(135deg,#fff7d7 0%,#ffe9f1 45%,#e9f5ff 100%)}
.ccv2-article-hero h1{max-width:19ch;font-size:clamp(2.05rem,3.8vw,3.15rem)}
.ccv2-article-hero .ccv2-collage{max-width:850px;margin-top:32px}
.ccv2-article-body{width:min(820px,calc(100% - 40px));margin:0 auto;padding:58px 0;font-size:1.05rem;line-height:1.82;color:#3c4759}
.ccv2-article-body h2{margin:2.2em 0 .7em;font-size:clamp(1.55rem,2.5vw,2.1rem)}
.ccv2-article-body h3{margin:1.8em 0 .6em}
.ccv2-article-body a{color:#6549d7;font-weight:700}
.ccv2-article-body img{border-radius:18px}
.ccv2-context-link{padding:15px 17px;border-left:5px solid var(--cc-coral);border-radius:0 14px 14px 0;background:#fff0f3}
.ccv2-link-chips{display:flex;flex-wrap:wrap;gap:10px}
.ccv2-link-chips a{padding:9px 13px;border-radius:999px;background:#fff;border:1px solid var(--cc-line);color:var(--cc-purple);text-decoration:none;font-weight:800;transition:transform .18s ease,background .18s ease}
.ccv2-link-chips a:hover{transform:translateY(-2px);background:#f4efff}

/* ---------- reveal: progressive enhancement, never hides content if JS fails ---------- */
.ccv2-reveal{opacity:1;transform:none}
.ccv2-reveal.ccv2-reveal-pending{opacity:0;transform:translateY(18px)}
.ccv2-reveal.ccv2-in{opacity:1;transform:none;transition:opacity .52s ease,transform .52s ease}

/* ---------- generated menu shortcode ---------- */
.ccv2-menu-wrap{font-family:inherit;position:relative;z-index:80}
.ccv2-menu-wrap ul{list-style:none;margin:0;padding:0}
.ccv2-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.ccv2-nav>li{position:relative}
.ccv2-nav a{display:flex;align-items:center;min-height:42px;padding:9px 12px;border-radius:12px;color:var(--cc-navy);text-decoration:none;font-weight:800;transition:background .18s ease,color .18s ease}
.ccv2-nav>li>a:hover,.ccv2-nav>li:focus-within>a{background:#f4efff;color:#6549d7}
.ccv2-nav .sub-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:235px;padding:8px;border:1px solid var(--cc-line);border-radius:16px;background:#fff;box-shadow:0 18px 48px rgba(39,45,86,.16);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.ccv2-nav .sub-menu .sub-menu{top:0;left:calc(100% + 6px)}
.ccv2-nav li:hover>.sub-menu,.ccv2-nav li:focus-within>.sub-menu,.ccv2-nav li.is-open>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.ccv2-nav .sub-menu a{min-height:38px;padding:8px 10px;font-size:.92rem}
.ccv2-nav .sub-menu a:hover{background:#eef9ff;color:#2d6fa5}
.ccv2-submenu-toggle{display:none;width:34px;height:34px;border:0;border-radius:10px;background:#f4efff;color:var(--cc-purple);font-weight:900;cursor:pointer}

/* ---------- focus/accessibility ---------- */
.ccv2-shell a:focus-visible,.ccv2-shell button:focus-visible,.ccv2-shell input:focus-visible,.ccv2-menu-wrap a:focus-visible,.ccv2-menu-wrap button:focus-visible{outline:3px solid rgba(92,184,255,.72);outline-offset:3px}

/* ---------- responsive ---------- */
@media(max-width:1020px){
  .ccv2-hero{grid-template-columns:1fr 1fr;padding-top:58px;padding-bottom:58px}
  .ccv2-grid--cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ccv2-grid--paths,.ccv2-grid--values{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ccv2-visual-wall{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:820px){
  :root{--cc-pad:22px}
  .ccv2-hero,.ccv2-book-hero,.ccv2-printable-hero{grid-template-columns:1fr;padding-top:50px;padding-bottom:54px}
  .ccv2-hero__visual{max-width:620px}
  .ccv2-split,.ccv2-feature-story{grid-template-columns:1fr}
  .ccv2-faq-grid{grid-template-columns:1fr}
  .ccv2-filterbar{align-items:stretch;flex-direction:column}
  .ccv2-search input{width:100%}
  .ccv2-visual-wall{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ccv2-paper-stack{min-height:390px}

  .ccv2-menu-wrap .ccv2-nav{display:block}
  .ccv2-menu-wrap .ccv2-nav>li{display:grid;grid-template-columns:1fr auto;align-items:center}
  .ccv2-menu-wrap .ccv2-nav>li>a{grid-column:1}
  .ccv2-menu-wrap .ccv2-submenu-toggle{display:grid;place-items:center;grid-column:2}
  .ccv2-menu-wrap .sub-menu{position:static;grid-column:1/-1;min-width:0;margin:2px 0 7px 12px;padding:5px;border:0;border-left:2px solid #e3dcff;border-radius:0;background:transparent;box-shadow:none;display:none;opacity:1;visibility:visible;transform:none}
  .ccv2-menu-wrap li.is-open>.sub-menu{display:block}
  .ccv2-menu-wrap li:hover>.sub-menu:not([data-mobile-open]){display:none}
}
@media(max-width:620px){
  :root{--cc-pad:18px}
  .ccv2-shell h1{font-size:clamp(2rem,10vw,2.7rem)}
  .ccv2-shell h2{font-size:clamp(1.65rem,8vw,2.1rem)}
  .ccv2-hero,.ccv2-section,.ccv2-book-hero,.ccv2-printable-hero,.ccv2-article-hero,.ccv2-legal{padding-top:48px;padding-bottom:48px}
  .ccv2-grid--cards,.ccv2-grid--paths,.ccv2-grid--values{grid-template-columns:1fr}
  .ccv2-visual-wall{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ccv2-collage{gap:8px}
  .ccv2-collage__item{border-width:3px;border-radius:14px}
  .ccv2-collage__item:nth-child(2),.ccv2-collage__item:nth-child(4){transform:rotate(1deg) translateY(8px)}
  .ccv2-collage__item:nth-child(1),.ccv2-collage__item:nth-child(3){transform:rotate(-1deg)}
  .ccv2-paper-stack{min-height:330px}
  .ccv2-paper-stack figure{width:min(78%,300px)}
  .ccv2-paper-stack figure:nth-child(1){transform:translate(-24px,0) rotate(-5deg)}
  .ccv2-paper-stack figure:nth-child(2){transform:translate(-12px,7px) rotate(-2deg)}
  .ccv2-paper-stack figure:nth-child(3){transform:translate(0,14px)}
  .ccv2-paper-stack figure:nth-child(4){transform:translate(12px,21px) rotate(2deg)}
  .ccv2-paper-stack figure:nth-child(5){transform:translate(24px,28px) rotate(5deg)}
}
@media(prefers-reduced-motion:reduce){
  .ccv2-shell *,.ccv2-menu-wrap *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .ccv2-reveal.ccv2-reveal-pending{opacity:1;transform:none}
}
