/*
Theme Name: MetalForma V3.1
Theme URI: https://artesaniametalforma.es/
Description: Tema hijo de Kadence para Artesanía MetalForma. V2 refinada: portfolio, logo real, home responsive y conversión.
Author: MetalForma
Template: kadence
Version: 3.1.0
Text Domain: metalforma
*/

:root{
 --mf-charcoal:#111111;--mf-charcoal-2:#181716;--mf-gray:#3D3A37;--mf-muted:#746E68;
 --mf-cream:#EEE9E5;--mf-cream-2:#F7F4F1;--mf-white:#fff;
 --mf-copper:#9E6440;--mf-copper-dark:#7D4E32;--mf-copper-soft:#C29A7A;
 --mf-max:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--mf-cream);color:var(--mf-charcoal);font-family:"Montserrat",system-ui,sans-serif;font-size:17px;line-height:1.7}
body.admin-bar .mf-site-header{top:32px}
img{max-width:100%;display:block;height:auto}
a{text-decoration:none;color:inherit}
h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",Georgia,serif;font-weight:600;line-height:1.06;margin:0 0 .6em}
h1{font-size:clamp(3.2rem,5.8vw,6.15rem)}
h2{font-size:clamp(2.35rem,3.65vw,4rem)}
h3{font-size:clamp(1.45rem,2vw,2rem)}
p{margin:0 0 1.25rem}
.mf-wrap{width:min(calc(100% - 48px),var(--mf-max));margin-inline:auto}
.mf-section{padding:104px 0}
.mf-eyebrow{color:var(--mf-copper);font-size:.73rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;margin-bottom:17px}
.mf-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:49px;padding:13px 24px;border:1px solid transparent;border-radius:0;font-size:.76rem;font-weight:700;letter-spacing:.105em;text-transform:uppercase;transition:.22s ease}
.mf-btn-primary{background:var(--mf-copper);border-color:var(--mf-copper);color:#fff}
.mf-btn-primary:hover{background:var(--mf-copper-dark);border-color:var(--mf-copper-dark);color:#fff;transform:translateY(-1px)}
.mf-btn-outline{background:transparent;border-color:rgba(255,255,255,.72);color:#fff}
.mf-btn-outline:hover{background:var(--mf-copper);border-color:var(--mf-copper);color:#fff}
.mf-skip{position:absolute;left:-9999px}.mf-skip:focus{left:16px;top:16px;z-index:99999;background:#fff;color:#111;padding:10px 14px}

/* Header */
.mf-site-header{position:sticky;top:0;z-index:999;background:rgba(14,14,14,.97);color:#fff;border-bottom:1px solid rgba(255,255,255,.075);backdrop-filter:blur(10px)}
.mf-header-inner{min-height:82px;display:flex;align-items:center;gap:24px}
.mf-brand{width:145px;min-width:145px;height:56px;overflow:hidden;position:relative;display:block}
.mf-brand img{width:145px;height:auto;position:absolute;top:0;left:0}
.mf-nav{margin-left:auto}
.mf-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:25px}
.mf-nav li{position:relative}
.mf-nav a{font-size:11px;font-weight:700;letter-spacing:.065em;text-transform:uppercase;color:#fff;padding:30px 0;display:block}
.mf-nav a:hover,.mf-nav .current-menu-item>a,.mf-nav .current-menu-ancestor>a{color:var(--mf-copper-soft)}
.mf-nav .menu-item-has-children>a:after{content:"⌄";color:var(--mf-copper-soft);margin-left:6px}
.mf-nav .sub-menu{display:none;position:absolute;top:100%;left:-20px;min-width:245px;background:var(--mf-charcoal-2);padding:12px 20px 16px;box-shadow:0 18px 45px rgba(0,0,0,.33);border-top:2px solid var(--mf-copper)}
.mf-nav li:hover>.sub-menu{display:block}
.mf-nav .sub-menu a{font-size:10.5px;padding:8px 0}
.mf-header-cta{margin-left:2px}
.mf-menu-toggle{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:28px;padding:8px;cursor:pointer}

/* Hero */
.mf-hero{min-height:790px;position:relative;display:flex;align-items:center;color:#fff;background-size:cover;background-position:center 48%;overflow:hidden}
.mf-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.92) 0%,rgba(7,7,7,.78) 42%,rgba(7,7,7,.31) 72%,rgba(7,7,7,.17) 100%)}
.mf-hero:after{content:"";position:absolute;left:0;bottom:0;width:36%;height:3px;background:var(--mf-copper)}
.mf-hero-content{position:relative;z-index:1;max-width:855px;padding:120px 0}
.mf-hero h1{color:#fff;max-width:830px;text-shadow:0 2px 30px rgba(0,0,0,.22);letter-spacing:-.02em}
.mf-hero p{max-width:730px;font-size:1.08rem;color:rgba(255,255,255,.86);line-height:1.7}
.mf-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:31px}

/* Trust strip */
.mf-features{background:var(--mf-charcoal-2);color:#fff}
.mf-features-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.mf-feature{min-height:150px;padding:31px 29px;border-right:1px solid rgba(255,255,255,.10);display:grid;grid-template-columns:43px 1fr;column-gap:16px;align-content:center}
.mf-feature:first-child{border-left:1px solid rgba(255,255,255,.10)}
.mf-feature-icon{width:39px;height:39px;border:1px solid rgba(194,154,122,.55);display:grid;place-items:center;color:var(--mf-copper-soft)}
.mf-feature-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.65}
.mf-feature strong{display:block;font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;margin:0 0 5px}
.mf-feature p{font-size:.79rem;line-height:1.48;color:rgba(255,255,255,.62);margin:0}

/* Heading */
.mf-section-heading{text-align:center;max-width:830px;margin:0 auto 52px}
.mf-section-heading p{color:var(--mf-muted);max-width:710px;margin-inline:auto}

/* Services 4 + 3 */
.mf-services{background:var(--mf-cream)}
.mf-service-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:22px}
.mf-card{background:#fff;box-shadow:0 8px 28px rgba(32,25,20,.045);border:1px solid rgba(17,17,17,.055);min-width:0}
.mf-card:nth-child(-n+4){grid-column:span 3}
.mf-card:nth-child(n+5){grid-column:span 4}
.mf-card-media{aspect-ratio:4/3;overflow:hidden;background:#ddd}
.mf-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .5s ease}
.mf-card:hover .mf-card-media img{transform:scale(1.045);filter:contrast(1.03)}
.mf-card-body{padding:24px 24px 27px}
.mf-card-body h3{font-size:1.38rem;margin-bottom:9px}
.mf-card-body p{font-size:.87rem;color:var(--mf-muted);line-height:1.55;min-height:65px}
.mf-link{color:var(--mf-copper);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mf-link:hover{color:var(--mf-copper-dark)}

/* Projects */
.mf-projects{background:var(--mf-charcoal);color:#fff;overflow:hidden}
.mf-projects h2{color:#fff}
.mf-projects .mf-eyebrow{color:var(--mf-copper-soft)}
.mf-projects-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:40px}
.mf-project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.mf-project{background:#171717;border:1px solid rgba(255,255,255,.09);transition:.22s ease}
.mf-project:hover{transform:translateY(-3px);border-color:rgba(194,154,122,.38)}
.mf-project-media{aspect-ratio:4/3;overflow:hidden}
.mf-project img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.mf-project:hover img{transform:scale(1.035)}
.mf-project-body{padding:22px}
.mf-project-title{font-family:"Playfair Display",serif;font-size:1.32rem;color:#fff}
.mf-project-meta{color:var(--mf-copper-soft);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin-top:6px}
.mf-project p{font-size:.82rem;line-height:1.55;color:rgba(255,255,255,.62);margin:11px 0 0}

/* Bespoke */
.mf-idea{background:var(--mf-cream-2)}
.mf-idea-grid{display:grid;grid-template-columns:.93fr 1.07fr;align-items:stretch}
.mf-idea-copy{padding:92px 80px 92px 0;align-self:center}
.mf-idea-copy h3{font-size:clamp(1.55rem,2.1vw,2.25rem);color:var(--mf-copper-dark)}
.mf-idea-copy p{color:var(--mf-muted);max-width:620px}
.mf-idea-visual{min-height:555px;background-size:cover;background-position:center;position:relative}
.mf-idea-visual:after{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid rgba(17,17,17,.16);pointer-events:none}

/* Process */
.mf-process{background:var(--mf-cream)}
.mf-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:45px}
.mf-step{background:var(--mf-cream-2);border:1px solid rgba(17,17,17,.07);position:relative}
.mf-step-media{height:165px;overflow:hidden}
.mf-step-media img{width:100%;height:100%;object-fit:cover}
.mf-step-body{padding:24px 22px 26px}
.mf-step-num{position:absolute;top:143px;left:22px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--mf-charcoal);color:#fff;font-family:"Playfair Display",serif;border:3px solid var(--mf-cream-2)}
.mf-step h3{font-family:"Montserrat",sans-serif;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;margin:16px 0 9px}
.mf-step p{color:var(--mf-muted);font-size:.84rem;line-height:1.55;margin:0}

/* CTA */
.mf-cta{position:relative;color:#fff;background-size:cover;background-position:center}
.mf-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.94),rgba(8,8,8,.78) 55%,rgba(8,8,8,.70))}
.mf-cta-inner{position:relative;z-index:1;padding:100px 0}
.mf-cta h2{color:#fff;max-width:740px}
.mf-cta .mf-sub{font-family:"Playfair Display",serif;color:var(--mf-copper-soft);font-size:clamp(1.35rem,2vw,1.9rem)}
.mf-floating-wa{position:fixed;right:22px;bottom:22px;z-index:998;width:54px;height:54px;border-radius:50%;background:var(--mf-copper);color:#fff;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.25);font-weight:800;font-size:12px}
.mf-floating-wa:hover{background:var(--mf-copper-dark);color:#fff}

/* Generic */
.mf-page-hero{background:var(--mf-charcoal);color:#fff;padding:100px 0 66px}
.mf-page-hero h1{color:#fff;font-size:clamp(2.7rem,4.5vw,4.9rem)}
.mf-page-content{background:var(--mf-cream-2);padding:78px 0;min-height:420px}
.mf-page-content .entry-content{max-width:900px}
.mf-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}
.mf-gallery img{width:100%;height:310px;object-fit:cover}

/* Footer */
.mf-footer{background:#0b0b0b;color:#fff;padding:73px 0 25px;border-top:1px solid rgba(255,255,255,.05)}
.mf-footer-grid{display:grid;grid-template-columns:1.5fr .82fr 1fr 1.15fr;gap:48px}
.mf-footer-logo{width:172px;height:66px;overflow:hidden;position:relative;margin-bottom:18px}
.mf-footer-logo img{position:absolute;width:172px;top:0;left:0}
.mf-footer h4{font-family:"Montserrat",sans-serif;font-size:.71rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mf-copper-soft);margin-bottom:17px}
.mf-footer p,.mf-footer li,.mf-footer a{font-size:.82rem;line-height:1.75;color:rgba(255,255,255,.62)}
.mf-footer ul{list-style:none;padding:0;margin:0}
.mf-footer a:hover{color:#fff}
.mf-footer-bottom{margin-top:49px;padding-top:21px;border-top:1px solid rgba(255,255,255,.09);font-size:.72rem;color:rgba(255,255,255,.42);display:flex;justify-content:space-between;gap:20px}

/* Responsive */
@media(max-width:1120px){
 .mf-nav ul{gap:15px}.mf-nav a{font-size:10px}
 .mf-project-grid{grid-template-columns:repeat(2,1fr)}
 .mf-card:nth-child(-n+4),.mf-card:nth-child(n+5){grid-column:span 6}
 .mf-card:last-child{grid-column:4/span 6}
}
@media(max-width:900px){
 body.admin-bar .mf-site-header{top:46px}
 .mf-menu-toggle{display:block}.mf-header-cta{display:none}
 .mf-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--mf-charcoal-2);padding:12px 24px 22px;border-top:1px solid rgba(255,255,255,.08)}
 .mf-nav.is-open{display:block}.mf-nav ul{display:block}.mf-nav a{padding:10px 0;font-size:11px}
 .mf-nav .sub-menu{display:block;position:static;min-width:0;background:transparent;box-shadow:none;border:0;padding:0 0 4px 14px}
 .mf-features-grid{grid-template-columns:repeat(2,1fr)}
 .mf-feature:nth-child(3){border-left:1px solid rgba(255,255,255,.1)}
 .mf-idea-grid{grid-template-columns:1fr}.mf-idea-copy{padding:76px 0 58px}
 .mf-process-grid{grid-template-columns:repeat(2,1fr)}
 .mf-footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
 body{font-size:16px}.mf-wrap{width:min(calc(100% - 28px),var(--mf-max))}.mf-section{padding:72px 0}
 .mf-header-inner{min-height:70px}.mf-brand{width:125px;min-width:125px;height:49px}.mf-brand img{width:125px}
 .mf-hero{min-height:720px;background-position:61% center}.mf-hero:before{background:rgba(7,7,7,.72)}.mf-hero-content{padding:92px 0}
 .mf-hero h1{font-size:clamp(3rem,13vw,4.6rem)}
 .mf-actions{flex-direction:column;align-items:stretch}.mf-btn{width:100%}
 .mf-features-grid,.mf-project-grid,.mf-process-grid,.mf-footer-grid,.mf-gallery{grid-template-columns:1fr}
 .mf-feature,.mf-feature:first-child,.mf-feature:nth-child(3){border-left:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}
 .mf-service-grid{display:grid;grid-template-columns:1fr}
 .mf-card:nth-child(-n+4),.mf-card:nth-child(n+5),.mf-card:last-child{grid-column:auto}
 .mf-projects-head{display:block}.mf-projects-head .mf-btn{margin-top:20px}
 .mf-idea-visual{min-height:385px}.mf-idea-visual:after{display:none}
 .mf-step-media{height:190px}.mf-step-num{top:168px}
 .mf-gallery img{height:240px}
 .mf-footer-bottom{display:block}.mf-floating-wa{width:50px;height:50px;right:14px;bottom:14px}
}


/* ===== MetalForma V2.1 — refinamiento tras revisión en servidor ===== */

/* Logo: conserva el logotipo real pero controla mejor su encaje en la barra */
.mf-brand{
  width:136px;
  min-width:136px;
  height:52px;
}
.mf-brand img{
  width:136px;
  top:-1px;
}

/* Cabecera ligeramente más limpia */
.mf-header-inner{min-height:76px}
.mf-nav a{padding:27px 0}
.mf-header-cta{min-height:43px;padding:10px 19px}

/* Hero: más cercano a la maqueta aprobada */
.mf-hero{
  min-height:815px;
  background-position:center 46%;
}
.mf-hero:before{
  background:linear-gradient(
    90deg,
    rgba(7,7,7,.94) 0%,
    rgba(7,7,7,.82) 39%,
    rgba(7,7,7,.43) 64%,
    rgba(7,7,7,.18) 100%
  );
}
.mf-hero-content{
  max-width:930px;
  padding:128px 0 135px;
}
.mf-hero h1{
  max-width:900px;
  font-size:clamp(3.7rem,6.1vw,6.5rem);
  line-height:1.01;
}
.mf-hero p{
  max-width:735px;
  font-size:1.08rem;
}
.mf-hero .mf-eyebrow{color:var(--mf-copper-soft)}

/* Banda de valores: iconos y texto algo mayores */
.mf-feature{min-height:158px}
.mf-feature-icon{width:42px;height:42px}
.mf-feature strong{font-size:.77rem}
.mf-feature p{font-size:.81rem}

/* Servicios: consistencia vertical */
.mf-card{display:flex;flex-direction:column}
.mf-card-body{display:flex;flex-direction:column;flex:1}
.mf-card-body p{min-height:72px}
.mf-card-body .mf-link{margin-top:auto}

/* Proyectos: fotografía ligeramente más protagonista */
.mf-project-media{aspect-ratio:1.28/1}
.mf-project-body{min-height:154px}
.mf-project-title{font-size:1.38rem}

/* Bloque a medida: mayor contraste y jerarquía */
.mf-idea-copy{padding-top:102px;padding-bottom:102px}
.mf-idea-copy h2{margin-bottom:.28em}
.mf-idea-copy h3{margin-bottom:22px}
.mf-idea-visual{min-height:590px}

/* Proceso: en la V2 renderizada quedaba visualmente pequeño */
.mf-process-grid{gap:24px}
.mf-step-media{height:205px}
.mf-step-num{top:182px}
.mf-step-body{padding:30px 24px 30px}
.mf-step h3{font-size:.86rem}
.mf-step p{font-size:.87rem}

/* CTA final */
.mf-cta-inner{padding:112px 0}
.mf-cta h2{font-size:clamp(2.7rem,4vw,4.5rem)}
.mf-cta .mf-sub{margin-top:-4px}

/* Footer */
.mf-footer-logo{width:155px;height:59px}
.mf-footer-logo img{width:155px}
.mf-footer-grid{align-items:start}

@media(max-width:900px){
  .mf-hero{min-height:750px}
  .mf-hero-content{padding:105px 0}
  .mf-step-media{height:190px}
  .mf-step-num{top:167px}
}

@media(max-width:620px){
  .mf-brand{width:116px;min-width:116px;height:46px}
  .mf-brand img{width:116px}
  .mf-hero{min-height:735px;background-position:60% center}
  .mf-hero h1{font-size:clamp(3rem,13.5vw,4.8rem)}
  .mf-card-body p{min-height:0}
  .mf-project-body{min-height:0}
  .mf-step-media{height:205px}
  .mf-step-num{top:182px}
}


/* ===== V2.2 — Proyecto Homenaje a la Enfermería Leonesa ===== */
.mf-landmark{
  background:var(--mf-charcoal-2);
  color:#fff;
  border-top:1px solid rgba(255,255,255,.07);
}
.mf-landmark-grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  min-height:590px;
  align-items:stretch;
}
.mf-landmark-media{
  position:relative;
  min-height:590px;
  overflow:hidden;
}
.mf-landmark-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.mf-landmark-media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.05),rgba(0,0,0,.22));
}
.mf-landmark-copy{
  padding:78px 0 78px 70px;
  align-self:center;
  max-width:610px;
}
.mf-landmark-copy .mf-eyebrow{color:var(--mf-copper-soft)}
.mf-landmark-copy h2{color:#fff}
.mf-landmark-copy h3{
  color:var(--mf-copper-soft);
  font-size:1.35rem;
  margin-top:-6px;
  margin-bottom:24px;
}
.mf-landmark-copy p{
  color:rgba(255,255,255,.72);
  font-size:.94rem;
}
.mf-landmark-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:24px 0 30px;
}
.mf-landmark-meta span{
  border:1px solid rgba(255,255,255,.18);
  padding:7px 10px;
  color:rgba(255,255,255,.73);
  font-size:.68rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mf-project-featured{
  outline:1px solid rgba(194,154,122,.44);
  outline-offset:-1px;
}
.mf-project-featured .mf-project-meta{
  color:#fff;
}
@media(max-width:900px){
  .mf-landmark-grid{grid-template-columns:1fr}
  .mf-landmark-media{min-height:470px}
  .mf-landmark-copy{padding:65px 0;max-width:none}
}
@media(max-width:620px){
  .mf-landmark-media{min-height:360px}
  .mf-landmark-copy{padding:55px 0}
}


/* ===== MetalForma V2.3 — acabado de Home + páginas interiores ===== */

/* HOME: proyecto emblemático más visual */
.mf-landmark-grid{
  grid-template-columns:1.22fr .78fr;
  min-height:620px;
}
.mf-landmark-media{
  min-height:620px;
}
.mf-landmark-copy{
  padding:72px 0 72px 58px;
}
.mf-landmark-copy h2{
  font-size:clamp(2.5rem,3.8vw,4.25rem);
}
.mf-landmark-copy p{
  font-size:.91rem;
}
.mf-landmark-credit{
  margin:20px 0 26px;
  padding-left:17px;
  border-left:2px solid var(--mf-copper);
  color:rgba(255,255,255,.82);
  font-size:.85rem;
  line-height:1.6;
}
.mf-landmark-credit strong{color:#fff}
.mf-project-featured .mf-project-title{
  font-size:1.25rem;
}

/* PÁGINAS INTERIORES */
.mf-inner-hero{
  position:relative;
  min-height:440px;
  display:flex;
  align-items:end;
  background-size:cover;
  background-position:center;
  color:#fff;
}
.mf-inner-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(8,8,8,.9),rgba(8,8,8,.5) 60%,rgba(8,8,8,.2));
}
.mf-inner-hero-content{
  position:relative;
  z-index:1;
  padding:105px 0 70px;
  max-width:820px;
}
.mf-inner-hero h1{color:#fff}
.mf-inner-hero p{
  color:rgba(255,255,255,.82);
  max-width:720px;
  font-size:1rem;
}

.mf-inner-section{
  padding:82px 0;
  background:var(--mf-cream-2);
}
.mf-inner-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:70px;
  align-items:start;
}
.mf-inner-copy h2{
  font-size:clamp(2rem,3vw,3.25rem);
}
.mf-inner-copy p{
  color:var(--mf-muted);
}
.mf-inner-aside{
  background:#fff;
  padding:30px;
  border:1px solid rgba(17,17,17,.08);
}
.mf-inner-aside h3{
  font-size:1.45rem;
}
.mf-checklist{
  list-style:none;
  padding:0;
  margin:22px 0 0;
}
.mf-checklist li{
  position:relative;
  padding-left:27px;
  margin:10px 0;
  color:var(--mf-gray);
  font-size:.9rem;
}
.mf-checklist li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--mf-copper);
  font-weight:800;
}

.mf-inner-gallery{
  padding:0 0 88px;
  background:var(--mf-cream-2);
}
.mf-inner-gallery-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:18px;
}
.mf-inner-gallery-grid figure{
  margin:0;
  overflow:hidden;
  background:#ddd;
  min-height:300px;
}
.mf-inner-gallery-grid figure:first-child{
  grid-row:span 2;
  min-height:618px;
}
.mf-inner-gallery-grid img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.mf-inner-gallery-grid figure:hover img{transform:scale(1.03)}

.mf-related{
  padding:78px 0;
  background:var(--mf-charcoal);
  color:#fff;
}
.mf-related h2{color:#fff}
.mf-related-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:34px;
}
.mf-related-card{
  border:1px solid rgba(255,255,255,.09);
  background:#171717;
}
.mf-related-card img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}
.mf-related-card div{padding:19px}
.mf-related-card h3{
  color:#fff;
  font-size:1.2rem;
  margin-bottom:4px;
}
.mf-related-card span{
  color:var(--mf-copper-soft);
  font-size:.7rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* PROYECTO ENFERMERÍA */
.mf-project-detail{
  padding:84px 0;
  background:var(--mf-cream-2);
}
.mf-project-detail-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:60px;
  align-items:start;
}
.mf-project-detail-image img{
  width:100%;
  height:auto;
}
.mf-project-facts{
  background:#fff;
  padding:30px;
  border:1px solid rgba(17,17,17,.08);
}
.mf-project-facts dl{
  margin:0;
}
.mf-project-facts dt{
  margin-top:16px;
  color:var(--mf-copper);
  font-size:.7rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
}
.mf-project-facts dd{
  margin:5px 0 0;
  color:var(--mf-gray);
}
.mf-project-story{
  max-width:860px;
  margin-top:58px;
}
.mf-project-story h2{font-size:2.65rem}
.mf-project-story p{color:var(--mf-muted)}

