<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Reformas Pedrezuela | Reformas Integrales · Carpintería PVC y Aluminio</title>
<meta name="description" content="Reformas integrales, carpintería en PVC y aluminio en Pedrezuela y Sierra Norte de Madrid. Presupuesto sin compromiso, garantía real y equipo propio.">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Work+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<style>
:root{
--charcoal:#132430;
--charcoal-2:#1B3140;
--steel:#2E5266;
--steel-2:#3A6780;
--cream:#F0F6FA;
--cream-dim:#DCE9F0;
--brass:#5AACDE;
--brass-light:#8FCBF0;
--brick:#1F6FA6;
--brick-light:#3A93CE;
--alu:#A9C9DA;
--ink:#101E27;
--line: rgba(240,246,250,0.14);
--line-dark: rgba(16,30,39,0.12);
--radius: 4px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
font-family:'Work Sans', sans-serif;
background:var(--cream);
color:var(--ink);
line-height:1.55;
overflow-x:hidden;
}
h1,h2,h3,h4{
font-family:'Oswald', sans-serif;
text-transform:uppercase;
letter-spacing:0.02em;
line-height:1.08;
font-weight:600;
}
.mono{ font-family:'IBM Plex Mono', monospace; letter-spacing:0.03em; }
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
.wrap{max-width:1180px; margin:0 auto; padding:0 24px;}
.btn{
display:inline-flex; align-items:center; gap:10px;
padding:16px 30px;
font-family:'Oswald', sans-serif;
font-size:15px; text-transform:uppercase; letter-spacing:0.06em;
border-radius:var(--radius);
border:2px solid transparent;
cursor:pointer;
transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
font-weight:600;
white-space:nowrap;
}
.btn:active{ transform:translateY(1px) scale(.98); }
.btn-brass{
background:var(--brass); color:var(--ink);
box-shadow:0 6px 0 0 #2E6E96;
}
.btn-brass:hover{ background:var(--brass-light); transform:translateY(-2px); box-shadow:0 8px 0 0 #2E6E96;}
.btn-ghost{
border-color:var(--cream); color:var(--cream);
}
.btn-ghost:hover{ background:var(--cream); color:var(--ink); }
.btn-dark{
background:var(--ink); color:var(--cream);
box-shadow:0 6px 0 0 #000;
}
.btn-dark:hover{ transform:translateY(-2px); box-shadow:0 8px 0 0 #000;}
.eyebrow{
font-family:'IBM Plex Mono', monospace;
text-transform:uppercase;
letter-spacing:0.16em;
font-size:12.5px;
color:var(--brass);
display:flex; align-items:center; gap:10px;
margin-bottom:14px;
}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--brass);}
/* ---------- HEADER ---------- */
header{
position:fixed; top:0; left:0; right:0; z-index:100;
background:rgba(27,26,24,0.92);
backdrop-filter:blur(6px);
border-bottom:1px solid var(--line);
}
.nav{ display:flex; align-items:center; justify-content:space-between; padding:16px 24px; max-width:1180px; margin:0 auto;}
.logo{ display:flex; flex-direction:column; color:var(--cream); }
.logo b{font-family:'Oswald'; font-size:20px; letter-spacing:0.03em; text-transform:uppercase;}
.logo span{font-family:'IBM Plex Mono'; font-size:10px; color:var(--brass); letter-spacing:0.18em; text-transform:uppercase;}
.nav-links{ display:flex; gap:30px; align-items:center;}
.nav-links a{
color:var(--cream-dim); font-size:14px; font-family:'Oswald';
text-transform:uppercase; letter-spacing:0.05em;
position:relative; padding:4px 0;
}
.nav-links a::after{
content:""; position:absolute; left:0; bottom:-2px; width:0; height:2px; background:var(--brass);
transition:width .2s ease;
}
.nav-links a:hover::after{ width:100%; }
.nav-cta{display:flex; gap:12px; align-items:center;}
.nav-cta .btn{ padding:11px 20px; font-size:13px;}
.burger{ display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none;}
.burger span{width:26px; height:2px; background:var(--cream);}
/* ---------- HERO ---------- */
.hero{
position:relative;
min-height:100vh;
display:flex; align-items:center;
padding-top:110px;
overflow:hidden;
background:var(--charcoal);
}
.hero-split{
position:absolute; inset:0; z-index:0;
}
.hero-split .side{
position:absolute; top:0; bottom:0; width:60%;
}
.hero-split .brickside{
left:0;
background:
repeating-linear-gradient(0deg, rgba(0,0,0,0.16) 0 3px, transparent 3px 30px),
repeating-linear-gradient(90deg, rgba(0,0,0,0.22) 0 2px, transparent 2px 74px),
linear-gradient(160deg, #2E5A76, #143040 70%);
clip-path: polygon(0 0, 68% 0, 46% 100%, 0% 100%);
opacity:.9;
}
.hero-split .aluside{
right:0;
background:
repeating-linear-gradient(100deg, rgba(255,255,255,0.05) 0 2px, transparent 2px 9px),
linear-gradient(150deg, #3c4d59, #202b32 75%);
clip-path: polygon(46% 0, 100% 0, 100% 100%, 24% 100%);
}
.hero-split::after{
content:""; position:absolute; inset:0;
background:linear-gradient(180deg, rgba(20,19,17,0.35), rgba(20,19,17,0.78) 75%, var(--charcoal) 100%);
}
.hero-inner{ position:relative; z-index:2; width:100%; }
.hero-badge{
display:inline-flex; align-items:center; gap:8px;
background:rgba(244,241,233,0.08); border:1px solid var(--line);
padding:8px 16px; border-radius:30px;
font-family:'IBM Plex Mono'; font-size:12px; color:var(--cream-dim);
margin-bottom:26px; letter-spacing:.04em;
}
.hero-badge b{color:var(--brass);}
.hero h1{
color:var(--cream); font-size:clamp(38px, 6.4vw, 78px);
max-width:900px;
}
.hero h1 em{ font-style:normal; color:var(--brass);}
.hero p.lead{
color:var(--cream-dim); font-size:18px; max-width:560px; margin:22px 0 34px;
font-weight:400;
}
.hero-ctas{ display:flex; gap:16px; flex-wrap:wrap; }
.hero-stats{
display:flex; gap:40px; margin-top:60px; flex-wrap:wrap;
}
.hero-stats div{ color:var(--cream);}
.hero-stats b{ display:block; font-family:'Oswald'; font-size:34px; color:var(--brass);}
.hero-stats span{ font-family:'IBM Plex Mono'; font-size:11.5px; text-transform:uppercase; letter-spacing:.08em; color:var(--cream-dim);}
/* image placeholders */
.img-slot{
position:relative;
background:repeating-linear-gradient(45deg, rgba(20,19,17,0.045) 0 12px, rgba(20,19,17,0.09) 12px 24px);
border:2px dashed rgba(20,19,17,0.3);
border-radius:var(--radius);
display:flex; flex-direction:column; align-items:center; justify-content:center;
text-align:center; gap:8px; color:rgba(20,19,17,0.55);
padding:20px;
}
.img-slot.dark{
background:repeating-linear-gradient(45deg, rgba(244,241,233,0.04) 0 12px, rgba(244,241,233,0.08) 12px 24px);
border-color:rgba(244,241,233,0.28); color:rgba(244,241,233,0.6);
}
.img-slot svg{ width:34px; height:34px; opacity:.7;}
.img-slot small{ font-family:'IBM Plex Mono'; font-size:11px; letter-spacing:.04em; max-width:220px;}
/* ---------- SECTION GENERIC ---------- */
section{ padding:110px 0; }
.section-head{ max-width:640px; margin-bottom:60px; }
.section-head h2{ font-size:clamp(30px,4vw,46px); }
.section-head p{ color:#4b473f; font-size:17px; margin-top:16px; }
/* ---------- SERVICIOS ---------- */
.services-grid{
display:grid; grid-template-columns:1fr 1fr; gap:28px;
}
.service-card{
background:var(--charcoal); color:var(--cream);
border-radius:8px; padding:40px 36px; position:relative; overflow:hidden;
display:flex; flex-direction:column; gap:22px;
border-top:4px solid var(--brick);
transition:transform .25s ease;
}
.service-card.alu-card{ border-top-color:var(--alu); }
.service-card:hover{ transform:translateY(-6px); }
.service-card h3{ color:var(--cream); font-size:26px; }
.service-card .tag{
font-family:'IBM Plex Mono'; font-size:11.5px; letter-spacing:.08em; text-transform:uppercase;
}
.service-card.brick-card .tag{ color:var(--brick-light);}
.service-card.alu-card .tag{ color:var(--alu);}
.service-card ul{ list-style:none; display:flex; flex-direction:column; gap:10px;}
.service-card li{ display:flex; gap:10px; font-size:14.5px; color:var(--cream-dim); align-items:flex-start;}
.service-card li::before{content:"—"; color:var(--brass); flex-shrink:0;}
.service-card .img-slot{ height:170px; }
.service-card .btn{ align-self:flex-start; margin-top:6px;}
/* ---------- PROCESO ---------- */
.process{ background:var(--charcoal-2); color:var(--cream); }
.process .section-head p{ color:var(--cream-dim);}
.process .section-head h2{ color:var(--cream);}
.steps{
display:grid; grid-template-columns:repeat(4,1fr); gap:0;
counter-reset:step;
}
.step{
padding:30px 24px; border-left:1px solid var(--line); position:relative;
}
.step:first-child{ border-left:none;}
.step .num{
font-family:'IBM Plex Mono'; color:var(--brass); font-size:13px; margin-bottom:18px; display:block;
}
.step h4{ color:var(--cream); font-size:19px; margin-bottom:10px;}
.step p{ color:var(--cream-dim); font-size:14.5px; }
/* ---------- GALERIA ---------- */
.gallery-grid{
display:grid; grid-template-columns:repeat(4, 1fr); grid-auto-rows:200px; gap:14px;
}
.gallery-grid .img-slot:nth-child(1){ grid-column:span 2; grid-row:span 2;}
.gallery-grid .img-slot:nth-child(6){ grid-column:span 2;}
.gallery-filters{ display:flex; gap:10px; margin-bottom:34px; flex-wrap:wrap;}
.filter-btn{
font-family:'Oswald'; text-transform:uppercase; letter-spacing:.04em; font-size:13px;
padding:9px 18px; border-radius:30px; border:1.5px solid var(--ink); background:transparent;
cursor:pointer; transition:all .18s ease;
}
.filter-btn.active, .filter-btn:hover{ background:var(--ink); color:var(--cream); }
/* ---------- CALCULADORA ---------- */
.calc-section{ background:var(--cream-dim); }
.calc-box{
background:var(--charcoal); border-radius:10px; padding:48px; color:var(--cream);
display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center;
}
.calc-form label{
font-family:'IBM Plex Mono'; font-size:11.5px; text-transform:uppercase; letter-spacing:.08em;
color:var(--brass); display:block; margin-bottom:8px; margin-top:22px;
}
.calc-form label:first-child{ margin-top:0;}
.calc-form select, .calc-form input[type=range]{
width:100%; padding:12px 14px; border-radius:4px; border:1px solid var(--line);
background:var(--charcoal-2); color:var(--cream); font-family:'Work Sans'; font-size:15px;
}
.range-value{ font-family:'IBM Plex Mono'; color:var(--brass); font-size:14px; margin-top:6px; display:block;}
.calc-result{
background:var(--charcoal-2); border-radius:8px; padding:30px; text-align:center;
border:1px solid var(--line);
}
.calc-result span{ font-family:'IBM Plex Mono'; font-size:12px; color:var(--cream-dim); text-transform:uppercase; letter-spacing:.08em;}
.calc-result b{ font-family:'Oswald'; font-size:46px; color:var(--brass); display:block; margin:12px 0;}
.calc-result small{ color:var(--cream-dim); font-size:12.5px; display:block; margin-bottom:22px;}
/* ---------- TESTIMONIOS ---------- */
.testi-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.testi-card{
background:#fff; border:1px solid var(--line-dark); border-radius:8px; padding:30px;
display:flex; flex-direction:column; gap:16px;
}
.stars{ color:var(--brass); font-size:16px; letter-spacing:2px;}
.testi-card p{ font-size:15px; color:#3a372f; font-style:italic;}
.testi-who{ display:flex; align-items:center; gap:12px; margin-top:auto;}
.avatar{
width:42px; height:42px; border-radius:50%; background:var(--brick);
display:flex; align-items:center; justify-content:center; color:#fff; font-family:'Oswald'; font-size:15px;
flex-shrink:0;
}
.testi-who b{ display:block; font-size:14px;}
.testi-who span{ font-family:'IBM Plex Mono'; font-size:11.5px; color:#6b6759;}
/* ---------- ZONA ---------- */
.zone-list{ display:flex; flex-wrap:wrap; gap:12px; margin-top:26px;}
.zone-chip{
font-family:'IBM Plex Mono'; font-size:13px; padding:9px 16px; border-radius:30px;
background:#fff; border:1px solid var(--line-dark);
}
.zone-chip.here{ background:var(--brass); border-color:var(--brass); color:var(--ink); font-weight:600;}
/* ---------- YOUTUBE ---------- */
.youtube-section{
background:var(--charcoal); color:var(--cream); position:relative; overflow:hidden;
}
.yt-flex{ display:grid; grid-template-columns:1.1fr 1fr; gap:56px; align-items:center;}
.yt-video{
aspect-ratio:16/9; border-radius:8px; overflow:hidden; border:1px solid var(--line);
}
.yt-video iframe{ width:100%; height:100%; border:none;}
.yt-copy p{ color:var(--cream-dim); font-size:17px; margin:20px 0 30px;}
.yt-cta{ display:flex; gap:16px; flex-wrap:wrap; align-items:center;}
.yt-btn{
background:#FF0000; color:#fff; box-shadow:0 6px 0 0 #a60000;
}
.yt-btn:hover{ background:#ff2b2b; transform:translateY(-2px); box-shadow:0 8px 0 0 #a60000;}
.yt-sub{ display:flex; gap:10px; align-items:center; color:var(--cream-dim); font-family:'IBM Plex Mono'; font-size:13px;}
/* ---------- FAQ ---------- */
.faq-item{ border-bottom:1px solid var(--line-dark); }
.faq-q{
display:flex; justify-content:space-between; align-items:center; gap:20px;
padding:24px 0; cursor:pointer; font-family:'Oswald'; font-size:17px; letter-spacing:.01em;
}
.faq-q .icon{
width:26px; height:26px; border:1.5px solid var(--ink); border-radius:50%; flex-shrink:0;
display:flex; align-items:center; justify-content:center; font-size:16px; transition:transform .25s ease;
}
.faq-item.open .faq-q .icon{ transform:rotate(45deg);}
.faq-a{ max-height:0; overflow:hidden; transition:max-height .3s ease;}
.faq-a p{ padding-bottom:24px; color:#4b473f; font-size:15px; max-width:80%;}
/* ---------- CTA FINAL ---------- */
.final-cta{
background:linear-gradient(120deg, var(--brick) 0%, var(--brick) 45%, var(--steel) 55%, var(--steel) 100%);
color:#fff; text-align:center; position:relative;
}
.final-cta h2{ color:#fff; font-size:clamp(30px,5vw,52px); max-width:720px; margin:0 auto 18px;}
.final-cta p{ color:rgba(255,255,255,0.85); max-width:520px; margin:0 auto 36px; font-size:17px;}
.final-ctas{ display:flex; gap:16px; justify-content:center; flex-wrap:wrap;}
/* ---------- FOOTER ---------- */
footer{ background:var(--ink); color:var(--cream-dim); padding:70px 0 30px;}
.foot-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:50px; border-bottom:1px solid var(--line);}
.foot-grid h4{ color:var(--cream); font-size:15px; margin-bottom:18px;}
.foot-grid p, .foot-grid a{ font-size:14px; color:var(--cream-dim); display:block; margin-bottom:10px;}
.foot-grid a:hover{ color:var(--brass);}
.foot-logo{ font-family:'Oswald'; font-size:24px; text-transform:uppercase; color:var(--cream); margin-bottom:14px;}
.foot-social{ display:flex; gap:14px; margin-top:16px;}
.foot-social a{ width:38px; height:38px; border:1px solid var(--line); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0;}
.foot-bottom{ padding-top:24px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; font-size:12.5px; color:#6b6759; font-family:'IBM Plex Mono';}
/* ---------- FLOATING CTA ---------- */
.floating-cta{
position:fixed; bottom:22px; right:22px; z-index:200;
display:flex; flex-direction:column; gap:12px; align-items:flex-end;
}
.fab{
width:60px; height:60px; border-radius:50%; display:flex; align-items:center; justify-content:center;
box-shadow:0 8px 20px rgba(0,0,0,0.35); cursor:pointer; border:none;
transition:transform .2s ease;
}
.fab:hover{ transform:scale(1.08);}
.fab.whatsapp{ background:#25D366; }
.fab.call{ background:var(--brass); }
.fab svg{ width:28px; height:28px; fill:#fff;}
.mobile-bar{
display:none; position:fixed; bottom:0; left:0; right:0; z-index:150;
background:var(--charcoal); border-top:1px solid var(--line);
padding:12px 16px; gap:10px;
}
.mobile-bar .btn{ flex:1; justify-content:center; padding:14px 10px; font-size:13px;}
[data-reveal]{ opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease;}
[data-reveal].in{ opacity:1; transform:translateY(0);}
@media (max-width: 980px){
.nav-links, .nav-cta .btn-ghost{ display:none;}
.burger{ display:flex;}
.services-grid{ grid-template-columns:1fr;}
.steps{ grid-template-columns:1fr 1fr;}
.step{ border-left:none; border-top:1px solid var(--line);}
.step:nth-child(1), .step:nth-child(2){ border-top:none;}
.gallery-grid{ grid-template-columns:repeat(2,1fr);}
.gallery-grid .img-slot:nth-child(1){ grid-column:span 2;}
.calc-box{ grid-template-columns:1fr;}
.yt-flex{ grid-template-columns:1fr;}
.testi-grid{ grid-template-columns:1fr;}
.foot-grid{ grid-template-columns:1fr 1fr;}
.mobile-bar{ display:flex;}
.faq-a p{ max-width:100%;}
body{ padding-bottom:70px;}
}
@media (prefers-reduced-motion: reduce){
*{ transition:none !important; scroll-behavior:auto !important;}
}
</style>
</head>
<body>
<!-- ================= HEADER ================= -->
<header>
<div class="nav">
<div class="logo">
<b>Reformas Pedrezuela</b>
<span>Integrales · PVC · Aluminio</span>
</div>
<nav class="nav-links">
<a href="#servicios">Servicios</a>
<a href="#proceso">Proceso</a>
<a href="#galeria">Trabajos</a>
<a href="#presupuesto">Presupuesto</a>
<a href="#youtube">Vídeos</a>
<a href="#faq">FAQ</a>
</nav>
<div class="nav-cta">
<a href="tel:+34616633276" class="btn btn-ghost">📞 Llamar</a>
<a href="#presupuesto" class="btn btn-brass">Pide presupuesto</a>
</div>
<button class="burger" aria-label="Abrir menú" onclick="document.querySelector('.nav-links').classList.toggle('open')"><span></span><span></span><span></span></button>
</div>
</header>
<!-- ================= HERO ================= -->
<section class="hero">
<div class="hero-split">
<div class="side brickside"></div>
<div class="side aluside"></div>
</div>
<div class="wrap hero-inner">
<div class="hero-badge">✓ <b>+15 años</b> reformando casas en la Sierra Norte de Madrid</div>
<h1>Tu casa,<br>hecha <em>a tu medida.</em><br>Sin sorpresas.</h1>
<p class="lead">Reformas integrales y carpintería en PVC y aluminio en Pedrezuela y toda la Sierra Norte. Un único equipo, un único presupuesto, un único responsable de principio a fin.</p>
<div class="hero-ctas">
<a href="tel:+34616633276" class="btn btn-brass">📞 Llamar ahora</a>
<a href="https://wa.me/34616633276" target="_blank" class="btn btn-ghost">💬 Presupuesto por WhatsApp</a>
</div>
<div class="hero-stats">
<div><b>+320</b><span>Reformas entregadas</span></div>
<div><b>4,9★</b><span>Valoración media</span></div>
<div><b>10</b><span>Años de garantía real</span></div>
<div><b>48h</b><span>Para tu presupuesto</span></div>
</div>
</div>
</section>
<!-- ================= SERVICIOS ================= -->
<section id="servicios">
<div class="wrap">
<div class="section-head" data-reveal>
<div class="eyebrow">Lo que hacemos</div>
<h2>Dos oficios, un solo equipo</h2>
<p>No subcontratamos a desconocidos. El mismo equipo que tira el tabique es el que instala tu ventana. Eso significa menos interlocutores, menos fallos de coordinación y una obra que avanza de verdad.</p>
</div>
<div class="services-grid">
<article class="service-card brick-card" data-reveal>
<span class="tag">01 — Obra</span>
<h3>Reformas integrales</h3>
<div class="img-slot dark">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M3 9l9-6 9 6v11a1 1 0 01-1 1h-5v-7H9v7H4a1 1 0 01-1-1z"/></svg>
<small>Espacio para foto: cocina o baño reformado (antes / después)</small>
</div>
<ul>
<li>Cocinas y baños completos, llave en mano</li>
<li>Reformas de vivienda al completo: albañilería, electricidad, fontanería</li>
<li>Suelos, tabiquería, pintura y acabados</li>
<li>Rehabilitación de chalets y casas de campo en la Sierra</li>
</ul>
<a href="#presupuesto" class="btn btn-brass">Quiero reformar</a>
</article>
<article class="service-card alu-card" data-reveal>
<span class="tag">02 — Carpintería</span>
<h3>PVC y aluminio</h3>
<div class="img-slot dark">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="3" y="4" width="18" height="16" rx="1"/><path d="M12 4v16M3 12h18"/></svg>
<small>Espacio para foto: ventana instalada / detalle de perfil</small>
</div>
<ul>
<li>Ventanas y puertas en PVC de alta eficiencia energética</li>
<li>Carpintería de aluminio a medida: fachadas, correderas, RPT</li>
<li>Persianas, mosquiteras y cerramientos de terraza</li>
<li>Medición y presupuesto a domicilio sin compromiso</li>
</ul>
<a href="#presupuesto" class="btn btn-brass">Quiero ventanas</a>
</article>
</div>
</div>
</section>
<!-- ================= PROCESO ================= -->
<section class="process" id="proceso">
<div class="wrap">
<div class="section-head" data-reveal>
<div class="eyebrow">Cómo trabajamos</div>
<h2>De la visita a las llaves</h2>
<p>Un proceso claro, pensado para que sepas en todo momento en qué punto está tu obra.</p>
</div>
<div class="steps">
<div class="step" data-reveal><span class="num mono">01 / VISITA</span><h4>Medimos in situ</h4><p>Vamos a tu casa en Pedrezuela o alrededores y valoramos el proyecto sin coste ni compromiso.</p></div>
<div class="step" data-reveal><span class="num mono">02 / PRESUPUESTO</span><h4>Precio cerrado</h4><p>En 48h recibes un presupuesto detallado, partida a partida. Lo que firmamos es lo que pagas.</p></div>
<div class="step" data-reveal><span class="num mono">03 / EJECUCIÓN</span><h4>Obra con calendario</h4><p>Un jefe de obra único, plazos por escrito y avisos si algo cambia. Sin desapariciones.</p></div>
<div class="step" data-reveal><span class="num mono">04 / ENTREGA</span><h4>Garantía por escrito</h4><p>Revisión final contigo delante y garantía real de hasta 10 años en obra y carpintería.</p></div>
</div>
</div>
</section>
<!-- ================= GALERIA ================= -->
<section id="galeria">
<div class="wrap">
<div class="section-head" data-reveal>
<div class="eyebrow">Trabajos realizados</div>
<h2>Antes y después</h2>
<p>Una selección de reformas y carpinterías entregadas en Pedrezuela y la Sierra Norte. Sustituye cada recuadro por tus propias fotos.</p>
</div>
<div class="gallery-filters">
<button class="filter-btn active">Todos</button>
<button class="filter-btn">Cocinas</button>
<button class="filter-btn">Baños</button>
<button class="filter-btn">Ventanas PVC</button>
<button class="filter-btn">Aluminio</button>
<button class="filter-btn">Fachadas</button>
</div>
<div class="gallery-grid">
<div class="img-slot" data-reveal><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="3" y="3" width="18" height="18" rx="2"/><circle cx="8.5" cy="8.5" r="1.5"/><path d="M21 15l-5-5L5 21"/></svg><small>Foto destacada: reforma integral completa</small></div>
<div class="img-slot" data-reveal><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="3" y="3" width="18" height="18" rx="2"/><circle cx="8.5" cy="8.5" r="1.5"/><path d="M21 15l-5-5L5 21"/></svg><small>Cocina</small></div>
<div class="img-slot" data-reveal><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="3" y="3" width="18" height="18" rx="2"/><circle cx="8.5" cy="8.5" r="1.5"/><path d="M21 15l-5-5L5 21"/></svg><small>Baño</small></div>
<div class="img-slot" data-reveal><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="3" y="3" width="18" height="18" rx="2"/><circle cx="8.5" cy="8.5" r="1.5"/><path d="M21 15l-5-5L5 21"/></svg><small>Ventana PVC</small></div>
<div class="img-slot" data-reveal><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="3" y="3" width="18" height="18" rx="2"/><circle cx="8.5" cy="8.5" r="1.5"/><path d="M21 15l-5-5L5 21"/></svg><small>Fachada aluminio</small></div>
<div class="img-slot" data-reveal><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="3" y="3" width="18" height="18" rx="2"/><circle cx="8.5" cy="8.5" r="1.5"/><path d="M21 15l-5-5L5 21"/></svg><small>Terraza acristalada</small></div>
</div>
</div>
</section>
<!-- ================= CALCULADORA ================= -->
<section class="calc-section" id="presupuesto">
<div class="wrap">
<div class="section-head" data-reveal>
<div class="eyebrow">Antes de llamar</div>
<h2>Calcula tu presupuesto orientativo</h2>
<p>Una estimación rápida para hacerte una idea. El presupuesto real y detallado te lo damos tras la visita, sin coste.</p>
</div>
<div class="calc-box" data-reveal>
<div class="calc-form">
<label for="tipo">Tipo de proyecto</label>
<select id="tipo" onchange="calcular()">
<option value="cocina">Reforma de cocina</option>
<option value="bano">Reforma de baño</option>
<option value="integral">Reforma integral de vivienda</option>
<option value="ventanas">Ventanas PVC / aluminio</option>
</select>
<label for="m2">Metros cuadrados aproximados: <span class="range-value" id="m2val">40 m²</span></label>
<input type="range" id="m2" min="6" max="200" value="40" oninput="calcular()">
<label for="nivel">Nivel de acabado</label>
<select id="nivel" onchange="calcular()">
<option value="estandar">Estándar</option>
<option value="alto">Alto standing</option>
</select>
</div>
<div class="calc-result">
<span>Presupuesto orientativo</span>
<b id="resultado">9.000 € – 12.000 €</b>
<small>Precio final tras visita técnica gratuita. No incluye imprevistos de obra oculta.</small>
<a href="https://wa.me/34616633276" target="_blank" class="btn btn-brass">Confirmar por WhatsApp</a>
</div>
</div>
</div>
</section>
<!-- ================= TESTIMONIOS ================= -->
<section>
<div class="wrap">
<div class="section-head" data-reveal>
<div class="eyebrow">Vecinos de la zona</div>
<h2>Lo que dicen en Pedrezuela</h2>
</div>
<div class="testi-grid">
<div class="testi-card" data-reveal>
<div class="stars">★★★★★</div>
<p>Cambiaron todas las ventanas de casa por PVC y se nota muchísimo en el aislamiento. Cumplieron el plazo que dijeron.</p>
<div class="testi-who"><div class="avatar">M</div><div><b>Marisa G.</b><span>Pedrezuela</span></div></div>
</div>
<div class="testi-card" data-reveal>
<div class="stars">★★★★★</div>
<p>Reforma integral de la casa entera. Un único jefe de obra, presupuesto cerrado y ni un solo susto de última hora.</p>
<div class="testi-who"><div class="avatar">J</div><div><b>Javier R.</b><span>El Molar</span></div></div>
</div>
<div class="testi-card" data-reveal>
<div class="stars">★★★★★</div>
<p>Nos hicieron cocina y baño a la vez. Trabajo limpio, avisan de todo y el resultado es mejor de lo que imaginábamos.</p>
<div class="testi-who"><div class="avatar">L</div><div><b>Laura M.</b><span>Guadalix de la Sierra</span></div></div>
</div>
</div>
<div class="zone-list" data-reveal>
<span class="zone-chip here">📍 Pedrezuela</span>
<span class="zone-chip">El Molar</span>
<span class="zone-chip">Venturada</span>
<span class="zone-chip">Guadalix de la Sierra</span>
<span class="zone-chip">San Agustín de Guadalix</span>
<span class="zone-chip">Soto del Real</span>
<span class="zone-chip">Miraflores de la Sierra</span>
<span class="zone-chip">Bustarviejo</span>
<span class="zone-chip">Talamanca de Jarama</span>
</div>
</div>
</section>
<!-- ================= YOUTUBE ================= -->
<section class="youtube-section" id="youtube">
<div class="wrap">
<div class="yt-flex">
<div class="yt-video" data-reveal>
<iframe src="https://www.youtube.com/embed/G6zlUsyecrc" title="Expertos en Reformas Integrales Sierra Norte de Madrid" allowfullscreen></iframe>
</div>
<div class="yt-copy" data-reveal>
<div class="eyebrow">Míranos trabajar</div>
<h2>Expertos en reformas integrales<br>Sierra Norte de Madrid</h2>
<p>Subimos el proceso completo de cada reforma: derribos, instalación de ventanas, acabados y el resultado final. Nada de fotos de catálogo, obra real en Pedrezuela y la Sierra Norte.</p>
<div class="yt-cta">
<a href="https://www.youtube.com/shorts/G6zlUsyecrc" target="_blank" class="btn yt-btn">▶ Ver en YouTube</a>
<span class="yt-sub">🔔 Suscríbete para ver cada reforma, semana a semana</span>
</div>
</div>
</div>
</div>
</section>
<!-- ================= FAQ ================= -->
<section id="faq">
<div class="wrap">
<div class="section-head" data-reveal>
<div class="eyebrow">Dudas frecuentes</div>
<h2>Antes de escribirnos</h2>
</div>
<div style="max-width:800px;" data-reveal>
<div class="faq-item">
<div class="faq-q" onclick="toggleFaq(this)"><span>¿La visita y el presupuesto tienen algún coste?</span><span class="icon">+</span></div>
<div class="faq-a"><p>No. Vamos a tu vivienda en Pedrezuela o alrededores, medimos y te entregamos un presupuesto detallado sin ningún compromiso.</p></div>
</div>
<div class="faq-item">
<div class="faq-q" onclick="toggleFaq(this)"><span>¿Trabajáis con subcontratas o tenéis equipo propio?</span><span class="icon">+</span></div>
<div class="faq-a"><p>Equipo propio en albañilería, fontanería, electricidad y carpintería. Coordinamos todo internamente, sin intermediarios sueltos.</p></div>
</div>
<div class="faq-item">
<div class="faq-q" onclick="toggleFaq(this)"><span>¿Cuánto tarda una reforma integral?</span><span class="icon">+</span></div>
<div class="faq-a"><p>Depende de los metros y el alcance. En la visita te damos un calendario por escrito con fecha de inicio y de entrega.</p></div>
</div>
<div class="faq-item">
<div class="faq-q" onclick="toggleFaq(this)"><span>¿Qué garantía tienen las ventanas de PVC y aluminio?</span><span class="icon">+</span></div>
<div class="faq-a"><p>Garantía de fabricante en perfiles y herrajes, más nuestra garantía de instalación. Te lo detallamos por escrito en el presupuesto.</p></div>
</div>
<div class="faq-item">
<div class="faq-q" onclick="toggleFaq(this)"><span>¿En qué zonas trabajáis además de Pedrezuela?</span><span class="icon">+</span></div>
<div class="faq-a"><p>Toda la Sierra Norte de Madrid: El Molar, Venturada, Guadalix, San Agustín, Soto del Real, Miraflores, Bustarviejo y alrededores.</p></div>
</div>
</div>
</div>
</section>
<!-- ================= CTA FINAL ================= -->
<section class="final-cta" data-reveal>
<div class="wrap">
<h2>¿Hablamos de tu reforma?</h2>
<p>Cuéntanos qué necesitas y te llamamos hoy mismo. Sin compromiso, sin letra pequeña.</p>
<div class="final-ctas">
<a href="tel:+34616633276" class="btn btn-dark">📞 Llamar ahora</a>
<a href="https://wa.me/34616633276" target="_blank" class="btn" style="background:#fff;color:var(--ink);box-shadow:0 6px 0 0 #C3D6E0;">💬 Escribir por WhatsApp</a>
</div>
</div>
</section>
<!-- ================= FOOTER ================= -->
<footer>
<div class="wrap">
<div class="foot-grid">
<div>
<div class="foot-logo">Reformas Pedrezuela</div>
<p>Reformas integrales y carpintería en PVC y aluminio en Pedrezuela y la Sierra Norte de Madrid.</p>
<div class="foot-social">
<a href="https://www.youtube.com/shorts/G6zlUsyecrc" target="_blank" aria-label="YouTube">▶</a>
<a href="#" target="_blank" aria-label="Instagram">◎</a>
<a href="https://wa.me/34616633276" target="_blank" aria-label="WhatsApp">✆</a>
</div>
</div>
<div>
<h4>Servicios</h4>
<a href="#servicios">Reformas integrales</a>
<a href="#servicios">Cocinas y baños</a>
<a href="#servicios">Ventanas PVC</a>
<a href="#servicios">Carpintería aluminio</a>
</div>
<div>
<h4>Empresa</h4>
<a href="#proceso">Cómo trabajamos</a>
<a href="#galeria">Trabajos realizados</a>
<a href="#youtube">Canal de YouTube</a>
<a href="#faq">Preguntas frecuentes</a>
</div>
<div>
<h4>Contacto</h4>
<p class="mono">📍 Pedrezuela, Madrid</p>
<p class="mono"><a href="tel:+34616633276">📞 616 633 276</a></p>
<p class="mono"><a href="mailto:info@gruponovaluz.com">✉️ info@gruponovaluz.com</a></p>
</div>
</div>
<div class="foot-bottom">
<span>© 2026 Reformas Pedrezuela. Todos los derechos reservados.</span>
<span>Reformas integrales · Carpintería PVC y aluminio · Sierra Norte de Madrid</span>
</div>
</div>
</footer>
<!-- ================= FLOATING CTA ================= -->
<div class="floating-cta">
<a href="https://wa.me/34616633276" target="_blank" class="fab whatsapp" aria-label="WhatsApp">
<svg viewBox="0 0 24 24"><path d="M12 2a10 10 0 00-8.6 15L2 22l5.2-1.4A10 10 0 1012 2zm0 18a8 8 0 01-4.1-1.1l-.3-.2-3 .8.8-2.9-.2-.3A8 8 0 1112 20zm4.4-6c-.2-.1-1.4-.7-1.6-.8s-.4-.1-.5.1-.6.8-.7.9-.2.2-.4.1a6.6 6.6 0 01-1.9-1.2 7.2 7.2 0 01-1.3-1.6c-.1-.2 0-.3.1-.4l.3-.4.2-.3v-.3c0-.1-.5-1.2-.7-1.6s-.4-.4-.5-.4h-.5a1 1 0 00-.7.3 2.9 2.9 0 00-.9 2.2 5 5 0 001.1 2.6 11.4 11.4 0 004.4 3.9c.6.3 1.1.4 1.5.6a3.6 3.6 0 001.6.1 2.7 2.7 0 001.8-1.3 2.2 2.2 0 00.1-1.3c-.1-.1-.2-.2-.4-.3z"/></svg>
</a>
<a href="tel:+34616633276" class="fab call" aria-label="Llamar">
<svg viewBox="0 0 24 24"><path d="M6.6 10.8a15.9 15.9 0 006.6 6.6l2.2-2.2a1 1 0 011-.2 11.7 11.7 0 003.7.6 1 1 0 011 1V20a1 1 0 01-1 1A17 17 0 013 4a1 1 0 011-1h3.4a1 1 0 011 1 11.7 11.7 0 00.6 3.7 1 1 0 01-.2 1z"/></svg>
</a>
</div>
<div class="mobile-bar">
<a href="tel:+34616633276" class="btn btn-dark">📞 Llamar</a>
<a href="https://wa.me/34616633276" target="_blank" class="btn btn-brass">💬 WhatsApp</a>
</div>
<script>
// Menú móvil
document.querySelectorAll('.nav-links a').forEach(a=>a.addEventListener('click',()=>{
document.querySelector('.nav-links').classList.remove('open');
}));
// FAQ accordion
function toggleFaq(el){
const item = el.parentElement;
const answer = item.querySelector('.faq-a');
const wasOpen = item.classList.contains('open');
document.querySelectorAll('.faq-item').forEach(i=>{
i.classList.remove('open');
i.querySelector('.faq-a').style.maxHeight = null;
});
if(!wasOpen){
item.classList.add('open');
answer.style.maxHeight = answer.scrollHeight + 'px';
}
}
// Galería filtros (visual, sin backend)
document.querySelectorAll('.filter-btn').forEach(btn=>{
btn.addEventListener('click',()=>{
document.querySelectorAll('.filter-btn').forEach(b=>b.classList.remove('active'));
btn.classList.add('active');
});
});
// Calculadora orientativa
const precios = {
cocina: {base:180, min:4000},
bano: {base:220, min:3500},
integral:{base:420, min:12000},
ventanas:{base:340, min:1500}
};
function calcular(){
const tipo = document.getElementById('tipo').value;
const m2 = parseInt(document.getElementById('m2').value);
document.getElementById('m2val').textContent = m2 + ' m²';
const nivel = document.getElementById('nivel').value === 'alto' ? 1.35 : 1;
const cfg = precios[tipo];
let low = Math.max(cfg.min, m2 * cfg.base * nivel);
let high = low * 1.3;
const fmt = n => Math.round(n/100)*100;
document.getElementById('resultado').textContent =
fmt(low).toLocaleString('es-ES') + ' € – ' + fmt(high).toLocaleString('es-ES') + ' €';
}
calcular();
// Reveal on scroll
const io = new IntersectionObserver((entries)=>{
entries.forEach(e=>{ if(e.isIntersecting){ e.target.classList.add('in'); io.unobserve(e.target);} });
},{threshold:0.15});
document.querySelectorAll('[data-reveal]').forEach(el=>io.observe(el));
</script>
</body>
</html>