
:root{
  --bg:#050505;
  --panel:#0c0c0c;
  --text:#f5f1e8;
  --muted:#b7afa2;
  --gold:#c99a45;
  --gold2:#f0ca78;
  --line:rgba(201,154,69,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:radial-gradient(circle at top right,#17130d 0,#050505 38%,#020202 100%);
  color:var(--text);
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.site-header{
  position:fixed;z-index:50;top:0;left:0;right:0;
  min-height:108px;padding:12px 5vw;
  display:flex;align-items:center;justify-content:space-between;gap:22px;
  background:linear-gradient(180deg,rgba(0,0,0,.94),rgba(0,0,0,.62));
  border-bottom:1px solid rgba(255,255,255,.06);
  backdrop-filter:blur(14px);
}
.brand img{height:88px;width:auto;object-fit:contain}
.nav{display:flex;gap:26px;font-size:12px;text-transform:uppercase;letter-spacing:.09em}
.nav a{color:#ddd;transition:.25s}
.nav a:hover{color:var(--gold2)}
.right-tools{display:flex;align-items:center;gap:14px}
.header-cta{
  border:1px solid var(--gold);padding:13px 18px;
  color:var(--gold2);text-transform:uppercase;letter-spacing:.11em;font-size:11px
}
.lang-switch{display:flex;border:1px solid var(--line);background:rgba(0,0,0,.45)}
.lang-switch button{
  border:0;background:transparent;color:#aaa;padding:10px 12px;cursor:pointer;
  font-weight:700;letter-spacing:.08em
}
.lang-switch button.active{background:var(--gold);color:#080706}
.hero{
  min-height:100vh;position:relative;display:flex;align-items:center;padding:170px 6vw 80px;overflow:hidden;
}
.hero-bg{
  position:absolute;inset:0;background:
    linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.52) 27%,rgba(0,0,0,.06) 58%,rgba(0,0,0,.25) 100%),
    url("images/hero-monumental.jpg") center right/cover no-repeat;
  filter:saturate(.82) contrast(1.08);
}
.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 72% 45%,rgba(221,171,75,.13),transparent 32%)}
.hero-content{position:relative;z-index:2;max-width:520px}
.eyebrow{
  color:var(--gold2);text-transform:uppercase;letter-spacing:.26em;font-weight:700;font-size:12px;margin:0 0 20px
}
h1,h2{font-family:Cinzel,Georgia,serif;font-weight:600;line-height:1.02;margin:0}
h1{font-size:clamp(40px,4.7vw,72px);max-width:620px;letter-spacing:.02em}
h2{font-size:clamp(30px,3.7vw,56px)}
h3{margin:0 0 10px;font-size:22px}
.lead{font-size:16px;line-height:1.62;color:#d7d1c7;max-width:470px;margin:22px 0 30px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{padding:14px 22px;border:1px solid var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700}
.btn-gold{background:linear-gradient(135deg,#aa7a2b,#efca72);color:#080706}
.btn-outline{color:#f0ca78;background:rgba(0,0,0,.24)}
.hero-card{
  position:absolute;right:5vw;bottom:7vh;z-index:2;
  display:grid;gap:10px;padding:20px;border:1px solid var(--line);
  background:rgba(0,0,0,.55);backdrop-filter:blur(12px)
}
.hero-card span{color:#ddd;font-size:12px;letter-spacing:.11em;text-transform:uppercase}
.intro-strip{
  display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  background:linear-gradient(90deg,#070707,#11100d,#070707)
}
.intro-strip div{padding:32px 6vw;border-right:1px solid var(--line)}
.intro-strip strong{display:block;color:#fff;font-family:Cinzel,serif;font-size:21px}
.intro-strip span{display:block;color:var(--muted);margin-top:8px}
.section{padding:100px 6vw}
.section-head{max-width:820px;margin-bottom:42px}
.section-head p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.7}
.centered{text-align:center;margin-left:auto;margin-right:auto}
.featured-grid{display:grid;grid-template-columns:1.35fr .85fr;grid-auto-rows:360px;gap:22px}
.feature-card{position:relative;overflow:hidden;border:1px solid var(--line);background:#111}
.feature-card.large{grid-row:span 2}
.feature-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.04)}
.feature-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82),transparent 58%)}
.feature-card div{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}
.feature-card span{color:var(--gold2);letter-spacing:.18em;text-transform:uppercase;font-size:12px}
.feature-card h3{font-family:Cinzel,serif;font-size:31px}
.venus-crop{object-position:center 42%}
.dark-panel{background:linear-gradient(180deg,#090909,#11100e)}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.service-grid article{padding:32px;border:1px solid var(--line);background:rgba(255,255,255,.025)}
.service-grid h3{font-family:Cinzel,serif;color:#fff}
.service-grid p,.timeline p,.team-text p,.contact-section p,.behind-content p{color:var(--muted);line-height:1.75}
.masonry{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:310px;gap:18px}
.masonry img{width:100%;height:100%;object-fit:cover;border:1px solid var(--line);filter:saturate(.82)}
.masonry img:first-child{grid-row:span 2}
.venus-dog-crop{object-position:center 35%}
.process-section{background:#070707}
.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:28px}
.timeline article{padding:30px;border-left:1px solid var(--gold);background:rgba(255,255,255,.025)}
.timeline span{color:var(--gold2);font-family:Cinzel,serif;font-size:28px}
.process-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.process-gallery img{height:370px;width:100%;object-fit:cover;border:1px solid var(--line);filter:grayscale(.08) saturate(.72)}
.team-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px;align-items:center;background:linear-gradient(90deg,#070707,#0f0d0a)}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.team-grid img{height:560px;width:100%;object-fit:cover;border:1px solid var(--line)}
.behind-section{display:grid;grid-template-columns:.82fr 1.18fr;gap:36px;align-items:center;background:linear-gradient(90deg,#050505,#0d0b08)}
.behind-section img{width:100%;height:620px;object-fit:cover;object-position:center 42%;border:1px solid var(--line);filter:saturate(.78) contrast(1.03)}
.behind-points{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.behind-points span{border:1px solid var(--line);color:var(--gold2);padding:12px 16px;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.contact-section{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;background:#080808}
.contact-card{border:1px solid var(--line);padding:36px;background:linear-gradient(135deg,rgba(201,154,69,.12),rgba(255,255,255,.025))}
.contact-card a,.contact-card p{display:block;margin:0 0 18px;font-size:22px;color:#fff}
footer{padding:28px 6vw;display:flex;justify-content:space-between;color:#8f877a;border-top:1px solid rgba(255,255,255,.08)}
@media(max-width:1080px){
  .nav{gap:18px}
  .brand img{height:76px}
}
@media(max-width:980px){
  .site-header{position:sticky;flex-wrap:wrap;min-height:auto}
  .brand img{height:70px}
  .nav{order:3;width:100%;overflow:auto;gap:20px;padding-bottom:4px}
  .header-cta{display:none}
  .hero{padding-top:90px}
  .hero-card{display:none}
  .intro-strip,.service-grid,.timeline,.contact-section,.team-section,.behind-section{grid-template-columns:1fr}
  .featured-grid{grid-template-columns:1fr;grid-auto-rows:420px}
  .feature-card.large{grid-row:span 1}
  .masonry{grid-template-columns:1fr;grid-auto-rows:360px}
  .masonry img:first-child{grid-row:auto}
  .process-gallery,.team-grid{grid-template-columns:1fr}
  .team-grid img,.behind-section img{height:auto}
  footer{display:block;line-height:1.8}
}
@media(max-width:600px){
  .brand img{height:62px}
  h1{font-size:38px}
  .section{padding:70px 5vw}
  .featured-grid{grid-auto-rows:330px}
  .process-gallery img{height:280px}
  .right-tools{gap:8px}
}


/* V4 requested refinements */
.brand img{
  height:128px;
  width:auto;
}
.site-header{
  min-height:132px;
}
.hero{
  padding-top:190px;
}
.feature-card,
.masonry,
.process-gallery,
.team-grid,
.behind-section{
  overflow:visible;
}
.feature-card img,
.masonry img,
.process-gallery img,
.team-grid img{
  transition:transform .65s ease, object-fit .65s ease, filter .65s ease, box-shadow .65s ease;
}
.feature-card:hover img,
.masonry img:hover,
.process-gallery img:hover,
.team-grid img:hover{
  transform:scale(.94);
  object-fit:contain;
  background:#050505;
  filter:saturate(.95) contrast(1.03);
  box-shadow:0 18px 60px rgba(0,0,0,.55);
  z-index:5;
}
.clean-team{
  grid-template-columns:1fr;
}
.clean-team .team-text{
  max-width:900px;
}
.clean-team .team-grid{
  grid-template-columns:1fr 1fr;
}
.clean-team .team-grid img{
  height:680px;
  object-fit:cover;
}
.installation-section{
  background:linear-gradient(180deg,#070707,#0d0b08);
}
.installation-section img{
  width:100%;
  height:720px;
  object-fit:cover;
  border:1px solid var(--line);
  filter:saturate(.78) contrast(1.05);
}
.installation-section img:hover{
  object-fit:contain;
  background:#050505;
}
@media(max-width:1080px){
  .brand img{height:104px}
  .site-header{min-height:112px}
}
@media(max-width:980px){
  .brand img{height:82px}
  .site-header{min-height:auto}
  .clean-team .team-grid{grid-template-columns:1fr}
  .clean-team .team-grid img,.installation-section img{height:auto}
}


/* V5 dragon project and installation updates */
.dragon-subgallery{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin-top:22px;
}
.dragon-subgallery img{
  width:100%;
  height:440px;
  object-fit:cover;
  border:1px solid var(--line);
  filter:saturate(.82) contrast(1.04);
  transition:transform .65s ease, object-fit .65s ease, filter .65s ease, box-shadow .65s ease;
}
.dragon-subgallery img:hover{
  transform:scale(.96);
  object-fit:contain;
  background:#050505;
  filter:saturate(.98) contrast(1.04);
  box-shadow:0 18px 60px rgba(0,0,0,.55);
}
.process-gallery img:last-child{
  object-position:center center;
}
@media(max-width:980px){
  .dragon-subgallery{grid-template-columns:1fr}
  .dragon-subgallery img{height:auto}
}


/* Final requested corrections: no repeated images, bigger logo, clean team, hover full image */
.brand img{
  height:140px !important;
  width:auto;
}
.site-header{
  min-height:138px;
}
.hero{
  padding-top:210px;
}
.project-clean-grid{
  margin-top:0;
}
.feature-card img,
.project-clean-grid img,
.team-grid img,
.process-gallery img{
  transition:transform .65s ease, object-fit .65s ease, filter .65s ease, box-shadow .65s ease;
}
.feature-card:hover img,
.project-clean-grid article:hover img,
.team-grid img:hover,
.process-gallery img:hover{
  transform:scale(.94);
  object-fit:contain !important;
  background:#050505;
  filter:saturate(.98) contrast(1.04);
  box-shadow:0 18px 60px rgba(0,0,0,.55);
  z-index:4;
}
.clean-team{
  grid-template-columns:1fr !important;
}
.clean-team .team-text{
  max-width:900px;
}
.clean-team .team-grid{
  grid-template-columns:1fr 1fr;
}
.clean-team .team-grid img{
  height:680px;
  object-fit:cover;
  border:1px solid var(--line);
}
@media(max-width:1080px){
  .brand img{height:112px !important}
  .site-header{min-height:118px}
}
@media(max-width:980px){
  .brand img{height:86px !important}
  .site-header{min-height:auto}
  .hero{padding-top:100px}
  .clean-team .team-grid{grid-template-columns:1fr}
  .clean-team .team-grid img{height:auto}
}


/* precise final fixes */
.brand img{height:140px !important;width:auto}
.site-header{min-height:138px}
.feature-card img,.team-grid img,.behind-section img,.process-gallery img{
  transition:transform .65s ease, object-fit .65s ease, filter .65s ease, box-shadow .65s ease;
}
.feature-card:hover img,.team-grid img:hover,.behind-section img:hover,.process-gallery img:hover{
  transform:scale(.94);
  object-fit:contain !important;
  background:#050505;
  filter:saturate(.98) contrast(1.04);
  box-shadow:0 18px 60px rgba(0,0,0,.55);
}
.clean-team{grid-template-columns:1fr !important}
.clean-team .team-text{max-width:900px}
.clean-team .team-grid{grid-template-columns:1fr 1fr}
.clean-team .team-grid img{height:680px;object-fit:cover;border:1px solid var(--line)}
@media(max-width:980px){
  .brand img{height:86px !important}
  .site-header{min-height:auto}
  .clean-team .team-grid{grid-template-columns:1fr}
  .clean-team .team-grid img{height:auto}
}

/* Responsive polish — keeps desktop intact, fixes tablet and mobile */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

img,
video,
canvas,
svg {
  max-width: 100%;
}

/* Tablet */
@media (max-width: 1024px) {
  .site-header,
  header,
  .header {
    width: 100%;
    max-width: 100vw;
    box-sizing: border-box;
  }

  .nav,
  nav {
    gap: 18px;
  }

  .hero,
  .section,
  section {
    max-width: 100vw;
    box-sizing: border-box;
  }

  .featured-grid,
  .project-clean-grid,
  .process-gallery,
  .team-grid,
  .intro-strip {
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 768px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  .site-header,
  header,
  .header {
    position: relative;
    width: 100%;
    max-width: 100vw;
    padding: 12px 18px !important;
    box-sizing: border-box;
    justify-content: center;
  }

  .brand,
  .logo {
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .brand img,
  .logo img,
  header img {
    max-width: 135px !important;
    height: auto !important;
  }

  .nav,
  nav,
  .right-tools,
  .language-switcher {
    display: none !important;
  }

  .hero {
    min-height: auto !important;
    padding: 72px 22px 54px !important;
    background-position: center center !important;
    box-sizing: border-box;
  }

  .hero-content,
  .hero .content,
  .container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }

  .hero h1,
  h1 {
    font-size: clamp(42px, 14vw, 58px) !important;
    line-height: 0.95 !important;
    letter-spacing: -0.04em;
    max-width: 100%;
    overflow-wrap: normal;
  }

  .hero p,
  .lead,
  .subtitle {
    font-size: 18px !important;
    line-height: 1.55 !important;
    max-width: 100%;
  }

  .hero-buttons,
  .buttons,
  .cta-row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    width: 100%;
    max-width: 330px;
  }

  .hero-buttons a,
  .buttons a,
  .btn,
  button {
    width: 100%;
    max-width: 330px;
    box-sizing: border-box;
    text-align: center;
  }

  .section,
  section {
    padding: 52px 20px !important;
    width: 100%;
    max-width: 100vw;
    box-sizing: border-box;
  }

  h2 {
    font-size: clamp(30px, 10vw, 42px) !important;
    line-height: 1.05 !important;
  }

  h3 {
    font-size: 24px !important;
    line-height: 1.15 !important;
  }

  .intro-strip,
  .featured-grid,
  .project-clean-grid,
  .process-gallery,
  .team-grid,
  .services-grid,
  .cards-grid,
  .gallery-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    width: 100%;
    max-width: 100%;
  }

  .feature-card,
  .feature-card.large,
  .project-card,
  .service-card,
  .card {
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .feature-card img,
  .project-card img,
  .process-gallery img,
  .team-grid img,
  .gallery-grid img,
  .card img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    object-fit: cover;
    display: block;
  }

  .feature-card.large img {
    height: auto !important;
  }

  .contact,
  .contact-grid,
  .footer,
  footer {
    width: 100%;
    max-width: 100vw;
    box-sizing: border-box;
  }
}

/* Small phones */
@media (max-width: 430px) {
  .site-header,
  header,
  .header {
    padding: 10px 14px !important;
  }

  .brand img,
  .logo img,
  header img {
    max-width: 118px !important;
  }

  .hero {
    padding: 58px 18px 46px !important;
  }

  .hero h1,
  h1 {
    font-size: clamp(38px, 13vw, 52px) !important;
  }

  .hero p,
  .lead,
  .subtitle {
    font-size: 17px !important;
  }

  .btn,
  .hero-buttons a,
  .buttons a,
  button {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* Landing image crop fix */
@media (max-width: 768px) {
  .hero {
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-color: #050505 !important;
  }

  .hero::before {
    background: linear-gradient(
      180deg,
      rgba(0,0,0,0.25) 0%,
      rgba(0,0,0,0.45) 45%,
      rgba(0,0,0,0.88) 100%
    ) !important;
  }
}

@media (max-width: 430px) {
  .hero {
    background-size: auto 100% !important;
    background-position: center center !important;
  }
}


@media (max-width: 430px) {
  .brand img,
  .logo img,
  header img {
    max-width: 180px !important;
    height: auto !important;
  }
}


/* Mobile process/layout fix:
   Keeps stage text visually connected with its image/card.
   Desktop remains unchanged. */
@media (max-width: 768px) {
  /* Do not turn visual project/process cards into detached blocks */
  .featured-grid,
  .project-clean-grid,
  .process-gallery {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  .feature-card,
  .feature-card.large,
  .project-card,
  .process-card,
  .gallery-card {
    position: relative !important;
    overflow: hidden !important;
    border: 1px solid rgba(214, 166, 74, 0.45);
    background: #070707;
  }

  .feature-card img,
  .project-card img,
  .process-card img,
  .gallery-card img,
  .process-gallery img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    display: block !important;
    object-fit: cover !important;
    transform: none;
  }

  /* If the site uses overlay text on desktop, keep it attached to the image */
  .feature-card .overlay,
  .project-card .overlay,
  .process-card .overlay,
  .gallery-card .overlay,
  .feature-card .card-content,
  .project-card .card-content,
  .process-card .card-content,
  .gallery-card .card-content,
  .feature-card .caption,
  .project-card .caption,
  .process-card .caption,
  .gallery-card .caption {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    padding: 22px 20px !important;
    background: linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,0.86)) !important;
    z-index: 2 !important;
  }

  /* Keep desktop hover/zoom idea, but remove active zoom on mobile/touch */
  .feature-card:hover img,
  .project-card:hover img,
  .process-card:hover img,
  .gallery-card:hover img,
  .process-gallery img:hover {
    transform: none !important;
  }

  /* Compact the separate 01/02/03 cards so they do not dominate mobile */
  .process-step,
  .step-card,
  .timeline-step {
    padding: 34px 26px !important;
    min-height: auto !important;
  }

  .process-step .number,
  .step-card .number,
  .timeline-step .number,
  .process-step span,
  .step-card span,
  .timeline-step span {
    line-height: 1 !important;
  }
}

/* Desktop interaction stays active */
@media (min-width: 769px) {
  .feature-card img,
  .project-card img,
  .process-card img,
  .gallery-card img {
    transition: transform 0.7s ease, filter 0.7s ease;
  }

  .feature-card:hover img,
  .project-card:hover img,
  .process-card:hover img,
  .gallery-card:hover img {
    transform: scale(1.04);
  }
}


/* Mobile hero focus on dragon head */
@media (max-width:768px){
  .hero{
    background-position: 32% center !important;
    background-size: cover !important;
    background-attachment: scroll !important;
  }
}







/* Taller images keep better proportions */
.gallery-item:nth-child(3),
.gallery-item:nth-child(4),
.gallery-item:nth-child(6),
.gallery-item:nth-child(10) {
  aspect-ratio: 3 / 4;
}

@media (max-width: 1200px) {
  .full-gallery-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .full-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gallery-item:hover img {
    transform: scale(1.45);
  }
}

@media (max-width: 768px) {
  .full-gallery-grid {
    grid-template-columns: 1fr !important;
    gap: 18px;
  }

  .gallery-item,
  .gallery-item:nth-child(3),
  .gallery-item:nth-child(4),
  .gallery-item:nth-child(6),
  .gallery-item:nth-child(10) {
    aspect-ratio: 4 / 3;
    overflow: hidden;
  }

  .gallery-item:hover img {
    transform: none;
    box-shadow: none;
  }

  .gallery-item a {
    cursor: pointer;
  }
}



/* Gallery — aligned premium grid, clean crop, full hover zoom */
.gallery-section {
  background: #050505;
  overflow: visible;
}

.gallery-section .section-lead {
  max-width: 760px;
  color: rgba(255,255,255,0.72);
  margin-bottom: 34px;
}

.full-gallery-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
  overflow: visible;
  position: relative;
  z-index: 1;
  align-items: stretch;
}

.gallery-item {
  margin: 0;
  position: relative;
  z-index: 1;
  overflow: visible;
  border: 1px solid rgba(214, 166, 74, 0.45);
  background: #090909;
  aspect-ratio: 4 / 3;
}

.gallery-item a {
  display: block;
  width: 100%;
  height: 100%;
  cursor: zoom-in;
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  position: relative;
  z-index: 1;
  transition: transform .45s ease, filter .45s ease, box-shadow .45s ease;
  transform-origin: center center;
}

/* More precise crops for the 10 images */
.gallery-item:nth-child(1) img { object-position: center center; }
.gallery-item:nth-child(2) img { object-position: center center; }
.gallery-item:nth-child(3) img { object-position: center 42%; }
.gallery-item:nth-child(4) img { object-position: center 35%; }
.gallery-item:nth-child(5) img { object-position: center 38%; }
.gallery-item:nth-child(6) img { object-position: center 35%; }
.gallery-item:nth-child(7) img { object-position: center center; }
.gallery-item:nth-child(8) img { object-position: center center; }
.gallery-item:nth-child(9) img { object-position: center center; }
.gallery-item:nth-child(10) img { object-position: center 30%; }

.gallery-item:hover {
  z-index: 80;
}

.gallery-item:hover img {
  transform: scale(1.75);
  filter: contrast(1.05) brightness(1.04);
  box-shadow: 0 30px 85px rgba(0,0,0,.82);
  z-index: 100;
}

/* Make the two rows feel balanced on desktop */
@media (min-width: 769px) {
  .gallery-item:nth-child(1),
  .gallery-item:nth-child(2),
  .gallery-item:nth-child(7),
  .gallery-item:nth-child(8),
  .gallery-item:nth-child(9) {
    aspect-ratio: 16 / 10;
  }

  .gallery-item:nth-child(3),
  .gallery-item:nth-child(4),
  .gallery-item:nth-child(5),
  .gallery-item:nth-child(6),
  .gallery-item:nth-child(10) {
    aspect-ratio: 4 / 5;
  }
}

@media (max-width: 1200px) {
  .full-gallery-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .full-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gallery-item:hover img {
    transform: scale(1.35);
  }
}

@media (max-width: 768px) {
  .full-gallery-grid {
    grid-template-columns: 1fr !important;
    gap: 18px;
  }

  .gallery-item,
  .gallery-item:nth-child(n) {
    aspect-ratio: 4 / 3;
    overflow: hidden;
  }

  .gallery-item:hover img {
    transform: none;
    box-shadow: none;
  }

  .gallery-item a {
    cursor: pointer;
  }
}


.lang-en { display: none; }
html.en .lang-bg,
body.en .lang-bg,
html.english .lang-bg,
body.english .lang-bg { display: none; }
html.en .lang-en,
body.en .lang-en,
html.english .lang-en,
body.english .lang-en { display: inline; }
