@font-face{font-family:"VCP Sans";src:url(../fonts/instrument-sans-400.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:"VCP Sans";src:url(../fonts/instrument-sans-700.woff) format("woff");font-weight:700;font-display:swap}

.vcp{
	--paper:#fff;--stone:#f2f2f2;--ink:#000;--graphite:#555;--pine:#000;--line:#dadada;
	--display:"VCP Sans","Helvetica Neue",Arial,sans-serif;
	--text:"VCP Sans","Helvetica Neue",Arial,sans-serif;
	--gutter:clamp(20px,4vw,64px);
	color:var(--ink);font-family:var(--text);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;
}
.vcp *,.vcp *::before,.vcp *::after{box-sizing:border-box}
.vcp h1,.vcp h2,.vcp h3,.vcp dt{font-family:var(--display)!important;font-weight:400!important;color:inherit!important;text-transform:none!important;letter-spacing:-.018em!important;margin:0!important;padding:0!important}
.vcp h3,.vcp dt{font-family:var(--text)!important;font-weight:700!important;letter-spacing:0!important}
.vcp p,.vcp span,.vcp li,.vcp dd,.vcp a{font-family:var(--text)!important}
.vcp a{color:inherit!important;text-decoration:none!important}
.vcp p{margin:0!important;padding:0!important}
.vcp ul{list-style:none!important;margin:0!important;padding:0!important}
.vcp li{margin:0!important;padding:0!important;list-style:none!important;background:none!important}
.vcp li::before{content:none!important}
.vcp img{display:block;max-width:100%;height:auto}
.vcp :focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* La portada ocupa todo el ancho sea cual sea el contenedor del tema. */
body.vcp-wide #main{padding-top:0!important;padding-bottom:0!important}
body.vcp-wide #content,body.vcp-wide .content{width:100%!important;max-width:none!important;float:none!important;margin:0!important;padding:0!important}
body.vcp-wide #sidebar,body.vcp-wide .page-title,body.vcp-wide .fancy-header,body.vcp-wide #main-slideshow{display:none!important}
body.vcp-wide #page,body.vcp-wide #main{overflow-x:clip}
.vcp-home,.vcp-bleed{position:relative;left:50%;width:var(--vcp-vw,100vw);margin-left:calc(var(--vcp-vw,100vw) / -2)}

.vcp-wrap{max-width:1560px;margin:0 auto;padding:0 var(--gutter)}
.vcp-section{padding:clamp(64px,8vw,128px) 0}
.vcp-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:clamp(28px,3.5vw,52px)}
.vcp-head h2{font-size:clamp(30px,3.4vw,50px);line-height:1.1}

