
:root{--graphite:#111111;--warm:#F7F4EF;--stone:#D8D2C8;--blue:#18324A;--bronze:#A17C48;--white:#fff;--muted:#5F5A52;--line:rgba(17,17,17,.10);--wa:#25D366;--title:'Fraunces',Georgia,serif;--body:'IBM Plex Sans',Inter,Arial,sans-serif;--mono:'IBM Plex Mono',monospace;--ease:cubic-bezier(.22,1,.36,1);--shadow:0 24px 70px rgba(17,17,17,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--warm);color:var(--graphite);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--title);font-weight:600;letter-spacing:-.04em;line-height:1.02;margin:0;color:var(--graphite)}h1{font-size:clamp(3.05rem,7vw,5.65rem)}h2{font-size:clamp(2.15rem,4.5vw,4rem)}h3{font-size:clamp(1.25rem,2vw,1.75rem)}p{margin:0;color:var(--muted)}.container{width:min(100% - 64px,1280px);margin-inline:auto}.section{padding:118px 0}.section-soft{background:rgba(216,210,200,.22);border-block:1px solid var(--line)}.eyebrow,.meta{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze);font-weight:500}.badge{display:inline-flex;background:rgba(161,124,72,.10);color:var(--bronze);border:1px solid rgba(161,124,72,.28);border-radius:999px;padding:6px 10px;font:500 .72rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.line-icon{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 22px;border:1px solid transparent;font-weight:600;font-size:.94rem;cursor:pointer;transition:transform .45s var(--ease),box-shadow .45s var(--ease),background .45s var(--ease),border-color .45s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 10px 24px rgba(24,50,74,.18)}.btn-primary:hover{background:#101d2c;box-shadow:0 18px 38px rgba(17,17,17,.20)}.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff;background:rgba(255,255,255,.06)}.btn-ghost:hover{background:rgba(255,255,255,.13);border-color:#fff}.btn-light{background:#fff;color:var(--blue);border-color:rgba(255,255,255,.65)}.link-arrow{font-weight:600;font-size:.92rem}.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:rgba(247,244,239,.82);backdrop-filter:blur(20px);border-bottom:1px solid rgba(17,17,17,.08);transition:all .45s var(--ease)}.site-header.at-top{background:rgba(247,244,239,.92)}.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-family:var(--title);font-size:1.45rem;line-height:.96;letter-spacing:-.045em;min-width:210px}.brand span,.brand em{display:block}.brand em{font-style:normal;font-size:1.18rem}.desktop-nav{display:flex;align-items:center;gap:29px;font-size:.86rem;font-weight:600}.desktop-nav>a,.mega-wrap>a{padding:31px 0}.header-cta{padding:12px 20px}.mega-wrap{position:relative}.mega-panel{position:absolute;top:72px;left:50%;width:min(930px,calc(100vw - 48px));transform:translateX(-50%) translateY(14px);display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:28px;background:rgba(247,244,239,.96);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:all .35s var(--ease)}.mega-wrap:hover .mega-panel{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}.mega-panel b{display:block;margin-bottom:10px;color:var(--blue);font:500 .72rem var(--mono);letter-spacing:.12em;text-transform:uppercase}.mega-panel a{display:block;border-top:1px solid var(--line);padding:12px 0;font-weight:600}.mega-panel small{display:block;font-weight:400;color:var(--muted);line-height:1.35;margin-top:3px}.menu-toggle{display:none;border:1px solid var(--line);border-radius:999px;padding:10px 14px;background:rgba(255,255,255,.55);font-weight:600}.mobile-nav{display:none}.hero{position:relative;overflow:hidden;color:#fff;background:var(--graphite)}.hero-large{min-height:435px;padding:155px 0 72px;display:flex;align-items:end}.hero picture,.hero img,.hero-overlay{position:absolute;inset:0;width:100%;height:100%}.hero img{object-fit:cover;filter:saturate(.86) contrast(1.04);transform:scale(1.035);animation:heroZoom 1.35s var(--ease) forwards}.hero-overlay{background:linear-gradient(90deg,rgba(17,17,17,.82) 0%,rgba(17,17,17,.66) 38%,rgba(17,17,17,.12) 100%);z-index:1}.hero-copy{position:relative;z-index:2;max-width:720px;margin-left:max(32px,calc((100vw - 1280px)/2 + 32px))}.hero-copy h1{color:#fff;text-wrap:balance}.hero-copy p:not(.eyebrow){font-size:clamp(1.04rem,1.5vw,1.22rem);max-width:650px;color:rgba(247,244,239,.86);margin-top:22px}.actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:28px}.service-strip{background:rgba(255,255,255,.56);border-bottom:1px solid var(--line)}.strip-grid{display:grid;grid-template-columns:repeat(6,1fr)}.strip-grid a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:58px;border-left:1px solid var(--line);font-weight:600;font-size:.86rem}.strip-grid a:last-child{border-right:1px solid var(--line)}.strip-grid svg{width:22px;height:22px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:34px;margin-bottom:40px}.section-head.centered{justify-content:center;text-align:center}.section-head p{font-size:1.08rem;max-width:720px;margin-top:12px}.problem-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:16px}.problem-card{min-height:164px;padding:22px 16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.52);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:all .45s var(--ease)}.problem-card:hover{background:#fff;transform:translateY(-4px);box-shadow:0 18px 50px rgba(17,17,17,.08)}.problem-card svg{color:var(--bronze);margin-bottom:15px}.problem-card h3{font-family:var(--body);font-size:.95rem;letter-spacing:-.02em;line-height:1.15}.problem-card p{font-size:.82rem;line-height:1.35;margin-top:8px}.featured-problem{border-color:rgba(161,124,72,.45);background:rgba(161,124,72,.08)}.authority{background:linear-gradient(135deg,#0e1113,#09223a);padding:82px 0;color:#fff;position:relative;overflow:hidden}.authority:after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}.authority-grid{position:relative;z-index:1;display:grid;grid-template-columns:.75fr 1.25fr;gap:55px;align-items:start}.authority h2,.authority h3{color:#fff}.authority p{color:rgba(247,244,239,.75)}.pillar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0}.pillar{min-height:190px;padding:0 20px;border-left:1px solid rgba(255,255,255,.12)}.pillar span{font-family:var(--title);font-size:2.1rem;color:var(--bronze);display:block;margin-bottom:13px}.pillar svg{width:25px;height:25px;color:var(--bronze);margin-bottom:12px}.pillar h3{font-family:var(--body);font-size:.95rem;letter-spacing:0}.pillar p{font-size:.78rem;line-height:1.45;margin-top:8px}.service-cards{display:grid;grid-template-columns:repeat(7,1fr);gap:16px}.service-card{background:rgba(255,255,255,.58);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:all .45s var(--ease)}.service-card:hover{background:#fff;transform:translateY(-4px);box-shadow:0 18px 50px rgba(17,17,17,.08)}.service-card img{width:100%;aspect-ratio:1.45/1;object-fit:cover;filter:saturate(.86) contrast(1.04)}.service-card div{padding:18px}.service-card h3{font-family:var(--body);font-size:.98rem;letter-spacing:-.02em}.service-card p{font-size:.82rem;line-height:1.4;margin-top:8px}.service-card a{display:inline-block;margin-top:12px;font-weight:700;font-size:.82rem;color:var(--blue)}.diagnostic-card{display:grid;grid-template-columns:160px 1fr 230px;gap:30px;align-items:center;background:#fff;border:1px solid rgba(161,124,72,.28);border-radius:24px;padding:30px;box-shadow:0 18px 60px rgba(17,17,17,.07);margin-top:0;margin-bottom:18px}.diag-icon{display:grid;place-items:center;border-right:1px solid var(--line);height:100%;color:var(--muted)}.diag-icon svg{width:86px;height:86px;stroke-width:.95}.diagnostic-card h2{font-size:clamp(2rem,3.4vw,3.15rem)}.diagnostic-card p:not(.badge){margin-top:9px}.mini-checks{display:flex;gap:16px 25px;flex-wrap:wrap;margin-top:18px;font-size:.83rem;color:#37322d}.mini-checks span:before{content:'○';color:var(--bronze);margin-right:7px}.diag-price{border-left:1px solid var(--line);padding-left:26px}.diag-price small,.diag-price span{display:block;color:var(--muted);font-size:.82rem}.diag-price strong{display:block;font-family:var(--title);font-size:2.55rem;line-height:1.02;margin:5px 0;color:var(--graphite)}.diag-price .btn{margin-top:18px;width:100%}.case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.case-card{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.6);overflow:hidden;transition:all .45s var(--ease)}.case-card:hover{background:#fff;box-shadow:0 18px 50px rgba(17,17,17,.08);transform:translateY(-4px)}.case-card img{aspect-ratio:1.72/1;object-fit:cover;width:100%}.case-body{padding:18px}.case-body h3{font-family:var(--body);font-size:1.02rem;letter-spacing:-.02em}.case-body p{font-size:.82rem;line-height:1.42;margin-top:8px}.case-body b{color:var(--graphite)}.case-body a{display:inline-block;margin-top:11px;color:var(--blue);font-weight:700;font-size:.84rem}.process{padding-top:80px}.timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border-top:1px solid var(--line)}.step{padding:28px 16px 0;position:relative;text-align:center}.step:before{content:'';width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:var(--warm);position:absolute;top:-17px;left:50%;transform:translateX(-50%)}.step span{position:relative;display:inline-flex;margin-top:-31px;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;background:#fff;border:1px solid var(--line);font:500 .78rem var(--mono);z-index:1}.step h3{font-family:var(--body);font-size:.95rem;letter-spacing:0;margin-top:14px}.step p{font-size:.82rem;line-height:1.4;margin-top:8px}.guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.guide-card{background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:all .45s var(--ease)}.guide-card:hover{background:#fff;box-shadow:0 18px 50px rgba(17,17,17,.08);transform:translateY(-4px)}.guide-card img{aspect-ratio:2.1/1;object-fit:cover;width:100%}.guide-card div{padding:18px}.guide-card h3{font-family:var(--body);font-size:1rem;letter-spacing:-.02em}.guide-card p{font-size:.84rem;margin-top:7px}.guide-card span{display:block;color:var(--blue);font-weight:700;margin-top:11px;font-size:.84rem}.commune-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.commune-grid a{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.5);padding:24px;font-weight:700;transition:all .45s var(--ease)}.commune-grid a:hover{background:#fff;transform:translateY(-4px);box-shadow:0 18px 50px rgba(17,17,17,.08)}.commune-grid span{display:block;color:var(--muted);font-weight:400;margin-top:5px;font-size:.9rem}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px}.faq-item{border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.46);overflow:hidden}.faq-item button{width:100%;border:0;background:none;text-align:left;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 20px;font:600 .95rem var(--body);cursor:pointer;color:var(--graphite)}.faq-item button em{font-style:normal;color:var(--bronze);font-size:1.3rem}.faq-item div{display:none;padding:0 20px 18px}.faq-item.open div{display:block}.faq-item p{font-size:.92rem}.final-cta{margin:0 auto 0;background:linear-gradient(135deg,var(--blue),#071a2a);border-radius:20px;padding:40px 56px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:34px;position:relative;overflow:hidden}.final-cta img{position:absolute;right:-60px;bottom:-80px;width:360px;opacity:.36}.final-cta div,.final-cta a{position:relative;z-index:1}.final-cta h2{color:#fff;font-size:clamp(2rem,4vw,3.25rem);max-width:760px}.final-cta p:not(.eyebrow){color:rgba(247,244,239,.78);margin-top:10px}.footer{padding:54px 0 22px;background:var(--warm);border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:38px}.footer h3{font-size:1.55rem}.footer h4{font-size:.86rem;margin:0 0 12px;color:var(--graphite)}.footer a,.footer span,.footer p{display:block;color:var(--muted);font-size:.9rem;margin:6px 0}.footer .tagline{margin-top:18px;color:var(--blue);font-weight:600}.fine{border-top:1px solid var(--line);padding-top:18px;margin-top:35px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:.82rem}.fine a{display:inline;margin:0}.floating-wa{position:fixed;right:22px;bottom:22px;z-index:1001;background:var(--wa);color:#06280f;border-radius:999px;padding:14px 18px;font-weight:700;display:flex;gap:8px;align-items:center;box-shadow:0 18px 48px rgba(0,0,0,.2)}.mobile-wa{display:none}.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.info-block{background:rgba(255,255,255,.52);border:1px solid var(--line);border-radius:20px;padding:34px}.info-block svg{color:var(--bronze);margin-bottom:22px}.info-block h2{font-size:clamp(1.7rem,2.6vw,2.4rem)}.info-block p{margin-top:14px}.mini-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.mini-card{background:rgba(255,255,255,.56);border:1px solid var(--line);border-radius:16px;overflow:hidden}.mini-card img{aspect-ratio:1.7/1;object-fit:cover;width:100%}.mini-card div{padding:16px}.mini-card h3{font-family:var(--body);font-size:.98rem;letter-spacing:0}.mini-card p{font-size:.8rem}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.price-card{background:rgba(255,255,255,.58);border:1px solid var(--line);border-radius:22px;padding:30px;min-height:270px}.price-card strong{display:block;font-family:var(--title);font-size:2.25rem;line-height:1.02;margin:18px 0;color:var(--graphite)}.featured-price{border-color:rgba(161,124,72,.45);box-shadow:0 18px 60px rgba(161,124,72,.10);background:#fff}.article{max-width:860px}.article .lead{font-size:1.3rem;color:#342f2a}.article h2{margin-top:46px}.article p{margin-top:14px;font-size:1.05rem}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px}.contact-panel,.form-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:0 18px 60px rgba(17,17,17,.06)}.contact-panel .btn{margin-top:24px}.contact-list{margin-top:30px;border-top:1px solid var(--line);padding-top:20px}.contact-list span{display:block;margin:8px 0;color:var(--muted)}.form-card{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-card label{font-weight:600;font-size:.9rem}.form-card input,.form-card select,.form-card textarea{margin-top:7px;width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 14px;background:var(--warm);font:inherit}.form-card textarea{min-height:130px}.form-card label:nth-child(5),.form-card button{grid-column:1/-1}.form-card button{border:0}.page-simple{padding:150px 0 100px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.visible{opacity:1;transform:none}@keyframes heroZoom{to{transform:scale(1)}}@media(max-width:1180px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:inline-flex}.mobile-nav{position:fixed;top:92px;left:24px;right:24px;background:rgba(247,244,239,.97);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:22px;z-index:999;flex-direction:column;gap:14px}.mobile-nav.open{display:flex}.problem-grid{grid-template-columns:repeat(4,1fr)}.service-cards{grid-template-columns:repeat(3,1fr)}.pillar-grid{grid-template-columns:repeat(3,1fr);gap:24px}.authority-grid,.contact-grid{grid-template-columns:1fr}.case-grid,.guide-grid,.commune-grid{grid-template-columns:repeat(2,1fr)}.mini-grid{grid-template-columns:repeat(3,1fr)}.diagnostic-card{grid-template-columns:1fr}.diag-icon,.diag-price{border:0;padding:0}.price-grid,.editorial-grid{grid-template-columns:1fr 1fr}.timeline{grid-template-columns:repeat(3,1fr);gap:34px 0}.strip-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){body{padding-bottom:82px}.container{width:min(100% - 38px,1280px)}.header-inner{height:76px}.brand{font-size:1.15rem;min-width:auto}.brand em{font-size:1rem}.mobile-nav{top:84px;left:16px;right:16px}.hero-large{min-height:570px;padding:125px 0 56px}.hero-copy{margin-left:auto}.hero-overlay{background:linear-gradient(90deg,rgba(17,17,17,.86),rgba(17,17,17,.62) 58%,rgba(17,17,17,.25))}.actions{flex-direction:column}.btn{width:100%}.section{padding:76px 0}.strip-grid{grid-template-columns:1fr 1fr}.strip-grid a{justify-content:flex-start;padding:0 14px}.problem-grid,.service-cards,.case-grid,.guide-grid,.commune-grid,.faq-grid,.mini-grid,.price-grid,.editorial-grid,.timeline,.footer-grid,.form-card{grid-template-columns:1fr}.authority{padding:72px 0}.pillar-grid{grid-template-columns:1fr 1fr}.pillar{min-height:auto}.diagnostic-card{padding:24px}.diag-price strong{font-size:2.25rem}.final-cta{display:block;padding:32px 24px;margin-inline:19px}.final-cta .btn{margin-top:22px}.final-cta img{width:260px}.floating-wa{display:none}.mobile-wa{display:flex;position:fixed;left:16px;right:16px;bottom:16px;height:58px;z-index:1001;align-items:center;justify-content:center;border-radius:999px;background:var(--blue);color:#fff;font-weight:700;box-shadow:0 16px 40px rgba(0,0,0,.22)}.footer{padding-bottom:96px}.fine{display:block}.hero-copy p:not(.eyebrow){font-size:1rem}.section-head{display:block}.section-head a{display:inline-block;margin-top:12px}}


/* === V4 fixes: HD assets, stable crops, no pixelated related cards, no public prices === */
:root{--img-h-service:168px;--img-h-related:158px;--img-h-case:178px;--img-h-guide:150px}.service-cards{grid-template-columns:repeat(auto-fit,minmax(178px,1fr));align-items:stretch}.service-card{display:flex;flex-direction:column;min-height:100%}.service-card img{height:var(--img-h-service);aspect-ratio:auto;object-fit:cover;object-position:center;background:#d8d2c8}.service-card div{display:flex;flex-direction:column;flex:1}.service-card a{margin-top:auto;padding-top:10px}.case-card img{height:var(--img-h-case);aspect-ratio:auto;object-fit:cover;object-position:center;background:#d8d2c8}.guide-card img{height:var(--img-h-guide);aspect-ratio:auto;object-fit:cover;object-position:center;background:#d8d2c8}.mini-grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));align-items:stretch}.mini-card{display:flex;flex-direction:column;min-height:100%}.mini-card img{height:var(--img-h-related);aspect-ratio:auto;object-fit:cover;object-position:center;background:#d8d2c8}.diagnostic-card{grid-template-columns:150px 1fr 260px}.diag-action{border-left:1px solid var(--line);padding-left:26px;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:18px}.diag-note{font-size:.95rem;line-height:1.45;color:var(--muted)}.diag-action .btn{width:100%}.commercial-focus{border-block:1px solid var(--line)}.focus-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.focus-card{display:grid;grid-template-columns:.88fr 1.12fr;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 18px 60px rgba(17,17,17,.055);transition:all .45s var(--ease)}.focus-card:hover{transform:translateY(-4px);box-shadow:0 22px 70px rgba(17,17,17,.09)}.focus-card img{width:100%;height:100%;min-height:270px;object-fit:cover;object-position:center}.focus-card div{padding:34px}.focus-card h3{font-size:clamp(1.55rem,2.6vw,2.35rem)}.focus-card p:not(.meta){margin:12px 0 18px;font-size:1rem}.price-card strong{font-size:clamp(1.5rem,2.4vw,2.25rem);letter-spacing:-.035em}.featured-price strong{color:var(--blue)}.hero img{object-position:center}.hero:has(img[src*="permisos"]) img,.hero:has(img[src*="recepcion"]) img,.hero:has(img[src*="obra-menor"]) img{object-position:center 48%}.hero:has(img[src*="oficinas"]) img,.hero:has(img[src*="local"]) img{object-position:center 55%}.footer .footer-grid div:nth-child(2){min-width:0}.floating-wa{color:#083414;font-size:0}.floating-wa:before{content:'✆';font-size:.95rem;font-weight:800}.floating-wa span{font-size:.95rem}.floating-wa span:before{content:'WhatsApp'}@media(max-width:1180px){.diagnostic-card{grid-template-columns:1fr}.diag-action{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:20px}.focus-grid{grid-template-columns:1fr}.focus-card{grid-template-columns:1fr}.focus-card img{height:260px;min-height:0}.service-card img{height:190px}.mini-card img{height:170px}}@media(max-width:700px){:root{--img-h-service:210px;--img-h-related:190px;--img-h-case:205px;--img-h-guide:180px}.service-cards{grid-template-columns:1fr}.focus-card img{height:235px}.problem-grid{grid-template-columns:1fr 1fr}.problem-card{min-height:150px}.diag-action .btn{width:100%}.price-card{min-height:auto}.hero img{object-position:center}.hero-large{min-height:600px}.service-strip .strip-grid a:nth-child(6) span{font-size:.8rem}}

/* Production override: premium circular WhatsApp floating action */
.whatsapp-float {
  position: fixed !important;
  right: clamp(18px, 2vw, 28px) !important;
  bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  width: 58px !important;
  height: 58px !important;
  border-radius: 999px !important;
  background: #25D366 !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  box-shadow: 0 16px 34px rgba(17,17,17,.22) !important;
  z-index: 9999 !important;
  border: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  overflow: hidden !important;
  transition: transform 240ms cubic-bezier(.22,1,.36,1), box-shadow 240ms cubic-bezier(.22,1,.36,1), background 240ms cubic-bezier(.22,1,.36,1) !important;
}
.whatsapp-float:hover {
  transform: translateY(-2px) scale(1.035) !important;
  box-shadow: 0 20px 42px rgba(17,17,17,.28) !important;
  background: #22c55e !important;
}
.whatsapp-float:focus-visible {
  outline: 3px solid rgba(37,211,102,.35) !important;
  outline-offset: 4px !important;
}
.whatsapp-float__icon {
  width: 30px !important;
  height: 30px !important;
  display: block !important;
  fill: currentColor !important;
}
.whatsapp-float span,
.whatsapp-float::before,
.whatsapp-float::after,
.floating-wa,
.mobile-wa {
  content: none !important;
  display: none !important;
}
@media (max-width: 767px) {
  body { padding-bottom: 0 !important; }
  .whatsapp-float {
    width: 58px !important;
    height: 58px !important;
    right: 18px !important;
    bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  }
  .footer { padding-bottom: 56px !important; }
}
.focus-grid-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.focus-grid-four .focus-card { grid-template-columns: 1fr; }
.focus-grid-four .focus-card img { height: 210px; min-height: 0; }
.focus-grid-four .focus-card div { padding: 24px; }
.focus-grid-four .focus-card h3 { font-size: clamp(1.25rem, 1.8vw, 1.65rem); }
@media (max-width: 1180px) { .focus-grid-four { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .focus-grid-four { grid-template-columns: 1fr; } }

/* === Editorial content upgrade: tables, lists, expert text === */
.rich-article table,.article table{width:100%;border-collapse:collapse;margin:26px 0 10px;background:rgba(255,255,255,.55);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:table}
.rich-article th,.rich-article td,.article th,.article td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;color:var(--graphite)}
.rich-article th,.article th{font-family:var(--mono);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);background:rgba(216,210,200,.22)}
.rich-article tr:last-child td,.article tr:last-child td{border-bottom:0}
.article .check-list,.rich-article .check-list{margin:18px 0 4px;padding:0;list-style:none;display:grid;gap:10px}
.article .check-list li,.rich-article .check-list li{position:relative;padding-left:26px;color:var(--muted);font-size:1.03rem;line-height:1.55}
.article .check-list li:before,.rich-article .check-list li:before{content:'→';position:absolute;left:0;top:0;color:var(--bronze);font-weight:700}
.article p.lead,.rich-article p.lead{font-size:clamp(1.18rem,2vw,1.42rem);line-height:1.52;color:#342f2a;margin-top:0}
.article h2 + table,.rich-article h2 + table{margin-top:20px}
@media(max-width:700px){.rich-article table,.article table{display:block;overflow-x:auto;border-radius:14px}.rich-article th,.rich-article td,.article th,.article td{min-width:170px;padding:14px}.article .check-list li,.rich-article .check-list li{font-size:1rem}}

.contact-tips{margin-top:24px}.contact-tips p{margin:0 0 10px;color:var(--graphite)}.contact-tips .check-list{margin-top:10px}.contact-tips .check-list li{font-size:.9rem}


/* UX/UI fix: contact form + case storytelling */
.contact-section{padding-top:96px}.contact-grid-v2{grid-template-columns:.86fr 1.14fr;align-items:stretch}.contact-panel-v2,.form-card-v2{border-radius:28px;box-shadow:0 22px 70px rgba(17,17,17,.075)}.contact-panel-v2{display:flex;flex-direction:column;gap:22px;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.78) 100%)}.contact-panel-v2 h2{font-size:clamp(2.45rem,4.2vw,4.25rem);max-width:420px}.contact-lead{font-size:1.04rem;line-height:1.62}.contact-checklist-card{background:rgba(247,244,239,.70);border:1px solid var(--line);border-radius:20px;padding:20px;margin-top:4px}.contact-checklist-card p{color:var(--graphite);margin-bottom:8px}.contact-list-v2{display:grid;gap:9px;margin-top:auto}.contact-list-v2 span{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:11px}.contact-list-v2 b{color:var(--graphite);font-weight:700}.form-card-v2{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px;padding:34px;background:#fff}.form-card-v2 .form-intro{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:4px}.form-card-v2 .form-intro h2{font-size:clamp(2rem,3.4vw,3.15rem)}.form-card-v2 .form-intro p:not(.eyebrow){max-width:650px;margin-top:10px}.form-card-v2 label{display:flex;flex-direction:column;gap:8px;font-weight:700;font-size:.9rem;color:var(--graphite)}.form-card-v2 input,.form-card-v2 select,.form-card-v2 textarea{margin-top:0;border:1px solid rgba(17,17,17,.14);background:#F8F5F0;border-radius:16px;padding:14px 15px;transition:border-color .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease)}.form-card-v2 input:focus,.form-card-v2 select:focus,.form-card-v2 textarea:focus{outline:none;border-color:rgba(24,50,74,.55);box-shadow:0 0 0 4px rgba(24,50,74,.10);background:#fff}.form-card-v2 textarea{min-height:150px;resize:vertical}.field-wide{grid-column:1/-1}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid var(--line);padding-top:22px}.form-footer p{font-size:.92rem;max-width:360px}.form-footer .btn{min-width:290px}.case-detail-section{margin-top:0}.case-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.case-detail-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:0 18px 55px rgba(17,17,17,.055)}.case-detail-card h3{font-size:clamp(1.55rem,2.6vw,2.35rem);margin-top:8px}.case-detail-block{border-top:1px solid var(--line);padding-top:16px;margin-top:18px}.case-detail-block b{display:block;color:var(--blue);font-size:.9rem;margin-bottom:7px}.case-detail-block p{font-size:.98rem;line-height:1.62}.case-card .case-body p{font-size:.84rem}.case-card .meta{letter-spacing:.16em}
@media(max-width:1180px){.contact-grid-v2,.case-detail-grid{grid-template-columns:1fr}.contact-panel-v2 h2{max-width:100%}.form-footer{align-items:flex-start;flex-direction:column}.form-footer .btn{width:100%;min-width:0}}
@media(max-width:700px){.contact-section{padding-top:72px}.form-card-v2{grid-template-columns:1fr;padding:24px}.contact-panel-v2{padding:26px}.contact-list-v2 span{display:block}.contact-list-v2 b{display:block;margin-bottom:2px}.case-detail-card{padding:24px}.form-card-v2 .form-intro h2{font-size:2rem}}

/* === SEO cluster pages added 2026-05-11 === */
.toc-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;margin:0 0 34px;display:grid;gap:10px;box-shadow:0 16px 44px rgba(17,17,17,.045)}
.toc-card .eyebrow{margin:0 0 4px}.toc-card a{color:var(--blue);text-decoration:none;border-top:1px solid var(--line);padding-top:10px;font-weight:600}.toc-card a:first-of-type{border-top:0;padding-top:0}.seo-mini{min-height:180px}.seo-mini div{padding:26px}.seo-cluster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.seo-cluster-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;text-decoration:none;color:inherit;transition:all .35s var(--ease)}.seo-cluster-card:hover{transform:translateY(-3px);box-shadow:0 18px 50px rgba(17,17,17,.08)}.seo-cluster-card h3{font-size:1.25rem;margin:8px 0}.seo-cluster-card p{font-size:.95rem;color:var(--muted);line-height:1.5}@media(max-width:980px){.seo-cluster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.seo-cluster-grid{grid-template-columns:1fr}.toc-card{padding:18px}}


