
:root{
  --navy:#11186F;
  --navy-dark:#0A0F55;
  --teal:#2EBCA9;
  --teal-light:#DDF6F1;
  --paper:#FAFBF8;
  --white:#FFFFFF;
  --ink:#171B42;
  --muted:#656A82;
  --line:#DDE0E8;
  --max:1240px;
  --radius:18px;
  --shadow:0 16px 42px rgba(17,24,111,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"Montserrat",Arial,sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
body.menu-open{overflow:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.skip-link{
  position:fixed;left:-999px;top:12px;z-index:1000;
  background:white;border:2px solid var(--navy);padding:10px 15px
}
.skip-link:focus{left:12px}


/* Header responsive V4 */
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(255,255,255,.98);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(14px);
}
.header-inner{
  min-height:82px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:28px;
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
}
.brand-symbol{
  width:54px;
  height:54px;
  object-fit:contain;
  flex:0 0 auto;
}
.brand-wordmark{
  color:var(--navy);
  font-family:"Bebas Neue","Roboto Condensed",sans-serif;
  font-size:1.9rem;
  line-height:1;
  letter-spacing:.07em;
  white-space:nowrap;
}
.desktop-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:clamp(16px,1.8vw,28px);
  min-width:0;
  font-size:.74rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.desktop-nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:82px;
  white-space:nowrap;
}
.desktop-nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:16px;
  height:3px;
  background:var(--teal);
  transition:right .2s ease;
}
.desktop-nav a:hover::after,
.desktop-nav a[aria-current="page"]::after{
  right:0;
}
.header-cta{
  min-height:42px!important;
  padding:0 18px;
  border-radius:999px;
  background:var(--teal);
  color:var(--navy-dark);
  line-height:1.15;
  text-align:center;
}
.header-cta::after{display:none}
.menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:11px;
  background:var(--navy);
  color:white;
  min-height:42px;
  padding:0 14px;
  font-size:.74rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}

/* Typography */
.eyebrow,.section-label{
  margin:0;
  color:var(--teal);
  font-size:.72rem;font-weight:900;
  text-transform:uppercase;letter-spacing:.16em
}
.hero h1,.page-hero h1,.section-title,.article h1,
.about-copy h2,.quote h2,.guide-block h2,.article h2,
.sidebar-box h3,.museum-card h2,.card-body h3,.thumb-word{
  font-family:"Bebas Neue","Roboto Condensed",sans-serif;
  color:var(--navy);
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:.025em
}
.hero h1{
  margin:16px 0 22px;
  font-size:clamp(4.2rem,6.5vw,6.9rem);
  line-height:.89
}
.hero h1 span{color:var(--teal)}
.section-title{
  margin:9px 0 0;
  font-size:clamp(3rem,4.5vw,4.9rem);
  line-height:.96
}
.page-hero h1{
  margin:12px 0 15px;
  font-size:clamp(4rem,7vw,6.8rem);
  line-height:.92
}
.article h1{font-size:clamp(3.8rem,6vw,6rem);line-height:.95}
.article h2{font-size:2.35rem;line-height:1;margin:43px 0 13px}

