/* ==========================================================================
   FRUSECMON · hoja de estilos del tema hijo
   Colores muestreados del logotipo original.
   Todo el CSS vive en este fichero fisico, nunca en linea.
   ========================================================================== */

:root{
  --frsc-rojo:#DA1119;      --frsc-rojo-osc:#B60D14;
  --frsc-naranja:#ED8421;   --frsc-naranja-osc:#C96A12;
  --frsc-carbon:#3A3238;    --frsc-carbon-2:#2E272C;
  --frsc-carbon-3:#524850;

  --frsc-harina:#F6F1E8;    --frsc-harina-2:#EDE6D9;
  --frsc-papel:#FFFFFF;

  --frsc-verde:#2E6B45;     --frsc-verde-cl:#E2EFE7;
  --frsc-rojo-cl:#FBE4E5;   --frsc-apagado:#8A7E84;

  --frsc-tinta:#241E22;     --frsc-tinta-2:#565059;  --frsc-tinta-3:#867E86;
  --frsc-linea:#DBD3C6;     --frsc-linea-cl:#EBE5DA;

  --frsc-claro:#F4EFF2;     --frsc-claro-2:#CFC5CC;  --frsc-claro-3:#A2969E;

  --frsc-sombra:0 1px 2px rgba(36,30,34,.06), 0 10px 30px -20px rgba(36,30,34,.4);
  --frsc-radio:4px;
  --frsc-ancho:1240px;
}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box}
body{
  margin:0;background:var(--frsc-harina);color:var(--frsc-tinta);
  font-family:"Public Sans",system-ui,-apple-system,sans-serif;
  font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--frsc-naranja);outline-offset:2px}
