:root{
  --yellow:#ffd500;
  --yellow-dark:#e5bf00;
  --black:#111111;
  --charcoal:#1c1c1c;
  --gray:#6e6e6e;
  --light:#f6f6f3;
  --white:#ffffff;
  --border:#e3e3df;
  --shadow:0 14px 35px rgba(0,0,0,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#222;background:#fff;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1180px,92%);margin:auto}
.topbar{background:var(--black);color:#fff}
.topbar .container{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;align-items:center;min-height:82px;gap:24px}
.logo-wrap{background:#fff;align-self:stretch;display:flex;align-items:center;padding:10px 24px 10px 0;clip-path:polygon(0 0,100% 0,92% 100%,0 100%)}
.logo-wrap img{width:280px;max-height:70px;object-fit:contain}
.top-item{display:flex;gap:12px;align-items:center;font-size:14px}
.top-icon{width:38px;height:38px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;color:#111;font-weight:700}
.top-label{font-size:11px;text-transform:uppercase;letter-spacing:1.3px;color:#c9c9c9}.top-value{font-weight:700;font-size:15px}
.nav{background:var(--yellow);position:sticky;top:0;z-index:40;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.nav .container{display:flex;justify-content:space-between;align-items:center;min-height:58px}
.nav-links{display:flex;gap:34px;align-items:center;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.5px}
.nav-links a{padding:20px 0;position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:10px;height:2px;background:#111;transform:scaleX(0);transition:.25s}.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1)}
.nav-cta{background:#111;color:#fff;padding:12px 18px;font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:.7px}
.menu-btn{display:none;border:0;background:transparent;font-size:27px}
.hero{min-height:650px;position:relative;display:grid;align-items:center;color:#fff;overflow:hidden;background:#222 url('https://firebasestorage.googleapis.com/v0/b/clientesimages.appspot.com/o/Paginas%2F6346d473168be7403c3965d0%2Fgallery%2FJPS%20Painting-2025-04-29T15%3A54%3A07.844Z-5.jpg?alt=media&token=3ffaa7a3-48ab-4bbd-9a8b-39011d61aef1') center/cover no-repeat}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.83) 0%,rgba(0,0,0,.58) 45%,rgba(0,0,0,.14) 100%)}
.hero-content{position:relative;z-index:2;max-width:720px;padding:80px 0}
.kicker{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:2px;color:var(--yellow)}
.kicker:before{content:"";width:44px;height:3px;background:var(--yellow)}
h1{font-size:clamp(46px,6vw,78px);line-height:1.02;margin:18px 0 22px;font-family:Georgia,serif;font-weight:700}
.hero p{font-size:18px;max-width:650px;color:#f1f1f1}
.btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.8px}.btn-primary{background:var(--yellow);color:#111}.btn-dark{background:#111;color:#fff;border:1px solid #333}.btn-outline{border:2px solid #fff;color:#fff}
.intro{padding:86px 0 52px}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:start}
.section-title{font-family:Georgia,serif;font-size:clamp(34px,4vw,52px);line-height:1.12;margin:12px 0 20px;color:#111}.lead{font-size:17px;color:#555}
.video-card{position:relative;min-height:340px;background:#111 url('https://firebasestorage.googleapis.com/v0/b/clientesimages.appspot.com/o/Paginas%2F6346d473168be7403c3965d0%2Fgallery%2FJPS%20Painting-2025-04-29T15%3A54%3A07.843Z-1.jpg?alt=media&token=181b570d-3e06-41a5-9747-fbd7ea7ad512') center/cover no-repeat;box-shadow:var(--shadow);overflow:hidden}.video-card:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.28)}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-size:26px;font-weight:700}
.quality-strip{background:var(--black);color:#fff;padding:34px 0}.quality-strip .container{display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:center}.quality-strip h3{margin:0;font-family:Georgia,serif;font-size:29px;color:var(--yellow)}.quality-strip p{margin:0;color:#ddd}
.services-home{padding:78px 0;background:var(--light)}.center{text-align:center;max-width:780px;margin:0 auto}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:42px}
.service-card{perspective:1000px;height:390px}.flip{position:relative;width:100%;height:100%;transition:transform .65s;transform-style:preserve-3d}.service-card:hover .flip{transform:rotateY(180deg)}.face{position:absolute;inset:0;backface-visibility:hidden;overflow:hidden;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.08)}.front img{width:100%;height:250px;object-fit:cover;transition:transform .55s}.front:hover img{transform:scale(1.06)}.front .caption{padding:22px;border-top:5px solid var(--yellow)}.front h3,.back h3{font-family:Georgia,serif;font-size:24px;margin:0 0 8px}.front p{margin:0;color:#777;font-size:14px}.back{transform:rotateY(180deg);background:#111;color:#fff;padding:30px;display:flex;flex-direction:column;justify-content:center}.back h3{color:var(--yellow)}.back p{color:#ddd}.back .btn{margin-top:15px;align-self:flex-start}
.about-band{padding:88px 0;background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.about-photo{position:relative}.about-photo img{height:580px;width:100%;object-fit:cover}.years{position:absolute;right:-25px;bottom:40px;background:var(--yellow);padding:24px 28px;box-shadow:var(--shadow)}.years strong{display:block;font-size:48px;line-height:1}.years span{font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:1px}.values{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:26px 0}.value{border-left:4px solid var(--yellow);padding:9px 12px;background:#fafafa;font-weight:700}
.standards{padding:82px 0;background:#111;color:#fff}.standards-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:58px;align-items:center}.standards .section-title{color:#fff}.standards p{color:#d4d4d4}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}.pillar{border:1px solid #373737;padding:22px}.pillar strong{display:block;color:var(--yellow);margin-bottom:8px}.standards img{min-height:520px;object-fit:cover}
.cta{padding:72px 0;background:var(--yellow);color:#111}.cta .container{display:flex;justify-content:space-between;gap:30px;align-items:center}.cta h2{font-family:Georgia,serif;font-size:42px;line-height:1.1;margin:0 0 10px}.cta p{margin:0;max-width:700px}.cta .btn{background:#111;color:#fff;white-space:nowrap}
.experience{padding:78px 0}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.experience img{height:460px;width:100%;object-fit:cover}.service-list{columns:2;padding-left:0;list-style:none}.service-list li{padding:7px 0 7px 22px;position:relative}.service-list li:before{content:"✓";position:absolute;left:0;color:#d4b000;font-weight:900}
.page-hero{min-height:330px;display:grid;align-items:center;color:#fff;background:linear-gradient(rgba(0,0,0,.68),rgba(0,0,0,.68)),url('https://firebasestorage.googleapis.com/v0/b/clientesimages.appspot.com/o/Paginas%2F6346d473168be7403c3965d0%2Fgallery%2FJPS%20Painting-2025-04-29T15%3A54%3A07.843Z-1.jpg?alt=media&token=181b570d-3e06-41a5-9747-fbd7ea7ad512') center/cover}.page-hero h1{font-size:54px;margin-bottom:6px}.breadcrumb{color:#ddd}.breadcrumb span{color:var(--yellow)}
.content-section{padding:82px 0}.service-detail{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;padding:54px 0;border-bottom:1px solid var(--border)}.service-detail:nth-child(even) .detail-img{order:2}.service-detail h2{font-family:Georgia,serif;font-size:37px;margin:0 0 16px}.detail-img{height:360px;overflow:hidden;background:#eee}.detail-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.detail-img:hover img{transform:scale(1.05)}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{position:relative;height:300px;overflow:hidden;background:#eee;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.45s}.gallery-item:hover img{transform:scale(1.08)}.gallery-item:after{content:"View Project";position:absolute;inset:auto 0 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;padding:55px 20px 18px;font-weight:700;transform:translateY(24px);opacity:0;transition:.35s}.gallery-item:hover:after{transform:none;opacity:1}
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review{padding:28px;background:#fff;border-top:5px solid var(--yellow);box-shadow:0 8px 26px rgba(0,0,0,.08)}.stars{color:#e4bd00;letter-spacing:4px}.review strong{display:block;margin-top:18px}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px}.contact-card{background:#111;color:#fff;padding:34px}.contact-card h2{font-family:Georgia,serif;color:var(--yellow)}.contact-line{padding:14px 0;border-bottom:1px solid #333}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}input,textarea,select{width:100%;border:1px solid #ddd;padding:14px;font:inherit;background:#fff}textarea{min-height:150px;resize:vertical}.submit{border:0;cursor:pointer;background:var(--yellow);font-weight:800;padding:14px 20px;text-transform:uppercase}
.footer{background:#111;color:#d8d8d8;padding-top:62px;position:relative}.footer:before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--yellow)}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:38px}.footer-logo{background:#fff;padding:12px;max-width:260px;margin-bottom:18px}.footer h4{color:#fff;font-family:Georgia,serif;font-size:20px;margin-top:0}.footer ul{list-style:none;padding:0;margin:0}.footer li{padding:6px 0}.footer textarea{background:#1d1d1d;border-color:#333;color:#fff;min-height:100px}.bottom{margin-top:44px;border-top:1px solid #2f2f2f;padding:18px 0;font-size:13px;display:flex;justify-content:space-between;gap:20px}.floating-call{position:fixed;right:20px;bottom:20px;z-index:50;background:var(--yellow);color:#111;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-weight:900;box-shadow:var(--shadow)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:100;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-height:88vh;max-width:92vw}.lightbox button{position:absolute;top:20px;right:22px;background:transparent;border:0;color:#fff;font-size:38px;cursor:pointer}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.topbar .container{grid-template-columns:1fr 1fr}.logo-wrap{grid-column:1/-1;clip-path:none;padding-right:0;justify-content:center}.nav-links{display:none;position:absolute;top:58px;left:0;right:0;background:var(--yellow);padding:20px;flex-direction:column;gap:4px;align-items:flex-start}.nav-links.open{display:flex}.menu-btn{display:block}.nav-cta{display:none}.services-grid{grid-template-columns:repeat(2,1fr)}.intro-grid,.about-grid,.standards-grid,.experience-grid,.contact-grid,.service-detail{grid-template-columns:1fr}.service-detail:nth-child(even) .detail-img{order:0}.footer-grid{grid-template-columns:1fr 1fr}.quality-strip .container{grid-template-columns:1fr}.pillars{grid-template-columns:1fr}.years{right:15px}.gallery-grid,.reviews{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.topbar .container{grid-template-columns:1fr;padding-bottom:18px}.logo-wrap{grid-column:auto}.top-item{justify-content:flex-start}.hero{min-height:580px}.hero-content{padding:60px 0}.services-grid,.gallery-grid,.reviews,.footer-grid{grid-template-columns:1fr}.service-card{height:360px}.service-card:hover .flip{transform:none}.service-card.flipped .flip{transform:rotateY(180deg)}.about-photo img{height:420px}.cta .container{flex-direction:column;align-items:flex-start}.service-list{columns:1}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.bottom{flex-direction:column}.page-hero{min-height:270px}.page-hero h1{font-size:42px}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
