/* JobDeal product sections; alliance, news and demo sections keep their existing styles. */
.bo-hero{padding:180px 0 100px;background:radial-gradient(ellipse at 90% 15%,#302D29,var(--ink) 65%);color:#fff}
.bo-hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:68px;align-items:center}
.bo-hero h1{color:#fff;font:700 clamp(2.6rem,4.3vw,3.8rem)/1.08 var(--display);letter-spacing:-.02em;margin:20px 0 24px}
.bo-hero h1 span{color:var(--teal-bright)}
.bo-lead{font-size:1.15rem;line-height:1.65;color:#E8EAE1}
.bo-hero-copy{color:#BBC0B1;line-height:1.7;margin:18px 0 30px}
.bo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}
.bo-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.bo-feature{padding:32px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.bo-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(155deg,var(--m1),var(--m2));color:var(--ink);margin-bottom:24px}
.bo-icon svg{height:24px;width:24px}
.bo-feature h3,.bo-module h3,.bo-benefit h3{font:600 1.18rem/1.3 var(--display);letter-spacing:-.02em;margin:0 0 12px}
.bo-feature p,.bo-module p,.bo-benefit p{color:var(--muted);font-size:.94rem;line-height:1.7}
.bo-modules{background:var(--mist)}
.bo-section-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:end;margin-bottom:48px}
.bo-section-heading h2{font:700 clamp(2rem,3.6vw,2.7rem)/1.15 var(--display);letter-spacing:-.02em;margin:14px 0 0}
.bo-section-heading>p{font-size:1rem;line-height:1.7;color:var(--muted)}
.bo-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.bo-module{padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}
.bo-module-number{display:block;color:var(--violet);font:600 .82rem var(--display);margin-bottom:24px}
.bo-module h3{font-size:1.07rem}
.bo-module p{font-size:.88rem;margin:0}
.bo-module-cta{background:var(--ink);color:#fff;border-color:var(--ink);display:flex;flex-direction:column;justify-content:center}
.bo-module-cta .eyebrow{color:var(--teal-bright);font-size:.7rem;margin-bottom:16px}
.bo-module-cta p{color:#BBC0B1}
.bo-module-cta a{color:var(--teal-bright);font-size:.85rem;font-weight:600;margin-top:24px}
.bo-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.bo-benefit{border-top:2px solid var(--line);padding-top:22px}
.bo-benefit-label{display:inline-block;padding:7px 12px;border-radius:var(--r-pill);font:600 .78rem var(--display);color:var(--ink);background:var(--m1);margin-bottom:22px}
.bo-benefit:nth-child(2) .bo-benefit-label{background:var(--m3)}
.bo-benefit:nth-child(3) .bo-benefit-label{background:var(--m5);color:#fff}
.bo-benefit:nth-child(4) .bo-benefit-label{background:var(--m6);color:#fff}
.bo-hero{position:relative;overflow:hidden}
.bo-network{position:absolute;inset:0;width:100%;height:100%;opacity:.55;pointer-events:none}
.bo-hero-grid{position:relative;z-index:1}
.bo-graphic{width:100%;height:auto;display:block;margin-top:22px}
.bo-graphic-source{fill:#292D25;stroke:#576548;stroke-width:1}
.bo-graphic-output{fill:#2D2931;stroke:#64576C;stroke-width:1}
.bo-graphic-text{fill:#F5F6F1;font:600 20px var(--body)}
.bo-graphic-small{fill:#BBC0B1;font:400 10px var(--body)}
.bo-graphic-hub-small{fill:#E8D9F5;font:400 10px var(--body)}
.bo-graphic-caption{fill:#BBC0B1;font:500 11px var(--display);letter-spacing:1px}
.bo-icon svg{width:20px;height:20px;stroke:#fff}
.bo-feature{background:var(--surface);transition:transform .28s,border-color .28s,box-shadow .28s}
.bo-section-heading{grid-template-columns:1fr}
.bo-hero{position:relative;overflow:hidden}
.bo-hero-grid{position:relative;z-index:1}
.bo-brandline{display:flex;align-items:center;gap:18px}
.bo-product-name{font:700 2rem/1.2 var(--display);letter-spacing:-.04em;color:#fff}
.bo-vertical-name{font:600 .72rem/1.3 var(--display);letter-spacing:.2em;text-transform:uppercase;color:var(--teal-bright);border-left:1px solid #65685B;padding-left:18px}
.bo-system{border:1px solid #55574C;border-radius:var(--r-lg);padding:28px;background:rgba(35,34,32,.94);box-shadow:var(--shadow-floating)}
.bo-system .bo-graphic{margin-top:0}
.bo-diagram-caption{color:#BBC0B1;font-size:.74rem;line-height:1.6;text-align:center;margin:16px 0 0}
.bo-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.bo-feature{background:var(--mist);padding:28px 24px;transition:transform .28s,border-color .28s,box-shadow .28s}
.bo-feature:hover{transform:translateY(-3px);border-color:var(--teal);box-shadow:var(--shadow-card)}
.bo-feature h3{font-size:1.06rem}
.bo-feature-kicker{display:block;font:600 .7rem/1.5 var(--display);text-transform:uppercase;letter-spacing:.08em;color:var(--teal-deep);margin-bottom:10px}
.bo-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(155deg,var(--m1),var(--m2),var(--m3),var(--m4));color:#fff;margin-bottom:16px}
.bo-icon svg{width:20px;height:20px}
.bo-section-heading{display:block;max-width:760px}
.bo-section-heading h2{margin-bottom:16px}
.bo-section-heading p{color:var(--muted);line-height:1.7}
.bo-module-cta h3{color:#fff}
@media(max-width:1100px){.bo-hero-grid{gap:32px}.bo-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bo-benefit-grid{gap:20px}}
@media(max-width:980px){.bo-hero{padding:140px 0 72px}.bo-hero-grid{grid-template-columns:1fr;gap:44px}.bo-hero-grid>div:first-child{max-width:680px}.bo-system{max-width:600px;width:100%;margin:auto}.bo-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bo-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}
@media(max-width:560px){:is(.bo-hero,.bo-overview,.bo-modules,.bo-benefits)>.wrap{padding-left:24px;padding-right:24px}.bo-hero h1{font-size:clamp(2rem,10.6vw,2.65rem)}.bo-lead{font-size:1.05rem}.bo-actions{align-items:flex-start;flex-direction:column;gap:16px}.bo-brandline{gap:14px}.bo-vertical-name{padding-left:14px}.bo-system{padding:22px 16px}.bo-graphic-small,.bo-graphic-caption{display:none}.bo-graphic-hub-small{font-size:12px}.bo-feature-grid,.bo-module-grid,.bo-benefit-grid{grid-template-columns:1fr}.bo-module{padding:26px}}

/* IA semántica is the interlocking piece of JobDeal's HR puzzle. */
.bo-puzzle-piece{stroke:rgba(245,246,241,.38);stroke-width:1.2;stroke-linejoin:round}
.bo-puzzle-connector{stroke:#AF8ACB;stroke-width:1.5;stroke-linejoin:round}
.bo-puzzle-label{fill:var(--ink);font:600 20px var(--body)}
.bo-puzzle-detail{fill:var(--ink);font:400 10px var(--body)}
.bo-puzzle-hub{fill:#fff;font:600 20px var(--body)}
.bo-puzzle-hub-detail{fill:#E8D9F5;font:400 11px var(--body)}
@media(max-width:560px){.bo-puzzle-detail{display:none}.bo-puzzle-hub-detail{font-size:12px}}

.bo-puzzle{margin-bottom:0}