@media(max-width:900px){
  .mf-landmark-grid,
  .mf-inner-grid,
  .mf-project-detail-grid{
    grid-template-columns:1fr;
  }
  .mf-landmark-copy{padding:60px 0}
  .mf-inner-gallery-grid{
    grid-template-columns:1fr 1fr;
  }
  .mf-inner-gallery-grid figure:first-child{
    grid-column:1/-1;
    grid-row:auto;
    min-height:430px;
  }
  .mf-related-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:620px){
  .mf-inner-hero{min-height:390px}
  .mf-inner-hero-content{padding:85px 0 52px}
  .mf-inner-gallery-grid,
  .mf-related-grid{
    grid-template-columns:1fr;
  }
  .mf-inner-gallery-grid figure,
  .mf-inner-gallery-grid figure:first-child{
    min-height:280px;
  }
}


/* ===== MetalForma V2.4 — interiores + SEO local ===== */

/* Migas de pan */
.mf-breadcrumbs{
  font-size:.72rem;
  letter-spacing:.045em;
  color:rgba(255,255,255,.66);
  margin-bottom:18px;
}
.mf-breadcrumbs a{color:rgba(255,255,255,.78)}
.mf-breadcrumbs a:hover{color:var(--mf-copper-soft)}
.mf-breadcrumbs span{margin:0 7px;color:rgba(255,255,255,.35)}

