/*
 * Color & Class: front-end and editor styles.
 * Colours, fonts and base sizes come from theme.json; this file adds the component styling
 * from the original one-pager (cards, packages, hero, FAQ, quote form...).
 */

:root {
	--cc-black: var(--wp--preset--color--black, #0a0b0c);
	--cc-char: var(--wp--preset--color--charcoal, #15181a);
	--cc-line-d: var(--wp--preset--color--line-dark, #2a2f33);
	--cc-paper: var(--wp--preset--color--paper, #f6f4ef);
	--cc-line-l: var(--wp--preset--color--line-light, #e2ded4);
	--cc-ink: var(--wp--preset--color--ink, #16191b);
	--cc-muted: var(--wp--preset--color--muted, #5d6266);
	--cc-muted-d: var(--wp--preset--color--muted-dark, #a9adb0);
	--cc-orange: var(--wp--preset--color--orange, #f2892e);
	--cc-red: var(--wp--preset--color--red, #e5404e);
	--cc-teal: var(--wp--preset--color--teal, #1fb6bf);
	--cc-blue: var(--wp--preset--color--blue, #0879b5);
	--cc-head: var(--wp--preset--font-family--heading, Montserrat, "Helvetica Neue", Arial, sans-serif);
	--cc-stripes: linear-gradient(90deg, var(--cc-blue) 0 25%, var(--cc-teal) 25% 50%, var(--cc-red) 50% 75%, var(--cc-orange) 75%);
}

html { scroll-behavior: smooth; scroll-padding-top: 110px; }
body { -webkit-font-smoothing: antialiased; }
img { height: auto; }
h1, h2, h3 { text-wrap: balance; }
:focus-visible { outline: 2px solid var(--cc-orange); outline-offset: 3px; }

/* Remove the default gaps between header, content and footer, and between full-width sections. */
.wp-site-blocks > .cc-main,
.wp-site-blocks > .cc-site-footer,
.wp-site-blocks > footer { margin-block-start: 0; }
.cc-main { margin: 0; }
.wp-block-post-content > .alignfull { margin-block-start: 0; margin-block-end: 0; }
.wp-block-post-content > .alignfull + .alignfull { margin-block-start: 0; }

/* ---------- Type helpers ---------- */
.cc-eyebrow {
	font-family: var(--cc-head);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--cc-orange);
	margin-bottom: 12px;
}
.cc-bar + .cc-eyebrow { margin-top: 0; }
.cc-eyebrow + .wp-block-heading { margin-top: 0; }
.wp-block-heading + .cc-lede { margin-top: 14px; }
.cc-lede { font-size: 18px; max-width: 40em; color: var(--cc-muted); }
.cc-lede.has-text-align-center { margin-inline: auto; }
.cc-dark .cc-lede, .cc-titleband .cc-lede, .cc-hero .cc-lede { color: var(--cc-muted-d); }
.cc-h-small { font-size: 26px; margin-top: 2.2em; }
.cc-fine { font-size: 14px; color: var(--cc-muted); }

/* Logo-stripe bar (a Separator block) */
hr.wp-block-separator.cc-bar {
	height: 4px;
	width: 72px;
	max-width: 72px;
	border: 0;
	background: var(--cc-stripes);
	margin: 0 0 18px;
	opacity: 1;
}
.cc-center hr.wp-block-separator.cc-bar { margin-left: auto; margin-right: auto; }

/* "Learn more ->" links */
.cc-more a, a.cc-more {
	font-family: var(--cc-head);
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--cc-red);
}
.cc-more a::after { content: " \2192"; }
.cc-more a:hover { color: var(--cc-orange); }

/* ---------- Buttons ---------- */
.wp-element-button, .wp-block-button__link { transition: filter .2s, background .2s, color .2s, border-color .2s; }
.wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover { filter: brightness(1.08); }
.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background) {
	background: transparent;
	background-image: none;
	border: 2px solid currentColor;
	color: inherit;
	padding: 15px 28px;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--cc-ink);
	border-color: var(--cc-ink);
	color: #fff;
}
.cc-dark .wp-block-button.is-style-outline > .wp-block-button__link:hover,
.cc-hero .wp-block-button.is-style-outline > .wp-block-button__link:hover,
.cc-titleband .wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: #fff;
	border-color: #fff;
	color: var(--cc-black);
}

/* ---------- Header ---------- */
.cc-site-header { position: sticky; top: 0; z-index: 50; }
.admin-bar .cc-site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .cc-site-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .cc-site-header { top: 0; } }
.cc-header { border-bottom: 1px solid var(--cc-line-d); padding-top: 10px; padding-bottom: 10px; }
.cc-header__inner { gap: 12px 24px; }
.cc-header__actions { gap: 12px 26px; }
.cc-logo { flex-shrink: 1; min-width: 0; margin: 0; }
.cc-logo img, .cc-logo a { display: block; }
.cc-logo img { width: 280px; max-width: 100%; height: auto; }
/* The logo artwork has a pure black background; blend it into the near-black header/footer. */
.cc-logo img, .cc-footer__logo img { mix-blend-mode: lighten; }
.cc-nav .wp-block-navigation__container { gap: 6px 22px; }
.cc-nav .wp-block-navigation-item__content { color: #d9dcde; text-decoration: none; }
.cc-nav .wp-block-navigation-item__content:hover,
.cc-nav .current-menu-item > .wp-block-navigation-item__content { color: #fff; }
.cc-nav .wp-block-navigation__submenu-container {
	background: var(--cc-black) !important;
	border: 1px solid var(--cc-line-d) !important;
	padding: 8px 0 !important;
	min-width: 240px !important;
}
.cc-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 9px 18px !important; }
.cc-book .wp-block-button__link { padding: 10px 18px; font-size: 12.5px; white-space: nowrap; }

/* Mobile menu (overlay) */
.cc-nav .wp-block-navigation__responsive-container.is-menu-open {
	padding: 28px 24px;
	font-size: 18px;
}
.cc-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 18px; }
.cc-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	border: 0 !important;
	padding: 10px 0 0 14px !important;
	min-width: 0 !important;
}
.cc-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 6px 0 !important; color: var(--cc-muted-d); }
.cc-nav .wp-block-navigation__responsive-container-open,
.cc-nav .wp-block-navigation__responsive-container-close { color: #fff; }
.cc-nav .wp-block-navigation__responsive-container-open svg { width: 30px; height: 30px; }

/* Collapse the menu into the toggle below 1100px so the header never wraps. */
@media (max-width: 1099px) {
	.cc-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.cc-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.cc-header__book { order: -1; }
	.cc-header__actions { gap: 14px; }
}
@media (max-width: 600px) {
	.cc-logo img { width: 180px; }
	.cc-header__inner { gap: 10px; }
	.cc-header__actions { gap: 10px; }
	.cc-book .wp-block-button__link { padding: 9px 13px; font-size: 12px; letter-spacing: .04em; }
}
@media (max-width: 360px) {
	.cc-logo img { width: 150px; }
}

/* ---------- Sections ---------- */
.cc-section { padding-top: 88px; padding-bottom: 88px; }
/* Full-width sections sit inside the page content, where WordPress removes nested root padding: add it back. */
.wp-block-group.cc-section,
.wp-block-group.cc-titleband,
.wp-block-post-content > .wp-block-group.alignfull {
	padding-left: var(--wp--style--root--padding-left, 20px);
	padding-right: var(--wp--style--root--padding-right, 20px);
}
.cc-sechead { margin-bottom: 40px; }
.cc-dark { color: #fff; }
.cc-dark h1, .cc-dark h2, .cc-dark h3 { color: #fff; }

/* Hero (Cover block) */
.wp-block-cover.cc-hero, .wp-block-cover.cc-band {
	padding: 0;
	min-height: 0;
	background: var(--cc-black);
	align-items: stretch;
}
.cc-hero .wp-block-cover__inner-container,
.cc-band .wp-block-cover__inner-container {
	max-width: calc(var(--wp--style--global--wide-size, 1140px) + 40px);
	margin-inline: auto;
	padding: 140px 20px 130px;
	width: 100%;
	box-sizing: border-box;
}
.cc-hero--page .wp-block-cover__inner-container { padding: 110px 20px 100px; }
.cc-hero__inner { max-width: 620px; display: flex; flex-direction: column; gap: 22px; }
.cc-hero__inner > * { margin: 0 !important; }
.cc-hero__inner hr.cc-bar { margin-bottom: -4px !important; }
.cc-hero__inner .cc-eyebrow { margin-bottom: -8px !important; }
.cc-hero__sub { font-size: 19px; color: #e4e6e7; max-width: 32em; }
.cc-hero__loc { font-size: 14px; color: var(--cc-muted-d); }
.cc-hero--page h1 { font-size: clamp(34px, 5vw, 56px); }

/* Photo band */
.cc-band .wp-block-cover__inner-container { padding: 80px 20px; }
.cc-band__inner { gap: 24px; align-items: center; }
.cc-band__inner > * { margin: 0 !important; }
.cc-band h2 { max-width: 18em; }

/* Title band (simple pages) */
.cc-titleband { padding-top: 72px; padding-bottom: 64px; }
.cc-titleband h1 { font-size: clamp(34px, 5vw, 56px); }
.cc-titleband .alignwide > hr.cc-bar { margin-left: 0; }

/* Service cards */
.wp-block-group.cc-cards { gap: 26px; }
.cc-cards-2 .wp-block-group.cc-cards { grid-template-columns: repeat(auto-fit, minmax(min(17rem, 100%), 1fr)); max-width: 900px; margin-inline: auto; }
.cc-card {
	background: #fff;
	color: var(--cc-ink);
	border: 1px solid var(--cc-line-l);
	border-radius: 6px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.cc-card > * { margin: 0 !important; }
.wp-block-image.cc-card__img { aspect-ratio: 3 / 2; overflow: hidden; margin: 0; }
.cc-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.cc-card:hover .cc-card__img img { transform: scale(1.04); }
.cc-card__body { padding: 22px 22px 24px; flex: 1; }
.cc-card__body > * { margin: 0; }
.cc-card__body > * + * { margin-top: 10px; }
.cc-card__body p { color: var(--cc-muted); font-size: 16px; }

/* Split (text + photo) */
.wp-block-columns.cc-split { gap: 48px; }
.cc-photo { margin: 0; }
.cc-photo img { border-radius: 6px; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }

/* PPF finishes */
.wp-block-group.cc-finishes { gap: 14px; margin-block: 26px; }
.cc-finish {
	border: 1px solid var(--cc-line-l);
	border-radius: 6px;
	padding: 18px;
	background: #fff;
}
.cc-finish > * { margin: 0; }
.cc-finish > * + * { margin-top: 6px; }
.cc-finish p { color: var(--cc-muted); font-size: 15.5px; }
hr.wp-block-separator.cc-swatch { height: 10px; border: 0; border-radius: 3px; width: 100%; max-width: none; margin: 0 0 6px; opacity: 1; }
hr.cc-swatch--gloss { background: linear-gradient(90deg, #0b3f66, #3a8dc4 45%, #0b3f66); }
hr.cc-swatch--satin { background: #3b4044; }

/* PPF coverage */
.wp-block-group.cc-covs { gap: 20px; }
.cc-cov {
	background: #fff;
	border-radius: 6px;
	padding: 24px;
	text-align: center;
	border-top: 4px solid var(--cc-teal);
}
.cc-cov--front { border-top-color: var(--cc-orange); }
.cc-cov--full { border-top-color: var(--cc-red); }
.cc-cov > * { margin: 0; }
.cc-cov > * + * { margin-top: 8px; }
.cc-cov p { color: var(--cc-muted); font-size: 16px; }
.cc-car { display: block; width: 100%; max-width: 170px; height: auto; margin: 0 auto 10px; }

/* FAQ (Details blocks) */
.cc-faq { max-width: 860px; margin-inline: auto; }
.cc-faq + .cc-faq { margin-top: 48px; }
.cc-faq__title { margin-bottom: 8px; }
.cc-faq > details.cc-faq-item:first-of-type { border-top: 1px solid var(--cc-line-l); }
details.cc-faq-item { border-bottom: 1px solid var(--cc-line-l); margin: 0; }
.cc-faq-item summary {
	cursor: pointer;
	list-style: none;
	padding: 20px 40px 20px 0;
	position: relative;
	font-family: var(--cc-head);
	font-weight: 700;
	font-size: 17px;
}
.cc-faq-item summary::-webkit-details-marker { display: none; }
.cc-faq-item summary::after {
	content: "+";
	position: absolute;
	right: 6px;
	top: 14px;
	font-size: 26px;
	font-weight: 500;
	color: var(--cc-red);
}
.cc-faq-item[open] summary::after { content: "\2013"; }
.cc-faq-item > p { margin: 0 0 20px; color: var(--cc-muted); }
.cc-dark .cc-faq-item > p { color: var(--cc-muted-d); }

/* Packages */
.wp-block-group.cc-pkgs { gap: 24px; }
.cc-pkg {
	background: var(--cc-char);
	border: 1px solid var(--cc-line-d);
	border-radius: 6px;
	padding: 30px 26px;
}
.cc-pkg--feature { border-color: var(--cc-orange); }
.cc-pkg > * { margin: 0; }
.cc-pkg > * + * { margin-top: 14px; }
.cc-tier { font-family: var(--cc-head); font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--cc-teal); }
.cc-pkg p:not(.cc-tier) { color: var(--cc-muted-d); font-size: 16px; }
ul.cc-checks { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; font-size: 16px; }
ul.cc-checks li { padding-left: 26px; position: relative; margin: 0; }
ul.cc-checks li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 7px;
	width: 14px;
	height: 8px;
	border-left: 2px solid var(--cc-orange);
	border-bottom: 2px solid var(--cc-orange);
	transform: rotate(-45deg);
}
.cc-pkg .wp-block-buttons { margin-top: 20px; }
.cc-quote-note { margin-top: 30px; color: var(--cc-muted-d); font-size: 15px; }

/* Wrap levels */
.cc-levels { border-top: 1px solid var(--cc-line-l); margin-block: 24px 30px; }
.cc-level {
	display: grid;
	grid-template-columns: 140px 1fr;
	gap: 16px;
	padding-block: 16px;
	border-bottom: 1px solid var(--cc-line-l);
	align-items: baseline;
	margin: 0 !important;
}
.cc-level > * { margin: 0 !important; }
.cc-level h3 { font-size: 16px; }
.cc-level p { color: var(--cc-muted); }

/* Steps */
.wp-block-group.cc-steps { gap: 24px; }
.cc-step > * { margin: 0; }
.cc-step > * + * { margin-top: 10px; }
.cc-step__num {
	font-family: var(--cc-head);
	font-size: 15px;
	font-weight: 800;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: linear-gradient(135deg, var(--cc-red), var(--cc-orange));
	color: #fff;
}
.cc-step p:not(.cc-step__num) { color: var(--cc-muted); font-size: 16px; }

/* Why us */
.wp-block-group.cc-whys { gap: 24px; }
.cc-why { border-left: 3px solid var(--cc-teal); padding-left: 18px; }
.cc-why:nth-child(2) { border-color: var(--cc-blue); }
.cc-why:nth-child(3) { border-color: var(--cc-red); }
.cc-why:nth-child(4) { border-color: var(--cc-orange); }
.cc-why > * { margin: 0; }
.cc-why > * + * { margin-top: 6px; }
.cc-why p { color: var(--cc-muted-d); font-size: 16px; }

/* Contact + quote form */
.wp-block-columns.cc-contact { gap: 48px; }
.cc-info { display: grid; gap: 22px; margin-top: 32px; }
.cc-info > * { margin: 0 !important; }
.cc-info h4 { margin: 0 0 4px; font-size: 12px; color: var(--cc-muted); }
.cc-info p { margin: 0; font-size: 18px; }
.cc-info p + p { margin-top: 6px; }
.cc-info a { text-decoration: none; overflow-wrap: anywhere; color: inherit; }
.cc-info .cc-more { font-size: 15px; }
.cc-info .cc-more a { color: var(--cc-red); }

.cc-quote-form {
	background: #fff;
	border: 1px solid var(--cc-line-l);
	border-radius: 6px;
	padding: 30px;
	display: grid;
	gap: 16px;
	position: relative;
	color: var(--cc-ink);
}
.cc-row3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.cc-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.cc-quote-form label { display: grid; gap: 6px; font-size: 13px; font-weight: 600; color: var(--cc-muted); align-content: start; }
.cc-quote-form input,
.cc-quote-form select,
.cc-quote-form textarea {
	font: inherit;
	font-size: 16px;
	color: var(--cc-ink);
	background: var(--cc-paper);
	border: 1px solid var(--cc-line-l);
	border-radius: 4px;
	padding: 12px;
	width: 100%;
	box-sizing: border-box;
}
.cc-quote-form input:focus,
.cc-quote-form select:focus,
.cc-quote-form textarea:focus { outline: none; border-color: var(--cc-orange); background: #fff; }
.cc-quote-form textarea { min-height: 110px; resize: vertical; }
.cc-quote-form [aria-invalid="true"] { border-color: #b3261e; background: #fff6f5; }
.cc-field-error { color: #b3261e; font-size: 13px; font-weight: 600; }
.cc-form-alert { border-radius: 4px; padding: 12px 14px; font-size: 15px; font-weight: 600; background: #fdecea; color: #8c1d18; border: 1px solid #f4c7c3; }
.cc-form-alert--ok { background: #e7f5ee; color: #1b5e3f; border-color: #b9e0cb; }
.cc-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.cc-quote-form .wp-block-button { justify-self: start; }
.cc-quote-form button.wp-block-button__link { cursor: pointer; border: 2px solid transparent; }
.cc-formnote { margin: 0; font-size: 14px; color: var(--cc-muted); }
.cc-formnote a { color: var(--cc-muted); }

/* Gallery + before/after */
.cc-gallery.wp-block-gallery img { border-radius: 6px; }
.cc-gallery-preview .wp-block-buttons { margin-top: 36px; }
.cc-ba-pair { margin-block: 40px; }
.cc-ba__title { font-size: 17px; }
.wp-block-columns.cc-ba { gap: 20px; }
.cc-ba .wp-block-image { position: relative; margin: 0; }
.cc-ba .wp-block-image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 6px; }
.cc-ba .wp-block-image figcaption {
	position: absolute;
	top: 12px;
	left: 12px;
	margin: 0;
	padding: 6px 10px;
	border-radius: 4px;
	background: rgba(10, 11, 12, .82);
	color: #fff;
	font-family: var(--cc-head);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

/* Default page template (Privacy Policy, Thank You, new pages) */
.cc-page-content { padding-top: 56px; padding-bottom: 80px; }
.cc-draft-note { border: 2px dashed var(--cc-orange); border-radius: 6px; padding: 16px 20px; }
.cc-draft-note p { margin: 0; }

/* ---------- Footer ---------- */
.cc-footer { padding-top: 64px; font-size: 15.5px; }
.cc-footer a:not(.wp-element-button) { color: inherit; text-decoration: none; }
.cc-footer a:not(.wp-element-button):hover { color: #fff; }
.cc-footer .cc-more a { color: var(--cc-red); }
.cc-footer .cc-more a:hover { color: var(--cc-orange); }
.cc-footer h4 { margin: 0 0 14px; }
.cc-footer p { margin: 0 0 10px; }
.cc-footer .wp-block-column > * { margin-top: 0; }
.wp-block-columns.cc-footer__cols { gap: 40px; margin-bottom: 0; }
.cc-footer__logo img { width: 300px; max-width: 100%; }
.cc-footer__logo { margin-bottom: 14px; }
ul.cc-plain-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.cc-social { gap: 14px; margin-top: 18px; }
.cc-footer__copy { border-top: 1px solid var(--cc-line-d); padding-block: 18px; margin-top: 40px; font-size: 13.5px; }
.cc-footer__copy p { margin: 0; }

/* Fixed column counts for the section grids (like the original site): 3 or 4 on desktop, 2 on tablets, 1 on phones. */
.wp-block-group.is-layout-grid.cc-cards,
.wp-block-group.is-layout-grid.cc-pkgs,
.wp-block-group.is-layout-grid.cc-covs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.wp-block-group.is-layout-grid.cc-steps,
.wp-block-group.is-layout-grid.cc-whys { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wp-block-group.is-layout-grid.cc-finishes,
.cc-cards-2 .wp-block-group.is-layout-grid.cc-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 900px) {
	.wp-block-group.is-layout-grid.cc-cards,
	.wp-block-group.is-layout-grid.cc-pkgs,
	.wp-block-group.is-layout-grid.cc-covs,
	.wp-block-group.is-layout-grid.cc-steps,
	.wp-block-group.is-layout-grid.cc-whys { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.wp-block-group.is-layout-grid.cc-cards,
	.wp-block-group.is-layout-grid.cc-pkgs,
	.wp-block-group.is-layout-grid.cc-covs,
	.wp-block-group.is-layout-grid.cc-steps,
	.wp-block-group.is-layout-grid.cc-whys,
	.wp-block-group.is-layout-grid.cc-finishes,
	.cc-cards-2 .wp-block-group.is-layout-grid.cc-cards { grid-template-columns: minmax(0, 1fr); }
}

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
	.cc-section { padding-top: 64px; padding-bottom: 64px; }
	.cc-hero .wp-block-cover__inner-container { padding-block: 80px; }
	.cc-hero .wp-block-cover__background { background: linear-gradient(180deg, rgba(10, 11, 12, .55), rgba(10, 11, 12, .9)) !important; opacity: 1; }
	.cc-band .wp-block-cover__inner-container { padding-block: 64px; }
}
@media (max-width: 600px) {
	.wp-block-cover.cc-hero { display: block; }
	.wp-block-cover.cc-hero img.wp-block-cover__image-background {
		position: static;
		display: block;
		width: 100%;
		height: auto;
		aspect-ratio: 3 / 2;
	}
	.cc-hero .wp-block-cover__background { display: none; }
	.cc-hero .wp-block-cover__inner-container,
	.cc-hero--page .wp-block-cover__inner-container { padding: 32px 20px 48px; }
	.cc-row3, .cc-row2 { grid-template-columns: 1fr; }
	.cc-quote-form { padding: 22px; }
	.cc-level { grid-template-columns: 1fr; gap: 4px; }
	.cc-titleband { padding-top: 48px; padding-bottom: 44px; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	* { transition: none !important; }
}
