/* SOMIRA INFORMATION SECTIONS | shared across weight-loss/mens/womens/metabolic.
   Ported from each page's own bespoke markup (sli-/smi-/swi- prefixes etc.),
   now built from native Gutenberg blocks (wp:group/wp:heading/wp:paragraph/
   wp:list/wp:details) under one shared "si-" (Somira Info) class prefix. */
.somira-info {
	--si-ink: #16345A;
	--si-muted: #566677;
	--si-blue: var(--wp--preset--color--primary-blue, #3B7FB2);
	--si-deep: var(--wp--preset--color--deep-blue, #2F5FA5);
	--si-soft: #EDF4FB;
	--si-line: #D9E4EF;
	--si-option-line: #ABBED1;
	--si-white: #fff;
	max-width: 1040px;
	width: 100%;
	margin: 0 auto;
	color: var(--si-ink);
	font-size: 16px;
	line-height: 1.6;
	text-align: left;
	container-type: inline-size;
	overflow-wrap: break-word;
}
.somira-info *, .somira-info *::before, .somira-info *::after { box-sizing: border-box; }
.somira-info :where(h2, h3, h4, p, ul, li, details, summary) { margin: 0; padding: 0; border: 0; font-family: inherit; }

/* Picker (product switch) */
.somira-info .info-picker { margin-bottom: 20px; }
.somira-info .info-picker .wp-block-buttons { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.somira-info .info-btn { margin: 0; }
.somira-info .info-btn .wp-block-button__link {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	min-height: 58px;
	width: 100%;
	padding: 13px 10px;
	background: var(--si-white);
	border: 1px solid var(--si-option-line);
	border-radius: 12px;
	font-size: 16px;
	font-weight: 650;
	line-height: 1.3;
	color: var(--si-ink);
	text-align: center;
	cursor: pointer;
}
.somira-info .info-btn.is-active .wp-block-button__link {
	background: var(--si-soft);
	border-color: var(--si-blue);
	box-shadow: inset 0 0 0 1px var(--si-blue);
}
.somira-info .info-btn-caption { display: block; font-size: 12px; font-weight: 500; color: var(--si-muted); margin-top: 2px; }

/* Product panel */
.somira-info .info-panel { display: block; margin-bottom: 16px; }
.somira-info .info-panel.is-hidden { display: none; }
.somira-info .si-card {
	display: grid;
	grid-template-columns: minmax(0, .87fr) minmax(0, 1.2fr);
	border: 1px solid var(--si-line);
	border-radius: 22px;
	overflow: hidden;
	background: var(--si-white);
	box-shadow: 0 12px 36px rgba(47, 95, 165, .045);
}
.somira-info .si-overview { padding: 28px; min-width: 0; background: linear-gradient(145deg, #F5F7FA, var(--si-soft)); border-right: 1px solid var(--si-line); }
.somira-info .si-overview h3 { font-size: clamp(25px, 2.8vw, 31px); font-weight: 650; color: var(--si-deep); line-height: 1.2; letter-spacing: -.035em; margin: 8px 0 13px; }
.somira-info .si-overview p { color: var(--si-ink); font-size: 15px; line-height: 1.6; }
.somira-info .si-overview ul { display: flex; flex-direction: column; gap: 8px; margin: 20px 0; list-style: none; padding: 0; }
.somira-info .si-overview ul li { display: flex; gap: 8px; align-items: flex-start; font-size: 14px; line-height: 1.45; }
.somira-info .si-fact-dot { width: 6px; height: 6px; background: var(--si-blue); border-radius: 50%; margin-top: 7px; flex: 0 0 6px; display: inline-block; }
.somira-info .si-overview em { font-size: 13px; color: var(--si-muted); line-height: 1.6; font-style: normal; }
.somira-info .si-personal-note { border-top: 1px solid #CADAEA; padding-top: 18px; margin-top: 20px; font-size: 14px; line-height: 1.6; }
.somira-info .si-personal-note h4 { color: var(--si-ink); font-size: 15px; font-weight: 700; line-height: 1.4; margin-bottom: 6px; }
.somira-info .si-availability { margin-top: 15px; padding: 11px 12px; border: 1px solid #C7D9EA; border-radius: 10px; font-size: 12px; line-height: 1.55; }
.somira-info a, .somira-info a:visited { color: var(--si-deep); text-decoration: underline; text-underline-offset: 3px; }
.somira-info .si-citations { white-space: normal; font-size: 12px; font-weight: 500; }
.somira-info .si-citations a { display: inline; padding: 0 1px; }
.somira-info a.si-pricing-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 20px; min-height: 44px; font-size: 14px; font-weight: 650; text-decoration: none; }

/* Accordions (native wp:details) */
.somira-info .si-accordions { min-width: 0; padding: 8px 24px; }
.somira-info .si-accordions details { display: block; border-bottom: 1px solid var(--si-line); background: transparent; }
.somira-info .si-accordions details:last-child { border-bottom: 0; }
.somira-info .si-accordions summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 64px; padding: 16px 0; cursor: pointer; list-style: none; color: var(--si-ink); font-size: 15px; font-weight: 650; line-height: 1.4; }
.somira-info summary::-webkit-details-marker { display: none; }
.somira-info summary::marker { content: ''; }
.somira-info .si-accordions summary::after {
	content: '';
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	border: 1px solid #C6D8EA;
	border-radius: 50%;
	background: linear-gradient(var(--si-deep), var(--si-deep)) no-repeat center 10px / 10px 2px,
		linear-gradient(var(--si-deep), var(--si-deep)) no-repeat center / 2px 10px;
}
.somira-info .si-accordions details[open] summary::after { background: linear-gradient(var(--si-deep), var(--si-deep)) no-repeat center / 10px 2px; }
.somira-info .si-accordions details > *:not(summary) { font-size: 15px; line-height: 1.65; color: var(--si-muted); }
.somira-info .si-accordions details > *:not(summary):last-child { padding-bottom: 20px; }
.somira-info .si-accordions p + p { margin-top: 12px; }
.somira-info .si-accordions strong { color: var(--si-ink); font-weight: 650; }
.somira-info .si-accordions ul { padding-left: 19px; margin: 12px 0 20px; list-style: disc outside; }
.somira-info .si-accordions li + li { margin-top: 9px; }
.somira-info .si-accordions .si-effects { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 22px; row-gap: 8px; margin: 13px 0; }
.somira-info .si-accordions .si-effects li { padding: 0; margin: 0; break-inside: avoid; font-size: 14px; }

/* Safety grid, compounding notice, shared accordions, footnote */
.somira-info .si-safety-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 20px 0 16px; }
.somira-info .si-warning { border: 1px solid #BACDDF; border-radius: 16px; padding: 20px; background: #F5F8FC; font-size: 14px; line-height: 1.65; }
.somira-info .si-warning h3 { font-size: 16px; line-height: 1.4; margin-bottom: 9px; font-weight: 700; color: var(--si-ink); }
.somira-info .si-warning p + p { margin-top: 10px; }
/* Bootstrap "danger" alert palette, for the urgent/emergency warning box */
.somira-info .si-urgent { border-color: #f5c2c7; background: #f8d7da; }
.somira-info .si-urgent h3, .somira-info .si-urgent strong { color: #842029; }
.somira-info .si-notice { background: var(--si-white); border: 1px solid var(--si-line); border-radius: 14px; padding: 18px 20px; color: var(--si-muted); font-size: 14px; line-height: 1.65; }
.somira-info .si-notice strong { color: var(--si-ink); }
.somira-info .si-notice p + p { margin-top: 10px; }
.somira-info > .wp-block-group > details { padding: 0 20px; margin-top: 16px; border: 1px solid var(--si-line); border-radius: 14px; background: var(--si-white); }
.somira-info em { color: var(--si-muted); font-size: 13px; margin-top: 16px; line-height: 1.6; display: block; font-style: normal; }

@media (max-width: 720px) {
	.somira-info .si-card { grid-template-columns: 1fr; }
	.somira-info .si-overview { border-right: 0; border-bottom: 1px solid var(--si-line); padding: 22px; }
	.somira-info .si-accordions { padding: 4px 22px; }
	.somira-info .si-safety-grid { grid-template-columns: 1fr; }
	.somira-info .info-picker .wp-block-buttons { grid-template-columns: 1fr; }
}
@container (max-width: 700px) {
	.somira-info .si-card { grid-template-columns: 1fr; }
	.somira-info .si-overview { border-right: 0; border-bottom: 1px solid var(--si-line); padding: 22px; }
	.somira-info .si-accordions { padding: 4px 22px; }
	.somira-info .si-safety-grid { grid-template-columns: 1fr; }
}
@media (max-width: 380px) {
	.somira-info .si-overview { padding: 18px; }
	.somira-info .si-accordions { padding: 2px 18px; }
	.somira-info .si-accordions .si-effects { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .somira-info * { scroll-behavior: auto !important; } }

@media print {
	.somira-info .info-picker, .somira-info .si-pricing-link { display: none !important; }
	.somira-info .info-panel { display: block !important; }
	.somira-info .si-card, .somira-info .si-safety-grid { display: block; }
	.somira-info .si-card { overflow: visible; box-shadow: none; }
	.somira-info .si-warning { break-inside: avoid; margin-top: 12px; }
}