.vcp-btn{display:inline-block;padding:15px 30px;font-size:16px;font-weight:400;line-height:1.2;border:1px solid transparent;transition:background-color .2s,color .2s,border-color .2s}
.vcp .vcp-btn--light{background:#fff;color:var(--ink)!important}
.vcp .vcp-btn--light:hover{background:var(--stone)}
.vcp .vcp-btn--ghost{border-color:#fff;color:#fff!important}
.vcp .vcp-btn--ghost:hover{background:#fff;color:var(--ink)!important}
.vcp .vcp-btn--solid{background:var(--pine);color:#fff!important}
.vcp .vcp-btn--solid:hover{background:var(--ink)}
.vcp .vcp-btn--line{border-color:var(--ink);color:var(--ink)!important}
.vcp .vcp-btn--line:hover{background:var(--ink);color:#fff!important}
.vcp-actions{display:flex;flex-wrap:wrap;gap:12px}

.vcp-link{display:inline-block;font-weight:400;font-size:16px;padding-bottom:3px;border-bottom:1px solid currentColor;white-space:nowrap}
.vcp .vcp-link:hover{color:var(--pine)!important}
.vcp .vcp-link--light,.vcp .vcp-link--light:hover{color:#fff!important}

/* Primera sección */
.vcp-hero{position:relative;display:flex;align-items:flex-end;min-height:clamp(540px,calc(100vh - 150px),960px);background:var(--ink);color:#fff;overflow:hidden}
.vcp-hero__media{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover}
.vcp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.58),rgba(0,0,0,0) 30%),linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.14) 55%,rgba(0,0,0,0))}
body.vcp-has-header .vcp-hero{min-height:clamp(560px,100svh,1080px)}
.vcp-hero__body{position:relative;z-index:1;width:100%;max-width:1560px;margin:0 auto;padding:0 var(--gutter) clamp(40px,6vw,88px)}
.vcp-hero h1{max-width:13em;font-size:clamp(44px,7.2vw,112px);line-height:1.02;letter-spacing:-.028em!important}
.vcp-hero p{max-width:34em;margin:clamp(16px,2vw,26px) 0 clamp(24px,2.6vw,36px)!important;font-size:clamp(17px,1.4vw,20px)}
.vcp-hero__toggle{position:absolute;z-index:2;right:var(--gutter);bottom:clamp(40px,6vw,88px);display:grid;place-items:center;width:44px;height:44px;padding:0;background:transparent;border:1px solid #fff;border-radius:50%;color:#fff;cursor:pointer}
.vcp-hero__toggle[hidden]{display:none}
.vcp-hero__toggle svg{fill:currentColor}
.vcp-hero__toggle .vcp-i-play,.vcp-hero__toggle.is-paused .vcp-i-pause{display:none}
.vcp-hero__toggle.is-paused .vcp-i-play{display:block}

/* Tarjetas de producto */
.vcp-card{display:block}
.vcp-card__media{display:block;aspect-ratio:1;background:var(--stone);overflow:hidden}
.vcp-card__media img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:8%}
.vcp-card__name{display:block;margin-top:14px;font-weight:400;font-size:16px;line-height:1.3}
.vcp-card__price{display:block;margin-top:3px;color:var(--graphite);font-size:15px}
.vcp-card__price small,.vcp-card__price .woocommerce-price-suffix{font-size:13px}
.vcp-card__price del{opacity:.6}
.vcp .vcp-card:hover .vcp-card__name{color:var(--pine)}

.vcp-rail__nav{display:flex;gap:8px}
.vcp-rail__nav button{display:grid;place-items:center;width:46px;height:46px;padding:0;background:transparent;border:1px solid var(--ink);border-radius:50%;color:var(--ink);cursor:pointer;transition:background-color .2s,color .2s}
.vcp-rail__nav button:hover{background:var(--ink);color:#fff}
.vcp-rail__nav button:disabled{opacity:.3;cursor:default;background:transparent;color:var(--ink)}
.vcp-rail__track{display:flex;gap:clamp(12px,1.6vw,24px);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding:4px max(var(--gutter),calc((var(--vcp-vw,100vw) - 1560px) / 2 + var(--gutter)));scroll-padding-left:max(var(--gutter),calc((var(--vcp-vw,100vw) - 1560px) / 2 + var(--gutter)))}
.vcp-rail__track::-webkit-scrollbar{display:none}
.vcp-rail__track .vcp-card{flex:0 0 clamp(230px,24vw,380px);scroll-snap-align:start}

/* Frase de empresa */
.vcp-statement{background:var(--stone)}
.vcp-statement__grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(32px,6vw,110px);align-items:end}
.vcp-statement h2{font-size:clamp(32px,4.4vw,70px);line-height:1.08}
.vcp-statement p{margin-bottom:20px!important;color:var(--graphite);max-width:32em}

/* Categorías */
.vcp-cats__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(28px,3vw,48px) clamp(12px,1.6vw,24px)}
.vcp-cat{display:block;grid-column:span 6}
.vcp-cat__media{display:block;height:clamp(260px,30vw,480px);background:var(--stone);overflow:hidden}
.vcp-cat__media img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:5%;transition:transform .5s ease}
.vcp .vcp-cat:hover .vcp-cat__media img{transform:scale(1.03)}
.vcp-cat__title{display:block;margin-top:16px;font-family:var(--display)!important;font-weight:400;font-size:clamp(24px,2.2vw,34px);line-height:1.15}
.vcp-cat__text{display:block;margin-top:6px;max-width:32em;color:var(--graphite);font-size:16px}

/* Proyectos: los nombres cambian la fotografía */
.vcp-sectors{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);min-height:clamp(560px,52vw,820px);background:var(--pine);color:#fff}
.vcp-sectors__stage{position:relative;overflow:hidden}
.vcp-sectors__stage img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;opacity:0;transition:opacity .45s ease}
.vcp-sectors__stage img.is-active{opacity:1}
.vcp-sectors__panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(40px,5vw,84px) var(--gutter)}
.vcp-sectors__panel h2{font-size:18px!important;font-family:var(--text)!important;font-weight:400!important;letter-spacing:0!important;margin-bottom:clamp(20px,2.4vw,36px)!important}
.vcp-sectors__panel ul{width:100%;margin-bottom:clamp(24px,2.8vw,40px)!important}
.vcp-sectors__panel li a{display:block;padding:clamp(5px,.5vw,9px) 0;font-size:clamp(28px,3.1vw,50px);line-height:1.14;opacity:.55;transition:opacity .2s}
.vcp-sectors__panel li a span{font-family:var(--display)!important;font-weight:400;letter-spacing:-.018em}
.vcp .vcp-sectors__panel li a.is-active,.vcp .vcp-sectors__panel li a:hover,.vcp .vcp-sectors__panel li a:focus-visible{opacity:1}
.vcp-sectors__thumb{display:none!important}