/* Bloque SEO local */
.mf-local{
  background:var(--mf-cream);
  padding:82px 0;
}
.mf-local-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
}
.mf-local-copy h2{font-size:clamp(2.1rem,3.2vw,3.45rem)}
.mf-local-copy p{color:var(--mf-muted)}
.mf-local-panel{
  background:var(--mf-charcoal);
  color:#fff;
  padding:42px;
}
.mf-local-panel h3{color:#fff;font-size:1.65rem}
.mf-local-panel p{color:rgba(255,255,255,.7);font-size:.9rem}
.mf-area-tags{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:22px;
}
.mf-area-tags span{
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.17);
  color:rgba(255,255,255,.76);
  font-size:.69rem;
  letter-spacing:.07em;
  text-transform:uppercase;
}

/* Preguntas frecuentes visibles para usuario */
.mf-faq{
  padding:84px 0;
  background:var(--mf-cream-2);
}
.mf-faq-grid{
  display:grid;
  grid-template-columns:.7fr 1.3fr;
  gap:70px;
  align-items:start;
}
.mf-faq-intro p{color:var(--mf-muted)}
.mf-faq-list{
  border-top:1px solid rgba(17,17,17,.14);
}
.mf-faq-item{
  padding:22px 0;
  border-bottom:1px solid rgba(17,17,17,.14);
}
.mf-faq-item h3{
  font-family:"Montserrat",sans-serif;
  font-size:.96rem;
  line-height:1.35;
  margin-bottom:8px;
}
.mf-faq-item p{
  font-size:.9rem;
  color:var(--mf-muted);
  margin:0;
}

