/*
Theme Name: Palmer 2026
Author: Talleres Palmer MYU, S.L.
Description: Tema a medida de la web de Palmer (2026): diseño propio, castellano, inglés y francés.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: palmer
*/
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/libre-franklin-400.woff2) format('woff2')}
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/libre-franklin-500.woff2) format('woff2')}
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/libre-franklin-600.woff2) format('woff2')}
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/libre-franklin-700.woff2) format('woff2')}

:root{--g:max(clamp(16px,5vw,72px),calc((100vw - 1440px) / 2))}
*{box-sizing:border-box}
body{margin:0;background:#FFFFFF;color:#10212C;font-family:'Libre Franklin',Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}
img{max-width:100%}
a{color:#00729E}
a:hover{color:#174A66}
:focus-visible{outline:3px solid #00A8DF;outline-offset:2px}
.wrap{padding-left:var(--g);padding-right:var(--g)}
p{max-width:72ch}

/* ---------- Filas de tarjetas: en una línea; si no caben, se deslizan (carrusel) ---------- */
.fila{flex-wrap:nowrap !important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#A9B8C1 transparent;margin-left:calc(-1 * var(--g)) !important;margin-right:calc(-1 * var(--g)) !important;padding:0 var(--g) 12px !important;scroll-padding:0 var(--g)}
.fila>*{flex-shrink:0 !important;max-width:85vw;scroll-snap-align:start}
.fila::-webkit-scrollbar{height:6px}
.desliza{cursor:grab}
.desliza a,.desliza label{cursor:pointer}
.arrastrando,.arrastrando *{cursor:grabbing !important;-webkit-user-select:none;user-select:none}
.arrastrando{scroll-snap-type:none !important}
.fila::-webkit-scrollbar-thumb{background:#A9B8C1}
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* Los radios y casillas ocultos están en el centro de lo que se pulsa: al recibir el foco, el navegador no desplaza la página */
.gal-r,.vis-r,.fs,.pk{top:50%;left:50%}
.filtros{position:relative}

/* Puntos bajo las filas deslizables (los pone el script; solo se ven si la fila no cabe en la pantalla) */
.puntos{display:none;justify-content:center;align-items:center;gap:8px;margin:6px 0 0;padding:0;min-height:12px}
.desliza+.puntos{display:flex}
.puntos span{width:8px;height:8px;border-radius:4px;background:#A9B8C1;cursor:pointer;transition:width .25s ease,background-color .25s ease}
.puntos span.activo{width:24px;background:#174A66}
@media (prefers-reduced-motion: reduce){.puntos span{transition:none}}

/* ---------- Cabecera (sin script) ---------- */
.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:#FFFFFF;border-bottom:1px solid #D3DCE1}
.header-in{padding-top:18px;padding-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:16px 40px}
.brand{display:flex;flex-shrink:0}
.brand img{height:46px;width:auto;display:block}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 30px;font-size:15px;font-weight:500}
.nav a{color:#10212C;text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.nav a:hover{border-bottom-color:#D3DCE1}
.header-in{justify-content:flex-start !important}
.nav{margin-left:auto}
.idiomas{display:flex;align-items:center;gap:12px;padding-left:24px;border-left:1px solid #D3DCE1;font-size:13px;font-weight:500;letter-spacing:.04em}
.idiomas a{color:#4E5D67;text-decoration:none;padding:6px 0}
.idiomas a:hover{color:#10212C}
.idiomas a[aria-current]{color:#10212C;font-weight:700}
.nav a[aria-current="page"]{font-weight:700;border-bottom-color:#FEBB12}
@media (max-width: 960px){
  .header-in{flex-wrap:wrap;padding-top:12px;padding-bottom:0;gap:10px 16px}
  .brand img{height:36px}
  .idiomas{order:2;margin-left:auto;border-left:0;padding-left:0}
  .nav{order:3;width:calc(100% + 2*var(--g));margin:0 calc(-1*var(--g));padding:0 var(--g);flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0 24px;border-top:1px solid #EEF2F4}
  .nav::-webkit-scrollbar{display:none}
  .nav{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent)}
  .nav a{white-space:nowrap;padding:11px 0 10px;border-bottom-width:3px;font-size:15px}
  .nav a:last-of-type{margin-right:8px}
}

/* ---------- Vídeo de la cabecera y anclas ---------- */
.cab-video{transition:opacity .8s ease}.cab-pausa{opacity:.9;transition:opacity .2s}.cab-pausa:hover{opacity:1}.cab-pausa:focus-visible{outline:2px solid #00A8DF;outline-offset:-4px}.cab-pausa .ico-play{display:none}.cab-pausa.en-pausa .ico-play{display:block}.cab-pausa.en-pausa .ico-pausa{display:none}@media (prefers-reduced-motion: reduce){.cab-video,.cab-pausa{display:none !important}}
section[id]{scroll-margin-top:96px}
@media (max-width: 960px){section[id]{scroll-margin-top:112px}}

/* ---------- Botones de filtro ---------- */
.filtros{display:flex;flex-wrap:wrap;gap:8px}
.filtro{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:0 16px;border:1px solid #C3CED5;background:#FFFFFF;color:#10212C;font-size:15px;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}
.filtro span{font-weight:400}
.filtro:hover{border-color:#174A66}

/* ---------- Galería de Moldes (radios ocultos, sin script) ---------- */
.gal{display:flex;flex-direction:column;gap:28px}
.gal-head,.proy-head{display:flex;flex-wrap:wrap;gap:24px 48px;align-items:flex-end;justify-content:space-between}
.gal-fig{margin:0;display:flex;flex-direction:column}
.gal-stage{position:relative;aspect-ratio:2/1;background:#EEF2F4;overflow:hidden}
.gal-i{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;display:none}
.gal-ctl{display:none}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;background:#FFFFFF;display:flex;align-items:center;justify-content:center;cursor:pointer}
.gal-nav:hover{background:#EEF2F4}
.gal-prev{left:16px}.gal-next{right:16px}
.gal-caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 32px;padding:16px 0 0;border-top:1px solid #D3DCE1}
.gal-cap{display:none;flex-direction:column;gap:2px}
.gal-et{font-size:12px;font-weight:600;letter-spacing:.08em;color:#00729E}
.gal-ti{font-size:18px;font-weight:700}
.gal-meter{flex:0 1 300px;min-width:200px;display:flex;align-items:center;gap:16px}
.gal-track{flex:1;height:3px;background:#D3DCE1;position:relative}
.gal-prog{position:absolute;left:0;top:0;bottom:0;width:0;background:#00A8DF}
.gal-pos{font-size:15px;font-weight:600;color:#4E5D67;font-variant-numeric:tabular-nums}
.gal-n{display:none}
.gal-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}
.gal-thumb{display:flex;flex-direction:column;background:#FFFFFF;cursor:pointer;opacity:.6}
.gal-thumb:hover{opacity:.9}
.gal-thumb img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.gal-thumb span{height:4px;background:#FFFFFF}
#gal-1:checked~.gal-i1,#gal-1:checked~.gal-ctl1{display:block}
.gal:has(#gal-1:checked) .gal-cap1{display:flex}.gal:has(#gal-1:checked) .gal-n1{display:inline}
.gal:has(#gal-1:checked) .gal-prog{width:8.3%}
.gal:has(#gal-1:checked) .gal-t1{opacity:1}.gal:has(#gal-1:checked) .gal-t1 span{background:#FEBB12}
.gal:has(#gal-1:checked) .cat-iny{background:#174A66;border-color:#174A66;color:#fff}
#gal-2:checked~.gal-i2,#gal-2:checked~.gal-ctl2{display:block}
.gal:has(#gal-2:checked) .gal-cap2{display:flex}.gal:has(#gal-2:checked) .gal-n2{display:inline}
.gal:has(#gal-2:checked) .gal-prog{width:16.7%}
.gal:has(#gal-2:checked) .gal-t2{opacity:1}.gal:has(#gal-2:checked) .gal-t2 span{background:#FEBB12}
.gal:has(#gal-2:checked) .cat-iny{background:#174A66;border-color:#174A66;color:#fff}
#gal-3:checked~.gal-i3,#gal-3:checked~.gal-ctl3{display:block}
.gal:has(#gal-3:checked) .gal-cap3{display:flex}.gal:has(#gal-3:checked) .gal-n3{display:inline}
.gal:has(#gal-3:checked) .gal-prog{width:25.0%}
.gal:has(#gal-3:checked) .gal-t3{opacity:1}.gal:has(#gal-3:checked) .gal-t3 span{background:#FEBB12}
.gal:has(#gal-3:checked) .cat-iny{background:#174A66;border-color:#174A66;color:#fff}
#gal-4:checked~.gal-i4,#gal-4:checked~.gal-ctl4{display:block}
.gal:has(#gal-4:checked) .gal-cap4{display:flex}.gal:has(#gal-4:checked) .gal-n4{display:inline}
.gal:has(#gal-4:checked) .gal-prog{width:33.3%}
.gal:has(#gal-4:checked) .gal-t4{opacity:1}.gal:has(#gal-4:checked) .gal-t4 span{background:#FEBB12}
.gal:has(#gal-4:checked) .cat-iny{background:#174A66;border-color:#174A66;color:#fff}
#gal-5:checked~.gal-i5,#gal-5:checked~.gal-ctl5{display:block}
.gal:has(#gal-5:checked) .gal-cap5{display:flex}.gal:has(#gal-5:checked) .gal-n5{display:inline}
.gal:has(#gal-5:checked) .gal-prog{width:41.7%}
.gal:has(#gal-5:checked) .gal-t5{opacity:1}.gal:has(#gal-5:checked) .gal-t5 span{background:#FEBB12}
.gal:has(#gal-5:checked) .cat-iny{background:#174A66;border-color:#174A66;color:#fff}
#gal-6:checked~.gal-i6,#gal-6:checked~.gal-ctl6{display:block}
.gal:has(#gal-6:checked) .gal-cap6{display:flex}.gal:has(#gal-6:checked) .gal-n6{display:inline}
.gal:has(#gal-6:checked) .gal-prog{width:50.0%}
.gal:has(#gal-6:checked) .gal-t6{opacity:1}.gal:has(#gal-6:checked) .gal-t6 span{background:#FEBB12}
.gal:has(#gal-6:checked) .cat-iny{background:#174A66;border-color:#174A66;color:#fff}
#gal-7:checked~.gal-i7,#gal-7:checked~.gal-ctl7{display:block}
.gal:has(#gal-7:checked) .gal-cap7{display:flex}.gal:has(#gal-7:checked) .gal-n7{display:inline}
.gal:has(#gal-7:checked) .gal-prog{width:58.3%}
.gal:has(#gal-7:checked) .gal-t7{opacity:1}.gal:has(#gal-7:checked) .gal-t7 span{background:#FEBB12}
.gal:has(#gal-7:checked) .cat-sop{background:#174A66;border-color:#174A66;color:#fff}
#gal-8:checked~.gal-i8,#gal-8:checked~.gal-ctl8{display:block}
.gal:has(#gal-8:checked) .gal-cap8{display:flex}.gal:has(#gal-8:checked) .gal-n8{display:inline}
.gal:has(#gal-8:checked) .gal-prog{width:66.7%}
.gal:has(#gal-8:checked) .gal-t8{opacity:1}.gal:has(#gal-8:checked) .gal-t8 span{background:#FEBB12}
.gal:has(#gal-8:checked) .cat-sop{background:#174A66;border-color:#174A66;color:#fff}
#gal-9:checked~.gal-i9,#gal-9:checked~.gal-ctl9{display:block}
.gal:has(#gal-9:checked) .gal-cap9{display:flex}.gal:has(#gal-9:checked) .gal-n9{display:inline}
.gal:has(#gal-9:checked) .gal-prog{width:75.0%}
.gal:has(#gal-9:checked) .gal-t9{opacity:1}.gal:has(#gal-9:checked) .gal-t9 span{background:#FEBB12}
.gal:has(#gal-9:checked) .cat-alu{background:#174A66;border-color:#174A66;color:#fff}
#gal-10:checked~.gal-i10,#gal-10:checked~.gal-ctl10{display:block}
.gal:has(#gal-10:checked) .gal-cap10{display:flex}.gal:has(#gal-10:checked) .gal-n10{display:inline}
.gal:has(#gal-10:checked) .gal-prog{width:83.3%}
.gal:has(#gal-10:checked) .gal-t10{opacity:1}.gal:has(#gal-10:checked) .gal-t10 span{background:#FEBB12}
.gal:has(#gal-10:checked) .cat-alu{background:#174A66;border-color:#174A66;color:#fff}
#gal-11:checked~.gal-i11,#gal-11:checked~.gal-ctl11{display:block}
.gal:has(#gal-11:checked) .gal-cap11{display:flex}.gal:has(#gal-11:checked) .gal-n11{display:inline}
.gal:has(#gal-11:checked) .gal-prog{width:91.7%}
.gal:has(#gal-11:checked) .gal-t11{opacity:1}.gal:has(#gal-11:checked) .gal-t11 span{background:#FEBB12}
.gal:has(#gal-11:checked) .cat-alu{background:#174A66;border-color:#174A66;color:#fff}
#gal-12:checked~.gal-i12,#gal-12:checked~.gal-ctl12{display:block}
.gal:has(#gal-12:checked) .gal-cap12{display:flex}.gal:has(#gal-12:checked) .gal-n12{display:inline}
.gal:has(#gal-12:checked) .gal-prog{width:100.0%}
.gal:has(#gal-12:checked) .gal-t12{opacity:1}.gal:has(#gal-12:checked) .gal-t12 span{background:#FEBB12}
.gal:has(#gal-12:checked) .cat-alu{background:#174A66;border-color:#174A66;color:#fff}
.gal-stage:has(.gal-r:focus-visible){outline:3px solid #00A8DF;outline-offset:2px}
@media (max-width: 700px){
  .gal-stage{aspect-ratio:4/3}
  .gal-nav{width:44px;height:44px}
  .gal-prev{left:8px}.gal-next{right:8px}
  .gal-thumbs{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
  .gal-caption{padding:12px 0 0}
}

/* ---------- Logos de marcas (Inicio) ---------- */
.logos{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%)}
.logos-pista{display:flex;width:max-content;animation:logos-desfile 42s linear infinite}
.logos:hover .logos-pista{animation-play-state:paused}
.logo-caja img{filter:grayscale(1);opacity:.72;transition:filter .25s,opacity .25s}
.logo-caja:hover img{filter:none;opacity:1}
@keyframes logos-desfile{from{transform:translateX(0)}
to{transform:translateX(-50%)}
}
@media (prefers-reduced-motion: reduce){.logos{-webkit-mask-image:none;mask-image:none}
.logos-pista{animation:none;width:auto;flex-wrap:wrap;row-gap:16px}
.logo-dup{display:none !important}
}
@media (max-width: 700px){.logo-caja{width:150px !important;height:76px !important;margin-right:12px !important}
.logo-caja img{transform:scale(.8)}
}

/* Con el script: desfile por desplazamiento, arrastrable con el ratón y con el dedo */
.logos{-webkit-user-select:none;user-select:none}
.logos.logos-js{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain}
.logos.logos-js::-webkit-scrollbar{display:none}
.logos.logos-js .logos-pista{animation:none}
.logos.logos-js.arrastrando{cursor:grabbing}
.logos img{-webkit-user-drag:none;pointer-events:none}

/* ---------- Visores de piezas (Soplado, Aluminio y zamak) ---------- */
.vis{flex:1 1 420px;min-width:0}
.vis-fig{margin:0;display:flex;flex-direction:column}
.vis-stage{position:relative;aspect-ratio:16/9;background:#FFFFFF;overflow:hidden;touch-action:pan-y}
.vis-borde{border:1px solid #D3DCE1}
.vis-i{position:absolute;top:20px;left:20px;width:calc(100% - 40px);height:calc(100% - 40px);object-fit:contain;display:none}
.vis-caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:14px 0 0}
.vis-cap{display:none;flex-direction:column;gap:2px;min-width:0}
.vis-et{font-size:12px;font-weight:600;letter-spacing:.08em;color:#00729E}
.vis-ti{font-size:17px;font-weight:700}
.vis-ctl{display:none;align-items:center;gap:8px}
.vis-pos{margin-right:8px;font-size:15px;font-weight:600;color:#4E5D67;font-variant-numeric:tabular-nums}
.vis-nav{width:44px;height:44px;box-sizing:border-box;border:1px solid #C3CED5;background:#FFFFFF;display:flex;align-items:center;justify-content:center;cursor:pointer}
.vis-nav:hover{background:#EEF2F4}
.vis:has(.vis-r:nth-of-type(1):checked) .vi1{display:block}.vis:has(.vis-r:nth-of-type(1):checked) .vc1,.vis:has(.vis-r:nth-of-type(1):checked) .vk1{display:flex}
.vis:has(.vis-r:nth-of-type(2):checked) .vi2{display:block}.vis:has(.vis-r:nth-of-type(2):checked) .vc2,.vis:has(.vis-r:nth-of-type(2):checked) .vk2{display:flex}
.vis:has(.vis-r:nth-of-type(3):checked) .vi3{display:block}.vis:has(.vis-r:nth-of-type(3):checked) .vc3,.vis:has(.vis-r:nth-of-type(3):checked) .vk3{display:flex}
.vis:has(.vis-r:nth-of-type(4):checked) .vi4{display:block}.vis:has(.vis-r:nth-of-type(4):checked) .vc4,.vis:has(.vis-r:nth-of-type(4):checked) .vk4{display:flex}
.vis-stage:has(.vis-r:focus-visible){outline:3px solid #00A8DF;outline-offset:2px}
@media (max-width: 700px){.vis-i{top:12px;left:12px;width:calc(100% - 24px);height:calc(100% - 24px)}}

/* ---------- Proyectos: cerrado / abierto al pasar el ratón / pieza al hacer clic ---------- */
.proy{display:flex;flex-direction:column;gap:28px}
.proy-total{margin:-8px 0 0;font-size:15px;color:#4E5D67}
.proy-total span{display:none}
.proy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:24px}
@media (max-width: 700px){
  .proy-grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin:0 calc(-1 * var(--g));padding:0 var(--g) 12px;scroll-padding:0 var(--g)}
  .proy-grid .pcard{flex:0 0 82%;scroll-snap-align:start}
}
.pcard{position:relative;background:#FFFFFF;display:flex;flex-direction:column;transition:box-shadow .2s}
label.pcard{cursor:pointer}
.pbox{position:relative;display:block;aspect-ratio:4/3;background:#FFFFFF;overflow:hidden}
.pimg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;padding:18px;opacity:0;transition:opacity .35s ease}
.p-c{opacity:1}
.pbody{border-top:3px solid #174A66;padding:16px 20px 18px;display:flex;flex-direction:column;gap:4px;flex:1}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;color:#00729E}
.ptitle{font-size:18px;line-height:1.3;font-weight:700}
.pdesc{font-size:14px;color:#4E5D67}
.psteps{display:flex;gap:18px;margin-top:auto;padding-top:12px;border-top:1px solid #D3DCE1;font-size:13px;color:#7A8892}
.pdesc+.psteps{margin-top:12px}
.psteps span{padding-bottom:3px;border-bottom:3px solid transparent}
.psteps .st-x{color:#A9B8C1}
.psteps .st-c{color:#10212C;font-weight:600;border-bottom-color:#FEBB12}
.hint-tactil{display:none}
@media (hover: hover){
  .pcard:hover{box-shadow:0 10px 28px rgba(11,43,64,.12)}
  .pcard:hover .p-c{opacity:0}
  .pcard:hover .p-a{opacity:1}
  .pcard:hover .psteps .st-c{color:#7A8892;font-weight:400;border-bottom-color:transparent}
  .pcard:hover .psteps .st-a{color:#10212C;font-weight:600;border-bottom-color:#FEBB12}
}
@media (hover: none){.hint-raton{display:none}.hint-tactil{display:inline}}
.pk:checked~.pbox .pimg{opacity:0}
.pk:checked~.pbox .p-p{opacity:1}
.pk:checked~.pbody .psteps .st-c,.pk:checked~.pbody .psteps .st-a{color:#7A8892;font-weight:400;border-bottom-color:transparent}
.pk:checked~.pbody .psteps .st-p{color:#10212C;font-weight:600;border-bottom-color:#FEBB12}
.pk:focus-visible~.pbox{outline:3px solid #00A8DF;outline-offset:-3px}
/* Estado "abierto" en pantallas táctiles (lo pone el script si está disponible) */
.pcard.abierto .p-c{opacity:0}.pcard.abierto .p-a{opacity:1}
.pcard.abierto .psteps .st-c{color:#7A8892;font-weight:400;border-bottom-color:transparent}
.pcard.abierto .psteps .st-a{color:#10212C;font-weight:600;border-bottom-color:#FEBB12}
.proy:has(#fs-todos:checked) label[for="fs-todos"]{background:#174A66;border-color:#174A66;color:#fff}
.proy:has(#fs-todos:focus-visible) label[for="fs-todos"]{outline:3px solid #00A8DF;outline-offset:2px}
.proy:has(#fs-todos:checked) .proy-total .t-todos{display:inline}
.proy:has(#fs-automocion:checked) label[for="fs-automocion"]{background:#174A66;border-color:#174A66;color:#fff}
.proy:has(#fs-automocion:focus-visible) label[for="fs-automocion"]{outline:3px solid #00A8DF;outline-offset:2px}
.proy:has(#fs-automocion:checked) .proy-total .t-automocion{display:inline}
.proy:has(#fs-automocion:checked) .proy-grid .pcard:not(.s-automocion){display:none}
.proy:has(#fs-electronica:checked) label[for="fs-electronica"]{background:#174A66;border-color:#174A66;color:#fff}
.proy:has(#fs-electronica:focus-visible) label[for="fs-electronica"]{outline:3px solid #00A8DF;outline-offset:2px}
.proy:has(#fs-electronica:checked) .proy-total .t-electronica{display:inline}
.proy:has(#fs-electronica:checked) .proy-grid .pcard:not(.s-electronica){display:none}
.proy:has(#fs-linea-blanca:checked) label[for="fs-linea-blanca"]{background:#174A66;border-color:#174A66;color:#fff}
.proy:has(#fs-linea-blanca:focus-visible) label[for="fs-linea-blanca"]{outline:3px solid #00A8DF;outline-offset:2px}
.proy:has(#fs-linea-blanca:checked) .proy-total .t-linea-blanca{display:inline}
.proy:has(#fs-linea-blanca:checked) .proy-grid .pcard:not(.s-linea-blanca){display:none}
.proy:has(#fs-otros:checked) label[for="fs-otros"]{background:#174A66;border-color:#174A66;color:#fff}
.proy:has(#fs-otros:focus-visible) label[for="fs-otros"]{outline:3px solid #00A8DF;outline-offset:2px}
.proy:has(#fs-otros:checked) .proy-total .t-otros{display:inline}
.proy:has(#fs-otros:checked) .proy-grid .pcard:not(.s-otros){display:none}

/* ---------- Formulario ---------- */
.form-aviso{margin:0;padding:12px 16px;background:#FFFFFF;border-left:4px solid #FEBB12;font-size:15px}

/* ---------- WordPress ---------- */
.admin-bar .site-header{top:32px}
@media (max-width: 782px){.admin-bar .site-header{top:46px}}
@media (max-width: 600px){.admin-bar .site-header{top:0}}
/* Botón del plugin de accesibilidad: abajo a la izquierda (sin tapar logotipo ni títulos) y con el color de la marca */
html body #pojo-a11y-toolbar#pojo-a11y-toolbar{top:auto!important;bottom:16px!important}
html body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle{top:auto!important;bottom:0!important}
#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a{background-color:#174A66!important;box-shadow:0 0 0 2px #fff}
#pojo-a11y-toolbar .pojo-a11y-toolbar-overlay,#pojo-a11y-toolbar .pojo-a11y-toolbar-overlay ul.pojo-a11y-toolbar-items.pojo-a11y-links{border-color:#174A66!important}
.saltar{position:absolute;left:-9999px;top:0;z-index:100;background:#174A66;color:#fff;padding:10px 16px}
.saltar:focus{left:16px;top:16px}
/* Formulario de contacto (Contact Form 7) */
.palmer-form{display:flex;flex-direction:column;gap:20px}
.palmer-form .wpcf7-form-control-wrap{display:block}
.palmer-form .pf-campo:not([type=file]){width:100%;min-height:46px;padding:0 12px;border:1px solid #A9B8C1;border-radius:0;background:#FFFFFF;font-family:inherit;font-size:16px;color:#10212C}
.palmer-form textarea.pf-campo{padding:10px 12px;min-height:130px;resize:vertical}
.palmer-form input[type=file].pf-campo{width:100%;min-height:46px;padding:10px 12px;border:1px dashed #A9B8C1;background:#FFFFFF;font-family:inherit;font-size:15px;color:#10212C}
.palmer-form .wpcf7-acceptance .wpcf7-list-item{margin:0;display:flex;gap:10px;align-items:flex-start}
.palmer-form .wpcf7-acceptance input{width:20px;height:20px;margin:3px 0 0;flex-shrink:0}
.palmer-form .pf-enviar{align-self:flex-start;min-height:52px;padding:0 32px;background:#174A66;color:#FFFFFF;border:0;border-radius:0;font-family:inherit;font-size:16px;font-weight:600;cursor:pointer}
.palmer-form .pf-enviar:hover{background:#10212C}
.palmer-form .wpcf7-spinner{margin:0 0 0 12px}
.palmer-form .wpcf7-not-valid-tip{font-size:14px;color:#B3261E;margin-top:4px}
.palmer-form .wpcf7-response-output{margin:0 !important;padding:12px 16px !important;border:0 !important;border-left:4px solid #00A8DF !important;background:#FFFFFF;font-size:15px}
.palmer-form.invalid .wpcf7-response-output,.palmer-form.failed .wpcf7-response-output{border-left-color:#B3261E !important}
