/* Hippo Burgers — SEO landing page design system */
.hippo-lp{
	--hippo-red:#C33130;
	--hippo-red-dark:#9E2523;
	--hippo-dark:#1E1A19;
	--hippo-yellow:#FFC72C;
	--hippo-grey:#6b6b6b;
	--hippo-bg-soft:#FFF8EC;
	--hippo-border:#F0E4D2;
	max-width:1140px;
	margin:0 auto;
	font-size:16px;
	line-height:1.7;
	color:#2b2725;
}

.hippo-lp p{margin:0 0 18px;}
.hippo-lp h2{
	font-size:clamp(24px,3vw,32px);
	margin:48px 0 10px;
	color:var(--hippo-dark);
	font-weight:800;
	position:relative;
	padding-left:18px;
}
.hippo-lp h2::before{
	content:"";
	position:absolute;
	left:0; top:6px; bottom:6px;
	width:6px;
	border-radius:4px;
	background:var(--hippo-red);
}
.hippo-lp h3{font-size:19px;color:var(--hippo-dark);margin:0 0 8px;font-weight:700;}
.hippo-lp .hippo-lede{font-size:18px;color:#443f3d;}

/* Hero */
.hippo-hero{
	position:relative;
	border-radius:20px;
	overflow:hidden;
	min-height:420px;
	display:flex;
	align-items:flex-end;
	margin:8px 0 28px;
	background:#111 center/cover no-repeat;
	isolation:isolate;
}
.hippo-hero img.hippo-hero-bg{
	position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;
}
.hippo-hero::after{
	content:"";
	position:absolute; inset:0;
	background:linear-gradient(180deg,rgba(10,8,8,.15) 0%,rgba(10,8,8,.55) 60%,rgba(10,8,8,.88) 100%);
	z-index:1;
}
.hippo-hero-inner{position:relative;z-index:2;padding:32px 34px;color:#fff;width:100%;}
.hippo-hero-kicker{
	display:inline-block;
	background:var(--hippo-red);
	color:#fff;
	font-weight:700;
	font-size:12.5px;
	letter-spacing:.06em;
	text-transform:uppercase;
	padding:6px 14px;
	border-radius:999px;
	margin-bottom:14px;
}
.hippo-hero-title{
	font-size:clamp(26px,4vw,40px);
	font-weight:900;
	line-height:1.15;
	margin:0 0 10px;
	text-shadow:0 2px 10px rgba(0,0,0,.35);
}
.hippo-hero-sub{
	font-size:16.5px;
	max-width:600px;
	color:#f1ede9;
	margin:0 0 20px;
}
.hippo-hero-ctas{display:flex;flex-wrap:wrap;gap:12px;}

/* Buttons */
.hippo-btn{
	display:inline-flex;align-items:center;gap:8px;
	background:var(--hippo-red);color:#fff !important;
	font-weight:700;text-decoration:none !important;
	padding:13px 26px;border-radius:999px;
	transition:transform .15s ease,background .15s ease,box-shadow .15s ease;
	box-shadow:0 6px 16px rgba(195,49,48,.35);
	font-size:15px;
}
.hippo-btn:hover{background:var(--hippo-red-dark);transform:translateY(-2px);color:#fff !important;}
.hippo-btn-outline{
	display:inline-flex;align-items:center;gap:8px;
	background:rgba(255,255,255,.08);
	border:2px solid rgba(255,255,255,.75);
	color:#fff !important;font-weight:700;text-decoration:none !important;
	padding:11px 24px;border-radius:999px;
	transition:background .15s ease,transform .15s ease;
	font-size:15px;
}
.hippo-btn-outline:hover{background:rgba(255,255,255,.18);transform:translateY(-2px);color:#fff !important;}

/* Trust badges */
.hippo-badges{
	display:flex;flex-wrap:wrap;gap:12px;
	margin:0 0 8px;
}
.hippo-badge{
	display:flex;align-items:center;gap:9px;
	background:var(--hippo-bg-soft);
	border:1px solid var(--hippo-border);
	color:var(--hippo-dark);
	font-weight:700;font-size:14px;
	padding:11px 18px;border-radius:14px;
}
.hippo-badge .hippo-ico{font-size:19px;line-height:1;}

/* Feature grid */
.hippo-feature-grid{
	display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
	gap:20px;margin:22px 0 8px;
}
.hippo-feature-card{
	background:#fff;border:1px solid var(--hippo-border);
	border-radius:16px;padding:24px 20px;
	box-shadow:0 4px 14px rgba(30,26,25,.05);
	transition:transform .15s ease,box-shadow .15s ease;
}
.hippo-feature-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(30,26,25,.09);}
.hippo-feature-icon{
	width:52px;height:52px;border-radius:14px;
	background:linear-gradient(135deg,var(--hippo-red),var(--hippo-red-dark));
	color:#fff;display:flex;align-items:center;justify-content:center;
	font-size:24px;margin-bottom:14px;
}
.hippo-feature-card p{margin:0;color:var(--hippo-grey);font-size:15px;}

/* Content image w/ caption */
.hippo-figure{margin:24px 0;}
.hippo-figure img{
	width:100%;height:auto;display:block;border-radius:16px;
	box-shadow:0 10px 28px rgba(30,26,25,.14);
}
.hippo-figure figcaption{
	margin-top:9px;font-size:13.5px;color:var(--hippo-grey);text-align:center;
	font-style:italic;
}
.hippo-split{display:grid;grid-template-columns:1.1fr 1fr;gap:34px;align-items:center;margin:20px 0;}
.hippo-split img{width:100%;height:100%;object-fit:cover;border-radius:16px;box-shadow:0 10px 28px rgba(30,26,25,.14);}
.hippo-split.hippo-split-rev{grid-template-columns:1fr 1.1fr;}
.hippo-split.hippo-split-rev .hippo-split-media{order:2;}

/* Menu grid */
.hippo-menu-grid{
	display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
	gap:16px;margin:20px 0 6px;
}
.hippo-menu-card{
	position:relative;
	background:#fff;border:1px solid var(--hippo-border);border-radius:14px;
	padding:16px 18px;box-shadow:0 3px 10px rgba(30,26,25,.05);
}
.hippo-menu-card .hippo-menu-top{
	display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px;
}
.hippo-menu-card h3{margin:0;font-size:16.5px;}
.hippo-menu-price{
	flex-shrink:0;background:var(--hippo-dark);color:var(--hippo-yellow);
	font-weight:800;font-size:14px;padding:3px 11px;border-radius:999px;
}
.hippo-menu-card p{margin:0;color:var(--hippo-grey);font-size:14px;}
.hippo-menu-tag{
	display:inline-block;background:var(--hippo-red);color:#fff;font-size:11px;font-weight:800;
	letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:6px;margin-bottom:8px;
}

/* Flavor swatches (shakes) */
.hippo-swatch-row{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0;}
.hippo-swatch{
	display:flex;flex-direction:column;align-items:center;gap:10px;
	background:#fff;border:1px solid var(--hippo-border);border-radius:16px;
	padding:16px 20px;min-width:120px;box-shadow:0 3px 10px rgba(30,26,25,.05);
}
.hippo-swatch-dot{width:44px;height:44px;border-radius:50%;box-shadow:inset 0 -6px 10px rgba(0,0,0,.15);}
.hippo-swatch span{font-weight:700;font-size:13.5px;color:var(--hippo-dark);text-align:center;}

/* Combo banner */
.hippo-combo-banner{
	display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;
	background:linear-gradient(120deg,var(--hippo-dark),#302825);
	color:#fff;border-radius:18px;padding:28px 30px;margin:28px 0;
}
.hippo-combo-banner h3{color:#fff;font-size:21px;margin-bottom:6px;}
.hippo-combo-banner p{color:#d8d2ce;margin:0;max-width:480px;}

/* Locations grid */
.hippo-locations-grid{
	display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
	gap:16px;margin:20px 0 6px;
}
.hippo-loc-card{
	background:#fff;border:1px solid var(--hippo-border);border-radius:14px;
	padding:18px 20px;box-shadow:0 3px 10px rgba(30,26,25,.05);
}
.hippo-loc-card.hippo-loc-nearest{border-color:var(--hippo-red);box-shadow:0 6px 18px rgba(195,49,48,.15);}
.hippo-loc-card h3{display:flex;align-items:center;gap:8px;font-size:16.5px;}
.hippo-loc-card address{font-style:normal;color:var(--hippo-grey);font-size:14.5px;margin:6px 0 10px;}
.hippo-loc-card a.hippo-loc-phone{
	color:var(--hippo-red);font-weight:700;text-decoration:none;font-size:15px;display:block;margin-bottom:8px;
}
.hippo-loc-card a.hippo-loc-map{font-size:13.5px;font-weight:700;color:var(--hippo-dark);text-decoration:underline;}
.hippo-loc-nearest-flag{
	display:inline-block;background:var(--hippo-red);color:#fff;font-size:10.5px;font-weight:800;
	text-transform:uppercase;letter-spacing:.04em;padding:2px 9px;border-radius:6px;margin-bottom:8px;
}

/* FAQ accordion */
.hippo-faq{border-top:1px solid var(--hippo-border);margin-top:14px;}
.hippo-faq details{border-bottom:1px solid var(--hippo-border);padding:16px 2px;}
.hippo-faq summary{
	cursor:pointer;list-style:none;font-weight:700;font-size:16px;color:var(--hippo-dark);
	display:flex;justify-content:space-between;align-items:center;gap:14px;
}
.hippo-faq summary::-webkit-details-marker{display:none;}
.hippo-faq summary::after{
	content:"+";flex-shrink:0;font-size:20px;font-weight:400;color:var(--hippo-red);
	transition:transform .2s ease;
}
.hippo-faq details[open] summary::after{transform:rotate(45deg);}
.hippo-faq details p{margin:12px 0 0;color:var(--hippo-grey);}

/* CTA banner */
.hippo-cta-banner{
	text-align:center;background:radial-gradient(circle at 30% 20%,#3a2f2c,var(--hippo-dark));
	border-radius:20px;padding:42px 24px;margin:40px 0 20px;color:#fff;
}
.hippo-cta-banner h3{color:#fff;font-size:clamp(22px,3vw,28px);margin-bottom:10px;}
.hippo-cta-banner p{color:#d8d2ce;max-width:520px;margin:0 auto 22px;}
.hippo-cta-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}

/* Internal links row */
.hippo-links-row{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 10px;}
.hippo-links-row a{
	background:var(--hippo-bg-soft);border:1px solid var(--hippo-border);color:var(--hippo-dark) !important;
	font-weight:700;font-size:13.5px;padding:8px 15px;border-radius:999px;text-decoration:none !important;
	transition:background .15s ease;
}
.hippo-links-row a:hover{background:var(--hippo-yellow);}

/* Responsive */
@media (max-width:760px){
	.hippo-hero{min-height:340px;}
	.hippo-split, .hippo-split.hippo-split-rev{grid-template-columns:1fr;}
	.hippo-split .hippo-split-media{order:-1 !important;}
	.hippo-split img{height:240px;}
	.hippo-combo-banner{flex-direction:column;text-align:center;justify-content:center;}
	.hippo-combo-banner p{max-width:100%;}
}