/* CTA específico por servicio */
.mf-service-cta{
  position:relative;
  background:var(--mf-charcoal);
  color:#fff;
  padding:82px 0;
  overflow:hidden;
}
.mf-service-cta:after{
  content:"";
  position:absolute;
  right:-110px;
  top:-180px;
  width:430px;
  height:430px;
  border:1px solid rgba(158,100,64,.25);
  transform:rotate(35deg);
}
.mf-service-cta-inner{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:45px;
}
.mf-service-cta h2{
  color:#fff;
  margin-bottom:10px;
}
.mf-service-cta p{
  color:rgba(255,255,255,.68);
  margin:0;
}
.mf-service-cta .mf-actions{
  margin-top:0;
  min-width:max-content;
}

/* Interlinking */
.mf-text-links{
  margin-top:25px;
  padding-top:20px;
  border-top:1px solid rgba(17,17,17,.1);
}
.mf-text-links strong{
  display:block;
  font-size:.75rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.mf-text-links a{
  color:var(--mf-copper);
  font-size:.88rem;
  margin-right:16px;
}
.mf-text-links a:hover{text-decoration:underline}

/* Páginas generales */
.mf-prose{
  max-width:850px;
  color:var(--mf-muted);
}
.mf-prose h2,.mf-prose h3{color:var(--mf-charcoal)}
.mf-prose h2{margin-top:1.25em}
.mf-prose h3{font-size:1.5rem;margin-top:1.4em}

@media(max-width:900px){
  .mf-local-grid,
  .mf-faq-grid{
    grid-template-columns:1fr;
    gap:45px;
  }
  .mf-service-cta-inner{
    display:block;
  }
  .mf-service-cta .mf-actions{
    margin-top:25px;
  }
}
@media(max-width:620px){
  .mf-local,.mf-faq,.mf-service-cta{padding:64px 0}
  .mf-local-panel{padding:30px 24px}
}


/* ===== MetalForma V2.5 — galerías uniformes + interiores definitivos ===== */

/* Galería de servicios: 3 columnas iguales, misma altura y recorte */
.mf-inner-gallery{
  padding:0 0 90px;
}
.mf-inner-gallery-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin-bottom:28px;
}
.mf-inner-gallery-head h2{
  margin-bottom:0;
}
.mf-inner-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.mf-inner-gallery-grid figure,
.mf-inner-gallery-grid figure:first-child{
  margin:0;
  min-height:0;
  height:auto;
  aspect-ratio:4/3;
  grid-column:auto;
  grid-row:auto;
  overflow:hidden;
  background:#ddd;
  border:1px solid rgba(17,17,17,.08);
  border-radius:2px;
}
.mf-inner-gallery-grid img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .4s ease, filter .4s ease;
}
.mf-inner-gallery-grid figure:hover img{
  transform:scale(1.025);
  filter:contrast(1.02);
}
.mf-gallery-more{
  text-align:center;
  margin-top:30px;
}
.mf-gallery-more .mf-btn{
  min-width:190px;
}

