/* ==========================================================================
   Sinakoi theme — layout & components
   Colours, fonts and sizes live in theme.json; this file adds the pieces
   theme.json can't express (sticky header, cards, icons, mobile call bar).
   ========================================================================== */

/* Text-size toggle: everything is in rem, so scaling the root scales the site */
html.sk-large-text { font-size: 115%; }

/* No gaps between header / main / footer */
.wp-site-blocks > * + * { margin-block-start: 0; }
.sk-main > * + * { margin-block-start: 0; }

/* Larger, comfortable focus for keyboard users */
:where(a, button, input, select, textarea):focus-visible {
	outline: 3px solid var(--wp--preset--color--accent-deep);
	outline-offset: 3px;
}

.sk-section { padding-block: var(--wp--preset--spacing--60); }
.sk-eyebrow {
	margin: 0;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 800;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--accent-deep);
}
.sk-lead { font-size: var(--wp--preset--font-size--large); color: var(--wp--preset--color--body); line-height: 1.55; }
.sk-body { color: var(--wp--preset--color--body); }
.sk-section-head { max-width: 820px; margin-bottom: var(--wp--preset--spacing--40); }
.sk-section-head > * { margin-block: 0; }
.sk-section-head > * + * { margin-block-start: 0.875rem; }

/* ---------- Icons (CSS masks, colour follows text) ---------- */
.sk-ic::before {
	content: "";
	display: inline-block;
	flex: none;
	width: 1.2em;
	height: 1.2em;
	margin-inline-end: 0.5em;
	vertical-align: -0.22em;
	background-color: currentColor;
	-webkit-mask: var(--sk-ic) center / contain no-repeat;
	mask: var(--sk-ic) center / contain no-repeat;
}

/* ---------- Top bar ---------- */
.sk-topbar {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--small);
	padding-block: 0.5rem;
}
.sk-topbar p { margin: 0; }
.sk-topbar a { color: var(--wp--preset--color--white); text-decoration: none; font-weight: 700; }
.sk-topbar a:hover { text-decoration: underline; color: var(--wp--preset--color--white); }
.sk-topbar .sk-ic::before { background-color: var(--wp--preset--color--accent); }
.sk-topbar .sk-topbar-mail a { font-weight: 400; }

.sk-textsize { display: flex; align-items: center; gap: 0.625rem; font-size: 1rem; }
.sk-textsize button {
	min-width: 48px;
	min-height: 44px;
	border-radius: 10px;
	border: 2px solid var(--wp--preset--color--accent);
	background: transparent;
	color: var(--wp--preset--color--white);
	font: inherit;
	font-weight: 800;
	font-size: 1.125rem;
	cursor: pointer;
}
.sk-textsize button[data-size="large"] { font-size: 1.375rem; }
.sk-textsize button[aria-pressed="true"] {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--ink);
}

/* ---------- Header ---------- */
header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 50;
}
.admin-bar header.wp-block-template-part { top: var(--wp-admin--admin-bar--height, 32px); }
@media (max-width: 600px) {
	.admin-bar header.wp-block-template-part { top: 0; }
}
.sk-header {
	background: var(--wp--preset--color--white);
	border-bottom: 1px solid var(--wp--preset--color--line);
	box-shadow: 0 4px 18px rgba(43, 33, 24, 0.06);
	padding-block: 0.875rem;
}
.sk-brand { gap: 0.75rem !important; }
.sk-brand p { margin: 0; }
.sk-badge {
	width: 56px;
	height: 56px;
	border-radius: 16px;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--ink);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.125rem;
	font-weight: 800;
	line-height: 1;
}
.sk-brand-name { font-size: 2rem; font-weight: 800; line-height: 1.05; letter-spacing: -0.02em; }
.sk-brand-name a { color: var(--wp--preset--color--ink); text-decoration: none; }
.sk-brand-tag { font-size: 0.9375rem; color: var(--wp--preset--color--muted); line-height: 1.2; }
.sk-header .wp-block-navigation a { text-decoration: none; }
.sk-header .wp-block-navigation a:hover { text-decoration: underline; color: var(--wp--preset--color--accent-deep); }
.sk-header .wp-block-navigation__submenu-container {
	border: 1px solid var(--wp--preset--color--line) !important;
	border-radius: 14px;
	padding: 0.5rem !important;
	box-shadow: 0 12px 30px rgba(43, 33, 24, 0.12);
}
.sk-header .wp-block-navigation__responsive-container-open svg,
.sk-header .wp-block-navigation__responsive-container-close svg { width: 36px; height: 36px; }
.sk-header .wp-block-navigation__responsive-container.is-menu-open { font-size: 1.5rem; }
.sk-header .wp-block-button__link { border-radius: 999px; font-size: 1.1875rem; padding: 0.875rem 1.625rem; }

