
/* Crechet Vial v2 — real media, conservative performance-first treatment */
.hero-art:before{background:linear-gradient(180deg,#0000 45%,#14201b88 100%);z-index:1}
.hero-art:after{display:none}
.hero-art img{width:100%;height:100%;right:0;bottom:0;object-fit:cover;object-position:53% 44%;max-width:none;z-index:0}
.hero-art .art-top-label,.hero-art .art-bottom{z-index:3;text-shadow:0 1px 12px #14201bce}
.project-visual{padding:0;isolation:isolate;background:#647263}
.project-photo{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.project-card:hover .project-photo{transform:scale(1.03)}
.project-visual:after{content:"";pointer-events:none;inset:0;position:absolute;background:linear-gradient(180deg,#14201b59,transparent 45%,#14201b33);z-index:1}
.project-type{position:absolute;top:20px;left:20px;z-index:2}
.project-open{z-index:2}
.media-gallery{margin-top:78px;padding-top:54px;border-top:1px solid #e2e4dc;scroll-margin-top:100px}
.media-gallery h3{font:800 clamp(32px,3.7vw,51px)/1 var(--font-head);margin:0 0 11px}
.media-desc{color:#687368;font-size:13px;max-width:660px;margin:0 0 28px}
.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.media-card{border:1px solid #e4e7df;background:#f8f8f3;text-align:left;padding:0;color:var(--ink);overflow:hidden;min-width:0;transition:box-shadow .2s}
.media-card:hover{box-shadow:0 10px 30px #14201b19}
.media-cover{display:block;height:205px;overflow:hidden;position:relative;background:#475a4a}
.media-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;transition:transform .25s}
.media-card:hover img{transform:scale(1.04)}
.media-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#15221a4d,#14201b00 70%)}
.media-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:53px;height:53px;border-radius:50%;background:#efb65b;color:#172620;font-size:21px;display:flex;align-items:center;justify-content:center;padding-left:3px;z-index:2;box-shadow:0 5px 20px #0004}
.media-text{display:block;padding:14px 15px 18px}
.media-text strong{display:block;font:700 23px/1.05 var(--font-head);margin-bottom:6px}
.media-text small{display:block;color:#646d66;font-size:11px;line-height:1.5}
.video-dialog{max-width:min(500px,95vw);width:100%;padding:12px;background:#16231d;color:#fff;border:0;border-radius:5px;box-shadow:0 25px 100px #0008;position:fixed;max-height:94vh;overflow:auto}
.video-dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}
.video-dialog video{width:100%;display:block;max-height:76vh;background:#000;aspect-ratio:464/832;object-fit:contain}
.video-dialog p{font:700 23px var(--font-head);margin:9px 5px 2px}
.close-video{position:absolute;right:20px;top:20px;border:0;border-radius:100%;width:40px;height:40px;background:#fff;color:#000;z-index:3;font-size:20px}
@media(max-width:800px){.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-cover{height:220px}.hero-art img{height:100%;object-fit:cover}}
@media(max-width:600px){.media-grid{gap:12px}.media-cover{height:180px}.media-text{padding:11px}.media-text strong{font-size:21px}.media-text small{font-size:10px}.media-gallery{margin-top:55px;padding-top:42px}.hero-art img{height:100%;object-fit:cover;object-position:center 40%}}
@media(max-width:390px){.media-grid{grid-template-columns:1fr}.media-cover{height:220px}}
@media(prefers-reduced-motion:reduce){.project-photo,.media-cover img{transition:none}}

/* v3 — branding con logotipo oficial suministrado */
.brand-icon{background:#101010;clip-path:none;border-radius:4px;overflow:hidden;color:inherit}.brand-icon img{width:90%;height:90%;object-fit:contain;display:block}
.hero-art .hero-real-logo{position:absolute;z-index:4;bottom:53px;right:18px;width:123px;height:auto;max-height:150px;object-fit:contain;background:#050505e8;padding:7px 12px;box-shadow:0 12px 24px #0004;border:1px solid #e6ab4f80}
.footer-official-brand{display:inline-block;white-space:normal;width:160px;max-width:100%}.footer-official-brand img{width:100%;height:auto;display:block}
@media(max-width:800px){.hero-art .hero-real-logo{width:108px;bottom:55px;right:12px}}
@media(max-width:600px){.hero-art .hero-real-logo{width:81px;max-height:110px;right:9px;bottom:43px;padding:5px 7px}.brand-icon{width:40px;height:40px}.brand-icon img{width:92%;height:92%}}

/* v5: presencia territorial, mapa y acceso a Instagram */
.territory-map{padding-top:40px;padding-bottom:90px;scroll-margin-top:95px}
.territory-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.07fr);gap:28px;align-items:stretch}
.territory-copy{padding:35px;background:#f7f7f1;border:1px solid #e2e4dc}
.territory-copy h2{font:800 clamp(35px,3.7vw,53px)/.98 var(--font-head);margin:12px 0 16px}
.territory-copy h2 em{color:#b57e26;font-style:normal}
.territory-copy p{line-height:1.65}
.territory-copy ul{margin:18px 0 24px;padding-left:21px;line-height:1.8}
.territory-copy li{padding-left:4px}
.territory-actions{display:flex;flex-wrap:wrap;align-items:center;gap:17px}
.territory-actions .btn{font-size:12px}
.territory-copy .territory-note{margin:20px 0 0;font-size:12px;color:#657268}
.territory-map-frame{min-height:440px;border:1px solid #dce1d8;background:#e2e5df;overflow:hidden}
.territory-map-frame iframe{width:100%;height:100%;min-height:440px;display:block;border:0}
.instagram-icon-link{display:inline-flex!important;align-items:center;gap:9px}
.instagram-icon-link svg{width:19px;height:19px;flex-shrink:0}
@media(max-width:900px){.territory-layout{grid-template-columns:1fr}.territory-map-frame,.territory-map-frame iframe{min-height:340px}}
@media(max-width:600px){.territory-map{padding-top:22px;padding-bottom:55px}.territory-copy{padding:24px 20px}.territory-map-frame,.territory-map-frame iframe{min-height:300px}}