/* FAQ más visible */
.mf-faq{
  padding:92px 0;
}
.mf-faq-grid{
  grid-template-columns:.62fr 1.38fr;
}
.mf-faq-intro{
  position:sticky;
  top:120px;
}
.mf-faq-item{
  padding:25px 0;
}
.mf-faq-item h3{
  font-size:1rem;
}
.mf-faq-item p{
  font-size:.92rem;
  line-height:1.65;
}

/* Relacionados más coherentes */
.mf-related{
  padding:84px 0 92px;
}
.mf-related-grid{
  gap:22px;
}
.mf-related-card{
  transition:transform .22s ease,border-color .22s ease;
}
.mf-related-card:hover{
  transform:translateY(-3px);
  border-color:rgba(194,154,122,.38);
}
.mf-related-card img{
  aspect-ratio:4/3;
}
.mf-related-card div{
  padding:21px;
}
.mf-related-card h3{
  font-size:1.3rem;
}
.mf-related-card span{
  line-height:1.4;
}

/* CTA de servicios más refinado */
.mf-service-cta{
  padding:88px 0;
}
.mf-service-cta h2{
  font-size:clamp(2.25rem,3.2vw,3.65rem);
}
.mf-service-cta p{
  max-width:650px;
}

/* Mejor espaciado general interior */
.mf-inner-section{
  padding:90px 0;
}
.mf-local{
  padding:88px 0;
}
.mf-local-panel{
  box-shadow:0 12px 38px rgba(0,0,0,.08);
}