/* Hero */
.hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 80% 15%,rgba(46,188,169,.18),transparent 31%),
    linear-gradient(135deg,#fff 0 54%,#F0FAF7 54% 100%);
  border-bottom:1px solid var(--line)
}
.hero::after{
  content:"";position:absolute;right:-230px;bottom:-310px;
  width:600px;height:600px;border-radius:50%;
  border:1px solid rgba(17,24,111,.12);
  box-shadow:0 0 0 66px rgba(46,188,169,.055)
}
.hero-inner{
  min-height:620px;padding-block:54px;
  display:grid;grid-template-columns:1.04fr .68fr .86fr;
  gap:48px;align-items:center;position:relative;z-index:2
}
.hero-copy>p:not(.eyebrow){
  max-width:590px;margin:0;
  color:#444965;font-size:1.05rem;line-height:1.72
}
.actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:29px}
.btn{
  min-height:48px;
  display:inline-flex;align-items:center;justify-content:center;
  padding:0 20px;border:2px solid var(--teal);border-radius:11px;
  font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em
}
.btn-primary{background:var(--teal);color:var(--navy-dark)}
.btn-secondary{background:white;color:var(--navy)}
.hero-logo{display:grid;place-items:center}
.hero-logo img{
  width:auto;max-height:475px;
  filter:drop-shadow(0 22px 28px rgba(17,24,111,.11))
}
.hero-note{
  padding:30px;
  background:rgba(255,255,255,.86);
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:var(--shadow)
}
.hero-note h2{
  margin:0 0 14px;
  color:var(--navy);
  font-family:"Bebas Neue","Roboto Condensed",sans-serif;
  font-size:2.25rem;font-weight:400;line-height:1
}
.hero-note p{margin:.65em 0;color:#50556D;line-height:1.65}
.location-chip{
  margin-top:22px;display:flex;gap:11px;align-items:center;
  font-size:.8rem;font-weight:800
}
.pin{
  width:36px;height:36px;border-radius:50%;
  display:grid;place-items:center;background:var(--teal);color:var(--navy)
}

/* Sections */
.section{padding:82px 0}
.section-head{
  display:flex;justify-content:space-between;align-items:flex-end;
  gap:30px;margin-bottom:30px
}
.text-link{
  display:inline-block;
  color:var(--navy);font-size:.82rem;font-weight:900;
  border-bottom:3px solid var(--teal);padding-bottom:4px
}
.category-strip{background:var(--navy);color:white;padding:55px 0 60px}
.category-strip .section-title{color:white}
.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:13px}
.category-card{
  min-width:0;overflow:hidden;
  background:#181F78;border:1px solid rgba(255,255,255,.19);
  border-radius:15px;transition:transform .18s ease,border-color .18s ease
}
.category-card:hover{transform:translateY(-4px);border-color:var(--teal)}
.card-visual{
  height:122px;position:relative;overflow:hidden;
  background:linear-gradient(140deg,var(--teal),#A8EDE3)
}
.card-visual::before{
  content:"";position:absolute;right:-65px;top:-82px;
  width:155px;height:155px;border:12px solid rgba(17,24,111,.82);border-radius:50%
}
.card-visual::after{
  content:"";position:absolute;left:-50px;bottom:-72px;
  width:115px;height:115px;border:12px solid rgba(17,24,111,.55);border-radius:50%
}
.card-icon{
  position:absolute;inset:0;display:grid;place-items:center;
  z-index:2;color:var(--navy);
  font-family:"Bebas Neue",sans-serif;font-size:3.4rem;letter-spacing:.04em
}
.card-body{padding:18px}
.card-body h3{margin:0 0 7px;color:white;font-size:1.65rem;line-height:1}
.card-body p{margin:0;color:#DDE0F8;font-size:.85rem;line-height:1.5}

/* About: sin ícono de app gigante */
.about-grid{
  display:grid;grid-template-columns:.82fr 1.2fr .82fr;
  gap:52px;align-items:center
}
.about-brand-panel{
  min-height:355px;
  display:grid;place-items:center;
  position:relative;overflow:hidden;
  background:var(--navy);border-radius:20px;
  box-shadow:var(--shadow)
}
.about-brand-panel::before{
  content:"";position:absolute;width:260px;height:260px;border-radius:50%;
  background:var(--teal);right:-85px;top:-92px;opacity:.95
}
.about-brand-panel::after{
  content:"";position:absolute;width:170px;height:170px;border-radius:50%;
  border:20px solid rgba(255,255,255,.09);left:-78px;bottom:-95px
}
.about-brand-panel img{
  position:relative;z-index:2;width:82%;max-height:290px;object-fit:contain;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.18))
}
.about-copy h2,.quote h2{
  margin:10px 0 17px;
  font-size:clamp(2.7rem,3.8vw,3.8rem);
  line-height:.98
}
.about-copy p{margin:0 0 19px;color:#4E536C;line-height:1.75}
.quote{
  padding:28px;border-radius:17px;
  background:var(--teal-light);
  border:1px solid rgba(46,188,169,.42)
}
.quote-mark{font-size:4.5rem;line-height:.55;color:var(--teal);font-weight:900}
.quote h2{font-size:2.65rem}
.quote p{margin:0;color:#4A5068}

/* Cards */
.latest-grid,.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}
.content-card,.place-card{
  overflow:hidden;background:white;border:1px solid var(--line);
  border-radius:var(--radius);box-shadow:0 8px 24px rgba(17,24,111,.055);
  transition:transform .18s ease
}
.content-card:hover,.place-card:hover{transform:translateY(-4px)}
.thumb{
  height:205px;position:relative;overflow:hidden;
  background:linear-gradient(140deg,var(--teal),var(--navy))
}
.thumb::before{
  content:"";position:absolute;right:-105px;top:-135px;
  width:270px;height:270px;border:25px solid rgba(255,255,255,.17);border-radius:50%
}
.thumb::after{
  content:"";position:absolute;left:-78px;bottom:-65px;
  width:210px;height:100px;border:20px solid rgba(255,255,255,.14);border-radius:50%
}
.thumb-word{
  position:absolute;left:20px;bottom:15px;z-index:2;
  color:white;font-size:2.4rem;line-height:1
}
.content-card-body,.place-card-body{padding:23px}
.content-card h3,.place-card h3{
  margin:0 0 9px;color:var(--navy);
  font-size:1.23rem;line-height:1.3
}
.content-card p,.place-card p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.55}
.meta{display:none!important}

