/* ==========================================================================
   Polish for existing Elementor content (pages built before this theme)
   ========================================================================== */

/* Pasted HTML documents: school palette + theme font, confined to their box */
.sid-html.sid-html {
	--color-primary: var(--sid-primary);
	--color-accent: var(--sid-gold);
	--color-text: var(--sid-ink);
	--color-bg: transparent;
	--color-light-blue: var(--sid-cream);
	--color-light-green: #f2f6ee;
	font-family: var(--sid-sans);
	color: var(--sid-text);
	background: transparent;
}
.sid-html.sid-html table { border-radius: 12px; overflow: hidden; }
.sid-html.sid-html h1, .sid-html.sid-html h2, .sid-html.sid-html h3 { font-family: var(--sid-serif); letter-spacing: -.01em; }

/* Elementor buttons: pill shape, brand colours, gentle lift */
.sid .elementor-button { border-radius: 999px; font-family: var(--sid-sans); font-weight: 700; letter-spacing: .01em; transition: transform .25s var(--sid-ease), box-shadow .25s, background-color .25s, color .25s; }
.sid .elementor-button:hover { transform: translateY(-2px); box-shadow: 0 12px 24px -12px rgba(4,35,26,.45); }

/* Headings from the old kit: serif display for large headings */
.sid .elementor-widget-heading h1.elementor-heading-title,
.sid .elementor-widget-heading h2.elementor-heading-title { font-family: var(--sid-serif); font-weight: 600; letter-spacing: -.015em; text-wrap: balance; }

/* Images and image boxes: softer corners */
.sid .elementor-widget-image img { border-radius: 14px; }
.sid .elementor-widget-image.sid-square img { border-radius: 0; }
.sid .elementor-widget-image-box .elementor-image-box-img img { border-radius: 12px; }
.sid .elementor-widget-call-to-action .elementor-cta { border-radius: 16px; overflow: hidden; }

/* Icon boxes: card feel when they sit on white */
.sid .elementor-widget-icon-box .elementor-icon { transition: transform .3s var(--sid-ease); }
.sid .elementor-widget-icon-box:hover .elementor-icon { transform: translateY(-3px) rotate(-5deg); }

/* Text */
.sid .elementor-widget-text-editor { line-height: 1.75; }
.sid .elementor-widget-text-editor a { color: var(--sid-primary); font-weight: 600; }

/* Tabs, accordions, toggles */
.sid .elementor-tab-title, .sid .elementor-accordion-title { font-weight: 700; }
.sid .elementor-accordion .elementor-accordion-item { border-radius: 12px; overflow: hidden; margin-bottom: 10px; border-color: var(--sid-line); }
.sid .elementor-accordion .elementor-tab-title.elementor-active { color: var(--sid-primary); }

/* Forms (Forminator / Elementor / MetForm) */
.sid .forminator-ui .forminator-button-submit, .sid .elementor-field-type-submit .elementor-button, .sid .metform-btn { border-radius: 999px !important; background: var(--sid-cta) !important; color: #fff !important; font-weight: 700 !important; }
.sid .forminator-ui input:not([type=checkbox]):not([type=radio]), .sid .forminator-ui textarea, .sid .forminator-ui select { border-radius: 10px !important; }

/* Tables inside Elementor text */
.sid .elementor-widget-text-editor table { width: 100%; border-collapse: collapse; }
.sid .elementor-widget-text-editor th { background: var(--sid-cream); color: var(--sid-ink); }
.sid .elementor-widget-text-editor th, .sid .elementor-widget-text-editor td { padding: 10px 12px; border: 1px solid var(--sid-line); }

/* Old theme-builder template wrappers sometimes leave a gap under the header */
.sid .elementor-location-header:empty, .sid .elementor-location-footer:empty { display: none; }