/* ---------- Buttons ---------- */
.wp-block-button__link { min-height: 56px; display: inline-flex; align-items: center; gap: 0.6em; }
.wp-block-button.is-style-sk-dark .wp-block-button__link {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--white);
}
.wp-block-button.is-style-sk-dark .wp-block-button__link:hover { background: #45372A; color: var(--wp--preset--color--white); }
.wp-block-button.is-style-sk-dark .sk-ic::before,
.wp-block-button.is-style-sk-dark.sk-ic .wp-block-button__link::before { background-color: var(--wp--preset--color--accent); }
.wp-block-button.is-style-sk-outline .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--ink);
	border: 2px solid var(--wp--preset--color--ink);
	border-radius: 14px;
	font-size: 1.1875rem;
	font-weight: 700;
	padding: 0.75rem 1.5rem;
}
.wp-block-button.is-style-sk-outline .wp-block-button__link:hover { background: var(--wp--preset--color--cream); }
/* Icon on a button: put the class on the button block */
.wp-block-button.sk-ic::before { display: none; }
.wp-block-button.sk-ic .wp-block-button__link::before {
	content: "";
	width: 1.15em;
	height: 1.15em;
	flex: none;
	background-color: currentColor;
	-webkit-mask: var(--sk-ic) center / contain no-repeat;
	mask: var(--sk-ic) center / contain no-repeat;
}

/* ---------- Hero ---------- */
.sk-hero { background: var(--wp--preset--color--cream); padding-block: clamp(3rem, 6vw, 4.5rem) clamp(3.5rem, 7vw, 5rem); }
.sk-hero h1 { margin-block: 0 1.5rem; }
.sk-hero .sk-lead { max-width: 560px; margin-block: 0 1.75rem; }
.sk-hero .wp-block-button__link { min-height: 68px; font-size: 1.5rem; }
.sk-hero-checks { margin-top: 1.75rem !important; gap: 0.875rem 1.75rem !important; }
.sk-check {
	margin: 0;
	display: flex;
	align-items: center;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 600;
}
.sk-check::before {
	content: "";
	flex: none;
	width: 40px;
	height: 40px;
	margin-inline-end: 0.75rem;
	border-radius: 50%;
	background: #fff var(--sk-check-svg) center / 22px no-repeat;
}
.sk-hero-media { position: relative; }
.sk-hero-media .wp-block-image { margin: 0; }
.sk-hero-media .wp-block-image img {
	width: 100%;
	aspect-ratio: 5 / 4;
	object-fit: cover;
	object-position: 42% center;
	border-radius: 32px;
	display: block;
}
.sk-hero-stat {
	position: absolute;
	left: -16px;
	bottom: -28px;
	background: #fff;
	border-radius: 22px;
	padding: 1.125rem 1.5rem !important;
	box-shadow: 0 14px 40px rgba(43, 33, 24, 0.14);
	gap: 1rem !important;
}
.sk-hero-stat p { margin: 0; }
.sk-stat-num { font-size: 2.75rem; font-weight: 800; line-height: 1; color: var(--wp--preset--color--accent-deep); }
.sk-stat-label { font-size: 1.0625rem; font-weight: 600; line-height: 1.3; }
@media (max-width: 781px) {
	.sk-hero-stat { left: 12px; bottom: -22px; }
	.sk-hero-media { margin-top: 1rem; }
}

