/* Claire's School Solutions design system, 2026 redesign (Onward).
   Light pink bands, plum text, berry for every call to action. Prefix: c26-.
   Divi sections and rows that carry c26 classes are normalised here so page layout comes from this file. */

:root {
	--c26-plum: #3B1030;
	--c26-berry: #A3245F;
	--c26-berry-dk: #8A1C50;
	--c26-petal: #ED7EAF;
	--c26-blush: #FAEDF2;
	--c26-soft: #FDF6F9;
	--c26-line: #F0DCE5;
	--c26-line2: #E6CFDA;
	--c26-ink: #2B1B26;
	--c26-body: #4E3C48;
	--c26-muted: #6E5A67;
	--c26-muted2: #5E4F59;
	--c26-cream: #FFF1DC;
	--c26-cream-ink: #6B3E00;
	--c26-error: #B42318;
	--c26-fh: 'Poppins', 'Poppins Fallback', system-ui, sans-serif;
	--c26-fb: 'Figtree', 'Figtree Fallback', system-ui, sans-serif;
	--c26-shadow: 0 18px 40px -30px rgba(59, 16, 48, .45);
	--c26-shadow-lg: 0 30px 60px -36px rgba(59, 16, 48, .4);
}

/* ---------- Fonts (self-hosted) ---------- */
@font-face{font-family:'Figtree';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/figtree.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/poppins-500.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/poppins-600.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/poppins-700.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* Fallback faces sized to match Poppins and Figtree (measured from the font files), so text does not reflow and push the page
   about when the real fonts arrive. Divi's own font settings (body: Poppins 500, headings: Open Sans) get the same fallbacks. */
@font-face{font-family:'Poppins Fallback';font-weight:400 500;src:local('Arial'),local('ArialMT');size-adjust:111.55%;ascent-override:94.13%;descent-override:31.38%;line-gap-override:8.96%}
@font-face{font-family:'Poppins Fallback';font-weight:600;src:local('Arial Bold'),local('Arial-BoldMT');size-adjust:104.89%;ascent-override:100.11%;descent-override:33.37%;line-gap-override:9.53%}
@font-face{font-family:'Poppins Fallback';font-weight:700 900;src:local('Arial Bold'),local('Arial-BoldMT');size-adjust:105.83%;ascent-override:99.22%;descent-override:33.07%;line-gap-override:9.45%}
@font-face{font-family:'Figtree Fallback';font-weight:300 800;src:local('Arial'),local('ArialMT');size-adjust:99.1%;ascent-override:95.87%;descent-override:25.23%;line-gap-override:0%}
html:root { --et_global_body_font: 'Poppins', 'Poppins Fallback', system-ui, sans-serif; --et_global_heading_font: 'Open Sans', 'Figtree Fallback', system-ui, sans-serif; }

/* Icon set (generated) */
.c26-i--alert{-webkit-mask-image:url(../img/icons/alert.svg);mask-image:url(../img/icons/alert.svg)}
.c26-i--arrow{-webkit-mask-image:url(../img/icons/arrow.svg);mask-image:url(../img/icons/arrow.svg)}
.c26-i--bell{-webkit-mask-image:url(../img/icons/bell.svg);mask-image:url(../img/icons/bell.svg)}
.c26-i--book{-webkit-mask-image:url(../img/icons/book.svg);mask-image:url(../img/icons/book.svg)}
.c26-i--cal{-webkit-mask-image:url(../img/icons/cal.svg);mask-image:url(../img/icons/cal.svg)}
.c26-i--camera{-webkit-mask-image:url(../img/icons/camera.svg);mask-image:url(../img/icons/camera.svg)}
.c26-i--cap{-webkit-mask-image:url(../img/icons/cap.svg);mask-image:url(../img/icons/cap.svg)}
.c26-i--check{-webkit-mask-image:url(../img/icons/check.svg);mask-image:url(../img/icons/check.svg)}
.c26-i--clock{-webkit-mask-image:url(../img/icons/clock.svg);mask-image:url(../img/icons/clock.svg)}
.c26-i--close{-webkit-mask-image:url(../img/icons/close.svg);mask-image:url(../img/icons/close.svg)}
.c26-i--doc{-webkit-mask-image:url(../img/icons/doc.svg);mask-image:url(../img/icons/doc.svg)}
.c26-i--download{-webkit-mask-image:url(../img/icons/download.svg);mask-image:url(../img/icons/download.svg)}
.c26-i--gift{-webkit-mask-image:url(../img/icons/gift.svg);mask-image:url(../img/icons/gift.svg)}
.c26-i--heart{-webkit-mask-image:url(../img/icons/heart.svg);mask-image:url(../img/icons/heart.svg)}
.c26-i--insta{-webkit-mask-image:url(../img/icons/insta.svg);mask-image:url(../img/icons/insta.svg)}
.c26-i--link{-webkit-mask-image:url(../img/icons/link.svg);mask-image:url(../img/icons/link.svg)}
.c26-i--mail{-webkit-mask-image:url(../img/icons/mail.svg);mask-image:url(../img/icons/mail.svg)}
.c26-i--map{-webkit-mask-image:url(../img/icons/map.svg);mask-image:url(../img/icons/map.svg)}
.c26-i--menu{-webkit-mask-image:url(../img/icons/menu.svg);mask-image:url(../img/icons/menu.svg)}
.c26-i--phone{-webkit-mask-image:url(../img/icons/phone.svg);mask-image:url(../img/icons/phone.svg)}
.c26-i--pin{-webkit-mask-image:url(../img/icons/pin.svg);mask-image:url(../img/icons/pin.svg)}
.c26-i--plus{-webkit-mask-image:url(../img/icons/plus.svg);mask-image:url(../img/icons/plus.svg)}
.c26-i--school{-webkit-mask-image:url(../img/icons/school.svg);mask-image:url(../img/icons/school.svg)}
.c26-i--search{-webkit-mask-image:url(../img/icons/search.svg);mask-image:url(../img/icons/search.svg)}
.c26-i--shield{-webkit-mask-image:url(../img/icons/shield.svg);mask-image:url(../img/icons/shield.svg)}
.c26-i--users{-webkit-mask-image:url(../img/icons/users.svg);mask-image:url(../img/icons/users.svg)}

/* ---------- Base ---------- */
body { font-family: var(--c26-fb); color: var(--c26-ink); font-size: 17px; line-height: 1.6; -webkit-font-smoothing: antialiased; background: #fff; }
body, #page-container { overflow-x: clip; }
#page-container { padding-top: 0 !important; margin-top: 0 !important; }
#main-content { background: #fff; }
#main-content .container::before { display: none; }
h1, h2, h3, h4, h5, h6 { font-family: var(--c26-fh); color: var(--c26-plum); }
a { color: var(--c26-berry); }
a:hover { color: var(--c26-plum); }
::selection { background: var(--c26-petal); color: #fff; }
:focus-visible { outline: 3px solid var(--c26-petal); outline-offset: 2px; }
.c26-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.et_pb_scroll_top { display: none !important; }

/* ---------- Divi section and row normalisation ---------- */
.et_pb_section.c26-sec { padding: 96px 0; background-color: transparent; position: relative; }
.et_pb_section.c26-sec.c26-sec--blush { background-color: var(--c26-blush) !important; }
.et_pb_section.c26-sec.c26-sec--soft { background-color: var(--c26-soft) !important; }
.et_pb_section.c26-sec.c26-sec--white { background-color: #fff !important; }
.et_pb_section.c26-sec.c26-sec--line { border-top: 1px solid var(--c26-line); border-bottom: 1px solid var(--c26-line); }
.et_pb_section.c26-sec.c26-sec--tight { padding: 56px 0; }
.et_pb_section.c26-sec.c26-sec--strip { padding: 26px 0; }
.et_pb_section.c26-sec.c26-sec--top0 { padding-top: 0; }
.et_pb_section.c26-sec.c26-sec--bot0 { padding-bottom: 0; }
.et_pb_section.c26-sec.c26-sec--hero { padding: 72px 0 88px; overflow: hidden; }
.et_pb_section.c26-sec.c26-sec--page { padding: 60px 0 56px; overflow: hidden; }
.et_pb_section.c26-sec > .et_pb_row, .et_pb_row.c26-row {
	width: 100% !important; max-width: 1240px !important; margin: 0 auto !important; padding: 0 32px !important;
	box-sizing: border-box; position: relative; z-index: 1;
}
.et_pb_section.c26-sec .et_pb_row::after { display: none; }
.et_pb_section.c26-sec .et_pb_column { width: 100% !important; margin: 0 !important; float: none !important; }
.et_pb_section.c26-sec .et_pb_module, .et_pb_section.c26-sec .et_pb_text { margin: 0 !important; }
.c26 p, .c26-sec p, .c26-header p, .c26-footer p { padding-bottom: 0; margin: 0; }
.c26-sec ul.c26-plain, .c26-sec ol.c26-plain { list-style: none; margin: 0; padding: 0; }
.c26-sec blockquote { border: 0; margin: 0; padding: 0; font-style: normal; }
.c26-sec img { max-width: 100%; height: auto; }
.c26-sec h1, .c26-sec h2, .c26-sec h3, .c26-sec h4 { padding-bottom: 0; }

/* ---------- Layout helpers ---------- */
.c26-wrap { max-width: 1240px; margin: 0 auto; padding: 0 32px; box-sizing: border-box; }
.c26-stack { display: flex; flex-direction: column; gap: 18px; }
.c26-stack--lg { gap: 26px; }
.c26-split { display: flex; flex-wrap: wrap; gap: 48px 64px; align-items: center; }
.c26-split > * { flex: 1 1 420px; min-width: 0; }
.c26-split--top { align-items: flex-start; }
.c26-split > .c26-wide { flex: 1.5 1 540px; }
.c26-split > .c26-narrow { flex: 1 1 300px; }
.c26-grid { display: grid; gap: 22px; grid-template-columns: repeat(auto-fit, minmax(var(--min, 260px), 1fr)); }
.c26-grid--sm { --min: 200px; }
.c26-grid--md { --min: 300px; }
.c26-grid--lg { --min: 330px; }
.c26-center { text-align: center; }
.c26-mt { margin-top: 28px !important; }

/* ---------- Type ---------- */
.c26-eyebrow { display: inline-flex; align-items: center; gap: 10px; font: 600 13px/1.2 var(--c26-fh); letter-spacing: .12em; text-transform: uppercase; color: var(--c26-berry); margin: 0 0 14px !important; }
.c26-eyebrow::before { content: ""; width: 18px; height: 18px; flex: 0 0 auto; background: url(../img/daisy.svg) center/contain no-repeat; }
.c26-sec h1, .c26-h1 { font: 700 clamp(38px, 5vw, 64px)/1.04 var(--c26-fh); letter-spacing: -.025em; color: var(--c26-plum); margin: 0; }
.c26-sec h1.c26-h1--md, .c26-h1--md { font-size: clamp(36px, 4.4vw, 56px); line-height: 1.06; }
.c26-sec h2, .c26-h2 { font: 600 clamp(30px, 3.4vw, 44px)/1.12 var(--c26-fh); letter-spacing: -.015em; color: var(--c26-plum); margin: 0; }
.c26-sec h2.c26-h2--sm { font-size: clamp(26px, 2.8vw, 34px); line-height: 1.18; }
.c26-sec h3 { font: 600 21px/1.25 var(--c26-fh); color: var(--c26-plum); margin: 0; }
.c26-dot { color: var(--c26-petal); }
.c26-lead { font-size: 20px; line-height: 1.6; color: var(--c26-body); max-width: 600px; }
.c26-sec p { font-size: 17px; line-height: 1.65; color: var(--c26-body); }
.c26-sec p.c26-lead { font-size: 20px; }
.c26-small, .c26-sec p.c26-small { font-size: 14px; line-height: 1.5; color: var(--c26-muted); }
.c26-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px 40px; margin-bottom: 40px; }
.c26-head > div { max-width: 680px; }
.c26-head > p { max-width: 440px; font-size: 18px; }
.c26-head--center { flex-direction: column; align-items: center; text-align: center; }
.c26-head--center > div { max-width: 680px; }
.c26-head h2 + p { margin-top: 12px; }
.c26-crumbs { font-size: 14px; color: var(--c26-muted); margin: 0 0 16px !important; }
.c26-crumbs a { color: var(--c26-berry); text-decoration: underline; text-decoration-color: var(--c26-petal); text-underline-offset: 3px; }
.c26-crumbs a:hover { text-decoration-color: currentColor; }

/* ---------- Icons (CSS masks, colour follows currentColor) ---------- */
.c26-i { display: inline-block; width: 20px; height: 20px; flex: 0 0 auto; background-color: currentColor; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; vertical-align: middle; }
.c26-i--sm { width: 16px; height: 16px; }
.c26-i--lg { width: 26px; height: 26px; }
.c26-ibox { width: 46px; height: 46px; border-radius: 14px; background: var(--c26-blush); color: var(--c26-berry); display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }
.c26-ibox--white { background: #fff; }
.c26-ibox--sm { width: 40px; height: 40px; border-radius: 12px; }

/* ---------- Buttons and links ---------- */
.c26-btns { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
a.c26-btn, button.c26-btn, .c26-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 54px; padding: 0 26px; box-sizing: border-box;
	border-radius: 999px; border: 2px solid var(--c26-berry); background: var(--c26-berry); color: #fff !important;
	font: 600 16px/1 var(--c26-fh); text-decoration: none; cursor: pointer; transition: background .2s, border-color .2s, color .2s, transform .2s;
}
a.c26-btn:hover, button.c26-btn:hover { background: var(--c26-berry-dk); border-color: var(--c26-berry-dk); color: #fff !important; }
a.c26-btn--outline, .c26-btn--outline { background: transparent; border-color: var(--c26-plum); color: var(--c26-plum) !important; }
a.c26-btn--outline:hover { background: var(--c26-plum); border-color: var(--c26-plum); color: #fff !important; }
a.c26-btn--soft, .c26-btn--soft { background: var(--c26-blush); border-color: var(--c26-blush); color: var(--c26-plum) !important; }
a.c26-btn--soft:hover { background: var(--c26-line); border-color: var(--c26-line); color: var(--c26-plum) !important; }
a.c26-btn--white, .c26-btn--white { background: #fff; border-color: var(--c26-line); color: var(--c26-plum) !important; }
a.c26-btn--white:hover { border-color: var(--c26-berry); color: var(--c26-berry) !important; background: #fff; }
.c26-btn--sm { min-height: 46px !important; padding: 0 20px !important; font-size: 15px !important; }
.c26-btn--block { width: 100%; }
.c26-btn--arrow::after, .c26-more::after { content: ""; width: 18px; height: 18px; background: currentColor; -webkit-mask: url(../img/icons/arrow.svg) center/contain no-repeat; mask: url(../img/icons/arrow.svg) center/contain no-repeat; transition: transform .2s; }
.c26-btn--arrow:hover::after, .c26-more:hover::after, a:hover > .c26-more::after { transform: translateX(3px); }
.c26-more { display: inline-flex; align-items: center; gap: 8px; font: 600 15px var(--c26-fh); color: var(--c26-berry); text-decoration: none; }
.c26-more::after { width: 16px; height: 16px; }
.c26-link { font: 600 15px var(--c26-fh); color: var(--c26-berry); text-decoration: underline; text-decoration-color: var(--c26-petal); text-decoration-thickness: 2px; text-underline-offset: 5px; }

/* ---------- Chips ---------- */
.c26-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.c26-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: var(--c26-blush); color: var(--c26-plum); font: 600 13px/1.2 var(--c26-fb); white-space: nowrap; }
.c26-chip--berry { background: var(--c26-berry); color: #fff; }
.c26-chip--white { background: #fff; color: var(--c26-berry); }
.c26-chip--cream { background: var(--c26-cream); color: var(--c26-cream-ink); }
.c26-chip--soft { background: var(--c26-soft); }

/* ---------- Cards ---------- */
.c26-card { background: #fff; border: 1px solid var(--c26-line); border-radius: 26px; padding: 28px; box-shadow: var(--c26-shadow); display: flex; flex-direction: column; gap: 14px; box-sizing: border-box; min-width: 0; }
.c26-card--blush { background: var(--c26-blush); border-color: transparent; box-shadow: none; }
.c26-card--soft { background: var(--c26-soft); box-shadow: none; }
.c26-card--flat { box-shadow: none; }
.c26-card--lg { padding: 40px; border-radius: 30px; }
.c26-card--xl { padding: 48px; border-radius: 32px; }
a.c26-card { text-decoration: none; color: inherit; transition: transform .2s, box-shadow .2s, border-color .2s; }
a.c26-card:hover { transform: translateY(-3px); box-shadow: 0 26px 50px -30px rgba(59, 16, 48, .5); border-color: var(--c26-line2); }
.c26-card h3 { font-size: 21px; }
.c26-card p { font-size: 16px; line-height: 1.55; }
.c26-card .c26-more, .c26-card > .c26-btns:last-child { margin-top: auto; }
.c26-num { font: 700 15px var(--c26-fh); color: var(--c26-petal); }
.c26-meta { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; color: var(--c26-body); }
.c26-meta .c26-i { color: var(--c26-berry); width: 18px; height: 18px; }
.c26-foot { margin-top: auto; padding-top: 12px; border-top: 1px solid var(--c26-line); }

/* ---------- Home hero ---------- */
.et_pb_section.c26-hero::before { content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: 44%; background: var(--c26-blush); border-radius: 0 0 0 240px; }
.c26-doors { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 8px; }
.c26-door { flex: 1 1 250px; display: flex; flex-direction: column; gap: 10px; padding: 28px; border-radius: 24px; background: #fff; border: 2px solid var(--c26-line); color: var(--c26-plum); text-decoration: none; box-shadow: 0 20px 40px -28px rgba(59, 16, 48, .35); transition: transform .2s, border-color .2s; }
.c26-door:hover { transform: translateY(-3px); border-color: var(--c26-berry); color: var(--c26-plum); }
.c26-door--blush { background: var(--c26-blush); }
.c26-door--blush .c26-ibox { background: #fff; }
.c26-door__top { display: flex; align-items: center; justify-content: space-between; color: var(--c26-berry); }
.c26-door small { font-size: 14px; color: var(--c26-muted2); }
.c26-door strong { font: 600 22px/1.2 var(--c26-fh); }
.c26-door span { font-size: 15px; color: var(--c26-muted2); }
.c26-art { position: relative; display: flex; justify-content: center; padding: 20px 0; }
.c26-arch { position: relative; width: 380px; max-width: 100%; height: 460px; border-radius: 999px 999px 32px 32px; background: #fff; overflow: hidden; box-shadow: 0 40px 80px -40px rgba(59, 16, 48, .35); display: flex; align-items: center; justify-content: center; }
.c26-arch img.c26-flower { width: 330px; max-width: 86%; transform: rotate(-8deg); }
.c26-arch--photo { align-items: flex-end; }
.c26-arch--photo img { width: 320px; height: 320px; object-fit: cover; }
.c26-float { position: absolute; display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-radius: 18px; background: #fff; box-shadow: 0 18px 40px -18px rgba(59, 16, 48, .45); max-width: 250px; font-size: 14px; line-height: 1.4; color: var(--c26-plum); z-index: 2; }
.c26-float--tl { left: 0; top: 64px; }
.c26-float--br { right: 0; bottom: 56px; }
.c26-float .c26-ibox { width: 40px; height: 40px; border-radius: 12px; }
.c26-pill { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 999px; background: #fff; box-shadow: 0 14px 30px -16px rgba(59, 16, 48, .5); font-size: 14px; font-weight: 600; color: var(--c26-plum); }
.c26-pill::before { content: ""; width: 16px; height: 16px; background: url(../img/daisy.svg) center/contain no-repeat; }

/* ---------- Page heroes (inner pages) ---------- */
.et_pb_section.c26-pagehero::after { content: ""; position: absolute; right: -70px; top: -40px; width: 260px; height: 520px; background: url(../img/flower-half-360.webp) right top/contain no-repeat; transform: scaleX(-1); opacity: .45; pointer-events: none; }
.c26-pagehero .c26-lead { max-width: 660px; }
.c26-searchbar { display: flex; flex-wrap: wrap; gap: 10px; padding: 10px; border-radius: 24px; background: #fff; box-shadow: var(--c26-shadow-lg); margin-top: 22px; max-width: 980px; }
.c26-searchbar__field { flex: 2 1 260px; display: flex; align-items: center; gap: 10px; padding: 0 16px; min-height: 56px; border-radius: 16px; background: var(--c26-soft); color: var(--c26-muted); }
.c26-searchbar input, .c26-searchbar select { flex: 1; min-width: 0; border: 0 !important; outline: none; background: transparent !important; font: 16px var(--c26-fb); color: var(--c26-ink); padding: 0 !important; box-shadow: none !important; }
.c26-searchbar button { min-height: 56px; border-radius: 16px; }

/* ---------- Trust strip ---------- */
ul.c26-trust { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 18px 32px; list-style: none; margin: 0; padding: 0; }
.c26-trust li { display: flex; align-items: center; gap: 12px; font-size: 15px; line-height: 1.35; color: var(--c26-plum); }
.c26-trust li::before { content: ""; width: 26px; height: 26px; flex: 0 0 auto; background: url(../img/daisy.svg) center/contain no-repeat; }
.c26-trust strong { font-family: var(--c26-fh); font-weight: 600; }

/* ---------- Lists ---------- */
ul.c26-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px 24px; list-style: none; margin: 0; padding: 0; }
ul.c26-list--1 { grid-template-columns: 1fr; }
.c26-list li { display: flex; gap: 10px; align-items: flex-start; font-size: 16px; line-height: 1.5; font-weight: 500; color: var(--c26-plum); padding: 0; }
.c26-list li::before { content: ""; width: 18px; height: 18px; margin-top: 3px; flex: 0 0 auto; background: url(../img/daisy.svg) center/contain no-repeat; }
.c26-list--ticks li { font-weight: 400; color: var(--c26-ink); font-size: 17px; }
.c26-list--ticks li::before { background: var(--c26-berry); -webkit-mask: url(../img/icons/check.svg) center/contain no-repeat; mask: url(../img/icons/check.svg) center/contain no-repeat; }
.c26-list--body li { font-weight: 400; color: var(--c26-ink); font-size: 17px; }

/* ---------- Steps ---------- */
.c26-step { gap: 12px; }
.c26-stepnum { width: 40px; height: 40px; border-radius: 999px; background: var(--c26-berry); color: #fff; display: inline-flex; align-items: center; justify-content: center; font: 700 16px var(--c26-fh); flex: 0 0 auto; }
.c26-stepnum--arch { width: 52px; height: 52px; border-radius: 999px 999px 14px 14px; font-size: 18px; }
ol.c26-steplist { list-style: none; margin: 0; padding: 0; }
.c26-steplist li { display: flex; gap: 22px; padding: 26px 0; border-bottom: 1px solid var(--c26-line); }
.c26-steplist li:first-child { padding-top: 0; }
.c26-steplist strong { display: block; font: 600 21px var(--c26-fh); color: var(--c26-plum); margin-bottom: 6px; }
.c26-steplist span.c26-steptext { font-size: 16px; line-height: 1.6; color: var(--c26-body); }
.c26-faces { display: flex; align-items: flex-end; margin-top: 6px; }
.c26-faces img { width: 120px; height: 120px; object-fit: cover; }
.c26-faces img + img { margin-left: -28px; }

/* ---------- Placeholders (photos still to come) ---------- */
.c26-ph { position: relative; width: 420px; max-width: 100%; height: 500px; margin: 0 auto; border-radius: 999px 999px 32px 32px; background: var(--c26-blush); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center; color: var(--c26-muted); font-size: 14px; padding: 24px; box-sizing: border-box; }
.c26-ph::before { content: ""; width: 34px; height: 34px; background: var(--c26-berry); -webkit-mask: url(../img/icons/camera.svg) center/contain no-repeat; mask: url(../img/icons/camera.svg) center/contain no-repeat; }
.c26-ph b { color: var(--c26-plum); }
.c26-ph--short { height: 300px; border-radius: 28px; width: 100%; }
.c26-photo { position: relative; width: 420px; max-width: 100%; height: 500px; margin: 0 auto; border-radius: 999px 999px 32px 32px; overflow: hidden; background: var(--c26-blush); }
.c26-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.c26-photo figcaption { position: absolute; left: 16px; right: 16px; bottom: 16px; padding: 10px 14px; border-radius: 14px; background: rgba(255, 255, 255, .92); color: var(--c26-plum); font-size: 14px; font-weight: 600; text-align: center; }
.c26-photo--short { width: 100%; height: 300px; border-radius: 28px; }
.c26-photo--flat { width: 100%; height: 260px; border-radius: 0; }
.c26-ph--map::before { -webkit-mask-image: url(../img/icons/map.svg); mask-image: url(../img/icons/map.svg); }

/* ---------- Reviews ---------- */
figure.c26-review { margin: 0; display: flex; flex-direction: column; gap: 16px; padding: 30px; border-radius: 26px; background: #fff; box-shadow: var(--c26-shadow); }
.c26-review::before { content: "\201C"; font: 700 64px/.5 var(--c26-fh); color: var(--c26-petal); height: 30px; }
.c26-review blockquote { font-size: 18px; line-height: 1.6; color: var(--c26-ink); }
.c26-review figcaption { margin-top: auto; display: flex; flex-direction: column; gap: 2px; }
.c26-review figcaption b { font: 600 16px var(--c26-fh); color: var(--c26-plum); }
.c26-review figcaption span { font-size: 14px; color: var(--c26-muted); }
.c26-review--feature { padding: 48px; border-radius: 32px; background: var(--c26-blush); box-shadow: none; }
.c26-review--feature::before { font-size: 88px; height: 40px; }
.c26-review--feature blockquote { font: 500 clamp(21px, 2.3vw, 28px)/1.42 var(--c26-fh); color: var(--c26-plum); }

/* ---------- Team ---------- */
.c26-member { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; }
.c26-member__arch { width: 100%; max-width: 210px; height: 230px; border-radius: 999px 999px 26px 26px; background: var(--c26-blush); overflow: hidden; display: flex; align-items: flex-end; justify-content: center; }
.c26-member__arch img { width: 200px; height: 200px; object-fit: cover; }
.c26-member h3 { font-size: 19px; margin-top: 10px; }
.c26-role { font-size: 14px; color: var(--c26-berry); font-weight: 600; }
.c26-sec .c26-member p { font-size: 14px; line-height: 1.5; color: var(--c26-muted); }
.c26-person { display: flex; align-items: center; gap: 14px; padding: 20px 22px; border-radius: 22px; background: var(--c26-blush); }
.c26-person img { width: 64px; height: 64px; border-radius: 999px; background: #fff; object-fit: cover; flex: 0 0 auto; }
.c26-person span { font-size: 15px; line-height: 1.5; color: var(--c26-body); }
.c26-person b { font-family: var(--c26-fh); color: var(--c26-plum); }

/* ---------- Post cards ---------- */
a.c26-post { display: flex; flex-direction: column; border-radius: 26px; overflow: hidden; background: #fff; border: 1px solid var(--c26-line); text-decoration: none; box-shadow: var(--c26-shadow); transition: transform .2s, box-shadow .2s; }
a.c26-post:hover { transform: translateY(-3px); box-shadow: 0 26px 50px -30px rgba(59, 16, 48, .5); }
.c26-post__thumb { position: relative; display: block; height: 190px; background: var(--c26-blush) url(../img/pattern-light-v2.svg) center/cover; overflow: hidden; }
.c26-post__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.c26-post__thumb--alt { background-color: #F6E4EC; }
.c26-post__thumb--soft { background-color: var(--c26-soft); }
.c26-post__cat { position: absolute; left: 18px; bottom: 16px; padding: 6px 12px; border-radius: 999px; background: #fff; font: 600 13px var(--c26-fb); color: var(--c26-berry); }
.c26-post__body { padding: 22px 26px 26px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.c26-post__title { font: 600 20px/1.3 var(--c26-fh); color: var(--c26-plum); }
.c26-post__date { font-size: 14px; color: var(--c26-muted); margin-top: auto; }
.c26-feature { display: flex; flex-wrap: wrap; border-radius: 32px; overflow: hidden; background: #fff; border: 1px solid var(--c26-line); text-decoration: none; box-shadow: var(--c26-shadow-lg); }
.c26-feature .c26-post__thumb { flex: 1 1 440px; height: auto; min-height: 340px; }
.c26-feature__body { flex: 1 1 440px; padding: 48px; display: flex; flex-direction: column; gap: 16px; }
.c26-feature__title { font: 600 clamp(26px, 2.8vw, 36px)/1.2 var(--c26-fh); color: var(--c26-plum); }
.c26-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.c26-tab { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; border: 1px solid var(--c26-line2); background: #fff; color: var(--c26-plum); font: 600 15px var(--c26-fb); text-decoration: none; }
.c26-tab:hover { border-color: var(--c26-berry); color: var(--c26-berry); }
.c26-tab.is-current { background: var(--c26-berry); border-color: var(--c26-berry); color: #fff; }

/* ---------- Callouts and boxes ---------- */
.c26-callout { display: flex; gap: 18px; align-items: flex-start; padding: 24px 26px; border-radius: 22px; background: var(--c26-blush); color: var(--c26-plum); }
.c26-callout .c26-i { color: var(--c26-berry); width: 26px; height: 26px; margin-top: 2px; }
.c26-callout--cream { background: var(--c26-cream); color: #4A2B00; }
.c26-callout--cream .c26-i { color: #4A2B00; }
.c26-callout--line { background: var(--c26-soft); border: 1px solid var(--c26-line); }
.c26-sec .c26-callout p { font-size: 16px; line-height: 1.6; color: inherit; }
.c26-stat { font: 700 clamp(56px, 7vw, 84px)/1 var(--c26-fh); letter-spacing: -.03em; color: var(--c26-berry); }
.c26-rowlink { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; border-radius: 16px; background: #fff; border: 1px solid var(--c26-line); color: var(--c26-plum); text-decoration: none; font-weight: 600; }
.c26-rowlink::after { content: ""; width: 18px; height: 18px; flex: 0 0 auto; background: var(--c26-berry); -webkit-mask: url(../img/icons/arrow.svg) center/contain no-repeat; mask: url(../img/icons/arrow.svg) center/contain no-repeat; }
.c26-rowlink:hover { border-color: var(--c26-berry); color: var(--c26-berry); }
.c26-rowlink small { display: block; font-weight: 400; font-size: 14px; color: var(--c26-muted); }

/* ---------- FAQs (native details, no script) ---------- */
.c26-faqs { display: flex; flex-direction: column; gap: 12px; }
details.c26-faq { border-radius: 20px; background: #fff; border: 1px solid var(--c26-line); overflow: hidden; }
.c26-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; padding: 18px 22px; cursor: pointer; font: 600 18px/1.35 var(--c26-fh); color: var(--c26-plum); list-style: none; }
.c26-faq summary::-webkit-details-marker { display: none; }
.c26-faq summary::after { content: ""; width: 32px; height: 32px; flex: 0 0 auto; border-radius: 999px; background: var(--c26-blush) url(../img/icons/plus-berry.svg) center/16px no-repeat; transition: transform .2s; }
.c26-faq[open] summary::after { transform: rotate(45deg); }
.c26-faq__a { padding: 0 22px 22px; }
.c26-sec .c26-faq__a p { font-size: 16px; }

/* ---------- Side navigation and prose (information pages) ---------- */
.c26-sidenav { padding: 22px; border-radius: 24px; border: 1px solid var(--c26-line); display: flex; flex-direction: column; gap: 2px; background: #fff; }
.c26-sidenav__h { padding: 0 12px 8px; font: 600 13px var(--c26-fh); letter-spacing: .12em; text-transform: uppercase; color: var(--c26-berry); }
.c26-sidenav__h ~ .c26-sidenav__h { padding-top: 18px; }
.c26-sidenav a { display: block; padding: 10px 12px; border-radius: 12px; color: var(--c26-plum); text-decoration: none; font-size: 15px; border-left: 3px solid transparent; }
.c26-sidenav a:hover { background: var(--c26-soft); }
.c26-sidenav a.is-current { background: var(--c26-blush); color: var(--c26-berry); font-weight: 700; border-left-color: var(--c26-petal); }
.c26-prose { max-width: 760px; }
.c26-prose > * + * { margin-top: 20px !important; }
.c26-sec .c26-prose h2 { font-size: 28px; line-height: 1.2; margin-top: 36px !important; }
.c26-sec .c26-prose p, .c26-sec .c26-prose li { font-size: 18px; line-height: 1.75; color: var(--c26-ink); }
.c26-sec .c26-prose p.c26-lead { font-size: 22px; line-height: 1.6; color: var(--c26-plum); }
.c26-prose ul:not([class]) { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.c26-prose ul:not([class]) li { position: relative; padding: 0 0 0 32px; }
.c26-prose ul:not([class]) li::before { content: ""; position: absolute; left: 0; top: 6px; width: 20px; height: 20px; background: url(../img/daisy.svg) center/contain no-repeat; }
.c26-prose ul:not([class]) li > * + * { margin-top: 8px !important; }
.c26-prose a { overflow-wrap: anywhere; }
.c26-meta-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.c26-meta-chips span { padding: 6px 12px; border-radius: 999px; background: #F3EEF1; font-size: 14px; color: var(--c26-muted); }
.c26-doclink { display: flex; align-items: center; gap: 16px; padding: 20px 22px; border-radius: 20px; border: 1px solid var(--c26-line); background: #fff; color: var(--c26-plum); text-decoration: none; }
.c26-doclink .c26-ibox { color: var(--c26-berry); }
.c26-doclink b { display: block; font: 600 17px var(--c26-fh); }
.c26-doclink small { display: block; font-size: 14px; color: var(--c26-muted); }
.c26-doclink em { margin-left: auto; font: 600 14px var(--c26-fh); font-style: normal; color: var(--c26-berry); }
.c26-doclink:hover { border-color: var(--c26-berry); }

/* ---------- Refer and newsletter ---------- */
.c26-refer { position: relative; overflow: hidden; padding: 40px; border-radius: 30px; background: var(--c26-blush); display: flex; flex-direction: column; gap: 14px; }
.c26-refer > * { position: relative; z-index: 1; }
.c26-refer img.c26-refer__flower { position: absolute; right: -56px; bottom: -56px; width: 200px; z-index: 0; }
.c26-sec .c26-refer h2 { font-size: 34px; line-height: 1.1; font-weight: 700; }
.c26-sec .c26-refer p { max-width: 360px; color: var(--c26-ink); }
.c26-form-card { padding: 40px; border-radius: 30px; background: #fff; border: 2px solid var(--c26-line); display: flex; flex-direction: column; gap: 16px; }
.c26-fields { display: flex; flex-wrap: wrap; gap: 12px; }
.c26-field { flex: 1 1 200px; display: flex; flex-direction: column; gap: 6px; }
.c26-field label { font-weight: 600; font-size: 14px; color: var(--c26-plum); }
.c26-field input, .c26-field select, .c26-field textarea {
	width: 100%; min-height: 50px; padding: 0 16px; border-radius: 14px; border: 1px solid var(--c26-line2); background: #fff;
	font: 16px var(--c26-fb); color: var(--c26-ink); box-sizing: border-box;
}
.c26-field textarea { padding: 14px 16px; }
.c26-field input:focus, .c26-field select:focus, .c26-field textarea:focus { outline: none; border-color: var(--c26-berry); box-shadow: 0 0 0 4px rgba(237, 126, 175, .3); }

/* ---------- Route cards (contact) ---------- */
.c26-route { display: flex; flex-direction: column; gap: 10px; padding: 28px; border-radius: 26px; background: #fff; border: 1px solid var(--c26-line); color: var(--c26-plum); text-decoration: none; }
.c26-route--blush { background: var(--c26-blush); border-color: transparent; }
.c26-route--blush .c26-ibox { background: #fff; }
.c26-route small { font-size: 14px; color: var(--c26-muted2); }
.c26-route strong { font: 700 26px/1.2 var(--c26-fh); }
.c26-route strong.c26-route__sm { font-size: 20px; font-weight: 600; line-height: 1.35; }
a.c26-route:hover { border-color: var(--c26-berry); color: var(--c26-plum); }

/* ---------- Header ---------- */
.c26-topbar { background: var(--c26-blush); border-bottom: 1px solid var(--c26-line); font-size: 14px; color: var(--c26-muted2); position: relative; z-index: 1000; }
.c26-topbar .c26-wrap { min-height: 46px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 28px; }
.c26-topbar__group { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 28px; }
.c26-topbar a { display: inline-flex; align-items: center; gap: 7px; color: var(--c26-plum); text-decoration: none; font-weight: 600; }
.c26-topbar a:hover { color: var(--c26-berry); }
.c26-topbar a.c26-topbar__muted { font-weight: 400; color: var(--c26-muted2); }
.c26-topbar .c26-i { width: 15px; height: 15px; color: var(--c26-berry); }
.c26-topbar .c26-lbl { font-weight: 400; color: var(--c26-muted2); }
.c26-header { background: #fff; border-bottom: 1px solid var(--c26-line); position: sticky; top: 0; z-index: 999; }
.admin-bar .c26-header { top: 32px; }
.c26-header .c26-wrap { min-height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 12px 40px; }
.c26-logo { display: inline-flex; align-items: center; gap: 12px; padding: 14px 0; text-decoration: none; }
.c26-logo img { width: 48px; height: 48px; }
.c26-logo__name { display: block; font: 600 20px/1.15 var(--c26-fh); letter-spacing: -.01em; color: var(--c26-plum); }
.c26-logo__sub { display: block; font-size: 13px; color: var(--c26-muted); }
.c26-nav ul { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; list-style: none; margin: 0; padding: 0; }
.c26-nav li { list-style: none; margin: 0; padding: 0; }
.c26-nav li > a { display: inline-flex; align-items: center; min-height: 48px; padding: 0 14px; font: 500 15px var(--c26-fh); color: var(--c26-plum); text-decoration: none; border-bottom: 2px solid transparent; box-sizing: border-box; }
.c26-nav li > a:hover { color: var(--c26-berry); }
.c26-nav .current-menu-item > a, .c26-nav .current_page_item > a, .c26-nav .current-menu-ancestor > a, .c26-nav .current-page-ancestor > a { color: var(--c26-berry); font-weight: 600; border-bottom-color: var(--c26-berry); }
.c26-nav .sub-menu { display: none; }
.c26-nav__extra { display: none; }
.c26-burger { display: none; width: 48px; height: 48px; border-radius: 14px; border: 0; background: var(--c26-blush); color: var(--c26-plum); align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.c26-burger .c26-i { width: 24px; height: 24px; }
.c26-header.is-open .c26-burger .c26-i--menu { display: none; }
.c26-burger .c26-i--close { display: none; }
.c26-header.is-open .c26-burger .c26-i--close { display: inline-block; }

/* Old Divi header pieces are replaced by the markup above. */
#main-header:not(.c26-header), #top-header:not(.c26-topbar), .et_header_style_centered .mobile_nav { display: none !important; }

/* ---------- Footer ---------- */
.c26-footer { background: var(--c26-blush); color: var(--c26-body); position: relative; overflow: hidden; font-size: 15px; }
.c26-footer::after { content: ""; position: absolute; right: -40px; bottom: -120px; width: 260px; height: 500px; background: url(../img/flower-half-360.webp) right bottom/contain no-repeat; transform: scaleX(-1); opacity: .5; pointer-events: none; }
.c26-footer .c26-wrap { position: relative; z-index: 1; padding-top: 72px; }
.c26-fgrid { display: flex; flex-wrap: wrap; gap: 48px 56px; }
.c26-fcol { flex: 1 1 160px; display: flex; flex-direction: column; gap: 12px; }
.c26-fcol--brand { flex: 1 1 300px; gap: 18px; }
.c26-fcol--contact { flex: 1 1 260px; line-height: 1.55; }
.c26-fh { font: 600 13px var(--c26-fh); letter-spacing: .12em; text-transform: uppercase; color: var(--c26-berry); }
.c26-footer a { color: var(--c26-plum); text-decoration: none; }
.c26-footer a:hover { color: var(--c26-berry); text-decoration: underline; }
.c26-footer .c26-logo { padding: 0; }
.c26-footer p { font-size: 16px; line-height: 1.6; max-width: 340px; }
.c26-ftel { font: 600 20px var(--c26-fh); }
.c26-fbar { margin-top: 52px; padding: 22px 0; border-top: 1px solid rgba(59, 16, 48, .1); display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; font-size: 14px; }
.c26-fbar + .c26-fbar { margin-top: 0; padding: 20px 0 28px; justify-content: space-between; font-size: 13px; }
.c26-fbar__links { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.c26-insta { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; }
.c26-insta .c26-i { color: var(--c26-berry); width: 22px; height: 22px; }

/* ---------- Vacancies (css-vacancies plugin) ---------- */
.c26-vgrid { display: flex; flex-wrap: wrap; gap: 32px; align-items: flex-start; }
.c26-filters { flex: 1 1 280px; min-width: 0; }
.c26-fsum { display: none; }
@media (max-width: 980px) {
	.c26-fsum { display: flex; align-items: center; justify-content: space-between; min-height: 54px; padding: 0 22px; border: 1px solid var(--c26-line2); border-radius: 999px; background: #fff; font: 600 16px var(--c26-fh); color: var(--c26-plum); cursor: pointer; list-style: none; }
	.c26-fsum::-webkit-details-marker { display: none; }
	.c26-fsum::after { content: "+"; font-size: 22px; color: var(--c26-berry); }
	.c26-fwrap[open] .c26-fsum { margin-bottom: 14px; }
	.c26-fwrap[open] .c26-fsum::after { content: "\2212"; }
}
.c26-results { flex: 3 1 600px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.c26-filterbox { padding: 26px; border-radius: 24px; background: #fff; border: 1px solid var(--c26-line); display: flex; flex-direction: column; gap: 20px; }
.c26-filterbox__top { display: flex; align-items: center; justify-content: space-between; font: 600 18px var(--c26-fh); color: var(--c26-plum); }
.c26-filterbox__top a { font: 700 14px var(--c26-fb); }
.c26-filterbox fieldset { border: 0; margin: 0; padding: 18px 0 0; border-top: 1px solid var(--c26-line); min-width: 0; }
.c26-filterbox fieldset:first-of-type { border-top: 0; padding-top: 0; }
.c26-filterbox legend { padding: 0; margin-bottom: 10px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--c26-muted); }
.c26-group { font: 600 14px var(--c26-fh); color: var(--c26-plum); padding: 6px 0 2px; }
label.c26-check { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 36px; font-size: 15px; color: var(--c26-plum); cursor: pointer; }
label.c26-check > span:first-child { display: inline-flex; align-items: center; gap: 10px; }
.c26-check input { width: 18px; height: 18px; margin: 0; accent-color: var(--c26-berry); }
.c26-count { font-size: 13px; color: var(--c26-muted); }
.c26-check.is-empty { color: var(--c26-muted); }
.c26-years { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
label.c26-yr { position: relative; cursor: pointer; }
.c26-yr input { position: absolute; opacity: 0; pointer-events: none; }
.c26-yr span { display: flex; align-items: center; justify-content: center; min-height: 40px; border-radius: 12px; border: 1px solid var(--c26-line2); background: #fff; font-size: 14px; font-weight: 500; color: var(--c26-plum); }
.c26-yr input:checked + span { border: 2px solid var(--c26-berry); background: var(--c26-soft); font-weight: 700; }
.c26-yr input:focus-visible + span { outline: 3px solid var(--c26-petal); outline-offset: 2px; }
.c26-ectbox { display: flex; align-items: center; gap: 10px; min-height: 44px; margin-top: 8px; padding: 0 14px; border-radius: 14px; background: var(--c26-blush); font-size: 15px; font-weight: 600; color: var(--c26-plum); cursor: pointer; }
.c26-vtop { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; font-size: 16px; color: var(--c26-body); }
.c26-vtop b { color: var(--c26-plum); }
.c26-active { display: flex; flex-wrap: wrap; gap: 8px; }
.c26-active a { display: inline-flex; align-items: center; gap: 8px; min-height: 38px; padding: 0 12px 0 14px; border-radius: 999px; border: 1px solid var(--c26-line2); background: #fff; color: var(--c26-plum); font-weight: 600; font-size: 14px; text-decoration: none; }
.c26-active a::after { content: ""; width: 14px; height: 14px; background: var(--c26-berry); -webkit-mask: url(../img/icons/close.svg) center/contain no-repeat; mask: url(../img/icons/close.svg) center/contain no-repeat; }
a.c26-vcard { display: flex; flex-direction: column; gap: 14px; padding: 26px 28px; border-radius: 24px; background: #fff; border: 1px solid var(--c26-line); text-decoration: none; box-shadow: 0 16px 36px -32px rgba(59, 16, 48, .5); transition: transform .2s, border-color .2s; }
a.c26-vcard:hover { transform: translateY(-2px); border-color: var(--c26-line2); }
.c26-vcard__top { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 10px 20px; }
.c26-vcard__title { display: block; font: 600 21px/1.3 var(--c26-fh); color: var(--c26-plum); margin-bottom: 6px; }
.c26-empty { padding: 40px; border-radius: 24px; background: #fff; border: 1px solid var(--c26-line); text-align: center; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.c26-empty::before { content: ""; width: 40px; height: 40px; background: url(../img/daisy.svg) center/contain no-repeat; }
.c26-nudge { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; padding: 28px; border-radius: 24px; background: #fff; border: 2px dashed var(--c26-line2); }
.c26-alertbtn { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px; border-radius: 999px; background: var(--c26-berry); color: #fff !important; font: 600 14px var(--c26-fh); text-decoration: none; }
.c26-alertbtn .c26-i { width: 16px; height: 16px; }
.c26-jobmini { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 20px 22px; border-radius: 20px; background: var(--c26-soft); border: 1px solid var(--c26-line); text-decoration: none; }
.c26-jobmini b { display: block; font: 600 19px var(--c26-fh); color: var(--c26-plum); }
.c26-jobmini small { font-size: 15px; color: var(--c26-body); }
.c26-jobmini:hover { border-color: var(--c26-berry); }

/* Single vacancy */
.c26-vmeta { display: flex; flex-wrap: wrap; gap: 10px 26px; font-size: 16px; color: var(--c26-body); margin-top: 16px; }
.c26-vmeta span { display: inline-flex; align-items: center; gap: 8px; }
.c26-vmeta .c26-i { color: var(--c26-berry); width: 18px; height: 18px; }
.c26-vbody { font-size: 18px; line-height: 1.7; color: var(--c26-ink); }
.c26-vbody p { margin: 0 0 14px !important; font-size: 18px !important; color: var(--c26-ink) !important; }
.c26-vbody ul { list-style: none; padding: 0; margin: 0 0 18px; display: flex; flex-direction: column; gap: 10px; }
.c26-vbody ul li { display: flex; gap: 12px; padding: 0; }
.c26-vbody ul li::before { content: ""; width: 18px; height: 18px; margin-top: 5px; flex: 0 0 auto; background: url(../img/daisy.svg) center/contain no-repeat; }
.c26-vbody h2, .c26-vbody h3 { font: 600 24px var(--c26-fh) !important; margin: 24px 0 12px !important; }
.c26-ofsted { display: flex; gap: 20px; align-items: flex-start; padding: 26px 28px; border-radius: 24px; background: var(--c26-blush); }
.c26-ofsted blockquote { font-size: 18px; line-height: 1.6; color: var(--c26-plum); }
.c26-aside { display: flex; flex-direction: column; gap: 20px; position: sticky; top: 120px; }
.c26-apply .gform_wrapper { margin: 0 !important; }

/* ---------- Mobile call bar ---------- */
.c26-callbar { display: none; }

/* ---------- Gravity Forms, in the new colours ---------- */
body .gform_wrapper.gravity-theme .gfield_label, body .gform_wrapper .gfield_label { font: 600 14px var(--c26-fb) !important; color: var(--c26-plum) !important; }
body .gform_wrapper input[type=text], body .gform_wrapper input[type=email], body .gform_wrapper input[type=tel], body .gform_wrapper input[type=number], body .gform_wrapper input[type=date], body .gform_wrapper select, body .gform_wrapper textarea {
	min-height: 52px; border-radius: 14px !important; border: 1px solid var(--c26-line2) !important; background: #fff !important; font: 16px var(--c26-fb) !important; color: var(--c26-ink) !important; padding: 0 16px !important; box-shadow: none !important;
}
body .gform_wrapper textarea { padding: 14px 16px !important; }
body .gform_wrapper.gravity-theme .ginput_container input:not([type=checkbox]):not([type=radio]):not([type=file]), body .gform_wrapper.gravity-theme .ginput_container select, body .gform_wrapper.gravity-theme .ginput_container textarea { width: 100% !important; max-width: 100% !important; }
body .gform_wrapper input:focus, body .gform_wrapper select:focus, body .gform_wrapper textarea:focus { border-color: var(--c26-berry) !important; box-shadow: 0 0 0 4px rgba(237, 126, 175, .3) !important; outline: none !important; }
body .gform_wrapper .gform_footer input[type=submit], body .gform_wrapper .gform_page_footer input[type=button], body .gform_wrapper .gform_page_footer input[type=submit], body .gform_wrapper .gform-button, body .gform_wrapper button.gform_button, body .gform_wrapper .gform_page_footer button.gform_next_button, body .gform_wrapper .gform_page_footer button.gform_previous_button, body .gform_wrapper .gform_footer button.gform-theme-button {
	min-height: 54px !important; padding: 0 30px !important; border-radius: 999px !important; border: 0 !important; background: var(--c26-berry) !important; color: #fff !important; font: 600 16px var(--c26-fh) !important; text-transform: none !important; letter-spacing: 0 !important; cursor: pointer;
}
body .gform_wrapper .gform_page_footer .gform_previous_button { background: #fff !important; color: var(--c26-plum) !important; border: 2px solid var(--c26-plum) !important; }
body .gform_wrapper .gfield_choice_all_toggle, body .gform_wrapper .add_list_item, body .gform_wrapper .delete_list_item { min-height: 36px !important; padding: 0 16px !important; border-radius: 999px !important; border: 1px solid var(--c26-line2) !important; background: var(--c26-soft) !important; color: var(--c26-plum) !important; font: 600 14px var(--c26-fb) !important; cursor: pointer; }
body .gform_wrapper .gsection { border-bottom: 1px solid var(--c26-line) !important; padding-bottom: 8px !important; }
body .gform_wrapper .gsection .gsection_title, body .gform_wrapper .gsection_title { font: 600 22px var(--c26-fh) !important; color: var(--c26-plum) !important; }
body .gform_wrapper .gform_page_footer { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
body .gform_wrapper .gform_save_link { color: var(--c26-berry) !important; font-weight: 700 !important; background: transparent !important; border: 0 !important; text-decoration: underline; }
body .gform_wrapper .gf_progressbar { background: #F4E8EE !important; border-radius: 999px !important; }
body .gform_wrapper .gf_progressbar_percentage { background: var(--c26-berry) !important; border-radius: 999px !important; }
body .gform_wrapper .gf_progressbar_title { font: 600 14px var(--c26-fb) !important; color: var(--c26-muted) !important; }
body .gform_wrapper .gchoice label, body .gform_wrapper .gfield_checkbox label, body .gform_wrapper .gfield_radio label { font-size: 15px !important; color: var(--c26-plum) !important; }
body .gform_wrapper input[type=checkbox], body .gform_wrapper input[type=radio] { accent-color: var(--c26-berry); width: 18px; height: 18px; }
body .gform_wrapper .gfield_description { font-size: 14px !important; color: var(--c26-muted) !important; }
body .gform_wrapper .gfield_required { color: var(--c26-error) !important; }
body .gform_wrapper .gform_validation_errors { border-radius: 16px !important; }
.c26-formbox { padding: 40px; border-radius: 32px; background: #fff; box-shadow: var(--c26-shadow-lg); }

/* ---------- Single posts (The Staffroom articles) ---------- */
.single-post #main-content .container { max-width: 1180px; width: calc(100% - 64px); padding-top: 48px; }
.single-post #left-area { width: 100% !important; padding-right: 0 !important; float: none; }
.single-post #sidebar { display: none !important; }
.single-post #main-content .container::before { display: none; }
.single-post .et_post_meta_wrapper { max-width: 760px; margin: 0 auto; text-align: center; }
.single-post .et_post_meta_wrapper h1.entry-title { font: 700 clamp(34px, 4.2vw, 52px)/1.08 var(--c26-fh); letter-spacing: -.02em; color: var(--c26-plum); padding-bottom: 14px; }
.single-post .post-meta { font-size: 15px; color: var(--c26-muted); }
.single-post .post-meta a { color: var(--c26-berry); }
.single-post .entry-content { max-width: 760px; margin: 0 auto; font-size: 19px; line-height: 1.75; color: var(--c26-ink); }
.single-post .entry-content h2 { font: 600 30px/1.2 var(--c26-fh); margin: 36px 0 14px; }
.single-post .entry-content h3 { font: 600 23px/1.3 var(--c26-fh); margin: 28px 0 12px; }
.single-post .entry-content img { border-radius: 22px; }
.single-post .entry-content .et_pb_section { padding: 0 !important; background: transparent !important; }
.single-post .entry-content .et_pb_row { width: 100% !important; max-width: none !important; padding: 12px 0 !important; }
.single-post .et_post_meta_wrapper img { border-radius: 32px; max-height: 460px; object-fit: cover; width: 100%; }
.c26-postcta { max-width: 1180px; margin: 56px auto 0; }

/* ---------- Scroll reveal ---------- */
.c26-js .c26-reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s ease var(--d, 0ms), transform .6s ease var(--d, 0ms); }
.c26-js .c26-reveal.c26-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .c26-js .c26-reveal { opacity: 1; transform: none; transition: none; } * { scroll-behavior: auto !important; } }

/* ---------- Responsive ---------- */
@media (max-width: 1080px) {
	.c26-header .c26-wrap { min-height: 76px; }
	.c26-burger { display: inline-flex; }
	.c26-nav { display: none; position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-bottom: 1px solid var(--c26-line); box-shadow: 0 30px 40px -30px rgba(59, 16, 48, .35); padding: 8px 0 20px; }
	.c26-header.is-open .c26-nav { display: block; }
	.c26-nav ul { flex-direction: column; align-items: stretch; gap: 0; }
	.c26-nav li > a { display: flex; min-height: 52px; padding: 0 24px; font-size: 17px; border-bottom: 0; border-left: 3px solid transparent; }
	.c26-nav .current-menu-item > a, .c26-nav .current_page_item > a, .c26-nav .current-menu-ancestor > a { border-left-color: var(--c26-berry); background: var(--c26-soft); }
	.c26-nav__extra { display: flex; flex-direction: column; gap: 10px; padding: 14px 24px 0; }
}
@media (max-width: 980px) {
	.et_pb_section.c26-sec { padding: 72px 0; }
	.et_pb_section.c26-sec.c26-sec--hero { padding: 48px 0 64px; }
	.et_pb_section.c26-hero::before { width: 100%; top: auto; height: 46%; border-radius: 160px 0 0 0; }
	.c26-aside { position: static; }
}
@media (max-width: 767px) {
	body { font-size: 16px; }
	.c26-wrap, .et_pb_section.c26-sec > .et_pb_row, .et_pb_row.c26-row { padding: 0 20px !important; }
	.et_pb_section.c26-sec { padding: 56px 0; }
	.et_pb_section.c26-sec.c26-sec--strip { padding: 22px 0; }
	.et_pb_section.c26-sec.c26-sec--page { padding: 36px 0 40px; }
	.et_pb_section.c26-pagehero::after { width: 160px; height: 320px; right: -60px; opacity: .3; }
	.c26-topbar .c26-wrap { justify-content: center; padding-top: 6px !important; padding-bottom: 6px !important; }
	.c26-topbar__group--ctas { display: none; }
	.c26-logo img { width: 40px; height: 40px; }
	.c26-logo__name { font-size: 17px; }
	.c26-logo__sub { display: none; }
	.c26-sec p.c26-lead, .c26-lead { font-size: 18px; }
	.c26-card--lg, .c26-card--xl, .c26-refer, .c26-form-card, .c26-formbox, .c26-review--feature { padding: 28px; }
	.c26-feature__body { padding: 28px; }
	.c26-float { position: static; max-width: none; margin-top: 12px; }
	.c26-art { flex-direction: column; align-items: center; }
	.c26-arch { height: 360px; width: 300px; }
	.c26-ph { height: 340px; }
	.c26-head { margin-bottom: 28px; }
	.c26-callbar { display: flex; gap: 10px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 998; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid var(--c26-line); box-shadow: 0 -10px 30px -20px rgba(59, 16, 48, .4); }
	.c26-callbar a { flex: 1; min-height: 50px; border-radius: 999px; display: flex; align-items: center; justify-content: center; gap: 8px; font: 600 15px var(--c26-fh); text-decoration: none; }
	.c26-callbar a:first-child { background: var(--c26-blush); color: var(--c26-plum); }
	.c26-callbar a:last-child { background: var(--c26-berry); color: #fff; }
	body { padding-bottom: 72px; }
	.c26-years { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.single-post #main-content .container { width: calc(100% - 40px); }
}

/* Carried over from the old Customizer CSS: uniform comment avatars (Divi width:auto vs Ultimate Member's 400px default). */
.et_pb_comments_module .comment_avatar img,
.et_pb_comments_module .comment_avatar img.avatar,
.et_pb_comments_module .comment_avatar img.um-avatar { width: 80px !important; height: 80px !important; max-width: 80px !important; border-radius: 50%; object-fit: cover; }

/* The old Divi custom CSS (Theme Options) justifies every paragraph. Justified text reads badly at these widths, so the new design sets it back. */
.c26-site p { text-align: inherit; }

/* ---------- Batch 2 (20 Oct 2026): reviews wall, galleries, team links, profiles, tips, legal text ---------- */
.c26-quotes { columns: 3 300px; column-gap: 20px; }
.c26-quotes > figure.c26-review { break-inside: avoid; display: flex; width: 100%; margin: 0 0 20px; box-sizing: border-box; }
.c26-quotes .c26-review blockquote { font-size: 16px; }
.c26-quotes .c26-review figcaption span { font-weight: 600; color: var(--c26-plum); }
.c26-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
.c26-gallery a { display: block; aspect-ratio: 4 / 3; border-radius: 18px; overflow: hidden; background: var(--c26-blush); }
.c26-gallery img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.c26-gallery a:hover img { transform: scale(1.04); }
a.c26-member--link { color: inherit; text-decoration: none; }
.c26-member__name { display: block; margin-top: 10px; font: 600 19px/1.3 var(--c26-fh); color: var(--c26-plum); }
.c26-member__bio { display: block; font-size: 14px; line-height: 1.5; color: var(--c26-muted); }
a.c26-member--link:hover .c26-member__name { color: var(--c26-berry); }
.c26-member__arch--lg { max-width: 300px; height: 340px; margin: 0 auto; }
.c26-member__arch--lg img { width: 300px; height: 300px; }
.c26-qa { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; margin: 0; }
.c26-qa > div { padding: 22px 24px; border: 1px solid var(--c26-line); border-radius: 22px; background: var(--c26-soft); }
.c26-qa dt { font: 600 15px var(--c26-fb); color: var(--c26-berry); }
.c26-qa dd { margin: 8px 0 0; font: 500 19px/1.45 var(--c26-fh); color: var(--c26-plum); }
.c26-tiplist { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.c26-tiplist > li.c26-card { gap: 10px; }
.c26-lead p { margin: 0; }
.c26-lead.c26-stack p + p { margin-top: 0; }
.c26-widget { min-height: 120px; }
.c26-sec .c26-prose h3 { font-size: 21px; line-height: 1.3; margin-top: 28px !important; }
.c26-sec .c26-prose table { width: 100%; border-collapse: collapse; font-size: 15px; }
.c26-sec .c26-prose td, .c26-sec .c26-prose th { padding: 10px 12px; border: 1px solid var(--c26-line); vertical-align: top; text-align: left; }
.c26-prose .c26-doclink + .c26-doclink { margin-top: 12px; }
.c26-card .c26-doclink { margin-top: 4px; }


/* ---------- Mobile speed and accessibility (Onward, 20 Oct 2026) ---------- */
/* Old Divi modules that still name Open Sans get the brand body font instead of a Google Fonts download. */
@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-display:swap;src:url(../fonts/figtree.woff2) format('woff2')}

/* Skip link: hidden until a keyboard user tabs to it. */
.c26-skip { position: absolute; left: 12px; top: -100px; z-index: 100000; padding: 12px 18px; border-radius: 999px; background: var(--c26-plum); color: #fff !important; font: 600 15px var(--c26-fh); text-decoration: none; }
.c26-skip:focus { top: 12px; }

/* Trustpilot strip: hold its 24px so the page does not jump when the widget arrives. */
body > .trustpilot-widget { height: 24px; overflow: hidden; font-size: 13px; line-height: 24px; text-align: center; }

/* Contrast fixes (WCAG AA). Divi's global link colour (#d679a5) is too pale on white and blush, so links use the berry. */
html:root { --gcid-link-color: var(--c26-berry); }
.c26-sec p a:not([class]), .c26-sec li a:not([class]), .c26-sec dd a:not([class]), .c26-callout a, .c26-person a { color: var(--c26-berry); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.c26-sec p a:not([class]):hover, .c26-sec li a:not([class]):hover { text-decoration-thickness: 2px; }
/* Headings moved up a level so the page outline has no gaps keep their old look. */
.c26-sec h2.c26-h3 { font: 600 21px/1.25 var(--c26-fh); letter-spacing: 0; }
.c26-card h2.c26-h3 { font-size: 21px; }
.c26-member h2.c26-h3 { font-size: 19px; margin-top: 10px; }
.c26-sec .c26-prose h2.c26-h3 { font-size: 21px; line-height: 1.3; margin-top: 28px !important; }
.c26-sec h2.c26-h4, .c26-sec h3.c26-h4 { font: 600 18px/1.3 var(--c26-fh); letter-spacing: 0; }
.c26-person a { color: var(--c26-berry); font-weight: 600; }
.ti-widget .ti-read-more-active, .ti-widget .ti-read-more span { color: #555 !important; opacity: 1 !important; }
.ti-widget .ti-date, .ti-widget .ti-date .ti-with-tooltip { color: #595959 !important; }
.c26-num { color: var(--c26-berry); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept { background-color: var(--c26-berry) !important; border-color: var(--c26-berry) !important; color: #fff !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links .cmplz-link, #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-documents a { color: var(--c26-berry) !important; text-decoration: underline; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-link:empty { display: none !important; }

/* Gravity Forms date picker icon, drawn without Dashicons. */
body .gform_wrapper .gform-datepicker-toggle-icon.dashicons { display: inline-block; width: 20px; height: 20px; background: var(--c26-berry); -webkit-mask: url(../img/icons/cal.svg) center/contain no-repeat; mask: url(../img/icons/cal.svg) center/contain no-repeat; }
body .gform_wrapper .gform-datepicker-toggle-icon.dashicons::before { content: none; }

/* Falling pictures (replaces the Falling Things plugin script). */
.c26-fall { position: fixed; inset: 0; z-index: 990; overflow: hidden; pointer-events: none; }
.c26-fall img { position: absolute; top: -70px; left: var(--x); width: auto; height: auto; max-width: 48px; max-height: 60px; animation: c26-fall var(--t) linear var(--w) infinite; will-change: transform; }
@keyframes c26-fall {
	0% { transform: translate3d(0, 0, 0) rotate(-20deg); }
	25% { transform: translate3d(36px, 28vh, 0) rotate(25deg); }
	50% { transform: translate3d(-28px, 56vh, 0) rotate(-25deg); }
	75% { transform: translate3d(32px, 84vh, 0) rotate(22deg); }
	100% { transform: translate3d(0, calc(100vh + 140px), 0) rotate(-20deg); }
}
@media (prefers-reduced-motion: reduce) { .c26-fall { display: none; } .c26-header { transition: none !important; } }

/* Job adverts: the apply button in the header only shows on phones, where the sidebar sits below the form. */
.c26-vhero-cta { display: none; }
/* In-page links (Apply, #request, #cpd) stop below the sticky header instead of under it. */
.c26-site [id] { scroll-margin-top: 104px; }

/* Comfortable tap targets and form controls on phones. */
@media (max-width: 767px) {
	.c26-vhero-cta { display: flex; margin-top: 20px; }
	.c26-header { transition: transform .25s ease; }
	.c26-header.is-tucked { transform: translateY(-100%); }
	.c26-topbar { display: none; }
	.c26-nav__extra .c26-btn { min-height: 50px; }
	.c26-fcol { gap: 0; }
	.c26-fcol > a, .c26-fbar__links a { display: flex; align-items: center; min-height: 44px; }
	.c26-fcol .c26-fh { margin-bottom: 4px; }
	.c26-fbar__links { gap: 0 20px; }
	.c26-crumbs a { display: inline-block; padding: 10px 0; margin: -10px 0; }
	label.c26-check { min-height: 44px; }
	.c26-check input { width: 22px; height: 22px; }
	.c26-filterbox__top a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 4px; }
	body .gform_wrapper .gchoice { display: flex; align-items: center; gap: 10px; min-height: 44px; }
	body .gform_wrapper .gchoice label { flex: 1; padding: 8px 0; }
	body .gform_wrapper .gfield_choice_all_toggle, body .gform_wrapper .add_list_item, body .gform_wrapper .delete_list_item { min-height: 44px !important; }
	body .gform_wrapper input[type=checkbox], body .gform_wrapper input[type=radio] { width: 22px; height: 22px; flex: 0 0 auto; }
	body .gform_wrapper .gform_save_link { min-height: 44px !important; }
	body .gform_wrapper input[type=text], body .gform_wrapper input[type=email], body .gform_wrapper input[type=tel], body .gform_wrapper input[type=number], body .gform_wrapper input[type=date], body .gform_wrapper select { min-height: 52px !important; }
	.c26-sec p, .c26-sec li { overflow-wrap: break-word; }
}

/* ---------- Blog posts (Onward, 20 Oct 2026) ---------- */
/* Pale pink, magenta, red and green text pasted into older posts fails contrast on white. Shown in darker shades. */
.single-post #main-content [style*="ff99cc" i], .single-post #main-content [style*="fa87b8" i], .single-post #main-content [style*="f96bab" i],
.single-post #main-content [style*="f3b4d4" i], .single-post #main-content [style*="ed7eaf" i], .single-post #main-content [style*="ff00ff" i] { color: var(--c26-berry) !important; }
.single-post #main-content [style*="color: #ff0000" i], .single-post #main-content [style*="color:#ff0000" i] { color: #b00020 !important; }
.single-post #main-content [style*="color: #339966" i], .single-post #main-content [style*="color:#339966" i] { color: #1f7a4d !important; }
/* Divi buttons in posts used the light pink for their words. */
.single-post #main-content .et_pb_button { color: var(--c26-berry) !important; border-color: var(--c26-berry) !important; }
.single-post #main-content .et_pb_button:hover { color: #fff !important; background-color: var(--c26-berry) !important; }
/* Links inside post text are underlined, so they do not rely on colour alone. */
.single-post #main-content .et_pb_text a:not(.et_pb_button), .single-post #main-content .et_pb_post_content a:not(.et_pb_button), .single-post .entry-content p a { text-decoration: underline; text-underline-offset: 3px; }
/* Comment form: readable text and a berry submit button. */
.single-post #commentform input[type=text], .single-post #commentform input[type=email], .single-post #commentform input[type=url], .single-post #commentform textarea { color: var(--c26-ink) !important; background: #fff !important; border: 1px solid var(--c26-line2) !important; font-size: 16px !important; }
.single-post #commentform ::placeholder { color: #666 !important; opacity: 1; }
.single-post #commentform .submit, .single-post .comment-reply-link { color: #fff !important; background: var(--c26-berry) !important; border-color: var(--c26-berry) !important; }
.single-post #commentform .comment-notes, .single-post #commentform .logged-in-as { color: var(--c26-ink); }
.single-post #reply-title { font: 600 24px/1.3 var(--c26-fh); }
/* Pictures given a fixed height in Divi were squashed on narrow screens. Keep their shape. */
.single-post #main-content .et_pb_image img { object-fit: contain; }
@media (max-width: 767px) { .single-post #main-content .et_pb_image img { height: auto !important; min-height: 0 !important; } }
/* Slider dots on posts: a bigger tap area without changing the dot. */
.single-post .et-pb-controllers a { width: 12px !important; height: 12px !important; margin: 0 7px !important; }