h1,h2,h3,h4{font-family:"Fraunces",Georgia,serif;letter-spacing:-.01em;margin:0;text-wrap:balance}
h1{font-size:clamp(28px,4.2vw,42px);line-height:1.08;font-weight:700}
h2{font-size:26px;font-weight:600}
h3{font-size:18px;font-weight:600}
p{margin:0 0 14px}
.frsc-cont{max-width:var(--frsc-ancho);margin:0 auto;padding:0 20px}
.frsc-lead{font-size:17.5px;color:var(--frsc-tinta-2);max-width:56ch}
.frsc-mono{font-family:"IBM Plex Mono",ui-monospace,monospace}
.frsc-oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- botones ---------- */
.frsc-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  border-radius:var(--frsc-radio);border:1px solid transparent;
  font-weight:600;font-size:14px;padding:9px 16px;line-height:1.3;
  text-decoration:none;cursor:pointer;white-space:nowrap;font-family:inherit;
}
.frsc-btn--pri{background:var(--frsc-rojo);color:#fff;border-color:var(--frsc-rojo)}
.frsc-btn--pri:hover{background:var(--frsc-rojo-osc);border-color:var(--frsc-rojo-osc);color:#fff}
.frsc-btn--sec{background:var(--frsc-papel);color:var(--frsc-tinta);border-color:var(--frsc-linea)}
.frsc-btn--sec:hover{background:var(--frsc-harina-2)}
.frsc-btn--fan{background:transparent;color:var(--frsc-claro);border-color:var(--frsc-carbon-3)}
.frsc-btn--fan:hover{background:#463C44;color:#fff}
.frsc-btn--peq{padding:6px 12px;font-size:13px}
.frsc-btn--ancho{width:100%}

/* ---------- cabecera ---------- */
.frsc-top{background:var(--frsc-carbon);color:var(--frsc-claro)}
.frsc-top__fino{
  border-bottom:1px solid var(--frsc-carbon-3);font-size:12.5px;
  display:flex;flex-wrap:wrap;gap:6px 22px;padding:7px 0;color:#B9AFB6;
}
.frsc-top__fino b{color:var(--frsc-claro);font-weight:500}
.frsc-top__fino .frsc-tel{margin-left:auto}
.frsc-top__main{display:flex;align-items:center;gap:24px;padding:14px 0}
.frsc-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.frsc-logo img{max-height:52px;width:auto;display:block}
.frsc-logo__txt{font-family:"Fraunces",Georgia,serif;font-weight:700;font-size:26px;color:#fff;line-height:1}
.frsc-logo__tag{
  font-family:"IBM Plex Mono",monospace;font-size:9.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--frsc-naranja);align-self:flex-end;padding-bottom:4px;
}
.frsc-buscador{flex:1;display:flex;max-width:560px}
.frsc-buscador input[type="search"]{
  flex:1;border:1px solid var(--frsc-carbon-3);background:#FFFDF9;color:var(--frsc-tinta);
  padding:10px 14px;border-radius:var(--frsc-radio) 0 0 var(--frsc-radio);
  font:inherit;min-width:0;
}
.frsc-buscador button{
  border:1px solid var(--frsc-rojo);background:var(--frsc-rojo);color:#fff;
  padding:10px 18px;border-radius:0 var(--frsc-radio) var(--frsc-radio) 0;
  cursor:pointer;font:inherit;font-weight:600;
}
.frsc-buscador button:hover{background:var(--frsc-rojo-osc)}
.frsc-acc{display:flex;gap:8px;align-items:center;margin-left:auto}

.frsc-menu{background:var(--frsc-carbon-2);border-top:1px solid var(--frsc-carbon-3)}
.frsc-menu ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.frsc-menu a{
  display:block;padding:11px 16px;text-decoration:none;color:var(--frsc-claro-2);
  font-size:13.5px;font-weight:500;border-bottom:2px solid transparent;
}
.frsc-menu a:hover,.frsc-menu .current-menu-item>a{color:#fff;border-bottom-color:var(--frsc-naranja)}

/* ---------- contenido ---------- */
.frsc-main{max-width:var(--frsc-ancho);margin:0 auto;padding:0 20px 80px;min-height:50vh}
.frsc-sec-t{
  display:flex;align-items:baseline;justify-content:space-between;gap:20px;
  margin:44px 0 16px;padding-bottom:10px;border-bottom:1px solid var(--frsc-linea);
}
.frsc-sec-t a{font-size:13.5px;color:var(--frsc-naranja-osc);font-weight:600;text-decoration:none}
.frsc-miga{font-size:13px;color:var(--frsc-tinta-3);padding:22px 0 0}
.frsc-miga a{color:var(--frsc-naranja-osc);text-decoration:none}

/* ---------- portada ---------- */
.frsc-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding:52px 0 44px}
.frsc-hero__ojo{
  font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--frsc-naranja-osc);margin-bottom:14px;display:block;
}
.frsc-hero__cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.frsc-hero__nota{font-size:13.5px;color:var(--frsc-tinta-3);margin-top:14px}
.frsc-hero__fig{background:var(--frsc-carbon);border-radius:5px;padding:26px;color:#EDE7EB;box-shadow:var(--frsc-sombra)}
.frsc-hero__fig h3{
  font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--frsc-claro-3);margin-bottom:14px;font-weight:500;
}
.frsc-hero__fig ol{list-style:none;margin:0;padding:0;counter-reset:paso}
.frsc-hero__fig li{
  counter-increment:paso;display:flex;gap:12px;padding:11px 0;
  border-bottom:1px solid var(--frsc-carbon-3);font-size:14px;
}
.frsc-hero__fig li:last-child{border-bottom:none}
.frsc-hero__fig li::before{
  content:"0" counter(paso);font-family:"IBM Plex Mono",monospace;
  color:var(--frsc-naranja);font-size:12px;padding-top:2px;flex-shrink:0;
}

.frsc-familias{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:12px}
.frsc-fam{
  background:var(--frsc-papel);border:1px solid var(--frsc-linea);border-radius:var(--frsc-radio);
  overflow:hidden;text-decoration:none;display:block;box-shadow:var(--frsc-sombra);
}
.frsc-fam:hover{border-color:var(--frsc-naranja)}
.frsc-fam__im{height:96px;display:block;background:var(--frsc-harina-2)}
.frsc-fam__im img{width:100%;height:100%;object-fit:cover;display:block}
.frsc-fam__tx{padding:12px 14px}
.frsc-fam__tx b{display:block;font-size:14.5px;font-weight:600;line-height:1.3}
.frsc-fam__tx span{font-size:12.5px;color:var(--frsc-tinta-3)}

.frsc-ventajas{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.frsc-ventaja{
  background:var(--frsc-papel);border:1px solid var(--frsc-linea);
  border-radius:var(--frsc-radio);padding:18px;box-shadow:var(--frsc-sombra);
}
.frsc-ventaja b{display:block;font-family:"Fraunces",serif;font-size:16px;margin-bottom:6px}
.frsc-ventaja span{font-size:14px;color:var(--frsc-tinta-2)}

/* ---------- catalogo ---------- */
.frsc-cat{display:grid;grid-template-columns:224px 1fr;gap:28px;padding-top:28px}
.frsc-filtros{font-size:14px}
.frsc-filtros h3{
  font-size:12px;font-family:"IBM Plex Mono",monospace;letter-spacing:.1em;
  text-transform:uppercase;color:var(--frsc-tinta-3);font-weight:500;margin:22px 0 9px;
}
.frsc-filtros h3:first-child{margin-top:0}
.frsc-filtros ul{list-style:none;margin:0;padding:0}
.frsc-filtros li{padding:4px 0}
.frsc-filtros a{text-decoration:none;display:flex;gap:8px}
.frsc-filtros a:hover{color:var(--frsc-naranja-osc)}
.frsc-filtros .count{margin-left:auto;color:var(--frsc-tinta-3);font-size:12.5px;font-variant-numeric:tabular-nums}
.frsc-filtros .current-cat>a{font-weight:700;color:var(--frsc-rojo)}

.frsc-barra{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;
  padding-bottom:14px;border-bottom:1px solid var(--frsc-linea);margin-bottom:18px;
}
.frsc-barra__t{font-size:19px;font-family:"Fraunces",serif;font-weight:600}
.frsc-barra__res{font-size:13.5px;color:var(--frsc-tinta-3)}
.frsc-vista{
  margin-left:auto;display:flex;border:1px solid var(--frsc-linea);
  border-radius:var(--frsc-radio);overflow:hidden;background:var(--frsc-papel);
}
.frsc-vista button{
  border:none;background:transparent;padding:7px 14px;cursor:pointer;
  font:inherit;font-size:13px;font-weight:600;color:var(--frsc-tinta-2);
}
.frsc-vista button+button{border-left:1px solid var(--frsc-linea)}
.frsc-vista button[aria-pressed="true"]{background:var(--frsc-carbon);color:var(--frsc-claro)}

/* rejilla de productos */
.frsc-productos{list-style:none;margin:0;padding:0;display:grid;gap:14px;
  grid-template-columns:repeat(auto-fill,minmax(216px,1fr));}
.frsc-prod{
  background:var(--frsc-papel);border:1px solid var(--frsc-linea);border-radius:var(--frsc-radio);
  overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--frsc-sombra);margin:0;
}
.frsc-prod__im{position:relative;display:block;background:var(--frsc-harina-2);aspect-ratio:4/3;overflow:hidden}
.frsc-prod__im img{width:100%;height:100%;object-fit:cover;display:block}
.frsc-prod__sinfoto{
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--frsc-tinta-3);
  background:linear-gradient(135deg,var(--frsc-harina-2) 0%,#E2D9C8 100%);
}
.frsc-prod__badge{
  position:absolute;top:8px;left:8px;background:var(--frsc-rojo);color:#fff;
  font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.08em;
  text-transform:uppercase;padding:3px 7px;border-radius:2px;
}
.frsc-prod__cu{padding:13px 14px;display:flex;flex-direction:column;flex:1}
.frsc-prod__ref{
  font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--frsc-tinta-3);
  letter-spacing:.04em;margin-bottom:4px;
}
.frsc-prod__nm{font-weight:600;font-size:14.5px;line-height:1.32;margin-bottom:3px}
.frsc-prod__nm a{text-decoration:none}
.frsc-prod__nm a:hover{color:var(--frsc-rojo)}
.frsc-prod__fm{font-size:12.5px;color:var(--frsc-tinta-3);margin-bottom:10px}
.frsc-prod__pie{margin-top:auto}

.frsc-precio{display:flex;align-items:baseline;gap:8px;margin-bottom:9px;flex-wrap:wrap}
.frsc-precio .amount,.frsc-precio ins .amount{
  font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;
  letter-spacing:-.02em;text-decoration:none;
}
.frsc-precio del{opacity:.6}
.frsc-precio del .amount{font-size:13px;font-weight:400}
.frsc-precio ins{text-decoration:none;background:transparent}
.frsc-precio__u{font-size:12.5px;color:var(--frsc-tinta-3)}

.frsc-precio-oculto{
  background:var(--frsc-harina-2);border:1px dashed var(--frsc-linea);
  border-radius:3px;padding:9px 11px;font-size:13px;color:var(--frsc-tinta-2);
  margin-bottom:9px;display:block;
}
.frsc-precio-oculto a{color:var(--frsc-naranja-osc);font-weight:600;text-decoration:none}

.frsc-stock{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;margin-bottom:9px}
.frsc-stock::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}
.frsc-stock--si{color:var(--frsc-verde)}
.frsc-stock--poco{color:var(--frsc-naranja-osc)}
.frsc-stock--no{color:var(--frsc-apagado)}

