/* Toolvoro Featured v1 — isolated style namespace; honors site dark/light variables */
#tvf-showcase { padding: clamp(32px,5vw,64px) 0; border-bottom:1px solid var(--border, #223746); }
#tvf-showcase[hidden],.tvf-section[hidden]{display:none!important}
#tvf-showcase .tvf-eyebrow{letter-spacing:.15em;text-transform:uppercase;font-size:.71rem;font-weight:800;color:var(--accent,#00c57b)}
#tvf-showcase .tvf-head {display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px;flex-wrap:wrap}
#tvf-showcase .tvf-title{font-family: 'Playfair Display',Georgia,serif;font-weight:800;font-size:clamp(1.45rem,2.6vw,2.35rem);line-height:1.14;margin:7px 0;color:var(--text,#f2f8fc)}
#tvf-showcase .tvf-sub{font-size:.87rem;color:var(--text-3,#a1b5bd);line-height:1.65;max-width:730px}
#tvf-showcase .tvf-winner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;background:linear-gradient(110deg,rgba(0,188,117,.09),rgba(55,107,129,.04));border:1px solid var(--accent-faint,#126045);border-radius:16px;padding:clamp(18px,3vw,28px);margin:16px 0 38px}
#tvf-showcase .tvf-label{font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--accent,#03c983)}
#tvf-showcase .tvf-winner h3,#tvf-showcase .tvf-sponsor h3{font-size:1.12rem;margin:8px 0;color:var(--text,#f2f8fc)}
#tvf-showcase .tvf-winner p,#tvf-showcase .tvf-sponsor p{color:var(--text-2,#b5c8d2);font-size:.85rem;line-height:1.58;margin:0 0 12px}
#tvf-showcase .tvf-link{color:var(--accent,#00d187);font-size:.84rem;font-weight:750;text-decoration:underline;text-underline-offset:4px}
#tvf-showcase .tvf-sponsors{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 1px 14px;scrollbar-width:thin}
#tvf-showcase .tvf-sponsor{background:var(--surface,#10293b);border:1px solid var(--border-md,#294558);border-radius:15px;padding:20px;scroll-snap-align:start;flex:0 0 clamp(230px,26vw,305px);min-height:208px;display:flex;flex-direction:column}
#tvf-showcase .tvf-sponsor p{flex:1}
#tvf-showcase .tvf-buttons{display:flex;gap:7px}
#tvf-showcase .tvf-scroll{border:1px solid var(--border-md,#294558);color:var(--text,#f3ffff);background:var(--bg-2,#102638);border-radius:8px;min-height:40px;min-width:40px;cursor:pointer}
#tvf-showcase .tvf-scroll:focus-visible,#tvf-showcase a:focus-visible{outline:3px solid #56e0a7;outline-offset:3px}
#tvf-showcase .tvf-disclosure{margin-top:12px;font-size:.74rem;color:var(--text-4,#8fa7af)}
#tvf-showcase .tvf-disclosure a{color:inherit;text-decoration:underline}
body.tvf-checkout{background:#061721;color:#eef7fc;font-family:Inter,system-ui,-apple-system,sans-serif;margin:0;min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:50px 18px;box-sizing:border-box}
.tvf-checkout-panel{box-sizing:border-box;max-width:620px;width:100%;background:#102a3c;border:1px solid #294a5a;border-top:4px solid #02c780;border-radius:18px;padding:clamp(22px,5vw,40px);box-shadow:0 20px 80px #0005}
.tvf-checkout a{color:#52efb1}.tvf-checkout h1{font:800 clamp(1.7rem,3vw,2.5rem) Georgia,serif;line-height:1.16}.tvf-checkout-panel p{line-height:1.7;color:#c4d4df}.tvf-checkout .tvf-eyebrow{color:#38e6a5;text-transform:uppercase;font-size:.76rem;font-weight:800;letter-spacing:.1em;margin-top:26px}
.tvf-checkout .tvf-price{font-size:2rem;color:#f0fbff;font-weight:800}.tvf-checkout .tvf-price small{display:block;font-size:.82rem;color:#c4d4df;font-weight:400}
.tvf-checkout .tvf-note,.tvf-checkout .tvf-message{padding:14px;border:1px solid #4b6d77;border-radius:10px;background:#173449}.tvf-checkout .tvf-avail{color:#32e8a5;font-weight:700}
.tvf-checkout form{display:grid;gap:13px;margin-top:24px}.tvf-checkout label{font-weight:700;font-size:.86rem}.tvf-checkout input{box-sizing:border-box;width:100%;border:1px solid #66828c;border-radius:8px;background:#fff;color:#17232d;font:inherit;padding:13px}
.tvf-checkout button{background:#06c986;border:0;border-radius:8px;padding:15px;font-size:1rem;font-weight:800;color:#061821;cursor:pointer}.tvf-checkout button:focus-visible{outline:3px solid #fff;outline-offset:3px}.tvf-checkout .tvf-small{font-size:.79rem}.tvf-checkout .tvf-error{color:#ffe0db;background:#682f33;padding:12px;border-radius:8px}
@media(max-width:650px){#tvf-showcase .tvf-winner{grid-template-columns:1fr}#tvf-showcase .tvf-sponsor{flex-basis:82vw}#tvf-showcase .tvf-title{font-size:1.55rem}}

/* Reservation-only featured package: no checkout activation or payment collection. */
.tvf-checkout .tvf-reservation{margin-top:20px}
.tvf-checkout .tvf-reservation p{margin:0 0 14px;line-height:1.65}
.tvf-checkout .tvf-reservation strong{color:#f0fbff}
.tvf-checkout .tvf-reservation .tvf-request-link{display:inline-block;box-sizing:border-box;max-width:100%;background:#06c986;color:#061821;text-decoration:none;font-weight:800;font-size:.95rem;line-height:1.35;padding:14px 18px;border-radius:9px;margin:2px 0 17px;overflow-wrap:anywhere}
.tvf-checkout .tvf-request-link:hover{background:#39e7ad}
.tvf-checkout .tvf-request-link:focus-visible{outline:3px solid #fff;outline-offset:3px}
.tvf-checkout .tvf-reservation .tvf-reservation-help,.tvf-checkout .tvf-reservation .tvf-reservation-terms{font-size:.82rem;color:#c4d4df}
.tvf-checkout .tvf-reservation .tvf-reservation-terms{margin-bottom:0}