/* Poliuretano */
.vcp-poly{border-bottom:1px solid var(--line)}
.vcp-poly__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,56px)}
.vcp-poly h3{margin-top:18px!important;font-size:20px;line-height:1.3}
.vcp-poly ul{margin-top:12px!important}
.vcp-poly li{position:relative;padding:7px 0!important;border-top:1px solid var(--line);color:var(--graphite);font-size:15.5px;line-height:1.4}
.vcp-poly__delivery{margin-top:14px!important;font-weight:700;font-size:15.5px}
.vcp-poly .vcp-link{margin-top:12px;font-size:15px}

.vcp-best__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(32px,3.4vw,52px) clamp(12px,1.6vw,24px)}

/* Dos caminos */
.vcp-paths{display:grid;grid-template-columns:1fr 1fr}
.vcp-path{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:clamp(320px,30vw,460px);padding:clamp(32px,4vw,64px) var(--gutter);background:var(--stone)}
.vcp .vcp-path--dark{background:var(--ink);color:#fff!important}
.vcp-path h2{font-size:clamp(34px,4vw,62px);line-height:1.05}
.vcp-path p{max-width:30em;margin:14px 0 22px!important;font-size:17px}

/* Nosotros */
.vcp-about{padding-bottom:clamp(48px,6vw,96px)}
.vcp-about section{margin-top:clamp(56px,7vw,104px)}
.vcp-about h2{font-size:clamp(28px,3vw,44px);line-height:1.12;margin-bottom:clamp(20px,2.6vw,36px)!important}
.vcp-about__lead{font-family:var(--display)!important;font-weight:400;font-size:clamp(28px,3.6vw,52px);line-height:1.14;letter-spacing:-.018em;max-width:20em}
.vcp-about__figure{margin:clamp(32px,4vw,56px) 0 0!important;padding:0!important;max-width:none!important;width:100%!important}
.vcp-about__figure img{width:100%;height:clamp(260px,38vw,520px);object-fit:cover}
.vcp-about__story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(20px,4vw,64px)}
.vcp-about__story p + p{margin-top:16px!important}
.vcp-about__story p{max-width:36em}
.vcp-about dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(24px,4vw,64px);margin:0!important;padding:0!important}
.vcp-about dl > div{padding:16px 0 18px;border-top:1px solid var(--line)}
.vcp-about dt{font-size:18px;line-height:1.3;float:none!important;width:auto!important}
.vcp-about dd{margin:4px 0 0!important;padding:0!important;color:var(--graphite);font-size:16px;line-height:1.5}
.vcp-about__cta{background:var(--stone);padding:clamp(32px,5vw,72px)}
.vcp-about__cta p:not(.vcp-actions){margin-bottom:22px!important;max-width:36em}

