/* START_SNIPPET:ccg-styles (INDEX:144) */
.ccg { --coral-700:#8f4f3c; --coral-600:#b3614a; --coral-500:#cc8070; --sand-50:#fdfbf7; --sand-100:#f8f2e9; --sand-200:#f1e7d9; --sand-300:#ede1d1; --ink-900:#2b2823; --ink-800:#3a352f; --ink-700:#4d473f; --ink-600:#6c6358; --ink-500:#8b8174; --ink-400:#a99e8f; --line:#e3d8c7; --line-strong:#d2c4ad; --white:#fff; --surface-wash:#fdfbf7; --surface-band:#ede1d1; --radius-sm:4px; --radius-md:8px; --radius-lg:14px; --shadow-md:0 8px 24px #4a372a17; --container-max:1280px; --gutter:clamp(1.25rem,4vw,4rem); --font-display:var(--font-stack-header,'Ogg',serif); --font-ui:var(--font-stack-body,'DM Sans',sans-serif); color:var(--ink-800); font-family:var(--font-ui); line-height:1.65; }
.ccg *, .ccg *::before, .ccg *::after {box-sizing:border-box;min-width:0}
.ccg h1,.ccg h2,.ccg h3,.ccg h4 {font-family:var(--font-display);font-weight:400;color:var(--ink-900);line-height:1.2}
.ccg h2{font-size:clamp(1.7rem,2.6vw,2.4rem);margin:10px 0 16px}.ccg h3{font-size:20px}.ccg h4{font-size:18px;margin:12px 0 8px}
.ccg p{margin:0 0 16px}.ccg a{text-underline-offset:4px}.ccg button{font-family:inherit}.ccg :focus-visible{outline:3px solid #8f4f3c;outline-offset:4px}
.ccg .eyebrow{font-family:var(--font-ui);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--coral-700)}
.ccg-shell{max-width:1280px;margin:0 auto;padding-inline:var(--gutter)}.ccg-section{padding-block:clamp(40px,4vw,64px)}.ccg-center{text-align:center;max-width:740px;margin-inline:auto}
.ccg-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid var(--coral-500);border-radius:4px;background:var(--coral-500);color:#fff;text-decoration:none;font-size:14px;font-weight:500;cursor:pointer;text-align:center;line-height:1.4}
.ccg-button:hover{background:var(--coral-600);border-color:var(--coral-600);color:#fff}
.ccg-button:active{background:var(--coral-700);border-color:var(--coral-700)}
.ccg-button-outline{background:transparent;border-color:var(--line-strong);color:var(--ink-900)}
.ccg-button-outline:hover{background:var(--sand-50);border-color:var(--ink-900);color:var(--ink-900)}
.ccg [data-programme]{background:var(--coral-500)!important;color:#fff!important}
.ccg [data-programme]:hover{background:var(--coral-600)!important;border-color:var(--coral-600);color:#fff!important}
.ccg [data-programme]:active{background:var(--coral-700)!important;border-color:var(--coral-700)}
.ccg a:not(.ccg-button){color:var(--coral-700)}.ccg-seasonal{text-align:center;padding:12px 20px;background:var(--sand-100);font-size:14px}.ccg-seasonal a{margin-left:16px;text-decoration:underline}
.ccg-media img,.ccg-media svg{display:block;width:100%;height:100%;object-fit:cover}.ccg-placeholder{min-height:80px;fill:#c8bdac;background:var(--sand-50)}
.ccg-step1Grid,.ccg-stepGrid,.ccg-programmeGrid,.ccg-shopGrid,.ccg-budgetGrid{display:grid;gap:20px;margin-top:28px;grid-template-columns:repeat(4,minmax(0,1fr))}.ccg-step1Grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}
.ccg-cmpCard{background:white;border:1px solid var(--line);border-radius:8px;padding:16px;display:flex;gap:16px;align-items:flex-start}.ccg-cmpCard>.ccg-media{width:92px;aspect-ratio:1;flex-shrink:0}
.ccg-product{border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;background:var(--white)}
.ccg a.ccg-product-link{display:flex;flex-direction:column;flex:1;color:var(--ink-900);text-decoration:none}
.ccg-product-image{aspect-ratio:1;overflow:hidden;background:var(--sand-50)}
.ccg-product-image img,.ccg-product-image svg{display:block;width:100%;height:100%;object-fit:cover}
.ccg-product-info{padding:20px;display:flex;flex:1;flex-direction:column;gap:12px}
.ccg .ccg-product h3{margin:0;color:var(--ink-900)}
.ccg-product-price{margin-top:auto}.ccg-product small{display:block}
.ccg .ccg-product-link:focus-visible{outline-offset:-4px}
.ccg-shopGrid{margin-bottom:24px}
.ccg #shop>.ccg-center{margin-inline:auto;text-align:center}
.ccg-links{display:flex;gap:16px;justify-content:center;align-items:center;flex-wrap:wrap;text-align:center;margin-top:24px}
.ccg-links .ccg-button{min-width:240px}
@media(max-width:600px){.ccg-links{flex-direction:column;gap:12px}.ccg-links .ccg-button{width:100%;max-width:360px;min-width:0}}


.ccg-form{max-width:900px;margin:auto;padding:60px var(--gutter) 20px;scroll-margin-top:100px}.ccg-form h2{text-align:center}.ccg-tabs{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:24px 0}.ccg-tabs button{min-height:46px;border:1px solid var(--line-strong);border-radius:999px;padding:10px 20px;cursor:pointer}.ccg-tabs [aria-selected=true]{background:var(--sand-100);border-color:var(--coral-700)}.ccg [hidden]{display:none!important}.ccg-panel{border:1px solid var(--line);border-radius:10px;padding:clamp(16px,3vw,30px)}.ccg-panel h3{margin:0 0 16px}.ccg-editor-note{background:#fff5dc;border:1px dashed #a68e56;padding:12px;font-size:14px}.ccg-sticky{display:none}
@media(max-width:767px){.ccg-step1Grid,.ccg-stepGrid,.ccg-programmeGrid{grid-template-columns:1fr}.ccg-shopGrid,.ccg-budgetGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ccg-cmpCard{flex-direction:column}.ccg-cmpCard>.ccg-media{width:100%;height:120px;aspect-ratio:auto}.ccg-product-info{padding:12px}.ccg-product h3{font-size:18px}.ccg-sticky[data-visible]{display:block;position:fixed;bottom:0;left:0;right:0;padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);z-index:25}.ccg-sticky a{width:100%}.ccg-form{padding-top:40px}.ccg [data-screen-label="Related links"]{padding-bottom:90px!important}}
@media(prefers-reduced-motion:no-preference){.ccg-button{transition:background .18s,color .18s}}

.ccg .ccg-close:hover{background:var(--sand-50);border-color:var(--line-strong)}
.ccg .ccg-close:focus-visible{outline:2px solid var(--ink-600);outline-offset:3px}
.ccg-dialog[data-pointer-open] .ccg-close:focus{outline:none;box-shadow:none}

.ccg .ccg-dialog{position:fixed;inset:0;margin:auto;width:min(640px,calc(100% - 32px));max-width:none;max-height:min(86vh,720px);max-height:min(86dvh,720px);overflow-y:auto;overscroll-behavior:contain;border:0;border-radius:8px;padding:0;background:var(--white);color:var(--ink-800);box-shadow:0 18px 48px rgba(74,55,42,.12)}
.ccg .ccg-dialog::backdrop{background:rgba(43,40,35,.45)}
.ccg .ccg-dialog:not([open]){display:none}
.ccg .ccg-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 26px 0}
.ccg .ccg-modal-header>div{display:flex;flex-direction:column;gap:6px}
.ccg .ccg-modal-header h2{font-family:var(--font-display);font-size:24px;font-weight:400;line-height:1.2;margin:0;color:var(--ink-900)}
.ccg .ccg-close{position:static;float:none;display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;background:none;border:1px solid var(--line);border-radius:50%;font-size:20px;line-height:1;color:var(--ink-700);box-shadow:none;cursor:pointer}
.ccg .ccg-dialog .ccg-modal-intro{font-size:14.5px;line-height:1.65;color:var(--ink-700);margin:0;padding:12px 26px 0}
.ccg .ccg-modal-group-label{display:block;font-family:var(--font-ui);font-size:11px;font-weight:400;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-500);margin:0;padding:18px 26px 0}
.ccg .ccg-modal-intro+.ccg-modal-group-label{padding-top:24px}
.ccg .ccg-modal-grid{display:grid;gap:12px;margin:0;padding:18px 26px 20px;align-items:stretch}
.ccg .ccg-modal-group-label+.ccg-modal-grid{padding:10px 26px 6px}
.ccg .ccg-modal-grid-1{grid-template-columns:minmax(0,1fr)}
.ccg .ccg-modal-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ccg .ccg-modal-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ccg .ccg-modal-grid .ccg-modal-tile{border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;background:var(--white);padding:0}
.ccg .ccg-modal-tile>.ccg-media{position:relative;aspect-ratio:4/3;flex-shrink:0;background:var(--sand-50);border-bottom:1px solid var(--line);overflow:hidden}
.ccg .ccg-modal-tile>.ccg-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ccg .ccg-modal-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:10px;text-align:center;width:100%;height:100%;color:var(--ink-400)}
.ccg .ccg-modal-placeholder svg{width:16px;height:16px;flex-shrink:0}
.ccg .ccg-modal-placeholder span{font-size:10.5px;line-height:1.3;color:var(--ink-500)}
.ccg .ccg-modal-tile-copy{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.ccg .ccg-modal-tile-copy h4{font-family:var(--font-display);font-size:16px;font-weight:400;line-height:1.65;color:var(--ink-900);margin:0}
.ccg .ccg-modal-tile-copy p{font-size:13px;line-height:1.5;color:var(--ink-700);margin:0}
.ccg .ccg-modal-grid .ccg-modal-tile-wide{flex-direction:row;align-items:stretch}
.ccg .ccg-modal-tile-wide>.ccg-media{width:132px;aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--line)}
.ccg .ccg-modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;border-top:1px solid var(--line);margin:0 26px;padding:16px 0 24px}
.ccg .ccg-modal-group-label~.ccg-modal-footer{margin-top:10px}
.ccg .ccg-modal-footer p{font-size:13px;line-height:1.5;color:var(--ink-600);margin:0}
.ccg .ccg-modal-footer a{font-size:14px;color:var(--coral-600);text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.ccg .ccg-modal-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}