/* Fix: mega menú más estable para poder mover el mouse hacia el panel */
.mega-wrap::after{content:"";position:absolute;left:-48px;right:-48px;top:100%;height:34px;display:block;}
.mega-wrap.is-open .mega-panel,.mega-wrap:hover .mega-panel,.mega-wrap:focus-within .mega-panel{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0);}
.mega-panel{transition:opacity .24s var(--ease),transform .24s var(--ease),visibility .24s var(--ease);}


/* === v5.6 WhatsApp floating button hard fix ===
   Keeps the floating button as a premium green circle, always shows the WhatsApp SVG,
   and prevents old pseudo-icon fallbacks from overriding the real icon. */
.whatsapp-float {
  position: fixed !important;
  right: clamp(18px, 2vw, 28px) !important;
  bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  border-radius: 999px !important;
  background: #25D366 !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 16px 34px rgba(17,17,17,.22) !important;
  z-index: 9999 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.whatsapp-float::before,
.whatsapp-float::after,
.whatsapp-float span {
  content: none !important;
  display: none !important;
}
.whatsapp-float .whatsapp-float__icon {
  display: block !important;
  width: 31px !important;
  height: 31px !important;
  min-width: 31px !important;
  min-height: 31px !important;
  fill: #fff !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.whatsapp-float .whatsapp-float__icon path {
  fill: #fff !important;
}