@media (max-width:900px){
	.vcp-statement__grid,.vcp-about__story{grid-template-columns:1fr}
	.vcp-cat{grid-column:span 12}
	.vcp-cat__media{height:auto;aspect-ratio:3/2}
	.vcp-sectors{display:block}
	.vcp-sectors__stage{display:none}
	.vcp-sectors__panel li a{display:flex;align-items:center;gap:16px;padding:8px 0;opacity:1;font-size:24px}
	.vcp-sectors__thumb{display:block!important;flex:0 0 76px;width:76px;height:76px;object-fit:cover}
	.vcp-poly__grid{grid-template-columns:1fr}
	.vcp-best__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.vcp-paths{grid-template-columns:1fr}
	.vcp-rail__nav{display:none}
	.vcp-rail__track .vcp-card{flex-basis:62vw}
	.vcp-head{flex-wrap:wrap}
	.vcp-about dl{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
	.vcp *{transition:none!important}
}

/* Cabecera */
html{--vcp-hh:122px}
body.vcp-has-header .masthead,body.vcp-has-header #masthead,body.vcp-has-header .top-bar,body.vcp-has-header #top-bar,body.vcp-has-header .dt-mobile-header,body.vcp-has-header .dt-close-mobile-menu-icon,body.vcp-has-header .dt-mobile-menu-icon,body.vcp-has-header .mobile-header-bar,body.vcp-has-header .mobile-header-space,body.vcp-has-header .masthead-mobile,body.vcp-has-header .masthead-mobile-header,body.vcp-has-header .header-space,body.vcp-has-header .mobile-sticky-header-overlay,body.vcp-has-header .site-header,body.vcp-has-header #site-header,body.vcp-has-header .elementor-location-header,body.vcp-has-header #page>header:not(.vcp-header){display:none!important}
body.vcp-has-header:not(.vcp-overlay){padding-top:var(--vcp-hh)}

.vcp-header{position:fixed;top:0;left:0;right:0;z-index:9990;color:#fff;font-size:15px;line-height:1.3;--bar:78px;transition:background-color .22s,color .22s,box-shadow .22s}
body.admin-bar .vcp-header{top:32px}
.vcp-header.is-solid,.vcp-header.is-scrolled,.vcp-header.is-open,.vcp-header.is-searching,.vcp-header:has(.menu-item-has-children:hover),.vcp-header:has(.menu-item-has-children:focus-within){background:#fff;color:var(--ink);box-shadow:0 1px 0 var(--line)}

.vcp-header__util{display:flex;justify-content:space-between;align-items:center;height:44px;padding:0 var(--gutter);font-size:14px;overflow:hidden;transition:height .22s}
.vcp-header.is-scrolled .vcp-header__util{height:0}
.vcp-header__util div{display:flex;align-items:center;gap:clamp(14px,1.5vw,24px)}
.vcp a.vcp-contact{display:inline-flex;align-items:center;gap:9px}
.vcp-contact__ico{display:grid;place-items:center;flex:none;width:26px;height:26px;border:1px solid currentColor;border-radius:50%;font-style:normal;transition:background-color .2s,border-color .2s,color .2s}
.vcp-contact__ico svg{display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}
.vcp a.vcp-contact:hover .vcp-contact__ico{background:var(--pine);border-color:var(--pine);color:#fff}
.vcp .vcp-header__util a.vcp-contact:hover,.vcp .vcp-nav__extra a.vcp-contact:hover{text-decoration:none!important}
.vcp-header__util .vcp-socials,.vcp-socials{display:flex;align-items:center;gap:2px}
.vcp a.vcp-social{display:grid;place-items:center;width:30px;height:30px;transition:opacity .2s}
.vcp a.vcp-social:hover{opacity:.6;text-decoration:none!important}
.vcp-social .dashicons{display:block;width:18px;height:18px;font-size:18px;line-height:1;font-style:normal}
.vcp .vcp-header__util a:hover,.vcp .vcp-nav__extra a:hover{text-decoration:underline!important}

.vcp-header__main{position:relative;display:flex;align-items:center;height:var(--bar);padding:0 var(--gutter)}
.vcp-header__logo{flex:none;margin-right:auto}
.vcp-header__logo img{display:block;width:auto;height:42px;max-width:none;filter:brightness(0) invert(1);transition:filter .22s}
.vcp-header.is-solid .vcp-header__logo img,.vcp-header.is-scrolled .vcp-header__logo img,.vcp-header.is-open .vcp-header__logo img,.vcp-header.is-searching .vcp-header__logo img,.vcp-header:has(.menu-item-has-children:hover) .vcp-header__logo img,.vcp-header:has(.menu-item-has-children:focus-within) .vcp-header__logo img{filter:none}

.vcp-nav{height:100%}
.vcp-nav__list{display:flex;height:100%;gap:clamp(14px,1.55vw,28px)}
.vcp-nav a{display:block;text-transform:lowercase!important}
.vcp-nav a::first-letter{text-transform:uppercase}
.vcp-nav__list>li>a{position:relative;line-height:var(--bar);white-space:nowrap}
.vcp-nav__list>li>a::after{content:"";position:absolute;left:0;right:0;bottom:22px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.vcp-nav__list>li:hover>a::after,.vcp-nav__list>li>a:focus-visible::after,.vcp-nav__list>li.current-menu-item>a::after{transform:scaleX(1)}
.vcp-nav__extra,.vcp-sub-toggle,.vcp .vcp-icon.vcp-burger{display:none}

.vcp-header__actions{display:flex;align-items:center;gap:4px;margin-left:clamp(12px,1.4vw,22px)}
.vcp .vcp-icon{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:0;background:transparent;border:0;color:inherit!important;cursor:pointer}
.vcp-icon svg{display:block;fill:none;stroke:currentColor;stroke-width:1.5}
.vcp-cart-count{position:absolute;top:3px;right:1px;display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;background:var(--pine);border-radius:9px;color:#fff;font-size:11.5px;line-height:1}
.vcp-cart-count:empty{display:none}

.vcp-search{position:absolute;left:0;right:0;top:100%;display:flex;gap:12px;align-items:center;padding:20px var(--gutter);background:#fff;color:var(--ink);box-shadow:0 1px 0 var(--line)}
.vcp-search[hidden]{display:none}
.vcp .vcp-search input[type=search]{flex:1;min-width:0;height:auto;margin:0;padding:6px 0;background:transparent;border:0;border-bottom:1px solid var(--ink);border-radius:0;box-shadow:none;color:var(--ink);font:400 clamp(20px,2vw,28px)/1.3 var(--text)}
.vcp .vcp-search button{margin:0;background:var(--pine);border:0;border-radius:0;color:#fff;cursor:pointer;font:400 16px/1.2 var(--text);padding:14px 26px}

@media (min-width:1280px){
	.vcp-nav .sub-menu{position:absolute;left:0;right:0;top:100%;display:none;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px clamp(20px,3vw,48px);max-height:calc(100vh - 150px);overflow:auto;padding:30px var(--gutter) 40px!important;background:#fff;color:var(--ink);box-shadow:0 1px 0 var(--line)}
	.vcp-nav__list>li:hover>.sub-menu,.vcp-nav__list>li:focus-within>.sub-menu{display:grid}
	.vcp-nav .sub-menu a{font-size:17px;line-height:1.3}
	.vcp .vcp-nav .sub-menu a:hover{color:var(--pine)!important}
	.vcp-nav .sub-menu .sub-menu{position:static;display:block;padding:8px 0 0!important;box-shadow:none;max-height:none;overflow:visible}
	.vcp-nav .sub-menu .sub-menu a{padding:3px 0;color:var(--graphite)!important;font-size:15px}
}
@media (max-width:1279.98px){
	html{--vcp-hh:68px}
	.vcp-header{--bar:68px}
	.vcp-header__util{display:none}
	.vcp-header__logo img{height:32px}
	.vcp .vcp-icon.vcp-burger{display:grid}
	.vcp-header__actions{margin-left:0}
	.vcp-nav{display:none;position:absolute;left:0;right:0;top:100%;height:calc(100vh - var(--bar));height:calc(100dvh - var(--bar));overflow:auto;padding:12px var(--gutter) 40px;background:#fff;color:var(--ink)}
	.vcp-header.is-open .vcp-nav{display:block}
	.vcp-nav__list{display:block;height:auto}
	.vcp-nav__list li{position:relative}
	.vcp-nav__list>li{border-bottom:1px solid var(--line)}
	.vcp-nav__list>li>a{padding:15px 48px 15px 0;font-size:21px;line-height:1.25}
	.vcp-nav__list>li>a::after{display:none}
	.vcp .vcp-sub-toggle{position:absolute;top:6px;right:-8px;display:grid;place-items:center;width:44px;height:44px;padding:0;background:transparent;border:0;color:var(--ink);cursor:pointer}
	.vcp-sub-toggle svg{fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .2s}
	.vcp-sub-toggle[aria-expanded=true] svg{transform:rotate(45deg)}
	.vcp-nav .sub-menu{display:none;padding:0 0 12px 14px!important}
	.vcp-nav li.is-expanded>.sub-menu{display:block}
	.vcp-nav .sub-menu a{padding:9px 44px 9px 0;font-size:17px}
	.vcp-nav .sub-menu .vcp-sub-toggle{top:0}
	.vcp-nav__extra{display:block;margin-top:24px;color:var(--ink);font-size:17px}
	.vcp-nav__contact{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
	.vcp-nav__contact .vcp-contact__ico{width:38px;height:38px}
	.vcp-nav__contact .vcp-contact__ico svg{width:18px;height:18px}
	.vcp a.vcp-contact{gap:12px}
	.vcp-nav__links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:22px;color:var(--graphite);font-size:16px}
	.vcp-nav__extra .vcp-socials{margin:14px 0 0 -10px}
	.vcp-nav__extra a.vcp-social{width:44px;height:44px}
	.vcp-nav__extra .vcp-social .dashicons{width:24px;height:24px;font-size:24px}
	.vcp-nav__extra a{text-transform:none!important}
	.vcp .vcp-nav__extra a::first-letter{text-transform:none}
}
@media (max-width:782px){body.admin-bar .vcp-header{top:46px}}

/* Catálogo */
.vcp-shop__inner{padding:clamp(36px,4.5vw,72px) var(--gutter) clamp(64px,7vw,110px)}
.vcp-shop__head h1{font-size:clamp(40px,5.4vw,84px);line-height:1.03;letter-spacing:-.024em!important}
.vcp-shop__desc{max-width:46em;margin-top:14px;color:var(--graphite)}
.vcp-shop__cats{display:flex;flex-wrap:wrap;gap:6px clamp(16px,2vw,32px);margin-top:clamp(22px,2.8vw,40px);padding-bottom:14px;border-bottom:1px solid var(--line);font-size:17px}
.vcp-shop__subcats{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.vcp-shop__cats a{position:relative;padding:4px 0;color:var(--graphite)!important}
.vcp .vcp-shop__cats a:hover,.vcp .vcp-shop__cats a[aria-current]{color:var(--ink)!important}
.vcp-shop__cats a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:-15px;height:2px;background:var(--pine)}
.vcp-shop__subcats a{padding:7px 14px;background:var(--stone);font-size:15px;transition:background-color .2s,color .2s}
.vcp .vcp-shop__subcats a:hover,.vcp .vcp-shop__subcats a[aria-current]{background:var(--pine);color:#fff!important}
.vcp-shop__tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px clamp(16px,2.4vw,36px);margin:clamp(20px,2.4vw,32px) 0;font-size:15px}
.vcp .woocommerce-result-count{float:none!important;margin:0 auto 0 0!important;color:var(--graphite)}
.vcp .woocommerce-ordering{float:none!important;margin:0!important}
.vcp-shop__price{display:flex;align-items:center;gap:8px;margin:0}
.vcp-shop__price label{margin:0;font-weight:400}
.vcp .vcp-shop__price input,.vcp .woocommerce-ordering select{width:auto;height:42px;margin:0;padding:0 12px;background-color:#fff;border:1px solid var(--line);border-radius:0;box-shadow:none;color:var(--ink);font:400 15px/1.2 var(--text)}
.vcp .vcp-shop__price input{width:84px}
.vcp .vcp-shop__price button{height:42px;margin:0;padding:0 18px;background:var(--ink);border:0;border-radius:0;color:#fff;cursor:pointer;font:400 15px/1 var(--text)}
.vcp .vcp-shop__price button:hover{background:var(--pine)}
.vcp-shop__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(34px,3.4vw,56px) clamp(14px,1.6vw,26px)}
.vcp-shop__item .button,.vcp-shop__item .added_to_cart{display:inline-block;margin:12px 12px 0 0!important;padding:10px 16px!important;background:transparent!important;border:1px solid var(--ink)!important;border-radius:0!important;color:var(--ink)!important;font:400 14px/1.2 var(--text)!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important;transition:background-color .2s,color .2s}
.vcp .vcp-shop__item .button:hover{background:var(--ink)!important;color:#fff!important}
.vcp .vcp-shop__item .added_to_cart{border-color:var(--pine)!important;background:var(--pine)!important;color:#fff!important}
.vcp .woocommerce-pagination{margin-top:clamp(40px,5vw,72px)!important;text-align:left!important}
.vcp .woocommerce-pagination ul.page-numbers{display:flex!important;flex-wrap:wrap;gap:6px;border:0!important}
.vcp .woocommerce-pagination .page-numbers li{float:none!important;border:0!important;overflow:visible!important}
.vcp .woocommerce-pagination .page-numbers a,.vcp .woocommerce-pagination .page-numbers span{display:grid;place-items:center;min-width:44px;height:44px;padding:0 10px!important;background:var(--stone)!important;color:var(--ink)!important;font-size:16px!important;line-height:1}
.vcp .woocommerce-pagination .page-numbers a:hover,.vcp .woocommerce-pagination .page-numbers span.current{background:var(--pine)!important;color:#fff!important}
.vcp-shop__empty{padding:clamp(40px,6vw,90px) 0}
.vcp-shop__empty p{margin-bottom:14px!important;font-size:22px}

/* Muebles a medida */
body.vcp-has-header .vcp-hero--page{min-height:clamp(440px,70svh,760px)}
.vcp-hero--page h1{font-size:clamp(44px,6.6vw,104px)}
.vcp-medida__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,110px);align-items:start}
.vcp-medida__old h2{font-size:clamp(32px,3.8vw,58px);line-height:1.08}
.vcp-medida__old p{margin-top:14px!important;color:var(--graphite);max-width:26em}
.vcp-medida__old img{width:100%;height:clamp(240px,27vw,430px);margin-top:clamp(24px,3vw,44px);object-fit:cover}
.vcp-medida__panel{padding:clamp(24px,3.4vw,56px);background:var(--stone)}
.vcp-medida__alert{margin-bottom:20px!important;padding:12px 16px!important;background:#fff;border-left:3px solid var(--pine)}
.vcp-medida__done h2{font-size:clamp(30px,3.2vw,48px)}
.vcp-medida__done p{margin:12px 0 22px!important}
.vcp-form{margin:0}
.vcp-form__progress{display:none;list-style:none!important;margin:0 0 clamp(24px,3vw,40px)!important;padding:0!important}
.vcp-form.is-stepped .vcp-form__progress{display:flex;gap:clamp(10px,2vw,28px);flex-wrap:wrap}
.vcp-form__progress li{display:flex;align-items:center;gap:8px;color:var(--graphite);font-size:15px}
.vcp-form__progress span{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--graphite);border-radius:50%;font-size:14px;line-height:1;transition:background-color .2s,color .2s,border-color .2s}
.vcp-form__progress li.is-current,.vcp-form__progress li.is-done{color:var(--ink)}
.vcp-form__progress li.is-current span,.vcp-form__progress li.is-done span{background:var(--pine);border-color:var(--pine);color:#fff}
.vcp-form fieldset{min-width:0;margin:0 0 28px!important;padding:0!important;border:0!important}
.vcp-form fieldset[hidden]{display:none}
.vcp-form legend{float:none;width:100%;margin:0 0 18px!important;padding:0!important;font-family:var(--display)!important;font-size:clamp(26px,2.5vw,38px);line-height:1.12;letter-spacing:-.018em;color:var(--ink)}
.vcp-field{margin-bottom:16px}
.vcp-field label{display:block;margin:0 0 6px!important;color:var(--ink);font:400 15px/1.3 var(--text)!important}
.vcp .vcp-field input,.vcp .vcp-field select,.vcp .vcp-field textarea{display:block;width:100%;height:auto;margin:0;padding:13px 14px;background-color:#fff;border:1px solid var(--line);border-radius:0;box-shadow:none;color:var(--ink);font:400 16px/1.4 var(--text)}
.vcp .vcp-field select{height:50px}
.vcp .vcp-field input:focus,.vcp .vcp-field select:focus,.vcp .vcp-field textarea:focus{border-color:var(--pine);outline:1px solid var(--pine);outline-offset:0}
.vcp-field-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px}
.vcp-field-row--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.vcp-form__trap{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.vcp-form__check{display:flex;align-items:flex-start;gap:10px;margin:6px 0 0!important;font:400 14.5px/1.45 var(--text)!important}
.vcp-form__check input{flex:none;width:18px;height:18px;margin:2px 0 0!important}
.vcp .vcp-form__check a{text-decoration:underline!important}
.vcp-form__nav{display:flex;gap:10px}
.vcp-form__nav [hidden]{display:none!important}
.vcp .vcp-form__nav button{cursor:pointer;border-radius:0;font-family:var(--text)!important}
.vcp .vcp-form__nav .vcp-btn--solid{border-color:var(--pine)}
.vcp-medida__gallery{display:grid;grid-template-columns:5fr 4fr 5fr;gap:clamp(6px,.8vw,12px)}
.vcp-medida__gallery img{width:100%;height:clamp(240px,27vw,460px);object-fit:cover}
.vcp-medida__close{padding:clamp(56px,7vw,110px) 0}
.vcp-medida__close .vcp-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px}
.vcp-medida__close h2{font-size:clamp(32px,4vw,60px);line-height:1.08}
@media (max-width:1100px){.vcp-shop__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
	.vcp-medida__grid{grid-template-columns:1fr}
	.vcp-medida__old img{display:none}
	.vcp-medida__gallery{grid-template-columns:1fr}
}
@media (max-width:720px){
	.vcp-shop__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.vcp .woocommerce-result-count{width:100%}
	.vcp-field-row,.vcp-field-row--2{grid-template-columns:1fr}
	.vcp-form__progress li{font-size:0;gap:0}
	.vcp-form__progress li.is-current{font-size:15px;gap:8px}
}
.vcp .vcp-form__nav .vcp-btn--line{background:transparent}
.vcp .vcp-form__nav .vcp-btn--line:hover{background:var(--ink);color:#fff!important}
.vcp .vcp-form__nav .vcp-btn--solid{background:var(--pine);color:#fff!important}
.vcp .vcp-form__nav .vcp-btn--solid:hover{background:var(--ink);border-color:var(--ink)}
.vcp-medida__main{scroll-margin-top:24px}

/* Blanco y negro: estados al pasar el ratón */
.vcp .vcp-btn--solid:hover,.vcp .vcp-form__nav .vcp-btn--solid:hover,.vcp .vcp-shop__price button:hover{background:#3a3a3a!important;border-color:#3a3a3a!important}
.vcp .vcp-link:hover{color:inherit!important;opacity:.6}
.vcp .vcp-card:hover .vcp-card__name{color:inherit;text-decoration:underline}
.vcp .vcp-nav .sub-menu a:hover{color:inherit!important;text-decoration:underline!important}
.vcp-cart-count{background:#000;box-shadow:0 0 0 1.5px #fff}
.vcp-cat--photo .vcp-cat__media img{object-fit:cover;mix-blend-mode:normal;padding:0}

/* Muebles a medida: el formulario manda */
.vcp-medida__main{padding:clamp(36px,4.5vw,72px) 0 clamp(56px,6vw,96px);scroll-margin-top:var(--vcp-hh)}
.vcp-medida__head{margin-bottom:clamp(24px,3vw,44px)}
.vcp-medida__head h1{font-size:clamp(40px,5.4vw,84px);line-height:1.03;letter-spacing:-.024em!important}
.vcp-medida__head p{max-width:38em;margin-top:12px!important;color:var(--graphite);font-size:clamp(17px,1.4vw,20px)}
.vcp-medida__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(20px,2.4vw,36px);align-items:stretch}
.vcp-medida__panel{padding:clamp(26px,3.6vw,60px)}
.vcp-medida__aside{display:flex;flex-direction:column;gap:clamp(20px,2.4vw,36px)}
.vcp-medida__talk{padding:clamp(28px,3.4vw,52px);background:#000;color:#fff}
.vcp-medida__talk h2{font-size:clamp(32px,3.4vw,54px);line-height:1.06}
.vcp-medida__talk p{margin:12px 0 24px!important;color:#cfcfcf}
.vcp .vcp-medida__talk .vcp-btn--light:hover{background:#dcdcdc}
.vcp a.vcp-medida__mail{display:inline-block;margin-top:20px;color:#fff!important;border-bottom:1px solid currentColor}
.vcp a.vcp-medida__mail:hover{opacity:.7}
.vcp-medida__photo{flex:1;display:flex;flex-direction:column;margin:0!important;min-height:0}
.vcp-medida__photo img{flex:1;width:100%;min-height:220px;max-height:440px;object-fit:cover}
.vcp-medida__photo figcaption{margin-top:12px;color:var(--graphite);font-size:15px}
.vcp-medida__gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
.vcp-medida__gallery img{height:clamp(220px,22vw,380px)}
@media (max-width:900px){
	.vcp-medida__grid{grid-template-columns:1fr}
	.vcp-medida__photo{display:none}
	.vcp-medida__gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Muebles a medida sin fotos */
.vcp-medida__grid{align-items:start}
.vcp-medida__aside{position:sticky;top:calc(var(--vcp-hh) + 24px)}
.vcp-field-row.is-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.vcp-field[hidden]{display:none}
@media (max-width:900px){.vcp-medida__aside{position:static}}
@media (max-width:720px){.vcp-field-row.is-two{grid-template-columns:1fr}}

/* Ymaz */
.vcp-card__media{position:relative}
.vcp-card__tag{position:absolute;z-index:1;top:12px;left:12px;padding:5px 10px;background:#000;color:#fff;font-size:13px;line-height:1.2}

/* Mobiliario escolar */
.vcp-school{border-bottom:1px solid var(--line)}
.vcp-school__grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(28px,5vw,88px);align-items:center}
.vcp-school__media{display:block;overflow:hidden}
.vcp-school__media img{width:100%;height:clamp(300px,36vw,560px);object-fit:cover;transition:transform .6s ease}
.vcp .vcp-school__media:hover img{transform:scale(1.03)}
.vcp-school h2{font-size:clamp(34px,4vw,62px);line-height:1.06}
.vcp-school__body p{margin:16px 0 22px!important;color:var(--graphite);max-width:32em}
.vcp-school__links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.vcp-school__links a{padding:8px 14px;background:var(--stone);font-size:15px;transition:background-color .2s,color .2s}
.vcp .vcp-school__links a:hover{background:#000;color:#fff!important}
.vcp-school__products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,24px);margin-top:clamp(36px,4vw,64px)}
@media (max-width:900px){
	.vcp-school__grid{grid-template-columns:1fr}
	.vcp-school__products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Enlaces automáticos del menú: respetar nombres de modelo */
.vcp .vcp-nav .vcp-auto-item a{text-transform:none!important}
.vcp .vcp-nav .vcp-auto-item a::first-letter{text-transform:none}
.vcp .vcp-nav .vcp-auto-all a{text-decoration:underline!important}

/* Animación de portada */
.vcp-cine{position:absolute;inset:0;overflow:hidden;background:#151515;filter:saturate(.55) contrast(1.05) brightness(.8)}
.vcp-cine__shot{position:absolute;inset:0;opacity:0;overflow:hidden}
.vcp-cine__shot:first-child{opacity:1}
.vcp-cine__shot img{position:absolute;max-width:none!important;will-change:transform}
.vcp-cine .is-scene img{inset:0;width:100%!important;height:100%!important;object-fit:cover}
.vcp-cine__stage{position:absolute;inset:0;background:radial-gradient(ellipse 62% 74% at 66% 52%,#e4e4e2 0,#b4b4b1 48%,#5c5c5a 100%)}
.vcp-cine .is-product img{top:10%;right:7%;width:52%!important;height:80%!important;object-fit:contain;mix-blend-mode:multiply}
.vcp-cine .is-detail img{inset:0 0 0 30%;width:70%!important;height:100%!important;object-fit:contain;mix-blend-mode:multiply}
.vcp-cine__light{position:absolute;inset:-10% -30%;background:linear-gradient(104deg,transparent 38%,rgba(255,255,255,.42) 50%,transparent 62%);mix-blend-mode:soft-light;pointer-events:none}
.vcp-cine::after{content:"";position:absolute;z-index:3;inset:0;background:radial-gradient(ellipse 80% 80% at 62% 45%,transparent 45%,rgba(0,0,0,.55) 100%)}
@media (max-width:900px){
	.vcp-cine__stage{background:radial-gradient(ellipse 80% 55% at 50% 38%,#e4e4e2 0,#b4b4b1 50%,#5c5c5a 100%)}
	.vcp-cine .is-product img{top:12%;left:8%;right:auto;width:84%!important;height:48%!important}
	.vcp-cine .is-detail img{height:62%!important}
}

/* Nosotros: mapa */
.vcp-about__cta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:0 clamp(28px,4vw,64px);align-items:start}
.vcp-about__cta>*{grid-column:1}
.vcp-about__cta>.vcp-map{grid-column:2;grid-row:1 / span 4}
.vcp-map__frame{position:relative;aspect-ratio:4/3;background:#e6e6e6;overflow:hidden}
.vcp-map__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(1) contrast(1.05)}
.vcp .vcp-map__addr{margin:14px 0 8px!important;font-size:16px}
@media (max-width:900px){
	.vcp-about__cta{grid-template-columns:1fr}
	.vcp-about__cta>.vcp-map{grid-column:1;grid-row:auto;margin-top:28px}
}