.ccg [data-screen-label="Step 4"] .ccg-media{position:relative;min-height:150px}
.ccg [data-screen-label="Step 4"] .ccg-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ccg [data-screen-label="Step 4"] .ccg-media>svg{width:20px;height:20px;min-height:0;flex:none}

.ccg-proposal-preview{width:min(100%,260px);justify-self:center}
.ccg .ccg-proposal-page{position:relative;display:block;aspect-ratio:1/1.414;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);transform:rotate(-1.5deg);overflow:hidden;text-decoration:none}
.ccg-proposal-page>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
.ccg-proposal-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px;text-align:center;color:var(--ink-400)}
.ccg-proposal-placeholder span{font-size:12px;line-height:1.4;color:var(--ink-600)}

.ccg [data-screen-label="Hero"] .ccg-media>img,.ccg [data-screen-label="Hero"] .ccg-media>svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.ccg #case-study .ccg-media>img,.ccg #case-study .ccg-media>svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.ccg-faq{max-width:1280px;margin:0 auto;padding:clamp(3rem,4.5vw,4.25rem) var(--gutter)}
.ccg-faq-inner{max-width:860px;margin:0 auto}
.ccg-faq-head{text-align:center;margin-bottom:40px}
.ccg-faq-head .eyebrow{display:block;margin:0;letter-spacing:.18em;color:var(--coral-600)}
.ccg .ccg-faq-head h2{font-size:clamp(1.75rem,2.5vw,2.5rem);line-height:1.14;letter-spacing:-.01em;margin:14px 0 0;text-wrap:balance}
.ccg-faq details{border-top:1px solid var(--line)}
.ccg-faq details:last-child{border-bottom:1px solid var(--line)}
.ccg-faq summary{width:100%;background:none;border:none;padding:22px 4px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-family:var(--font-ui);font-weight:600;font-size:17px;color:var(--ink-900);text-align:left;gap:16px;list-style:none}
.ccg-faq summary::-webkit-details-marker{display:none}
.ccg-faq-chevron{color:var(--coral-500);flex-shrink:0;display:inline-flex;transition:transform 220ms cubic-bezier(.4,0,.2,1)}
.ccg-faq details[open] .ccg-faq-chevron{transform:rotate(180deg)}
.ccg-faq-answer{font-size:15px;line-height:1.7;color:var(--ink-700);margin:0 4px 24px;max-width:92%}
@media(prefers-reduced-motion:reduce){.ccg-faq-chevron{transition:none}}
/* END_SNIPPET:ccg-styles */
