#cc-modal,#cc-overlay,.modal-overlay{opacity:0;visibility:hidden;position:fixed}.back-to-top{display:grid;place-items:center;z-index:998}.about h2,.about>p,.homepage .content,section>p{text-align:center}.about>*,.contact .row,.navbar,section .cards{max-width:1200px}:root{--brand:#003366;--accent:#FF7F00;--dark:#0a0a0a;--light:#fff;--muted:#ddd;--header-h:80px}*,::after,::before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Poppins,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:#f2f2f2;color:#111}a{color:inherit;text-decoration:none}header{position:fixed;inset:0 auto auto 0;z-index:1000;width:100%;background:#fff;display:flex;justify-content:center}.navbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;width:100%;padding:0 12px;height:var(--header-h)}.all-links,.all-links a,.all-links li{display:flex;height:100%}.about,section{padding:80px 0 0}.logo img{height:60px;width:auto}.socials{display:flex;justify-content:center;align-items:center;gap:14px}.socials .sicon{display:inline-flex;width:28px;height:28px;color:var(--brand);opacity:.95;align-items:center;justify-content:center;transition:opacity .2s,color .2s}.socials .sicon:hover{color:var(--accent);opacity:1}.socials svg{width:100%;height:100%}.all-links{justify-content:flex-end;align-items:stretch;gap:0}.all-links li{list-style:none}.all-links a{align-items:center;justify-content:center;padding:0 22px;line-height:1;color:var(--accent)}.all-links a:hover{background:var(--brand);color:#fff}#hamburger-btn .icon-close,#menu-toggler,#menu-toggler:checked+#hamburger-btn .icon-burger{display:none}#hamburger-btn{display:none;background:0 0;border:0;cursor:pointer;padding:10px}#hamburger-btn svg{width:32px;height:32px}#menu-toggler:checked+#hamburger-btn .icon-close{display:block}.navbar .all-links>*{margin:0!important;padding:0!important}.navbar .all-links .flex-item{display:block!important}.mobile-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:900}#menu-toggler:checked~.mobile-backdrop{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}body.cc-lock,body.modal-open,body.noscroll{overflow:hidden}.homepage{height:100vh;width:100%;position:relative;background:url("images/fontanero.webp") center 65%/cover no-repeat}.homepage::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.2)}.homepage .content{display:flex;height:85%;z-index:1;align-items:center;justify-content:center;flex-direction:column;color:#fff}.homepage .content h1{font-size:60px;font-weight:700;margin:0 0 10px}.homepage .content .text{font-size:20px;margin-bottom:50px;text-shadow:0 0 10px rgba(0,0,0,.3);line-height:1.35}.content a{color:#036;text-transform:uppercase;font-size:18px;padding:10px 30px;border-radius:5px;background:#fff;border:2px solid #fff;box-shadow:0 10px 20px rgba(0,0,0,.3);transition:.3s}.content a:hover{color:#fff;background:rgba(255,255,255,.3)}section{display:flex;flex-direction:column;align-items:center}section h2{font-size:2rem}section .cards{display:flex;flex-wrap:wrap;justify-content:space-between;padding:0 10px;margin-top:50px}section .cards .card{background:#fff;padding:40px 15px;width:calc(100%/3 - 30px);border-radius:5px;box-shadow:0 5px 10px rgba(0,0,0,.04);margin-bottom:40px;list-style:none;text-align:center}.cards .card p{padding:0 15px;margin-top:5px}.services .card img{width:160px;height:160px;aspect-ratio:1/1;border-radius:50%;object-fit:cover;display:block;margin:0 auto 20px}.nuestrotrabajo .card img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:7px;padding-bottom:10px}@media (max-width:860px){.contact form button,.contact form input,.contact form textarea,.navbar .all-links a{box-sizing:border-box!important;width:100%!important}:root{--header-h:88px}.navbar{grid-template-columns:1fr auto!important;justify-content:space-between!important}.navbar .logo{grid-column:1;justify-self:start}.navbar .logo img{height:80px}#hamburger-btn{grid-column:2;justify-self:end;display:block;padding:10px;line-height:1;z-index:1001;margin:0!important}#hamburger-btn svg{width:40px;height:40px}#hamburger-btn .icon-close,#menu-toggler:checked+#hamburger-btn .icon-burger{display:none}#menu-toggler:checked+#hamburger-btn .icon-close{display:block}.all-links:not(.mobile-active),.socials{display:none!important}.navbar .all-links,.navbar .all-links a,.navbar .all-links li{display:block!important;margin:0!important}.navbar .all-links{position:fixed;left:-100%;top:var(--header-h);width:300px;height:calc(100vh - var(--header-h));background:#333;transition:left .3s;z-index:1000;overflow-y:auto;padding:0!important}.navbar #menu-toggler:checked~.all-links{left:0}.navbar .all-links li{width:100%!important;list-style:none!important;padding:0!important;height:auto!important;min-height:0!important;border:none!important}.navbar .all-links li+li{border-top:1px solid rgba(255,255,255,.05)!important;margin-top:0!important}.navbar .all-links a{min-height:44px!important;padding:12px 22px!important;color:#ff7f00!important;text-decoration:none!important;font-size:17px!important;line-height:1.2!important;font-weight:400;background:0 0!important;border:none!important;transition:background-color .2s}.navbar .all-links a:hover{color:#fff!important;background-color:#036!important}.contact .row{flex-direction:column!important;margin:40px 0 60px!important;gap:30px!important}.contact .row .col{width:100%!important;padding:0 10px!important;max-width:100%!important}.contact .contact-details{display:flex!important;flex-direction:column!important;gap:15px!important}.contact .contact-details p{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 15px!important;width:100%!important}.content a,.homepage .content .text{font-size:17px}section .cards .card{width:calc(100%/2 - 15px);margin-bottom:30px}.homepage .content h1{font-size:40px}.content a{padding:9px 20px}}@media (max-width:560px){section .cards .card{width:100%;margin-bottom:30px}}.about>*{margin-inline:auto;padding-inline:16px}.about h2{margin:8px 0 12px}.about>p{margin:0 0 20px}.about .row{margin:14px 0 18px}.about .row h3{margin:10px 0 8px}.about .row p,.site-footer .footer-links li{margin:0}.about .row p+h3{margin-top:14px}.about .row p:last-child,.about .row:last-child{margin-bottom:0}.contact .row{margin:60px 0 90px;display:flex;width:100%;align-items:center;justify-content:space-between}.contact .row .col{width:calc(100%/2 - 50px);padding:0 10px}.contact .col p{margin-bottom:10px}.contact form input,.contact form textarea{width:100%;font-size:16px;padding:10px;outline:0;border:1px solid #bfbfbf}.contact form input{height:45px;margin-bottom:20px}.contact form textarea{height:150px;resize:vertical}.contact form button{margin-top:10px;padding:10px 20px;font-size:17px;color:#fff;background:#333;border:none;border-radius:5px;cursor:pointer;transition:.2s}.contact form button:hover{background:#525252}.contact .contact-details p{display:flex;align-items:center;gap:10px;line-height:1.4}.icon{width:1em;height:1em;vertical-align:-.125em;fill:currentColor;display:inline-block;margin-right:.5rem}.back-to-top,.whatsappshortcut{right:16px;width:48px;height:48px;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.2);position:fixed}.contact .contact-details .icon{width:22px;height:22px;flex:0 0 22px;color:#7a7a7a}.back-to-top{bottom:16px;border-radius:50%;display:grid;background:#036;color:#fff}.back-to-top:hover{background:#0b5ea7}.site-footer{background:var(--dark);color:#eee;padding:22px 16px}.site-footer .footer-inner{max-width:1200px;width:100%;margin:0 auto}.site-footer .footer-links ul{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:1fr;row-gap:8px}.site-footer .footer-links a{color:var(--accent);text-decoration:none;display:inline}.site-footer .footer-links a:hover{text-decoration:underline}@media (min-width:900px){.site-footer .footer-links ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;width:100%}.site-footer .footer-links li:nth-child(odd){justify-self:start;text-align:left}.site-footer .footer-links li:nth-child(2n){justify-self:end;text-align:right}}.cc-col.cc-control input,.modal-body li:before{width:22px;height:22px}.footer-bottom{display:flex;justify-content:center;align-items:center;gap:12px;color:#ddd;font-size:.95rem;line-height:1.4}.footer-bottom a{color:#9ec3ff}.footer-bottom a:hover{color:#cfe1ff}.footer-bottom .sep{opacity:.5}body.cc-banner-visible{padding-bottom:72px}@media (max-width:700px){body.cc-banner-visible{padding-bottom:96px}}#cc-modal,#cc-overlay{inset:0;transition:.2s}#cc-overlay{background:rgba(0,0,0,.55);z-index:9998;pointer-events:none}#cc-modal{display:grid;place-items:center;z-index:9999;pointer-events:none}.cc-open #cc-modal,.cc-open #cc-overlay{opacity:1;visibility:visible;pointer-events:auto}#cc-modal .cc-panel{background:#fff;color:#111;width:min(92vw,640px);border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.4);overflow:hidden;transform:translateY(10px);transition:transform .2s}.cc-open #cc-modal .cc-panel{transform:none}#cc-modal .cc-ft,#cc-modal .cc-hd{background:#f7f7f7;padding:14px 16px}#cc-modal .cc-hd{display:flex;align-items:center;justify-content:space-between}#cc-modal .cc-hd h2{font-size:20px;margin:0;color:#004b87}#cc-modal .cc-body{padding:16px}#cc-modal .cc-body p{margin:.4rem 0}#cc-modal .cc-body .cc-cat{margin:.25rem 0 .1rem;color:#222}.cc-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid #eee}.cc-row:first-of-type{border-top:none}.cc-col.cc-control{text-align:right}.cc-btn-accent,.cc-btn-ghost,.cc-btn-primary{border:0;border-radius:10px;padding:10px 14px;font-weight:600;cursor:pointer}.cc-btn-ghost{background:#fff;border:1px solid #cfcfcf}.cc-btn-primary{background:#004b87;color:#fff}.cc-btn-accent{background:#f58220;color:#111}#cc-modal .cc-ft{display:flex;gap:10px;justify-content:flex-end}@media (max-width:480px){#cc-modal .cc-panel{width:92vw}#cc-modal .cc-ft{flex-direction:column}#cc-modal .cc-ft button{width:100%}}.cc-btn-accent:hover{filter:brightness(.95)}.cc-btn-accent:focus-visible,.cc-btn-ghost:focus-visible,.cc-btn-primary:focus-visible{outline:#004B87 solid 3px;outline-offset:2px}.whatsappshortcut{bottom:90px;border-radius:50%;display:grid;background:#25d366;color:#fff;z-index:999;transition:background-color .3s,transform .2s}.whatsappshortcut:hover{background:#128c7e;transform:scale(1.05)}.modal-overlay{top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);display:flex;justify-content:center;align-items:center;z-index:10000;transition:opacity .3s,visibility .3s;contain:layout}.modal-overlay.active{opacity:1;visibility:visible}.modal-content{background:linear-gradient(135deg,#036 0,#004b87 100%);color:#fff;width:90%;max-width:500px;border-radius:15px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.3);position:relative;transform:scale(.9);transition:transform .3s}.modal-overlay.active .modal-content{transform:scale(1)}.modal-header{background-color:#d96c0d;padding:20px;text-align:center;position:relative}.modal-header h2{font-size:28px;margin:0;font-weight:700;color:#fff}.close-modal{position:absolute;top:15px;right:15px;background:rgba(0,0,0,.2);border:none;color:#fff;font-size:24px;cursor:pointer;width:30px;height:30px;border-radius:50%;display:flex;justify-content:center;align-items:center}.modal-body{padding:30px;text-align:center}.discount-badge{font-size:60px;font-weight:800;color:#f58220;line-height:1;margin:15px 0;text-shadow:2px 2px 0 rgba(0,0,0,.2)}.modal-body p{margin-bottom:15px;font-size:16px}.modal-body ul{text-align:left;margin:20px 0;padding-left:0;list-style:none}.modal-body li{margin-bottom:12px;position:relative;padding-left:30px;display:flex;align-items:center}.modal-body li:before{content:"✓";color:#f58220;font-weight:700;margin-right:10px;position:absolute;left:0;font-size:18px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.claim-button{display:inline-block;background-color:#c1580c;color:#000;padding:15px 40px;border-radius:50px;font-weight:700;font-size:18px;text-decoration:none;margin-top:20px;transition:.3s;border:2px solid #c1580c;box-shadow:0 4px 10px rgba(245,130,32,.3)}.claim-button:hover{background-color:transparent;color:#c1580c;transform:translateY(-3px);box-shadow:0 6px 15px rgba(245,130,32,.4)}.claim-button:focus{outline:#003366 solid 3px;outline-offset:2px}.modal-footer{background-color:rgba(0,0,0,.1);padding:15px;text-align:center;font-size:12px}.modal-body .logo{text-align:center;margin-bottom:20px}.modal-body .logo img{max-width:70px;height:auto}@media (max-width:600px){.modal-overlay{padding:10px}.modal-content{max-height:95vh;width:100%}.modal-header{padding:15px}.modal-header h2{font-size:24px}.modal-body{padding:20px 15px}.discount-badge{font-size:40px;margin:10px 0}.modal-body p{font-size:15px}.modal-body li{font-size:14px;margin-bottom:10px;padding-left:28px}.claim-button{padding:12px 25px;font-size:16px;max-width:100%}.close-modal{top:10px;right:10px;width:25px;height:25px;font-size:20px}}@media (max-width:400px){.discount-badge{font-size:36px}.modal-header h2{font-size:22px}.modal-body{padding:15px 12px}}.homepage .content h1{line-height:1.1}