/* Refined trust signals and details */
.availability{right:-22px;border:2px solid #fff;border-radius:15px;min-width:116px;padding:13px 17px 12px;box-shadow:0 13px 27px #35445d30}
.availability::after{content:'';position:absolute;inset:5px;border:1px solid #17243c33;border-radius:10px;pointer-events:none}
.availability small,.availability span,.availability strong{position:relative;z-index:1}
.availability span::before{content:'•';color:var(--blue);font-size:13px;vertical-align:-1px;margin-right:3px}
.visual-caption{padding:14px 19px 14px 14px;border:1px solid #e4eaf2;border-radius:13px;box-shadow:0 12px 28px #20304b22}
.visual-caption>span{width:31px;height:31px;border-radius:10px;background:linear-gradient(135deg,#1480df,#0753ad);box-shadow:0 4px 9px #075fbe44}
.trust-grid>div{position:relative;padding-left:62px}
.trust-grid .trust-icon{position:absolute;left:27px;top:4px;display:grid;width:25px;height:25px;place-items:center;border-radius:8px;background:var(--sky);color:var(--blue);font:800 14px Manrope;font-style:normal}
.trust-grid p i{color:var(--yellow);font:900 42px/0 'Barlow Condensed';vertical-align:-16px}
.image-stamp{padding:17px 20px 17px 45px;border:2px solid #fff;border-radius:13px;box-shadow:0 12px 23px #132b4d29}
.image-stamp i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--yellow);font-size:20px;font-style:normal}
.check-list{gap:13px 20px;margin-top:27px}
.check-list span{display:flex;align-items:center;gap:9px}
.check-list span::before{content:'✓';display:grid;place-items:center;flex:0 0 19px;height:19px;border-radius:50%;background:#dceeff;color:var(--blue);font-size:11px;font-weight:900}
.quick-points li{display:flex;align-items:center;gap:6px;background:#ffffff8c;border:1px solid #dce6f04d;border-radius:999px;padding:5px 10px}
.quick-points li::before{display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--blue);color:#fff!important;margin:0!important;font-size:9px}
.service-emoji{position:relative;overflow:hidden;border:1px solid #d7eafd;box-shadow:inset 0 1px 0 #fff}.service-emoji::after{content:'';position:absolute;width:22px;height:22px;border-radius:50%;right:-8px;bottom:-8px;background:#a9d7ff88}
.service-emoji svg{position:relative;z-index:1;width:25px;height:25px;transition:transform .3s ease}
.card:hover .service-emoji svg{transform:scale(1.08) rotate(-3deg)}
.trust-icon svg{width:15px;height:15px}
.visual-caption>span svg{width:17px;height:17px;stroke-width:2.2}
.image-stamp i svg{display:block;width:20px;height:20px;stroke-width:1.7}
.accordion summary span{position:relative;flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:#e7f2ff;font-size:0;transition:transform .3s ease,background-color .3s ease}
.accordion summary span::before,.accordion summary span::after{content:'';position:absolute;left:50%;top:50%;width:10px;height:1.5px;border-radius:2px;background:var(--blue);transform:translate(-50%,-50%)}
.accordion summary span::after{transform:translate(-50%,-50%) rotate(90deg)}
.accordion details[open] summary span{transform:rotate(45deg);background:#d8ebff}
@media(max-width:800px){.trust-grid>div{padding-left:42px}.trust-grid .trust-icon{left:11px}.image-stamp{right:0}.availability{right:17px}}

/* Sticky navigation and motion polish */
.logo img{display:block;width:205px;height:auto;object-fit:contain}
.footer-brand .logo img{width:235px}
.hero-layout{min-height:660px;padding:58px 0 68px}
.hero-copy{align-self:center}
.header{position:sticky;top:0;z-index:40;transition:height .3s ease,box-shadow .3s ease,background-color .3s ease}
.header::before{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:#fff;transition:background-color .3s ease,backdrop-filter .3s ease}
.header.scrolled{height:70px;box-shadow:0 8px 30px #1a2d4b14}
.header.scrolled::before{background:#fffefaed;backdrop-filter:blur(14px)}
main section[id]{scroll-margin-top:84px}
nav a{position:relative;padding:9px 0;transition:color .2s ease}
nav a::after{content:'';position:absolute;left:0;right:100%;bottom:2px;height:2px;border-radius:2px;background:var(--blue);transition:right .3s ease}
nav a:hover,nav a.active{color:var(--blue)}
nav a:hover::after,nav a.active::after{right:0}
.logo,.card a,.plain-link,.footer-column a,.footer-phone{transition:color .2s ease,opacity .2s ease,transform .2s ease}
.logo:hover{transform:translateY(-1px)}
.card a:hover,.plain-link:hover,.footer-column a:hover{color:#2f91e8;transform:translateX(3px)}
.card::before{content:'';position:absolute;left:24px;right:24px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.card:hover::before{transform:scaleX(1)}
.gallery-grid figure::after{content:'Ver trabajo';position:absolute;right:12px;top:12px;padding:5px 9px;border:1px solid #ffffff55;border-radius:999px;background:#0b1c347a;color:#fff;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;opacity:0;transform:translateY(-5px);transition:.3s ease}
.gallery-grid figure:hover::after{opacity:1;transform:none}
.gallery-grid{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,210px);grid-auto-rows:210px}
.gallery-grid .gallery-large{grid-column:span 2;grid-row:span 2}
.gallery-grid img{object-position:center}
.gallery-grid .gallery-large img{object-position:center 42%}
.accordion details p{animation:faqOpen .28s ease both}
@keyframes faqOpen{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

/* WhatsApp actions */
.whatsapp-button{background:#20bd62;color:#fff;box-shadow:0 7px 17px #169b4b26}
.whatsapp-button:hover{background:#17aa55;color:#fff;box-shadow:0 11px 23px #169b4b38}
.whatsapp-button .wa-mark,.whatsapp-float .wa-mark{display:grid;place-items:center;flex:0 0 auto;width:25px;height:25px;border-radius:50%;background:#fff;color:#19a957;transform:none}
.wa-mark svg{display:block;width:18px;height:18px}
.whatsapp-button .arrow{margin-left:2px;transition:transform .2s ease}
.whatsapp-button:hover .arrow{transform:translateX(3px)}
.soft-chevron{position:relative;display:inline-grid!important;place-items:center;flex:0 0 auto;width:25px;height:25px;margin-left:2px;border-radius:50%;background:#ffffff9c;transition:transform .25s ease,background-color .25s ease,box-shadow .25s ease}
.soft-chevron::before{content:'';display:block;width:6px;height:6px;border-top:1.7px solid currentColor;border-right:1.7px solid currentColor;transform:translateX(-1px) rotate(45deg);border-radius:1px}
.soft-chevron.down::before{transform:translateY(-1px) rotate(135deg)}
.soft-chevron.up::before{transform:translateY(1px) rotate(-45deg)}
.button:not(.whatsapp-button) .soft-chevron{background:#12203910;color:var(--ink)}
.plain-link .soft-chevron,.card a .soft-chevron{background:#e6f2ff;color:var(--blue)}
.plain-link .soft-chevron{width:23px;height:23px;margin-left:5px}
.card a{display:inline-flex;align-items:center;gap:6px}.card a .soft-chevron{width:19px;height:19px}.card a .soft-chevron::before{width:5px;height:5px;border-width:1.5px}
.footer-column a{display:inline-flex;align-items:center;gap:6px}.footer-column .soft-chevron{width:17px;height:17px;background:#ffffff0d;color:#91b8e1}.footer-column .soft-chevron::before{width:4px;height:4px;border-width:1.3px}
.footer-wa .soft-chevron{margin-left:auto;background:#ffffff24;color:#fff}.footer-wa:hover .soft-chevron,.whatsapp-button:hover .soft-chevron{transform:translateX(3px);background:#fff;color:#19a957;box-shadow:0 3px 9px #0e6d3430}
.hero-actions a:hover .soft-chevron,.faq .button:hover .soft-chevron,.card a:hover .soft-chevron{transform:translateX(3px)}
.hero-actions a:hover .soft-chevron.down{transform:translateY(3px)}
.footer-column a:hover .soft-chevron.up{transform:translateY(-2px)}
.whatsapp-float{min-height:55px;padding:8px 15px 8px 9px;border:2px solid #fff;background:linear-gradient(135deg,#28cc69,#14a951);box-shadow:0 10px 29px #1320393d;animation:floatIn .55s .4s both}
.whatsapp-float .wa-mark{width:35px;height:35px;font-size:22px}
.whatsapp-float small{display:grid;text-align:left;line-height:1.15;font-weight:600}.whatsapp-float small b{font-size:10px}.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 14px 33px #1320394d}
@keyframes floatIn{from{opacity:0;transform:translateY(18px) scale(.9)}to{opacity:1;transform:none}}

/* Expanded footer */
footer{position:relative;overflow:hidden;padding:0;background:#0e1a2e;color:#aeb9c9}
footer::before{content:'';position:absolute;width:360px;height:360px;right:-120px;top:-210px;border-radius:50%;border:70px solid #1567bc18;pointer-events:none}
.footer-main{display:grid;grid-template-columns:1.35fr .8fr .7fr 1.1fr;gap:55px;padding:66px 0 48px;position:relative}
.footer-brand .logo{color:#fff}.footer-brand>p{max-width:270px;margin:22px 0;color:#8e9aad;font-size:11px}.footer-available{display:inline-flex;align-items:center;padding:7px 11px;border:1px solid #ffffff14;border-radius:999px;color:#dce5f0;font-size:9px;font-weight:800}.footer-available i{width:7px;height:7px;margin-right:7px;border-radius:50%;background:#39d878;box-shadow:0 0 0 4px #39d8781c;animation:pulseDot 2s infinite}@keyframes pulseDot{50%{box-shadow:0 0 0 7px transparent}}
.footer-column{display:grid;align-content:start;gap:9px}.footer-column h3,.footer-contact>p{margin:0 0 9px;color:#fff;font:800 18px 'Barlow Condensed';text-transform:uppercase;letter-spacing:.04em}.footer-column a{width:max-content;color:#8e9aad;text-decoration:none;font-size:10px}
.footer-contact{display:grid;align-content:start}.footer-phone{color:#fff;text-decoration:none;font:800 29px/1 'Barlow Condensed';margin-bottom:15px}.footer-phone:hover{color:var(--yellow)}
.footer-wa{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;text-decoration:none}.footer-wa>span:nth-child(2){display:grid;font-size:10px;font-weight:800;line-height:1.2}.footer-wa small{font-size:8px;font-weight:500;color:#dbf8e6}.footer-wa b{margin-left:auto;font-size:18px}.footer-contact>small{margin-top:12px;color:#78869a;font-size:8px;line-height:1.5}
.footer-bottom{display:flex;justify-content:space-between;padding:17px 0;border-top:1px solid #ffffff12;color:#718095;font-size:8px;text-transform:uppercase;letter-spacing:.08em}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.card,.gallery-grid img,.whatsapp-float,.footer-available i{animation:none!important;transition:none!important}}
@media(max-width:800px){.logo img{width:170px}.footer-brand .logo img{width:215px}.hero-layout{min-height:auto;padding:72px 0 0}.header{top:0}.header.scrolled{height:66px}.header nav{top:76px}.header.scrolled nav{top:66px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:none;grid-auto-rows:210px}.gallery-grid .gallery-large{grid-column:span 2;grid-row:span 2}.footer-main{grid-template-columns:1fr 1fr;gap:38px}.footer-brand,.footer-contact{grid-column:span 2}.footer-content{display:none}.whatsapp-float small{display:grid}}
@media(max-width:430px){.logo img{width:148px}.footer-brand .logo img{width:200px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:230px}.gallery-grid .gallery-large{grid-column:span 1;grid-row:span 1}.gallery-grid figure{height:auto}.footer-main{grid-template-columns:1fr;padding:50px 0 35px}.footer-brand,.footer-contact{grid-column:span 1}.footer-bottom{gap:12px;line-height:1.5}.whatsapp-float small{display:none}.whatsapp-float{width:55px;padding:8px}.whatsapp-float .wa-mark{width:35px;height:35px}.trust-grid .trust-icon{display:none}.trust-grid>div{padding-left:10px}}
