/* HungerBox components. Needs hungerbox-tokens.css. Sizes are the measured ones. "ours" = not on the site. */
.hb{font:var(--hb-body-lg);color:var(--hb-text-muted);background:var(--hb-page);-webkit-font-smoothing:antialiased}
.hb *{box-sizing:border-box}
/* titles */
.hb-overtitle{font:var(--hb-overtitle);color:var(--hb-text);margin:0 0 var(--hb-overtitle-gap);text-align:center}
.hb-title{font:var(--hb-title);color:var(--hb-text);margin:0 0 var(--hb-title-gap);text-align:center}
.hb-hero-line{font:var(--hb-title);color:var(--hb-text);margin:0}
.hb-hero-word{font:var(--hb-hero-word);color:var(--hb-primary);margin:0}
.hb-hero-sub{font:var(--hb-hero-sub);color:var(--hb-text);margin:0}
.hb-lead{font:var(--hb-lead);color:var(--hb-text);margin:0}
/* buttons: no hover change on the site */
.hb-btn{display:inline-flex;align-items:center;justify-content:center;height:var(--hb-btn-h);min-width:192px;padding:0 16px;border-radius:var(--hb-radius);border:0;background:var(--hb-primary);color:#fff;font:var(--hb-body-lg);text-decoration:none;cursor:pointer}
.hb-btn--sm{height:var(--hb-btn-h-sm);min-width:120px;font:500 14px/20px var(--hb-font-body)}
.hb-btn--outline{background:transparent;color:var(--hb-primary);border:1px solid var(--hb-primary)} /* ours */
.hb-btn--white{background:#fff;color:var(--hb-primary)} /* ours: on the purple band */
.hb-btn:focus-visible{outline:3px solid var(--hb-lilac);outline-offset:3px} /* ours */
/* cards */
.hb-card{background:var(--hb-surface);border:1px solid var(--hb-border);border-radius:var(--hb-radius);padding:var(--hb-card-pad)}
.hb-card h3,.hb-card h4{font:var(--hb-lead);color:var(--hb-text);margin:0 0 8px}
.hb-card p{font:var(--hb-body);margin:0}
.hb-quote{display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.hb-person{display:flex;gap:16px;align-items:center}
.hb-person img{width:40px;height:40px}
.hb-person b{display:block;font:500 18px/28px var(--hb-font-body);color:var(--hb-primary)}
.hb-person small{display:block;font:var(--hb-caption);color:var(--hb-text)}
.hb-disc{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--hb-primary);color:var(--hb-yellow)} /* ours */
.hb-disc--red{background:var(--hb-red);color:#fff}
/* stats */
.hb-band{background:var(--hb-primary);color:#fff}
.hb-stat{display:flex;gap:20px;align-items:flex-start}
.hb-stat img{width:75px;height:75px;flex:none}
.hb-stat b{display:block;font:var(--hb-stat-number);color:#fff}
.hb-stat span{display:block;font:var(--hb-stat-label);color:#fff}
.hb-stat--light b{font-weight:500;color:var(--hb-text)}.hb-stat--light span{font:var(--hb-lead);color:var(--hb-text-muted)}
.hb-divider{width:1px;align-self:stretch;background:var(--hb-primary)}
/* header */
.hb-header{display:flex;align-items:center;height:var(--hb-header-h);padding:0 var(--hb-gutter);background:#fff;border-bottom:1px solid var(--hb-border)}
.hb-header img{width:150px;height:auto}
.hb-nav{display:flex;gap:40px;margin-left:80px}
.hb-nav a{font:var(--hb-small);color:var(--hb-primary);text-decoration:none}
.hb-header .hb-btn{margin-left:auto}
/* form */
.hb-field{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border-radius:var(--hb-radius);padding:12px}
.hb-field input{flex:1;min-width:0;height:56px;padding:0 8px;border:0;outline:0;border-radius:var(--hb-radius);font:var(--hb-body-lg);color:var(--hb-text)}
.hb-field .hb-btn{min-width:160px}
/* small parts */
.hb-dots{display:flex;gap:10px}.hb-dots i{width:16px;height:12px;border-radius:var(--hb-radius-dot);background:var(--hb-tint)}.hb-dots i.on{background:var(--hb-primary)}
.hb-tag{display:inline-block;background:#fff;border:1px solid var(--hb-border);border-radius:var(--hb-radius);padding:8px 16px;font:var(--hb-body);color:var(--hb-text)} /* ours */
.hb-contact{display:flex;gap:8px;align-items:flex-start;font:var(--hb-body-lg);color:#fff}
.hb-contact img{width:28px;height:28px;flex:none}
.hb-bar{display:flex;justify-content:space-between;align-items:center;background:#000;padding:32px var(--hb-gutter)}
.hb-bar img{width:150px;height:auto}.hb-bar p{margin:0;font:300 14px/20px var(--hb-font-body);color:#fff}
.hb-wa{position:relative;width:60px;height:60px;border-radius:50%;border:2px solid #fff;background:linear-gradient(135deg,#25D366 0%,#128C7E 100%);box-shadow:var(--hb-shadow-whatsapp);display:grid;place-items:center;color:#fff}
.hb-wa i{position:absolute;top:2px;right:2px;width:14px;height:14px;border-radius:50%;background:#22c55e;border:2.5px solid #fff}
.hb-pattern{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Ccircle cx='6' cy='8' r='3.5' fill='%23FF5148'/%3E%3Crect x='20' y='6' width='4.5' height='4.5' fill='%2390C73A'/%3E%3Cpath d='M2 21a5 5 0 0 0 9 3z' fill='%233A1593'/%3E%3Cpath d='M19 26l8 1-5-7z' fill='%23FFCE1A'/%3E%3C/svg%3E")} /* ours: a light redraw of the site's dotted pattern */
@media(max-width:640px){
.hb-title{font-size:24px;line-height:32px;margin-bottom:24px}.hb-overtitle{font-size:20px;line-height:28px;margin-bottom:8px}
.hb-btn{height:var(--hb-btn-h-mobile);font-size:16px;line-height:24px}
.hb-stat img{width:58px;height:58px}.hb-stat b{font-size:28px;line-height:36px}.hb-stat span{font-size:18px;line-height:28px}}
