.ccfaq{
  --ink:#164f4b;
  --green:#d1e4b9;
  --green-panel:#dcebc9;
  --green-item:#f7fbf2;
  --green-border:#9fbc82;
  --orange:#efb37f;
  --orange-panel:#f3c49b;
  --orange-item:#fff9f3;
  --orange-border:#cf8d57;
  --radius:24px;
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif !important;
  width:100%;
  max-width:none;
  box-sizing:border-box;
}
.ccfaq *,.ccfaq *::before,.ccfaq *::after{box-sizing:border-box}
/* FAQ-Seite vollständig von der Theme-Schrift entkoppeln – auch Seitentitel außerhalb des Shortcodes. */
.ccfaq-page .entry-title,
.ccfaq-page .wp-block-post-title,
.ccfaq-page main h1,
.ccfaq-page main h2,
.ccfaq-page main h3,
.ccfaq-page main h4,
.ccfaq-page main h5,
.ccfaq-page main h6,
.ccfaq-page .ccfaq,
.ccfaq-page .ccfaq *{font-family:Arial,Helvetica,sans-serif !important}
.wp-block-shortcode:has(.ccfaq){width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;justify-self:stretch!important;align-self:stretch!important;flex-basis:100%!important}
.wp-block-group:has(>.wp-block-shortcode>.ccfaq){width:100%!important;max-width:none!important}
.ccfaq__inner{width:100%;max-width:1440px;margin:0 auto;padding-inline:clamp(20px,4vw,64px)}
.ccfaq__intro{text-align:center;margin:clamp(1.4rem,3vw,2.8rem) auto 1.7rem;max-width:1000px}
.ccfaq__intro h2{font-size:clamp(1.8rem,2.8vw,3rem);line-height:1.18;margin:0 0 14px;color:var(--ink)}
.ccfaq__intro-text{font-size:clamp(1.02rem,1.2vw,1.22rem);line-height:1.7}
.ccfaq__intro-text p{margin:.5rem 0}
.ccfaq__notice{max-width:1100px;margin:0 auto clamp(2rem,4vw,3.2rem);padding:18px 22px;border-radius:18px;background:#f5f9ef;border:1px solid var(--green-border);box-shadow:0 10px 28px rgba(38,70,49,.06)}
.ccfaq__notice>strong{display:block;font-size:1.08rem;margin-bottom:5px}
.ccfaq__notice p{margin:.35rem 0;line-height:1.6}
.ccfaq__groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2vw,26px);align-items:start}
.ccfaq__group-wrap{min-width:0;display:flex;flex-direction:column;align-self:start}
.ccfaq__group{appearance:none;width:100%;min-width:0;min-height:150px;border-radius:var(--radius);border:1px solid transparent;padding:clamp(18px,2.2vw,28px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;text-align:left;color:var(--ink);font:inherit;cursor:pointer;box-shadow:0 13px 30px rgba(38,70,49,.09);transition:transform .2s ease,box-shadow .2s ease}
.ccfaq__group:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(38,70,49,.13)}
.ccfaq__group:focus-visible,.ccfaq__question:focus-visible,.ccfaq__submit:focus-visible{outline:3px solid rgba(22,79,75,.35);outline-offset:4px}
.ccfaq__group--green{background:linear-gradient(145deg,#d9e9c6 0%,var(--green) 100%);border-color:var(--green-border)}
.ccfaq__group--orange{background:linear-gradient(145deg,#f3c296 0%,var(--orange) 100%);border-color:var(--orange-border)}
.ccfaq__group-icon{width:66px;height:66px;border-radius:20px;display:grid;place-items:center;background:rgba(255,255,255,.28);border:1px solid rgba(22,79,75,.10)}
.ccfaq__group-icon svg{width:39px;height:39px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.ccfaq__group-copy{display:grid;gap:7px;min-width:0}
.ccfaq__group-title{font-size:clamp(1.18rem,1.6vw,1.55rem);font-weight:750;line-height:1.2}
.ccfaq__group-description{font-size:.97rem;line-height:1.48;opacity:.88}
.ccfaq__group-meta{display:grid;justify-items:center;gap:13px}
.ccfaq__group-count{min-width:40px;height:40px;padding-inline:11px;border-radius:999px;background:rgba(255,255,255,.35);display:grid;place-items:center;font-weight:700}
.ccfaq__group-arrow{width:14px;height:14px;border-right:2.4px solid currentColor;border-bottom:2.4px solid currentColor;transform:rotate(45deg);transition:transform .25s ease}
.ccfaq__group[aria-expanded=true] .ccfaq__group-arrow{transform:rotate(225deg)}
.ccfaq__panel{display:none;width:100%;margin-top:0;border-radius:var(--radius);border:1px solid transparent;overflow:visible}
.ccfaq__panel.is-open{display:block;margin-top:20px}
.ccfaq__panel--green{background:var(--green-panel);border-color:var(--green-border)}
.ccfaq__panel--orange{background:var(--orange-panel);border-color:var(--orange-border)}
.ccfaq__panel-inner{padding:clamp(14px,2vw,24px);display:grid;gap:12px}
.ccfaq__item{border-radius:17px;background:rgba(255,255,255,.75);border:1px solid rgba(22,79,75,.10);overflow:hidden}
.ccfaq__question{appearance:none;width:100%;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:700;font-size:1.02rem;line-height:1.45;text-align:left;padding:17px 19px;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer}
.ccfaq__plus{width:18px;height:18px;position:relative;flex:0 0 18px}
.ccfaq__plus::before,.ccfaq__plus::after{content:"";position:absolute;background:currentColor;border-radius:2px;left:50%;top:50%;transform:translate(-50%,-50%);transition:transform .2s ease}
.ccfaq__plus::before{width:16px;height:2px}.ccfaq__plus::after{width:2px;height:16px}
.ccfaq__question[aria-expanded=true] .ccfaq__plus::after{transform:translate(-50%,-50%) rotate(90deg)}
.ccfaq__answer{display:none;border-top:1px solid transparent}
.ccfaq__answer.is-open{display:block;border-top-color:rgba(22,79,75,.10)}
.ccfaq__answer-inner{padding:0 19px 19px;line-height:1.68;color:#294f4b}
.ccfaq__answer-inner p{margin:.75rem 0}.ccfaq__answer-inner p:first-child{margin-top:14px}.ccfaq__answer-inner ol,.ccfaq__answer-inner ul{padding-left:1.4rem}
.ccfaq__contact{margin:clamp(3rem,6vw,5rem) 0 2rem;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,54px);align-items:start;padding:clamp(24px,4vw,48px);border-radius:28px;background:#eaf5df;border:1px solid #c7ddb1}
.ccfaq__contact-copy{padding-top:8px}.ccfaq__eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:800;color:#c86e43;margin-bottom:9px}
.ccfaq__contact-copy h2{font-size:clamp(1.6rem,2.3vw,2.4rem);line-height:1.2;margin:0 0 14px;color:var(--ink)}
.ccfaq__contact-copy p{font-size:1.04rem;line-height:1.7;margin:0}
.ccfaq__form-card{background:#fff;border-radius:22px;padding:clamp(20px,3vw,32px);box-shadow:0 16px 36px rgba(38,70,49,.10)}
.ccfaq__form{display:grid;gap:16px}.ccfaq__form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ccfaq__form label{display:grid;gap:7px;font-weight:650}.ccfaq__form input,.ccfaq__form textarea{width:100%;border:1px solid #aac69a;border-radius:11px;padding:11px 13px;background:#fff;color:#1f2937;font:inherit;line-height:1.4}
.ccfaq__form textarea{resize:vertical;min-height:170px}.ccfaq__form input:focus,.ccfaq__form textarea:focus{outline:none;border-color:#5d8b66;box-shadow:0 0 0 3px rgba(93,139,102,.15)}
.ccfaq__submit{justify-self:start;border:0;border-radius:12px;padding:12px 20px;background:#d9865c;color:#fff;font:inherit;font-weight:750;cursor:pointer;box-shadow:0 8px 18px rgba(217,134,92,.22)}
.ccfaq__submit:hover{filter:brightness(.97)}
.ccfaq__alert{padding:13px 15px;border-radius:11px;margin-bottom:17px;line-height:1.45}.ccfaq-alert--success{background:#edf8e9;border:1px solid #a8cb91;color:#265c31}.ccfaq-alert--error{background:#fff2f0;border:1px solid #e6aaa3;color:#8a251d}
.ccfaq__hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:900px){.ccfaq__groups,.ccfaq__contact{grid-template-columns:1fr}.ccfaq__group{min-height:130px}.ccfaq__contact{padding:22px}}
@media(max-width:620px){.ccfaq__inner{padding-inline:16px}.ccfaq__groups{grid-template-columns:1fr}.ccfaq__group{grid-template-columns:auto minmax(0,1fr);gap:14px}.ccfaq__group-meta{grid-column:1/-1;display:flex;justify-content:flex-end;width:100%}.ccfaq__group-icon{width:54px;height:54px;border-radius:16px}.ccfaq__form-row{grid-template-columns:1fr}.ccfaq__contact{margin-top:2.5rem}.ccfaq__question{padding:15px 16px}.ccfaq__answer-inner{padding:0 16px 16px}}
