/* B2B v1 - sistema Hommu (sobre home.css) */
.page-hero{position:relative;padding:clamp(60px,9vw,130px) var(--pad) clamp(30px,5vw,60px)}
.page-hero .micro{color:var(--blue)}
.page-hero h1{font-size:clamp(58px,11vw,170px);font-weight:500;line-height:.95;letter-spacing:-.075em;color:var(--blue);margin:26px 0 35px}
.page-sub{font-size:clamp(15px,1.6vw,20px);max-width:560px;line-height:1.65}

/* seccions generiques: numero esquerra + contingut */
.b2b-sec{padding:clamp(70px,9vw,120px) var(--pad);border-top:1px solid #17171740}
.b2b-grid{display:grid;grid-template-columns:1fr 3fr;gap:30px;margin-top:45px}
.b2b-sec h2{font-size:clamp(34px,4.6vw,74px);font-weight:500;letter-spacing:-.055em;line-height:1.12;margin:0 0 40px}
.b2b-lede{font-size:clamp(15px,1.5vw,19px);line-height:1.7;max-width:720px;color:#141414d9;margin:0 0 40px}
.b2b-link{display:inline-block;margin-top:34px;font-size:14px;font-weight:600;color:var(--blue);text-decoration:none;border-bottom:1.5px solid var(--blue);padding-bottom:4px}

/* graella de logos de clients */
.logo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.logo-grid figure{margin:0;background:#fff;border:1px solid #17171718;border-radius:12px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;transition:transform .35s cubic-bezier(.2,.6,.2,1),box-shadow .35s}
.logo-grid figure:hover{transform:translateY(-4px);box-shadow:0 14px 30px #14141414}
.logo-grid img{width:68%;height:68%;object-fit:contain;display:block}

/* serveis */
.svc{display:grid;grid-template-columns:minmax(200px,32%) 1fr;gap:clamp(24px,4vw,60px);align-items:start;border-top:1px solid #17171740;padding:clamp(40px,5vw,64px) 0}
.svc-head{display:flex;align-items:baseline;gap:22px}
.svc-num{font-size:12px;letter-spacing:.22em;color:#14141499}
.svc-head h3{font-size:clamp(26px,3.4vw,50px);font-weight:500;letter-spacing:-.05em;margin:0;color:var(--blue)}
.svc-il{width:100%;max-width:340px;height:auto;display:block}
.svc-desc{font-size:14px;line-height:1.7;max-width:640px;color:#141414d9;margin:22px 0 0}
.svc-sub{font-size:13px;font-weight:600;letter-spacing:.02em;margin:26px 0 18px}

/* rail horitzontal de peces (Full Stack) */
.svc-rail{display:grid;grid-auto-flow:column;grid-auto-columns:min(72%,760px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px;scrollbar-width:thin}
.svc-rail figure{margin:0;scroll-snap-align:start;overflow:hidden;background:#e8e7e2;border-radius:4px}
.svc-rail img{width:100%;height:auto;display:block}
.rail-hint{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#14141480;margin:6px 0 0}

/* passos / subitems */
.svc-steps{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
.svc-steps li{padding:18px 0;border-bottom:1px solid #17171740;display:flex;gap:16px;align-items:flex-start}
.svc-steps h4{font-size:14px;font-weight:600;letter-spacing:-.01em;margin:0 0 8px}
.svc-steps p{font-size:13px;line-height:1.65;color:#141414c9;margin:0}
.step-ic{width:44px;height:44px;object-fit:contain;flex:none}

/* miniatures de treballs */
.work-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.work-thumbs figure{margin:0;overflow:hidden;background:#e8e7e2;border-radius:4px}
.work-thumbs img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.2,.6,.2,1)}
.work-thumbs figure:hover img{transform:scale(1.04)}

/* CTA servei */
.svc-cta{display:inline-block;margin-top:30px;font-size:13px;font-weight:600;color:#fff;background:var(--blue);text-decoration:none;padding:13px 26px;border-radius:999px;transition:transform .3s,box-shadow .3s}
.svc-cta:hover{transform:translateY(-3px);box-shadow:0 12px 26px #1702cd30}

/* contacte amb il·lustracio */
.contact{position:relative}
.contact-il{position:absolute;right:var(--pad);bottom:40px;width:clamp(140px,18vw,260px);pointer-events:none}

@media(max-width:760px){
.page-hero h1{font-size:clamp(48px,13vw,80px)}
.b2b-grid{grid-template-columns:1fr;gap:24px;margin-top:28px}
.logo-grid{grid-template-columns:repeat(3,1fr)}
.svc-head{display:flex;align-items:baseline;gap:22px}
.svc-il{width:100%;max-width:340px;height:auto;display:block}
.svc-steps{grid-template-columns:1fr}
.work-thumbs{grid-template-columns:1fr 1fr}
.svc-rail{grid-auto-columns:88%}
.contact-il{position:static;margin:30px 0 0;width:150px}
}

/* showreel (carrega diferida, sense autoplay) */
.reel{margin-top:44px}
.reel video{width:100%;aspect-ratio:16/9;background:#0d0d0d;display:block;border-radius:4px}

/* v28/10: hero amb il·lustracio a l'esquerra, titol blau, imatges de servei fixes */
.b2b-hero-grid{display:grid;grid-template-columns:minmax(220px,34%) 1fr;gap:clamp(24px,5vw,80px);align-items:center}
.b2b-hero-il{margin:0}
.b2b-hero-il img{width:100%;height:auto;display:block;max-height:78vh;object-fit:contain}
.b2b-hero .hero-title{width:100%;font-size:clamp(44px,6.6vw,110px);margin:26px 0 24px;pointer-events:auto}
.b2b-hero .hero-title .offset{padding-left:0}
.b2b-sec h2.blue{color:var(--blue)}
.svc-side{align-self:stretch}
.svc-side .svc-il{position:sticky;top:110px;margin-bottom:60px}
@media(max-width:760px){
.b2b-hero-grid{grid-template-columns:1fr}
.b2b-hero-il{max-width:260px}
.svc{grid-template-columns:1fr}
.svc-side .svc-il{position:static;margin:0;width:140px}
}
.svc-steps li:not(:has(.step-ic)){display:block}

/* v28/10 c: imatge hero mes petita, franja partner blava, serveis sense marge esquerre buit */
.b2b-hero-il img{width:100%;max-width:400px;max-height:none}
.b2b-band{background:var(--blue);color:#fff;border-top:0}
.b2b-band .eyebrow,.b2b-band .section-num,.b2b-band h2,.b2b-band .b2b-lede{color:#fff}
.b2b-band .b2b-lede{max-width:820px}
.b2b-grid-wide{grid-template-columns:1fr 3fr;gap:0 30px}
.b2b-grid-wide>div{display:contents}
.b2b-grid-wide>.section-num{grid-column:1;grid-row:1}
.b2b-grid-wide>div>h2,.b2b-grid-wide>div>.b2b-lede{grid-column:2}
.b2b-grid-wide>div>.svc{grid-column:1/-1}
.b2b-grid-wide>div>.svc:first-of-type{margin-top:20px}
@media(max-width:760px){.b2b-grid-wide{grid-template-columns:1fr}.b2b-grid-wide>div>h2,.b2b-grid-wide>div>.b2b-lede{grid-column:1}}
/* v28/10 e: contingut de cada servei alineat amb el titular "Serveis paquetitzats" */
.b2b-grid-wide .svc{grid-template-columns:calc((100% - 30px)/4) 1fr;column-gap:30px}
.b2b-grid-wide .svc-il{width:100%;max-width:none}
@media(max-width:1100px){.b2b-grid-wide .svc{grid-template-columns:minmax(200px,32%) 1fr}}
@media(max-width:760px){.b2b-grid-wide .svc{grid-template-columns:1fr}.b2b-grid-wide .svc-il{width:140px}}
/* v28/10 g: titol del servei alineat amb "Serveis paquetitzats"; codi S.0X fora a l'esquerra */
.b2b-grid-wide .svc-head{position:relative;display:block}
.b2b-grid-wide .svc-num{position:absolute;right:100%;margin-right:14px;top:.9em;white-space:nowrap}
@media(max-width:1100px){.b2b-grid-wide .svc-num{position:static;display:block;margin:0 0 6px}}
/* contacte */
.contact-hero{min-height:auto;padding-bottom:clamp(30px,6vw,90px)}
.contact-hero h1{font-size:clamp(44px,7.2vw,118px)}
.contact-hero .b2b-hero-txt{max-width:100%}
.c-two{display:grid;grid-template-columns:1fr 1.5fr;gap:clamp(30px,5vw,90px);align-items:start}
.c-info h2,.c-h2{margin-top:0}
.c-info h3{color:var(--blue);font-size:1.05rem;margin:2rem 0 .6rem}
.c-info p,.contact-hero~.b2b-sec p{line-height:1.65}
.c-info a,.contact-hero~.b2b-sec p a{color:inherit}
.c-form{display:grid;gap:1.2rem;max-width:720px;margin-top:1.6rem}
.c-form label{display:grid;gap:.4rem;font-size:.85rem;font-weight:600;letter-spacing:.03em}
.c-form em{font-weight:400;opacity:.7}
.c-form input[type=text],.c-form input[type=email],.c-form textarea{font:inherit;font-weight:400;font-size:1rem;padding:.85rem 1rem;border:1px solid var(--ink);background:#fff;color:var(--ink);border-radius:0}
.c-form input:focus,.c-form textarea:focus{outline:2px solid var(--blue);outline-offset:2px}
.c-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.c-form .c-check{display:flex;gap:.7rem;align-items:flex-start;font-weight:400;font-size:.85rem}
.c-form button{justify-self:start;font:inherit;font-weight:700;padding:.95rem 2rem;background:var(--blue);color:#fff;border:0;cursor:pointer;transition:transform .2s}
.c-form button:hover{transform:translateX(6px)}
.c-form button:disabled{opacity:.6;cursor:wait}
.c-status{min-height:1.4em;font-weight:600}
.c-status.ok{color:var(--blue)}
.c-status.err{color:#b00020}
@media(max-width:900px){.c-two{grid-template-columns:1fr}}
/* legal */
.legal-title{font-size:clamp(40px,6.4vw,104px)!important}
.legal{max-width:820px}
.legal h2{font-size:clamp(22px,2.2vw,32px);margin:2.4rem 0 .8rem;letter-spacing:-.03em}
.legal>h2:first-of-type{margin-top:0}
.legal h3{color:var(--blue);font-size:1.02rem;margin:1.6rem 0 .5rem}
.legal p,.legal li{line-height:1.7;font-size:1rem}
.legal ul{padding-left:1.2rem;margin:.6rem 0 1rem}
.legal li{margin:.35rem 0}
.legal a{color:var(--blue)}
.legal-note{font-size:.85rem!important;border-left:3px solid var(--blue);padding:.2rem 0 .2rem .9rem;margin:0 0 2rem!important}
.legal-links{display:flex;gap:1.2rem;flex-wrap:wrap}
.legal-links a{text-decoration:none}
/* PDF Glòria: el peix no tapa el correu; logo clar sobre fons fosc */
.contact-il{position:static;display:block;margin:34px 0 0 auto;width:clamp(140px,18vw,260px);pointer-events:none}
.logo-grid figure.logo-dark{background:#141414;border-color:#141414}
