/* Recorrido terminado de la maqueta: obras, evidencia y contacto. */
.preview-note{font-size:.62rem;letter-spacing:.02em;padding:6px 14px}
.preview-note a{margin-left:18px}
.hero .hero-description{max-width:390px}
.projects-section .section-heading h2{max-width:760px}
.case-layout{background:#efece4}
.case-copy .case-intro{max-width:380px}
.project-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:44px}
.project-card{min-width:0}
.project-card-image{display:block;position:relative;padding:0;width:100%;height:330px;background:#eae7df}
.project-card-image img{width:100%;height:100%;object-fit:contain}
.project-photo-count{position:absolute;right:12px;bottom:12px;background:#faf9f5f2;padding:9px 12px;display:flex;align-items:center;gap:20px;font-size:.68rem;color:var(--teal)}
.project-photo-count>span{font-size:1.1rem}
.project-card-copy{padding-top:22px}
.project-card-copy .eyebrow{font-size:.57rem;letter-spacing:.1em;line-height:1.8}
.project-card-copy h3{font-size:1.5rem;margin:12px 0;line-height:1.22;max-width:360px}
.project-card-copy>p:not(.eyebrow){font-size:.82rem;color:var(--muted);line-height:1.8}
.project-text-link{display:flex;align-items:center;justify-content:space-between;gap:22px;width:100%;min-height:48px;text-align:left;border-bottom:1px solid var(--line);font-size:.75rem;color:var(--teal);font-weight:600;padding:12px 0;margin-top:15px}
.project-text-link:hover{border-color:var(--teal)}
.archive-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.archive-item .photo-open img{height:195px}
.photo-archive{margin-top:48px}
.workshop-real-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:26px}
.workshop-real-grid figure{min-width:0}
.workshop-real-grid img{width:100%;height:300px;object-fit:cover}
.workshop-real-grid figure:first-child img{object-position:50% 20%}
.workshop-real-grid figcaption{padding-top:22px}
.workshop-real-grid h3{font-size:1.15rem;letter-spacing:-.025em;margin-bottom:10px}
.workshop-real-grid p{font-size:.8rem;line-height:1.8;color:var(--muted)}
.workshop-location{font-size:.75rem;color:var(--muted);padding-top:23px;margin-top:30px;border-top:1px solid #d5d0c5}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.review-card{border-top:2px solid var(--copper);padding:26px 0 0;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.review-card blockquote{margin:0}
.review-card blockquote p{font-size:1.1rem;font-weight:500;line-height:1.6;letter-spacing:-.025em;max-width:370px}
.review-card figcaption{font-size:.78rem;line-height:1.8}
.review-card strong{font-weight:600;display:block}
.review-card a{display:inline-flex;align-items:center;min-height:44px;font-size:.68rem;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
#gallery-summary{font-size:.7rem;color:var(--muted);line-height:1.7;margin-top:8px;max-width:600px}
.professional-contact{text-decoration-thickness:1px}
.contact-link{min-height:44px}
@media(min-width:1500px){.project-card-image{height:370px}}
@media(max-width:1100px){.project-cards{gap:22px}.project-card-image{height:280px}.project-card-copy h3{font-size:1.35rem}.workshop-real-grid{gap:20px}.workshop-real-grid img{height:265px}.reviews-grid{gap:24px}}
@media(max-width:760px){
 .preview-note a{margin-left:0}
 .project-cards{grid-template-columns:1fr;gap:37px;margin-top:32px}
 .project-card{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
 .project-card-image{height:280px}
 .project-card-copy{padding-top:2px}
 .project-card-copy h3{font-size:1.45rem}
 .project-card-copy>p:not(.eyebrow){font-size:.8rem}
 .project-text-link{font-size:.73rem}
 .archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .archive-item .photo-open img{height:180px}
 .workshop-real-grid{grid-template-columns:1fr 1fr;gap:26px 18px}
 .workshop-real-grid figure:first-child{grid-column:1/-1}
 .workshop-real-grid figure:first-child img{height:clamp(280px,75vw,440px)}
 .workshop-real-grid img{height:280px}
 .workshop-real-grid figcaption{padding-top:16px}
 .workshop-real-grid h3{font-size:1.05rem}
 .workshop-real-grid p{font-size:.77rem}
 .reviews-grid{grid-template-columns:1fr;gap:27px}
 .review-card{padding-top:21px;gap:13px}
 .review-card blockquote p{font-size:1.14rem;max-width:560px}
 .review-card a{font-size:.71rem}
 .viewer-header{align-items:flex-start;gap:12px}
 #gallery-summary{font-size:.65rem;margin-top:7px}
 .viewer-header h2{font-size:1.23rem}
 .viewer-header .close-gallery{min-width:48px}
}
@media(max-width:480px){
 .project-card{display:block}
 .project-card-image{height:auto;max-height:none;background:transparent}
 .project-card-image img{height:auto;max-height:410px;object-fit:contain;background:#eae7df}
 .project-card-copy{padding-top:18px}
 .project-card-copy h3{font-size:1.6rem;max-width:none}
 .project-card-copy>p:not(.eyebrow){font-size:.85rem}
 .project-card-copy .eyebrow{font-size:.59rem}
 .workshop-real-grid{gap:27px 14px}
 .workshop-real-grid img{height:225px}
 .archive-item .photo-open img{height:145px}
 .viewer-stage{height:48dvh}
 .viewer-details p{font-size:.76rem}
 .viewer-help{font-size:.65rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*{scroll-behavior:auto!important}}

/* Portada: escala contenida y fotografia completa, sin recorte panoramico. */
.hero.hero-airy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:center;gap:clamp(30px,5vw,72px);padding-block:42px 22px;max-width:1320px;background:transparent;color:var(--ink)}
.hero-airy .hero-copy{display:flex;align-items:flex-start;padding:0 0 26px;min-width:0}
.hero-airy .hero-copy .eyebrow{color:var(--teal);font-size:.61rem;letter-spacing:.13em;margin-bottom:24px}
.hero.hero-airy h1{font-size:clamp(2.05rem,3.45vw,3rem);font-weight:400;line-height:1.15;letter-spacing:-.045em;max-width:none}
.hero-airy .hero-description{color:var(--muted);font-size:.86rem;line-height:1.85;margin-top:23px;max-width:375px}
.hero-airy .hero-cta{margin-top:29px;background:transparent;color:var(--teal);border-bottom:1px solid var(--teal);padding:10px 0;min-height:48px;font-size:.78rem;gap:30px}
.hero-airy .hero-cta:hover{background:transparent;color:var(--ink);filter:none}
.hero-airy .hero-media{width:100%;background:transparent;order:0}
.hero-airy .hero-media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.hero-airy .hero-media figcaption{display:block;padding:12px 0 0;font-size:.58rem;color:var(--muted);letter-spacing:.025em}
@media(max-width:960px) and (min-width:761px){
 .hero.hero-airy{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:28px;padding-top:34px}
 .hero.hero-airy h1{font-size:clamp(1.85rem,3.5vw,2.25rem)}
 .hero-airy .hero-copy .eyebrow{font-size:.56rem;margin-bottom:19px}
 .hero-airy .hero-description{font-size:.8rem;line-height:1.75;margin-top:18px}
 .hero-airy .hero-cta{margin-top:18px;gap:18px;font-size:.73rem}
}
@media(max-width:760px){
 .hero.hero-airy{width:calc(100% - 36px);grid-template-columns:1fr;gap:29px;padding-block:30px 9px}
 .hero-airy .hero-copy{padding:0;width:100%}
 .hero-airy .hero-copy .eyebrow{font-size:.58rem;margin-bottom:17px}
 .hero.hero-airy h1{font-size:clamp(1.9rem,8.4vw,2.6rem);line-height:1.15}
 .hero-airy .hero-description{font-size:.83rem;line-height:1.8;margin-top:17px;max-width:470px}
 .hero-airy .hero-cta{margin-top:17px;font-size:.75rem;min-height:46px}
 .hero-airy .hero-media figcaption{font-size:.55rem;padding-top:10px}
}