/* ---------- Cards ---------- */
.sk-grid-3 { gap: 1.375rem !important; }
.sk-card,
.wp-block-group.is-style-sk-card {
	border-radius: 26px;
	padding: 2rem !important;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
}
.sk-card > *,
.wp-block-group.is-style-sk-card > * { margin-block: 0 !important; }
.sk-card--accent { background: var(--wp--preset--color--accent); color: var(--wp--preset--color--ink); }
.sk-card--cream { background: var(--wp--preset--color--cream); }
.sk-card--outline { background: #fff; border: 2px solid var(--wp--preset--color--line); }
.sk-card--dark { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--white); justify-content: space-between; }
.sk-card--dark h3 { color: var(--wp--preset--color--white); font-size: 2.125rem; line-height: 1.15; }
.sk-card--dark .sk-eyebrow { color: var(--wp--preset--color--accent); }
.sk-card--dark p { color: #F3E7DA; }
.sk-card h3 { margin: 0; }
.sk-card-title { font-size: 1.75rem; font-weight: 800; line-height: 1.2; }
.sk-card-kicker { font-size: var(--wp--preset--font-size--small); font-weight: 700; }
.sk-card-big { font-size: 3.375rem; font-weight: 800; line-height: 1; }
.sk-card-link { font-weight: 800; }
.sk-card-link a { color: inherit; }
.sk-card--cream .sk-card-link a { color: var(--wp--preset--color--accent-deep); }
.sk-card-icon {
	width: 60px;
	height: 60px;
	border-radius: 18px;
	background: #fff;
	margin-bottom: 0.5rem !important;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--accent-deep);
	font-size: 0; /* only the icon shows */
}
.sk-card-icon.sk-ic::before { width: 32px; height: 32px; margin: 0; }
.sk-num {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: var(--wp--preset--color--accent);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	font-size: 1.25rem;
	margin-bottom: 0.25rem !important;
}
.sk-card h3.sk-service-title { font-size: 1.5625rem; }

