:root{--orange:#ff6a2a;--visual:#b6a9ff}
.inner-page{background:var(--paper)}
.inner-page .site-header{height:76px;background:rgba(239,238,233,.96);color:var(--ink);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.inner-page .brand{filter:none}
.desktop-nav{gap:clamp(18px,2.2vw,32px)}
.page-main{padding-top:76px}
.page-hero{min-height:78svh;padding:clamp(120px,15vw,210px) var(--pad) 70px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}
.page-hero.has-image{color:white;background:#262824}
.page-hero.has-image:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(8,10,8,.72),rgba(8,10,8,.05) 72%),var(--hero);background-size:cover;background-position:center}
.page-hero>*{position:relative;z-index:1}
.page-kicker{display:flex;align-items:center;gap:16px;margin-bottom:28px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800}
.page-kicker:before{content:"";width:42px;height:1px;background:currentColor}
.page-hero h1{font-size:clamp(58px,8.4vw,128px);line-height:.88;max-width:1120px;margin:0;letter-spacing:-.06em;font-weight:400}
.page-hero h1 em{font-family:Georgia,serif;font-style:italic;font-weight:400}
.page-hero-copy{max-width:720px;margin:34px 0 0 auto;font-size:clamp(17px,1.6vw,23px);color:#575950}
.has-image .page-hero-copy{color:rgba(255,255,255,.76);margin-left:0}
.content-section{padding:clamp(80px,10vw,150px) var(--pad)}
.content-section.alt{background:#e3e1da}
.content-section.dark{background:var(--ink);color:white}
.split{display:grid;grid-template-columns:minmax(220px,.8fr) 1.7fr;gap:clamp(45px,9vw,150px)}
.split-copy{max-width:850px}
.split-copy h2,.section-heading h2,.cta-panel h2{font-size:clamp(40px,5.5vw,82px);font-weight:400;line-height:1;letter-spacing:-.05em;margin-bottom:38px}
.split-copy p{font-size:17px;color:#5c5e57;max-width:760px}
.dark .split-copy p{color:rgba(255,255,255,.62)}
.big-lede{font-size:clamp(25px,3vw,44px)!important;line-height:1.18;color:inherit!important}
.number-list{list-style:none;padding:0;margin:50px 0 0;border-top:1px solid var(--line)}
.number-list li{display:grid;grid-template-columns:55px 1fr;padding:22px 0;border-bottom:1px solid var(--line)}
.number-list span{font-size:11px;opacity:.5}
.number-list strong{font-size:18px;font-weight:400}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:60px}
.value-card{border:1px solid var(--line);padding:30px;min-height:230px}
.value-card span{font-size:11px;opacity:.55}.value-card h3{font-size:26px;font-weight:400;margin:58px 0 14px}.value-card p{color:#65675f}
.ceo-feature{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(45px,8vw,120px);align-items:center;background:#deddd7}
.ceo-feature img{min-height:720px;height:75vw;max-height:950px;object-fit:cover;object-position:center top;filter:grayscale(1)}
.ceo-copy blockquote{font-family:Georgia,serif;font-style:italic;font-size:clamp(27px,3vw,43px);line-height:1.18;margin:42px 0 0;padding-top:28px;border-top:1px solid var(--line)}
.project-index{padding:clamp(80px,10vw,140px) var(--pad)}
.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:45px}
.filter-row button{border:1px solid var(--line);background:transparent;border-radius:999px;padding:10px 16px;font-size:11px;text-transform:uppercase;letter-spacing:.09em;cursor:pointer}
.filter-row button.active,.filter-row button:hover{background:var(--ink);color:white}
.catalog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.catalog-card{position:relative;min-height:600px;overflow:hidden;color:white;background:#bbb}
.catalog-card[hidden]{display:none}
.catalog-card img{position:absolute;inset:0;height:100%;object-fit:cover;transition:transform .7s}
.catalog-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 55%)}
.catalog-card:hover img{transform:scale(1.035)}
.catalog-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;border-top:1px solid rgba(255,255,255,.55);padding-top:16px;display:flex;justify-content:space-between;align-items:end}
.catalog-copy h2{font-size:clamp(25px,3vw,44px);font-weight:400;margin:0}.catalog-copy span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;opacity:.7}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}
.service-card{background:var(--paper);padding:clamp(32px,4vw,62px);min-height:430px}
.service-card:nth-child(3n){background:#e3e1da}
.service-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.service-card-head>span{font-size:11px;opacity:.45}
.service-icon{width:82px;height:82px;flex:0 0 auto;color:var(--ink);fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;transition:transform .4s ease}
.service-icon .icon-accent{fill:var(--acid);stroke:var(--ink)}
.service-card:hover .service-icon{transform:translateY(-5px) rotate(-2deg)}
.service-card h2{font-size:clamp(28px,3vw,46px);font-weight:400;line-height:1.05;margin:42px 0 24px}
.service-card ul{padding-left:18px;color:#62645d}.service-card li{margin:7px 0}
.image-band{height:min(70vw,860px);overflow:hidden}.image-band img{height:100%;object-fit:cover}
.visuals-page{background:#101110;color:white}.visuals-page .site-header{background:rgba(16,17,16,.92);color:white;border-color:rgba(255,255,255,.16)}.visuals-page .brand{filter:invert(1)}
.visuals-intro{background:#101110;color:white}.visuals-intro p{color:rgba(255,255,255,.62)}
.masonry{columns:3 320px;column-gap:14px;padding:14px;background:#101110}.masonry figure{break-inside:avoid;margin:0 0 14px;position:relative;overflow:hidden;cursor:zoom-in;outline:none}.masonry figure:after{content:"Ampliar  ↗";position:absolute;right:14px;bottom:14px;padding:8px 10px;background:rgba(16,17,16,.78);color:#fff;font-size:9px;text-transform:uppercase;letter-spacing:.12em;opacity:0;transform:translateY(5px);transition:.25s}.masonry figure:hover:after,.masonry figure:focus-visible:after{opacity:1;transform:none}.masonry figure:focus-visible{box-shadow:inset 0 0 0 2px var(--visual)}.masonry img{min-height:260px;object-fit:cover;transition:transform .7s}.masonry figure:hover img{transform:scale(1.025)}
.lightbox-open{overflow:hidden}
.visual-lightbox{position:fixed;z-index:120;inset:0;background:rgba(8,9,8,.96);display:grid;grid-template-columns:76px minmax(0,1fr) 76px;align-items:center;padding:28px;color:#fff;backdrop-filter:blur(16px)}
.visual-lightbox[hidden]{display:none}
.visual-lightbox-stage{margin:0;display:grid;grid-template-rows:minmax(0,1fr) auto;height:calc(100svh - 56px);min-width:0}
.visual-lightbox-stage img{width:100%;height:100%;min-height:0;object-fit:contain}
.visual-lightbox-stage figcaption{display:flex;justify-content:space-between;gap:30px;padding-top:14px;border-top:1px solid rgba(255,255,255,.28);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.7)}
.visual-lightbox button{border:0;background:transparent;color:#fff;cursor:pointer}
.visual-lightbox-close{position:absolute;right:28px;top:22px;z-index:2;width:48px;height:48px;font-size:38px;font-weight:200;line-height:1}
.visual-lightbox-arrow{width:56px;height:56px;border:1px solid rgba(255,255,255,.28)!important;border-radius:50%!important;font-size:21px;justify-self:center;transition:.25s}
.visual-lightbox-arrow:hover,.visual-lightbox-arrow:focus-visible{background:#fff;color:#101110}
.works-page{background:#1f211e;color:white}.works-page .site-header{background:rgba(31,33,30,.94);color:white;border-color:rgba(255,255,255,.15)}.works-page .brand{filter:invert(1)}
.works-page .page-hero{background:#1f211e}.works-page .page-kicker{color:var(--orange)}
.works-page .content-section{background:#1f211e}.works-page .content-section.alt{background:#292b27}.works-page .split-copy p{color:rgba(255,255,255,.62)}
.works-services{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.16)}
.works-service{padding:40px;background:#20221f;min-height:420px}.works-service span{color:var(--orange);font-size:11px}.works-service h2{font-size:clamp(30px,3.4vw,49px);font-weight:400;line-height:1.05;margin:70px 0 25px}.works-service p{color:rgba(255,255,255,.55)}
.orange-button{background:var(--orange);color:var(--ink)}
.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.contact-actions .button{margin:0}
.whatsapp-float{position:fixed;z-index:48;right:clamp(18px,3vw,46px);top:clamp(108px,16vh,155px);width:68px;height:68px;display:grid;place-items:center;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 12px 34px rgba(0,0,0,.28);transition:transform .25s,box-shadow .25s,background .25s}
.whatsapp-float:before{content:"";position:absolute;inset:-7px;border:1px solid rgba(37,211,102,.42);border-radius:50%}
.whatsapp-float svg{width:39px;height:39px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.whatsapp-float svg path+path{fill:currentColor;stroke:none}
.whatsapp-float>span{position:absolute;right:calc(100% + 13px);padding:9px 12px;border-radius:4px;background:#101110;color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;opacity:0;transform:translateX(6px);pointer-events:none;transition:.2s}
.whatsapp-float:hover,.whatsapp-float:focus-visible{transform:translateY(-3px) scale(1.04);background:#20bf5b;box-shadow:0 16px 42px rgba(0,0,0,.36)}
.whatsapp-float:hover>span,.whatsapp-float:focus-visible>span{opacity:1;transform:none}
.contact-page-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:10vw}.contact-page-grid .contact-form{color:var(--ink)}
.contact-page-grid .contact-form label{color:#686a62}.contact-page-grid .contact-form input,.contact-page-grid .contact-form select,.contact-page-grid .contact-form textarea{color:var(--ink);border-color:var(--line)}
.contact-page-details a.main-contact{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);font-size:clamp(15px,1.35vw,20px);letter-spacing:.015em;word-break:break-word;transition:color .2s,padding-left .2s}
.contact-page-details a.main-contact:after{content:"↗";flex:0 0 auto;font-size:13px;opacity:.45}
.contact-page-details a.main-contact:hover,.contact-page-details a.main-contact:focus-visible{color:#5e6158;padding-left:6px}
.contact-page-details address{color:#62645d;margin:34px 0}
.office-list{margin-top:42px;border-top:1px solid var(--line)}
.office-card{padding:24px 0 28px;border-bottom:1px solid var(--line)}
.office-card>span{display:block;margin-bottom:12px;font-size:10px;text-transform:uppercase;letter-spacing:.14em;opacity:.55}
.office-card h2,.office-card h3{font-size:clamp(21px,2vw,29px);font-weight:400;line-height:1.12;margin:0 0 18px}
.office-card address{margin:0!important;color:inherit!important;opacity:.72}
.office-card>p{margin:17px 0 0;font-size:12px;line-height:1.7;text-transform:uppercase;letter-spacing:.08em;opacity:.62}
.office-card .text-link{display:inline-block;margin-top:18px}
.contact-social{display:inline-block;margin-top:28px}
.office-list-dark{border-color:rgba(255,255,255,.22);width:100%}
.office-list-dark .office-card{border-color:rgba(255,255,255,.22)}
.office-list-dark .office-card h3{color:#fff}
.office-list-dark .office-card address,.office-list-dark .office-card>p{color:rgba(255,255,255,.72)}
.logistics-callout{background:var(--acid);color:var(--ink);padding:clamp(55px,8vw,110px) var(--pad);display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}
.logistics-callout h2{font-size:clamp(43px,6vw,90px);line-height:.92;font-weight:400;letter-spacing:-.055em;margin:0}.logistics-callout p{max-width:520px}
.project-detail-hero{min-height:90svh}.project-detail-hero h1{max-width:1250px}.project-detail-meta{display:flex;gap:30px;margin-top:28px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.project-story{display:grid;grid-template-columns:.8fr 1.6fr;gap:8vw}.project-story h2{font-size:clamp(38px,5vw,72px);font-weight:400;line-height:1;margin:0}.project-story p{font-size:18px;color:#5e6059;max-width:760px}
.project-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding:14px;background:#d3d1ca}.project-gallery figure{margin:0;min-height:55vw;max-height:900px;overflow:hidden;background:#bbb}.project-gallery figure:nth-child(3n){grid-column:1/-1;min-height:65vw}.project-gallery img{height:100%;object-fit:cover}
.back-link{display:inline-block;margin-bottom:36px;border-bottom:1px solid currentColor;padding-bottom:5px}
.cta-panel{text-align:center;padding:clamp(90px,12vw,170px) var(--pad);background:#e3e1da}.cta-panel h2{max-width:900px;margin:0 auto 38px}
@media(max-width:900px){
  .split,.ceo-feature,.contact-page-grid,.logistics-callout,.project-story{grid-template-columns:1fr}
  .values-grid,.works-services{grid-template-columns:1fr 1fr}
  .ceo-feature img{min-height:110vw;height:110vw}
  .catalog-card{min-height:70vw}.service-grid{grid-template-columns:1fr}
  .project-gallery{grid-template-columns:1fr}.project-gallery figure,.project-gallery figure:nth-child(3n){grid-column:auto;min-height:0;max-height:none}.project-gallery img{height:auto;object-fit:contain}
}
@media(max-width:600px){
  .page-hero{min-height:70svh}.page-hero h1{font-size:54px}.page-hero-copy{font-size:16px}
  .values-grid,.works-services,.catalog-grid{grid-template-columns:1fr}.value-card{min-height:190px}.catalog-card{min-height:125vw}
  .service-card{min-height:auto}.service-icon{width:68px;height:68px}.service-card h2{margin-top:32px}
  .catalog-copy{display:block}.catalog-copy span{display:block;margin-top:8px}
  .project-detail-meta{display:block}.project-detail-meta span{display:block;margin-top:8px}
  .masonry{columns:1}.masonry img{min-height:0;height:auto;object-fit:contain}.image-band{height:auto}.image-band img{height:auto;object-fit:contain}.footer-brand{width:145px}
  .visual-lightbox{grid-template-columns:52px minmax(0,1fr) 52px;padding:18px 8px}.visual-lightbox-stage{height:calc(100svh - 36px)}.visual-lightbox-arrow{width:44px;height:44px}.visual-lightbox-close{right:10px;top:8px}.visual-lightbox-stage figcaption{font-size:9px}
  .contact-actions{display:grid}.contact-actions .button{width:100%}
  .whatsapp-float{top:96px;right:16px;width:58px;height:58px}.whatsapp-float svg{width:34px;height:34px}.whatsapp-float>span{display:none}
}

/* Equipo Sublime Works */
.works-team-feature{position:relative;height:min(68vw,840px);overflow:hidden;background:#171816}
.works-team-feature img{height:100%;object-fit:cover}
.works-team-caption{position:absolute;left:var(--pad);right:var(--pad);bottom:28px;display:flex;justify-content:space-between;align-items:end;padding-top:16px;border-top:1px solid rgba(255,255,255,.65);color:white}
.works-team-caption span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.works-team-caption strong{font-size:clamp(18px,2vw,30px);font-weight:400}
@media(max-width:900px){.works-team-feature{height:82vw}}
@media(max-width:600px){.works-team-feature{height:auto}.works-team-feature img{height:auto;object-fit:contain}.works-team-feature:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.68));pointer-events:none}.works-team-caption{display:block;z-index:1}.works-team-caption strong{display:block;margin-top:8px}}