/* Botón de relacionados / más trabajos */
.mf-btn-ghost{
  color:var(--mf-copper);
  border-color:rgba(158,100,64,.35);
  background:transparent;
}
.mf-btn-ghost:hover{
  color:#fff;
  background:var(--mf-copper);
  border-color:var(--mf-copper);
}

/* Ajustes responsive */
@media(max-width:900px){
  .mf-inner-gallery-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mf-inner-gallery-grid figure:last-child{
    grid-column:1/-1;
    max-width:calc(50% - 10px);
    width:100%;
    margin-inline:auto;
  }
  .mf-faq-intro{
    position:static;
  }
}
@media(max-width:620px){
  .mf-inner-gallery-head{
    display:block;
  }
  .mf-inner-gallery-grid{
    grid-template-columns:1fr;
  }
  .mf-inner-gallery-grid figure,
  .mf-inner-gallery-grid figure:last-child{
    grid-column:auto;
    max-width:none;
    width:100%;
    aspect-ratio:4/3;
  }
  .mf-gallery-more{
    margin-top:24px;
  }
}


/* ===== MetalForma V2.6 — galería + Trabajos/Proyectos ===== */

/* Galerías de servicios: +11% de altura, manteniendo uniformidad */
.mf-inner-gallery-grid figure,
.mf-inner-gallery-grid figure:first-child{
  aspect-ratio:6/5;
}