/* Internal pages */
.page-hero{
  padding:70px 0 57px;
  background:linear-gradient(135deg,#fff,#EFF9F7);
  border-bottom:1px solid var(--line)
}
.page-hero p{max-width:780px;margin:0;color:#4B506B;font-size:1.08rem;line-height:1.7}
.filter-bar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:30px}
.filter{
  border:1px solid var(--line);background:white;color:var(--navy);
  border-radius:999px;padding:10px 15px;font-size:.78rem;font-weight:850;
  text-transform:uppercase
}
.filter.active,.filter:hover{background:var(--navy);color:white;border-color:var(--navy)}
.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:21px}
.guide-block{background:white;border:1px solid var(--line);border-radius:17px;padding:28px}
.guide-block h2{margin:0 0 13px;font-size:2.15rem}
.guide-block p,.guide-block li{color:#4A506A;line-height:1.67}
.article-layout{display:grid;grid-template-columns:minmax(0,760px) 295px;gap:65px;align-items:start}
.article .intro{font-size:1.19rem;line-height:1.7;color:#3D4261}
.article p,.article li{color:#474C67;line-height:1.77}
.article-note{
  margin-top:32px;padding:21px;
  background:var(--teal-light);
  border:1px solid rgba(46,188,169,.42);
  border-radius:13px
}
.sidebar{position:sticky;top:110px}
.sidebar-box{background:var(--navy);color:white;border-radius:17px;padding:24px}
.sidebar-box h3{margin:0 0 13px;color:white;font-size:1.9rem}
.sidebar-box a{display:block;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.contact-form{background:white;border:1px solid var(--line);padding:29px;border-radius:18px}
.field{display:grid;gap:7px;margin-bottom:16px}
.field label{font-weight:800;color:var(--navy)}
.field input,.field textarea{
  width:100%;border:1px solid var(--line);border-radius:10px;
  padding:13px;background:#FDFDFF
}
.field textarea{min-height:150px;resize:vertical}
.notice{background:#EFF9F7;border:1px solid rgba(46,188,169,.4);padding:18px;border-radius:12px;color:#4A506A}
.empty-state{padding:55px 24px;text-align:center;border:2px dashed var(--line);border-radius:17px}

/* Clusters */
.cluster-nav{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin:0 0 31px}
.cluster-nav-label{font-weight:900;text-transform:uppercase;font-size:.78rem;letter-spacing:.06em}
.cluster-link{
  min-height:42px;padding:0 16px;
  display:inline-flex;align-items:center;gap:9px;
  border:2px solid var(--navy);border-radius:999px;background:white;
  color:var(--navy);font-size:.76rem;font-weight:900;text-transform:uppercase
}
.cluster-link:hover{background:var(--navy);color:white}
.cluster-count{
  width:23px;height:23px;border-radius:50%;
  display:grid;place-items:center;background:var(--teal);color:var(--navy);font-size:.67rem
}
.museum-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}
.museum-card{background:white;border:1px solid var(--line);border-radius:17px;padding:26px;box-shadow:0 8px 24px rgba(17,24,111,.05)}
.museum-number{color:var(--teal);font-size:.78rem;font-weight:900}
.museum-card h2{margin:37px 0 10px;font-size:2rem;line-height:1}
.museum-card p{margin:0;color:var(--muted);line-height:1.62}

/* Footer */
.site-footer{margin-top:28px;padding:57px 0 29px;background:var(--navy-dark);color:white}
.footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,.75fr);gap:42px}
.footer-brand{display:flex;align-items:flex-start;gap:20px}
.footer-logo-full{width:102px;height:auto;object-fit:contain}
.footer-brand-copy strong{
  font-family:"Bebas Neue","Roboto Condensed",sans-serif;
  font-size:2rem;font-weight:400;letter-spacing:.05em
}
.footer-brand p{max-width:330px;color:#DADDF4;line-height:1.58}
.footer-column h3{margin:0 0 13px;color:var(--teal);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}
.footer-column a{display:block;color:#E7E9FA;padding:5px 0;font-size:.9rem}
.footer-bottom{
  margin-top:39px;padding-top:22px;border-top:1px solid rgba(255,255,255,.15);
  display:flex;justify-content:space-between;gap:20px;color:#C7CBE7;font-size:.8rem
}



/* Notebook / tablet landscape */
@media (max-width:1180px){
  .header-inner{
    grid-template-columns:auto auto;
    min-height:76px;
    gap:18px;
  }
  .brand-symbol{
    width:50px;
    height:50px;
  }
  .brand-wordmark{
    font-size:1.68rem;
  }
  .menu-toggle{
    display:inline-flex;
    justify-self:end;
  }
  .desktop-nav{
    display:none;
    position:absolute;
    top:76px;
    left:20px;
    right:20px;
    z-index:200;
    padding:16px;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    background:white;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:var(--shadow);
  }
  .desktop-nav.open{
    display:flex;
  }
  .desktop-nav a{
    min-height:48px;
    justify-content:flex-start;
    padding:0 14px;
    font-size:.82rem;
    border-bottom:1px solid var(--line);
  }
  .desktop-nav a:last-child{
    border-bottom:0;
  }
  .desktop-nav a::after{
    display:none;
  }
  .header-cta{
    margin-top:10px;
    justify-content:center!important;
  }

  .hero-inner{
    grid-template-columns:1fr .72fr;
  }
  .hero-note{
    grid-column:1/-1;
  }
  .category-grid{
    grid-template-columns:repeat(3,1fr);
  }
  .about-grid{
    grid-template-columns:.8fr 1.2fr;
  }
  .quote{
    grid-column:1/-1;
  }
  .footer-grid{
    grid-template-columns:1.35fr 1fr 1fr;
  }
  .footer-column:last-child{
    grid-column:2/-1;
  }
}

/* Tablet portrait */
@media (max-width:860px){
  .container{
    width:min(calc(100% - 32px),var(--max));
  }
  .header-inner{
    min-height:72px;
  }
  .desktop-nav{
    top:72px;
    left:16px;
    right:16px;
  }
  .brand-symbol{
    width:46px;
    height:46px;
  }
  .brand-wordmark{
    font-size:1.5rem;
  }
  .hero-inner{
    grid-template-columns:1fr;
    padding-block:42px;
  }
  .hero-logo{
    order:-1;
  }
  .hero-logo img{
    max-height:310px;
  }
  .hero-note{
    grid-column:auto;
  }
  .section-head{
    display:block;
  }
  .section-head .text-link{
    margin-top:13px;
  }
  .latest-grid,
  .place-grid{
    grid-template-columns:1fr 1fr;
  }
  .article-layout{
    grid-template-columns:1fr;
  }
  .sidebar{
    position:static;
  }
  .contact-grid{
    grid-template-columns:1fr;
  }
  .museum-grid{
    grid-template-columns:1fr 1fr;
  }
}

/* Mobile */
@media (max-width:600px){
  .container{
    width:min(calc(100% - 24px),var(--max));
  }
  .header-inner{
    min-height:68px;
    gap:10px;
  }
  .desktop-nav{
    top:68px;
    left:10px;
    right:10px;
    padding:12px;
  }
  .brand{
    gap:9px;
  }
  .brand-symbol{
    width:43px;
    height:43px;
  }
  .brand-wordmark{
    font-size:1.28rem;
    letter-spacing:.055em;
  }
  .menu-toggle{
    min-height:40px;
    padding:0 12px;
  }
  .hero-inner{
    padding-block:34px;
  }
  .hero h1{
    font-size:3.55rem;
  }
  .hero-logo img{
    max-height:270px;
  }
  .hero-note{
    padding:22px;
  }
  .hero-note h2{
    font-size:1.95rem;
  }
  .category-grid{
    grid-template-columns:1fr 1fr;
  }
  .card-visual{
    height:103px;
  }
  .card-body{
    padding:14px;
  }
  .about-grid{
    grid-template-columns:1fr;
  }
  .about-brand-panel{
    min-height:290px;
  }
  .about-brand-panel img{
    max-height:230px;
  }
  .about-copy h2,
  .quote h2{
    font-size:2.5rem;
  }
  .latest-grid,
  .place-grid,
  .guide-grid,
  .museum-grid{
    grid-template-columns:1fr;
  }
  .section{
    padding:58px 0;
  }
  .page-hero{
    padding:50px 0 38px;
  }
  .page-hero h1{
    font-size:3.45rem;
  }
  .footer-grid{
    grid-template-columns:1fr;
  }
  .footer-column:last-child{
    grid-column:auto;
  }
  .footer-bottom{
    display:block;
  }
}

/* Very small phones */
@media (max-width:390px){
  .brand-wordmark{
    font-size:1.12rem;
  }
  .brand-symbol{
    width:40px;
    height:40px;
  }
  .menu-toggle{
    font-size:0;
    width:42px;
    padding:0;
  }
  .menu-toggle::before{
    content:"☰";
    font-size:1.15rem;
  }
  .hero h1{
    font-size:3.1rem;
  }
  .category-grid{
    grid-template-columns:1fr;
  }
}


/* Wordmark oficial V5: letras extraídas del logo aprobado */
.brand-wordmark{
  display:none!important;
}
.brand-wordmark-img{
  display:block;
  width:auto;
  height:43px;
  object-fit:contain;
  flex:0 0 auto;
}
@media (max-width:1180px){
  .brand-wordmark-img{
    height:39px;
  }
}
@media (max-width:860px){
  .brand-wordmark-img{
    height:36px;
  }
}
@media (max-width:600px){
  .brand-wordmark-img{
    height:31px;
  }
}
@media (max-width:390px){
  .brand-wordmark-img{
    height:28px;
  }
}


/* Fotografías reales V6 */
.hero-media{
  position:relative;
  min-height:500px;
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--shadow);
  background:#DDE0E8;
}
.hero-photo,
.hero-photo img{
  width:100%;
  height:100%;
}
.hero-photo{
  position:absolute;
  inset:0;
}
.hero-photo img{
  object-fit:cover;
  object-position:center;
}

.card-visual-photo{
  background:#DDE0E8;
}
.category-photo,
.category-photo img,
.card-picture,
.card-picture img{
  width:100%;
  height:100%;
}
.category-photo img,
.card-picture img{
  object-fit:cover;
}
.card-picture{
  display:block;
  height:205px;
  background:#DDE0E8;
}
.card-picture img{
  object-position:center;
}
.about-photo-panel{
  min-height:390px;
  position:relative;
  overflow:hidden;
  border-radius:20px;
  box-shadow:var(--shadow);
  background:#DDE0E8;
}
.about-photo,
.about-photo img{
  width:100%;
  height:100%;
}
.about-photo{
  position:absolute;
  inset:0;
}
.about-photo img{
  object-fit:cover;
  object-position:center;
}
.about-photo-panel::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(10,15,85,.58));
}
.about-logo-badge{
  position:absolute;
  left:20px;
  bottom:20px;
  z-index:2;
  width:82px;
  height:82px;
  padding:8px;
  border-radius:17px;
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 26px rgba(10,15,85,.18);
}
.article-cover{
  display:block;
  width:100%;
  margin:0 0 30px;
  overflow:hidden;
  border-radius:18px;
  background:#DDE0E8;
  box-shadow:0 12px 30px rgba(17,24,111,.08);
}
.article-cover img{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
}
.photo-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:35px 0;
}
.photo-gallery figure{
  margin:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:15px;
  background:white;
}
.photo-gallery img,
.gallery-picture,
.gallery-picture img{
  display:block;
  width:100%;
}
.photo-gallery img,
.gallery-picture img{
  aspect-ratio:4/3;
  object-fit:cover;
}
.photo-gallery figcaption{
  padding:12px 14px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.45;
}
.photo-gallery .gallery-wide{
  grid-column:1/-1;
}
.photo-gallery .gallery-wide img{
  aspect-ratio:16/9;
}
.documentary-gallery{
  margin-top:42px;
}
.documentary-gallery h2{
  margin-bottom:17px;
}
@media(max-width:1180px){
  .hero-media{min-height:450px}
}
@media(max-width:860px){
  .hero-media{
    order:-1;
    min-height:430px;
  }
  .about-photo-panel{min-height:350px}
}
@media(max-width:600px){
  .hero-media{min-height:370px}
  
  .card-picture{height:220px}
  .about-photo-panel{min-height:320px}
  .photo-gallery{grid-template-columns:1fr}
  .photo-gallery .gallery-wide{grid-column:auto}
  .photo-gallery .gallery-wide img,
  .photo-gallery img,
  .gallery-picture img{aspect-ratio:4/3}
}
