/*
Theme Name: Reboot Child
Template: reboot
Version: 1.5.7
*/

/* VipBrand design layer. The Reboot parent theme is intentionally untouched. */
:root {
	--vipbrand-navy: #283947;
	--vipbrand-cyan: #51c8e8;
	--vipbrand-cyan-dark: #27aeca;
	--vipbrand-pink: #f39abb;
	--vipbrand-pink-dark: #e77da6;
	--vipbrand-ice: #f2fbfe;
	--vipbrand-blush: #fff4f8;
	--vipbrand-line: #dceff5;
	--vipbrand-muted: #566873;
}

html { scroll-behavior: smooth; }

body {
	color: var(--vipbrand-navy);
	background: #ffffff;
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.65;
}

/* Reboot reserves footer height on body; remove it when sticky footer is disabled. */
body.vipbrand-footer-static { margin-bottom: 0 !important; }

a { color: var(--vipbrand-cyan-dark); }
a:hover, a:focus { color: var(--vipbrand-pink-dark); }

.site-header {
	background: linear-gradient(120deg, #f5fdff 0%, #ffffff 52%, #fff5f9 100%);
	border-bottom: 1px solid #edf4f6;
}

.site-branding { align-items: center; gap: 22px; }
.site-logotype img { max-width: 190px; max-height: 92px; width: auto; height: auto; }
.site-description { max-width: 760px; margin-top: 5px; color: var(--vipbrand-pink); font-size: clamp(18px, 2vw, 28px); font-weight: 700; line-height: 1.25; }
.site-title { color: var(--vipbrand-navy); }
.header-search { display: none !important; }
.site-header-inner, .main-navigation-inner {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 1668px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding-right: clamp(18px, 4vw, 64px) !important;
	padding-left: clamp(18px, 4vw, 64px) !important;
}

.main-navigation {
	background: rgba(255,255,255,.96);
	box-shadow: 0 8px 26px rgba(40,57,71,.06);
}
.main-navigation-inner { justify-content: center !important; }
.main-navigation-inner > ul, .main-navigation .menu { justify-content: center !important; }
.main-navigation ul li a { color: var(--vipbrand-navy); font-weight: 700; }
.main-navigation ul li a:hover, .main-navigation ul li.current-menu-item > a { color: var(--vipbrand-cyan-dark); }

.site-content, .site-content.fixed { width: 100% !important; max-width: none !important; }
.site-content-inner { box-sizing: border-box; width: 100% !important; max-width: 1668px !important; margin-right: auto !important; margin-left: auto !important; padding-right: clamp(18px, 4vw, 64px); padding-left: clamp(18px, 4vw, 64px); }
.content-area, .sidebar-none .content-area { float: none !important; width: 100% !important; max-width: none !important; padding-right: 0 !important; padding-left: 0 !important; }
.site-main, .article-post, .entry-content, .sidebar-none .site-main, .sidebar-none .entry-content { width: 100% !important; max-width: none !important; }
.entry-content { color: var(--vipbrand-navy); }
.entry-content > * { max-width: 100%; }
.entry-title, .entry-content h1, .entry-content h2, .entry-content h3 { color: var(--vipbrand-navy); letter-spacing: -.02em; }
.page .entry-header, .page .article-post > .entry-title { display: none !important; }
.page .entry-content { margin-top: 0; }

.vipbrand-page { width: 100%; max-width: 1540px; margin: 0 auto; }
.vipbrand-page h1, .vipbrand-page h2, .vipbrand-page h3 { line-height: 1.15; }
.vipbrand-page h2 { font-size: clamp(27px, 4vw, 38px); margin: 64px 0 22px; }
.vipbrand-page h3 { font-size: 20px; margin: 0 0 9px; }

/* Long-form Reboot posts: readable line length and responsive comparison tables. */
.single-post .article-post { max-width: 1080px !important; margin-right: auto; margin-left: auto; }
.single-post .entry-title { max-width: 920px; margin-right: auto; margin-left: auto; text-wrap: balance; }
.vipbrand-article { max-width: 920px; }
.vipbrand-article > p,
.vipbrand-article > ul,
.vipbrand-article > ol { max-width: 820px; color: var(--vipbrand-muted); font-size: 17px; }
.vipbrand-article > ul li,
.vipbrand-article > ol li { margin: 9px 0; }
.vipbrand-article .vipbrand-article-lead { margin-top: 0; color: var(--vipbrand-navy); font-size: clamp(19px, 2vw, 22px); line-height: 1.65; }
.vipbrand-article .vipbrand-social-callout { margin: 58px 0; }
.vipbrand-table-wrap { width: 100%; margin: 24px 0 34px; overflow-x: auto; border: 1px solid var(--vipbrand-line); border-radius: 16px; background: #fff; box-shadow: 0 10px 26px rgba(40,57,71,.05); -webkit-overflow-scrolling: touch; }
.vipbrand-table-wrap table { width: 100%; min-width: 680px; margin: 0; border: 0; border-collapse: collapse; }
.vipbrand-table-wrap th,
.vipbrand-table-wrap td { padding: 13px 15px; border: 0; border-bottom: 1px solid var(--vipbrand-line); text-align: left; white-space: nowrap; }
.vipbrand-table-wrap th { background: var(--vipbrand-ice); color: var(--vipbrand-navy); font-weight: 800; }
.vipbrand-table-wrap tbody tr:last-child td { border-bottom: 0; }
.vipbrand-table-wrap tbody tr:nth-child(even) td { background: #fbfdfe; }

/* Reboot-demo layout: full-width colour bands with centred page content. */
.vipbrand-home > section:not(.vipbrand-hero) {
	box-sizing: border-box;
	margin: 0;
	padding: clamp(48px, 5vw, 76px) 0;
	clip-path: inset(0 -100vmax);
}
.vipbrand-home > section:not(.vipbrand-hero) > h2 { margin-top: 0; }
.vipbrand-home > section:nth-of-type(2) {
	background: #fff;
	box-shadow: 0 0 0 100vmax #fff;
}
.vipbrand-home > section:nth-of-type(3) {
	background: #eefafe;
	box-shadow: 0 0 0 100vmax #eefafe;
}
.vipbrand-home > section:nth-of-type(4) {
	background: #fff3f8;
	box-shadow: 0 0 0 100vmax #fff3f8;
}

.vipbrand-hero {
	margin: 0 0 64px;
	padding: clamp(34px, 6vw, 68px);
	background: linear-gradient(120deg, var(--vipbrand-ice), var(--vipbrand-blush));
	border: 1px solid var(--vipbrand-line);
	border-radius: 28px;
	box-shadow: 0 18px 50px rgba(67, 137, 157, .10);
}
.vipbrand-eyebrow { color: var(--vipbrand-pink-dark); font-size: 14px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.vipbrand-hero h1 { max-width: 760px; margin: 15px 0 20px; font-size: clamp(34px, 5.2vw, 60px); }
.vipbrand-hero p { max-width: 760px; color: #52636d; font-size: clamp(17px, 2vw, 21px); }
.vipbrand-hero-note { margin-top: 24px; color: var(--vipbrand-muted); font-size: 14px; }

.vipbrand-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 30px; }
.vipbrand-btn, .vipbrand-page .wpcf7-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 11px 22px;
	border: 0;
	border-radius: 999px;
	background: var(--vipbrand-cyan);
	box-shadow: 0 10px 22px rgba(52, 185, 216, .22);
	color: #fff !important;
	cursor: pointer;
	font-weight: 800;
	text-decoration: none !important;
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.vipbrand-btn:hover, .vipbrand-page .wpcf7-submit:hover { background: var(--vipbrand-cyan-dark); color: #fff !important; transform: translateY(-2px); }
.vipbrand-btn--pink { background: var(--vipbrand-pink); box-shadow: 0 10px 22px rgba(231, 125, 166, .22); }
.vipbrand-btn--pink:hover { background: var(--vipbrand-pink-dark); }
.vipbrand-btn--light { background: #fff; color: var(--vipbrand-navy) !important; box-shadow: none; border: 1px solid var(--vipbrand-line); }

.vipbrand-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.vipbrand-card, .vipbrand-link-card {
	padding: 27px;
	background: #fff;
	border: 1px solid var(--vipbrand-line);
	border-radius: 18px;
	box-shadow: 0 10px 26px rgba(40,57,71,.06);
}
.vipbrand-card h3, .vipbrand-link-card h3 { color: var(--vipbrand-cyan-dark); }
.vipbrand-card p, .vipbrand-link-card p { color: var(--vipbrand-muted); font-size: 15px; margin: 0; }
.vipbrand-link-card a { color: var(--vipbrand-navy); font-weight: 800; text-decoration: underline; text-decoration-color: var(--vipbrand-pink); text-decoration-thickness: 2px; text-underline-offset: 4px; }

.vipbrand-steps { display: grid; gap: 12px; }
.vipbrand-step {
	display: grid !important;
	grid-template-columns: 32px minmax(0, 1fr) !important;
	align-items: center;
	justify-content: start !important;
	column-gap: 14px;
	min-width: 0;
	padding: 16px 20px;
	background: var(--vipbrand-ice);
	border-left: 4px solid var(--vipbrand-pink);
	border-radius: 12px;
}
.vipbrand-step-number { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--vipbrand-cyan); color: #fff; font-weight: 800; }
.entry-content .vipbrand-step p {
	display: block !important;
	grid-column: 2 !important;
	justify-self: start !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	color: #52636d;
	text-align: left !important;
}

.vipbrand-cta { margin-top: 64px; padding: clamp(30px, 5vw, 52px); background: var(--vipbrand-navy); border-radius: 24px; color: #fff; }
.vipbrand-cta h2, .vipbrand-cta h3 { color: #fff; margin-top: 0; }
.vipbrand-cta p { color: #dbe8ed; }
.vipbrand-cta a:not(.vipbrand-btn) { color: #9be8fa; }
.vipbrand-form { margin-top: 24px; }
.vipbrand-form .wpcf7-form-control-wrap { display: block; margin: 9px 0 14px; }
.vipbrand-form input:not([type="submit"]), .vipbrand-form textarea, .vipbrand-form select {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 15px;
	border: 1px solid rgba(255,255,255,.22);
	border-radius: 10px;
	background: rgba(255,255,255,.10);
	color: #fff;
}
.vipbrand-form input::placeholder, .vipbrand-form textarea::placeholder { color: #c8d8de; }

.vipbrand-faq details { padding: 18px 0; border-bottom: 1px solid var(--vipbrand-line); }
.vipbrand-faq summary { cursor: pointer; color: var(--vipbrand-navy); font-weight: 800; }
.vipbrand-faq p { color: var(--vipbrand-muted); }

.vipbrand-page-intro {
	max-width: 980px;
	margin: 8px 0 44px;
	padding: clamp(28px, 5vw, 58px);
	background: linear-gradient(120deg, var(--vipbrand-ice), var(--vipbrand-blush));
	border: 1px solid var(--vipbrand-line);
	border-radius: 26px;
}
.vipbrand-page-intro h1 { margin: 12px 0 16px; font-size: clamp(36px, 5vw, 58px); }
.vipbrand-page-intro p { max-width: 780px; margin: 0; color: var(--vipbrand-muted); font-size: 19px; }
.vipbrand-reviews-page .vipbrand-page-intro { box-sizing: border-box; width: 100%; max-width: none; margin-right: 0; margin-left: 0; }

/* Blog hub copy surrounds Reboot's native post-card grid via child-theme hooks. */
.vipbrand-blog-shell {
	box-sizing: border-box;
	width: 100%;
	padding-right: clamp(16px, 4vw, 64px);
	padding-left: clamp(16px, 4vw, 64px);
}
.vipbrand-blog-shell--top { padding-top: clamp(20px, 4vw, 56px); }
.vipbrand-blog-shell--bottom { padding-bottom: clamp(56px, 7vw, 96px); }
.vipbrand-blog-hub { max-width: 1540px; }
.vipbrand-blog-hub .vipbrand-page-intro,
.vipbrand-blog-hub .vipbrand-content-section { margin-right: auto; margin-left: auto; }

.vipbrand-service-grid, .vipbrand-store-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.vipbrand-service-card, .vipbrand-store-grid article {
	display: block;
	min-height: 245px;
	padding: clamp(25px, 3vw, 38px);
	border: 1px solid var(--vipbrand-line);
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 14px 34px rgba(40,57,71,.07);
	color: var(--vipbrand-navy);
	text-decoration: none !important;
}
.vipbrand-service-card { transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.vipbrand-service-card:hover { transform: translateY(-6px); border-color: var(--vipbrand-pink); box-shadow: 0 22px 44px rgba(40,57,71,.12); }
.vipbrand-service-card > span { color: var(--vipbrand-pink-dark); font-size: 14px; font-weight: 900; letter-spacing: .1em; }
.vipbrand-service-card h2, .vipbrand-store-grid h2 { margin: 28px 0 12px; font-size: 26px; }
.vipbrand-service-card p, .vipbrand-store-grid p { margin: 0; color: var(--vipbrand-muted); }
.vipbrand-store-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.vipbrand-directory-hero {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 36px;
	padding: clamp(36px, 6vw, 76px);
	background: linear-gradient(135deg, #253846, #405868);
	border-radius: 28px;
	color: #fff;
}
.vipbrand-directory-hero h1 { margin: 12px 0 18px; color: #fff; font-size: clamp(40px, 6vw, 68px); }
.vipbrand-directory-hero p { max-width: 800px; margin: 0; color: #dce8ed; font-size: 19px; }
.vipbrand-section-heading { display: flex; justify-content: space-between; gap: 24px; }
.vipbrand-section-heading p { max-width: 760px; color: var(--vipbrand-muted); }
.vipbrand-brand-directory { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.vipbrand-brand-card {
	display: grid;
	grid-template-columns: 58px 1fr;
	grid-template-rows: auto auto;
	column-gap: 17px;
	align-items: center;
	min-height: 125px;
	padding: 22px;
	border: 1px solid var(--vipbrand-line);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 10px 26px rgba(40,57,71,.06);
	color: var(--vipbrand-navy) !important;
	text-decoration: none !important;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.vipbrand-brand-card:hover { transform: translateY(-4px); border-color: var(--vipbrand-pink); box-shadow: 0 18px 34px rgba(40,57,71,.11); }
.vipbrand-brand-mark { display: grid; grid-row: 1 / 3; place-items: center; width: 58px; height: 58px; border-radius: 15px; background: linear-gradient(135deg, var(--vipbrand-ice), var(--vipbrand-blush)); color: var(--vipbrand-pink-dark); font-size: 25px; font-weight: 900; }
.vipbrand-brand-card strong { align-self: end; font-size: 18px; line-height: 1.2; }
.vipbrand-brand-card > span:last-child { align-self: start; color: var(--vipbrand-muted); font-size: 13px; }

.vipbrand-carousel { position: relative; padding: 0 58px; }
.vipbrand-carousel-viewport { overflow-x: auto; scrollbar-width: none; scroll-snap-type: none; }
.vipbrand-carousel-viewport::-webkit-scrollbar { display: none; }
.vipbrand-carousel-track { display: flex; gap: 20px; padding: 10px 2px 24px; }
.vipbrand-review-card {
	flex: 0 0 calc((100% - 40px) / 3);
	min-height: 300px;
	padding: clamp(25px, 3vw, 38px);
	border: 1px solid var(--vipbrand-line);
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 14px 34px rgba(40,57,71,.07);
	scroll-snap-align: start;
}
.vipbrand-review-card blockquote { margin: 20px 0 28px; padding: 0; border: 0; color: #465a66; font-size: 17px; line-height: 1.75; }
.vipbrand-review-card strong { display: block; color: var(--vipbrand-navy); font-size: 17px; }
.vipbrand-review-card > span { color: var(--vipbrand-muted); font-size: 13px; }
.vipbrand-review-shot { overflow: hidden; min-height: 0; margin: 0; padding: 10px; }
.vipbrand-review-shot > a { display: block; overflow: hidden; border-radius: 15px; background: #f6f8f9; }
.vipbrand-review-shot img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain; }
.vipbrand-review-shot figcaption { padding: 12px 8px 5px; color: var(--vipbrand-muted); font-size: 13px; text-align: center; }
.vipbrand-stars { color: #f2b84b; font-size: 19px; letter-spacing: .1em; }
.vipbrand-carousel-button { position: absolute; z-index: 2; top: 44%; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--vipbrand-line); border-radius: 50%; background: #fff; box-shadow: 0 10px 22px rgba(40,57,71,.12); color: var(--vipbrand-navy); cursor: pointer; font-size: 32px; line-height: 1; }
.vipbrand-carousel-prev { left: 0; }
.vipbrand-carousel-next { right: 0; }
.vipbrand-carousel-dots { display: flex; justify-content: center; gap: 7px; margin-top: 4px; }
.vipbrand-carousel-dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: #cbd8dd; cursor: pointer; }
.vipbrand-carousel-dots button.is-active { width: 24px; border-radius: 999px; background: var(--vipbrand-pink); }
.vipbrand-reviews-cta { margin-top: 36px; text-align: center; }

/* Long-form service and SEO pages. */
.vipbrand-content-section {
	box-sizing: border-box;
	margin: 0;
	padding: clamp(42px, 5vw, 68px) 0;
}
.vipbrand-content-section + .vipbrand-content-section { border-top: 1px solid var(--vipbrand-line); }
.vipbrand-content-section > h2 { margin-top: 0; }
.vipbrand-content-section > p { max-width: 920px; color: var(--vipbrand-muted); font-size: 17px; }
.vipbrand-content-section--tint {
	background: #f2fbfe;
	box-shadow: 0 0 0 100vmax #f2fbfe;
	clip-path: inset(0 -100vmax);
}
.vipbrand-content-section--blush {
	background: #fff4f8;
	box-shadow: 0 0 0 100vmax #fff4f8;
	clip-path: inset(0 -100vmax);
}
.vipbrand-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.vipbrand-feature-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.vipbrand-feature-card {
	padding: clamp(23px, 3vw, 32px);
	border: 1px solid var(--vipbrand-line);
	border-radius: 19px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(40,57,71,.06);
}
.vipbrand-feature-card h3 { color: var(--vipbrand-cyan-dark); }
.vipbrand-feature-card p { margin: 0; color: var(--vipbrand-muted); }
.vipbrand-feature-card ul { margin: 14px 0 0; padding-left: 20px; color: var(--vipbrand-muted); }
.vipbrand-inline-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.vipbrand-text-link { color: var(--vipbrand-navy) !important; font-weight: 800; text-decoration-color: var(--vipbrand-pink) !important; text-decoration-thickness: 2px !important; text-underline-offset: 4px; }
.vipbrand-service-intro { position: relative; overflow: hidden; }
.vipbrand-service-intro::after { position: absolute; right: -70px; bottom: -90px; width: 260px; height: 260px; border-radius: 50%; background: rgba(81,200,232,.09); content: ""; }
.vipbrand-service-intro > * { position: relative; z-index: 1; }
.vipbrand-area-served { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.vipbrand-social-callout { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 28px; padding: clamp(28px, 4vw, 44px); border-radius: 22px; background: var(--vipbrand-navy); color: #fff; }
.vipbrand-social-callout h2, .vipbrand-social-callout h3 { margin: 0 0 10px; color: #fff; }
.vipbrand-social-callout p { margin: 0; color: #dbe8ed; }
.vipbrand-social-callout .vipbrand-socials { margin: 0; flex-wrap: nowrap; }
.vipbrand-social-callout .vipbrand-social { width: 52px; height: 52px; border: 2px solid rgba(255,255,255,.28); border-radius: 14px; }
.vipbrand-social-callout .vipbrand-social-buttons { justify-content: flex-end; margin: 0; }
.vipbrand-social-callout--split { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; gap: 0; padding: 0; overflow: hidden; }
.vipbrand-social-callout--split > div { min-width: 0; padding: clamp(30px, 4vw, 48px); }
.vipbrand-social-callout--split .vipbrand-social-callout__offers { border-left: 1px solid rgba(255,255,255,.18); }
.vipbrand-social-callout--split h2 { max-width: 520px; margin-bottom: 14px; font-size: clamp(25px, 2.65vw, 36px); line-height: 1.15; text-wrap: balance; }
.vipbrand-social-callout--split p { max-width: 610px; line-height: 1.65; }
.vipbrand-social-callout--split .vipbrand-callout-action { margin-top: 24px; }
.vipbrand-social-callout--split .vipbrand-social-callout__microcopy { margin-top: 11px; color: rgba(255,255,255,.7); font-size: 13px; line-height: 1.45; }
.vipbrand-social-callout--split .vipbrand-socials { margin-top: 24px; }
.vipbrand-social-callout--split .vipbrand-social { width: 54px; height: 54px; }
.vipbrand-faq [itemprop="acceptedAnswer"] { padding-right: 24px; }
.vipbrand-faq details[open] summary { color: var(--vipbrand-pink-dark); }
.vipbrand-form-section { max-width: 980px; margin-right: auto; margin-left: auto; }
.vipbrand-form-section h2 { color: #fff; }

@media (min-width: 761px) and (max-width: 1100px) {
	.vipbrand-review-card { flex-basis: calc((100% - 20px) / 2); }
}

.vipbrand-contacts-page { padding-bottom: 20px; }
.vipbrand-buyer-profile { display: grid; grid-template-columns: minmax(320px, .75fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 72px); align-items: stretch; margin-bottom: 54px; padding: clamp(24px, 4vw, 48px); border: 1px solid var(--vipbrand-line); border-radius: 28px; background: linear-gradient(120deg, var(--vipbrand-ice), var(--vipbrand-blush)); }
.vipbrand-buyer-photo { overflow: hidden; min-height: 510px; border-radius: 22px; background: #e8f4f7; }
.vipbrand-buyer-photo img { display: block; width: 100%; height: 100%; min-height: 510px; object-fit: cover; object-position: 50% 42%; }
.vipbrand-buyer-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(8px, 2vw, 24px) 0; }
.vipbrand-buyer-copy h1 { margin: 0 0 22px; font-size: clamp(38px, 5vw, 62px); }
.vipbrand-buyer-copy p { max-width: 800px; margin: 0 0 18px; color: var(--vipbrand-muted); font-size: 17px; line-height: 1.75; }
.vipbrand-buyer-copy .vipbrand-buyer-lead { color: var(--vipbrand-navy); font-size: 21px; font-weight: 650; }
.vipbrand-contacts-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(330px, .78fr); gap: 24px; margin-top: 20px; }
.vipbrand-contacts-lead, .vipbrand-contacts-panel { padding: clamp(28px, 4vw, 48px); border: 1px solid var(--vipbrand-line); border-radius: 24px; }
.vipbrand-contacts-lead { background: linear-gradient(120deg, var(--vipbrand-ice), var(--vipbrand-blush)); }
.vipbrand-contacts-lead h2 { margin: 0 0 16px; }
.vipbrand-contacts-lead p { max-width: 630px; color: var(--vipbrand-muted); font-size: 18px; }
.vipbrand-contacts-panel { background: var(--vipbrand-navy); color: #fff; }
.vipbrand-contacts-panel .vipbrand-contact-item { margin: 0 0 23px; }
.vipbrand-contacts-panel strong { color: #fff !important; font-size: 17px; }
.vipbrand-contacts-panel span { color: #eaf4f7 !important; font-size: 15px; }
.vipbrand-contacts-panel .vipbrand-phone { color: #9be8fa; }
.vipbrand-contacts-panel .vipbrand-callback { color: #fff; }
.vipbrand-contacts-panel .vipbrand-phone.vipbrand-btn { width: fit-content; margin: 9px 0 5px; color: #fff !important; font-size: 16px !important; text-decoration: none !important; }
.vipbrand-contact-socials { gap: 12px; margin: 25px 0 0; }
.vipbrand-contact-socials .vipbrand-social { width: 48px; height: 48px; border-radius: 12px; }
.vipbrand-contact-details { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 26px; }
.vipbrand-contact-details .vipbrand-card { min-height: 150px; }
.vipbrand-contact-details strong { display: block; margin-bottom: 10px; color: var(--vipbrand-navy); font-size: 18px; }
.vipbrand-map { overflow: hidden; margin-top: 26px; border: 1px solid var(--vipbrand-line); border-radius: 24px; }
.vipbrand-map iframe { display: block; width: 100%; min-height: 410px; border: 0; }

.site-footer-container { background: var(--vipbrand-ice); }
.site-footer { background: linear-gradient(120deg, #f1fbfe, #fff7fa); }
.footer-widgets { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px; }
.footer-widget .widget { margin: 0; }
.footer-widget .widget-header, .footer-widget h3 { color: var(--vipbrand-navy); font-size: 18px; font-weight: 800; }
.footer-widget ul { margin: 0; padding: 0; list-style: none; }
.footer-widget li { margin: 8px 0; }
.footer-widget li a, .vipbrand-footer-contact a { color: #5a6c77; font-size: 14px; }
.footer-widget li a:hover, .vipbrand-footer-contact a:hover { color: var(--vipbrand-pink-dark); }
.vipbrand-footer-contact { display: grid; gap: 15px; }
.vipbrand-contact-item { display: grid; gap: 3px; color: var(--vipbrand-muted); font-size: 14px; }
.vipbrand-contact-item strong { color: var(--vipbrand-navy); font-size: 15px; }
.vipbrand-contact-item span { color: var(--vipbrand-muted); }
.vipbrand-phone { color: var(--vipbrand-navy) !important; font-size: 16px !important; font-weight: 800; }
.vipbrand-callback { color: var(--vipbrand-pink-dark) !important; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.vipbrand-socials { display: flex; flex-wrap: wrap; gap: 9px; margin: 17px 0; }
.vipbrand-social { display: grid; width: 38px; height: 38px; overflow: hidden; border: 1px solid var(--vipbrand-line); border-radius: 9px; background: #fff; text-decoration: none !important; transition: transform .2s ease, box-shadow .2s ease; }
.vipbrand-social:hover { transform: translateY(-2px); box-shadow: 0 8px 16px rgba(40,57,71,.15); }
.vipbrand-social img { display: block; width: 100%; height: 100%; object-fit: cover; }
.vipbrand-social span { align-self: center; justify-self: center; font-size: 11px; font-weight: 800; }
.vipbrand-social-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 18px 0 0;
}
.vipbrand-social-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	padding: 10px 18px;
	border: 1px solid rgba(255,255,255,.3);
	border-radius: 999px;
	box-shadow: 0 10px 24px rgba(40,57,71,.16);
	color: #fff !important;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none !important;
	transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.vipbrand-social-button .pseudo-link {
	display: flex;
	align-items: center;
	justify-content: inherit;
	gap: 10px;
	width: 100%;
	color: inherit !important;
	cursor: pointer;
	text-decoration: none !important;
}
.vipbrand-social-button:hover {
	color: #fff !important;
	filter: brightness(.94);
	transform: translateY(-2px);
	box-shadow: 0 13px 28px rgba(40,57,71,.22);
}
.vipbrand-social-button--instagram { background: linear-gradient(135deg, #833ab4 0%, #e1306c 52%, #f77737 100%); }
.vipbrand-social-button--telegram { background: #066786; }
.vipbrand-social-button--viber { background: #5942c6; }
.vipbrand-social-button__icon {
	flex: 0 0 30px;
	width: 30px;
	height: 30px;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.55);
	border-radius: 8px;
	background: #fff;
}
.vipbrand-social-button__icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.vipbrand-social-button__label { color: inherit !important; }
.vipbrand-buyer-copy .vipbrand-social-buttons { margin-top: 6px; }
.vipbrand-contacts-panel .vipbrand-social-buttons {
	display: grid;
	grid-template-columns: 1fr;
	gap: 9px;
	margin-top: 8px;
}
.vipbrand-contacts-panel .vipbrand-social-button {
	justify-content: flex-start;
	width: 100%;
	min-height: 50px;
	padding: 9px 14px;
	color: #fff !important;
}
.vipbrand-language-switcher { position: relative; z-index: 5; width: fit-content; margin-top: 2px; color: var(--vipbrand-navy); font-size: 10px; }
.vipbrand-language-switcher summary { display: flex; align-items: center; gap: 7px; min-width: 42px; padding: 6px 8px; border-radius: 4px; background: var(--vipbrand-navy); color: #fff; cursor: pointer; font-weight: 700; list-style: none; }
.vipbrand-language-switcher summary::-webkit-details-marker { display: none; }
.vipbrand-language-switcher summary i { width: 7px; height: 7px; margin-top: -3px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); transition: transform .2s ease, margin .2s ease; }
.vipbrand-language-switcher[open] summary i { margin-top: 3px; transform: rotate(225deg); }
.vipbrand-language-menu { position: absolute; top: calc(100% + 5px); left: 0; min-width: 100%; padding: 4px; border: 1px solid var(--vipbrand-line); border-radius: 4px; background: #fff; box-shadow: 0 10px 20px rgba(40,57,71,.18); }
.vipbrand-language-menu a { display: block; padding: 4px 5px; color: var(--vipbrand-cyan-dark) !important; font-size: 10px !important; font-weight: 700; line-height: 1.2; text-decoration: none; }
.vipbrand-language-menu a:hover, .vipbrand-language-menu a:focus { color: var(--vipbrand-pink-dark) !important; }
.vipbrand-order-socials { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--vipbrand-line); }
.vipbrand-order-socials p { margin: 0; color: var(--vipbrand-navy); font-size: 16px; }
.vipbrand-order-socials .vipbrand-contact-socials { margin-top: 18px; }
.footer-bottom { border-top: 1px solid var(--vipbrand-line); }
.footer-info { color: var(--vipbrand-muted); font-size: 13px; }
.footer-navigation { display: none; }

@media (max-width: 760px) {
	.site-branding { align-items: flex-start; gap: 10px; }
	.site-logotype img { max-width: 145px; max-height: 72px; }
	.site-description { max-width: 58vw; font-size: 16px; line-height: 1.25; }
	.site-header-inner, .main-navigation-inner { padding-right: 14px !important; padding-left: 14px !important; }
	.site-content-inner { width: 100% !important; padding-right: 14px; padding-left: 14px; }
	.vipbrand-grid, .footer-widgets, .vipbrand-contacts-intro, .vipbrand-contact-details, .vipbrand-service-grid, .vipbrand-store-grid, .vipbrand-buyer-profile, .vipbrand-feature-grid, .vipbrand-feature-grid--four, .vipbrand-social-callout { grid-template-columns: 1fr; gap: 14px; }
	.vipbrand-social-callout .vipbrand-socials { margin-top: 18px; }
	.vipbrand-social-callout .vipbrand-social-buttons { justify-content: flex-start; margin-top: 18px; }
	.vipbrand-social-callout--split { gap: 0; }
	.vipbrand-social-callout--split > div { padding: 26px 22px; }
	.vipbrand-social-callout--split .vipbrand-social-callout__offers { border-top: 1px solid rgba(255,255,255,.18); border-left: 0; }
	.vipbrand-social-callout--split h2 { font-size: clamp(24px, 8vw, 30px); }
	.vipbrand-social-callout--split .vipbrand-socials { margin-top: 20px; }
	.vipbrand-hero { border-radius: 20px; }
	.vipbrand-card, .vipbrand-link-card { padding: 22px; }
	.vipbrand-cta { border-radius: 18px; }
	.vipbrand-directory-hero { align-items: flex-start; flex-direction: column; border-radius: 20px; }
	.vipbrand-brand-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.vipbrand-brand-card { grid-template-columns: 44px 1fr; min-height: 104px; padding: 14px; column-gap: 11px; }
	.vipbrand-brand-mark { width: 44px; height: 44px; border-radius: 12px; font-size: 20px; }
	.vipbrand-brand-card strong { font-size: 15px; }
	.vipbrand-carousel { padding: 0 42px; }
	.vipbrand-review-card { flex-basis: 100%; min-height: 280px; }
	.vipbrand-buyer-profile { padding: 18px; border-radius: 20px; }
	.vipbrand-buyer-photo, .vipbrand-buyer-photo img { min-height: 420px; }
	.vipbrand-map { border-radius: 18px; }
	.vipbrand-map iframe { min-height: 300px; }
}

/* Visual catalogues and the refreshed home page. Uses only VipBrand-owned photographs. */
.vipbrand-home-refresh { max-width: none; }
.vipbrand-home-refresh > section { position: relative; }
.vipbrand-home-refresh .vipbrand-home-inner,
.vipbrand-directory-page { box-sizing: border-box; width: 100%; max-width: 1540px; margin: 0 auto; }
.vipbrand-visual-hero { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); overflow: hidden; margin: 8px 0 0; border: 1px solid var(--vipbrand-line); border-radius: 30px; background: linear-gradient(120deg, var(--vipbrand-ice), var(--vipbrand-blush)); box-shadow: 0 22px 52px rgba(40,57,71,.09); }
.vipbrand-visual-hero-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(34px, 6vw, 78px); }
.vipbrand-visual-hero h1 { max-width: 760px; margin: 14px 0 20px; color: var(--vipbrand-navy); font-size: clamp(38px, 5.1vw, 68px); line-height: 1.08; }
.vipbrand-visual-hero p { max-width: 740px; margin: 0; color: #536671; font-size: clamp(17px, 1.7vw, 21px); }
.vipbrand-visual-hero-figure { position: relative; min-height: 520px; margin: 0; background: #dceff5; }
.vipbrand-visual-hero-figure::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(242,251,254,.22), transparent 42%); content: ""; pointer-events: none; }
.vipbrand-visual-hero-figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.vipbrand-home-band { margin: 0; padding: clamp(58px, 7vw, 100px) 0; clip-path: inset(0 -100vmax); }
.vipbrand-home-band .vipbrand-home-inner > h2 { margin: 0 0 16px; font-size: clamp(31px, 4vw, 48px); }
.vipbrand-home-band .vipbrand-home-inner > .vipbrand-section-lead { max-width: 760px; margin: 0 0 34px; color: var(--vipbrand-muted); font-size: 18px; }
.vipbrand-home-band--ice { background: #eefafe; box-shadow: 0 0 0 100vmax #eefafe; }
.vipbrand-home-band--blush { background: #fff3f8; box-shadow: 0 0 0 100vmax #fff3f8; }
.vipbrand-home-band--white { background: #fff; box-shadow: 0 0 0 100vmax #fff; }
.vipbrand-service-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.vipbrand-service-point { min-height: 210px; padding: clamp(24px, 3vw, 36px); border: 1px solid var(--vipbrand-line); border-radius: 22px; background: #fff; box-shadow: 0 12px 28px rgba(40,57,71,.06); }
.vipbrand-service-point-number { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 26px; border-radius: 14px; background: linear-gradient(135deg, var(--vipbrand-cyan), #8ce3f5); color: #fff; font-size: 22px; font-weight: 800; }
.vipbrand-service-point h3 { margin: 0 0 9px; color: var(--vipbrand-navy); font-size: 22px; }
.vipbrand-service-point p { margin: 0; color: var(--vipbrand-muted); }
.vipbrand-process-layout { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr); gap: clamp(30px, 6vw, 90px); align-items: center; }
.vipbrand-process-layout .vipbrand-steps { margin-top: 28px; }
.vipbrand-process-photo { position: relative; min-height: 470px; margin: 0; }
.vipbrand-process-photo img { display: block; width: 100%; height: 100%; min-height: 470px; border-radius: 26px; object-fit: cover; }
.vipbrand-process-badge { position: absolute; right: -18px; bottom: 28px; max-width: 210px; padding: 22px; border: 1px solid rgba(255,255,255,.55); border-radius: 17px; background: rgba(40,57,71,.94); box-shadow: 0 16px 34px rgba(40,57,71,.22); color: #fff; font-weight: 800; line-height: 1.35; }
.vipbrand-photo-mosaic { display: grid; grid-template-columns: 1.25fr .85fr .85fr; grid-template-rows: repeat(2, 220px); gap: 16px; }
.vipbrand-photo-mosaic figure { position: relative; overflow: hidden; margin: 0; border-radius: 20px; background: #e9f4f7; }
.vipbrand-photo-mosaic figure:first-child { grid-row: 1 / 3; }
.vipbrand-photo-mosaic img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.vipbrand-photo-mosaic figure:hover img { transform: scale(1.04); }
.vipbrand-photo-mosaic figcaption { position: absolute; right: 12px; bottom: 12px; left: 12px; padding: 10px 12px; border-radius: 10px; background: rgba(40,57,71,.82); color: #fff; font-size: 13px; font-weight: 700; }
.vipbrand-logo-directory { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 16px; }
.vipbrand-logo-card { position: relative; display: flex; flex-direction: column; justify-content: space-between; min-height: 175px; padding: 22px; border: 1px solid var(--vipbrand-line); border-radius: 20px; background: #fff; box-shadow: 0 12px 26px rgba(40,57,71,.05); color: var(--vipbrand-navy) !important; text-decoration: none !important; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.vipbrand-logo-card::after { position: absolute; top: 17px; right: 19px; color: #9cb3bd; content: "↗"; font-size: 23px; }
.vipbrand-logo-card:hover { transform: translateY(-5px); border-color: var(--vipbrand-pink); box-shadow: 0 19px 36px rgba(40,57,71,.11); }
.vipbrand-logo-word { display: flex; align-items: center; min-height: 94px; padding-right: 14px; color: #1d2429; font-family: Georgia, "Times New Roman", serif; font-size: clamp(22px, 2vw, 33px); font-weight: 700; letter-spacing: -.055em; line-height: .95; }
.vipbrand-logo-card .vipbrand-logo-caption { color: var(--vipbrand-muted); font-size: 13px; font-weight: 700; }
.vipbrand-logo-card.brand-nike .vipbrand-logo-word, .vipbrand-logo-card.brand-adidas .vipbrand-logo-word, .vipbrand-logo-card.brand-cos .vipbrand-logo-word, .vipbrand-logo-card.brand-gucci .vipbrand-logo-word, .vipbrand-logo-card.brand-prada .vipbrand-logo-word, .vipbrand-logo-card.brand-fendi .vipbrand-logo-word, .vipbrand-logo-card.brand-moncler .vipbrand-logo-word { font-family: Arial, Helvetica, sans-serif; letter-spacing: .02em; font-weight: 900; }
.vipbrand-logo-card.brand-dolce-gabbana .vipbrand-logo-word { font-size: clamp(18px, 1.7vw, 27px); letter-spacing: -.05em; }
.vipbrand-logo-card.brand-saint-laurent .vipbrand-logo-word { letter-spacing: .07em; text-transform: uppercase; }
.vipbrand-logo-card.brand-new-balance .vipbrand-logo-word, .vipbrand-logo-card.brand-tommy-hilfiger .vipbrand-logo-word { font-family: Arial, Helvetica, sans-serif; font-style: italic; font-weight: 800; }
.vipbrand-store-directory { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.vipbrand-store-card { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 220px; padding: 25px; overflow: hidden; border: 1px solid var(--vipbrand-line); border-radius: 22px; background: linear-gradient(135deg, #fff, #f2fbfe); color: var(--vipbrand-navy) !important; text-decoration: none !important; transition: transform .2s ease, box-shadow .2s ease; }
.vipbrand-store-card::before { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: radial-gradient(circle at 86% 15%, rgba(81,200,232,.34), transparent 35%), radial-gradient(circle at 10% 94%, rgba(243,154,187,.23), transparent 38%); content: ""; }
.vipbrand-store-card:hover { transform: translateY(-5px); box-shadow: 0 20px 38px rgba(40,57,71,.12); }
.vipbrand-store-card > * { position: relative; z-index: 1; }
.vipbrand-store-card strong { max-width: 85%; font-family: Georgia, "Times New Roman", serif; font-size: clamp(26px, 2.3vw, 38px); letter-spacing: -.045em; line-height: .96; }
.vipbrand-store-card span { margin-top: 13px; color: var(--vipbrand-muted); font-size: 14px; font-weight: 700; }
.vipbrand-directory-visual { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .78fr); overflow: hidden; margin-bottom: 54px; border: 1px solid var(--vipbrand-line); border-radius: 29px; background: linear-gradient(120deg, var(--vipbrand-ice), var(--vipbrand-blush)); }
.vipbrand-directory-visual-copy { padding: clamp(35px, 6vw, 72px); }
.vipbrand-directory-visual h1 { margin: 14px 0 18px; font-size: clamp(37px, 5vw, 62px); line-height: 1.08; }
.vipbrand-directory-visual p { max-width: 730px; margin: 0; color: var(--vipbrand-muted); font-size: 19px; }
.vipbrand-directory-visual figure { min-height: 390px; margin: 0; }
.vipbrand-directory-visual img { display: block; width: 100%; height: 100%; min-height: 390px; object-fit: cover; }
.vipbrand-directory-page .vipbrand-content-section { max-width: 100%; }
.vipbrand-directory-page .vipbrand-content-section--tint, .vipbrand-directory-page .vipbrand-content-section--blush { padding-right: 0; padding-left: 0; }
.vipbrand-store-detail .vipbrand-directory-visual { grid-template-columns: minmax(0, 1fr) minmax(280px, .65fr); }
.vipbrand-store-detail .vipbrand-directory-visual figure, .vipbrand-store-detail .vipbrand-directory-visual img { min-height: 310px; }
.vipbrand-html-sitemap { max-width: 940px; }
.vipbrand-html-sitemap-list { margin: 0; padding-left: 24px; }
.vipbrand-html-sitemap-list li { margin: 9px 0; }
.vipbrand-html-sitemap-list ul { margin: 8px 0 0; }
.vipbrand-html-sitemap-list a { color: var(--vipbrand-navy); font-weight: 700; text-decoration-color: var(--vipbrand-pink); text-underline-offset: 3px; }
.vipbrand-html-sitemap-list a:hover { color: var(--vipbrand-cyan-dark); }

@media (max-width: 1000px) {
	.vipbrand-visual-hero, .vipbrand-directory-visual, .vipbrand-process-layout { grid-template-columns: 1fr; }
	.vipbrand-visual-hero-figure { min-height: 380px; }
	.vipbrand-service-points { grid-template-columns: 1fr; }
	.vipbrand-logo-directory { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.vipbrand-store-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
	.vipbrand-visual-hero, .vipbrand-directory-visual { border-radius: 21px; }
	.vipbrand-visual-hero-copy, .vipbrand-directory-visual-copy { padding: 30px 22px; }
	.vipbrand-visual-hero h1, .vipbrand-directory-visual h1 { font-size: 37px; }
	.vipbrand-visual-hero-figure, .vipbrand-directory-visual figure, .vipbrand-directory-visual img { min-height: 300px; }
	.vipbrand-home-band { padding: 52px 0; }
	.vipbrand-process-photo, .vipbrand-process-photo img { min-height: 355px; }
	.vipbrand-process-badge { right: 14px; bottom: 14px; max-width: 190px; padding: 17px; }
	.vipbrand-photo-mosaic { grid-template-columns: 1fr 1fr; grid-template-rows: 260px 150px 150px; gap: 10px; }
	.vipbrand-photo-mosaic figure:first-child { grid-column: 1 / 3; grid-row: 1; }
	.vipbrand-logo-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.vipbrand-logo-card { min-height: 130px; padding: 15px; border-radius: 15px; }
	.vipbrand-logo-word { min-height: 67px; font-size: 23px; }
	.vipbrand-store-directory { grid-template-columns: 1fr; }
	.vipbrand-store-card { min-height: 170px; }
}

/* Compact photography and logo-style catalog cards on the refreshed home page. */
.vipbrand-visual-hero { grid-template-columns: minmax(0, 1.28fr) minmax(300px, .72fr); }
.vipbrand-visual-hero-figure { display: flex; align-items: center; justify-content: center; min-height: 0; padding: clamp(22px, 3.6vw, 54px); background: transparent; }
.vipbrand-visual-hero-figure::after { border-radius: 22px; }
.vipbrand-visual-hero-figure img { position: relative; z-index: 1; height: clamp(300px, 30vw, 420px); border-radius: 22px; box-shadow: 0 18px 38px rgba(40,57,71,.16); }
.vipbrand-process-layout { grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr); gap: clamp(28px, 5vw, 74px); }
.vipbrand-process-photo { width: 100%; max-width: 420px; min-height: 0; justify-self: end; }
.vipbrand-process-photo img { min-height: 0; height: clamp(300px, 28vw, 390px); box-shadow: 0 18px 38px rgba(40,57,71,.14); }

.vipbrand-discovery { margin-top: 34px; }
.vipbrand-discovery h3 { margin: 0 0 17px; color: var(--vipbrand-navy); font-size: clamp(24px, 3vw, 33px); }
.vipbrand-discovery-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.vipbrand-discovery-grid article { padding: 18px; border: 1px solid rgba(255,255,255,.65); border-radius: 16px; background: rgba(255,255,255,.62); }
.vipbrand-discovery-grid h4 { margin: 0 0 7px; color: var(--vipbrand-navy); font-size: 18px; }
.vipbrand-discovery-grid p { margin: 0; color: var(--vipbrand-muted); font-size: 14px; line-height: 1.5; }

.vipbrand-logo-card { display: grid; grid-template-rows: 180px auto; gap: 15px; min-height: 0; padding: 16px; border: 0; border-radius: 16px; background: #f2f4f5; box-shadow: none; }
.vipbrand-logo-card::after { top: 12px; right: 14px; z-index: 2; font-size: 18px; opacity: 0; }
.vipbrand-logo-card:hover::after { opacity: .75; }
.vipbrand-logo-card:hover { border: 0; background: #ebf9fd; box-shadow: 0 14px 28px rgba(40,57,71,.10); }
.vipbrand-logo-mark { display: grid; place-items: center; width: 180px; max-width: 100%; height: 180px; margin: 0 auto; padding: 22px; border-radius: 11px; background: #fff; }
.vipbrand-logo-mark img, .vipbrand-store-logo img { display: block; max-width: 90%; max-height: 136px; width: auto; height: auto; object-fit: contain; object-position: center; image-rendering: auto; }
.vipbrand-logo-word { min-height: 0; padding: 0; color: #111; font-size: clamp(21px, 1.8vw, 31px); text-align: center; }
.vipbrand-logo-name { color: var(--vipbrand-navy); font-size: 17px; font-weight: 800; line-height: 1.2; text-align: center; }
.vipbrand-logo-card.brand-zara .vipbrand-logo-word, .vipbrand-logo-card.brand-mango .vipbrand-logo-word, .vipbrand-logo-card.brand-massimo-dutti .vipbrand-logo-word, .vipbrand-logo-card.brand-arket .vipbrand-logo-word { letter-spacing: .09em; text-transform: uppercase; }
.vipbrand-logo-card.brand-nike .vipbrand-logo-word::before { display: block; margin-bottom: 5px; content: "➤"; font-size: 19px; transform: rotate(-12deg); }
.vipbrand-logo-card.brand-adidas .vipbrand-logo-word::before { display: block; margin-bottom: 5px; content: "▲ ▲ ▲"; font-size: 13px; letter-spacing: -.12em; }
.vipbrand-logo-card.brand-tommy-hilfiger .vipbrand-logo-word::before { display: block; width: 58px; height: 15px; margin: 0 auto 8px; background: linear-gradient(90deg, #12284b 0 33%, #fff 33% 66%, #c71932 66%); content: ""; }

.vipbrand-store-directory { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.vipbrand-store-card { display: grid; grid-template-rows: minmax(160px, 1fr) auto auto; min-height: 0; padding: 16px; border: 0; border-radius: 16px; background: #f2f4f5; box-shadow: none; }
.vipbrand-store-card::before { display: none; }
.vipbrand-store-card:hover { background: #ebf9fd; box-shadow: 0 14px 28px rgba(40,57,71,.10); }
.vipbrand-store-logo { display: grid; place-items: center; min-height: 160px; padding: 24px; border-radius: 11px; background: #fff; color: #111; font-family: Georgia, "Times New Roman", serif; font-size: clamp(22px, 2vw, 31px); font-weight: 700; letter-spacing: -.05em; line-height: .98; text-align: center; }
.vipbrand-store-card strong { max-width: none; margin-top: 14px; color: var(--vipbrand-navy); font-family: inherit; font-size: 17px; letter-spacing: 0; line-height: 1.2; text-align: center; }
.vipbrand-store-card span:not(.vipbrand-store-logo) { margin-top: 6px; font-size: 12px; font-weight: 700; text-align: center; }
.vipbrand-store-card.store-net-a-porter .vipbrand-store-logo, .vipbrand-store-card.store-ssense .vipbrand-store-logo { font-family: Arial, Helvetica, sans-serif; font-size: 20px; font-weight: 900; letter-spacing: .07em; }
.vipbrand-store-card.store-mytheresa .vipbrand-store-logo { font-family: Georgia, "Times New Roman", serif; font-style: italic; }
.vipbrand-store-card.store-zalando .vipbrand-store-logo { font-family: Arial, Helvetica, sans-serif; font-weight: 900; text-transform: lowercase; }

/* One clean logo treatment for every individual brand and store landing page. */
.vipbrand-directory-visual figure.vipbrand-directory-logo { display: flex; align-items: center; justify-content: center; min-height: 310px; padding: clamp(28px, 4vw, 58px); background: rgba(255,255,255,.44); }
.vipbrand-directory-logo .vipbrand-detail-logo, .vipbrand-brand-detail-logo { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 220px; padding: clamp(28px, 4vw, 54px); border-radius: 18px; background: #fff; box-shadow: 0 16px 34px rgba(40,57,71,.09); }
.vipbrand-directory-logo .vipbrand-detail-logo img, .vipbrand-brand-detail-logo img { display: block; width: auto; height: auto; max-width: 84%; max-height: 160px; min-height: 0; object-fit: contain; object-position: center; }
.vipbrand-brand-detail-logo { max-width: 880px; min-height: 260px; margin: 26px auto 44px; }

@media (max-width: 1000px) {
	.vipbrand-visual-hero-figure { padding: 26px; }
	.vipbrand-visual-hero-figure img { height: 360px; }
	.vipbrand-process-photo { max-width: 520px; justify-self: start; }
	.vipbrand-discovery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.vipbrand-store-directory { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
	.vipbrand-visual-hero-figure { padding: 18px; }
	.vipbrand-visual-hero-figure img { height: 290px; }
	.vipbrand-process-photo { max-width: none; }
	.vipbrand-process-photo img { height: 310px; }
	.vipbrand-discovery-grid, .vipbrand-store-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.vipbrand-logo-card, .vipbrand-store-card { padding: 10px; }
	.vipbrand-logo-card, .vipbrand-store-card { grid-template-rows: minmax(112px, 1fr) auto auto; }
	.vipbrand-logo-mark { width: 112px; height: 112px; min-height: 112px; padding: 14px; }
	.vipbrand-store-logo { min-height: 112px; padding: 16px; }
	.vipbrand-logo-mark img, .vipbrand-store-logo img { max-height: 74px; }
	.vipbrand-directory-visual figure.vipbrand-directory-logo { min-height: 250px; padding: 26px; }
	.vipbrand-directory-logo .vipbrand-detail-logo, .vipbrand-brand-detail-logo { min-height: 170px; padding: 25px; }
	.vipbrand-directory-logo .vipbrand-detail-logo img, .vipbrand-brand-detail-logo img { max-height: 105px; }
	.vipbrand-store-card strong, .vipbrand-logo-name { font-size: 15px; }
}

/* Home-page carousels and the final mobile override keep the hero from collapsing. */
.vipbrand-home .vipbrand-logo-directory,
.vipbrand-home .vipbrand-store-directory { display: flex; gap: 16px; overflow-x: auto; padding: 4px 2px 16px; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.vipbrand-home .vipbrand-logo-directory::-webkit-scrollbar,
.vipbrand-home .vipbrand-store-directory::-webkit-scrollbar { display: none; }
.vipbrand-home .vipbrand-logo-card { flex: 0 0 clamp(210px, 18vw, 250px); scroll-snap-align: start; }
.vipbrand-home .vipbrand-store-card { flex: 0 0 clamp(220px, 19vw, 270px); scroll-snap-align: start; }
.vipbrand-hero-social-links .vipbrand-socials { margin: 18px 0 0; }
.vipbrand-hero-social-links .vipbrand-social { width: 44px; height: 44px; border-radius: 12px; }

@media (max-width: 1000px) {
	.vipbrand-home .vipbrand-visual-hero { grid-template-columns: minmax(0, 1fr); }
	.vipbrand-home .vipbrand-visual-hero-copy,
	.vipbrand-home .vipbrand-visual-hero-figure { min-width: 0; }
}

@media (max-width: 760px) {
	.vipbrand-home .vipbrand-visual-hero { width: 100%; grid-template-columns: minmax(0, 1fr); }
	.vipbrand-home .vipbrand-visual-hero-copy { min-width: 0; padding: 30px 22px; }
	.vipbrand-home .vipbrand-visual-hero h1,
	.vipbrand-home .vipbrand-visual-hero p,
	.vipbrand-home .vipbrand-hero-note { min-width: 0; overflow-wrap: break-word; word-break: normal; }
	.vipbrand-home .vipbrand-visual-hero-figure { width: 100%; min-width: 0; padding: 18px; }
	.vipbrand-home .vipbrand-visual-hero-figure img { width: 100%; max-width: 100%; min-height: 0; height: 290px; }
	.vipbrand-home .vipbrand-logo-directory,
	.vipbrand-home .vipbrand-store-directory { gap: 12px; margin-right: -14px; padding-right: 14px; }
	.vipbrand-home .vipbrand-logo-card { flex-basis: 164px; }
	.vipbrand-home .vipbrand-store-card { flex-basis: 180px; }
}

/*
 * Mobile layout hardening. Reboot's late desktop grid declarations can otherwise
 * win over the earlier responsive rules and compress the first column to a few
 * pixels. These rules intentionally sit last and apply to every visual/page
 * split used across VipBrand, not only the homepage.
 */
@media (max-width: 1000px) {
	.vipbrand-page .vipbrand-visual-hero,
	.vipbrand-page .vipbrand-directory-visual,
	.vipbrand-page .vipbrand-process-layout {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		width: 100% !important;
		min-width: 0 !important;
	}

	.vipbrand-page .vipbrand-visual-hero-copy,
	.vipbrand-page .vipbrand-visual-hero-figure,
	.vipbrand-page .vipbrand-directory-visual-copy,
	.vipbrand-page .vipbrand-directory-visual > figure,
	.vipbrand-page .vipbrand-process-layout > div,
	.vipbrand-page .vipbrand-process-photo,
	.vipbrand-page .vipbrand-service-points,
	.vipbrand-page .vipbrand-feature-grid,
	.vipbrand-page .vipbrand-discovery-grid,
	.vipbrand-page .vipbrand-photo-mosaic {
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	.vipbrand-page .vipbrand-process-photo {
		justify-self: stretch !important;
	}

	.vipbrand-page .vipbrand-step {
		grid-template-columns: 32px minmax(0, 1fr) !important;
		width: 100% !important;
		min-width: 0 !important;
	}

	.vipbrand-page .vipbrand-step p,
	.vipbrand-page .vipbrand-visual-hero h1,
	.vipbrand-page .vipbrand-visual-hero p,
	.vipbrand-page .vipbrand-directory-visual h1,
	.vipbrand-page .vipbrand-directory-visual p,
	.vipbrand-page .vipbrand-process-layout h2,
	.vipbrand-page .vipbrand-process-layout p {
		min-width: 0 !important;
		overflow-wrap: break-word;
		word-break: normal;
	}
}

@media (max-width: 760px) {
	.vipbrand-page .vipbrand-visual-hero,
	.vipbrand-page .vipbrand-directory-visual {
		border-radius: 21px;
	}

	.vipbrand-page .vipbrand-visual-hero-copy,
	.vipbrand-page .vipbrand-directory-visual-copy {
		padding: 30px 22px !important;
	}

	.vipbrand-page .vipbrand-visual-hero h1,
	.vipbrand-page .vipbrand-directory-visual h1 {
		font-size: clamp(31px, 9vw, 40px) !important;
		line-height: 1.1 !important;
	}

	.vipbrand-page .vipbrand-visual-hero-figure,
	.vipbrand-page .vipbrand-directory-visual > figure {
		padding: 18px !important;
		min-height: 0 !important;
	}

	.vipbrand-page .vipbrand-visual-hero-figure img,
	.vipbrand-page .vipbrand-directory-visual > figure img {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		height: 290px !important;
		min-height: 0 !important;
	}

	.vipbrand-page .vipbrand-process-layout {
		gap: 28px !important;
	}

	.vipbrand-page .vipbrand-process-photo,
	.vipbrand-page .vipbrand-process-photo img {
		height: 310px !important;
		min-height: 0 !important;
	}

	.vipbrand-page .vipbrand-step {
		column-gap: 12px;
		padding: 14px 14px !important;
	}
}

/* Native Reboot contact form and masked social links. */
.vipbrand-social .pseudo-link { display: grid; width: 100%; height: 100%; cursor: pointer; }
.vipbrand-social .pseudo-link img { display: block; width: 100%; height: 100%; object-fit: cover; }
.vipbrand-social .pseudo-link span { align-self: center; justify-self: center; font-size: 11px; font-weight: 800; }
.vipbrand-page .contact-form { margin-top: 24px; }
.vipbrand-page .contact-form__field { margin: 0 0 16px; }
.vipbrand-page .contact-form__field label { display: block; margin-bottom: 7px; color: inherit; font-size: 14px; font-weight: 700; }
.vipbrand-page .contact-form input:not([type="submit"]),
.vipbrand-page .contact-form textarea { box-sizing: border-box; width: 100%; padding: 12px 15px; border: 1px solid rgba(255,255,255,.22); border-radius: 9px; outline: 0; background: rgba(255,255,255,.14); color: inherit; font: inherit; }
.vipbrand-page .contact-form textarea { min-height: 130px; resize: vertical; }
.vipbrand-page .contact-form input::placeholder,
.vipbrand-page .contact-form textarea::placeholder { color: currentColor; opacity: .62; }
.vipbrand-page .contact-form .btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 11px 22px; border: 0; border-radius: 999px; background: var(--vipbrand-cyan); box-shadow: 0 10px 22px rgba(52,185,216,.22); color: #fff; cursor: pointer; font: inherit; font-weight: 800; transition: transform .2s ease, background .2s ease; }
.vipbrand-page .contact-form .btn:hover { background: var(--vipbrand-cyan-dark); transform: translateY(-2px); }
.vipbrand-page .contact-form__errors { margin: 0 0 18px; padding: 13px 18px 13px 36px; border-radius: 10px; background: rgba(243,154,187,.22); color: #fff; }
.vipbrand-page .contact-form__success { padding: 16px 18px; border-radius: 10px; background: rgba(81,200,232,.22); color: #fff; font-weight: 700; }
.vipbrand-page:not(.vipbrand-home) .vipbrand-content-section .contact-form input:not([type="submit"]),
.vipbrand-page:not(.vipbrand-home) .vipbrand-content-section .contact-form textarea { border-color: var(--vipbrand-line); background: #fff; color: var(--vipbrand-navy); }
.vipbrand-page:not(.vipbrand-home) .vipbrand-content-section .contact-form__field label { color: var(--vipbrand-navy); }
.vipbrand-page:not(.vipbrand-home) .vipbrand-content-section .contact-form__errors { color: var(--vipbrand-navy); }
.vipbrand-page:not(.vipbrand-home) .vipbrand-content-section .contact-form__success { color: var(--vipbrand-navy); }

/* Stage 6: conversion clarity, keyboard access and mobile interaction quality. */
:root {
	--vipbrand-cyan-dark: #147a91;
	--vipbrand-pink-dark: #bd4b79;
}

:where(a, button, input, textarea, select, summary, [tabindex]):focus-visible {
	outline: 3px solid #147a91 !important;
	outline-offset: 3px;
}

.vipbrand-btn,
.vipbrand-page .contact-form .btn,
.vipbrand-page .wpcf7-submit {
	background: var(--vipbrand-cyan-dark);
	box-shadow: 0 10px 22px rgba(20,122,145,.24);
}
.vipbrand-btn:hover,
.vipbrand-page .contact-form .btn:hover,
.vipbrand-page .wpcf7-submit:hover { background: #12697d; }
.vipbrand-btn--pink { background: var(--vipbrand-pink-dark); box-shadow: 0 10px 22px rgba(189,75,121,.24); }
.vipbrand-btn--pink:hover { background: #a83a68; }
.vipbrand-btn--light,
.vipbrand-btn--light:hover { background: #fff; color: var(--vipbrand-navy) !important; }

.main-navigation ul li a { display: flex; align-items: center; min-height: 44px; }
.vipbrand-social { width: 44px; height: 44px; }
.vipbrand-language-switcher { font-size: 12px; }
.vipbrand-language-switcher summary { min-width: 48px; min-height: 44px; padding: 8px 10px; }
.vipbrand-language-menu a { display: flex; align-items: center; min-height: 40px; padding: 7px 8px; font-size: 12px !important; }

.vipbrand-hero-trust {
	display: flex;
	flex-wrap: wrap;
	gap: 9px 16px;
	margin: 23px 0 0 !important;
	padding: 0 !important;
	max-width: 820px !important;
	list-style: none;
}
.vipbrand-hero-trust::before { display: none !important; }
.vipbrand-hero-trust li {
	position: relative;
	margin: 0;
	padding-left: 22px;
	color: #52636d;
	font-size: 14px;
	font-weight: 700;
}
.vipbrand-hero-trust li::before {
	position: absolute;
	top: .08em;
	left: 0;
	color: var(--vipbrand-cyan-dark);
	content: "✓";
	font-weight: 900;
}

.vipbrand-strip-controls {
	display: flex;
	justify-content: flex-end;
	gap: 9px;
	margin: -8px 0 12px;
}
.vipbrand-strip-controls.is-static { display: none; }
.vipbrand-strip-control {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 1px solid var(--vipbrand-line);
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 8px 18px rgba(40,57,71,.10);
	color: var(--vipbrand-navy);
	cursor: pointer;
	font-size: 30px;
	line-height: 1;
}
.vipbrand-strip-control:disabled { cursor: default; opacity: .38; }

.vipbrand-carousel-button { width: 48px; height: 48px; }
.vipbrand-carousel-dots { gap: 1px; }
.vipbrand-carousel-dots button,
.vipbrand-carousel-dots button.is-active {
	position: relative;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: transparent;
}
.vipbrand-carousel-dots button::before {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #aabcc3;
	content: "";
	transform: translate(-50%,-50%);
}
.vipbrand-carousel-dots button.is-active::before { width: 24px; border-radius: 999px; background: var(--vipbrand-pink-dark); }

.vipbrand-form-lead { max-width: 760px; margin: 0 0 22px; color: var(--vipbrand-muted); font-size: 16px; }
.vipbrand-form-submit-note { margin: 4px 0 14px; color: inherit; font-size: 13px; opacity: .8; }
.vipbrand-page .contact-form input:not([type="submit"]):focus,
.vipbrand-page .contact-form textarea:focus {
	border-color: var(--vipbrand-cyan-dark);
	box-shadow: 0 0 0 3px rgba(20,122,145,.15);
}
.vipbrand-page .contact-form .btn:disabled { cursor: wait; opacity: .7; transform: none; }

.vipbrand-conversion-dock {
	position: fixed;
	z-index: 80;
	right: 22px;
	bottom: 22px;
	display: grid;
	gap: 9px;
	width: max-content;
	max-width: calc(100vw - 32px);
	filter: drop-shadow(0 14px 28px rgba(40,57,71,.18));
}
.vipbrand-conversion-dock__action {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 11px 19px;
	border-radius: 999px;
	color: #fff !important;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	text-decoration: none !important;
}
.vipbrand-conversion-dock__action .pseudo-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	color: inherit !important;
	cursor: pointer;
	text-decoration: none !important;
}
.vipbrand-conversion-dock__action--instagram { background: var(--vipbrand-pink-dark); }
.vipbrand-conversion-dock__action--instagram:hover { background: #a83a68; color: #fff !important; }
.vipbrand-conversion-dock__action--telegram { background: #066786; }
.vipbrand-conversion-dock__action--telegram:hover { background: #04566f; color: #fff !important; }
.vipbrand-conversion-dock__action--viber { background: #5942c6; }
.vipbrand-conversion-dock__action--viber:hover { background: #4731a8; color: #fff !important; }

@media (max-width: 760px) {
	body { padding-bottom: calc(70px + env(safe-area-inset-bottom)); }
	.vipbrand-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
	.vipbrand-actions .vipbrand-btn { width: 100%; min-height: 50px; padding-right: 16px; padding-left: 16px; }
	.vipbrand-social-buttons { display: grid; grid-template-columns: 1fr; width: 100%; }
	.vipbrand-social-button { justify-content: flex-start; width: 100%; }
	.vipbrand-hero-trust { display: grid; gap: 8px; }
	.vipbrand-strip-controls { margin-top: 0; }
	.vipbrand-strip-control { width: 44px; height: 44px; }
	.vipbrand-carousel { padding: 0 38px; }
	.vipbrand-carousel-button { width: 44px; height: 44px; font-size: 28px; }
	.vipbrand-conversion-dock {
		right: 0;
		bottom: 0;
		left: 0;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
		width: auto;
		max-width: none;
		padding: 9px 12px calc(9px + env(safe-area-inset-bottom));
		border-top: 1px solid var(--vipbrand-line);
		background: rgba(255,255,255,.96);
		box-shadow: 0 -10px 25px rgba(40,57,71,.12);
		filter: none;
		backdrop-filter: blur(12px);
	}
	.vipbrand-conversion-dock__action { min-height: 48px; padding: 10px 12px; border-radius: 14px; }
}

@media (max-width: 400px) {
	.vipbrand-conversion-dock { gap: 6px; padding-right: 8px; padding-left: 8px; }
	.vipbrand-conversion-dock__action { padding-right: 6px; padding-left: 6px; font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}

@media print {
	.vipbrand-conversion-dock,
	.vipbrand-strip-controls { display: none !important; }
}

/* Stage 7: editorial design system for every SEO landing page. */
:root {
	--vipbrand-shadow-soft: 0 18px 46px rgba(40,57,71,.08);
	--vipbrand-shadow-card: 0 12px 30px rgba(40,57,71,.07);
	--vipbrand-radius-xl: 30px;
	--vipbrand-radius-lg: 22px;
}

.vipbrand-page:not(.vipbrand-home) { padding-top: clamp(8px, 2vw, 22px); }
.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin-bottom: clamp(42px, 6vw, 74px);
	padding: clamp(34px, 6vw, 76px);
	border-radius: var(--vipbrand-radius-xl);
	box-shadow: var(--vipbrand-shadow-soft);
}
.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro::before,
.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro::after {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	content: "";
	pointer-events: none;
}
.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro::before {
	top: -160px;
	right: -105px;
	width: 360px;
	height: 360px;
	background: rgba(81,200,232,.12);
}
.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro::after {
	right: 18%;
	bottom: -190px;
	width: 300px;
	height: 300px;
	background: rgba(243,154,187,.10);
}
.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro h1 { max-width: 980px; text-wrap: balance; }
.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro > p { max-width: 850px; line-height: 1.7; }

.vipbrand-page .vipbrand-content-section > h2 { max-width: 980px; text-wrap: balance; }
.vipbrand-page .vipbrand-content-section > p,
.vipbrand-page .vipbrand-content-section > ol,
.vipbrand-page .vipbrand-content-section > ul { max-width: 920px; }
.vipbrand-page .vipbrand-content-section > ol,
.vipbrand-page .vipbrand-content-section > ul { color: var(--vipbrand-muted); font-size: 17px; }
.vipbrand-page .vipbrand-content-section > ul { padding-left: 0; list-style: none; }
.vipbrand-page .vipbrand-content-section > ol li { margin: 9px 0; padding-left: 2em; }
.vipbrand-page .vipbrand-content-section > ul li { position: relative; margin: 9px 0; padding-left: 28px; }
.vipbrand-page .vipbrand-content-section > ol li::marker { color: var(--vipbrand-pink-dark); font-weight: 900; }
.entry-content .vipbrand-page .vipbrand-content-section > ul > li::before {
	top: .05em;
	left: 0;
	display: block;
	width: 18px;
	height: auto;
	border: 0;
	border-radius: 0;
	background: none;
	color: var(--vipbrand-cyan-dark);
	content: "✓";
	font-weight: 900;
	line-height: 1.6;
	text-align: center;
}

.vipbrand-feature-card,
.vipbrand-service-card,
.vipbrand-logo-card,
.vipbrand-store-card,
.vipbrand-card,
.vipbrand-link-card { box-shadow: var(--vipbrand-shadow-card); }
.vipbrand-feature-card { position: relative; overflow: hidden; }
.vipbrand-feature-card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--vipbrand-cyan), var(--vipbrand-pink));
	content: "";
}
.vipbrand-feature-card h2 { margin: 0 0 12px !important; color: var(--vipbrand-navy); font-size: clamp(21px, 2.3vw, 27px); }

.vipbrand-brand-detail .vipbrand-page-intro {
	display: grid;
	grid-template-columns: minmax(0, 1.18fr) minmax(280px, .72fr);
	grid-template-rows: auto auto 1fr auto;
	gap: 0 clamp(34px, 6vw, 82px);
	align-items: center;
}
.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-eyebrow { grid-column: 1; grid-row: 1; }
.vipbrand-brand-detail .vipbrand-page-intro > h1 { grid-column: 1; grid-row: 2; }
.vipbrand-brand-detail .vipbrand-page-intro > p { grid-column: 1; grid-row: auto; }
.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-actions,
.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-hero-trust { grid-column: 1; }
.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-brand-detail-logo {
	grid-column: 2;
	grid-row: 1 / 5;
	width: 100%;
	min-height: 220px;
	margin: 0;
	padding: clamp(28px, 4vw, 48px);
	border: 1px solid rgba(220,239,245,.92);
	box-shadow: 0 20px 42px rgba(40,57,71,.10);
}
.vipbrand-brand-detail .vipbrand-brand-detail-logo img { max-width: 90%; max-height: 128px; }
.vipbrand-brand-gallery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(16px, 2.2vw, 28px);
	margin-top: clamp(24px, 3.5vw, 38px);
}
.vipbrand-brand-gallery__item {
	min-width: 0;
	margin: 0;
	overflow: hidden;
	border: 1px solid var(--vipbrand-line);
	border-radius: 20px;
	background: #f4f4f4;
	box-shadow: 0 14px 30px rgba(40,57,71,.08);
}
.vipbrand-brand-gallery__link {
	display: block;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	background: #f2f2f2;
}
.vipbrand-brand-gallery__item img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .3s ease;
}
.vipbrand-brand-gallery__link:hover img { transform: scale(1.025); }
.vipbrand-brand-gallery__item figcaption {
	padding: 15px 18px 17px;
	color: var(--vipbrand-navy);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.35;
	text-align: center;
}

.vipbrand-brand-product-list,
.vipbrand-brand-store-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	margin: 24px 0;
	padding: 0 !important;
	list-style: none;
}
.vipbrand-page .vipbrand-content-section > .vipbrand-brand-product-list > li,
.vipbrand-page .vipbrand-content-section > .vipbrand-brand-store-list > li {
	display: flex;
	align-items: center;
	min-height: 86px;
	margin: 0;
	padding: 18px 20px 18px 50px;
	border: 1px solid var(--vipbrand-line);
	border-radius: 16px;
	background: rgba(255,255,255,.84);
	color: var(--vipbrand-navy);
	font-weight: 700;
	line-height: 1.45;
	box-shadow: 0 10px 24px rgba(40,57,71,.06);
}
.entry-content .vipbrand-page .vipbrand-content-section > .vipbrand-brand-product-list > li::before,
.entry-content .vipbrand-page .vipbrand-content-section > .vipbrand-brand-store-list > li::before {
	top: 50%;
	left: 18px;
	transform: translateY(-50%);
}
.vipbrand-brand-size-note {
	margin-top: 22px;
	padding: 18px 20px;
	border-left: 4px solid var(--vipbrand-cyan);
	border-radius: 0 14px 14px 0;
	background: var(--vipbrand-ice);
}
.vipbrand-brand-order-example {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, .72fr);
	gap: clamp(24px, 5vw, 62px);
	align-items: center;
}
.vipbrand-brand-order-example figure {
	margin: 0;
	overflow: hidden;
	border-radius: 20px;
	background: #f4f4f4;
	box-shadow: var(--vipbrand-shadow-card);
}
.vipbrand-brand-order-example img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.vipbrand-faq details {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid var(--vipbrand-line);
}
.vipbrand-faq summary {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 62px;
	padding: 16px 48px 16px 0;
	list-style: none;
}
.vipbrand-faq summary::-webkit-details-marker { display: none; }
.vipbrand-faq summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--vipbrand-ice);
	color: var(--vipbrand-cyan-dark);
	content: "+";
	font-size: 24px;
	font-weight: 500;
	transform: translateY(-50%);
}
.vipbrand-faq details[open] summary::after { content: "−"; }
.vipbrand-faq details > div,
.vipbrand-faq details > p { padding: 0 50px 20px 0; }

.vipbrand-contacts-page .vipbrand-buyer-profile {
	position: relative;
	overflow: hidden;
	box-shadow: var(--vipbrand-shadow-soft);
}
.vipbrand-contacts-page .vipbrand-buyer-copy .vipbrand-eyebrow { margin-bottom: 12px; }
.vipbrand-contacts-page .vipbrand-buyer-copy .vipbrand-actions { margin-top: 10px; }
.vipbrand-contacts-page .vipbrand-buyer-photo { box-shadow: 0 18px 38px rgba(40,57,71,.12); }
.vipbrand-contact-facts { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 20px; padding: 0; list-style: none; }
.vipbrand-contact-facts li { padding: 7px 12px; border: 1px solid var(--vipbrand-line); border-radius: 999px; background: rgba(255,255,255,.72); color: var(--vipbrand-navy); font-size: 13px; font-weight: 800; }

@media (max-width: 1000px) {
	.vipbrand-brand-detail .vipbrand-page-intro {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto;
		gap: 0;
	}
	.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-eyebrow,
	.vipbrand-brand-detail .vipbrand-page-intro > h1,
	.vipbrand-brand-detail .vipbrand-page-intro > p,
	.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-actions,
	.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-hero-trust,
	.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-brand-detail-logo { grid-column: 1; grid-row: auto; }
	.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-brand-detail-logo { order: 3; min-height: 180px; margin: 28px 0 0; }
}

@media (max-width: 760px) {
	.vipbrand-page:not(.vipbrand-home) { padding-top: 4px; }
	.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro { padding: 30px 22px; border-radius: 22px; }
	.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro h1 { font-size: clamp(31px, 9vw, 42px); }
	.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro > p { font-size: 17px; }
	.vipbrand-page .vipbrand-content-section { padding: 44px 0; }
	.vipbrand-brand-detail .vipbrand-page-intro > .vipbrand-brand-detail-logo { min-height: 150px; padding: 24px; }
	.vipbrand-brand-detail .vipbrand-brand-detail-logo img { max-height: 92px; }
	.vipbrand-brand-gallery { grid-template-columns: minmax(0, 1fr); }
	.vipbrand-brand-gallery__item { width: 100%; max-width: 430px; margin-right: auto; margin-left: auto; }
	.vipbrand-brand-product-list,
	.vipbrand-brand-store-list,
	.vipbrand-brand-order-example { grid-template-columns: minmax(0, 1fr); }
	.vipbrand-page .vipbrand-content-section > .vipbrand-brand-product-list > li,
	.vipbrand-page .vipbrand-content-section > .vipbrand-brand-store-list > li { min-height: 74px; }
	.vipbrand-brand-order-example figure { width: 100%; max-width: 390px; margin: 0 auto; }
	.vipbrand-faq summary { min-height: 58px; padding-right: 44px; }
	.vipbrand-buyer-photo, .vipbrand-buyer-photo img { min-height: 380px; }
}

/* Real editorial photography in service-page hero blocks. */
.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro--visual {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(290px, .6fr);
	gap: clamp(28px, 4vw, 64px);
	align-items: center;
	margin-bottom: clamp(28px, 4vw, 46px);
}
.vipbrand-page-intro-copy {
	position: relative;
	z-index: 1;
	min-width: 0;
}
.vipbrand-page-intro-copy > p {
	max-width: 850px;
	margin: 0;
	color: var(--vipbrand-muted);
	font-size: 19px;
	line-height: 1.7;
}
.vipbrand-page-intro-copy > p + p { margin-top: 11px; }
.vipbrand-page-intro-media {
	position: relative;
	z-index: 1;
	width: 100%;
	height: clamp(320px, 29vw, 430px);
	margin: 0;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.84);
	border-radius: 22px;
	background: #eaf5f8;
	box-shadow: 0 18px 38px rgba(40,57,71,.16);
}
.vipbrand-page-intro-media::after {
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(135deg, rgba(255,255,255,.12), transparent 45%);
	content: "";
	pointer-events: none;
}
.vipbrand-page-intro-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.vipbrand-page-intro-media--buyout img { object-position: 64% center; }
.vipbrand-page-intro-media--brands img { object-position: 51% 58%; }
.vipbrand-page-intro-media--services img { object-position: 52% center; }
.vipbrand-page-intro-media--europe img { object-position: 50% 58%; }
.vipbrand-page-intro-media--usa img { object-position: 50% 56%; }
.vipbrand-page-intro-media--italy img { object-position: 58% center; }
.vipbrand-page-intro-media--reviews img { object-position: 66% center; }
.vipbrand-page-intro-media--how-to-order img { object-position: 38% center; }
.vipbrand-page-intro-media--sitemap img { object-position: center; }
.vipbrand-page-intro-media--delivery-payment img { object-position: center; }
.vipbrand-page-intro-media--authenticity img { object-position: 58% center; }
.vipbrand-hero-calculation { margin-bottom: clamp(14px, 2.5vw, 34px); }

@media (max-width: 1000px) {
	.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro--visual {
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
	}
	.vipbrand-page-intro-media {
		height: clamp(280px, 54vw, 390px);
	}
}

@media (max-width: 760px) {
	.vipbrand-page:not(.vipbrand-home) .vipbrand-page-intro--visual {
		gap: 22px;
		padding: 30px 22px;
	}
	.vipbrand-page-intro-copy > p {
		font-size: 17px;
		line-height: 1.65;
	}
	.vipbrand-page-intro-media {
		height: 250px;
		border-radius: 16px;
	}
	.vipbrand-hero-calculation {
		margin-bottom: 8px;
	}
}

/* Homepage rebuild — real customer orders and owner-led story, 2026-07-25. */
.vipbrand-home-2026 {
	max-width: none;
	overflow: visible;
}

.vipbrand-home-2026 > section {
	position: relative;
}

.vipbrand-home-hero-2026 {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
	grid-template-areas: "copy photo";
	align-items: center;
	width: min(100%, 1600px);
	margin: clamp(18px, 3vw, 38px) auto 0;
	overflow: hidden;
	border: 1px solid #dcecf1;
	border-radius: 30px;
	background:
		radial-gradient(circle at 8% 12%, rgba(81,200,232,.16), transparent 34%),
		radial-gradient(circle at 94% 9%, rgba(255,144,181,.16), transparent 35%),
		#fff;
	box-shadow: 0 20px 55px rgba(40,57,71,.08);
}

.vipbrand-home-hero-copy-2026 {
	grid-area: copy;
	align-self: center;
	padding: clamp(40px, 5vw, 76px);
}

.vipbrand-home-hero-copy-2026 .vipbrand-eyebrow {
	margin-bottom: 18px;
}

.vipbrand-home-hero-copy-2026 h1 {
	max-width: 790px;
	margin: 0;
	color: var(--vipbrand-navy);
	font-size: clamp(38px, 4.6vw, 64px);
	line-height: 1.05;
	letter-spacing: -.035em;
	text-wrap: balance;
}

.vipbrand-home-hero-copy-2026 > p {
	max-width: 760px;
	margin: 26px 0 0;
	color: var(--vipbrand-muted);
	font-size: clamp(17px, 1.7vw, 21px);
	line-height: 1.68;
}

.vipbrand-home-hero-copy-2026 > .vipbrand-home-hero-owner-2026 {
	max-width: 720px;
	margin-top: 15px;
	padding-left: 17px;
	border-left: 3px solid var(--vipbrand-pink);
	font-size: 15px;
	line-height: 1.58;
}

.vipbrand-home-hero-social-2026 {
	max-width: 760px;
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid rgba(81,200,232,.24);
}

.vipbrand-home-hero-social-2026 h2 {
	max-width: 620px;
	margin: 0;
	color: var(--vipbrand-navy);
	font-size: clamp(23px, 2vw, 29px);
	line-height: 1.18;
	letter-spacing: -.015em;
	text-wrap: balance;
}

.vipbrand-home-hero-social-2026 > p {
	max-width: 650px;
	margin: 10px 0 0;
	color: var(--vipbrand-muted);
	font-size: 16px;
	line-height: 1.55;
}

.vipbrand-home-hero-social-2026 .vipbrand-social-buttons {
	margin-top: 18px;
}

.vipbrand-home-hero-photo-2026 {
	position: relative;
	grid-area: photo;
	height: clamp(500px, 45vw, 570px);
	min-height: 0;
	margin: 30px 30px 30px 0;
	overflow: hidden;
	border-radius: 24px;
	background: #e8f6fa;
	box-shadow: 0 18px 38px rgba(40,57,71,.14);
}

.vipbrand-home-hero-photo-2026 img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: cover;
	object-position: 50% 38%;
}

.vipbrand-home-hero-photo-2026 figcaption {
	position: absolute;
	right: 22px;
	bottom: 22px;
	left: 22px;
	padding: 12px 16px;
	border: 1px solid rgba(255,255,255,.55);
	border-radius: 14px;
	background: rgba(40,57,71,.82);
	backdrop-filter: blur(9px);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	text-align: center;
}

.vipbrand-home-proofbar-2026 {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: min(100%, 1600px);
	margin: 22px auto 0;
	overflow: hidden;
	border: 1px solid var(--vipbrand-line);
	border-radius: 18px;
	background: #fff;
}

.vipbrand-home-proofbar-2026 > div {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 96px;
	padding: 16px 20px;
	color: var(--vipbrand-navy);
	text-align: center;
}

.vipbrand-home-proofbar-2026 > div + div {
	border-left: 1px solid var(--vipbrand-line);
}

.vipbrand-home-proofbar-2026 strong {
	max-width: 310px;
	font-size: 15px;
	line-height: 1.42;
	text-wrap: balance;
}

.vipbrand-home-section-2026 {
	margin: 0;
	padding: clamp(62px, 7.2vw, 108px) 0;
	clip-path: inset(0 -100vmax);
}

.vipbrand-home-section-2026--white {
	background: #fff;
	box-shadow: 0 0 0 100vmax #fff;
}

.vipbrand-home-section-2026--ice {
	background: #eefafe;
	box-shadow: 0 0 0 100vmax #eefafe;
}

.vipbrand-home-section-2026--blush {
	background: #fff3f8;
	box-shadow: 0 0 0 100vmax #fff3f8;
}

.vipbrand-home-section-2026--dark {
	background: var(--vipbrand-navy);
	box-shadow: 0 0 0 100vmax var(--vipbrand-navy);
	color: #fff;
}

.vipbrand-home-inner-2026 {
	width: min(100%, 1600px);
	margin-inline: auto;
}

.vipbrand-home-heading-2026 {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 28px;
	margin-bottom: 36px;
}

.vipbrand-home-heading-2026 h2 {
	max-width: 900px;
	margin: 0;
	color: var(--vipbrand-navy);
	font-size: clamp(32px, 4.3vw, 54px);
	line-height: 1.1;
	letter-spacing: -.025em;
	text-wrap: balance;
}

.vipbrand-home-heading-2026 p {
	max-width: 820px;
	margin: 14px 0 0;
	color: var(--vipbrand-muted);
	font-size: 18px;
	line-height: 1.65;
}

.vipbrand-home-heading-2026 > a {
	flex: 0 0 auto;
	color: var(--vipbrand-navy);
	font-weight: 800;
	text-decoration: none;
}

.vipbrand-home-section-2026--dark .vipbrand-home-heading-2026 h2,
.vipbrand-home-section-2026--dark .vipbrand-home-heading-2026 > a {
	color: #fff;
}

.vipbrand-home-section-2026--dark .vipbrand-home-heading-2026 p {
	color: #cddbe1;
}

.vipbrand-home-category-grid-2026 {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 16px;
}

.vipbrand-home-category-grid-2026 article {
	position: relative;
	min-height: 370px;
	overflow: hidden;
	border-radius: 22px;
	background: var(--vipbrand-navy);
	box-shadow: 0 16px 34px rgba(40,57,71,.14);
}

.vipbrand-home-category-grid-2026 article::after,
.vipbrand-home-directions-2026 > article::after {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(17,28,36,.04) 24%, rgba(17,28,36,.9) 100%);
	content: "";
}

.vipbrand-home-category-grid-2026 article > img,
.vipbrand-home-directions-2026 > article > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .35s ease;
}

.vipbrand-home-category-grid-2026 article:hover > img,
.vipbrand-home-directions-2026 > article:hover > img {
	transform: scale(1.035);
}

.vipbrand-home-card-overlay-2026 {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	padding: 25px;
	color: #fff;
}

.vipbrand-home-category-grid-2026 .vipbrand-home-card-overlay-2026 > span {
	display: block;
	margin-bottom: 8px;
	color: #ffd8e5;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: .11em;
}

.vipbrand-home-all-brands-card {
	background:
		radial-gradient(circle at 20% 18%, rgba(81,200,232,.2), transparent 42%),
		radial-gradient(circle at 90% 88%, rgba(255,144,181,.22), transparent 44%),
		#fff !important;
}

.vipbrand-home-all-brands-card .vipbrand-logo-mark {
	background: transparent;
}

.vipbrand-home-all-brands-arrow {
	color: var(--vipbrand-pink-dark);
	font-size: 54px;
	font-weight: 500;
	line-height: 1;
}

.vipbrand-home-all-brands-card .vipbrand-logo-name {
	max-width: 170px;
}

.vipbrand-home-category-grid-2026 h3 {
	margin: 0 0 7px;
	color: #fff;
	font-size: 24px;
}

.vipbrand-home-category-grid-2026 p {
	margin: 0;
	color: rgba(255,255,255,.86);
	font-size: 14px;
	line-height: 1.52;
}

.vipbrand-home-directions-2026 {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.vipbrand-home-directions-2026 > article {
	position: relative;
	min-height: 420px;
	margin: 0;
	overflow: hidden;
	border-radius: 24px;
	background: var(--vipbrand-navy);
	box-shadow: 0 16px 36px rgba(40,57,71,.15);
	color: #fff;
}

.vipbrand-home-directions-2026 h3 {
	margin: 0;
	color: #fff;
	font-size: 30px;
}

.vipbrand-home-directions-2026 p {
	max-width: 420px;
	margin: 11px 0 22px;
	color: rgba(255,255,255,.88);
	line-height: 1.55;
}

.vipbrand-home-directions-2026 .vipbrand-home-card-overlay-2026 a {
	color: #fff !important;
	font-weight: 800;
	text-decoration: none;
}

.vipbrand-home-priority-brands {
	display: flex;
	gap: 14px;
	overflow-x: auto;
	padding: 4px 2px 16px;
	scroll-behavior: smooth;
	scroll-snap-type: none;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.vipbrand-home .vipbrand-home-priority-brands {
	scroll-snap-type: none;
}

.vipbrand-home-priority-brands::-webkit-scrollbar {
	display: none;
}

.vipbrand-home-priority-brands .vipbrand-logo-card {
	flex: 0 0 clamp(180px, 16vw, 225px);
	min-height: 180px;
	scroll-snap-align: start;
}

.vipbrand-home-process-2026 {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: vipbrand-home-step;
}

.vipbrand-home-process-2026 li {
	min-height: 235px;
	padding: 28px;
	border: 1px solid rgba(255,144,181,.34);
	border-radius: 22px;
	background: rgba(255,255,255,.82);
}

.vipbrand-home-process-2026 li > span {
	display: block;
	margin-bottom: 58px;
	color: var(--vipbrand-pink-dark);
	font-size: 14px;
	font-weight: 900;
	letter-spacing: .12em;
}

.vipbrand-home-process-2026 h3 {
	margin: 0 0 10px;
	color: var(--vipbrand-navy);
	font-size: 23px;
}

.vipbrand-home-process-2026 p {
	margin: 0;
	color: var(--vipbrand-muted);
}

.vipbrand-orders-strip {
	display: flex;
	gap: 16px;
	margin-right: calc((100vw - min(100vw, 1600px)) / -2);
	padding: 2px max(24px, calc((100vw - 1600px) / 2)) 18px 2px;
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: none;
	scrollbar-color: rgba(255,255,255,.35) transparent;
	scrollbar-width: thin;
}

.vipbrand-order-card {
	flex: 0 0 clamp(210px, 18vw, 270px);
	margin: 0;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 22px;
	background: rgba(255,255,255,.075);
	scroll-snap-align: start;
}

.vipbrand-order-card--lead {
	flex-basis: clamp(260px, 24vw, 340px);
}

.vipbrand-order-card > a {
	display: block;
	overflow: hidden;
	background: #111a21;
}

.vipbrand-order-card img {
	display: block;
	width: 100%;
	height: 330px;
	object-fit: cover;
	transition: transform .35s ease;
}

.vipbrand-order-card--lead img {
	height: 360px;
}

.vipbrand-order-card:hover img {
	transform: scale(1.025);
}

.vipbrand-order-card figcaption {
	display: grid;
	padding: 13px 15px 15px;
	color: #fff;
}

.vipbrand-order-card figcaption strong {
	color: #fff;
	font-size: 14px;
	line-height: 1.4;
}

.vipbrand-order-card figcaption span {
	color: #cddbe1;
	font-size: 13px;
}

.vipbrand-home-about-2026 {
	display: grid;
	grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr);
	align-items: center;
	gap: clamp(34px, 7vw, 105px);
}

.vipbrand-home-about-2026 > figure {
	height: clamp(440px, 48vw, 650px);
	margin: 0;
	overflow: hidden;
	border-radius: 28px;
	background: #edf6f8;
	box-shadow: 0 18px 42px rgba(40,57,71,.12);
}

.vipbrand-home-about-2026 > figure img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 18%;
}

.vipbrand-home-about-2026 h2 {
	max-width: 820px;
	margin: 12px 0 22px;
	color: var(--vipbrand-navy);
	font-size: clamp(32px, 4.1vw, 52px);
	line-height: 1.12;
	letter-spacing: -.025em;
	text-wrap: balance;
}

.vipbrand-home-about-2026 p {
	max-width: 800px;
	margin: 0 0 16px;
	color: var(--vipbrand-muted);
	font-size: 18px;
	line-height: 1.7;
}

.vipbrand-home-about-2026 .vipbrand-btn {
	margin-top: 12px;
}

.vipbrand-home-reviews-carousel {
	padding-right: 58px;
	padding-left: 58px;
}

.vipbrand-home-orders-section-2026,
.vipbrand-home-reviews-section-2026 {
	padding-top: clamp(48px, 5vw, 72px);
	padding-bottom: clamp(48px, 5vw, 72px);
}

.vipbrand-home-orders-section-2026 .vipbrand-home-heading-2026,
.vipbrand-home-reviews-section-2026 .vipbrand-home-heading-2026 {
	margin-bottom: 28px;
}

.vipbrand-home-reviews-carousel .vipbrand-review-card {
	flex-basis: calc((100% - 60px) / 4);
	background: #fff;
}

.vipbrand-home-seo-section-2026 {
	padding-top: clamp(48px, 5vw, 72px);
	padding-bottom: clamp(48px, 5vw, 72px);
}

.vipbrand-home-seo-copy-2026 {
	max-width: 1120px;
}

.vipbrand-home-seo-copy-2026 h2 {
	max-width: 980px;
	margin: 0 0 22px;
	color: var(--vipbrand-navy);
	font-size: clamp(30px, 3.6vw, 46px);
	line-height: 1.12;
	letter-spacing: -.025em;
	text-wrap: balance;
}

.vipbrand-home-seo-copy-2026 > p,
.vipbrand-home-seo-details-2026 p,
.vipbrand-home-seo-details-2026 li {
	color: var(--vipbrand-muted);
	font-size: 16px;
	line-height: 1.72;
}

.vipbrand-home-seo-copy-2026 > p {
	max-width: 1020px;
	margin: 0 0 15px;
}

.vipbrand-home-seo-copy-2026 details {
	margin-top: 24px;
	border: 1px solid rgba(81,200,232,.25);
	border-radius: 18px;
	background: rgba(255,255,255,.76);
}

.vipbrand-home-seo-copy-2026 summary {
	padding: 19px 22px;
	color: var(--vipbrand-navy);
	font-size: 16px;
	font-weight: 850;
	cursor: pointer;
}

.vipbrand-home-seo-details-2026 {
	padding: 2px 22px 24px;
}

.vipbrand-home-seo-details-2026 h3 {
	margin: 28px 0 10px;
	color: var(--vipbrand-navy);
	font-size: 24px;
	line-height: 1.25;
}

.vipbrand-home-seo-details-2026 h3:first-child {
	margin-top: 12px;
}

.vipbrand-home-seo-details-2026 p {
	margin: 0;
}

.vipbrand-home-seo-details-2026 ul {
	display: grid;
	gap: 7px;
	margin: 18px 0 0;
	padding-left: 22px;
}

.vipbrand-home-2026 .vipbrand-faq {
	max-width: 1120px;
}

.vipbrand-home-2026 .vipbrand-faq summary {
	color: var(--vipbrand-navy);
	font-size: 19px;
	font-weight: 800;
}

.vipbrand-home-2026 .vipbrand-faq details > div p {
	max-width: 920px;
	margin: 0;
	color: var(--vipbrand-muted);
	font-size: 16px;
	line-height: 1.7;
}

.vipbrand-home-2026 .vipbrand-social-callout {
	box-shadow: 0 22px 52px rgba(40,57,71,.16);
}

@media (max-width: 1100px) {
	.vipbrand-home-hero-2026 {
		grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr);
	}

	.vipbrand-home-hero-copy-2026 {
		padding: 48px 42px;
	}

	.vipbrand-home-hero-photo-2026,
	.vipbrand-home-hero-photo-2026 img {
		height: 500px;
		min-height: 0;
	}

	.vipbrand-home-category-grid-2026 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.vipbrand-home-priority-brands {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.vipbrand-home-reviews-carousel .vipbrand-review-card {
		flex-basis: calc((100% - 40px) / 3);
	}
}

@media (max-width: 820px) {
	.vipbrand-home-hero-2026 {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"photo"
			"copy";
		align-items: stretch;
		border-radius: 24px;
	}

	.vipbrand-home-hero-photo-2026,
	.vipbrand-home-hero-photo-2026 img {
		height: 390px;
		min-height: 0;
		max-height: 430px;
	}

	.vipbrand-home-hero-photo-2026 {
		margin: 0;
		border-radius: 0;
		box-shadow: none;
	}

	.vipbrand-home-hero-photo-2026 img {
		object-position: 50% 42%;
	}

	.vipbrand-home-proofbar-2026 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vipbrand-home-proofbar-2026 > div:nth-child(3) {
		border-top: 1px solid var(--vipbrand-line);
		border-left: 0;
	}

	.vipbrand-home-proofbar-2026 > div:nth-child(4) {
		border-top: 1px solid var(--vipbrand-line);
	}

	.vipbrand-home-directions-2026 {
		grid-template-columns: minmax(0, 1fr);
	}

	.vipbrand-home-directions-2026 > article {
		min-height: 350px;
	}

	.vipbrand-home-about-2026 {
		grid-template-columns: minmax(0, 1fr);
	}

	.vipbrand-home-about-2026 > figure {
		height: min(650px, 105vw);
		max-width: 620px;
	}

	.vipbrand-home-reviews-carousel .vipbrand-review-card {
		flex-basis: calc((100% - 20px) / 2);
	}
}

@media (max-width: 620px) {
	.vipbrand-home-hero-2026 {
		margin-top: 10px;
	}

	.vipbrand-home-hero-copy-2026 {
		padding: 30px 22px 32px;
	}

	.vipbrand-home-hero-copy-2026 h1 {
		font-size: clamp(33px, 9.8vw, 43px);
		line-height: 1.08;
		letter-spacing: -.028em;
	}

	.vipbrand-home-hero-copy-2026 > p {
		margin-top: 18px;
		font-size: 16px;
		line-height: 1.62;
	}

	.vipbrand-home-hero-social-2026 {
		margin-top: 24px;
		padding-top: 22px;
	}

	.vipbrand-home-hero-social-2026 h2 {
		font-size: clamp(23px, 7.4vw, 29px);
		line-height: 1.16;
	}

	.vipbrand-home-hero-photo-2026,
	.vipbrand-home-hero-photo-2026 img {
		height: 320px;
		min-height: 0;
		max-height: 340px;
	}

	.vipbrand-home-hero-photo-2026 figcaption {
		display: none;
	}

	.vipbrand-home-proofbar-2026 {
		grid-template-columns: minmax(0, 1fr);
		width: calc(100% - 16px);
		margin-top: 14px;
		border-radius: 16px;
	}

	.vipbrand-home-proofbar-2026 > div {
		align-items: flex-start;
		justify-content: center;
		min-height: 64px;
		padding: 13px 16px;
		text-align: left;
	}

	.vipbrand-home-proofbar-2026 strong {
		max-width: none;
		font-size: 14px;
		line-height: 1.4;
		text-wrap: pretty;
	}

	.vipbrand-home-proofbar-2026 > div + div,
	.vipbrand-home-proofbar-2026 > div:nth-child(4) {
		border-top: 1px solid var(--vipbrand-line);
		border-left: 0;
	}

	.vipbrand-home-section-2026 {
		padding: 52px 0;
	}

	.vipbrand-home-heading-2026 {
		align-items: flex-start;
		flex-direction: column;
		margin-bottom: 28px;
	}

	.vipbrand-home-heading-2026 p {
		font-size: 16px;
	}

	.vipbrand-home-category-grid-2026,
	.vipbrand-home-process-2026 {
		grid-template-columns: minmax(0, 1fr);
	}

	.vipbrand-home-category-grid-2026 article {
		min-height: 330px;
	}

	.vipbrand-home-priority-brands {
		display: flex;
		gap: 12px;
		margin-right: -14px;
		padding-right: 14px;
		padding-bottom: 14px;
		overflow-x: auto;
		scroll-snap-type: none;
	}

	.vipbrand-home-priority-brands .vipbrand-logo-card {
		flex: 0 0 170px;
		min-height: 160px;
		scroll-snap-align: start;
	}

	.vipbrand-orders-strip {
		margin-right: -14px;
		padding-right: 14px;
	}

	.vipbrand-order-card,
	.vipbrand-order-card--lead {
		flex-basis: min(80vw, 300px);
	}

	.vipbrand-order-card img,
	.vipbrand-order-card--lead img {
		height: 350px;
	}

	.vipbrand-home-about-2026 > figure {
		height: 470px;
		border-radius: 20px;
	}

	.vipbrand-home-about-2026 p {
		font-size: 16px;
	}

	.vipbrand-home-reviews-carousel {
		padding: 0;
	}

	.vipbrand-home-reviews-carousel .vipbrand-carousel-button {
		top: auto;
		bottom: -4px;
	}

	.vipbrand-home-reviews-carousel .vipbrand-carousel-track {
		padding-bottom: 54px;
	}

	.vipbrand-home-reviews-carousel .vipbrand-review-card {
		flex-basis: 100%;
	}

	.vipbrand-home-2026 .vipbrand-faq summary {
		font-size: 17px;
	}

	.vipbrand-home-seo-copy-2026 h2 {
		font-size: clamp(28px, 8.6vw, 36px);
	}

	.vipbrand-home-seo-copy-2026 > p,
	.vipbrand-home-seo-details-2026 p,
	.vipbrand-home-seo-details-2026 li {
		font-size: 15px;
		line-height: 1.65;
	}

	.vipbrand-home-seo-copy-2026 summary {
		padding: 17px 18px;
	}

	.vipbrand-home-seo-details-2026 {
		padding: 2px 18px 20px;
	}
}
/* End homepage rebuild, 2026-07-25. */