/* Página Trabajos */
.mf-portfolio-hero{background:var(--mf-charcoal);color:#fff;padding:105px 0 72px}
.mf-portfolio-hero h1{color:#fff}
.mf-portfolio-hero p{color:rgba(255,255,255,.72);max-width:760px}
.mf-portfolio-filter{margin-top:28px;display:flex;flex-wrap:wrap;gap:9px}
.mf-portfolio-filter span{border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.73);padding:7px 11px;font-size:.68rem;letter-spacing:.075em;text-transform:uppercase}
.mf-work-grid-section{background:var(--mf-cream-2);padding:88px 0}
.mf-work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}
.mf-work-card{background:#fff;border:1px solid rgba(17,17,17,.07);transition:transform .22s ease,box-shadow .22s ease}
.mf-work-card:hover{transform:translateY(-3px);box-shadow:0 13px 35px rgba(30,25,20,.08)}
.mf-work-card-media{aspect-ratio:4/3;overflow:hidden}
.mf-work-card img{width:100%;height:100%;object-fit:cover;transition:transform .42s ease}
.mf-work-card:hover img{transform:scale(1.03)}
.mf-work-card-body{padding:23px}
.mf-work-card h3{font-size:1.38rem;margin-bottom:7px}
.mf-work-card p{color:var(--mf-muted);font-size:.85rem;line-height:1.55}
.mf-work-card .mf-link{display:inline-block;margin-top:3px}

/* Destacado en Trabajos */
.mf-featured-project{background:var(--mf-charcoal);color:#fff;padding:94px 0}
.mf-featured-project-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:58px;align-items:center}
.mf-featured-project-media{overflow:hidden}
.mf-featured-project-media img{width:100%;aspect-ratio:16/10;object-fit:cover}
.mf-featured-project-copy h2{color:#fff}
.mf-featured-project-copy p{color:rgba(255,255,255,.7)}
.mf-featured-project-credit{border-left:2px solid var(--mf-copper);padding-left:16px;margin:22px 0 28px;color:rgba(255,255,255,.8);font-size:.88rem}

/* Página Proyectos */
.mf-project-intro{background:var(--mf-cream-2);padding:82px 0}
.mf-project-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.mf-project-intro p{color:var(--mf-muted)}
.mf-project-intro-aside{border-left:2px solid var(--mf-copper);padding-left:30px}
.mf-project-intro-aside strong{font-family:"Playfair Display",serif;font-size:1.55rem;display:block;margin-bottom:9px}
.mf-projects-index{background:var(--mf-cream);padding:90px 0}
.mf-projects-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:38px}
.mf-project-index-card{position:relative;min-height:410px;overflow:hidden;background:#222}
.mf-project-index-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.mf-project-index-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,8,8,.86),rgba(8,8,8,.1) 65%)}
.mf-project-index-card:hover img{transform:scale(1.035)}
.mf-project-index-body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:30px;color:#fff}
.mf-project-index-body h3{color:#fff;font-size:1.8rem;margin-bottom:6px}
.mf-project-index-body p{color:rgba(255,255,255,.72);font-size:.86rem;max-width:560px;margin-bottom:0}
.mf-project-index-meta{color:var(--mf-copper-soft);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px}

@media(max-width:900px){
  .mf-work-grid{grid-template-columns:repeat(2,1fr)}
  .mf-featured-project-grid,.mf-project-intro-grid{grid-template-columns:1fr}
  .mf-projects-index-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .mf-work-grid{grid-template-columns:1fr}
  .mf-project-index-card{min-height:340px}
}


/* ===== MetalForma V2.7 — Sobre nosotros + Contacto ===== */

/* SOBRE NOSOTROS */
.mf-about-hero{
  position:relative;
  min-height:610px;
  display:flex;
  align-items:end;
  background-size:cover;
  background-position:center;
  color:#fff;
}
.mf-about-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(8,8,8,.92),rgba(8,8,8,.58) 58%,rgba(8,8,8,.18));
}
.mf-about-hero-content{
  position:relative;
  z-index:1;
  padding:125px 0 82px;
  max-width:850px;
}
.mf-about-hero h1{color:#fff}
.mf-about-hero p{
  max-width:720px;
  color:rgba(255,255,255,.8);
}

.mf-about-story{
  padding:96px 0;
  background:var(--mf-cream-2);
}
.mf-about-story-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:76px;
  align-items:center;
}
.mf-about-story-media{
  position:relative;
}
.mf-about-story-media img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
}
.mf-about-story-media:after{
  content:"";
  position:absolute;
  inset:18px -18px -18px 18px;
  border:1px solid rgba(17,17,17,.15);
  pointer-events:none;
}
.mf-about-story-copy p{color:var(--mf-muted)}
.mf-about-story-copy h2{
  font-size:clamp(2.4rem,3.7vw,4rem);
}

.mf-values{
  padding:90px 0;
  background:var(--mf-charcoal);
  color:#fff;
}
.mf-values h2{color:#fff}
.mf-values-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:38px;
}
.mf-value-card{
  border:1px solid rgba(255,255,255,.09);
  padding:30px 24px;
  min-height:210px;
}
.mf-value-num{
  color:var(--mf-copper-soft);
  font-family:"Playfair Display",serif;
  font-size:1.4rem;
  margin-bottom:18px;
}
.mf-value-card h3{
  color:#fff;
  font-family:"Montserrat",sans-serif;
  font-size:.8rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.mf-value-card p{
  color:rgba(255,255,255,.62);
  font-size:.85rem;
  line-height:1.6;
}

.mf-about-project{
  background:var(--mf-cream);
  padding:94px 0;
}
.mf-about-project-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:62px;
  align-items:center;
}
.mf-about-project img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
.mf-about-project-copy p{color:var(--mf-muted)}
.mf-about-credit{
  margin:22px 0 28px;
  border-left:2px solid var(--mf-copper);
  padding-left:17px;
  color:var(--mf-gray);
  font-size:.9rem;
}

