/* V77 welcome: existing content and handlers, photo-first desktop and stacked mobile. */
@layer vl-colors {
  #inicio.vl-welcome { --vl-text:#fff; --vl-muted:#e4e9ed; --vl-accent:#ffd5a8; background-color:#162b29!important; }
  #inicio .vl-welcome-copy { --vl-text:#fff; --vl-muted:#e4e9ed; --vl-accent:#ffd5a8; }
  #inicio .vl-welcome-search { --vl-text:#253241; --vl-muted:#56616c; --vl-accent:#9e4317; background:#fff!important; }
  #inicio .vl-welcome-location { --vl-text:#253241; --vl-muted:#56616c; --vl-accent:#9e4317; background:#fff!important; }
  #inicio .vl-welcome-photo-caption { --vl-text:#fff; --vl-muted:#e4e9ed; --vl-accent:#ffd5a8; background:#162b29f5!important; }
  #inicio .vl-welcome-actions > :is(a,button) { background:#162b29!important; }
  .vl-discovery-inner > a { --vl-text:#253241; --vl-muted:#56616c; --vl-accent:#9e4317; background:#fff!important; }
  .vl-discovery-inner > a:hover { background:#fff0db!important; }
  @media(max-width:760px) {
    #inicio.vl-welcome { background:#fff9ef!important; }
    #inicio .vl-welcome-copy { --vl-text:#253241; --vl-muted:#56616c; --vl-accent:#9e4317; }
    #inicio .vl-welcome-actions > :is(a,button) { background:#fff!important; }
  }
}
  #inicio.vl-welcome { position:relative;padding:0!important; }
  .vl-welcome-shell { position:relative;max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:32px;min-height:650px;padding:64px max(32px,calc((100vw - 1320px)/2)); }
  .vl-welcome-copy { position:relative;z-index:2;padding:0;max-width:660px;align-self:center; }
  .vl-welcome-eyebrow { max-width:470px;margin-bottom:22px;letter-spacing:.18em; }
  #heroTitle { font-size:clamp(54px,5.5vw,82px)!important;line-height:1.04!important;max-width:650px;margin-bottom:20px;overflow-wrap:anywhere; }
  #heroSubtitle { max-width:570px;font-size:17px!important;line-height:1.65!important;margin-bottom:26px; }
  .vl-welcome-visual { position:absolute;inset:0;min-height:0;border-radius:0;z-index:0; }
  .vl-welcome-visual::after { content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(9,24,23,.97) 0%,rgba(9,24,23,.94) 42%,rgba(9,24,23,.76) 65%,rgba(9,24,23,.12) 100%);z-index:1; }
  #heroSlidesContainer img { object-position:50% 50%; }
  .vl-welcome-photo-top { left:auto;right:max(32px,calc((100vw - 1320px)/2));top:28px;z-index:2;align-items:center;gap:12px; }
  .vl-welcome-location { padding:10px 14px;box-shadow:0 4px 20px #0002; }
  #heroLogoFrame { width:52px;height:52px; }
  .vl-welcome-photo-caption { z-index:2;left:auto;right:max(32px,calc((100vw - 1320px)/2));bottom:32px;width:300px;padding:22px 24px;border:1px solid #ffffff35;border-radius:20px;box-shadow:0 12px 36px #0002; }
  .vl-welcome-photo-caption > strong { font-size:36px; }
  .vl-welcome-photo-caption > span { line-height:1.7; }
  .vl-welcome-search { width:100%;max-width:570px;border:0;border-radius:18px;padding:18px;box-shadow:0 12px 32px #0002; }
  .vl-welcome-actions { margin-top:18px;gap:12px; }
  .vl-welcome-actions > :is(a,button) { border:1px solid #ffffff45;border-radius:12px;padding:10px 14px;text-decoration:none;font-size:13px;min-height:46px; }
  .vl-welcome-actions > :is(a,button):hover { border-color:currentColor; }
  .vl-discovery-nav { padding:24px 32px;background:#fff9ef; }
  .vl-discovery-inner { max-width:1320px;gap:12px;border:0;border-radius:0;background:transparent;overflow:visible; }
  .vl-discovery-inner > a { border:1px solid #e7dfd4!important;border-radius:16px;min-height:100px;padding:18px;box-shadow:0 4px 16px #25324106; }
  .vl-discovery-inner > a:hover { transform:translateY(-2px); }
  .vl-discovery-inner strong { font-size:16px; }
  .vl-discovery-inner small { font-size:12px; }
  @media(min-width:761px) and (max-width:1100px) {
    .vl-welcome-shell { grid-template-columns:minmax(0,1fr) minmax(0,.48fr);padding:56px 28px;min-height:640px; }
    .vl-welcome-photo-caption { right:28px;width:230px;bottom:28px;padding:18px; }
    .vl-welcome-photo-caption > strong { font-size:30px; }
    #heroTitle { font-size:58px!important; }
    .vl-welcome-copy { max-width:500px; }
    .vl-welcome-photo-top { right:28px; }
  }
  @media(max-width:760px) {
    .vl-welcome-shell { display:flex;min-height:0;padding:0;gap:0; }
    .vl-welcome-visual { position:relative;inset:auto;order:-1;width:100%;min-height:360px;display:grid; }
    .vl-welcome-visual::after { background:linear-gradient(180deg,rgba(9,24,23,.06) 15%,rgba(9,24,23,.3) 48%,rgba(9,24,23,.94) 100%); }
    .vl-welcome-photo-top { top:18px;left:18px;right:18px;justify-content:space-between; }
    .vl-mobile-intro { position:relative;inset:auto;align-self:end;z-index:2;margin-top:104px;padding:24px 22px 44px;background:#162b29f2; }
    .vl-mobile-intro h1 { font-size:clamp(36px,10vw,48px);overflow-wrap:anywhere; }
    .vl-mobile-intro p { font-size:16px;line-height:1.55;max-width:420px; }
    .vl-welcome-copy { width:100%;padding:0 18px 20px;max-width:none; }
    .vl-welcome-search { margin-top:-18px;padding:16px;box-shadow:0 8px 24px #25324112;max-width:none; }
    .vl-welcome-actions { grid-template-columns:1fr 1fr;gap:10px;margin-top:12px; }
    .vl-welcome-actions > :is(a,button) { border-color:#e7dfd4;padding:12px 10px;min-height:52px;align-items:center; }
    .vl-mobile-categories { gap:10px;margin-top:16px; }
    .vl-mobile-categories a { min-height:58px;border-radius:14px; }
    .vl-discovery-nav { padding:0 18px 24px; }
    .vl-discovery-inner { gap:10px; }
    .vl-discovery-inner > a:first-child,.vl-discovery-inner > a:nth-child(3) { display:flex; }
    .vl-discovery-inner > a { min-height:76px;padding:12px;gap:8px; }
    .vl-discovery-inner strong { font-size:13px; }
  }
  @media(prefers-reduced-motion:reduce) { .vl-discovery-inner > a:hover { transform:none; } }

/* Existing administration controls now affect the V77 composition. */
.vl-welcome-shell{min-height:var(--welcome-desktop-height,650px)}
#heroSlidesContainer img{filter:brightness(var(--welcome-brightness,1))}
@layer vl-colors {
  @media(min-width:761px){
    #inicio.vl-welcome[data-welcome-style="classic"],#inicio.vl-welcome[data-welcome-style="clean"]{background:#fff9ef!important}
    #inicio:is([data-welcome-style="classic"],[data-welcome-style="clean"]) .vl-welcome-copy{--vl-text:#253241;--vl-muted:#56616c;--vl-accent:#9e4317}
    #inicio:is([data-welcome-style="classic"],[data-welcome-style="clean"]) .vl-welcome-actions > :is(a,button){background:#fff!important}
  }
}
@media(min-width:761px){
  #inicio:is([data-welcome-style="classic"],[data-welcome-style="clean"]) .vl-welcome-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
  #inicio:is([data-welcome-style="classic"],[data-welcome-style="clean"]) .vl-welcome-visual{left:52%}
  #inicio:is([data-welcome-style="classic"],[data-welcome-style="clean"]) .vl-welcome-visual::after{background:linear-gradient(180deg,#09181710,#09181740)}
  #inicio:is([data-welcome-style="classic"],[data-welcome-style="clean"]) .vl-welcome-actions > :is(a,button){border-color:#e7dfd4}
  #inicio[data-welcome-style="clean"] .vl-welcome-visual{top:28px;right:28px;bottom:28px;border-radius:28px}
}
@media(max-width:760px){
  .vl-welcome-shell{min-height:0}
  .vl-welcome-visual{min-height:var(--welcome-mobile-height,360px)}
  #heroSlidesContainer img{object-position:var(--welcome-mobile-position,50% 50%)!important}
}

/* V147: inicio móvil con fotografía visible y accesos por color. */
@layer vl-colors {
 @media(max-width:760px){
  #inicio.vl-welcome{background:linear-gradient(180deg,#fff7ed,#f3f7fc)!important}
  #inicio .vl-mobile-intro{--vl-text:#fff;--vl-muted:#f1f5f9;--vl-accent:#fcd34d;background:linear-gradient(180deg,transparent,#102d3be6 35%,#102d3b)!important}
  #inicio .vl-mobile-intro :is(h1,p){color:#fff!important}
  #inicio .vl-mobile-categories>a:nth-child(1){--vl-text:#7c2d12;--vl-muted:#7c2d12;--vl-accent:#7c2d12;background:#ffead5!important;border-color:#fdba74!important}
  #inicio .vl-mobile-categories>a:nth-child(2){--vl-text:#123b66;--vl-muted:#123b66;--vl-accent:#123b66;background:#e0efff!important;border-color:#93c5fd!important}
  #inicio .vl-mobile-categories>a:nth-child(3){--vl-text:#14532d;--vl-muted:#14532d;--vl-accent:#14532d;background:#ddf7e7!important;border-color:#86d6a5!important}
  #inicio .vl-mobile-categories>a:nth-child(4){--vl-text:#4c1d95;--vl-muted:#4c1d95;--vl-accent:#4c1d95;background:#f0e7ff!important;border-color:#c4b5fd!important}
  #inicio .vl-mobile-categories>a>i{--vl-text:#fff;--vl-muted:#fff;--vl-accent:#fff;color:#fff!important;background:#9a3412!important}
  #inicio .vl-mobile-categories>a:nth-child(2)>i{background:#1d4ed8!important}
  #inicio .vl-mobile-categories>a:nth-child(3)>i{background:#15803d!important}
  #inicio .vl-mobile-categories>a:nth-child(4)>i{background:#6d28d9!important}
  #inicio .vl-welcome-actions>a{--vl-text:#075985;--vl-muted:#075985;--vl-accent:#075985;background:#e0f2fe!important;border-color:#7dd3fc!important}
  #inicio .vl-welcome-actions>button{--vl-text:#7c2d12;--vl-muted:#7c2d12;--vl-accent:#7c2d12;background:#ffedd5!important;border-color:#fdba74!important}
  #inicio .vl-welcome-primary{--vl-text:#fff;--vl-muted:#fff;--vl-accent:#fff;background:#9a3412!important}
  #inicio .vl-welcome-primary :is(span,i){color:#fff!important}
  #inicio .vl-mobile-updates{background:#fff!important;border-color:#cbd5e1!important}
  .vl-discovery-nav{background:#f3f7fc!important}
  .vl-discovery-nav .vl-discovery-inner>a:nth-child(2n){--vl-text:#123b66;--vl-muted:#123b66;--vl-accent:#123b66;background:#e8f2ff!important;border-color:#bfd3f2!important}
  .vl-discovery-nav .vl-discovery-inner>a:nth-child(2n+1){--vl-text:#14532d;--vl-muted:#14532d;--vl-accent:#14532d;background:#e5f5e9!important;border-color:#b5d8c0!important}
 }
}
@layer vl-layout {
 @media(max-width:760px){
  #inicio .vl-welcome-visual{min-height:var(--welcome-mobile-height,380px)!important}
  #inicio .vl-welcome-visual::after{background:linear-gradient(180deg,#102d3b00 15%,#102d3b40 50%,#102d3bd9 100%)!important}
  #inicio .vl-mobile-intro{position:absolute!important;inset:auto 0 0!important;margin:0!important;padding:48px 22px 44px!important;z-index:2!important}
  #inicio .vl-mobile-intro h1{font-family:inherit!important;font-size:clamp(34px,9vw,46px)!important;line-height:1.12!important;font-weight:850!important;letter-spacing:-.035em!important;text-shadow:0 2px 12px #0004;margin-bottom:12px!important}
  #inicio .vl-mobile-intro p{font-size:16px!important;line-height:1.6!important;max-width:390px!important;text-shadow:0 1px 8px #0004}
  #inicio .vl-welcome-search{border-top:4px solid #f59e0b!important;padding:16px!important;border-radius:20px!important;box-shadow:0 12px 28px #17324f1a!important}
  #inicio .vl-mobile-categories{gap:12px!important;margin-top:18px!important}
  #inicio .vl-mobile-categories>a{min-height:94px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:10px!important;padding:14px!important;border-radius:18px!important;font-size:14px!important;line-height:1.4!important;box-shadow:0 5px 12px #17324f08!important}
  #inicio .vl-mobile-categories>a>i{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;font-size:19px!important;border-radius:12px!important}
  #inicio .vl-welcome-actions>:is(a,button){min-height:66px!important;padding:13px!important;border-radius:16px!important;font-size:13px!important;line-height:1.45!important}
  #inicio .vl-mobile-updates{padding:0 14px!important;border:1px solid #cbd5e1!important;border-radius:14px!important;margin-top:16px!important}
  .vl-discovery-nav .vl-discovery-inner>a{border-radius:16px!important;box-shadow:0 4px 12px #17324f08!important}
 }
 @media(max-width:360px){#inicio .vl-mobile-categories>a{padding:12px!important;font-size:13px!important}#inicio .vl-mobile-intro{padding-inline:18px!important}}
}

/* V149: one category directory, distinct welcome actions. */
@layer vl-colors {
 #inicio .vl149-category-link { --vl-text:#173d30; --vl-muted:#173d30; --vl-accent:#173d30; background:#e5f5e9 !important; }
}
@layer vl-layout {
 #inicio .vl149-category-link { display:flex; align-items:center; gap:10px; margin-top:16px; padding:12px 16px; min-height:48px; border:1px solid #b5d8c0; border-radius:14px; font-weight:700; font-size:14px; line-height:1.5; }
 #inicio .vl149-category-link>i:last-child { margin-left:auto; }
 .vl-discovery-nav .vl-discovery-inner { grid-template-columns:repeat(2,minmax(0,1fr)) !important; max-width:900px !important; }
 @media(max-width:639px) {
  .vl-discovery-nav .vl-discovery-inner>a { display:flex !important; min-height:68px !important; }
  #categorias #exploreCategoryGrid { gap:10px !important; }
  #categorias #exploreCategoryGrid>button { min-height:130px !important; padding:14px !important; }
  #categorias #exploreCategoryGrid>button strong { margin-top:12px !important; line-height:1.4 !important; }
 }
}
