/*
Theme Name: Obra Piscinas
Description: Tema a medida para construcción y rehabilitación de piscinas. Portada, servicios, imágenes, acabados y contacto editables desde el Personalizador. Sin dependencias obligatorias.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Author: Obra Piscinas
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: obra-piscinas
*/
:root{--ink:#193e3a;--paper:#f7f7f1;--line:#d8dfd7;--muted:#67736a;--cream:#e9ecdf;--accent:#c4d4ad;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b78446;outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.06}h2{font-size:clamp(38px,4.3vw,64px)}h3{line-height:1.15}p{line-height:1.75}em{font-weight:400}.skip{position:fixed;left:20px;top:-100px;z-index:99;padding:12px 20px;background:white}.skip:focus{top:12px}.header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:relative;z-index:5;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;line-height:.85;font-family:var(--serif);font-size:45px;letter-spacing:-.05em}.brand svg{width:43px;height:40px;fill:none;stroke:currentColor;stroke-width:1.6}.brand-sub{display:block;font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:.34em;line-height:1;margin-top:10px;padding-left:3px}.desktop-nav{display:flex;gap:31px;font-size:13px}.desktop-nav a{transition:opacity .2s}.desktop-nav a:hover{opacity:.6}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;padding:17px 23px;border:1px solid transparent;font-size:13px;line-height:1.2;font-weight:500;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.header-cta{border-color:#bac7bc;padding:14px 18px;font-size:12px}.header-cta:hover{background:var(--cream)}.menu-toggle{display:none}.mobile-nav{padding:25px 6%;background:var(--paper);position:absolute;z-index:9;width:100%;border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:10px 0}.hero{height:690px;height:clamp(560px,49vw,760px);min-height:560px;position:relative;color:#fff;isolation:isolate;overflow:hidden;background:#318b89}.hero-image{position:absolute;inset:0;z-index:-3;object-position:50% 55%;animation:hero-reveal 1.2s ease-out both}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(6,35,30,.57),rgba(7,39,33,.12) 65%),linear-gradient(0deg,rgba(4,34,29,.47),transparent 40%)}.hero-content{position:relative;padding:85px 7.1% 100px;max-width:1050px}.eyebrow{display:block;letter-spacing:.16em;font-size:10px;font-weight:500;line-height:1.5}.eyebrow.dark{color:#526652}.dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:9px;vertical-align:1px}.hero h1{font-size:clamp(58px,6.55vw,99px);margin:28px 0 23px;text-shadow:0 2px 16px #0d32271a}.hero h1 em{color:#e8edda}.hero p{font-size:16px;line-height:1.65;margin-bottom:31px;color:#fff;letter-spacing:.005em}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#e5eddf}.hero-bottom{position:absolute;bottom:27px;left:7.1%;right:7.1%;display:flex;justify-content:space-between;border-top:1px solid #ffffff5c;padding-top:18px;font-size:10px;letter-spacing:.12em}.hero-bottom a{letter-spacing:.02em;font-size:12px}.hero-bottom a span{margin-left:24px}.image-credit{position:absolute;right:18px;bottom:5px;font-size:8px;opacity:.7}.intro-strip{display:flex;justify-content:space-between;align-items:center;padding:34px 7.1%;border-bottom:1px solid var(--line)}.intro-strip p{font-family:var(--serif);font-size:27px;line-height:1.1;letter-spacing:-.025em}.intro-strip>span{font-size:13px;color:var(--muted)}.intro-strip svg{width:97px;height:30px;stroke:var(--ink);fill:none;stroke-width:1}.section{padding:108px 7.1%}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:23px}.section-heading>p{max-width:340px;color:var(--muted);font-size:14px;margin-bottom:4px}.solution-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.solution-card{min-height:403px;padding:32px 35px;display:flex;flex-direction:column;justify-content:space-between}.feature-card{background:var(--ink);color:#f6f7ee}.rehab-card{background:#e6eada}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;font-size:11px}.card-top svg{width:43px;height:43px;stroke:currentColor;stroke-width:1.25;fill:none}.small-label{display:block;font-size:9px;letter-spacing:.13em;margin-bottom:13px}.solution-card h3{font-family:var(--serif);font-size:40px;letter-spacing:-.035em}.solution-card p{font-size:13px;max-width:380px;margin-top:18px;opacity:.8;line-height:1.8}.text-link{background:none;border:0;border-bottom:1px solid #8da294;text-align:left;padding:14px 0;display:inline-flex;align-items:center;gap:30px;justify-content:space-between;font-size:12px;line-height:1.4}.text-link>span{font-size:22px;line-height:1}.text-link:hover>span{transform:translate(2px,-2px)}.text-link>span{transition:transform .2s}.solution-card .text-link{align-self:stretch;margin-top:28px;color:inherit}.specialties{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:42px;padding-top:25px}.specialties>div>span{font-size:10px;letter-spacing:.03em;color:var(--muted)}.specialties h3{font-family:var(--serif);font-size:26px;margin-top:10px;letter-spacing:-.025em}.specialties ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:13px 28px}.specialties li{font-size:11px;border-bottom:1px solid var(--line);padding:0 0 13px;display:flex;justify-content:space-between;gap:10px}.specialties li span{color:#8b9987}.renovation{display:grid;grid-template-columns:1.12fr 1fr;gap:8%;align-items:center;background:#eeefe7;padding-top:75px;padding-bottom:75px}.renovation-photo{height:610px;position:relative;overflow:hidden}.renovation-photo img{object-position:40% 50%}.renovation-photo>span{position:absolute;left:25px;bottom:23px;font-size:8px;letter-spacing:.16em;color:white;text-shadow:0 1px 6px #123}.renovation-copy h2{font-size:clamp(37px,3.8vw,57px);margin:25px 0}.renovation-copy p{font-size:13px;color:var(--muted);margin-bottom:15px;max-width:360px}.renovation-copy .text-link{min-width:240px;margin-top:6px}.renovation-copy small{display:block;font-size:9px;color:var(--muted);max-width:315px;margin-top:40px}.finish-experience{display:grid;grid-template-columns:1.25fr 1fr;border:1px solid var(--line)}.finish-visual{height:480px;position:relative;overflow:hidden;background:#5bafab}.finish-visual img{transition:filter .7s,transform .7s}.finish-visual[data-finish=azul] img{filter:hue-rotate(14deg) saturate(1.25) brightness(.9);transform:scale(1.035)}.finish-visual[data-finish=piedra] img{filter:saturate(.65) brightness(.87);transform:scale(1.07)}.finish-caption{position:absolute;bottom:21px;left:25px;color:white;font-size:9px;letter-spacing:.1em;text-shadow:0 1px 5px #123}.finish-controls{padding:36px 40px;display:flex;flex-direction:column;justify-content:center}.finish-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:36px}.swatch-tab{padding:0 0 14px;display:flex;gap:9px;align-items:center;background:none;border:0;border-bottom:2px solid transparent;font-size:11px;margin-bottom:-1px;opacity:.6}.swatch-tab.active{border-color:var(--ink);opacity:1}.swatch{width:17px;height:17px;border-radius:50%;border:1px solid #00000016}.sand{background:#d1c5ad}.blue{background:#76b4cc}.stone{background:#829087}.finish-controls h3{font-family:var(--serif);font-size:34px;letter-spacing:-.03em}.finish-controls p{font-size:12px;color:var(--muted);margin:19px 0}.material-label{font-size:9px;color:var(--muted)}.finish-controls .text-link{margin-top:21px}.finish-controls small{font-size:9px;color:var(--muted);margin-top:18px;line-height:1.6}.process{background:var(--ink);color:var(--paper)}.process .section-heading p{color:#c2cdbf}.process .eyebrow{color:#bdccae}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:65px}.step-number{font-family:var(--serif);font-size:46px;color:#aac09e;line-height:1;border-bottom:1px solid #8da29466;display:block;padding-bottom:23px;margin-bottom:26px}.process-grid h3{font-family:var(--serif);font-size:27px;letter-spacing:-.02em;margin-bottom:18px}.process-grid p{font-size:12px;color:#bdcbbd;max-width:275px}.process-note{margin-top:66px;border-top:1px solid #8da29466;padding-top:32px;display:flex;align-items:center;gap:22px}.note-icon{font-size:30px;font-weight:100}.process-note p{font-size:12px}.process-note p span{font-size:11px;color:#bdcbbd}.process-note .text-link{margin-left:auto;min-width:205px;color:inherit}.faq-section{display:grid;grid-template-columns:1fr 1.1fr;gap:7%;padding-bottom:90px}.faq-section h2{font-size:46px;margin-top:23px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;padding:21px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:13px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:23px;font-weight:300;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:12px;color:var(--muted);margin:0 25px 22px 0}.project{background:#e8edde;display:grid;grid-template-columns:1fr 1.05fr;gap:9%;padding-top:85px;padding-bottom:85px}.project h2{margin:24px 0;font-size:58px}.project h2 em{color:#6a8260}.project-intro>p{font-size:13px;color:#596b57;max-width:320px}.project-aside{margin-top:36px;padding-top:21px;border-top:1px solid #bfcbb6;max-width:320px}.project-aside>span{font-size:11px;font-weight:600}.project-aside p{font-size:11px;color:#64785f;margin-top:9px}.small-note{display:block;font-size:9px;color:#64785f;max-width:290px;margin-top:27px}fieldset{padding:0;border:0;margin:0 0 24px}legend,form label{font-size:11px;margin-bottom:10px;display:block}legend{padding:0}form label>span{color:#698463}.project-options{display:grid;gap:9px}.project-options label{margin:0}.project-options input{position:absolute;opacity:0;width:1px;height:1px}.project-options label>span{display:flex;justify-content:space-between;align-items:center;border:1px solid #bbc9b4;padding:14px 16px;color:var(--ink);font-size:12px;cursor:pointer}.project-options input:checked+span{background:var(--ink);color:var(--paper);border-color:var(--ink)}.project-options input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}.project-options label>span>span{font-size:21px;line-height:1}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row input,select,textarea{border:0;border-bottom:1px solid #b2c0a9;background:transparent;color:var(--ink);font-size:12px;padding:10px 0;width:100%;border-radius:0}input::placeholder,textarea::placeholder{color:#788571}select{height:41px;padding-right:15px}textarea{resize:vertical;min-height:90px}.field{margin-top:23px}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#2c5850}form>.button{width:100%;margin-top:24px}.form-note{font-size:9px;color:#64785f;margin-top:13px;line-height:1.5}.chosen-finish{font-size:11px;align-items:center;justify-content:space-between;margin-top:13px;border:1px solid #bbc9b4;padding:8px 12px}.chosen-finish:not([hidden]){display:flex}.chosen-finish button{border:0;background:none;font-size:20px}footer{padding:55px 7.1% 22px}.footer-main{display:flex;align-items:center;justify-content:space-between;padding-bottom:43px}.footer-main p{font-family:var(--serif);font-size:25px;letter-spacing:-.025em;line-height:1.2}.footer-main>a:last-child{font-size:11px}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding-top:19px;font-size:9px;color:var(--muted)}.footer-bottom button{background:none;border:0;padding:0;font-size:9px}dialog{border:0;background:var(--paper);color:var(--ink);padding:45px;max-width:620px;width:calc(100% - 36px);max-height:90vh;box-shadow:0 20px 120px #0003}dialog::backdrop{background:#123b36bd;backdrop-filter:blur(5px)}dialog h2{font-size:47px;margin:20px 0}dialog p{font-size:13px;color:var(--muted);margin:12px 0}.dialog-close{position:absolute;top:10px;right:16px;font-size:28px;border:0;background:none}pre{font-family:var(--sans);white-space:pre-wrap;overflow-wrap:anywhere;background:#e9edde;padding:23px;font-size:12px;line-height:1.85;margin:25px 0}.dialog-actions{display:flex;gap:12px;flex-wrap:wrap}.button-outline{background:transparent;border-color:#a6b69d}#copy-status{min-height:20px;font-size:11px;margin-bottom:0}@keyframes hero-reveal{from{transform:scale(1.035);opacity:.5}to{transform:scale(1);opacity:1}}@media(min-width:1600px){.section,.intro-strip{padding-left:max(7.1%,calc((100vw - 1380px)/2));padding-right:max(7.1%,calc((100vw - 1380px)/2))}}@media(max-width:1050px){.header{padding:0 5%;height:90px}.desktop-nav{gap:20px;font-size:11px}.header-cta{font-size:11px;gap:17px}.hero{height:630px}.hero-content{padding-top:90px}.section{padding:80px 6%}.section-heading>p{max-width:285px;font-size:12px}.renovation{gap:6%}.renovation-photo{height:510px}.finish-controls{padding:25px}.finish-tabs{gap:16px}.finish-controls h3{font-size:29px}.process-grid{gap:30px}.process-note{gap:17px}.process-note p{max-width:440px;font-size:11px}.faq-section{gap:5%}.faq-section h2{font-size:39px}.project{gap:6%}.project h2{font-size:49px}.form-row{gap:14px}}@media(max-width:760px){html{scroll-padding-top:20px}.header{height:83px;padding:0 6%}.brand{font-size:38px;gap:9px}.brand svg{width:35px}.brand-sub{font-size:7px;margin-top:9px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:42px;height:42px;border:1px solid var(--line);background:none;padding:10px}.menu-toggle span{height:1px;background:var(--ink);width:100%;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero{min-height:610px;height:calc(83svh - 83px);max-height:720px}.hero-image{object-position:61% 50%}.hero-shade{background:linear-gradient(90deg,#092b257f,transparent),linear-gradient(0deg,#092b258f,transparent 90%)}.hero-content{padding:86px 7% 100px}.hero h1{font-size:clamp(49px,9.8vw,72px);line-height:1.08;letter-spacing:-.05em;margin-top:25px}.hero .eyebrow{font-size:8px;letter-spacing:.13em}.hero p{font-size:13px;margin-top:24px;margin-bottom:28px}.button{font-size:12px;padding:16px 19px}.hero-bottom{left:7%;right:7%;bottom:25px;font-size:8px;align-items:center}.hero-bottom a{font-size:10px}.hero-bottom a span{margin-left:9px}.intro-strip{padding:29px 7%;gap:20px}.intro-strip p{font-size:23px}.intro-strip>span{font-size:10px;max-width:130px;text-align:right}.intro-strip svg{display:none}.section{padding:65px 7%}h2{font-size:40px}.section-heading{display:block;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:19px}.section-heading>p{margin-top:23px;font-size:13px;max-width:380px}.solution-grid{grid-template-columns:1fr;gap:17px}.solution-card{padding:28px;min-height:380px}.solution-card h3{font-size:39px}.solution-card p{font-size:12px}.specialties{grid-template-columns:1fr;gap:27px;margin-top:26px}.specialties h3{font-size:26px}.specialties ul{gap:16px 23px}.specialties li{font-size:10px}.renovation{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:57px}.renovation-photo{height:400px}.renovation-copy h2{font-size:42px;margin:20px 0}.renovation-copy p{max-width:100%}.renovation-copy small{margin-top:25px}.finish-experience{grid-template-columns:1fr}.finish-visual{height:330px}.finish-controls{padding:29px 26px 30px}.finish-controls h3{font-size:33px}.finish-tabs{gap:30px;margin-bottom:29px}.finish-controls p{font-size:13px}.finish-controls small{max-width:360px}.process-grid{grid-template-columns:1fr;margin-top:33px;gap:28px}.process-grid article{display:grid;grid-template-columns:46px 1fr;column-gap:23px}.step-number{font-size:35px;border:0;padding:0;margin:0;grid-row:span 2}.process-grid h3{font-size:26px;margin:0 0 13px}.process-grid p{max-width:100%;font-size:12px}.process-note{margin-top:37px;display:block;padding-top:26px}.note-icon{display:none}.process-note p{font-size:12px}.process-note .text-link{margin-top:17px;min-width:230px}.faq-section{grid-template-columns:1fr;gap:28px}.faq-section h2{font-size:39px}.faq-list summary{font-size:12px;padding:20px 0}.project{grid-template-columns:1fr;gap:35px;padding-top:60px;padding-bottom:60px}.project h2{font-size:49px;margin:21px 0}.project-intro>p{max-width:100%;font-size:13px}.project-aside{margin-top:25px;max-width:100%}.small-note{max-width:100%;margin-top:18px}.form-row{gap:20px}.form-row input,select{font-size:11px}form>.button{font-size:13px}.footer-main{flex-wrap:wrap;gap:30px;padding-bottom:30px}.footer-main p{font-size:22px}.footer-main>a:last-child{font-size:10px}.footer-bottom{flex-wrap:wrap;gap:12px;font-size:8px}.footer-bottom>span:nth-child(2){display:none}.footer-bottom button{font-size:9px}footer{padding:38px 7% 24px}dialog{padding:35px 24px}dialog h2{font-size:40px}.dialog-actions{display:grid}.dialog-actions .button{width:100%}.finish-caption{font-size:8px;left:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* WordPress integration. */
body{overflow-wrap:break-word}.custom-logo-link img{width:auto;height:53px;object-fit:contain}.brand-logo{max-width:210px;max-height:55px;width:auto;height:auto}.contact-links{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.contact-links .button{font-size:11px;padding:13px 17px}.share-actions{margin-bottom:12px}.share-actions:has(a:not([hidden])){padding-bottom:15px;border-bottom:1px solid var(--line)}[hidden]{display:none!important}.wp-page-content{max-width:1100px;margin:auto}.wp-page-content h1,.wp-page-content h2,.wp-page-content h3{margin:30px 0 18px}.wp-page-content p{margin:0 0 20px}.wp-page-content a{text-decoration:underline}.wp-page-content ul,.wp-page-content ol{padding-left:24px}.wp-page-content figure{margin:30px 0}.wp-page-content img{height:auto;max-width:100%}.wp-page-content .wp-block-image img{width:auto}.wp-page-content iframe{max-width:100%}.wp-page-content table{width:100%;border-collapse:collapse}.wp-page-content th,.wp-page-content td{border:1px solid var(--line);padding:12px}.wp-page-content .alignwide{width:100%}.wp-page-content input[type=search]{padding:13px;background:white;border:1px solid var(--line)}.wp-post-card{padding:30px 0;border-bottom:1px solid var(--line)}.wp-post-card h2{font-size:34px;margin-bottom:15px}.wp-post-card .post-meta{font-size:11px;color:var(--muted);margin-bottom:12px}.wp-page-title{margin-bottom:35px}.pagination{margin-top:35px}.page-numbers{padding:7px 12px;border:1px solid var(--line);display:inline-block}.page-numbers.current{background:var(--ink);color:white}.comments-area{margin-top:40px}.comments-area input,.comments-area textarea{width:100%;border:1px solid var(--line);padding:10px}.comments-area .submit{width:auto;padding:12px 20px;background:var(--ink);color:white;border:0}
