/* Requested asset and contact revision. Photographs keep each existing layout box. */
.site-header .brand{width:266px}
.official-brand{width:96px;height:96px;padding:13px;border-radius:50%;background:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center}
.official-brand img{width:70px;height:70px;object-fit:contain}
img.updated-asset{aspect-ratio:var(--original-image-ratio);object-fit:cover}
.model-hero img.main-model-image.updated-asset{aspect-ratio:1.45;object-fit:contain}
.about-balanced{gap:5vw}
.about-balanced>div{max-width:520px}
.about-balanced img.about-square{aspect-ratio:1;width:100%;height:auto;max-height:none;max-width:520px;object-fit:cover;justify-self:center}
.about-balanced img[src*="estudio-hostek"]{object-position:43% center}
.cta-photo img{object-position:center}
.model-back{display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;margin-top:20px;font-size:13px;font-weight:600;border-bottom:1px solid var(--line);padding:8px 0;line-height:1.5}
.model-back:hover{color:#a64d06;border-color:#a64d06}
.model-back span{font-size:20px}
.form-grid .full{grid-column:1/-1}
.field-help{font-size:11px!important;font-weight:400;color:var(--muted);margin:8px 0 0!important;line-height:1.6}
.municipality-field{position:relative;min-width:0}
.municipality-control{position:relative}
.municipality-control input{padding-right:42px}
.municipality-toggle{position:absolute;right:0;top:0;width:40px;height:49px;background:transparent;border:0;color:var(--ink);font-size:25px}
.municipality-options{position:absolute;top:calc(100% + 5px);left:0;right:0;max-height:245px;overflow:auto;overscroll-behavior:contain;z-index:12;background:#fff;border:1px solid var(--line);box-shadow:0 12px 25px #25282018;padding:5px}
.municipality-options[hidden],select[hidden]{display:none}
.municipality-options [role=option]{font-size:13px;line-height:1.6;padding:10px 12px;cursor:pointer;border-radius:2px}
.municipality-options [role=option]:hover,.municipality-options [aria-selected=true]{background:#f7e7d3;color:#8a4309}
.municipality-empty{font-size:13px;padding:12px;color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1350px){.site-header .brand{width:246px}}
@media(max-width:1100px){.site-header .brand{width:218px}.site-header nav{gap:11px}.about-balanced{gap:4vw}}
@media(max-width:900px){.site-header .brand{width:230px}}
@media(max-width:760px){.site-header .brand{width:210px;margin-left:0}.official-brand{width:88px;height:88px;padding:12px}.official-brand img{width:64px;height:64px}.about-balanced{gap:30px}.about-balanced img.about-square{max-width:520px}.model-hero img.main-model-image.updated-asset{aspect-ratio:1.35}.model-back{font-size:12px}.form-grid .full{grid-column:auto}.hero .desktop{display:none}}
@media(max-width:360px){.site-header .brand{width:196px}}
/* September revision: restrained movement and consistent equipment photography. */
@keyframes hero-arrive{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}
@keyframes hero-drift{from{transform:scale(1.09) translateX(-.6%)}to{transform:scale(1.025) translateX(.4%)}}
@media(prefers-reduced-motion:no-preference){.hero-content h1{animation:hero-arrive 1.2s cubic-bezier(.2,.7,.2,1) both}.hero-content>p{animation:hero-arrive 1.2s .15s both}.hero-actions{animation:hero-arrive 1.2s .3s both}.hero .hero-image{animation:hero-drift 10s ease-in-out infinite alternate}.equipment-image img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.equipment-grid figure:hover img{transform:scale(1.035)}}
.equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}
.equipment-image{background:var(--paper);padding:clamp(14px,2vw,28px);overflow:hidden;aspect-ratio:1.4;display:flex;align-items:center}
.equipment-grid .equipment-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;display:block}
.equipment-grid figcaption{line-height:1.5;margin-top:13px}
.region-note{margin-top:45px;padding:35px 0 0;border-top:1px solid var(--line);max-width:850px}.region-note h2{font-size:32px}.region-note p{max-width:760px}
@media(min-width:901px){.site-header nav{gap:clamp(10px,1.1vw,18px)}.site-header nav a{white-space:nowrap}.header-contact .compact{display:none}}
@media(max-width:760px){.equipment-grid{gap:28px;grid-template-columns:1fr}.equipment-image{padding:20px}.hero-content>p:not(.eyebrow){max-width:340px}}
@media(prefers-reduced-motion:reduce){.hero-content h1,.hero-content>p,.hero-actions,.hero .hero-image{animation:none}.equipment-image img{transition:none}}
.service-balanced{align-items:center;gap:clamp(32px,5vw,80px)}
.service-photo{aspect-ratio:1;overflow:hidden;background:var(--paper);width:100%;max-width:560px}
.service-photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:1;display:block}
@media(prefers-reduced-motion:no-preference){.service-photo{animation:hero-arrive 1.1s ease-out both}.service-photo img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.service-photo:hover img{transform:scale(1.035)}}
@media(max-width:760px){.service-photo{max-width:none}}
.service-photo img[src*="servicio-montaje-alta"]{object-position:72% center}
.service-photo img[src*="servicio-diseno-3d-alta"]{object-position:52% center}

