/* ==========================================================================
   Our History — centred heading + two-column timeline on a 2px gold line
   (Tastyc "Fine Dining" history s0). Measured at 1532px: 1210px timeline,
   two 605px columns, 60px from each item to the line; right items start 60px
   lower; 30px between rows. Item: year 14px/700 gold (25px row, 15px below)
   with a 24px ring on the line and a 38px connector → 109px-wide photo that
   stretches to the text height, 30px gap → title 30px/300 (30px below) →
   16px/1.8 text at 70% white. Left items are right-aligned.
   ========================================================================== */
.sv-section.sv-history { padding: 70px 0 120px; overflow: hidden; }
.sv-history .sv-heading { margin-bottom: 70px; }

.sv-history__timeline {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	row-gap: 30px;
	align-items: start;
	max-width: 1210px;
	margin: 0 auto;
	padding: 0 0 30px;
	list-style: none;
}
/* The gold line: starts at the first ring's centre, runs to the bottom of the timeline */
.sv-history__timeline::before {
	content: "";
	position: absolute;
	top: 12px;
	bottom: 0;
	left: 50%;
	width: 2px;
	background: var(--sv-accent);
	transform: translateX(-50%);
}

.sv-history__item { position: relative; margin: 0; }
.sv-history__item--left { grid-column: 1; padding-right: 60px; text-align: right; }
.sv-history__item--right { grid-column: 2; padding-left: 60px; margin-top: 60px; }

/* Year with its ring on the line and a short connector */
.sv-history__year {
	position: relative;
	height: 25px;
	margin-bottom: 15px;
	font-size: 14px;
	font-weight: 700;
	line-height: 25px;
	letter-spacing: .12em;
	color: var(--sv-accent);
}
.sv-history__year::before,
.sv-history__year::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.sv-history__year::before { width: 38px; height: 2px; background: var(--sv-accent); }
.sv-history__year::after {
	width: 24px;
	height: 24px;
	border: 2px solid var(--sv-accent);
	border-radius: 50%;
	background: radial-gradient(circle, var(--sv-accent) 0 4px, #fff 5px);
	box-sizing: border-box;
}
.sv-history__item--left .sv-history__year::before { right: -48px; }
.sv-history__item--left .sv-history__year::after { right: -72px; }
.sv-history__item--right .sv-history__year::before { left: -48px; }
.sv-history__item--right .sv-history__year::after { left: -72px; }

/* Photo + text */
.sv-history__content { display: flex; align-items: stretch; gap: 30px; }
.sv-history__item--left .sv-history__content { flex-direction: row-reverse; }
.sv-history__media {
	position: relative;
	flex: 0 0 109px;
	min-height: 246px;
	background: var(--sv-surface);
	box-shadow: 0 5px 10px rgba(26, 47, 51, .11);
}
img.sv-history__img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.sv-history__body { flex: 1 1 auto; min-width: 0; }
.sv-history__title {
	margin: 0 0 30px;
	font-size: 30px;
	font-weight: 300;
	line-height: 1.2;
	color: var(--sv-heading);
}
.sv-history__text {
	margin: 0;
	font-size: 16px;
	line-height: 1.8;
	color: var(--sv-heading);
	opacity: .7;
}

/* ---------- Responsive ---------- */
@media (max-width: 1199px) {
	.sv-history__item--left { padding-right: 50px; }
	.sv-history__item--right { padding-left: 50px; }
	.sv-history__item--left .sv-history__year::before { right: -40px; width: 30px; }
	.sv-history__item--left .sv-history__year::after { right: -62px; }
	.sv-history__item--right .sv-history__year::before { left: -40px; width: 30px; }
	.sv-history__item--right .sv-history__year::after { left: -62px; }
	.sv-history__title { font-size: 26px; }
}
/* Single column, line on the left; every item reads left-to-right */
@media (max-width: 991px) {
	.sv-section.sv-history { padding: 60px 0 90px; }
	.sv-history .sv-heading { margin-bottom: 50px; }
	.sv-history__timeline {
		grid-template-columns: 1fr;
		row-gap: 40px;
		padding-left: 12px;
	}
	.sv-history__timeline::before { left: 12px; }
	.sv-history__item--left,
	.sv-history__item--right {
		grid-column: 1;
		margin-top: 0;
		padding: 0 0 0 60px;
		text-align: left;
	}
	.sv-history__item--left .sv-history__content { flex-direction: row; }
	.sv-history__item--left .sv-history__year::before,
	.sv-history__item--right .sv-history__year::before { right: auto; left: -48px; width: 38px; }
	.sv-history__item--left .sv-history__year::after,
	.sv-history__item--right .sv-history__year::after { right: auto; left: -72px; }
}
@media (max-width: 767px) {
	.sv-section.sv-history { padding: 48px 0 72px; }
	.sv-history .sv-heading { margin-bottom: 40px; }
	.sv-history__item--left,
	.sv-history__item--right { padding-left: 48px; }
	.sv-history__item--left .sv-history__year::before,
	.sv-history__item--right .sv-history__year::before { left: -38px; width: 26px; }
	.sv-history__item--left .sv-history__year::after,
	.sv-history__item--right .sv-history__year::after { left: -60px; }
	/* Photo above the text: a side-by-side 109px column leaves no room at 360px */
	.sv-history__content { flex-direction: column; gap: 20px; }
	.sv-history__media { flex: 0 0 auto; width: 100%; height: 200px; min-height: 0; }
	.sv-history__title { font-size: 24px; margin-bottom: 18px; }
	.sv-history__text { font-size: 15px; }
}
