.profile-page {
	padding: 20px 0;
}

.profile-sidebar {
	padding: 20px 0 10px 0;
	background: #f5f5f5;
}

.profile-userpic img {
	float: none;
	margin: 0 auto;
	width: 50%;
	height: auto; /* Адаптивный размер изображения */
}

.profile-usertitle {
	text-align: center;
	margin-top: 20px;
}

.profile-usertitle-name {
	color: #5a7391;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 7px;
}

.profile-usertitle-email {
	color: #5b9bd1;
	font-size: 14px;
	font-weight: 400;
}

.profile-usermenu {
	margin-top: 30px;
}

.profile-usermenu ul.nav a {
	color: #6d6d6d;
	font-size: 14px;
	font-weight: 400;
}

.profile-usermenu ul.nav li.active {
	border-bottom: none;
}

.profile-usermenu ul.nav li.active a {
	color: #5b9bd1;
	background-color: #f6f9fb;
	border-left: 2px solid #5b9bd1;
	margin-left: -2px;
}

/* Profile Content */
.profile-content {
	padding: 20px;
	background: #fff;
	min-height: 460px; /* Минимальная высота */
}

.orders-list {
	padding: 20px;
}

.order-item {
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px solid #eee;
}

.order-header {
	margin-bottom: 15px;
}

.order-header .order-number {
	font-weight: bold;
}

.order-header .order-date {
	color: #999;
}

.order-header .order-status {
	float: right;
	color: #5cb85c; /* Цвет статуса */
}

.order-products .order-product {
	margin-bottom: 10px;
	display: flex;
	align-items: center;
}

.order-product img {
	width: 80px;
	height: auto;
	margin-right: 20px;
}

.product-info .product-name {
	font-weight: 500;
}

.product-total {
	margin-left: auto; /* Автоматический отступ слева */
	font-weight: bold;
}

/* === Info / static pages (contacts, delivery, legal) =====================
   Reusable, on-brand components. Accent is the site blue (#0e8ce4), neutral
   text, soft cards — no red. Scoped under .info-page so nothing else changes. */
.info-page { padding: 48px 0 72px; background: #fff; color: #333; font-size: 16px; line-height: 1.7; }
.info-page__head { margin-bottom: 30px; }
.info-page h1, .info-page .info-page__title { font-size: 30px; font-weight: 700; color: #111; margin: 0 0 8px; }
.info-page__lead { color: #444; font-size: 17px; font-weight: 500; margin: 0; max-width: 760px; }
.info-page h3 { font-size: 21px; font-weight: 700; color: #111; margin: 30px 0 14px; }
.info-page a { color: #0e8ce4; }

.info-card { background: #fff; border: 1px solid #ececec; border-radius: 12px; padding: 26px 28px; box-shadow: 0 2px 14px rgba(0,0,0,.05); }
.info-grid { display: grid; gap: 22px; align-items: start; }
@media (min-width: 992px) {
	.info-grid--2 { grid-template-columns: 1fr 1fr; }
	.info-grid--side { grid-template-columns: 360px 1fr; }
}

/* contact list */
.contact-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 20px; }
.contact-item { display: flex; align-items: flex-start; gap: 14px; }
.contact-item__icon { flex: none; width: 46px; height: 46px; border-radius: 50%; background: #eaf5fd; color: #0e8ce4; display: flex; align-items: center; justify-content: center; font-size: 18px; }
.contact-item__label { font-size: 12px; text-transform: uppercase; letter-spacing: .5px; color: #8a8a8a; margin-bottom: 3px; }
.contact-item__value { font-size: 17px; font-weight: 600; color: #111; line-height: 1.4; }
.contact-item__value a { color: #111; text-decoration: none; display: inline-block; }
.contact-item__value a:hover { color: #0e8ce4; }

/* responsive map */
.info-map { border: 0; border-radius: 12px; width: 100%; height: 100%; min-height: 380px; display: block; }

/* feature / delivery list */
.feature-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.feature-list li { position: relative; padding-left: 32px; }
.feature-list li > i { position: absolute; left: 0; top: 3px; color: #0e8ce4; font-size: 16px; }

/* numbered steps */
.steps { list-style: none; counter-reset: step; margin: 0; padding: 0; display: grid; gap: 16px; }
.steps li { position: relative; padding-left: 56px; padding-top: 6px; min-height: 40px; }
.steps li::before { counter-increment: step; content: counter(step); position: absolute; left: 0; top: 0; width: 40px; height: 40px; border-radius: 50%; background: #0e8ce4; color: #fff; font-weight: 700; font-size: 17px; display: flex; align-items: center; justify-content: center; }

/* highlight callout */
.callout { display: flex; gap: 14px; align-items: center; background: #eaf5fd; border: 1px solid #cfe8fb; border-radius: 12px; padding: 18px 22px; color: #0b4f7a; font-weight: 500; margin: 8px 0; }
.callout i { color: #0e8ce4; font-size: 22px; flex: none; }

/* payment method chips */
.pay-methods { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 6px; }
.pay-methods span { background: #f3f5f7; border: 1px solid #e6e8eb; border-radius: 8px; padding: 9px 15px; font-weight: 600; color: #333; }

/* long-form legal pages */
.info-page--legal .info-card { max-width: 920px; margin: 0 auto; }
.info-page--legal h3 { margin-top: 26px; }
.info-page--legal p { margin-bottom: 14px; }
/* ======================================================================= */
