@font-face{font-family:Anton;src:url(assets/anton.woff2) format("woff2");font-display:swap;font-weight:400}
:root{color-scheme:dark;--bg:#111113;--surface:#19191c;--line:#333337;--text:#f6f4f0;--muted:#bcb9ba;--red:#ff4149;--button:#ba1823;font-family:system-ui,Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--bg);color:var(--text)}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,iframe:focus-visible{outline:2px solid #fff;outline-offset:4px}
a,button{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit;cursor:pointer}
h1,h2,h3,p{margin:0}
[hidden]{display:none!important}
.wrap{width:min(1310px,calc(100% - 96px));margin-inline:auto}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.icon{width:21px;height:21px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.skip{position:fixed;top:8px;left:10px;z-index:20;transform:translateY(-150%);padding:12px;background:#fff;color:#111}
.skip:focus{transform:translateY(0)}
.intro{position:fixed;inset:0;z-index:30;display:none;place-items:center;background:#101013;opacity:1;transition:opacity .28s ease-out}
.intro-pending .intro,.intro-exit .intro{display:grid}
.intro-pending{overflow:hidden}
.intro-logo,.intro-animation{grid-area:1/1;width:clamp(180px,44vw,245px);height:auto}
.intro-logo{width:clamp(152px,38vw,208px)}
.intro-animation,.intro-ready .intro-logo{opacity:0}
.intro-ready .intro-animation{opacity:1}
.intro-exit .intro{opacity:0;pointer-events:none}
.intro-pending .hero-inner{opacity:.55;transform:translateY(12px)}
.intro-exit .hero-inner{transition:opacity .28s ease-out,transform .3s ease-out}
.header{position:fixed;inset:19px 0 auto;z-index:10;padding-inline:30px;pointer-events:none;transition:top .25s}
.header-inner{position:relative;display:grid;width:100%;max-width:1440px;min-height:75px;margin:auto;padding:4px 15px;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;border:1px solid transparent;border-radius:0;pointer-events:auto;transition:max-width .3s,background .25s,border .25s,border-radius .25s,box-shadow .25s}
.header.is-scrolled{top:10px}
.header.is-scrolled .header-inner,.header.is-menu-open .header-inner{max-width:1080px;border-radius:42px;background:#161619bd;border-color:#ffffff29;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 9px 35px #0005}
.brand{display:inline-grid;place-items:center;width:max-content}
.brand img{object-fit:contain;filter:drop-shadow(0 2px 7px #0007)}
.header.is-scrolled .brand img{scale:.82}
.desktop-nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:650}
.desktop-nav a:hover,.footer-social:hover,.hero-work:hover,.mobile-nav a:hover{color:#ff777d}
.header-actions{justify-self:end;display:flex;align-items:center;gap:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:max-content;min-height:47px;padding:0 16px;border-radius:6px;border:1px solid transparent;font-size:14px;font-weight:680;white-space:nowrap;transition:background .2s,border-color .2s}
.btn .icon:last-child:not(:first-child){width:16px;height:16px;margin-left:2px}
.btn-header{min-height:40px;border-color:#ffffff70;border-radius:25px;background:#12121450}
.btn-header:hover,.secondary:hover{background:#323236;border-color:#777780}
.menu-button,.mobile-nav{display:none}
.primary{background:var(--button);border-color:#fc4c5590;color:#fff}
.primary:hover{background:#a30d19}
.secondary{background:#1c1c20;border-color:#ffffff39}
.hero{position:relative;isolation:isolate;display:flex;align-items:end;min-height:680px;height:calc(100svh - 14px);max-height:1040px;margin:7px;border-radius:20px;overflow:hidden;background:#222226}
.hero-media,.hero-media img,.hero::after{position:absolute;inset:0;width:100%;height:100%}
.hero-media{z-index:-2}
.hero-media img{object-fit:cover;object-position:81% 44%}
.hero::after{content:"";z-index:-1;background:linear-gradient(180deg,#08090bc4 0%,#090a0c10 25%,#08090b08 40%,#08090b84 66%,#09090bea 100%),linear-gradient(90deg,#0b0b0e56,transparent 73%)}
.hero-inner{width:100%;display:flex;align-items:end;justify-content:space-between;gap:24px;padding:0 clamp(24px,4.2vw,82px) clamp(25px,4vw,60px)}
.hero-title{min-width:0}
.eyebrow{display:flex;align-items:center;gap:9px;color:#d8d5d3;font-size:11px;font-weight:690;line-height:1.35;text-transform:uppercase;letter-spacing:.15em}
.hero-kicker{margin:0 0 16px 5px;color:#f2ece9}
.dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--red)}
.rule{width:20px;height:2px;flex:none;background:var(--red)}
h1,h2{font-family:Anton,Impact,"Arial Narrow",sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:-.022em}
h1{font-size:clamp(86px,11vw,205px);line-height:.91;text-shadow:0 5px 28px #0003}
h1 span{display:block;padding-left:.52em}
.hero-action{display:grid;justify-items:end;gap:16px;flex:none;padding-bottom:4px}
.hero-work{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:650}
.hero-work .icon{width:16px;height:16px}
.section{padding-block:76px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:27px}
h2{font-size:clamp(46px,6.25vw,100px);line-height:.99;margin-top:10px}
h2 span{color:var(--red)}
.section-note{max-width:300px;color:var(--muted);font-size:15px;line-height:1.5;padding-bottom:3px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.service-card{position:relative;isolation:isolate;overflow:hidden;min-height:174px;padding:22px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.service-photo,.service-card::after{position:absolute;inset:0;width:100%;height:100%}
.service-photo{z-index:-2;object-fit:cover;object-position:right center;opacity:.61}
.service-card::after{content:"";z-index:-1;background:linear-gradient(90deg,#171719eb 6%,#1717199c 56%,#1717192b 100%),linear-gradient(0deg,#131316c4,transparent 69%)}
.service-granizo{object-position:right 65%}
.service-estacionamiento{object-position:right 46%}
.service-estetica{object-position:right 40%}
.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.service-top .icon{width:27px;height:27px;color:var(--red)}
.service-top span,.work-index{font-size:10px;font-weight:700;letter-spacing:.12em}
.service-top span{color:var(--muted)}
.service-card h3{font-size:19px;line-height:1.18;letter-spacing:-.017em}
.service-card p{margin-top:8px;max-width:285px;color:#d2cfd0;font-size:14px;line-height:1.45}
.service-note,.review-note{margin-top:15px;color:var(--muted);font-size:13px;line-height:1.5}
.service-note a{display:inline-flex;align-items:center;gap:4px;color:var(--text);text-decoration:underline;text-underline-offset:3px}
.service-note .icon{width:13px;height:13px}
.work-section{background:#171719;border-block:1px solid #2e2e30}
.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.work-card{position:relative;display:grid;align-items:end;overflow:hidden;isolation:isolate;aspect-ratio:4/4.65;border-radius:8px;background:#252528;border:1px solid #ffffff26}
.work-card img,.work-card::after{position:absolute;inset:0;width:100%;height:100%}
.work-card img{z-index:-2;object-fit:cover;object-position:50% var(--photo-y,50%);transition:transform .25s}
.work-card::after{content:"";z-index:-1;background:linear-gradient(0deg,#050507f5,transparent 40%)}
.work-card:hover img{transform:scale(1.05)}
.work-card:hover{border-color:#fff8}
.work-index{position:absolute;inset:10px auto auto 10px;padding:5px 7px;border-radius:4px;background:#111114c7}
.work-caption{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px;font-size:14px;font-weight:680}
.work-caption .icon{width:16px;height:16px}
.review-actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap}
.rating-link{display:grid;gap:2px;color:var(--muted);font-size:12px}
.rating-link:hover{text-decoration:underline}
.rating-score{display:flex;align-items:center;gap:5px;font-size:17px;font-weight:720;color:var(--text)}
.rating-score .icon{width:16px;height:16px;fill:#f6bb54;stroke:#f6bb54}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.review-card{display:grid;grid-template-rows:auto 1fr auto;gap:12px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.review-card .stars{color:#f6bb54;letter-spacing:.12em;font-size:15px;line-height:1}
.review-card p{color:#e3e1e0;font-size:14px;line-height:1.48}
.review-card h3{font-size:13px;font-weight:720;color:var(--muted)}
.location.section{padding-top:0}
.location-panel{display:grid;grid-template-columns:.8fr 1.2fr;overflow:hidden;min-height:338px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.location-copy{align-self:center;padding:clamp(20px,4vw,54px)}
.location-copy h2{font-size:clamp(42px,5.3vw,81px)}
address{font-style:normal;color:var(--muted);line-height:1.42;margin:15px 0 20px}
address strong{font-size:20px;color:var(--text)}
.map{display:block;width:100%;height:100%;min-height:338px;border:0;background:#dfe4df}
.footer{border-top:1px solid var(--line);background:#171719}
.footer-inner{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.footer-social{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}
.footer-social .icon{width:18px;height:18px}
@media(max-width:1050px){
 .wrap{width:calc(100% - 56px)}
 .hero{min-height:610px}
 .hero-inner{padding-inline:35px}
 .section{padding-block:58px}
 .service-card{padding:17px}
}
@media(max-width:790px){
 .header{padding-inline:19px}
 .header-inner{gap:14px;padding-inline:12px}
 .desktop-nav{gap:20px}
 .work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hero-action{justify-items:start}
 .hero-inner{flex-wrap:wrap}
}
@media(max-width:680px){
 html{scroll-padding-top:86px}
 .wrap{width:calc(100% - 32px)}
 .header{top:9px;padding-inline:12px}
 .header.is-scrolled{top:7px}
 .header-inner{display:flex;justify-content:space-between;min-height:57px;padding:3px 8px 3px 11px}
 .header .brand img{width:49px;height:49px}
 .desktop-nav{display:none}
 .menu-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #ffffff55;border-radius:50%;background:#12121460}
 .menu-button .icon{width:20px;height:20px}
 .mobile-nav{position:absolute;inset:calc(100% + 5px) 0 auto;display:grid;gap:3px;padding:9px;background:#17171bf5;border:1px solid #ffffff29;border-radius:12px;box-shadow:0 10px 25px #0006}
 .mobile-nav a{padding:11px 10px;font-size:14px;font-weight:650}
 .btn{min-height:43px;font-size:13px;padding-inline:12px}
 .btn-header{min-height:35px}
 .btn .icon{width:18px;height:18px}
 .hero{height:calc(88svh - 8px);min-height:535px;max-height:710px;margin:4px;border-radius:13px}
 .hero{background:#0b0a0d}
 .hero-media img{height:76%;object-position:73% 46%}
 .hero::after{background:linear-gradient(180deg,#08090bbd 0%,transparent 22%,#0b0a0d0e 38%,#0b0a0d6b 55%,#0b0a0d 76%)}
 .hero-inner{padding:0 16px 22px;display:grid;gap:22px}
 .hero-kicker{margin-left:2px;margin-bottom:11px;font-size:10px}
 h1{font-size:clamp(53px,14.85vw,101px)}
 h1 span{padding-left:.47em}
 .hero-action{display:flex;align-items:center;flex-wrap:wrap;gap:13px;padding:0}
 .hero-work{font-size:12px}
 .hero-work .icon{width:14px;height:14px}
 .section{padding-block:44px}
 .section-head{align-items:start;flex-direction:column;gap:12px;margin-bottom:17px}
 h2{font-size:clamp(42px,10.3vw,68px)}
 .service-grid{grid-template-columns:1fr;gap:8px}
 .service-card{min-height:0;padding:15px}
 .service-top{margin-bottom:11px}
 .service-top .icon{width:23px;height:23px}
 .service-card h3{font-size:17px}
 .service-card p{margin-top:5px}
 .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .work-card{aspect-ratio:4/5}
 .work-caption{font-size:12px;padding:9px}
 .work-caption .icon{width:13px;height:13px}
 .review-actions{gap:12px}
 .review-card{padding:11px;gap:8px}
 .review-card p,.review-card h3{font-size:12px}
 .location-panel{grid-template-columns:1fr;min-height:0}
 .location-copy{padding:20px}
 .map{min-height:275px}
 .footer-inner{min-height:67px}
}
@media(max-width:350px){.hero-inner{padding-inline:12px}.hero-action{gap:8px}.hero-work{font-size:11px}}
