/* Segunda edición visual. */
[hidden]{display:none!important}
.service-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:300px 300px 250px;gap:18px;overflow:visible;margin:0;padding:0}
.service-mosaic .service-card{aspect-ratio:auto;min-height:0;height:100%;grid-column:auto;grid-row:auto;border-radius:22px}
.service-mosaic .service-card:first-child{grid-column:1/3;grid-row:1/3}
.service-mosaic .service-card:first-child .service-content h3{font-size:clamp(2rem,3.5vw,3.5rem)}
.service-mosaic .service-card:first-child .service-content{inset:auto 32px 32px}
.service-mosaic .service-card:first-child .service-content p{font-size:1rem}
.service-tag{position:absolute;top:22px;left:22px;z-index:2;padding:7px 11px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:rgba(7,17,31,.58);color:#fff;font-size:.58rem;letter-spacing:.1em;font-weight:700;backdrop-filter:blur(8px)}
.service-mosaic .service-content{grid-template-columns:minmax(0,1fr) 32px;gap:10px;inset:auto 22px 22px}.service-mosaic .service-num{display:none}.service-mosaic .service-content h3{font-size:1.5rem}
.service-mosaic .service-discover{display:flex;flex-direction:column;padding:26px;background:var(--gold2);color:var(--navy);border:0}
.service-discover .eyebrow{color:#725117;font-size:.58rem;margin-bottom:12px}.service-discover>strong{font-family:Manrope,sans-serif;font-size:1.75rem;line-height:1.08;letter-spacing:-.05em}.service-discover>p{font-size:.75rem;margin:12px 0;color:#4b412c;max-width:270px}.discover-link{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.73rem;font-weight:800;margin-top:auto;padding-top:14px;border-top:1px solid rgba(7,17,31,.2)}.discover-link b{font-size:1.2rem}
.project-start{background:var(--navy);color:#fff}.project-start-heading{display:grid;grid-template-columns:1.1fr 1fr;column-gap:10vw;align-items:end}.project-start-heading .eyebrow{grid-column:1/-1}.project-start h2,.faq-heading h2{font-family:Manrope,sans-serif;font-size:clamp(2.4rem,4.4vw,4.5rem);line-height:1.04;letter-spacing:-.06em}.project-start h2 em{font-style:normal;color:var(--gold2)}.project-start-heading>p:last-child{font-size:.98rem;color:#adb9c8;max-width:410px}
.project-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:46px}.project-options>a{display:flex;flex-direction:column;padding:30px;border:1px solid #314052;border-radius:20px;background:linear-gradient(145deg,#132339,#0d1b2c);transition:border-color .25s,transform .25s}.project-options>a:hover{border-color:var(--gold);transform:translateY(-4px)}.project-options>a>span{font-size:.62rem;letter-spacing:.12em;color:var(--gold2)}.project-options h3{font-family:Manrope,sans-serif;font-size:clamp(1.5rem,2.3vw,2.4rem);line-height:1.15;letter-spacing:-.05em;margin:30px 0 16px}.project-options p{font-size:.86rem;color:#b8c3d1;margin-bottom:30px}.project-options b{margin-top:auto;font-size:.76rem;padding-top:20px;border-top:1px solid #314052;color:var(--gold2)}
.statement{min-height:340px}.statement-inner{padding-top:64px;padding-bottom:64px}.statement h2{font-size:clamp(2.4rem,4.7vw,4.8rem)}
.work{background:#0d1b2c;color:#fff;border-top:1px solid #243346}.work .section-head h2 span{color:var(--gold2)}.gallery-intro{font-size:.9rem;color:#b7c3d0;margin-top:20px;max-width:460px}.work .carousel-controls button{border-color:#4d5e72;color:#fff;width:44px;height:44px}.work .carousel-controls button:hover{background:var(--gold);border-color:var(--gold);color:var(--navy)}.work .carousel-count,.work .carousel-count b{color:#d7dee7}.carousel{position:relative}.gallery-expand{position:absolute;top:20px;right:20px;z-index:3;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:rgba(7,17,31,.7);padding:10px 16px;color:#fff;backdrop-filter:blur(8px);font-size:.75rem;cursor:pointer}.gallery-expand span{margin-left:10px}.gallery-expand:hover{background:var(--gold);color:var(--navy)}
.gallery-thumbnails{display:flex;gap:12px;overflow-x:auto;padding:18px 3px 12px;scrollbar-width:thin;scrollbar-color:#64728a transparent}.gallery-thumbnails button{flex:0 0 115px;overflow:hidden;background:#14253b;color:#c4cedb;border:2px solid transparent;border-radius:12px;padding:0;cursor:pointer;text-align:left}.gallery-thumbnails button[aria-pressed=true]{border-color:var(--gold2);color:var(--gold2)}.gallery-thumbnails img{width:100%;height:64px;object-fit:cover}.gallery-thumbnails span{display:block;font-size:.65rem;line-height:1.3;padding:9px 8px}.gallery-note{color:#a5b3c6;font-size:.71rem;margin-top:14px}
.gallery-dialog{position:fixed;inset:0;margin:auto;width:min(1100px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:54px 16px 16px;background:var(--navy);color:#fff;border:1px solid #435269;border-radius:20px;overflow:auto}.gallery-dialog::backdrop{background:rgba(3,8,14,.9)}.gallery-dialog>img{max-height:calc(100dvh - 145px);width:100%;object-fit:contain;border-radius:10px}.gallery-dialog>p{text-align:center;font-size:.8rem;color:#b9c4d3;margin-top:12px}.gallery-close{position:absolute;top:4px;right:8px;width:44px;height:44px;background:transparent;border:0;color:#fff;font-size:2rem;cursor:pointer}
.process{display:block;background:#ece8df}.process-heading h2{max-width:600px}.process-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;border:0;margin-top:44px}.process-item{display:block;border:0;border-top:1px solid #c5bda9;padding:24px 0 0}.process-item>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--navy);color:var(--gold2);font-size:.85rem;margin-bottom:22px}.process-item h3{font-size:1.6rem}.process-item p{max-width:300px;margin-top:12px;font-size:.9rem}
.faq-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;background:#fff}.faq-heading h2 span{color:#85909b}.faq-heading>p:not(.eyebrow){color:var(--muted);font-size:.9rem;margin:24px 0;max-width:360px}.faq-heading .text-link{display:inline-flex}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;padding:24px 0;font-size:.96rem;font-weight:700;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';flex:none;display:grid;place-items:center;width:30px;height:30px;background:var(--cream);border-radius:50%;font-size:1.15rem;color:#806024}.faq-list details[open] summary:after{content:'−';background:var(--gold2);color:var(--navy)}.faq-list details>p{font-size:.88rem;color:var(--muted);padding:0 40px 26px 0;line-height:1.8}
.service-search{margin:28px 0}.service-search label{display:block;font-size:.8rem;font-weight:700;margin-bottom:10px}.search-field{display:flex;align-items:center;gap:12px;border:1px solid #d5d1c7;background:#fff;padding:6px 16px;border-radius:14px;max-width:760px}.search-field:focus-within{outline:2px solid var(--gold);outline-offset:3px}.search-field>span{font-size:1.8rem;color:#856428}.search-field input{flex:1;min-width:0;width:100%;border:0;background:transparent;font-size:1rem;padding:12px 0;color:var(--ink)}.search-field input:focus{outline:0}.search-clear{border:0;background:var(--cream);padding:10px;border-radius:9px;font-size:.75rem;cursor:pointer}.search-count{font-size:.75rem;color:var(--muted);margin-top:12px}.search-empty{padding:30px;border:1px dashed #c4b48f;border-radius:18px}.search-empty p{margin:8px 0 20px;color:var(--muted)}
.footer-signature{border-top:1px solid #2b3542;margin-top:45px;padding-top:30px;font-family:Manrope,sans-serif;font-size:clamp(4rem,15.8vw,16rem);line-height:1;letter-spacing:-.065em;font-weight:800;color:#253245;display:flex;align-items:end;justify-content:space-between;gap:24px}.footer-signature>span{font-family:'DM Sans',sans-serif;font-size:.65rem;letter-spacing:.18em;line-height:1.6;color:#a6b1bf;max-width:130px;padding-bottom:10px}
@media(max-width:1000px){.service-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:360px 270px 270px}.service-mosaic .service-card:first-child{grid-column:1/-1;grid-row:auto}.service-mosaic .service-card:last-child{grid-column:auto}.service-mosaic{grid-auto-rows:270px}.project-options>a{padding:22px}.project-start-heading{column-gap:35px}.faq-section{gap:40px}.footer-signature>span{display:none}}
@media(max-width:760px){.service-mosaic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:320px 240px 240px;gap:12px;margin:0;overflow:visible;padding:0}.service-mosaic .service-card{flex:none;min-height:0}.service-mosaic .service-card:first-child{grid-row:auto;grid-column:1/-1}.service-mosaic .service-card:first-child .service-content{inset:auto 20px 24px}.service-mosaic .service-content{inset:auto 14px 18px;grid-template-columns:minmax(0,1fr)}.service-mosaic .service-content>b{display:none}.service-mosaic .service-content h3{font-size:1.2rem}.service-mosaic .service-content p{font-size:.72rem}.service-tag{top:14px;left:14px;font-size:.48rem;padding:6px 8px;max-width:calc(100% - 28px)}.service-mosaic .service-discover{grid-column:1/-1;padding:24px;min-height:240px}.service-discover>strong{font-size:2rem}.service-discover>p{max-width:400px}.project-start-heading{display:block}.project-start-heading>p:last-child{margin-top:24px}.project-options{grid-template-columns:1fr;gap:14px;margin-top:30px}.project-options>a{padding:26px}.project-options h3{font-size:1.85rem;margin-top:20px}.project-options h3 br{display:none}.project-options p{margin-bottom:22px}.statement{min-height:300px}.statement h2{font-size:2.2rem;line-height:1.08}.work .slide{aspect-ratio:4/3}.work .section-head{gap:25px}.carousel-controls{align-self:flex-start}.gallery-expand{top:12px;right:12px;font-size:.65rem;padding:8px 12px}.gallery-thumbnails button{flex-basis:96px}.gallery-thumbnails img{height:58px}.process-list{grid-template-columns:1fr;gap:26px;margin-top:30px}.process-item{display:grid;grid-template-columns:46px 1fr;gap:20px;padding-top:24px}.process-item>span{margin:0}.process-item p{margin-top:8px}.faq-section{grid-template-columns:1fr;gap:30px}.faq-heading>p:not(.eyebrow){max-width:none}.faq-list summary{font-size:.9rem;padding:20px 0}.faq-list details>p{padding-right:8px}.footer-signature{margin-top:30px;font-size:19vw}.search-field{gap:8px;padding-left:12px;padding-right:10px}.search-field input{font-size:.9rem}.search-field>span{display:none}}
@media(max-width:380px){.service-mosaic{grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:260px}.service-mosaic .service-card:first-child,.service-mosaic .service-discover{grid-column:auto}.service-mosaic .service-card:first-child .service-content h3{font-size:2rem}.service-mosaic .service-content h3{font-size:1.6rem}.service-tag{font-size:.56rem}.search-field input{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){.project-options>a{transition:none}.project-options>a:hover{transform:none}}
@media(min-width:761px) and (max-width:1000px){.service-mosaic .service-card:last-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.carousel-play{display:none}}