/* September review: balanced finishes navigation and technical privacy notice. */
.finishes-page .filter-bar{margin-top:clamp(28px,4vw,56px);margin-inline:auto;justify-content:center;flex-wrap:wrap;gap:14px}
.finishes-page .filter-bar a{display:flex;align-items:center;justify-content:center;text-align:center;min-width:190px;flex:1 1 190px;max-width:280px}
.finishes-page .section-heading{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px}
.finishes-page .section-heading h2{margin:0}
.finishes-page .section-heading .line-link{align-self:center;margin:0 auto}
.privacy-notice{position:fixed;z-index:1000;bottom:24px;left:24px;width:min(640px,calc(100% - 48px));padding:24px;background:#fffdf8;color:#262821;box-shadow:0 12px 50px #0003;border:1px solid #dfd9ce;display:flex;gap:24px;align-items:center}
.privacy-notice[hidden]{display:none}
.privacy-notice strong{font-size:18px}.privacy-notice p{font-size:14px;line-height:1.55;margin:8px 0}.privacy-notice a{font-size:13px;text-decoration:underline}.privacy-notice .button{flex-shrink:0}
@media(max-width:600px){.privacy-notice{bottom:12px;left:12px;width:calc(100% - 24px);padding:18px;gap:14px;flex-direction:column;align-items:stretch}.privacy-notice .button{justify-content:center}.finishes-page .filter-bar a{min-width:130px;flex-basis:130px}}

.return-navigation{display:flex;justify-content:center;padding-block:32px 64px}.return-navigation .button{gap:16px}

/* October review: quiet photographic movement, compact privacy and site search. */
.photo-motion{overflow:hidden;min-width:0;align-self:center}
.photo-motion img{display:block;width:100%;height:auto;transform-origin:center}
.photo-motion-square{aspect-ratio:1;width:100%;max-width:520px;justify-self:center}
.about-balanced .photo-motion-square img.about-square{width:100%;height:100%;max-width:none;object-fit:cover}
@keyframes photo-breathe{from{transform:scale(1)}to{transform:scale(1.045)}}
@media(prefers-reduced-motion:no-preference){.photo-motion.is-visible img{animation:photo-breathe 7s ease-in-out infinite alternate}}
.privacy-notice{left:auto;right:22px;bottom:22px;width:min(340px,calc(100% - 32px));padding:22px;display:block;border-radius:8px;border-top:3px solid var(--orange);box-shadow:0 12px 40px #211b1824}
.privacy-notice strong{font-family:var(--serif);font-size:24px;font-weight:400;line-height:1.2}
.privacy-notice p{font-size:12px;line-height:1.65;margin:10px 0}
.privacy-notice a{font-size:11px;text-underline-offset:3px}
.privacy-notice .button{display:flex;width:100%;margin-top:16px;padding:11px 16px;justify-content:center;font-size:12px;border-radius:3px}
.header-search{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;border:1px solid var(--line);border-radius:50%;transition:background .2s}
.header-search:hover{background:var(--paper)}
.header-search svg{width:19px;height:19px}
.site-search-dialog{width:min(740px,calc(100% - 32px));max-width:740px;max-height:85svh;padding:38px;overflow:auto;border-radius:4px}
.site-search-dialog h2{font-family:var(--serif);font-size:38px;margin-bottom:24px;padding-right:24px}
.site-search-form{display:flex;gap:10px;align-items:stretch}
.site-search-form input{flex:1;min-width:0;border:1px solid var(--line);background:#fff;padding:14px 16px;border-radius:2px}
.site-search-form .button{justify-content:center}
.search-status{font-size:13px;line-height:1.6;color:var(--muted);margin:20px 0}
.search-results{display:grid;gap:10px}
.search-result{display:block;padding:20px;border:1px solid var(--line);background:var(--paper);transition:border-color .2s,background .2s}
.search-result:hover{border-color:var(--orange);background:#fffaf3}
.search-result .eyebrow{display:block;font-size:9px;margin-bottom:9px}
.search-result h3{font-family:var(--serif);font-size:23px;line-height:1.25;margin-bottom:10px}
.search-result p{font-size:12px;line-height:1.6;color:var(--muted)}
.search-page{max-width:1040px;min-height:400px}
@media(min-width:901px){.site-header{gap:clamp(10px,1.4vw,22px)}.site-header .brand{width:clamp(200px,18vw,266px)}}
@media(min-width:901px) and (max-width:1200px){.site-header nav{gap:9px}.site-header nav a{font-size:10px}.phone strong{font-size:18px}.header-contact .phone{padding-left:10px}}
@media(max-width:760px){.site-header{grid-template-columns:1fr 38px auto;column-gap:14px}.site-header .brand{width:min(210px,52vw)}.header-search{grid-row:1;grid-column:2}.menu-toggle{grid-column:3}.privacy-notice{right:16px;bottom:16px;padding:19px}.site-search-dialog{padding:28px 20px}.site-search-dialog h2{font-size:30px}.site-search-form{gap:8px}.site-search-form input{padding:12px;font-size:13px}.site-search-form .button{padding:12px;font-size:12px}.search-result{padding:16px}}