/* Product cards with image on top */
.sk-product { background: #fff; border-radius: 28px; overflow: hidden; padding: 0 !important; gap: 0; }
.sk-product .wp-block-image { margin: 0 !important; }
.sk-product .wp-block-image img { width: 100%; height: 260px; object-fit: cover; display: block; }
.sk-product-body { padding: 1.875rem !important; }
.sk-product-body > * { margin-block: 0; }
.sk-product-body > * + * { margin-block-start: 0.75rem; }
.sk-product-body h3 { font-size: 1.75rem; }

/* ---------- About ---------- */
.sk-about-img img { width: 100%; aspect-ratio: 1 / 1; max-height: 520px; object-fit: cover; border-radius: 32px; display: block; }

/* ---------- Brands ---------- */
.sk-brands {
	border-top: 2px solid var(--wp--preset--color--line);
	border-bottom: 2px solid var(--wp--preset--color--line);
	padding-block: 2.75rem;
	text-align: center;
}
.sk-brand-list { gap: 0.875rem 2.75rem !important; }
.sk-brand-list p { margin: 0; font-size: 1.625rem; font-weight: 700; color: var(--wp--preset--color--muted); }
.sk-brands .sk-eyebrow { color: var(--wp--preset--color--muted); }

/* ---------- Contact ---------- */
.sk-phone-card {
	border-radius: 24px;
	padding: 1.5rem 1.75rem !important;
	gap: 1.25rem !important;
}
.sk-phone-card p { margin: 0; }
.sk-phone-card--accent { background: var(--wp--preset--color--accent); }
.sk-phone-card--cream { background: var(--wp--preset--color--cream); }
.sk-phone-icon {
	flex: none;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
}
.sk-phone-icon.sk-ic::before { width: 30px; height: 30px; margin: 0; }
.sk-phone-card--accent .sk-phone-icon { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--accent); }
.sk-phone-card--cream .sk-phone-icon { background: #fff; color: var(--wp--preset--color--accent-deep); }
.sk-phone-label { font-size: var(--wp--preset--font-size--small); font-weight: 700; line-height: 1.2; }
.sk-phone-number { font-size: clamp(2rem, 4.5vw, 2.75rem); font-weight: 800; line-height: 1.15; letter-spacing: -0.01em; }
.sk-phone-number a { color: var(--wp--preset--color--ink); text-decoration: none; }
.sk-phone-number a:hover { text-decoration: underline; }
.sk-info-card { border: 2px solid var(--wp--preset--color--line); border-radius: 20px; padding: 1.375rem !important; }
.sk-info-card > * { margin-block: 0; }
.sk-info-card > * + * { margin-block-start: 0.375rem; }
.sk-info-label { font-size: 1.0625rem; font-weight: 700; color: var(--wp--preset--color--muted); }
.sk-info-value { font-size: 1.3125rem; font-weight: 700; line-height: 1.35; }
.sk-map iframe {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 520px;
	border: 0;
	border-radius: 28px;
	background: #F3ECE4;
}
.sk-map { height: 100%; }

/* ---------- Footer ---------- */
.sk-footer {
	background: var(--wp--preset--color--ink);
	color: #F3E7DA;
	padding-block: 3.5rem 2rem;
}
.sk-footer p { margin: 0; }
.sk-footer a { color: #F3E7DA; }
.sk-footer a:hover { color: #fff; }
.sk-footer h2 { color: #fff; font-size: 1.1875rem; letter-spacing: 0; line-height: 1.3; margin: 0 0 0.5rem; }
.sk-footer .sk-brand-name, .sk-footer .sk-brand-name a { color: #fff; font-size: 1.75rem; }
.sk-footer .sk-badge { width: 44px; height: 44px; border-radius: 12px; font-size: 1.75rem; }
.sk-footer-phone a { color: var(--wp--preset--color--accent); font-weight: 800; text-decoration: none; }
.sk-footer-phone--big { font-size: 1.875rem; }
.sk-footer-phone--mid { font-size: 1.5rem; }
.sk-footer-col > * + * { margin-block-start: 0.5rem; }
.sk-cert { background: #fff; border-radius: 12px; padding: 0.75rem 0.875rem !important; display: inline-block; }
.sk-cert img { display: block; width: 100%; max-width: 260px; height: auto; }
.sk-footer-bottom {
	border-top: 1px solid #4A3B2E;
	padding-top: 1.25rem;
	margin-top: 2.25rem !important;
	font-size: 0.9375rem;
}
.sk-footer-bottom a { color: var(--wp--preset--color--accent); }

/* ---------- Inner pages ---------- */
.sk-page-head { background: var(--wp--preset--color--cream); padding-block: clamp(2.5rem, 5vw, 4rem); }
.sk-page-head h1 { font-size: var(--wp--preset--font-size--xx-large); margin: 0; }
.sk-page-body { padding-block: var(--wp--preset--spacing--50); }
.sk-page-body .wp-block-post-content { font-size: var(--wp--preset--font-size--large); color: var(--wp--preset--color--body); }
.sk-page-body .wp-block-post-content :where(h2, h3, h4) { color: var(--wp--preset--color--ink); margin-top: 2.5rem; }
.sk-page-body .wp-block-post-content img { border-radius: 20px; height: auto; }
.sk-page-cta { background: var(--wp--preset--color--accent); padding-block: var(--wp--preset--spacing--50); }
.sk-page-cta h2 { margin: 0; }
.sk-page-cta p { margin: 0; }

/* Forms (e.g. Contact Form 7 on the appointment page) */
.wp-site-blocks :where(input[type="text"], input[type="email"], input[type="tel"], input[type="date"], select, textarea) {
	font: inherit;
	font-size: var(--wp--preset--font-size--medium);
	padding: 0.875rem 1rem;
	border: 2px solid #CDBBA8;
	border-radius: 12px;
	width: 100%;
	box-sizing: border-box;
	background: #fff;
	color: var(--wp--preset--color--ink);
}
.wp-site-blocks :where(input[type="submit"], button[type="submit"]) {
	font: inherit;
	font-size: 1.375rem;
	font-weight: 800;
	min-height: 60px;
	padding: 0 2rem;
	border: 0;
	border-radius: 18px;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--ink);
	cursor: pointer;
}

/* ---------- Mobile call bar ---------- */
.sk-callbar { display: none; }
@media (max-width: 781px) {
	.sk-callbar {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px !important;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 60;
		margin: 0 !important;
		padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
		background: #fff;
		box-shadow: 0 -6px 20px rgba(43, 33, 24, 0.15);
	}
	.sk-callbar .wp-block-button { width: 100%; }
	.sk-callbar .wp-block-button__link { width: 100%; justify-content: center; min-height: 58px; font-size: 1.25rem; padding: 0 0.75rem; }
	body { padding-bottom: 84px; }
	.sk-hide-mobile { display: none !important; }
	.sk-textsize > span { display: none; }
	.sk-header-cta { display: none !important; }
}

/* ---------- Icon set (generated) ---------- */
.sk-ic-phone { --sk-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E"); }
.sk-ic-mobile { --sk-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='2' width='12' height='20' rx='2'/%3E%3Cpath d='M11 18h2'/%3E%3C/svg%3E"); }
.sk-ic-mail { --sk-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='m22 6-10 7L2 6'/%3E%3C/svg%3E"); }
.sk-ic-calendar { --sk-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E"); }
.sk-ic-home { --sk-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 10 9-7 9 7v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpath d='M9 22V12h6v10'/%3E%3C/svg%3E"); }
.sk-ic-ear { --sk-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8.5a6 6 0 1 1 12 0c0 3.5-3 4.5-3 7.5a3 3 0 0 1-5.6 1.5'/%3E%3Cpath d='M9 9a3 3 0 0 1 6 0c0 1.5-1.5 2-1.5 3.5'/%3E%3C/svg%3E"); }
.sk-ic-pin { --sk-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
:root { --sk-check-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A4400' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }

/* ---------- Fixes after live render ---------- */
.wp-block-buttons.sk-callbar { display: none !important; }
@media (max-width: 781px) {
	.wp-block-buttons.sk-callbar { display: grid !important; }
}
.sk-quick { padding-top: clamp(3.5rem, 6vw, 4.5rem) !important; }
.sk-brand { flex: none; }
.sk-header-cta { flex: none; }
@media (min-width: 600px) {
	.sk-header-inner { flex-wrap: nowrap !important; }
	.sk-brand-tag { display: none; }
	.sk-header .sk-nav { flex: 1 1 auto; justify-content: flex-end; }
	.sk-header .sk-nav .wp-block-navigation__container { flex-wrap: nowrap; justify-content: flex-end; white-space: nowrap; }
}
@media (min-width: 600px) {
	.sk-header .wp-block-navigation { font-size: 1.0625rem; }
	.sk-header .wp-block-navigation__container { gap: 1.125rem !important; }
}
/* Tablets / small laptops: the full menu doesn't fit on one line, so use the ☰ menu button */
@media (min-width: 600px) and (max-width: 1279px) {
	.sk-header .sk-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.sk-header .sk-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
.sk-card--dark h3 { margin-top: 0.5rem !important; }
.sk-card--dark .wp-block-group > * + * { margin-block-start: 0.75rem; }

/* ---------- Real logos ---------- */
.sk-logo { margin: 0; flex: none; }
.sk-logo img { display: block; height: 66px; width: auto; }
@media (max-width: 599px) { .sk-logo img { height: 54px; } }

.sk-brand-list { gap: 1.5rem 2.25rem !important; align-items: center; justify-items: center; }
.sk-brand-logo { margin: 0 !important; filter: grayscale(1); opacity: 0.65; transition: filter 0.2s, opacity 0.2s; }
.sk-brand-logo:hover { filter: none; opacity: 1; }
.sk-brand-logo img { display: block; width: auto; height: auto; max-width: 150px; max-height: 52px; }
.sk-brand-phonak img, .sk-brand-oticon img { max-height: 58px; max-width: 140px; }
.sk-brand-widex img, .sk-brand-bernafon img { max-height: 44px; }
.sk-brand-starkey img { max-height: 64px; max-width: 130px; }
.sk-brand-list p.sk-brand-text-logo { font-size: 1.875rem; font-weight: 800; letter-spacing: 0.04em; color: var(--wp--preset--color--ink); }

.sk-certs { gap: 0.75rem !important; }
.sk-cert { margin: 0 !important; }
.sk-cert img { max-width: 230px; }
.sk-brand-list { gap: 1.5rem 1.75rem !important; }
.sk-brand-logo img { max-width: min(140px, 100%) !important; }
.sk-brand-hansaton { filter: grayscale(1) contrast(1.8) brightness(0.75); }
/* Product photos have white backgrounds: show the whole product, don't crop */
.sk-product .wp-block-image img { height: 280px; object-fit: contain; background: #fff; padding: 1.5rem 1.5rem 0; box-sizing: border-box; }
/* Map column: map + directions button */
.sk-map-col { display: flex; flex-direction: column; gap: 1rem; }
.sk-map-col .sk-map { flex: 1 1 auto; height: auto; }
.sk-map-col .sk-map iframe { height: 100%; min-height: 460px; }
.sk-map-buttons { margin: 0 !important; }
.sk-map-buttons .wp-block-button, .sk-map-buttons .wp-block-button__link { width: 100%; justify-content: center; }
.sk-info-card .sk-card-link a { color: var(--wp--preset--color--accent-deep); }

/* ==========================================================================
   Information pages (Η Ακοή / Βαρηκοΐα)
   ========================================================================== */
.sk-page-body .wp-block-post-content > * { margin-block: 0; }
.sk-page-body .wp-block-post-content > * + * { margin-block-start: 1.5rem; }
.sk-page-body .wp-block-post-content > h2 { font-size: clamp(1.875rem, 4vw, 2.375rem); margin-block-start: 3.25rem; }
.sk-page-body .wp-block-post-content > h3 { font-size: 1.625rem; margin-block-start: 2.25rem; }
.sk-page-body .wp-block-post-content > h2 + *, .sk-page-body .wp-block-post-content > h3 + * { margin-block-start: 0.875rem; }
.sk-page-body .wp-block-post-content > .sk-lead {
	font-size: clamp(1.4375rem, 2.6vw, 1.6875rem);
	line-height: 1.5;
	font-weight: 500;
	color: var(--wp--preset--color--ink);
}
.sk-page-body .wp-block-post-content strong { color: var(--wp--preset--color--ink); }

.sk-content-img { margin-block: 2rem !important; }
.sk-content-img img { display: block; width: 100%; height: auto; border-radius: 24px; background: var(--wp--preset--color--cream); }
.sk-img-pair { gap: 1.25rem !important; margin-block: 2rem !important; align-items: center; }
.sk-img-pair .sk-content-img { margin: 0 !important; }

ul.sk-list { list-style: none; padding-left: 0; }
ul.sk-list > li { position: relative; padding-left: 2.5rem; }
ul.sk-list > li + li { margin-top: 0.875rem; }
ul.sk-list > li::before {
	content: "";
	position: absolute;
	left: 0.4rem;
	top: 0.55em;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--wp--preset--color--accent);
}
ul.sk-checklist > li { padding-left: 3rem; }
ul.sk-checklist > li::before {
	left: 0;
	top: 0.05em;
	width: 34px;
	height: 34px;
	background: #fff var(--sk-check-svg) center / 20px no-repeat;
}

.sk-callout {
	background: var(--wp--preset--color--cream);
	border-radius: 24px;
	padding: 1.75rem 2rem !important;
	margin-block-start: 2rem !important;
}
.sk-callout > * { margin-block: 0; }
.sk-callout > * + * { margin-block-start: 1rem; }
.sk-callout h3 { font-size: 1.375rem; color: var(--wp--preset--color--accent-deep); }

.sk-related {
	border: 2px solid var(--wp--preset--color--line);
	border-radius: 28px;
	padding: clamp(1.5rem, 4vw, 2.5rem) !important;
	margin-block-start: 4rem !important;
}
.sk-related > h2 { font-size: 2rem !important; margin: 0 0 1.25rem !important; }
.sk-related .wp-block-columns { gap: 1.5rem 2.5rem; margin: 0; }
.sk-related h3 { font-size: 1.0625rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--wp--preset--color--muted); margin: 0 0 0.5rem; }
.sk-related .sk-related-link { margin: 0; border-top: 1px solid var(--wp--preset--color--line); }
.sk-related .sk-related-link a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 56px;
	padding: 0.5rem 0;
	font-size: 1.25rem;
	font-weight: 700;
	text-decoration: none;
	color: var(--wp--preset--color--ink);
}
.sk-related .sk-related-link a::after { content: "→"; color: var(--wp--preset--color--accent-deep); font-weight: 800; }
.sk-related .sk-related-link a:hover { color: var(--wp--preset--color--accent-deep); text-decoration: underline; }
.sk-related .sk-related-link a[aria-current="page"] { color: var(--wp--preset--color--accent-deep); }
.sk-eyebrow--body { color: var(--wp--preset--color--body); }
.sk-card--accent .sk-card-icon { background: #fff; }

/* ==========================================================================
   v1.6 – service/product pages, Ωτοασπίδες, Ταμεία, forms
   ========================================================================== */
.sk-page-body .wp-block-post-content > .alignfull { margin-block-start: 3rem; }
.sk-page-body .wp-block-post-content > .alignfull.sk-section { padding-block: 3.5rem; }
.sk-content-grid { margin-block-start: 1.5rem !important; }
.sk-content-grid .sk-card { gap: 0.5rem; }
.sk-content-grid h3.sk-service-title { font-size: 1.5rem !important; margin: 0 !important; }
.sk-content-grid .sk-body { font-size: 1.1875rem; margin: 0; }

.sk-facts { gap: 1rem !important; margin-block-start: 2rem !important; }
.sk-fact {
	background: var(--wp--preset--color--cream);
	border-radius: 22px;
	padding: 1.25rem 1.5rem !important;
}
.sk-fact > * { margin: 0 !important; }
.sk-fact-label { font-size: 1.0625rem !important; font-weight: 700; color: var(--wp--preset--color--muted) !important; }
.sk-fact-value { font-size: 1.625rem !important; font-weight: 800; line-height: 1.25; color: var(--wp--preset--color--ink) !important; }

.sk-phones { gap: 1rem !important; margin-block-start: 2rem !important; }
.sk-phones .sk-phone-card { margin: 0 !important; }

.sk-callout > p { margin: 0; }

/* Forminator forms: large, easy fields */
.wp-site-blocks .forminator-ui.forminator-custom-form { font-size: 1.25rem !important; }
.wp-site-blocks .forminator-ui .forminator-label { font-size: 1.125rem !important; font-weight: 700 !important; color: var(--wp--preset--color--ink) !important; }
.wp-site-blocks .forminator-ui .forminator-input,
.wp-site-blocks .forminator-ui .forminator-textarea { font-size: 1.25rem !important; min-height: 56px; border-radius: 12px !important; }
.wp-site-blocks .forminator-ui .forminator-button-submit {
	font-size: 1.375rem !important; font-weight: 800 !important; min-height: 60px !important;
	border-radius: 18px !important; background: var(--wp--preset--color--accent) !important; color: var(--wp--preset--color--ink) !important;
}
/* Card grids inside pages: 3 / 2 / 1 columns, independent of WP version */
.wp-block-group.sk-content-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
@media (max-width: 899px) { .wp-block-group.sk-content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 599px) { .wp-block-group.sk-content-grid { grid-template-columns: minmax(0, 1fr) !important; } }
