/* =====================================================================
   MOD/PORTADA — home pública 2026 (estilo belnou.com), granate de marca.
   Scopeado a .portada2026. Usa los tokens de tema.css.
   ===================================================================== */
.portada2026{ display:block; color: var(--color-text); overflow: hidden; }
.portada2026 section{ position: relative; }

/* ---- Utilidades de sección ---- */
.portada2026 .pt-sec__head{ text-align:center; max-width:720px; margin:0 auto clamp(28px,4vw,52px); }
.portada2026 .pt-sec__title{ font-size:clamp(1.6rem,3vw,2.5rem); font-weight:800; line-height:1.12; color:var(--color-text); margin:0 0 12px; }
.portada2026 .pt-sec__sub{ font-size:1.05rem; color:var(--color-text-light); line-height:1.6; margin:0; }
.portada2026 .pt-eyebrow{ display:inline-block; font-size:13px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--color-principal); margin-bottom:12px; }
.portada2026 .pt-eyebrow--light{ color:rgba(255,255,255,.9); }

/* ---- Botones ---- */
.portada2026 .pt-btn{
    display:inline-flex; align-items:center; justify-content:center;
    padding:15px 30px; font-weight:700; border-radius:var(--radius-md);
    text-decoration:none !important; transition:transform .25s ease, background .25s ease, color .25s ease;
}
.portada2026 .pt-btn--primary{ background:var(--color-principal); color:var(--color-white) !important; box-shadow:var(--shadow-md); }
.portada2026 .pt-btn--primary:hover{ background:var(--color-principal-hover); transform:translateY(-2px); }
.portada2026 .pt-btn--ghost{ background:transparent; color:var(--color-white) !important; border:2px solid rgba(255,255,255,.7); }
.portada2026 .pt-btn--ghost:hover{ background:rgba(255,255,255,.15); border-color:#fff; transform:translateY(-2px); }
.portada2026 .pt-link{ display:inline-flex; align-items:center; gap:8px; font-weight:700; color:var(--color-principal) !important; text-decoration:none !important; }
.portada2026 .pt-link:hover{ gap:12px; }

/* ---- HERO ---- */
.portada2026 .pt-hero{ min-height:min(78vh, 720px); display:flex; align-items:center; }
.portada2026 .pt-hero__media{ position:absolute; inset:0; z-index:0; }
.portada2026 .pt-hero__media img{ width:100%; height:100%; object-fit:cover; display:block; }
.portada2026 .pt-hero__overlay{ position:absolute; inset:0; z-index:1; background:linear-gradient(90deg, rgba(0,0,0,.62), rgba(0,0,0,.28) 55%, rgba(0,0,0,.12)); }
.portada2026 .pt-hero__content{ position:relative; z-index:2; max-width:1400px; margin:0 auto; width:100%; padding:0 clamp(24px,5vw,72px); color:#fff; }
.portada2026 .pt-hero__title{ font-size:clamp(2.4rem,5.5vw,4.2rem); font-weight:800; line-height:1.05; margin:0 0 18px; letter-spacing:-.01em; text-shadow:0 1px 12px rgba(0,0,0,.35); }
.portada2026 .pt-hero__lead{ font-size:clamp(1.05rem,1.8vw,1.4rem); line-height:1.5; max-width:52ch; color:rgba(255,255,255,.92); margin:0 0 30px; }
.portada2026 .pt-hero__cta{ display:flex; gap:14px; flex-wrap:wrap; }

/* ---- FAMILIAS ---- */
.portada2026 .pt-familias{ padding:clamp(56px,8vw,110px) 24px; }
.portada2026 .pt-familias__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2.2vw,28px); }
.portada2026 .pt-fam{
    display:flex; flex-direction:column; background:var(--color-white);
    border:1px solid var(--color-border); border-radius:var(--radius-lg); overflow:hidden;
    box-shadow:var(--shadow-sm); text-decoration:none !important; color:inherit;
    transition:transform .3s cubic-bezier(.4,0,.2,1), box-shadow .3s ease, border-color .3s ease;
}
.portada2026 .pt-fam:hover{ transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:var(--color-principal-20); }
.portada2026 .pt-fam__media{ display:flex; align-items:center; justify-content:center; aspect-ratio:4/3; overflow:hidden; padding:18px; background:linear-gradient(160deg, #f6f6f7, #eceded); }
.portada2026 .pt-fam__media img{ max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; display:block; transition:transform .5s ease; }
.portada2026 .pt-fam:hover .pt-fam__media img{ transform:scale(1.06); }
.portada2026 .pt-fam__body{ display:flex; flex-direction:column; gap:8px; padding:22px 22px 26px; }
.portada2026 .pt-fam__name{ font-size:1.2rem; font-weight:800; color:var(--color-text); }
.portada2026 .pt-fam__desc{ font-size:.98rem; line-height:1.5; color:var(--color-text-light); }
.portada2026 .pt-fam--eco{ border-color:#cfe3d5; }
.portada2026 .pt-fam--eco .pt-fam__name{ color:#3a6248; }

/* ---- MARCA ---- */
.portada2026 .pt-marca{ padding:clamp(48px,7vw,100px) 24px; background:var(--color-bg); }
.portada2026 .pt-marca__inner{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,5vw,64px); align-items:center; }
.portada2026 .pt-marca__media img{ width:100%; border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); display:block; }
.portada2026 .pt-marca__text p{ font-size:1.08rem; line-height:1.75; color:var(--color-text-light); margin:0 0 22px; }

/* ---- CONFIANZA ---- */
.portada2026 .pt-trust{ padding:clamp(36px,5vw,64px) 24px; }
.portada2026 .pt-trust__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.portada2026 .pt-trust__item{ text-align:center; padding:26px 16px; background:var(--color-white); border:1px solid var(--color-border); border-radius:var(--radius-lg); }
.portada2026 .pt-trust__k{ display:block; font-size:clamp(1.6rem,2.6vw,2.2rem); font-weight:800; color:var(--color-principal); line-height:1; }
.portada2026 .pt-trust__d{ display:block; margin-top:10px; font-size:.98rem; color:var(--color-text-light); }

/* ---- ÁREA PROFESIONAL ---- */
.portada2026 .pt-pro{ background-size:cover; background-position:center; padding:clamp(60px,9vw,140px) 24px; }
.portada2026 .pt-pro__overlay{ position:absolute; inset:0; background:linear-gradient(90deg, rgba(30,10,12,.78), rgba(30,10,12,.45)); }
.portada2026 .pt-pro__content{ position:relative; z-index:1; color:#fff; max-width:820px; }
.portada2026 .pt-pro__title{ font-size:clamp(1.6rem,3vw,2.6rem); font-weight:800; line-height:1.15; margin:0 0 16px; }
.portada2026 .pt-pro__content p{ font-size:1.1rem; line-height:1.6; color:rgba(255,255,255,.9); margin:0 0 28px; max-width:60ch; }

/* ---- CANALES B2B ---- */
.portada2026 .pt-canales{ padding:clamp(48px,7vw,100px) 24px; }
.portada2026 .pt-canales__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.portada2026 .pt-canal{ background:var(--color-white); border:1px solid var(--color-border); border-top:3px solid var(--color-principal); border-radius:var(--radius-lg); padding:28px 24px; transition:transform .25s ease, box-shadow .25s ease; }
.portada2026 .pt-canal:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md); }
.portada2026 .pt-canal h3{ font-size:1.2rem !important; font-weight:800; color:var(--color-text); margin:0 0 10px; }
.portada2026 .pt-canal p{ font-size:.98rem; line-height:1.55; color:var(--color-text-light); margin:0; }

/* ---- FAQ ---- */
.portada2026 .pt-faq{ padding:clamp(40px,6vw,90px) 24px; }
.portada2026 .pt-faq__list{ max-width:820px; margin:0 auto; display:grid; gap:12px; }
.portada2026 .pt-faq__item{ background:var(--color-white); border:1px solid var(--color-border); border-radius:var(--radius-md); overflow:hidden; }
.portada2026 .pt-faq__item summary{ cursor:pointer; padding:18px 22px; font-weight:700; color:var(--color-text); list-style:none; position:relative; padding-right:48px; }
.portada2026 .pt-faq__item summary::-webkit-details-marker{ display:none; }
.portada2026 .pt-faq__item summary::after{ content:"+"; position:absolute; right:20px; top:50%; transform:translateY(-50%); font-size:1.4rem; color:var(--color-principal); transition:transform .25s ease; }
.portada2026 .pt-faq__item[open] summary::after{ content:"–"; }
.portada2026 .pt-faq__item p{ padding:0 22px 20px; margin:0; color:var(--color-text-light); line-height:1.65; }

/* ---- CMS opcional ---- */
.portada2026 .pt-cms{ padding:clamp(32px,5vw,64px) 24px; }

/* ---- RESPONSIVE ---- */
@media (max-width:1000px){
    .portada2026 .pt-familias__grid{ grid-template-columns:repeat(2,1fr); }
    .portada2026 .pt-canales__grid{ grid-template-columns:repeat(2,1fr); }
    .portada2026 .pt-trust__grid{ grid-template-columns:repeat(2,1fr); }
    .portada2026 .pt-marca__inner{ grid-template-columns:1fr; }
    .portada2026 .pt-marca__media{ order:-1; }
}
@media (max-width:560px){
    .portada2026 .pt-familias__grid{ grid-template-columns:1fr; }
    .portada2026 .pt-canales__grid{ grid-template-columns:1fr; }
    .portada2026 .pt-hero{ min-height:70vh; }
    .portada2026 .pt-hero__cta{ flex-direction:column; }
    .portada2026 .pt-btn{ width:100%; }
}
