:root{--paper:#faf9f6;--white:#fff;--ink:#24272a;--muted:#676b6c;--bronze:#896344;--silver:#d2d2ce;--line:#deddd7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--bronze);outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08}em{font-weight:400;color:var(--bronze)}h1{font-size:clamp(48px,5vw,78px);letter-spacing:-3px}h2{font-size:clamp(38px,4vw,58px);letter-spacing:-1.8px}h3{font-size:28px}p+p{margin-top:20px}.eyebrow{color:var(--bronze);font-size:11px;letter-spacing:2.2px;font-weight:600;margin-bottom:23px}.wrap{max-width:1360px;margin:auto;padding:100px 6%}.brand{font:34px/1 Georgia,serif;letter-spacing:3px;display:block}.brand span{font:8px/1.5 Arial,sans-serif;letter-spacing:2px;display:block;margin-top:8px;color:var(--bronze)}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:rgba(250,249,246,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}nav{display:flex;gap:32px;align-items:center;font-size:13px}.nav-cta{border-bottom:1px solid var(--bronze);padding-bottom:7px}.menu{display:none}.hero{min-height:650px;display:grid;grid-template-columns:1fr 1fr;position:relative;border-bottom:1px solid var(--line)}.hero-copy{padding:85px 6% 70px 10%}.hero .lead{font-size:19px;color:var(--muted);margin-top:32px;line-height:1.6}.actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:34px}.button{display:inline-flex;justify-content:space-between;gap:25px;align-items:center;background:var(--bronze);color:white;padding:16px 23px;font-size:13px;border:1px solid var(--bronze)}.button:hover{background:#6e4b30}.text-link{font-size:12px;border-bottom:1px solid var(--silver)}.hero-image{margin:30px 30px 58px 0;position:relative;min-height:500px;overflow:hidden}.hero-image img{height:100%;position:absolute;object-position:center}.hero-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0008)}figcaption{position:absolute;bottom:24px;left:26px;color:white;font-size:15px;z-index:1}figcaption span{display:block;letter-spacing:2px;font-size:9px;margin-bottom:5px}.hero-foot{display:flex;gap:20px;font-size:9px;letter-spacing:1.2px;margin-top:55px;color:var(--muted)}.hero-index{position:absolute;right:30px;bottom:17px;font-size:9px;letter-spacing:2px;color:var(--muted)}.story{display:grid;grid-template-columns:1fr 1fr;gap:65px}.story-copy{color:var(--muted)}.big{font-size:22px;color:var(--ink);line-height:1.4}.signature{border-top:1px solid var(--line);margin-top:28px;padding-top:20px;display:grid;font-size:14px}.signature span{font-size:12px}.services{background:#efefeb}.section-top{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:45px}.section-top>p{max-width:360px;color:var(--muted);font-size:14px}.service-list{margin-top:50px}.service-list article{display:grid;grid-template-columns:55px 1fr 1fr;gap:30px;padding:27px 0;border-top:1px solid #ccceca;align-items:start}.service-list article>span{font-size:12px;color:var(--bronze)}.service-list h3{font-size:25px}.service-list p{color:var(--muted);font-size:14px}.filters{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:25px}.filters button{background:transparent;border:1px solid transparent;padding:9px 14px;font-size:12px;color:var(--muted)}.filters button.active{border-color:var(--bronze);color:var(--bronze)}.result-count{font-size:11px;color:var(--muted);margin:16px 0}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 24px}.project{background:none;border:0;padding:0;text-align:left;color:var(--ink);width:100%}.project figure{overflow:hidden;aspect-ratio:4/3;background:#deddd7}.project img{height:100%;transition:transform .35s}.project:hover img{transform:scale(1.04)}.project .meta{font-size:9px;letter-spacing:1.3px;color:var(--bronze);margin:17px 0 6px}.project h3{font-size:25px;display:flex;justify-content:space-between;gap:8px}.project .location{font-size:12px;color:var(--muted);margin-top:7px}.project h3 span{font:20px Arial}.outline{color:var(--bronze);background:transparent;margin-top:40px}.outline:hover{color:white}.archive{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;margin-top:45px;font-size:14px}.archive summary{cursor:pointer;display:flex;justify-content:space-between}.archive p{max-width:900px;color:var(--muted);margin-top:20px}.coverage{background:#e7e8e4}.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.coverage-grid p{font-size:15px;color:#555a5a}.places{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.places span{font-size:12px;border:1px solid #b8bcb8;padding:6px 13px}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.contact>div>p:last-child{max-width:440px;color:var(--muted);font-size:15px;margin-top:26px}.contact-card{padding:40px;border:1px solid var(--silver);border-top:3px solid var(--bronze)}.contact-card h3{font-size:36px;margin:14px 0 25px}.phone{display:block;font-size:23px;margin-bottom:25px}.contact-card .button{width:100%}.contact-card p{font-size:12px!important}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:40px 6%;border-top:1px solid var(--line)}footer p,footer small{font-size:11px;color:var(--muted)}dialog{border:0;padding:0;max-width:950px;width:90vw;max-height:90vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#1b1e22bb}.dialog-copy{padding:50px}.dialog-copy h2{font-size:42px}.dialog-copy p{margin-top:15px}.dialog-copy small{display:block;margin-top:20px;color:var(--muted)}#dialog-photos{padding:0 30px 30px;display:grid;gap:20px}#dialog-photos img{height:auto;max-height:700px;object-fit:contain;background:#e7e7e2}.close{position:sticky;top:12px;float:right;margin:12px 12px 0 0;background:var(--paper);border:1px solid var(--silver);height:40px;width:40px;z-index:1}.skip{position:fixed;left:15px;top:-80px;z-index:20;background:white;padding:10px}.skip:focus{top:10px}[hidden]{display:none!important}@media(max-width:1000px){nav{gap:18px}.hero-copy{padding-top:60px}h1{font-size:58px}.hero-foot{gap:12px}.project-grid{grid-template-columns:repeat(2,1fr)}.contact{gap:40px}footer{flex-wrap:wrap}}@media(max-width:700px){header{height:80px}.brand{font-size:29px}.menu{display:block;background:none;border:0;font-size:13px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line)}nav.open{display:flex;align-items:start;flex-direction:column}.hero{display:flex;flex-direction:column}.hero-copy{padding:50px 6% 30px}h1{font-size:53px;letter-spacing:-2px}.hero .lead{font-size:17px}.hero-foot{margin-top:35px}.hero-image{margin:0 6% 45px;min-height:320px}.hero-index{right:6%;font-size:8px}.wrap{padding:65px 6%}.story,.coverage-grid,.contact{grid-template-columns:1fr;gap:30px}.section-top{display:block}.section-top>p{margin-top:25px}.service-list article{grid-template-columns:25px 1fr;gap:13px}.service-list p{grid-column:2}.service-list h3{font-size:24px}.project-grid{gap:28px 15px}.project h3{font-size:22px}.project .meta{font-size:8px}.project .location{font-size:11px}.filters{gap:3px}.filters button{padding:8px;font-size:11px}.contact-card{padding:28px}.phone{font-size:22px}.dialog-copy{padding:35px 23px}.dialog-copy h2{font-size:32px}#dialog-photos{padding:0 15px 20px}footer{display:grid;gap:22px}.eyebrow{font-size:10px;letter-spacing:1.7px}h2{font-size:39px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.brand img{width:180px;height:63px;object-fit:contain}.signature .text-link{justify-self:start;margin-top:12px}.portfolio-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0}.portfolio-tools>p{font-size:12px;color:var(--muted);max-width:220px}.view-options{display:flex;gap:8px;flex-wrap:wrap}.view-options button{border:1px solid var(--silver);background:transparent;padding:12px 18px;font-size:13px}.view-options button.active{background:var(--ink);border-color:var(--ink);color:white}.project-period{font-size:11px;color:var(--bronze);margin-top:10px!important}.project figure img{object-fit:contain;background:#e9e9e5}.project-grid.timeline{display:flex;flex-direction:column;gap:0;border-left:1px solid var(--bronze);margin-left:10px;padding-left:32px}.timeline .project{display:grid;grid-template-columns:190px 1fr;gap:28px;position:relative;padding:24px 0;border-bottom:1px solid var(--line);align-items:center}.timeline .project:before{content:'';position:absolute;left:-38px;top:50%;width:10px;height:10px;background:var(--bronze);border-radius:50%}.timeline .project-copy{display:flex;flex-direction:column}.timeline .project-period{order:-1;margin:0 0 8px!important;font-size:17px}.timeline .meta{margin:0 0 6px}.timeline-note{font-size:12px;color:var(--muted);margin-top:25px}.credential-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.credential-grid article{padding:35px;border:1px solid var(--silver);border-top:3px solid var(--bronze)}.credential-grid h3{margin-top:20px}.credential-grid p{font-size:14px;color:var(--muted);margin-top:20px}.credential-grid .credential-number{font-size:26px;color:var(--bronze);font-family:Georgia,serif}.credential-grid a{display:inline-block;margin-top:20px;font-size:13px}.credential-grid small{display:block;margin-top:20px;color:var(--muted);font-size:11px}.process{background:#eeefeb}.process ol{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:0;margin:45px 0 0}.process li{counter-increment:step;border-top:1px solid #b4b8b4;padding-top:20px}.process li:before{content:'0' counter(step);display:block;color:var(--bronze);margin-bottom:15px;font-size:13px}.process strong{font:23px/1.2 Georgia,serif;display:block}.process p{font-size:13px;margin-top:15px;color:var(--muted)}.policy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.policy-grid article{border-left:1px solid var(--silver);padding-left:20px}.policy-grid h3{font-size:23px}.policy-grid p{margin-top:16px;font-size:13px;color:var(--muted)}.origin{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:20px 55px}.origin .eyebrow{grid-column:1/-1;margin:0}.origin p:not(.eyebrow){color:var(--muted);font-size:15px;align-self:center}.origin h2{font-size:38px}.origin details{grid-column:1/-1;font-size:13px;color:var(--muted);margin-top:15px}.origin summary{cursor:pointer}.origin details p{margin-top:15px;max-width:800px}.footer-links{display:flex;gap:20px;font-size:12px;color:var(--muted)}.contact-email{display:inline-block;margin-top:20px;font-size:14px;border-bottom:1px solid var(--silver)}#dialog-period{color:var(--bronze);font-size:14px}#dialog-photos img{max-height:75vh}.policy .archive .button{margin-top:22px}.hero-image img{object-position:center}@media(max-width:800px){.policy-grid,.process ol{grid-template-columns:1fr 1fr}.portfolio-tools{align-items:start;flex-direction:column}.portfolio-tools>p{max-width:none}.credential-grid{gap:15px}.credential-grid article{padding:25px}}@media(max-width:700px){.brand img{width:145px;height:52px}.origin,.credential-grid{grid-template-columns:1fr}.origin h2{font-size:34px}.origin .eyebrow,.origin details{grid-column:auto}.view-options{gap:5px}.view-options button{padding:10px 12px;font-size:11px}.timeline .project{grid-template-columns:100px 1fr;gap:16px}.timeline .project h3{font-size:21px}.project-grid.timeline{padding-left:20px;margin-left:5px}.timeline .project:before{left:-26px}.timeline .project-period{font-size:14px}.policy-grid{gap:25px 15px}.policy-grid h3{font-size:21px}.policy-grid article{padding-left:12px}.credential-grid .credential-number{font-size:24px}.footer-links{flex-wrap:wrap}.process strong{font-size:21px}}

.brand img{filter:brightness(.65) contrast(1.1)}

.dedication{background:#f1f0eb;max-width:none;padding-left:max(6%,calc((100vw - 1197px)/2));padding-right:max(6%,calc((100vw - 1197px)/2));gap:40px 70px}.dedication h2{font-size:clamp(35px,3.4vw,52px);margin-top:26px}.dedication .origin-note{font-size:13px;line-height:1.9;margin-top:26px}.dedication-copy p{line-height:1.85}.dedication-copy p:first-child{font:24px Georgia,serif;color:var(--ink)}.dedication-copy .dedication-signature{font:italic 25px Georgia,serif;color:var(--bronze);margin-top:30px}.dedication-signature span{display:block;font:11px Arial,sans-serif;letter-spacing:1.8px;margin-top:12px;color:var(--muted)}.policy-document{max-width:980px}.policy-document h1{font-size:clamp(44px,6vw,70px)}.policy-document>p:not(.eyebrow){max-width:720px;font-size:17px;color:var(--muted);margin-top:28px}.policy-document .policy-intro{font:24px Georgia,serif;color:var(--bronze)!important}.policy-document h2{font-size:34px;margin:55px 0 25px}.full-policy{list-style:none;counter-reset:policy;padding:0}.full-policy li{counter-increment:policy;padding:25px 0 25px 55px;border-top:1px solid var(--line);position:relative}.full-policy li:before{content:'0' counter(policy);position:absolute;left:0;top:28px;color:var(--bronze);font-size:12px}.full-policy h3{font-size:26px}.full-policy p{margin-top:16px;color:var(--muted)}.policy-document section p{color:var(--muted)}.policy-document-actions{display:flex;gap:25px;flex-wrap:wrap;align-items:center;margin-top:35px}.policy-document-actions .button{margin:0}.hero-image img{object-position:46% center}@media(max-width:700px){.dedication{gap:28px;padding:60px 6%}.dedication h2{font-size:37px}.dedication-copy p{font-size:15px!important}.dedication-copy .dedication-signature{font-size:25px!important}.policy-document h2{font-size:30px}.full-policy li{padding-left:36px}.full-policy h3{font-size:23px}.policy-document>p:not(.eyebrow){font-size:16px}.hero-image img{object-position:center}}

.dedication-copy p.family-origin{font:14px/1.8 Arial,Helvetica,sans-serif;color:var(--muted);padding-bottom:24px;border-bottom:1px solid var(--silver);margin-bottom:27px}.dedication-copy .family-origin+p{font:24px Georgia,serif;color:var(--ink)}

.company-wall{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--silver);border-left:1px solid var(--silver)}.company-wall span{min-height:94px;padding:18px;display:grid;place-items:center;text-align:center;border-right:1px solid var(--silver);border-bottom:1px solid var(--silver);font:600 16px Georgia,serif;letter-spacing:1px;color:#44484a}.company-wall span:nth-child(3n){font:500 13px Arial,sans-serif;letter-spacing:1.5px}.collaboration{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:55px;padding:35px 0;border-top:1px solid var(--silver);border-bottom:1px solid var(--silver);align-items:center}.collaboration h3{font-size:29px}.collaboration>p{font-size:15px;color:var(--muted);line-height:1.9}.collaboration strong{color:var(--ink)}.experience-note{font-size:11px;color:var(--muted);margin-top:20px!important}.equipment{background:#efefeb}.equipment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px}.equipment-grid article{display:grid;grid-template-columns:40px 1fr;gap:8px 20px;padding:25px 0;border-top:1px solid #caccC8}.equipment-grid article>span{grid-row:span 2;color:var(--bronze);font-size:11px}.equipment-grid h3{font-size:24px}.equipment-grid p{grid-column:2;color:var(--muted);font-size:14px}.equipment-grid b{color:var(--ink)}.project-summary{font-size:12px;line-height:1.55;color:var(--muted);margin-top:10px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project:hover .project-summary{color:var(--ink)}@media(max-width:700px){.company-wall{grid-template-columns:repeat(2,1fr)}.company-wall span{min-height:72px;font-size:14px}.collaboration{grid-template-columns:1fr;gap:18px;margin-top:35px;padding:28px 0}.equipment-grid{grid-template-columns:1fr}.equipment-grid article{grid-template-columns:28px 1fr;gap:8px 12px}.equipment-grid h3{font-size:22px}.project-summary{font-size:11px}.project-grid:not(.timeline){grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 13px}.project h3{font-size:19px}.project .project-period{font-size:10px}}/* Recorrido fotográfico y movimiento sutil */
.timeline-controls,.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:22px}.timeline-controls{margin:22px 0 8px;font-size:12px;color:var(--muted)}.timeline-controls>div,.gallery-controls>div{display:flex;gap:8px}.timeline-controls button,.gallery-controls button{width:42px;height:42px;border-radius:50%;border:1px solid var(--bronze);background:transparent;color:var(--bronze);font-size:20px;transition:background .2s,color .2s,transform .2s}.timeline-controls button:hover,.gallery-controls button:hover{background:var(--bronze);color:#fff;transform:translateY(-2px)}.project-grid.timeline{display:flex;flex-direction:row;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:12px;border:0;border-top:1px solid var(--bronze);margin:25px 0 0;padding:28px 5px 22px;scrollbar-color:var(--bronze) var(--line);scrollbar-width:thin}.timeline .project{display:block;flex:0 0 min(350px,34vw);min-width:280px;position:relative;padding:0 0 18px;border:1px solid var(--line);background:var(--white);scroll-snap-align:start}.timeline .project:before{left:22px;top:-35px;transform:none;width:11px;height:11px;box-shadow:0 0 0 5px var(--paper);z-index:1}.timeline .project figure{aspect-ratio:16/10}.timeline .project-copy{padding:0 20px 8px}.timeline .project-period{font-size:13px;margin:14px 0 7px!important}.timeline .meta{margin:10px 0 6px}.timeline .project h3{font-size:23px}.timeline .project-summary{-webkit-line-clamp:3}.photo-journal{background:#f0efeb}.photo-journal .wrap{padding-top:85px;padding-bottom:90px}.gallery-controls{flex:0 0 320px}.gallery-controls>p{font-size:12px;color:var(--muted);max-width:195px}.photo-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-color:var(--bronze) var(--line);scrollbar-width:thin;padding:2px 2px 17px}.gallery-card{position:relative;overflow:hidden;flex:0 0 clamp(290px,34vw,440px);aspect-ratio:4/3;scroll-snap-align:start;background:#d5d3cd}.gallery-card img{height:100%;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.gallery-card:hover img{transform:scale(1.055)}.gallery-card:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(15,16,16,.75))}.gallery-card figcaption{left:22px;bottom:19px;right:15px;font-size:15px}.gallery-card figcaption span{font-size:9px;letter-spacing:1.8px;color:#e6c297}.signature-mark{display:block;width:min(100%,440px);height:90px;margin:4px 0 0 -8px;overflow:hidden;mix-blend-mode:multiply}.dedication .dedication-signature{margin-bottom:0!important}.reveal{opacity:1;transform:none}.has-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.has-motion .reveal.is-visible{opacity:1;transform:translateY(0)}@media(max-width:800px){.gallery-controls{flex:1}.timeline .project{flex-basis:min(390px,72vw)}}@media(max-width:700px){.photo-journal .wrap{padding-top:62px;padding-bottom:65px}.gallery-controls{margin-top:25px}.gallery-card{flex-basis:84vw}.timeline-controls{font-size:11px}.timeline-controls button,.gallery-controls button{width:39px;height:39px}.project-grid.timeline{margin-left:0;padding-left:4px}.timeline .project{flex-basis:82vw;min-width:0}.timeline .project figure{aspect-ratio:16/10}.signature-mark{width:min(100%,360px);height:76px}}
@media(prefers-reduced-motion:reduce){.has-motion .reveal{opacity:1;transform:none;transition:none}.timeline-controls button,.gallery-controls button,.gallery-card img{transition:none}.timeline-controls button:hover,.gallery-controls button:hover,.gallery-card:hover img{transform:none}}

.equipment-gallery{margin-top:58px;padding-top:38px;border-top:1px solid #caccC8}.equipment-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:24px}.equipment-gallery-heading .eyebrow{margin-bottom:12px}.equipment-gallery-heading h3{font-size:clamp(25px,2.3vw,34px)}.equipment-gallery-heading .gallery-controls{flex:0 0 min(380px,42%)}.machine-rail{display:flex;gap:17px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-color:var(--bronze) var(--line);scrollbar-width:thin;padding:2px 2px 16px}.machine-card{height:310px;position:relative;overflow:hidden;flex:0 0 clamp(275px,30vw,360px);scroll-snap-align:start;background:#d8d7d1}.machine-card img{height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.machine-card.vertical img{object-fit:contain;background:#d8d7d1}.machine-card:hover img{transform:scale(1.045)}.machine-card:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(15,16,16,.78));pointer-events:none}.machine-card figcaption{left:20px;bottom:18px;right:15px;font-size:15px}.machine-card figcaption span{font-size:9px;letter-spacing:1.7px;color:#e6c297}@media(max-width:800px){.equipment-gallery-heading{align-items:start;flex-direction:column}.equipment-gallery-heading .gallery-controls{flex-basis:auto;width:100%}}@media(max-width:700px){.equipment-gallery{margin-top:42px;padding-top:28px}.machine-card{height:280px;flex-basis:83vw}.machine-card figcaption{font-size:14px}}

/* KIAME content refinement */
.button-light{background:transparent;color:var(--ink)}.button-light:hover{background:var(--ink);color:#fff}
nav{gap:22px}.service-list article{grid-template-columns:42px 1fr 1.15fr}.technical-strip{margin-top:42px;padding-top:28px;border-top:1px solid #ccceca}.technical-strip .eyebrow{margin-bottom:16px}.capability-list{display:flex;flex-wrap:wrap;gap:10px}.capability-list span{padding:8px 13px;border:1px solid #c8c9c4;color:#424648;font-size:12px}
.project-grid.featured-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 28px}.featured-projects .project{border:1px solid var(--line);background:#fff}.featured-projects .project figure{aspect-ratio:16/9}.featured-projects .project-copy{padding:0 24px 24px}.featured-projects .project h3{font-size:28px}.featured-projects .case-preview{margin-top:18px;border-top:1px solid var(--line)}.case-preview p{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.55;color:var(--muted)}.case-preview b{display:block;margin-bottom:4px;color:var(--bronze);font-size:10px;letter-spacing:1.2px;text-transform:uppercase}.case-link{display:inline-block;margin-top:14px;color:var(--bronze);font-size:12px}.featured-projects .project:hover{border-color:var(--bronze)}
.case-study-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:25px}.case-study-grid article{padding:19px;background:#efefeb;border-top:2px solid var(--bronze)}.case-study-grid h3{font:600 11px/1.4 Arial,sans-serif;color:var(--bronze);letter-spacing:1px;text-transform:uppercase}.case-study-grid p{margin-top:10px;font-size:14px;line-height:1.6;color:var(--ink)}
.timeline-controls{display:flex;justify-content:space-between;align-items:center;margin:15px 0;color:var(--muted);font-size:12px}.timeline-controls button,.gallery-controls button{width:42px;height:42px;border:1px solid var(--silver);background:transparent;color:var(--ink);margin-left:8px}.project-grid.timeline{display:flex;flex-direction:row;gap:22px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;border:0;border-top:1px solid var(--bronze);margin:32px 0 0;padding:30px 0 18px}.timeline .project{flex:0 0 300px;display:block;position:relative;padding:0 0 20px;border:1px solid var(--line);background:#fff;scroll-snap-align:start;align-self:stretch}.timeline .project:before{content:'';position:absolute;left:18px;top:-37px;width:11px;height:11px;background:var(--bronze);border:3px solid var(--paper);border-radius:50%}.timeline .project figure{aspect-ratio:4/3}.timeline .project-copy{padding:16px}.timeline .project h3{font-size:22px}.timeline .project-summary{margin-top:10px!important}
.process ol{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.process li{min-width:0}.process strong{font-size:20px}.benefits{padding-top:90px;padding-bottom:90px}.benefit-list{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:35px 0 0;padding:0;list-style:none;border-top:1px solid var(--line);border-left:1px solid var(--line)}.benefit-list li{padding:20px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font:20px/1.3 Georgia,serif}.benefit-list li:before{content:'✓';color:var(--bronze);font:16px Arial,sans-serif;margin-right:10px}.faq{padding-top:40px}.faq-list{border-top:1px solid var(--silver)}.faq-list details{border-bottom:1px solid var(--silver);padding:20px 0}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font:24px/1.3 Georgia,serif}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--bronze);font:24px Arial,sans-serif}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:800px;margin-top:14px;color:var(--muted);font-size:14px}.contact-card address{margin-top:18px;font-style:normal;color:var(--muted);font-size:12px;line-height:1.7}
@media(max-width:1000px){nav{gap:14px;font-size:11px}.process ol{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:32px}.benefit-list{grid-template-columns:repeat(2,1fr)}.case-study-grid{grid-template-columns:1fr}.project-grid.featured-projects{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){nav{font-size:13px}.service-list article{grid-template-columns:25px 1fr;gap:13px}.service-list article p{grid-column:2}.project-grid.featured-projects{grid-template-columns:1fr}.featured-projects .project-copy{padding:0 18px 20px}.featured-projects .project h3{font-size:24px}.case-preview p{font-size:13px}.timeline .project{flex:0 0 82vw}.project-grid.timeline{margin-left:0;padding-left:0}.timeline .project:before{left:15px}.process ol{grid-template-columns:1fr 1fr;gap:22px 16px}.process strong{font-size:19px}.benefit-list{grid-template-columns:1fr 1fr}.benefit-list li{font-size:17px;padding:16px 12px}.faq-list summary{font-size:20px}.faq-list details p{font-size:14px}.hero .actions .button{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.project-grid.timeline{scroll-behavior:auto}}
.footer-contact{display:grid;gap:6px;max-width:300px}.footer-contact strong{font:17px Georgia,serif}.footer-contact a,.footer-contact span{font-size:11px;color:var(--muted);line-height:1.5}
@media(max-width:700px){.footer-contact{max-width:none}}

/* Client and project marks */
.company-wall{grid-template-columns:repeat(4,minmax(0,1fr));border:0;gap:12px}.company-wall .client-logo{min-height:132px;margin:0;padding:18px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;background:#fff;border:1px solid var(--silver);text-align:center}.company-wall .client-logo img{width:100%;max-width:190px;height:64px;object-fit:contain}.company-wall .client-logo figcaption{position:static;color:var(--muted);font:10px/1.3 Arial,sans-serif;letter-spacing:1px;text-transform:uppercase}.company-wall .client-logo.negative-brand{background:#25282b;border-color:#25282b}.company-wall .client-logo.negative-brand figcaption{color:#fff}.company-wall .client-logo.ford-estadio>div{display:flex;width:100%;align-items:center;justify-content:center;gap:12px}.company-wall .client-logo.ford-estadio>div img{max-width:105px;height:44px}.company-name-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.company-name-list span{padding:7px 12px;border:1px solid var(--silver);color:var(--muted);font-size:11px;background:transparent}.case-preview p{padding:9px 0}.case-preview b{margin-bottom:2px}.case-link{margin-top:10px}
@media(max-width:1000px){.company-wall{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.company-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.company-wall .client-logo{min-height:110px;padding:13px 9px}.company-wall .client-logo img{height:54px}.company-wall .client-logo.ford-estadio>div img{height:38px;max-width:85px}}

/* Project details: compact information and a contained, easy-to-browse photo viewer */
#project-dialog{width:min(1100px,94vw);max-width:none;height:min(92dvh,1000px);max-height:92dvh;overflow:hidden;display:grid;grid-template-rows:minmax(0,auto) minmax(0,1fr);border:1px solid var(--silver);box-shadow:0 24px 80px #0003}
#project-dialog:not([open]){display:none}
#project-dialog[open]{animation:project-dialog-in .24s ease-out both}
@keyframes project-dialog-in{from{opacity:0;transform:translateY(14px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
#project-dialog .dialog-copy{padding:30px 70px 14px;max-height:38dvh;overflow:auto;overscroll-behavior:contain}
#project-dialog .dialog-copy h2{font-size:clamp(30px,3vw,42px)}
#project-dialog .dialog-copy .eyebrow{margin-bottom:12px}
#project-dialog .dialog-copy p{margin-top:8px}
#project-dialog .dialog-copy #dialog-case-study{margin-top:16px;gap:12px}
#project-dialog .dialog-copy #dialog-case-study article{padding:13px;border:1px solid var(--line)}
#project-dialog .dialog-copy #dialog-case-study h3{font-size:18px}
#project-dialog .dialog-copy #dialog-case-study p{font-size:13px;line-height:1.5}
#project-dialog .dialog-copy small{margin-top:12px}
#project-dialog .close{position:absolute;top:10px;right:10px;margin:0;border-radius:50%;font-size:16px}
.project-gallery{min-height:0;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;gap:12px;align-items:center;padding:4px 26px 22px}
#dialog-photos{position:relative;min-width:0;min-height:0;height:100%;max-height:68dvh;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#ecebe7}
#project-dialog #dialog-photo{width:100%;height:100%;max-height:68dvh;object-fit:contain;transition:opacity .22s ease,transform .32s cubic-bezier(.2,.7,.2,1);opacity:1}
#dialog-photo.is-changing{opacity:0;transform:scale(.985)}
#photo-count{left:auto;right:14px;bottom:14px;padding:5px 10px;background:#24272ac9;color:#fff;font:11px/1.4 Arial,sans-serif;letter-spacing:1px}
.photo-nav{width:46px;height:46px;border:1px solid var(--silver);border-radius:50%;background:#fff;color:var(--ink);font-size:30px;line-height:1;transition:background .2s,color .2s,transform .2s}
.photo-nav:hover{background:var(--ink);color:#fff;transform:scale(1.06)}
.photo-nav[hidden]{display:none}
@media(max-width:700px){#project-dialog{width:96vw;height:92dvh;max-height:92dvh;grid-template-rows:minmax(0,auto) minmax(0,1fr)}#project-dialog .dialog-copy{padding:26px 22px 12px;max-height:42dvh}#project-dialog .dialog-copy h2{font-size:30px;padding-right:28px}.project-gallery{grid-template-columns:38px minmax(0,1fr) 38px;gap:6px;padding:4px 9px 14px}.photo-nav{width:36px;height:36px;font-size:25px}#dialog-photos{max-height:58dvh}#project-dialog #dialog-photo{max-height:58dvh}#photo-count{bottom:8px;right:8px}}
@media(prefers-reduced-motion:reduce){#project-dialog[open]{animation:none}#dialog-photo,.photo-nav{transition:none}}

/* The chronology reads as a vertical path, with a clear date rail and compact project cards. */
.project-grid.timeline{display:block;position:relative;overflow:visible;border:0;margin:36px 0 0;padding:0}
.project-grid.timeline:before{content:'';position:absolute;left:132px;top:8px;bottom:0;width:1px;background:linear-gradient(var(--bronze),var(--silver))}
.timeline .project.timeline-item{width:100%;display:grid;grid-template-columns:100px 28px minmax(0,1fr);gap:18px;position:relative;padding:0 0 32px;border:0;background:transparent;align-items:start}
.timeline .project.timeline-item:before{content:none}
.timeline-year{grid-column:1;grid-row:1;padding-top:3px;text-align:right;color:var(--bronze);font:18px/1.3 Georgia,'Times New Roman',serif}
.timeline-node{grid-column:2;grid-row:1;z-index:1;width:12px;height:12px;margin:6px auto 0;border:2px solid var(--paper);border-radius:50%;background:var(--bronze);box-shadow:0 0 0 1px var(--bronze)}
.timeline-entry{grid-column:3;grid-row:1;display:grid;grid-template-columns:minmax(210px,34%) minmax(0,1fr);min-width:0;border:1px solid var(--line);background:#fff;transition:transform .28s,border-color .28s,box-shadow .28s}
.timeline-item:hover .timeline-entry{transform:translateY(-2px);border-color:#bba38a;box-shadow:0 12px 28px #24272a0c}
.timeline-entry figure{aspect-ratio:16/11;min-height:100%;overflow:hidden;background:#e7e7e2}
.timeline-entry figure img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.timeline-item:hover .timeline-entry figure img{transform:scale(1.035)}
.timeline-entry .project-copy{display:flex;flex-direction:column;justify-content:center;padding:24px 28px}
.timeline-entry .project-copy .meta{margin:0 0 8px}
.timeline-entry .project-copy h3{font-size:clamp(22px,2.2vw,30px)}
.timeline-entry .project-period{order:0;margin:8px 0 0!important}
.timeline-entry .project-summary{margin-top:12px!important;color:var(--muted);font-size:14px;line-height:1.55}
.timeline-controls{justify-content:flex-start;margin:16px 0 0;color:var(--bronze)}
#project-dialog.single-photo{grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);grid-template-rows:minmax(0,1fr);width:min(1280px,96vw);height:min(92dvh,1050px);max-height:92dvh}
#project-dialog.single-photo .dialog-copy{grid-column:2;grid-row:1;align-self:stretch;max-height:none;padding:64px 36px 30px}
#project-dialog.single-photo .project-gallery{grid-column:1;grid-row:1;grid-template-columns:minmax(0,1fr);padding:22px;background:#ecebe7}
#project-dialog.single-photo .photo-nav{display:none}
#project-dialog.single-photo #dialog-photos{height:100%;max-height:none}
#project-dialog.single-photo #dialog-photo{max-height:none}
@media(max-width:900px){.timeline-entry{grid-template-columns:minmax(180px,35%) minmax(0,1fr)}.timeline-entry .project-copy{padding:20px}.timeline-entry .project-copy h3{font-size:23px}}
@media(max-width:700px){.project-grid.timeline{margin-top:25px}.project-grid.timeline:before{left:75px}.timeline .project.timeline-item{grid-template-columns:54px 18px minmax(0,1fr);gap:10px;padding-bottom:23px}.timeline-year{font-size:13px;padding-top:2px}.timeline-node{width:10px;height:10px;margin-top:4px}.timeline-entry{grid-template-columns:minmax(0,1fr)}.timeline-entry figure{aspect-ratio:16/9}.timeline-entry .project-copy{padding:16px}.timeline-entry .project-copy h3{font-size:22px}.timeline-entry .project-summary{font-size:13px}.timeline-note{margin-top:16px}#project-dialog.single-photo{width:96vw;height:92dvh;max-height:92dvh;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,auto) minmax(0,1fr)}#project-dialog.single-photo .dialog-copy{grid-column:1;grid-row:1;max-height:34dvh;padding:28px 22px 12px}#project-dialog.single-photo .dialog-copy h2{font-size:28px}#project-dialog.single-photo .project-gallery{grid-column:1;grid-row:2;padding:10px}#project-dialog.single-photo #dialog-photos{height:100%;max-height:none}}
@media(prefers-reduced-motion:reduce){.timeline-entry,.timeline-entry figure img{transition:none}.timeline-item:hover .timeline-entry,.timeline-item:hover .timeline-entry figure img{transform:none}}
@media(max-width:900px){#project-dialog.single-photo{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,auto) minmax(0,1fr);height:92dvh;max-height:92dvh}#project-dialog.single-photo .dialog-copy{grid-column:1;grid-row:1;max-height:29dvh;padding:34px 32px 12px}#project-dialog.single-photo .project-gallery{grid-column:1;grid-row:2;padding:12px}#project-dialog.single-photo #dialog-photos{height:100%;max-height:none}}
@media(max-width:700px){#project-dialog.single-photo .dialog-copy{max-height:34dvh;padding:28px 22px 12px}}

/* Portfolio refinements: concise cards and restrained motion */
.featured-projects .case-preview{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.featured-projects .case-preview .project-summary{padding:0;border:0;font-size:13px;line-height:1.55;-webkit-line-clamp:2}
.featured-projects .case-link{margin-top:9px;transition:color .2s,letter-spacing .2s}
.featured-projects .project:hover .case-link{color:var(--ink);letter-spacing:.2px}
.has-motion .project.reveal{transition-delay:var(--reveal-delay,0ms)}
.project:active{transform:scale(.995)}
.process li:nth-child(2){transition-delay:70ms}.process li:nth-child(3){transition-delay:140ms}.process li:nth-child(4){transition-delay:210ms}.process li:nth-child(5){transition-delay:280ms}.process li:nth-child(6){transition-delay:350ms}
.project-grid.timeline:before{transform:scaleY(0);transform-origin:top;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.project-grid.timeline.timeline-visible:before{transform:scaleY(1)}
@media(prefers-reduced-motion:reduce){.project:active{transform:none}.process li:nth-child(n){transition-delay:0ms}.project-grid.timeline:before{transform:scaleY(1);transition:none}}

/* Trayectoria: primera fila de grandes marcas y segunda fila sobre fondo negro */
.company-wall{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.company-wall .client-logo{min-height:132px;padding:18px 14px;background:#fff;border:1px solid var(--silver);border-radius:2px;transition:transform .25s ease,box-shadow .25s ease}
.company-wall .client-logo:hover{transform:translateY(-4px);box-shadow:0 12px 28px #17191b18}
.company-wall .client-logo.dark-tier{background:#17191b;border-color:#17191b;color:#fff}
.company-wall .client-logo.dark-tier figcaption{color:#d8d5cf}

.company-wall .client-logo.brand-wordmark{gap:8px}
.mediapro-mark{display:block;color:#202124;text-align:center;font:500 15px/1.05 Arial,sans-serif;letter-spacing:2.2px}
.mediapro-mark b{font-size:25px;letter-spacing:1px}
.wradio-logo{display:block;width:190px!important;height:58px!important;max-width:100%;object-fit:contain}
.dark-tier .mediapro-mark{color:#fff}
.monte-mark{display:block;color:#303236;text-align:center;font:500 17px/1.05 Georgia,serif;letter-spacing:4px}
.monte-mark b{font-size:25px;letter-spacing:3px}.monte-mark small{display:block;margin-top:6px;font:10px Arial,sans-serif;letter-spacing:4px}
@media(max-width:700px){.company-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.company-wall .client-logo{min-height:110px;padding:13px 9px}.mediapro-mark b{font-size:21px}.wradio-logo{height:50px!important}.monte-mark b{font-size:22px}}

/* Filas de marcas con jerarquía responsive y una banda oscura para el segundo nivel */
.company-wall{display:grid;grid-template-columns:1fr;gap:12px}
.company-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.company-row.dark-row{padding:12px;background:#17191b;border:1px solid #17191b}
.company-row.dark-row .client-logo{background:transparent;border-color:#ffffff35}
.company-row.dark-row .client-logo figcaption{color:#f2f0ec}
.company-wall .client-logo.dark-tier{background:transparent;border-color:#ffffff35}
@media(max-width:700px){.company-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.company-row.dark-row{padding:8px}}

/* Contraste y posiciones de las marcas solicitadas */
.company-row.dark-row{align-items:stretch}
.company-row.dark-row .client-logo{background:transparent;border-color:#ffffff35}
.company-row .client-logo.logo-black-card{background:#fff;border-color:#deddd7}
.company-row .client-logo.logo-black-card figcaption{color:#676b6c}
.company-row .client-logo .logo-black{filter:brightness(0) contrast(1.08)}
.company-row .client-logo .hsbc-black{height:64px;object-fit:cover;object-position:center;filter:invert(1)}
.company-row.dark-row .client-logo.media-pro{background:#17191b;border-color:#ffffff35}
.company-row.dark-row .client-logo.media-pro img{filter:grayscale(1) invert(1) contrast(4)}
.company-row.dark-row .client-logo.media-pro figcaption{color:#f2f0ec}
.company-row .client-logo .monte-logo{width:70px!important;max-width:70px!important;height:70px!important;object-fit:contain}

/* Fondo negro solo para los cuatro logotipos blancos */
.company-row .client-logo.white-logo-card{background:#17191b;border-color:#17191b}
.company-row .client-logo.white-logo-card figcaption{color:#f2f0ec}
.company-row .client-logo.white-logo-card img{filter:none}
.company-row .client-logo.white-logo-card .hsbc-white{height:64px;object-fit:contain;object-position:center}
.company-row .client-logo.media-pro{background:#fff;border-color:var(--silver)}
.company-row .client-logo.media-pro img{filter:none}
.company-row .client-logo .wradio-logo{filter:brightness(0)}
.company-row .client-logo .wradio-logo{width:min(100%,230px)!important;height:64px!important;max-width:100%;margin-inline:auto;object-fit:contain;object-position:center;filter:brightness(0)}

/* Logotipos a color, centrados en sus tarjetas */
.company-row .client-logo .wradio-logo{display:block;width:min(100%,230px)!important;height:100px!important;max-width:100%;margin:0 auto;object-fit:contain;object-position:center;filter:none}
.company-row .client-logo.monte-blanco .monte-logo{display:block;width:min(100%,155px)!important;max-width:155px!important;height:82px!important;margin:0 auto;object-fit:contain;object-position:center}

.collaboration-content>p{font-size:15px;color:var(--muted);line-height:1.7}
.collaboration-partners{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:16px 0 0;padding:0}
.collaboration-partners li{padding:8px 11px;border:1px solid var(--silver);background:#fff;color:var(--ink);font-size:11px;line-height:1.4}
@media(max-width:700px){.collaboration-partners{gap:7px}.collaboration-partners li{font-size:11px;padding:8px 10px}}

.coverage-map{margin-top:28px;max-width:680px}.coverage-map svg{display:block;width:100%;height:auto;overflow:visible}.coverage-map figcaption{position:static;color:#626766;font-size:11px;margin-top:8px;letter-spacing:.3px}.map-land{fill:#f8f8f5;stroke:#b9bfbc;stroke-width:1.3;stroke-linejoin:round}.map-dots circle{fill:#896344;stroke:#fff;stroke-width:2.5}.map-labels{font:10px Arial,Helvetica,sans-serif;fill:#4e5352}.map-labels text{paint-order:stroke;stroke:#e7e8e4;stroke-width:3px;stroke-linejoin:round}

/* KIAME: motion and editorial details */
.service-list article{grid-template-columns:30px 34px minmax(0,1fr) minmax(0,1.15fr);gap:18px;transition:transform .32s cubic-bezier(.2,.7,.2,1),border-color .32s}
.service-list article>span{grid-column:1;grid-row:1}.service-list article>.service-icon{grid-column:2;grid-row:1;width:34px;height:34px;fill:none;stroke:var(--bronze);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .38s cubic-bezier(.2,.7,.2,1),stroke .25s}.service-list article>h3{grid-column:3;grid-row:1}.service-list article>p{grid-column:4;grid-row:1}.service-list article:hover{transform:translateX(3px);border-color:var(--bronze)}.service-list article:hover>.service-icon{transform:translateY(-3px) scale(1.06);stroke:#a77a4f}
.service-list article:nth-child(2),.photo-rail .gallery-card:nth-child(2),.testimonial-card:nth-child(2),.benefit-list li:nth-child(even){transition-delay:80ms}.service-list article:nth-child(3),.photo-rail .gallery-card:nth-child(3){transition-delay:150ms}.service-list article:nth-child(4),.photo-rail .gallery-card:nth-child(4){transition-delay:220ms}.photo-rail .gallery-card:nth-child(5){transition-delay:290ms}
.photo-rail .gallery-card img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s}.photo-rail .gallery-card:hover img{transform:scale(1.045);filter:saturate(1.08)}
.button{transition:background-color .25s,color .25s,transform .25s,box-shadow .25s}.button:hover{transform:translateY(-2px);box-shadow:0 9px 22px #24272a18}.button span{display:inline-block;transition:transform .25s}.button:hover span{transform:translate(3px,-2px)}
.testimonials{border-top:1px solid var(--line)}.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.testimonial-card{padding:32px;border:1px solid var(--silver);background:#fff;position:relative;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}.testimonial-card:before{content:'“';display:block;color:var(--bronze);font:58px/.75 Georgia,serif;margin-bottom:20px}.testimonial-card>p{font:22px/1.45 Georgia,'Times New Roman',serif;color:var(--ink)}.testimonial-card:hover{transform:translateY(-5px);border-color:#b89b7f;box-shadow:0 16px 34px #24272a0c}.testimonial-person{margin-top:25px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:3px;font-size:13px}.testimonial-person span{color:var(--muted);font-size:11px}
@media(max-width:1000px){.service-list article{grid-template-columns:26px 32px minmax(0,1fr);gap:14px}.service-list article>p{grid-column:3;grid-row:2}.service-list article>h3{font-size:22px}.testimonial-card{padding:26px}}
@media(max-width:700px){.service-list article{grid-template-columns:24px 30px minmax(0,1fr);gap:11px}.service-list article>.service-icon{width:30px;height:30px}.service-list article>h3{font-size:21px}.testimonial-grid{grid-template-columns:1fr;gap:16px}.testimonial-card>p{font-size:20px}.photo-rail .gallery-card:nth-child(n){transition-delay:0ms}}
@media(prefers-reduced-motion:reduce){.service-list article,.service-icon,.photo-rail .gallery-card img,.button,.button span,.testimonial-card{transition:none!important}.service-list article:hover,.testimonial-card:hover,.button:hover{transform:none;box-shadow:none}.button:hover span{transform:none}}

/* Motion pass: map, chronology, gallery, client marks, and cover image */
.hero-image img{transform:translate3d(0,var(--parallax-y,0px),0) scale(1.035);will-change:transform;transition:transform .12s linear}
.map-dots circle{transform-box:fill-box;transform-origin:center}.coverage-map.reveal.is-visible .map-dots circle{animation:map-pin-pop .62s cubic-bezier(.2,.7,.2,1) both}.coverage-map.reveal.is-visible .map-dots circle:nth-child(2){animation-delay:90ms}.coverage-map.reveal.is-visible .map-dots circle:nth-child(3){animation-delay:180ms}.coverage-map.reveal.is-visible .map-dots circle:nth-child(4){animation-delay:270ms}.coverage-map.reveal.is-visible .map-dots circle:nth-child(5){animation-delay:360ms}.coverage-map.reveal.is-visible .map-dots circle:nth-child(6){animation-delay:450ms}.coverage-map.reveal.is-visible .map-dots circle:nth-child(7){animation-delay:540ms}.coverage-map.reveal.is-visible .map-dots circle:nth-child(8){animation-delay:630ms}@keyframes map-pin-pop{0%{opacity:0;transform:scale(.35)}68%{opacity:1;transform:scale(1.18)}100%{opacity:1;transform:scale(1)}}
.company-wall .client-logo.reveal{transition-delay:var(--reveal-delay,0ms)}
.project-grid.timeline .timeline-node{opacity:0;transform:scale(.45);transition:opacity .32s ease,transform .46s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.project-grid.timeline.timeline-visible .timeline-node{opacity:1;transform:scale(1)}
#dialog-photo.is-changing{transform:translate3d(var(--photo-shift,14px),0,0) scale(.985)}
.service-list article:hover>.service-icon{transform:translateY(-4px) rotate(-2deg) scale(1.08)}
@media(prefers-reduced-motion:reduce){.hero-image img{transform:none!important;transition:none!important;will-change:auto}.coverage-map.reveal.is-visible .map-dots circle{animation:none;opacity:1;transform:none}.project-grid.timeline .timeline-node{opacity:1;transform:none;transition:none}.company-wall .client-logo.reveal{transition-delay:0ms}#dialog-photo.is-changing{transform:none}.service-list article:hover>.service-icon{transform:none}}

/* Project viewer: keep the gallery visible beside project details on desktop */
#project-dialog.project-split{grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);grid-template-rows:minmax(0,1fr);width:min(1280px,96vw);height:min(92dvh,1050px);max-height:92dvh}
#project-dialog.project-split .dialog-copy{grid-column:2;grid-row:1;align-self:stretch;max-height:none;overflow-y:auto;overscroll-behavior:contain;padding:54px 34px 28px}
#project-dialog.project-split .project-gallery{grid-column:1;grid-row:1;grid-template-columns:54px minmax(0,1fr) 54px;padding:18px;background:#ecebe7}
#project-dialog.project-split.single-photo .project-gallery{grid-template-columns:minmax(0,1fr);padding:22px}
#project-dialog.project-split.single-photo .photo-nav{display:none}
#project-dialog.project-split .case-study-grid{grid-template-columns:1fr;gap:10px;margin-top:18px}
#project-dialog.project-split .case-study-grid article{padding:12px 14px}
#project-dialog.project-split.photo-portrait #dialog-photo{max-height:56dvh}
@media(max-width:900px){#project-dialog.project-split{width:96vw;height:92dvh;max-height:92dvh;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,auto) minmax(0,1fr)}#project-dialog.project-split .dialog-copy{grid-column:1;grid-row:1;max-height:34dvh;padding:28px 24px 14px}#project-dialog.project-split .project-gallery{grid-column:1;grid-row:2;grid-template-columns:38px minmax(0,1fr) 38px;gap:6px;padding:8px 12px 14px}#project-dialog.project-split.single-photo .project-gallery{grid-template-columns:minmax(0,1fr);padding:10px}#project-dialog.project-split.single-photo .photo-nav{display:none}#project-dialog.project-split.photo-portrait #dialog-photo{max-height:54dvh}}
@media(max-width:700px){#project-dialog.project-split .dialog-copy{max-height:34dvh;padding:25px 20px 12px}#project-dialog.project-split .case-study-grid{gap:7px;margin-top:12px}#project-dialog.project-split .case-study-grid article{padding:10px 12px}}

/* Tabletas en vertical: liberar el encabezado y dar aire al hero sin estrecharlo en dos columnas */
@media (min-width:701px) and (max-width:800px){
  header{height:86px}
  .brand{font-size:29px}
  .menu{display:block;background:none;border:1px solid var(--silver);padding:9px 12px;color:var(--ink);font-size:12px}
  nav{display:none;position:absolute;top:86px;left:0;right:0;background:var(--paper);padding:22px 6%;border-bottom:1px solid var(--line)}
  nav.open{display:flex;align-items:flex-start;flex-direction:column;gap:16px;font-size:14px}
  .hero{grid-template-columns:1fr;min-height:0}
  .hero-copy{padding:58px 7% 34px}
  .hero-image{margin:0 7% 48px;min-height:420px}
  .hero-foot{margin-top:36px}
}

/* Movimiento global: lectura, entradas por sección y respuesta táctil */
.reading-progress{position:fixed;z-index:20;inset:0 0 auto;height:3px;background:#89634422;pointer-events:none}
.reading-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#896344,#b8956b);transform:scaleX(0);transform-origin:left center;will-change:transform}
nav a{transition:color .22s ease}
nav a:hover,nav a.is-current{color:var(--bronze)}
.section-top .eyebrow:after{content:"";display:block;width:56px;height:1px;margin-top:11px;background:var(--bronze);transform:scaleX(.2);transform-origin:left;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.section-top.is-visible .eyebrow:after{transform:scaleX(1)}
.company-name-list span,.capability-list span{transition:transform .25s ease,border-color .25s ease,color .25s ease,background-color .25s ease}
.company-name-list span:hover,.capability-list span:hover{transform:translateY(-3px);border-color:#b89b7f;color:var(--ink);background:#fff}
.gallery-card,.machine-card{transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
.gallery-card.is-current,.machine-card.is-current{box-shadow:0 12px 30px #20212424}
.gallery-card.is-current img,.machine-card.is-current img{transform:scale(1.025)}
.project-grid:not(.timeline) .project:hover figure img{transform:scale(1.055)}
.project:focus-visible,.gallery-card:focus-within,.machine-card:focus-within{outline:3px solid var(--bronze);outline-offset:4px}
.button:active,.gallery-controls button:active,.timeline-controls button:active,.photo-nav:active{transform:scale(.96)}
.faq-list summary span{transition:transform .25s ease}
.faq-list details[open]>p{animation:faq-answer-in .35s ease both}
@keyframes faq-answer-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.photo-rail,.machine-rail,.project-grid.timeline{scroll-behavior:smooth;scroll-padding-inline:12px}
@media(hover:hover){.gallery-card:hover,.machine-card:hover{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){
  .reading-progress span{will-change:auto}
  .section-top .eyebrow:after{transform:scaleX(1);transition:none}
  .company-name-list span,.capability-list span,.gallery-card,.machine-card{transition:none}
  .company-name-list span:hover,.capability-list span:hover,.gallery-card:hover,.machine-card:hover{transform:none}
  .gallery-card.is-current,.machine-card.is-current{box-shadow:none}
  .gallery-card.is-current img,.machine-card.is-current img{transform:none}
  .faq-list details[open]>p{animation:none}
  .photo-rail,.machine-rail,.project-grid.timeline{scroll-behavior:auto}
  .button:active,.gallery-controls button:active,.timeline-controls button:active,.photo-nav:active{transform:none}
}

/* Proyectos del CV: respetar orientación y facilitar la exploración de las fotos */
.gallery-card.vertical-photo{aspect-ratio:4/5;flex-basis:clamp(250px,27vw,340px)}
@media(max-width:700px){.gallery-card.vertical-photo{flex-basis:72vw}}
.gallery-card.vertical-photo{aspect-ratio:4/5;flex-basis:clamp(250px,27vw,340px)}
@media(max-width:700px){.gallery-card.vertical-photo{flex-basis:72vw}}

/* Ajustes de interacción táctil para móviles */
.swipe-hint{display:none}
@media(max-width:700px){.gallery-controls button,.timeline-controls button{width:46px;height:46px;min-width:46px;min-height:46px}.swipe-hint{display:block;margin-top:8px;color:var(--muted);font-size:11px;line-height:1.45}.timeline-controls{align-items:flex-start;flex-direction:column;gap:6px}}
