/* =========================================================
   Hevital - homepage
   ========================================================= */

.hvt-section{padding:88px 0}
.hvt-soft{background:var(--hvt-soft)}
.hvt-head{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;margin-bottom:38px}
.hvt-head h2{margin:10px 0 0}
.hvt-head p{max-width:520px;color:var(--hvt-muted);margin:0}
.hvt-section-foot{display:flex;justify-content:center;margin-top:38px}

/* --- Hero --------------------------------------------------------------- */
.hvt-hero{
	position:relative;
	padding:84px 0 74px;
	background:radial-gradient(circle at 82% 14%,rgba(130,223,114,.30),transparent 32%),linear-gradient(135deg,#fbfdfb 0%,#e7f7eb 100%);
	overflow:hidden;
}
.hvt-hero:after{
	content:"";
	position:absolute;
	width:350px;
	height:350px;
	right:-150px;
	bottom:-180px;
	border:1px solid rgba(18,132,95,.16);
	border-radius:47% 53% 61% 39%;
	transform:rotate(22deg);
	pointer-events:none;
}
.hvt-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;gap:55px;align-items:center}
.hvt-eyebrow{
	display:inline-flex;
	align-items:center;
	gap:9px;
	padding:8px 14px;
	border-radius:var(--hvt-radius-pill);
	background:var(--hvt-white);
	border:1px solid var(--hvt-line);
	color:var(--hvt-green-text);
	font-size:12px;
	font-weight:850;
	letter-spacing:.09em;
	text-transform:uppercase;
}
.hvt-eyebrow:before{
	content:"";
	width:9px;
	height:9px;
	border-radius:50%;
	background:linear-gradient(135deg,var(--hvt-lime),var(--hvt-green));
	box-shadow:0 0 0 4px rgba(130,223,114,.2);
}
.hvt-hero h1{margin:22px 0;color:var(--hvt-ink-2);max-width:700px;font-size:clamp(42px,5.6vw,74px);line-height:.99}
.hvt-hero h1 em{font-style:normal;color:var(--hvt-green-text)}
.hvt-lead{max-width:620px;font-size:18px;line-height:1.72;color:var(--hvt-text);margin:0 0 28px}
.hvt-actions{display:flex;gap:12px;flex-wrap:wrap}
.hvt-note{display:flex;gap:18px;flex-wrap:wrap;margin:28px 0 0;padding:0;list-style:none;color:#4c6156;font-size:12px;font-weight:750}
.hvt-note li{display:flex;align-items:center;gap:7px}
.hvt-note li:before{
	content:"\2713";
	display:grid;
	place-items:center;
	width:19px;
	height:19px;
	border-radius:50%;
	background:#d6f3da;
	color:#097152;
	font-size:11px;
}

.hvt-showcase{position:relative;min-height:500px}
.hvt-showcase-bg{
	position:absolute;
	inset:8px 18px;
	border-radius:42px;
	background:rgba(255,255,255,.65);
	border:1px solid rgba(18,132,95,.12);
	box-shadow:0 32px 80px rgba(30,89,63,.14);
}
.hvt-pack{
	position:absolute;
	object-fit:cover;
	border-radius:24px;
	box-shadow:0 25px 55px rgba(21,63,45,.16);
	border:1px solid rgba(18,132,95,.12);
	background:var(--hvt-white);
	aspect-ratio:1;
}
.hvt-pack-main{width:62%;left:19%;top:7%;z-index:2}
.hvt-pack-small{width:30%;z-index:3}
.hvt-pack-small.one{left:1%;bottom:4%;transform:rotate(-6deg)}
.hvt-pack-small.two{right:1%;bottom:7%;transform:rotate(6deg)}
.hvt-float{
	position:absolute;
	z-index:5;
	padding:13px 16px;
	border-radius:15px;
	background:var(--hvt-white);
	border:1px solid var(--hvt-line);
	box-shadow:0 15px 40px rgba(28,76,54,.13);
	font-size:12px;
	font-weight:850;
	color:var(--hvt-ink);
}
.hvt-float b{display:block;color:var(--hvt-green-text);font-size:18px;margin-bottom:2px}
.hvt-float.a{left:-3%;top:12%}
.hvt-float.b{right:-2%;top:26%}

/* --- Trust strip -------------------------------------------------------- */
.hvt-trust{background:var(--hvt-ink);color:var(--hvt-white)}
.hvt-trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.hvt-trust-item{
	display:grid;
	grid-template-columns:44px 1fr;
	gap:14px;
	align-items:center;
	padding:24px 28px;
	border-right:1px solid rgba(255,255,255,.12);
}
.hvt-trust-item:last-child{border-right:0}
.hvt-trust-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:rgba(130,223,114,.12);color:var(--hvt-lime)}
.hvt-trust-item b{display:block;font-size:14px;color:var(--hvt-white)}
.hvt-trust-item span{display:block;color:#b9c9c1;font-size:12px;margin-top:4px;line-height:1.5}

/* --- Categories --------------------------------------------------------- */
.hvt-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.hvt-cat{
	position:relative;
	display:block;
	min-height:272px;
	padding:25px;
	border:1px solid var(--hvt-line);
	border-radius:24px;
	background:var(--hvt-white);
	color:var(--hvt-ink);
	overflow:hidden;
	transition:transform .25s var(--hvt-ease),box-shadow .25s var(--hvt-ease),border-color .25s var(--hvt-ease);
}
.hvt-cat:hover{transform:translateY(-5px);border-color:#93d4a6;box-shadow:var(--hvt-shadow-lg);color:var(--hvt-ink)}
.hvt-cat:after{
	content:"";
	position:absolute;
	width:150px;
	height:150px;
	right:-40px;
	bottom:-48px;
	border-radius:48% 52% 58% 42%;
	background:var(--cat,#dcf8df);
	transform:rotate(22deg);
}
.hvt-cat > *{position:relative;z-index:1}
.hvt-cat-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--cat,#dcf8df);color:var(--hvt-green-text);font-weight:900}
.hvt-cat-num{display:block;margin-top:24px;font-size:10px;color:var(--hvt-muted);font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.hvt-cat h3{font-size:22px;line-height:1.15;margin:10px 0 9px}
.hvt-cat p{font-size:13px;line-height:1.55;color:#617269;margin:0 0 18px}
.hvt-arrow{font-weight:900;color:var(--hvt-green-text)}

/* --- Why ---------------------------------------------------------------- */
.hvt-why{display:grid;grid-template-columns:.92fr 1.08fr;gap:60px;align-items:center}
.hvt-panel{
	position:relative;
	min-height:440px;
	padding:52px;
	border-radius:30px;
	background:linear-gradient(145deg,#0b2017,#174334);
	color:var(--hvt-white);
	overflow:hidden;
	display:flex;
	flex-direction:column;
	justify-content:center;
}
.hvt-panel:before,.hvt-panel:after{content:"";position:absolute;border-radius:50%;background:rgba(130,223,114,.13)}
.hvt-panel:before{width:280px;height:280px;right:-90px;top:-100px}
.hvt-panel:after{width:190px;height:190px;left:-70px;bottom:-75px}
.hvt-kicker-light{color:var(--hvt-lime)}
.hvt-panel h3{position:relative;z-index:1;font-size:clamp(28px,3vw,38px);line-height:1.06;margin:18px 0;color:var(--hvt-white)}
.hvt-panel p{position:relative;z-index:1;color:#c9d8d1;line-height:1.72;margin:0}
.hvt-panel-mark{position:absolute;right:40px;bottom:20px;font-size:125px;font-weight:900;color:rgba(255,255,255,.07);line-height:1}
.hvt-values{display:grid;gap:13px;margin-top:24px}
.hvt-value{display:grid;grid-template-columns:50px 1fr;gap:15px;padding:18px;border:1px solid var(--hvt-line);border-radius:17px;background:var(--hvt-white)}
.hvt-value-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:var(--hvt-mint);color:var(--hvt-green-text);font-weight:900}
.hvt-value b{font-size:15px;color:var(--hvt-ink)}
.hvt-value p{margin:5px 0 0;color:#617269;font-size:13px;line-height:1.55}

/* --- Steps -------------------------------------------------------------- */
.hvt-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hvt-step{padding:30px;border:1px solid var(--hvt-line);border-radius:22px;background:var(--hvt-white)}
.hvt-step-no{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--hvt-mint);color:var(--hvt-green-text);font-weight:900}
.hvt-step h3{font-size:21px;margin:20px 0 9px}
.hvt-step p{color:#63756b;line-height:1.65;margin:0;font-size:13.5px}

/* --- FAQ + CTA ---------------------------------------------------------- */
.hvt-faq{display:grid;grid-template-columns:.72fr 1.28fr;gap:64px}
.hvt-faq h2{margin:10px 0 14px}
.hvt-faq details{border-top:1px solid var(--hvt-line);padding:18px 0}
.hvt-faq details:last-child{border-bottom:1px solid var(--hvt-line)}
.hvt-faq summary{
	position:relative;
	cursor:pointer;
	list-style:none;
	padding-right:34px;
	color:var(--hvt-ink);
	font-size:16px;
	font-weight:800;
}
.hvt-faq summary::-webkit-details-marker{display:none}
.hvt-faq summary:after{
	content:"+";
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
	display:grid;
	place-items:center;
	width:26px;
	height:26px;
	border-radius:50%;
	background:var(--hvt-mint);
	color:var(--hvt-green-text);
	font-size:16px;
	font-weight:900;
	line-height:1;
}
.hvt-faq details[open] summary:after{content:"\2013"}
.hvt-faq details p{color:#617269;line-height:1.7;font-size:14px;margin:12px 0 0;max-width:640px}

.hvt-cta{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:25px;
	margin-top:62px;
	padding:44px;
	border:1px solid #cae9d2;
	border-radius:28px;
	background:linear-gradient(120deg,#dff7e4,#f9fcfa);
}
.hvt-cta h3{font-size:clamp(24px,2.6vw,31px);margin:0 0 8px}
.hvt-cta p{margin:0;color:#5a6c62}

/* --- Disclaimer band ---------------------------------------------------- */
.hvt-disclaimer-band{padding:20px 0;background:#edf4ef;border-top:1px solid #d8e5dc}
.hvt-disclaimer p{margin:0;color:#6a7a71;font-size:11.5px;line-height:1.65}
.hvt-disclaimer.is-boxed{padding:16px 18px;border:1px solid var(--hvt-line);border-radius:14px;background:var(--hvt-soft)}

/* --- Responsive --------------------------------------------------------- */
@media (max-width:1000px){
	.hvt-hero-grid,.hvt-why,.hvt-faq{grid-template-columns:1fr}
	.hvt-why,.hvt-faq{gap:36px}
	.hvt-categories{grid-template-columns:repeat(2,1fr)}
	.hvt-head{flex-direction:column;align-items:flex-start}
	.hvt-showcase{min-height:460px}
}
@media (max-width:760px){
	.hvt-section{padding:64px 0}
	.hvt-hero{padding:60px 0 52px}
	.hvt-hero-grid{gap:28px}
	.hvt-lead{font-size:16px}
	.hvt-actions .hvt-btn{width:100%}
	.hvt-showcase{min-height:340px}
	.hvt-pack-main{width:66%;left:17%}
	.hvt-pack-small{width:31%}
	.hvt-float{display:none}
	.hvt-trust-grid,.hvt-steps{grid-template-columns:1fr}
	.hvt-trust-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
	.hvt-trust-item:last-child{border-bottom:0}
	.hvt-categories{grid-template-columns:1fr}
	.hvt-cat{min-height:auto}
	.hvt-panel{min-height:auto;padding:36px 26px}
	.hvt-panel-mark{font-size:90px;right:20px}
	.hvt-cta{flex-direction:column;align-items:flex-start;padding:30px 24px;margin-top:44px}
	.hvt-cta .hvt-btn{width:100%}
}
