/* Home page: tender pack band and its "New" link in the hero. Brand Guidelines v1.0 tokens from main.css. */
.hero-news { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-top: 18px; }
.hero-news .hero-new { margin-top: 0; }
.hero-new { display: inline-flex; align-items: center; gap: 10px; margin-top: 18px; padding: 7px 14px 7px 8px; border: 1px solid var(--ll-navy-line); border-radius: 999px; background: rgba(11, 31, 58, .55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); color: #fff !important; font: 500 14px/1.2 var(--ll-font-body); text-decoration: none; transition: border-color .25s, transform .25s var(--ease); }
.hero-new:hover { border-color: var(--ll-green-signal); text-decoration: none; transform: translateY(-1px); }
.hero-new b { display: inline-flex; align-items: center; gap: 6px; padding: 4px 9px; border-radius: 999px; background: var(--ll-green-signal); color: var(--ll-navy); font: 700 11px/1 var(--ll-font-code); letter-spacing: .06em; text-transform: uppercase; }
.hero-new b i { width: 6px; height: 6px; border-radius: 50%; background: var(--ll-navy); animation: pulse 1.6s infinite; }
.hero-new .icon { color: var(--ll-green-signal); transition: transform .25s var(--ease); }
.hero-new:hover .icon { transform: translateX(3px); }

.tphome { position: relative; overflow: hidden; }
.tphome__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: 64px; align-items: center; }
.tphome__badge { display: inline-block; margin-left: 8px; padding: 2px 7px; border: 1px solid rgba(8, 122, 76, .45); border-radius: 6px; color: var(--ll-green-clinical); font-size: 11px; letter-spacing: .06em; vertical-align: 1px; }
.tphome h2 { font-size: clamp(30px, 3.6vw, 44px); }
.tphome .checks { margin: 22px 0 30px; }

/* Three pages of a real pack, fanned out */
.tphome__stack { position: relative; display: block; aspect-ratio: 6 / 5; border-radius: 26px; background: radial-gradient(60% 60% at 50% 45%, rgba(23, 195, 123, .12), transparent 70%), var(--ll-white-clinical); overflow: hidden; }
.tphome__stack::after { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(11, 31, 58, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(11, 31, 58, .05) 1px, transparent 1px); background-size: 32px 32px; pointer-events: none; }
.tphome__glow { position: absolute; left: 50%; top: 52%; width: 60%; height: 60%; border-radius: 50%; background: rgba(23, 195, 123, .18); filter: blur(60px); transform: translate(-50%, -50%); }
.tphome__page { position: absolute; z-index: 1; top: 12%; width: 38%; height: auto; border-radius: 6px; background: #fff; box-shadow: 0 30px 50px -20px rgba(11, 31, 58, .45), 0 0 0 1px rgba(11, 31, 58, .06); transition: transform .6s var(--ease); }
.tphome__page--a { left: 10%; transform: rotate(-9deg) translateY(16px); }
.tphome__page--b { right: 10%; transform: rotate(8deg) translateY(16px); }
.tphome__page--c { left: 31%; z-index: 2; top: 8%; transform: translateY(0); }
.tphome__stack:hover .tphome__page--a { transform: rotate(-12deg) translate(-14px, 10px); }
.tphome__stack:hover .tphome__page--b { transform: rotate(11deg) translate(14px, 10px); }
.tphome__stack:hover .tphome__page--c { transform: translateY(-8px); }
.tphome__chip { position: absolute; z-index: 3; display: inline-flex; align-items: center; gap: 8px; padding: 8px 13px; border-radius: 999px; background: var(--ll-navy); color: #fff; font-size: 12px; white-space: nowrap; box-shadow: 0 14px 30px -12px rgba(11, 31, 58, .6); }
.tphome__chip .icon { color: var(--ll-green-signal); }
.tphome__chip--pdf { left: 6%; top: 7%; }
.tphome__chip--ok { right: 6%; bottom: 8%; background: var(--ll-green-signal); color: var(--ll-navy); font: 600 13px/1 var(--ll-font-body); }
.tphome__chip--ok .icon { color: var(--ll-navy); }

@media (max-width: 1080px) {
	.tphome__grid { grid-template-columns: 1fr; gap: 36px; }
	.tphome__stack { max-width: 640px; }
}
@media (max-width: 640px) {
	.tphome__chip--pdf { display: none; }
	.hero-new { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
	.tphome__page, .hero-new b i { transition: none; animation: none; }
}