/* CONTACTO */
.mf-contact-hero{
  background:var(--mf-charcoal);
  color:#fff;
  padding:105px 0 74px;
}
.mf-contact-hero h1{color:#fff}
.mf-contact-hero p{
  color:rgba(255,255,255,.72);
  max-width:760px;
}

.mf-contact-main{
  padding:92px 0;
  background:var(--mf-cream-2);
}
.mf-contact-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:65px;
  align-items:start;
}
.mf-contact-info h2{
  font-size:clamp(2.2rem,3.4vw,3.6rem);
}
.mf-contact-info p{color:var(--mf-muted)}
.mf-contact-cards{
  display:grid;
  gap:14px;
  margin-top:28px;
}
.mf-contact-card{
  background:#fff;
  border:1px solid rgba(17,17,17,.08);
  padding:22px 24px;
}
.mf-contact-card span{
  display:block;
  color:var(--mf-copper);
  font-size:.67rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
  margin-bottom:5px;
}
.mf-contact-card strong,
.mf-contact-card a{
  color:var(--mf-charcoal);
  font-size:1rem;
}

.mf-contact-form-wrap{
  background:#fff;
  border:1px solid rgba(17,17,17,.08);
  padding:36px;
}
.mf-contact-form-wrap h2{
  font-size:2rem;
}
.mf-form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.mf-field{
  margin-bottom:17px;
}
.mf-field label{
  display:block;
  font-size:.72rem;
  letter-spacing:.07em;
  text-transform:uppercase;
  font-weight:700;
  margin-bottom:7px;
}
.mf-field input,
.mf-field textarea,
.mf-field select{
  width:100%;
  border:1px solid rgba(17,17,17,.18);
  background:#fff;
  padding:13px 14px;
  font:inherit;
  color:var(--mf-charcoal);
  border-radius:0;
}
.mf-field textarea{
  min-height:150px;
  resize:vertical;
}
.mf-field input:focus,
.mf-field textarea:focus,
.mf-field select:focus{
  outline:1px solid var(--mf-copper);
  border-color:var(--mf-copper);
}
.mf-form-note{
  color:var(--mf-muted);
  font-size:.78rem;
  line-height:1.5;
  margin-top:13px;
}
.mf-form-message{
  padding:13px 15px;
  margin-bottom:18px;
  font-size:.87rem;
}
.mf-form-message.success{
  background:#eef6ef;
  border:1px solid #bfd9c2;
}
.mf-form-message.error{
  background:#fff0ee;
  border:1px solid #e0b2ac;
}

.mf-contact-process{
  padding:84px 0;
  background:var(--mf-cream);
}
.mf-contact-process-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:35px;
}
.mf-contact-step{
  padding-top:22px;
  border-top:1px solid rgba(17,17,17,.18);
}
.mf-contact-step strong{
  color:var(--mf-copper);
  font-family:"Playfair Display",serif;
  font-size:1.3rem;
}
.mf-contact-step h3{
  font-size:1.25rem;
  margin-top:9px;
}
.mf-contact-step p{
  color:var(--mf-muted);
  font-size:.86rem;
}

@media(max-width:900px){
  .mf-about-story-grid,
  .mf-about-project-grid,
  .mf-contact-grid{
    grid-template-columns:1fr;
  }
  .mf-values-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .mf-contact-process-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .mf-about-hero{min-height:520px}
  .mf-values-grid{grid-template-columns:1fr}
  .mf-about-story-media:after{display:none}
  .mf-form-row{grid-template-columns:1fr}
  .mf-contact-form-wrap{padding:28px 22px}
}


/* ===== MetalForma V2.8 — pulido final de esta fase ===== */

/* Trabajos: mantener una cuadrícula limpia sin repetir la escultura */
.mf-work-card--special{
  background:var(--mf-charcoal);
  color:#fff;
}
.mf-work-card--special h3{color:#fff}
.mf-work-card--special p{color:rgba(255,255,255,.65)}
.mf-work-card--special .mf-link{color:var(--mf-copper-soft)}
.mf-work-card--special .mf-link:hover{color:#fff}

/* Contacto: consentimiento y mensajes más claros */
.mf-consent{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:16px 0 19px;
  color:var(--mf-muted);
  font-size:.78rem;
  line-height:1.5;
}
.mf-consent input{
  margin-top:4px;
  width:auto;
  flex:0 0 auto;
}
.mf-consent a{
  color:var(--mf-copper);
  text-decoration:underline;
  text-underline-offset:2px;
}
.mf-form-note strong{color:var(--mf-charcoal)}

/* Bloque de privacidad resumida integrado en Contacto */
.mf-privacy-note{
  margin-top:18px;
  padding:17px 18px;
  background:var(--mf-cream-2);
  border-left:2px solid var(--mf-copper);
  color:var(--mf-muted);
  font-size:.76rem;
  line-height:1.55;
}
.mf-privacy-note strong{
  color:var(--mf-charcoal);
}

/* Sobre nosotros: pequeño refuerzo editorial */
.mf-about-story-copy .mf-text-links{
  margin-top:30px;
}


/* ===== MetalForma V3.0 — horario + redes + tracking preparado ===== */
.mf-social-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.mf-hours{
  line-height:1.65;
}
.mf-contact-card small{
  display:block;
  margin-top:4px;
  color:var(--mf-muted);
  font-size:.76rem;
}