.frsc-anadir{display:flex;gap:7px;align-items:stretch}
.frsc-anadir .quantity input,.frsc-anadir input[type="number"]{
  width:64px;border:1px solid var(--frsc-linea);border-radius:var(--frsc-radio);
  padding:8px;font:inherit;text-align:center;font-variant-numeric:tabular-nums;
  background:var(--frsc-papel);color:var(--frsc-tinta);
}
.frsc-anadir .frsc-btn{flex:1}

/* vista de lista */
[data-frsc-vista="lista"] .frsc-productos{display:block;background:var(--frsc-papel);
  border:1px solid var(--frsc-linea);border-radius:var(--frsc-radio);overflow:hidden;box-shadow:var(--frsc-sombra)}
[data-frsc-vista="lista"] .frsc-prod{
  display:grid;grid-template-columns:56px 90px 1fr 150px 130px auto;
  gap:14px;align-items:center;border:none;border-bottom:1px solid var(--frsc-linea-cl);
  border-radius:0;box-shadow:none;padding:10px 14px;
}
[data-frsc-vista="lista"] .frsc-prod:last-child{border-bottom:none}
[data-frsc-vista="lista"] .frsc-prod:hover{background:#FCFAF6}
[data-frsc-vista="lista"] .frsc-prod__im{aspect-ratio:1;border-radius:3px}
[data-frsc-vista="lista"] .frsc-prod__badge{display:none}
[data-frsc-vista="lista"] .frsc-prod__cu{display:contents}
[data-frsc-vista="lista"] .frsc-prod__ref{margin:0;align-self:center}
[data-frsc-vista="lista"] .frsc-prod__nm{margin:0}
[data-frsc-vista="lista"] .frsc-prod__fm{display:none}
[data-frsc-vista="lista"] .frsc-prod__pie{display:contents}
[data-frsc-vista="lista"] .frsc-stock{margin:0}
[data-frsc-vista="lista"] .frsc-precio,
[data-frsc-vista="lista"] .frsc-precio-oculto{margin:0;font-size:13px}
[data-frsc-vista="lista"] .frsc-precio .amount{font-size:16px}
[data-frsc-vista="lista"] .frsc-anadir{justify-self:end}
@media (max-width:900px){
  [data-frsc-vista="lista"] .frsc-prod{grid-template-columns:56px 1fr;row-gap:6px}
  [data-frsc-vista="lista"] .frsc-prod__ref{display:none}
}

/* ---------- ficha ---------- */
.frsc-ficha{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:26px;align-items:start}
.frsc-ficha__im{border:1px solid var(--frsc-linea);border-radius:5px;overflow:hidden;background:var(--frsc-papel)}
.frsc-ficha__im img{width:100%;display:block}
.frsc-ficha__im .frsc-prod__sinfoto{min-height:420px}
.frsc-ficha h1{font-size:31px;margin-bottom:8px}
.frsc-compra{
  background:var(--frsc-papel);border:1px solid var(--frsc-linea);
  border-radius:var(--frsc-radio);padding:20px;box-shadow:var(--frsc-sombra);margin:20px 0;
}
.frsc-compra .frsc-precio .amount{font-size:30px}
.frsc-datos{border:1px solid var(--frsc-linea);border-radius:var(--frsc-radio);background:var(--frsc-papel);margin:20px 0}
.frsc-datos__f{display:flex;padding:10px 15px;border-bottom:1px solid var(--frsc-linea-cl);font-size:14px;gap:16px}
.frsc-datos__f:last-child{border-bottom:none}
.frsc-datos dt{width:170px;flex-shrink:0;color:var(--frsc-tinta-3);margin:0}
.frsc-datos dd{margin:0;font-weight:500}

/* ---------- avisos ---------- */
.frsc-aviso{
  background:var(--frsc-verde-cl);border-left:3px solid var(--frsc-verde);
  border-radius:3px;padding:13px 15px;font-size:13.5px;color:#1F4630;margin:16px 0;
}
.frsc-aviso--oj{background:#FBF0E2;border-left-color:var(--frsc-naranja);color:#6D3F17}
.frsc-aviso--al{background:var(--frsc-rojo-cl);border-left-color:var(--frsc-rojo);color:#7A0F14}

/* ---------- pie ---------- */
.frsc-pie{background:var(--frsc-carbon);color:#B9AFB6;margin-top:60px;padding:44px 0 26px;font-size:14px}
.frsc-pie__g{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
.frsc-pie h4{
  font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--frsc-claro-3);margin:0 0 12px;font-weight:500;
}
.frsc-pie ul{list-style:none;margin:0;padding:0}
.frsc-pie li{margin-bottom:7px}
.frsc-pie a{color:#DED5DB;text-decoration:none}
.frsc-pie a:hover{color:#fff;text-decoration:underline}
.frsc-pie img{max-height:46px;width:auto;margin-bottom:12px}
.frsc-pie__fin{
  border-top:1px solid var(--frsc-carbon-3);margin-top:34px;padding-top:18px;
  font-size:12.5px;color:var(--frsc-claro-3);display:flex;flex-wrap:wrap;gap:8px 20px;
}

/* ---------- WooCommerce: ajustes generales ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-radius:var(--frsc-radio);border:1px solid var(--frsc-linea);
  border-left:3px solid var(--frsc-verde);background:var(--frsc-verde-cl);
  padding:13px 15px;font-size:14px;list-style:none;margin:0 0 18px;
}
.woocommerce-info{border-left-color:var(--frsc-naranja);background:#FBF0E2}
.woocommerce-error{border-left-color:var(--frsc-rojo);background:var(--frsc-rojo-cl)}
.woocommerce-message .button,.woocommerce-info .button{float:right}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce table.shop_table{font:inherit}
.woocommerce table.shop_table{
  border:1px solid var(--frsc-linea);border-radius:var(--frsc-radio);
  background:var(--frsc-papel);border-collapse:collapse;width:100%;
}
.woocommerce table.shop_table th{
  font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--frsc-tinta-3);font-weight:500;text-align:left;
  padding:10px 14px;background:var(--frsc-harina-2);border-bottom:1px solid var(--frsc-linea);
}
.woocommerce table.shop_table td{padding:11px 14px;border-bottom:1px solid var(--frsc-linea-cl)}
.woocommerce .button,.woocommerce input[type="submit"]{
  background:var(--frsc-rojo)!important;color:#fff!important;border:1px solid var(--frsc-rojo)!important;
  border-radius:var(--frsc-radio)!important;font-weight:600!important;padding:9px 16px!important;
  font-family:inherit!important;font-size:14px!important;
}
.woocommerce .button:hover,.woocommerce input[type="submit"]:hover{background:var(--frsc-rojo-osc)!important}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--frsc-linea-cl)}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:10px 4px;text-decoration:none}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{font-weight:700;color:var(--frsc-rojo)}
.woocommerce-form-login,.woocommerce-form-register{
  background:var(--frsc-papel);border:1px solid var(--frsc-linea);
  border-radius:5px;padding:26px;box-shadow:var(--frsc-sombra);
}

/* ---------- paginacion ---------- */
.woocommerce-pagination ul{list-style:none;display:flex;gap:6px;padding:0;margin:26px 0 0}
.woocommerce-pagination a,.woocommerce-pagination span{
  display:block;padding:7px 13px;border:1px solid var(--frsc-linea);
  border-radius:var(--frsc-radio);background:var(--frsc-papel);text-decoration:none;font-size:14px;
}
.woocommerce-pagination .current{background:var(--frsc-carbon);color:var(--frsc-claro);border-color:var(--frsc-carbon)}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .frsc-hero,.frsc-ficha{grid-template-columns:1fr;gap:28px}
  .frsc-cat{grid-template-columns:1fr}
  .frsc-pie__g{grid-template-columns:1fr 1fr}
  .frsc-filtros{border:1px solid var(--frsc-linea);border-radius:var(--frsc-radio);
    padding:16px;background:var(--frsc-papel)}
}
@media (max-width:620px){
  .frsc-top__main{flex-wrap:wrap;gap:12px}
  .frsc-buscador{order:3;max-width:none;flex-basis:100%}
  .frsc-acc{margin-left:0}
  .frsc-pie__g{grid-template-columns:1fr}
  .frsc-menu ul{overflow-x:auto;flex-wrap:nowrap}
  .frsc-menu a{white-space:nowrap}
}
@media print{.frsc-top,.frsc-menu,.frsc-pie{display:none}}
