/*
Theme Name: Punto Inflexión
Author: Punto Inflexión
Description: Diseño propio para administración de fincas. Versión de integración y pruebas.
Version: 0.4.8
Requires PHP: 8.0
Text Domain: punto-inflexion
*/

/* Controles cómodos en móvil y cuadros de contacto que permiten desplazarse. */
dialog{max-height:90vh;max-height:90dvh;overflow-y:auto;overscroll-behavior:contain}
.row strong{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
footer a+a{margin-left:18px}
@media(max-width:480px){
 .fields{grid-template-columns:minmax(0,1fr)!important}
 input[type=number],input[type=text],input[type=password],input[type=tel]{font-size:16px}
 dialog{padding:24px!important}
 .checks label{align-items:flex-start!important}
 .checks input[type=checkbox]{flex-shrink:0}
}

:root{--blue:#007c9e;--ink:#173641;--line:#dbe4e7;--pale:#eef5f7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.6 Arial,sans-serif;color:var(--ink);background:white}a{color:inherit}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}.wrap{max-width:1200px;margin:auto;padding:0 32px}.top{background:#173641;color:white;font-size:12px;letter-spacing:.04em}.top .wrap{display:flex;justify-content:space-between;padding-top:8px;padding-bottom:8px}.brand{display:flex;justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px}.brand img{width:185px;height:106px;object-fit:contain}.brand p{font-size:13px;color:#627781;text-align:right}.brand strong{font-size:16px;color:var(--ink)}nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}nav .wrap{display:flex;gap:38px;align-items:center}nav a{padding:17px 0;text-decoration:none;font-size:14px;font-weight:bold}nav a:hover{color:var(--blue)}nav .login{margin-left:auto;color:var(--blue)}.hero{background:var(--pale);overflow:hidden}.hero .wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;min-height:390px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:bold;color:var(--blue)}h1{font-size:48px;line-height:1.12;letter-spacing:-.035em;max-width:620px;margin:18px 0}h2{font-size:30px;line-height:1.2;letter-spacing:-.025em;margin:12px 0 24px}h3{font-size:19px;line-height:1.3}.hero p{max-width:500px;color:#506975}.btn{display:inline-block;background:var(--blue);color:white;border:0;padding:13px 22px;text-decoration:none;font-weight:bold;font-size:14px}.btn:hover{background:#005f79}.hero .btn{margin:12px 0 25px}.city{width:100%;height:320px}.quick{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.quick a{padding:28px 20px;text-decoration:none;border-right:1px solid var(--line);display:flex;align-items:center;gap:15px;font-size:14px;font-weight:bold}.quick a:first-child{border-left:1px solid var(--line)}.quick span{font-size:24px;color:var(--blue)}.quick a:hover{background:var(--pale)}section{padding:64px 0}.section-head{display:flex;justify-content:space-between;align-items:end}.section-head p{max-width:390px;color:#627781;font-size:14px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service{border-top:3px solid var(--blue);padding:20px 0}.service b{font-size:12px;color:var(--blue)}.service p{color:#627781;font-size:14px}.calc-section{background:var(--pale)}.calc-grid{display:grid;grid-template-columns:1fr 340px;gap:32px}.formbox,.result{background:white;padding:30px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;font-weight:bold}input[type=number],input[type=text],input[type=password]{display:block;border:1px solid #b6c7ce;background:white;border-radius:0;padding:10px;width:100%;margin-top:7px;color:var(--ink)}input:focus{outline:2px solid var(--blue);outline-offset:2px}.checks{border-top:1px solid var(--line);margin-top:26px;padding-top:20px;display:grid;gap:13px}.checks label{font-weight:normal;display:flex;gap:10px;align-items:center}input[type=checkbox]{accent-color:var(--blue);width:18px;height:18px}.result{align-self:stretch;border-top:4px solid var(--blue)}.price{font-size:48px;line-height:1.2;letter-spacing:-.04em;font-weight:bold;margin:24px 0 3px}.muted{font-size:12px;color:#627781}.rows{margin:24px 0;font-size:13px}.row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:8px 0}.result .btn{width:100%;text-align:center}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about p{color:#506975}.coverage{background:var(--pale);padding:30px;border-left:3px solid var(--blue)}.coverage span{display:inline-block;background:white;margin:5px;padding:6px 12px;font-size:13px}.contact{background:var(--ink);color:white}.contact .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.contact p{color:#c6d6db}.contact h2{margin-bottom:10px}footer{padding:25px 0;font-size:12px;color:#627781}footer .wrap{display:flex;justify-content:space-between;gap:20px}dialog{border:0;box-shadow:0 15px 80px #17364155;max-width:430px;width:90%;padding:35px;color:var(--ink)}dialog::backdrop{background:#102f3bcc}dialog label{margin:17px 0}dialog .btn{width:100%;margin:12px 0}.close{float:right;background:none;border:0;font-size:25px}.notice{font-size:13px;color:#506975}.demo{font-size:11px;background:#f4eede;color:#65572e;text-align:center;padding:6px}.print-only{display:none}@media(max-width:760px){.wrap{padding:0 20px}.top .wrap span:last-child,.brand p{display:none}.brand img{width:150px;height:85px}nav .wrap{gap:18px;flex-wrap:wrap}nav a{font-size:12px;padding:12px 0}nav .login{margin-left:0}.hero .wrap{grid-template-columns:1fr;gap:0;padding-top:35px}.city{height:220px}h1{font-size:37px}.quick{grid-template-columns:1fr 1fr}.quick a{font-size:12px;padding:20px 12px;border-bottom:1px solid var(--line)}section{padding:40px 0}.section-head{display:block}.services,.calc-grid,.about{grid-template-columns:1fr;gap:20px}.fields{gap:14px}.formbox,.result{padding:22px}.contact .wrap,footer .wrap{display:block}.contact .btn{margin-top:10px}}@media print{body>*{display:none!important}.print-only{display:block!important;padding:35px}.print-only img{width:160px}.print-only table{width:100%;border-collapse:collapse}.print-only td{padding:10px;border-bottom:1px solid #ddd}.print-only h1{font-size:28px}}

@page{size:A4;margin:14mm 16mm}
@media print{
html,body{background:#fff!important;font-family:Arial,sans-serif;color:#555555;print-color-adjust:exact;-webkit-print-color-adjust:exact}
.print-only{padding:0!important;font-size:10pt;line-height:1.5}
.quote-head{display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid #0099bd;padding-bottom:20px;margin-bottom:28px}
.print-only .quote-head img{width:145px;height:110px;object-fit:contain}
.quote-brand{text-align:right;font-size:9pt;color:#777777}.quote-brand strong{display:block;color:#555555;font-size:13pt;margin-bottom:5px}
.quote-kicker{text-transform:uppercase;letter-spacing:2px;font-size:8pt;color:#0099bd;font-weight:bold}
.print-only h1{font-size:29pt;line-height:1.1;margin:9px 0 12px;letter-spacing:-1px}
.quote-intro{color:#777777;font-size:10pt;margin-bottom:24px;max-width:480px}
.quote-meta{display:grid;grid-template-columns:1.5fr 1fr;background:#edf8fb;padding:18px 20px;gap:14px 24px;margin-bottom:28px}
.quote-meta span{display:block;font-size:7pt;letter-spacing:1px;text-transform:uppercase;color:#777777;margin-bottom:5px}.quote-meta strong{font-size:10pt;overflow-wrap:anywhere}
.print-only table{width:100%;border-collapse:collapse;font-size:10pt}.print-only th{text-align:left;text-transform:uppercase;font-size:8pt;letter-spacing:1px;background:#0099bd;color:white;padding:11px 14px}.print-only td{padding:11px 14px;border-bottom:1px solid #dddddd}.print-only td:last-child,.print-only th:last-child{text-align:right;white-space:nowrap}.print-only tbody tr:nth-child(even){background:#f5f5f5}
.quote-total{display:flex;justify-content:space-between;align-items:center;background:#edf8fb;border-left:4px solid #0099bd;padding:20px;margin:22px 0 8px;break-inside:avoid}.quote-total strong{font-size:29pt;color:#0099bd;letter-spacing:-1px}.quote-total span{font-size:10pt;font-weight:bold}.quote-total small{display:block;color:#777777;font-size:8pt;font-weight:normal;margin-top:4px}.quote-tax{text-align:right;color:#777777;font-size:8pt;margin:0 0 28px}
.quote-next{border-top:1px solid #dddddd;padding-top:18px;margin-top:22px;break-inside:avoid}.quote-next h2{font-size:13pt;margin:0 0 6px}.quote-next p{font-size:9pt;color:#666666;margin:0}
.quote-legal{background:#f5f5f5;padding:13px 16px;margin-top:22px;font-size:8pt;color:#666666;break-inside:avoid}.quote-legal strong{display:block;color:#555555;margin-bottom:5px}.quote-foot{border-top:1px solid #dddddd;margin-top:22px;padding-top:10px;display:flex;justify-content:space-between;color:#777777;font-size:7pt}
}

.seo-resources details{padding:16px 0;border-bottom:1px solid var(--line)}.seo-resources summary{cursor:pointer;font-weight:bold}.seo-resources details p{max-width:850px;color:#506975}.page-copy{font-size:17px;line-height:1.8}.page-copy h2{margin-top:36px}.page-copy a,.seo-resources a{color:#007c9e;text-underline-offset:3px}.page-copy .calc-section{margin:30px -32px}.page-copy .calc-section .wrap{padding:0 24px}.page-copy .calc-grid{grid-template-columns:minmax(0,1fr) 300px}@media(max-width:760px){.page-copy .calc-grid{grid-template-columns:1fr}.page-copy .calc-section{margin:24px -20px}.page-copy{font-size:16px}.legal-content h1{font-size:32px!important}}

.result #saveStatus:not(:empty){padding:14px;background:var(--pale);border-left:3px solid var(--blue);font-size:14px}
@media(max-width:760px){footer .wrap{display:flex;flex-direction:column;align-items:flex-start;gap:12px}footer .wrap>span:last-child{display:flex;flex-wrap:wrap;gap:10px 20px}footer a+a{margin-left:0}}

.pi-whatsapp{position:fixed;right:20px;bottom:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:50;display:flex;align-items:center;gap:9px;padding:13px 19px;border-radius:30px;background:#128345;color:#fff;text-decoration:none;font-weight:bold;font-size:15px;box-shadow:0 4px 18px #17364140}.pi-whatsapp:hover{background:#0b6835}.pi-whatsapp:focus-visible{outline:3px solid var(--ink);outline-offset:4px}footer{padding-bottom:100px}@media(max-width:760px){.pi-whatsapp{right:16px;padding:12px 16px;font-size:14px}}@media print{.pi-whatsapp{display:none!important}}

.pi-whatsapp svg{display:block;flex-shrink:0;overflow:visible}
