:root {
  --gan-brown-deep: #70594d;
  --gan-brown: #8a7060;
  --gan-taupe: #8e806a;
  --gan-sand: #c3b091;
  --gan-cream: #ffe6bc;
  --gan-ink: #332822;
  --gan-selected-text: #f0e1d1;
}

/* Exact text colour sampled from the approved reference image. */
body.post-type-archive-gan_sergi .gan-exhibitions-kicker,
body.post-type-archive-gan_sergi .gan-exhibitions-intro h1,
body.post-type-archive-gan_sergi .gan-exhibitions-intro > p:last-child,
body.post-type-archive-gan_sergi .gan-exhibition-label,
body.post-type-archive-gan_sergi .gan-exhibition-copy h2,
body.post-type-archive-gan_sergi .gan-exhibition-meta,
body.post-type-archive-gan_sergi .gan-exhibition-description,
body.post-type-archive-gan_sergi .gan-exhibition-download,
body.post-type-archive-gan_sergi .gan-exhibition-unavailable,
body.post-type-archive-gan_eser .gan-collection-kicker,
body.post-type-archive-gan_eser .gan-collection-intro h1,
body.post-type-archive-gan_eser .gan-collection-intro > p:last-child,
html body .hks-portfolyo .hks-map-heading,
html body .hks-portfolyo .hks-map-label,
html body .hks-portfolyo .hks-map-title,
html body .hks-portfolyo .hks-map-address,
html body .hks-portfolyo .hks-map-link {
  color: var(--gan-selected-text) !important;
}

body.post-type-archive-gan_sergi .gan-exhibition-unavailable {
  opacity: 1;
}

body.post-type-archive-gan_sergi {
  margin: 0;
  overflow-x: clip;
  background: var(--gan-brown-deep);
}

body.post-type-archive-gan_sergi .site-content > .ast-container,
body.post-type-archive-gan_sergi .ast-container,
body.post-type-archive-gan_sergi #primary {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.post-type-archive-gan_sergi .ast-archive-description,
body.post-type-archive-gan_sergi .ast-primary-header-bar,
body.post-type-archive-gan_sergi .entry-header {
  display: none !important;
}

.gan-exhibitions-page {
  width: 100%;
  background: var(--gan-brown-deep);
  color: var(--gan-cream);
}

.gan-exhibitions-header {
  position: absolute;
  inset: 0 0 auto 0;
  z-index: 80;
  background: transparent !important;
}

.gan-logo-text {
  color: var(--gan-cream);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.1rem;
  letter-spacing: .14em;
}

.gan-exhibitions-intro {
  min-height: 34vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(120px, 12vw, 180px) clamp(24px, 5vw, 88px) clamp(48px, 5vw, 76px);
  background: var(--gan-brown-deep);
}

.gan-exhibitions-kicker,
.gan-exhibition-label {
  margin: 0 0 16px;
  color: var(--gan-cream);
  font-size: clamp(.68rem, .75vw, .82rem);
  font-weight: 600;
  letter-spacing: .24em;
  text-transform: uppercase;
}

.gan-exhibitions-intro h1 {
  margin: 0;
  color: var(--gan-cream);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(3.8rem, 7vw, 7.4rem);
  font-weight: 400;
  line-height: .82;
  letter-spacing: -.045em;
}

.gan-exhibitions-intro > p:last-child {
  width: min(560px, 100%);
  margin: 22px 0 0;
  color: var(--gan-cream);
  font-size: clamp(1rem, 1.2vw, 1.25rem);
  line-height: 1.75;
}

.gan-exhibition-row {
  position: relative;
  display: grid;
  grid-template-columns: minmax(310px, 32%) minmax(0, 68%);
  height: clamp(300px, 23.5vw, 360px);
  min-height: 300px;
  color: var(--gan-cream);
  background: var(--gan-brown);
  text-decoration: none !important;
  overflow: hidden;
}

.gan-exhibition-row:nth-child(even) { background: var(--gan-taupe); }
.gan-exhibition-row.is-reverse { grid-template-columns: minmax(0, 68%) minmax(310px, 32%); }
.gan-exhibition-row.is-reverse .gan-exhibition-copy { order: 2; }
.gan-exhibition-row.is-reverse .gan-exhibition-images { order: 1; }

.gan-exhibition-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(28px, 3.4vw, 54px);
}

.gan-exhibition-copy h2 {
  max-width: 12ch;
  margin: 0;
  color: var(--gan-cream);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2rem, 3.35vw, 4.5rem);
  font-weight: 400;
  line-height: .94;
  letter-spacing: -.035em;
}

.gan-exhibition-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 17px 0 0;
  color: var(--gan-cream);
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .12em;
  line-height: 1.6;
  text-transform: uppercase;
}

.gan-exhibition-description {
  max-width: 40ch;
  display: -webkit-box;
  margin: 13px 0 0;
  overflow: hidden;
  color: var(--gan-cream);
  font-size: clamp(.78rem, .82vw, .92rem);
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.gan-exhibition-download,
.gan-exhibition-unavailable {
  width: max-content;
  margin-top: 18px;
  padding-bottom: 5px;
  border-bottom: 1px solid currentColor;
  color: var(--gan-cream);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.gan-exhibition-download span {
  display: inline-block;
  margin-left: 8px;
  transition: transform .35s ease;
}

.gan-exhibition-unavailable { opacity: .56; }

.gan-exhibition-images {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 0;
  min-height: 100%;
  background: transparent;
}

.gan-exhibition-images.count-1 { grid-template-columns: 1fr; }
.gan-exhibition-images.count-2 { grid-template-columns: 1.08fr .92fr; }
.gan-exhibition-images.count-3 { grid-template-columns: 1.1fr .9fr 1fr; }

.gan-exhibition-images figure {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 100%;
  margin: 0;
  overflow: hidden;
  background: transparent;
}

.gan-exhibition-images img {
  width: 100%;
  height: 100%;
  min-height: 100%;
  object-fit: contain;
  transition: transform 1.1s cubic-bezier(.2,.7,.2,1), filter .8s ease;
}

.gan-exhibition-images figure:nth-child(2) img { object-position: 56% center; }
.gan-exhibition-images figure:nth-child(3) img { object-position: 44% center; }

.gan-exhibition-row.has-pdf:hover .gan-exhibition-images img { transform: scale(1.025); }
.gan-exhibition-row.has-pdf:hover .gan-exhibition-download span { transform: translateY(4px); }

.gan-exhibition-placeholder {
  display: grid;
  place-items: center;
  min-height: 100%;
  background: linear-gradient(135deg, var(--gan-sand), var(--gan-taupe));
  color: rgba(255, 230, 188, .8);
  letter-spacing: .24em;
}

.gan-exhibitions-empty {
  min-height: 52vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(70px, 10vw, 150px) clamp(24px, 8vw, 150px);
  background: var(--gan-brown);
}

.gan-exhibitions-empty h2 {
  max-width: 760px;
  margin: 0;
  color: var(--gan-cream);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2.6rem, 5vw, 5.8rem);
  font-weight: 400;
  line-height: 1;
}

.gan-exhibitions-empty a {
  width: max-content;
  margin-top: 34px;
  color: var(--gan-cream);
  text-decoration: underline;
  text-underline-offset: 6px;
}

.gan-reveal {
  opacity: 0;
  transform: translate3d(-48px, 28px, 0);
  transition: opacity 1s ease, transform 1.15s cubic-bezier(.2,.7,.2,1);
}

.gan-reveal.is-reverse { transform: translate3d(48px, 28px, 0); }
.gan-reveal.is-visible { opacity: 1; transform: translate3d(0, 0, 0); }

/* Keep Astra's transparent archive header legible on the brown intro. */
body.post-type-archive-gan_sergi #masthead .site-logo-img img,
body.post-type-archive-gan_sergi #masthead img.custom-logo {
  opacity: 1 !important;
  filter: brightness(0) saturate(100%) invert(93%) sepia(25%) saturate(633%) hue-rotate(333deg) brightness(109%) contrast(102%) drop-shadow(0 1px 8px rgba(51, 40, 34, .14)) !important;
}

body.post-type-archive-gan_sergi #masthead .menu-toggle,
body.post-type-archive-gan_sergi #masthead .main-header-menu-toggle {
  color: var(--gan-cream) !important;
  background: transparent !important;
  opacity: 1 !important;
}

body.post-type-archive-gan_sergi #masthead .menu-toggle:hover,
body.post-type-archive-gan_sergi #masthead .menu-toggle:focus-visible {
  color: #fff5e5 !important;
}

body.post-type-archive-gan_sergi #masthead .menu-toggle svg,
body.post-type-archive-gan_sergi #masthead .main-header-menu-toggle svg {
  fill: currentColor !important;
  filter: drop-shadow(0 1px 7px rgba(51, 40, 34, .16));
}

/* Custom Galeri AN header used by the archive template. */
body.post-type-archive-gan_sergi .gan-exhibitions-header .hks-site-logo img {
  opacity: 1 !important;
  filter: brightness(0) saturate(100%) invert(16%) sepia(17%) saturate(1009%) hue-rotate(343deg) brightness(94%) contrast(86%) !important;
}

body.post-type-archive-gan_sergi .gan-exhibitions-header .hks-menu-toggle span {
  background-color: var(--gan-palette-heading, #3E3026) !important;
  opacity: 1 !important;
  box-shadow: none;
}

body.post-type-archive-gan_sergi .gan-exhibitions-header .hks-menu-toggle:hover span,
body.post-type-archive-gan_sergi .gan-exhibitions-header .hks-menu-toggle:focus-visible span {
  background-color: var(--gan-palette-heading, #3E3026) !important;
}

/* One consistent gallery-style header strip across all custom pages. */
body .hks-site-header,
body .hks-about-header {
  position: sticky !important;
  inset: auto !important;
  top: 0 !important;
  z-index: 10000 !important;
  width: 100% !important;
  height: 94px !important;
  min-height: 94px !important;
  padding: 0 clamp(28px, 4.1vw, 78px) !important;
  background: rgba(233,221,210,.96) !important;
  box-shadow: 0 8px 24px rgba(62,48,38,.035) !important;
}

body.admin-bar .hks-site-header,
body.admin-bar .hks-about-header {
  top: 32px !important;
}

body .hks-site-header .hks-site-logo img,
body .hks-about-header .hks-site-logo img {
  width: auto !important;
  height: 66px !important;
  max-height: 66px !important;
  opacity: 1 !important;
  filter: brightness(0) saturate(100%) invert(16%) sepia(17%) saturate(1009%) hue-rotate(343deg) brightness(94%) contrast(86%) !important;
}

body .hks-site-header .hks-menu-toggle,
body .hks-about-header .hks-menu-toggle {
  color: #fffaf2 !important;
  background: transparent !important;
  opacity: 1 !important;
}

body .hks-site-header .hks-menu-toggle span,
body .hks-about-header .hks-menu-toggle span {
  background-color: #fffaf2 !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

body .hks-site-header .hks-menu-toggle:hover span,
body .hks-site-header .hks-menu-toggle:focus-visible span,
body .hks-about-header .hks-menu-toggle:hover span,
body .hks-about-header .hks-menu-toggle:focus-visible span {
  background-color: #ffffff !important;
}

/* Win against the page-specific inline styles used by Home and About. */
html body .hks-portfolyo > .hks-site-header,
html body.page-id-14 .hks-about-page > .hks-about-header,
html body.post-type-archive-gan_sergi .gan-exhibitions-page > .gan-exhibitions-header {
  position: sticky !important;
  inset: auto !important;
  top: 0 !important;
  width: 100% !important;
  height: 94px !important;
  min-height: 94px !important;
  background: rgba(233,221,210,.96) !important;
}

html body.admin-bar .hks-portfolyo > .hks-site-header,
html body.admin-bar.page-id-14 .hks-about-page > .hks-about-header,
html body.admin-bar.post-type-archive-gan_sergi .gan-exhibitions-page > .gan-exhibitions-header {
  top: 32px !important;
}

html body .hks-portfolyo .hks-site-header .hks-menu-toggle > span,
html body.page-id-14 .hks-about-page .hks-about-header .hks-menu-toggle > span,
html body.post-type-archive-gan_sergi .gan-exhibitions-page .gan-exhibitions-header .hks-menu-toggle > span {
  background-color: #fffaf2 !important;
}

body.post-type-archive-gan_sergi .gan-exhibitions-intro {
  padding-top: clamp(58px, 7vw, 96px);
}

/* About intro image uses the same ratio as the upload guide. */
html body .hks-about-page .hks-about-intro-media {
  height: auto !important;
  aspect-ratio: 16 / 11 !important;
  overflow: hidden !important;
}

html body .hks-about-page .hks-about-intro-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Custom Galeri AN footer replaces Astra's default credits. */
html body footer#colophon,
html body .site-footer:not(.gan-site-footer) {
  display: none !important;
}

.gan-site-footer {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: clamp(54px, 7vw, 100px) clamp(26px, 6vw, 110px) 24px;
  color: var(--gan-palette-heading, #3E3026);
  background: var(--gan-palette-sand, #D8CDBF);
  border-top: 1px solid rgba(184, 169, 155, .72);
}

.gan-site-footer a {
  color: #f0e1d1 !important;
  text-decoration: none;
  transition: color .3s ease, opacity .3s ease;
}

.gan-site-footer a:hover,
.gan-site-footer a:focus-visible {
  color: #fff7eb !important;
  opacity: .72;
}

.gan-site-footer-inner {
  display: grid;
  grid-template-columns: minmax(260px, 1.5fr) 1fr 1fr;
  gap: clamp(38px, 7vw, 120px);
  max-width: 1680px;
  margin: 0 auto;
}

.gan-site-footer-brand img {
  display: block;
  width: auto;
  height: 76px;
  max-width: 180px;
  object-fit: contain;
  object-position: left center;
  filter: brightness(0) invert(1);
}

.gan-site-footer-brand > a > span {
  font: 400 2rem/1 Georgia, 'Times New Roman', serif;
  letter-spacing: .08em;
}

.gan-site-footer-brand p {
  max-width: 390px;
  margin: 25px 0 0;
  color: #d9c4b2;
  font-size: .88rem;
  line-height: 1.75;
}

.gan-site-footer-nav,
.gan-site-footer-social {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  padding-top: 7px;
}

.gan-site-footer-nav a,
.gan-site-footer-social a {
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.gan-site-footer-social a[href^="mailto"] {
  text-transform: lowercase !important;
  letter-spacing: 0.04em;
}

.gan-site-footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  max-width: 1680px;
  margin: clamp(48px, 7vw, 88px) auto 0;
  padding-top: 22px;
  color: #cbb3a1;
  border-top: 1px solid rgba(240, 225, 209, .18);
  font-size: .67rem;
  letter-spacing: .09em;
  text-transform: uppercase;
}

@media (max-width: 760px) {
  .gan-site-footer-inner { grid-template-columns: 1fr 1fr; }
  .gan-site-footer-brand { grid-column: 1 / -1; }
  .gan-site-footer-bottom { flex-direction: column; gap: 8px; }
}

@media (max-width: 480px) {
  .gan-site-footer-inner { grid-template-columns: 1fr; }
  .gan-site-footer-brand { grid-column: auto; }
}

/* Home page refinements: airy section rhythm, three uncropped exhibition images. */
html body .hks-portfolyo {
  background: var(--gan-palette-bg, #E9DDD2);
}

html body .hks-portfolyo > section + section {
  margin-top: 94px !important;
}

html body .hks-portfolyo .hks-show-gallery {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-template-rows: auto !important;
  grid-auto-rows: auto !important;
  height: clamp(210px, 17vw, 320px) !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: var(--gan-palette-taupe, #BCA998);
}

/* Current exhibition: copy above, three larger uncropped images below. */
html body .hks-portfolyo .hks-current-show {
  display: grid !important;
  grid-template-columns: 32% 68% !important;
  grid-template-rows: clamp(210px, 17vw, 320px) !important;
  height: clamp(210px, 17vw, 320px) !important;
  min-height: 0 !important;
}

html body .hks-portfolyo .hks-current-show .hks-show-inner {
  width: 100% !important;
  min-width: 0 !important;
  min-height: clamp(210px, 20vw, 300px) !important;
  padding: clamp(2.5rem, 5vw, 5rem) clamp(1.5rem, 4vw, 5rem) !important;
}

html body .hks-portfolyo .hks-current-show::before {
  width: 100% !important;
  height: clamp(210px, 20vw, 300px) !important;
}

/* Collection archive and individual sculpture pages. */
body.post-type-archive-gan_eser,
body.single-gan_eser {
  margin: 0;
  overflow-x: clip;
  background: var(--gan-brown-deep);
}

body.post-type-archive-gan_eser .site-content > .ast-container,
body.post-type-archive-gan_eser .ast-container,
body.post-type-archive-gan_eser #primary,
body.single-gan_eser .site-content > .ast-container,
body.single-gan_eser .ast-container,
body.single-gan_eser #primary {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.post-type-archive-gan_eser .ast-archive-description,
body.post-type-archive-gan_eser .ast-primary-header-bar,
body.post-type-archive-gan_eser .entry-header,
body.single-gan_eser .ast-primary-header-bar,
body.single-gan_eser .entry-header {
  display: none !important;
}

.gan-collection-page,
.gan-work-page {
  width: 100%;
  background: var(--gan-brown-deep);
  color: var(--gan-cream);
}

body.post-type-archive-gan_eser .gan-collection-header,
body.single-gan_eser .gan-collection-header {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  pointer-events: none;
}

body.post-type-archive-gan_eser .gan-collection-header .hks-site-logo,
body.post-type-archive-gan_eser .gan-collection-header .hks-menu-toggle,
body.single-gan_eser .gan-collection-header .hks-site-logo,
body.single-gan_eser .gan-collection-header .hks-menu-toggle {
  pointer-events: auto;
}

body.post-type-archive-gan_eser .hks-menu-toggle,
body.single-gan_eser .hks-menu-toggle {
  position: relative;
  z-index: 10002;
  display: grid;
  gap: 6px;
  width: 46px;
  height: 46px;
  margin: 0;
  padding: 12px 8px;
  border: 0 !important;
  box-shadow: none !important;
  cursor: pointer;
}

body.post-type-archive-gan_eser .hks-menu-toggle span,
body.single-gan_eser .hks-menu-toggle span {
  display: block;
  width: 30px;
  height: 2px;
  margin-left: auto;
  transform-origin: center;
  transition: transform .35s ease, opacity .25s ease, width .35s ease;
}

body.post-type-archive-gan_eser .hks-menu-toggle span:nth-child(2),
body.single-gan_eser .hks-menu-toggle span:nth-child(2) { width: 23px; }

body.post-type-archive-gan_eser .hks-menu-toggle[aria-expanded="true"] span:first-child,
body.single-gan_eser .hks-menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(8px) rotate(45deg); }

body.post-type-archive-gan_eser .hks-menu-toggle[aria-expanded="true"] span:nth-child(2),
body.single-gan_eser .hks-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }

body.post-type-archive-gan_eser .hks-menu-toggle[aria-expanded="true"] span:last-child,
body.single-gan_eser .hks-menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-8px) rotate(-45deg); }

body.post-type-archive-gan_eser .hks-menu-backdrop,
body.single-gan_eser .hks-menu-backdrop {
  position: fixed;
  inset: 0;
  z-index: 9998;
  visibility: hidden;
  background: rgba(51,40,34,.48);
  opacity: 0;
  backdrop-filter: blur(3px);
  transition: opacity .4s ease, visibility .4s ease;
}

body.post-type-archive-gan_eser .hks-menu-panel,
body.single-gan_eser .hks-menu-panel {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: min(380px, 100%);
  height: 100dvh;
  padding: 7rem clamp(2rem, 6vw, 5rem) 3rem;
  color: var(--gan-cream);
  background: var(--gan-brown);
  transform: translateX(100%);
  transition: transform .5s cubic-bezier(.77,0,.18,1);
}

body.post-type-archive-gan_eser .hks-menu-panel nav,
body.single-gan_eser .hks-menu-panel nav { display: flex; flex-direction: column; }

body.post-type-archive-gan_eser .hks-menu-panel nav a,
body.single-gan_eser .hks-menu-panel nav a {
  margin-bottom: 18px;
  padding: .32em 0;
  color: var(--gan-cream);
  font: 400 24px/1.25 Georgia, serif;
  text-decoration: none;
  transition: transform .25s ease;
}

body.post-type-archive-gan_eser .hks-menu-panel nav a:hover,
body.single-gan_eser .hks-menu-panel nav a:hover { transform: translateX(8px); }

body.post-type-archive-gan_eser .hks-menu-instagram,
body.single-gan_eser .hks-menu-instagram {
  margin-top: 3rem;
  color: var(--gan-cream);
  font-size: .78rem;
  letter-spacing: .18em;
  text-decoration: none;
  text-transform: uppercase;
}

body.hks-menu-open.post-type-archive-gan_eser,
body.hks-menu-open.single-gan_eser { overflow: hidden; }

body.hks-menu-open.post-type-archive-gan_eser .hks-menu-backdrop,
body.hks-menu-open.single-gan_eser .hks-menu-backdrop { visibility: visible; opacity: 1; }

body.hks-menu-open.post-type-archive-gan_eser .hks-menu-panel,
body.hks-menu-open.single-gan_eser .hks-menu-panel { transform: translateX(0); }

/* Shared archive menu: keep the custom button clickable and make the drawer
   work identically on Collection, Exhibitions and single-work pages. */
body.post-type-archive-gan_sergi .gan-exhibitions-header,
body.post-type-archive-gan_eser .gan-collection-header,
body.single-gan_eser .gan-collection-header {
  pointer-events: none;
}

body.post-type-archive-gan_sergi .gan-exhibitions-header .hks-site-logo,
body.post-type-archive-gan_sergi .gan-exhibitions-header .hks-menu-toggle,
body.post-type-archive-gan_eser .gan-collection-header .hks-site-logo,
body.post-type-archive-gan_eser .gan-collection-header .hks-menu-toggle,
body.single-gan_eser .gan-collection-header .hks-site-logo,
body.single-gan_eser .gan-collection-header .hks-menu-toggle {
  pointer-events: auto !important;
}

body.post-type-archive-gan_sergi .hks-menu-toggle {
  position: relative;
  z-index: 10002;
  display: grid;
  gap: 6px;
  width: 46px;
  height: 46px;
  margin: 0;
  padding: 12px 8px;
  border: 0 !important;
  box-shadow: none !important;
  cursor: pointer;
}

body.post-type-archive-gan_sergi .hks-menu-toggle span {
  display: block;
  width: 30px;
  height: 2px;
  margin-left: auto;
  transform-origin: center;
  transition: transform .35s ease, opacity .25s ease, width .35s ease;
}

body.post-type-archive-gan_sergi .hks-menu-toggle span:nth-child(2) { width: 23px; }
body.post-type-archive-gan_sergi .hks-menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(8px) rotate(45deg); }
body.post-type-archive-gan_sergi .hks-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0 !important; }
body.post-type-archive-gan_sergi .hks-menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-8px) rotate(-45deg); }

body.post-type-archive-gan_sergi .hks-menu-backdrop {
  position: fixed;
  inset: 0;
  z-index: 9998;
  visibility: hidden;
  background: rgba(51,40,34,.48);
  opacity: 0;
  backdrop-filter: blur(3px);
  transition: opacity .4s ease, visibility .4s ease;
}

body.post-type-archive-gan_sergi .hks-menu-panel {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: min(380px, 100%);
  height: 100dvh;
  padding: 7rem clamp(2rem, 6vw, 5rem) 3rem;
  color: var(--gan-cream);
  background: var(--gan-brown);
  transform: translateX(100%);
  transition: transform .5s cubic-bezier(.77,0,.18,1);
}

body.post-type-archive-gan_sergi .hks-menu-panel nav { display: flex; flex-direction: column; }
body.post-type-archive-gan_sergi .hks-menu-panel nav a {
  margin-bottom: 18px;
  padding: .32em 0;
  color: var(--gan-cream);
  font: 400 24px/1.25 Georgia, serif;
  text-decoration: none;
}
body.post-type-archive-gan_sergi .hks-menu-instagram {
  margin-top: 3rem;
  color: var(--gan-cream);
  font-size: .78rem;
  letter-spacing: .18em;
  text-decoration: none;
  text-transform: uppercase;
}

body.hks-menu-open.post-type-archive-gan_sergi { overflow: hidden; }
body.hks-menu-open.post-type-archive-gan_sergi .hks-menu-backdrop { visibility: visible; opacity: 1; }
body.hks-menu-open.post-type-archive-gan_sergi .hks-menu-panel { transform: translateX(0); }

.gan-collection-intro {
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(58px, 5vw, 88px) clamp(24px, 6vw, 104px) clamp(26px, 2.5vw, 40px);
}

.gan-collection-kicker {
  margin: 0 0 16px;
  color: currentColor;
  font-size: clamp(.66rem, .72vw, .8rem);
  font-weight: 600;
  letter-spacing: .24em;
  text-transform: uppercase;
}

.gan-collection-intro h1 {
  margin: 0;
  color: var(--gan-cream);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(4rem, 8vw, 8rem);
  font-weight: 400;
  line-height: .86;
  letter-spacing: -.05em;
}

.gan-collection-intro > p:last-child {
  max-width: 560px;
  margin: 24px 0 0;
  color: rgba(255, 230, 188, .82);
  font-size: clamp(1rem, 1.2vw, 1.22rem);
  line-height: 1.75;
}

.gan-collection-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(14px, 1.7vw, 30px);
  padding: 0 clamp(24px, 5vw, 88px) clamp(42px, 5vw, 80px);
}

.gan-collection-card {
  display: block;
  width: 100%;
  min-width: 0;
  color: var(--gan-cream);
  text-decoration: none !important;
}

.gan-collection-card:nth-child(even) { margin: 0; }

.gan-collection-card figure {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  margin: 0;
  overflow: hidden;
  background: var(--gan-brown);
}

.gan-collection-card:nth-child(4n+2) figure,
.gan-collection-card:nth-child(4n+3) figure { background: var(--gan-taupe); }

.gan-collection-card img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  transition: transform 1s cubic-bezier(.2,.7,.2,1);
}

.gan-collection-card:hover img { transform: scale(1.018); }

.gan-collection-card-copy {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  min-width: 0;
  padding: clamp(18px, 2.2vw, 34px);
  color: #fff7eb;
  background: linear-gradient(to top, rgba(51,40,34,.88), rgba(51,40,34,0) 65%);
  opacity: 0;
  transition: opacity .45s ease;
}

.gan-collection-card:hover .gan-collection-card-copy,
.gan-collection-card:focus-visible .gan-collection-card-copy { opacity: 1; }

.gan-collection-number {
  margin: 0;
  color: rgba(255,230,188,.62);
  font-size: .7rem;
  letter-spacing: .16em;
}

.gan-collection-card-copy h2 {
  margin: 0;
  color: #fff7eb;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(1.65rem, 2.5vw, 3.2rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.035em;
}

.gan-collection-card-copy > span {
  margin-top: 14px;
  padding-bottom: 5px;
  border-bottom: 1px solid currentColor;
  color: rgba(255,230,188,.84);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.gan-collection-card-copy > span span {
  display: inline-block;
  margin-left: 7px;
  transition: transform .35s ease;
}

.gan-collection-card:hover .gan-collection-card-copy > span span { transform: translateX(5px); }

.gan-collection-pagination {
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 0 clamp(24px, 5vw, 88px) clamp(70px, 8vw, 120px);
}

.gan-collection-pagination .page-numbers {
  min-width: 40px;
  padding: 9px 12px;
  border: 1px solid rgba(255,230,188,.34);
  color: var(--gan-cream);
  text-align: center;
  text-decoration: none;
}

.gan-collection-pagination .current { color: var(--gan-brown-deep); background: var(--gan-cream); }

.gan-collection-placeholder {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: rgba(255,230,188,.68);
  background: linear-gradient(135deg, var(--gan-brown), var(--gan-taupe));
  font-size: .78rem;
  letter-spacing: .24em;
}

.gan-collection-empty {
  grid-column: 1 / -1;
  min-height: 44vh;
  padding: clamp(60px, 8vw, 120px);
  background: var(--gan-brown);
}

.gan-collection-empty h2 {
  max-width: 760px;
  margin: 0;
  color: var(--gan-cream);
  font: 400 clamp(2.5rem, 5vw, 5.5rem)/1 Georgia, serif;
}

.gan-collection-empty a { display: inline-block; margin-top: 30px; color: var(--gan-cream); }

.gan-work { width: 100%; }

.gan-work-hero {
  display: grid;
  grid-template-columns: minmax(0, 58%) minmax(360px, 42%);
  min-height: calc(100vh - 94px);
}

.gan-work-cover {
  display: grid;
  place-items: center;
  min-width: 0;
  min-height: 620px;
  margin: 0;
  overflow: hidden;
  background: var(--gan-brown);
}

.gan-work-cover img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.gan-work-story {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(48px, 6vw, 100px);
  color: var(--gan-brown-deep);
  background: #f0e1d1;
}

.gan-work-story h1 {
  margin: 0;
  color: var(--gan-brown-deep);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(3.4rem, 6vw, 7rem);
  font-weight: 400;
  line-height: .9;
  letter-spacing: -.05em;
}

.gan-work-story-text {
  max-width: 48ch;
  margin-top: clamp(24px, 3vw, 42px);
  color: rgba(51,40,34,.88);
  font-size: clamp(.98rem, 1.05vw, 1.14rem);
  line-height: 1.8;
}

.gan-work-story-text > *:first-child { margin-top: 0; }
.gan-work-story-text > *:last-child { margin-bottom: 0; }

.gan-work-gallery {
  padding: clamp(90px, 10vw, 160px) clamp(24px, 6vw, 104px);
  background: var(--gan-brown-deep);
}

.gan-work-gallery-heading { margin-bottom: clamp(42px, 6vw, 86px); }

.gan-work-gallery-heading h2 {
  margin: 0;
  color: var(--gan-cream);
  font: 400 clamp(3rem, 6vw, 6.5rem)/.92 Georgia, serif;
  letter-spacing: -.045em;
}

.gan-work-gallery-columns {
  columns: 2;
  column-gap: clamp(20px, 3.5vw, 58px);
}

.gan-work-gallery-columns figure {
  break-inside: avoid;
  margin: 0 0 clamp(20px, 3.5vw, 58px);
  overflow: hidden;
  background: var(--gan-brown);
}

.gan-work-gallery-columns img {
  display: block;
  width: 100%;
  height: auto;
}

.gan-work-navigation {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 32px clamp(24px, 6vw, 104px) 46px;
  border-top: 1px solid rgba(255,230,188,.2);
  background: var(--gan-brown-deep);
}

.gan-work-navigation div { display: flex; gap: 28px; }
.gan-work-navigation a { color: var(--gan-cream); text-decoration: none; border-bottom: 1px solid currentColor; }

@media (max-width: 900px) {
  .gan-collection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gan-collection-card { width: 100%; }
  .gan-collection-card figure { height: auto; aspect-ratio: 1 / 1; }
  .gan-work-hero { grid-template-columns: 1fr; min-height: 0; }
  .gan-work-cover { min-height: 0; aspect-ratio: 4 / 3; }
  .gan-work-story { min-height: 520px; }
}

@media (max-width: 600px) {
  .gan-collection-intro { min-height: 0; padding-top: 84px; }
  .gan-collection-grid { grid-template-columns: 1fr; }
  .gan-collection-card figure { aspect-ratio: 1 / 1; }
  .gan-collection-card-copy { opacity: 1; }
  .gan-work-gallery-columns { columns: 1; }
  .gan-work-navigation { align-items: flex-start; flex-direction: column; }
}

html body .hks-portfolyo .hks-show-gallery-item:nth-child(n+4) {
  display: none !important;
}

html body .hks-portfolyo .hks-show-gallery-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  background: var(--gan-palette-taupe, #BCA998);
}

html body .hks-portfolyo .hks-show-gallery-item img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
  transform: none !important;
}

html body .hks-portfolyo .hks-story-copy h2 {
  font-size: clamp(2rem, 3vw, 3.5rem) !important;
  line-height: .96 !important;
}

html body .hks-portfolyo .hks-show-details {
  display: none !important;
}

@media (max-width: 900px) {
  .gan-exhibition-row,
  .gan-exhibition-row.is-reverse {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
  }

  .gan-exhibition-row .gan-exhibition-copy,
  .gan-exhibition-row.is-reverse .gan-exhibition-copy { order: 1; }

  .gan-exhibition-row .gan-exhibition-images,
  .gan-exhibition-row.is-reverse .gan-exhibition-images {
    order: 2;
    min-height: clamp(330px, 70vw, 620px);
  }

  .gan-exhibition-copy { min-height: 320px; }
}

@media (max-width: 620px) {
  body .hks-site-header,
  body .hks-about-header {
    height: 76px !important;
    min-height: 76px !important;
    padding-inline: 22px !important;
  }

  body.admin-bar .hks-site-header,
  body.admin-bar .hks-about-header { top: 46px !important; }

  html body .hks-portfolyo > .hks-site-header,
  html body.page-id-14 .hks-about-page > .hks-about-header,
  html body.post-type-archive-gan_sergi .gan-exhibitions-page > .gan-exhibitions-header {
    height: 76px !important;
    min-height: 76px !important;
  }

  body .hks-site-header .hks-site-logo img,
  body .hks-about-header .hks-site-logo img {
    height: 56px !important;
    max-height: 56px !important;
  }

  html body.admin-bar .hks-portfolyo > .hks-site-header,
  html body.admin-bar.page-id-14 .hks-about-page > .hks-about-header,
  html body.admin-bar.post-type-archive-gan_sergi .gan-exhibitions-page > .gan-exhibitions-header {
    top: 46px !important;
  }

  .gan-exhibitions-intro { min-height: 32vh; padding: 54px 22px 44px; }
  .gan-exhibitions-intro h1 { font-size: clamp(3.5rem, 18vw, 5.4rem); }
  .gan-exhibition-copy { min-height: 300px; padding: 42px 24px; }
  .gan-exhibition-copy h2 { font-size: clamp(2.6rem, 12vw, 4rem); }
  .gan-exhibition-description { -webkit-line-clamp: 3; }

  html body .hks-portfolyo > section + section {
    margin-top: 76px !important;
  }

  html body .hks-portfolyo .hks-show-gallery {
    grid-template-columns: 1fr !important;
    grid-template-rows: repeat(3, auto) !important;
    height: auto !important;
  }

  html body .hks-portfolyo .hks-show-gallery-item {
    min-height: 0 !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
  }

  html body .hks-portfolyo .hks-story-copy h2 {
    font-size: clamp(2rem, 9vw, 2.8rem) !important;
  }

  .gan-exhibition-images,
  .gan-exhibition-images.count-2,
  .gan-exhibition-images.count-3 {
    grid-template-columns: 1.1fr .9fr;
    grid-template-rows: 1.08fr .92fr;
  }

  .gan-exhibition-images.count-1 { grid-template-columns: 1fr; grid-template-rows: 1fr; }
  .gan-exhibition-images.count-3 figure:first-child { grid-row: 1 / span 2; }
  .gan-exhibition-images.count-4 figure:first-child { grid-row: 1 / span 2; }
}

@media (prefers-reduced-motion: reduce) {
  .gan-reveal { opacity: 1; transform: none; transition: none; }
  .gan-exhibition-images img,
  .gan-exhibition-download span { transition: none; }
}

/* ==================================================
   SHARED MENU CONTROLLER — ALL CUSTOM PAGES
================================================== */
html body .hks-menu-toggle {
  position: relative !important;
  z-index: 10003 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  touch-action: manipulation;
}

html body .hks-menu-backdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10000 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  background: rgba(51, 40, 34, .48) !important;
  opacity: 0 !important;
  backdrop-filter: blur(3px);
  transition: opacity .4s ease, visibility .4s ease !important;
}

html body .hks-menu-panel {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  z-index: 10001 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  width: min(380px, 100%) !important;
  height: 100dvh !important;
  padding: 7rem clamp(2rem, 6vw, 5rem) 3rem !important;
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-card) !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(100%, 0, 0) !important;
  transition: transform .5s cubic-bezier(.77,0,.18,1), visibility .5s ease !important;
}

html body .hks-menu-panel nav {
  display: flex !important;
  flex-direction: column !important;
}

html body .hks-menu-panel nav a,
html body .hks-menu-panel .hks-menu-instagram {
  color: var(--gan-palette-heading) !important;
}

/* Use one typography system in the drawer on every page. */
html body .hks-menu-panel nav a {
  margin: 0 0 18px !important;
  padding: .32em 0 !important;
  color: var(--gan-palette-heading) !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  text-transform: none !important;
  white-space: nowrap;
}

html body .hks-menu-panel .hks-menu-instagram {
  margin-top: 3rem !important;
  color: var(--gan-palette-text) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

html body.hks-menu-open {
  overflow: hidden !important;
}

html body.hks-menu-open .hks-menu-backdrop {
  visibility: visible !important;
  pointer-events: auto !important;
  opacity: 1 !important;
}

html body.hks-menu-open .hks-menu-panel {
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0, 0, 0) !important;
}

html body .hks-menu-toggle[aria-expanded="true"] span:first-child {
  transform: translateY(8px) rotate(45deg) !important;
}

html body .hks-menu-toggle[aria-expanded="true"] span:nth-child(2) {
  opacity: 0 !important;
}

html body .hks-menu-toggle[aria-expanded="true"] span:last-child {
  transform: translateY(-8px) rotate(-45deg) !important;
}

/* Homepage: the header already reserves its own height; no extra hero gap. */
html body.home #primary {
  margin-top: 0 !important;
}

html body.home .site-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html body.home .hks-portfolyo > .hks-hero-section {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* The custom footer must remain visible even when Astra's footer is disabled. */
html body .gan-site-footer {
  display: block !important;
  clear: both !important;
  visibility: visible !important;
  opacity: 1 !important;
}

@media (max-width: 620px) {
  html body .hks-menu-panel nav a {
    margin-bottom: 16px !important;
    font-size: 22px !important;
  }
}

/* ==================================================
   EXHIBITIONS — SAME 32/68 RHYTHM AS THE HOME PAGE
================================================== */
html body.post-type-archive-gan_sergi .gan-exhibition-row,
html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse {
  display: grid !important;
  grid-template-columns: 32% 68% !important;
  grid-template-rows: clamp(210px, 17vw, 320px) !important;
  width: 100% !important;
  height: clamp(210px, 17vw, 320px) !important;
  min-height: 0 !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-copy,
html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse .gan-exhibition-copy {
  grid-column: 1 !important;
  grid-row: 1 !important;
  order: 1 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: clamp(1.5rem, 3vw, 3.5rem) !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-images,
html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse .gan-exhibition-images,
html body.post-type-archive-gan_sergi .gan-exhibition-images.count-1,
html body.post-type-archive-gan_sergi .gan-exhibition-images.count-2,
html body.post-type-archive-gan_sergi .gan-exhibition-images.count-3 {
  grid-column: 2 !important;
  grid-row: 1 !important;
  order: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-template-rows: 1fr !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  gap: 0 !important;
  overflow: hidden !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-images figure {
  grid-row: 1 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-images img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

@media (max-width: 767px) {
  html body.post-type-archive-gan_sergi .gan-exhibition-row,
  html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse {
    grid-template-columns: 100% !important;
    grid-template-rows: auto auto !important;
    height: auto !important;
  }

  html body.post-type-archive-gan_sergi .gan-exhibition-copy,
  html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse .gan-exhibition-copy {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-height: 260px !important;
  }

  html body.post-type-archive-gan_sergi .gan-exhibition-images,
  html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse .gan-exhibition-images,
  html body.post-type-archive-gan_sergi .gan-exhibition-images.count-1,
  html body.post-type-archive-gan_sergi .gan-exhibition-images.count-2,
  html body.post-type-archive-gan_sergi .gan-exhibition-images.count-3 {
    grid-column: 1 !important;
    grid-row: 2 !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: repeat(3, auto) !important;
    height: auto !important;
  }

  html body.post-type-archive-gan_sergi .gan-exhibition-images figure {
    grid-row: auto !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
  }
}

/* ==================================================
   GALERI AN — SITE-WIDE LIMEWASH PALETTE (1.7.5)
   Colour and surface layer only: no layout dimensions are changed.
================================================== */
:root {
  --gan-palette-bg: #E9DDD2;
  --gan-palette-card: #F4EDE4;
  --gan-palette-sand: #D8CDBF;
  --gan-palette-taupe: #BCA998;
  --gan-palette-heading: #3E3026;
  --gan-palette-text: #62574D;
  --gan-palette-border: #B8A99B;
  --gan-palette-footer: #D8CDBF;
  --gan-limewash:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,.20) 0, transparent 35%),
    radial-gradient(circle at 80% 70%, rgba(120,100,85,.07) 0, transparent 40%),
    url('limewash-texture.svg');

  /* Keep legacy components in the same new colour family. */
  --gan-brown-deep: #3E3026;
  --gan-brown: #D8CDBF;
  --gan-taupe: #BCA998;
  --gan-sand: #D8CDBF;
  --gan-cream: #F4EDE4;
  --gan-ink: #3E3026;
  --gan-selected-text: #F4EDE4;
}

html body,
html body .site,
html body .site-content,
html body .hks-portfolyo,
html body .hks-about-page,
html body .gan-exhibitions-page,
html body .gan-collection-page,
html body .gan-work-page,
html body .gan-contact-page {
  color: var(--gan-palette-text) !important;
  background-color: var(--gan-palette-bg) !important;
  background-image: var(--gan-limewash) !important;
  background-repeat: no-repeat, no-repeat, repeat !important;
  background-size: 100% 100%, 100% 100%, 420px 420px !important;
  background-blend-mode: screen, multiply, soft-light !important;
}

/* Header and drawer */
html body .hks-portfolyo > .hks-site-header,
html body .hks-about-page > .hks-about-header,
html body .gan-exhibitions-page > .gan-exhibitions-header,
html body .gan-collection-page > .gan-collection-header,
html body .gan-work-page > .hks-site-header,
html body .gan-contact-page > .gan-contact-header {
  color: var(--gan-palette-heading) !important;
  background: rgba(233,221,210,.96) !important;
  border-bottom: 1px solid rgba(184,169,155,.72) !important;
  box-shadow: 0 8px 24px rgba(62,48,38,.035) !important;
  backdrop-filter: blur(10px) !important;
}

html body .hks-site-header .hks-site-logo img,
html body .hks-about-header .hks-site-logo img,
html body .gan-exhibitions-header .hks-site-logo img,
html body .gan-collection-header .hks-site-logo img,
html body .gan-contact-header .hks-site-logo img {
  filter: brightness(0) saturate(100%) invert(16%) sepia(17%) saturate(1009%) hue-rotate(343deg) brightness(94%) contrast(86%) !important;
}

html body .hks-site-header .hks-menu-toggle > span,
html body .hks-about-header .hks-menu-toggle > span,
html body .gan-exhibitions-header .hks-menu-toggle > span,
html body .gan-collection-header .hks-menu-toggle > span,
html body .gan-contact-header .hks-menu-toggle > span {
  background-color: var(--gan-palette-heading) !important;
}

html body .hks-menu-panel {
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-card) !important;
}

html body .hks-menu-panel a,
html body .hks-menu-panel nav a,
html body .hks-menu-panel .hks-menu-instagram,
html body .hks-menu-instagram {
  color: var(--gan-palette-heading) !important;
}

html body .hks-menu-panel .hks-menu-instagram {
  color: var(--gan-palette-text) !important;
}

html body .hks-menu-backdrop {
  background: rgba(62,48,38,.38) !important;
}

/* Home */
html body .hks-portfolyo .hks-current-show {
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-taupe) !important;
}

html body .hks-portfolyo .hks-current-show::before,
html body .hks-portfolyo .hks-show-inner,
html body .hks-portfolyo .hks-story-copy {
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-card) !important;
}

html body .hks-portfolyo .hks-current-show :is(p,h2,a),
html body .hks-portfolyo .hks-story-copy :is(p,h2,a),
html body .hks-portfolyo :is(.hks-map-heading,.hks-map-label,.hks-map-title,.hks-map-address,.hks-map-link) {
  color: var(--gan-palette-heading) !important;
}

html body .hks-portfolyo .hks-show-gallery,
html body .hks-portfolyo .hks-show-gallery-item,
html body .hks-portfolyo .hks-story-media,
html body .hks-portfolyo .hks-lead-image {
  background-color: var(--gan-palette-taupe) !important;
}

html body .hks-portfolyo > section:not(.hks-hero-section):not(.hks-current-show),
html body .hks-about-page > section {
  border-color: rgba(184,169,155,.62) !important;
}

/* Exhibitions */
html body.post-type-archive-gan_sergi,
html body.post-type-archive-gan_sergi .gan-exhibitions-page,
html body.post-type-archive-gan_sergi .gan-exhibitions-intro {
  color: var(--gan-palette-text) !important;
  background-color: var(--gan-palette-bg) !important;
  background-image: var(--gan-limewash) !important;
}

html body.post-type-archive-gan_sergi :is(.gan-exhibitions-kicker,.gan-exhibitions-intro h1,.gan-exhibitions-intro > p:last-child) {
  color: var(--gan-palette-heading) !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-row,
html body.post-type-archive-gan_sergi .gan-exhibition-row:nth-child(even) {
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-taupe) !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-copy {
  background: rgba(244,237,228,.96) !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-copy :is(.gan-exhibition-label,h2,.gan-exhibition-meta,.gan-exhibition-description,.gan-exhibition-download,.gan-exhibition-unavailable) {
  color: var(--gan-palette-heading) !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-images,
html body.post-type-archive-gan_sergi .gan-exhibition-images figure {
  background: var(--gan-palette-taupe) !important;
}

/* Collection */
html body.post-type-archive-gan_eser .gan-collection-page,
html body.post-type-archive-gan_eser .gan-collection-intro {
  color: var(--gan-palette-text) !important;
  background-color: transparent !important;
}

html body.post-type-archive-gan_eser :is(.gan-collection-kicker,.gan-collection-intro h1,.gan-collection-intro > p:last-child) {
  color: var(--gan-palette-heading) !important;
}

html body .gan-collection-card figure,
html body .gan-collection-card:nth-child(4n+2) figure,
html body .gan-collection-card:nth-child(4n+3) figure {
  background: var(--gan-palette-sand) !important;
}

html body .gan-collection-pagination .page-numbers {
  color: var(--gan-palette-heading) !important;
  border-color: var(--gan-palette-border) !important;
}

html body .gan-collection-pagination .current {
  color: var(--gan-palette-card) !important;
  background: var(--gan-palette-heading) !important;
}

/* Work detail */
html body .gan-work-cover,
html body .gan-work-gallery-columns figure {
  background: var(--gan-palette-sand) !important;
}

html body .gan-work-story {
  color: var(--gan-palette-text) !important;
  background: var(--gan-palette-card) !important;
}

html body .gan-work-story :is(h1,h2),
html body .gan-work-story-text {
  color: var(--gan-palette-heading) !important;
}

html body .gan-work-gallery,
html body .gan-work-navigation {
  color: var(--gan-palette-heading) !important;
  background-color: var(--gan-palette-bg) !important;
  background-image: var(--gan-limewash) !important;
}

html body .gan-work-gallery-heading h2,
html body .gan-work-navigation a {
  color: var(--gan-palette-heading) !important;
}

html body .gan-work-navigation {
  border-color: var(--gan-palette-border) !important;
}

/* Contact */
html body .gan-contact-reference-top {
  background-color: var(--gan-palette-bg) !important;
  background-image: var(--gan-limewash) !important;
}

html body .gan-contact-form-card {
  color: var(--gan-palette-text) !important;
  background: rgba(244,237,228,.96) !important;
  box-shadow: 0 24px 70px rgba(62,48,38,.08) !important;
}

html body .gan-contact-form-card :is(.gan-contact-kicker,h1,h2,label > span),
html body .gan-contact-form-card .gan-contact-form :is(input,textarea) {
  color: var(--gan-palette-heading) !important;
}

html body .gan-contact-form-card .gan-contact-form :is(input,textarea) {
  border-color: var(--gan-palette-border) !important;
}

html body .gan-contact-form-card .gan-contact-form button {
  color: var(--gan-palette-card) !important;
  background: var(--gan-palette-heading) !important;
}

html body .gan-contact-form-card .gan-contact-form button:hover {
  background: var(--gan-palette-text) !important;
}

html body .gan-contact-visit,
html body .gan-contact-visit-copy {
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-sand) !important;
}

html body .gan-contact-visit-copy :is(.gan-contact-kicker,h1,address,a) {
  color: var(--gan-palette-heading) !important;
}

/* Footer remains the visual anchor. */
html body .gan-site-footer {
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-sand) !important;
  border-color: rgba(184,169,155,.72) !important;
}

html body .gan-site-footer :is(a,p,span) {
  color: var(--gan-palette-heading) !important;
}

html body .gan-site-footer-brand img {
  filter: none !important;
}

html body .gan-site-footer-bottom {
  border-color: rgba(244,237,228,.18) !important;
}

::selection {
  color: var(--gan-palette-card);
  background: var(--gan-palette-heading);
}

/* Contact page 1.5.1 — reference layout: form/image above, map/visit below. */
.gan-contact-reference-top {
  display: grid;
  grid-template-columns: 50% 50%;
  align-items: center;
  gap: 0;
  min-height: 680px;
  padding: clamp(44px, 6vw, 96px) 0;
  background: #7a6255;
}

.gan-contact-form-card {
  position: relative;
  z-index: 2;
  width: min(580px, 90%);
  min-height: 575px;
  margin-left: clamp(28px, 10.8vw, 220px);
  padding: clamp(24px, 3vw, 42px) clamp(28px, 3.2vw, 52px) clamp(34px, 3.5vw, 56px);
  background: #f0e1d1;
  color: #70594d;
}

.gan-contact-card-heading { text-align: center; }
.gan-contact-card-heading .gan-contact-kicker { margin-bottom: 8px; color: #70594d !important; }
.gan-contact-card-heading > p:last-child {
  max-width: 390px;
  margin: 0 auto 28px;
  color: #987e6d;
  font-size: .9rem;
  line-height: 1.55;
}

.gan-contact-form-card .gan-contact-form { gap: 14px; }
.gan-contact-form-card .gan-contact-form label { gap: 7px; }
.gan-contact-form-card .gan-contact-form label > span {
  color: #70594d;
  font-size: .67rem;
  letter-spacing: .12em;
}

.gan-contact-form-card .gan-contact-form input,
.gan-contact-form-card .gan-contact-form textarea {
  padding: 12px 14px 10px;
  border: 0;
  border-bottom: 1px solid rgba(112,89,77,.58);
  color: #4f3d34;
  background: transparent;
  font-size: .9rem;
}

.gan-contact-form-card .gan-contact-form input::placeholder,
.gan-contact-form-card .gan-contact-form textarea::placeholder { color: #b69e8c; opacity: 1; }
.gan-contact-form-card .gan-contact-form textarea { min-height: 98px; }

.gan-contact-form-card .gan-contact-form button {
  margin-top: 8px;
  padding: 14px 24px;
  border: 0;
  color: #f0e1d1;
  background: #987e6d;
  font-size: .67rem;
  letter-spacing: .1em;
  transition: background .3s ease, transform .3s ease;
}

.gan-contact-form-card .gan-contact-form button:hover {
  background: #70594d;
  transform: translateY(-2px);
}

.gan-contact-reference-top .gan-contact-image {
  width: 100%;
  min-height: 0;
  aspect-ratio: 16 / 9;
  background: #70594d;
}

.gan-contact-reference-top .gan-contact-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.gan-contact-visit {
  display: grid;
  grid-template-columns: 72% 28%;
  min-height: 345px;
  background: #987e6d;
}

.gan-contact-map { min-width: 0; min-height: 345px; }
.gan-contact-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 345px;
  border: 0;
  filter: sepia(.08) saturate(.78) contrast(.94);
}

.gan-contact-visit-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(38px, 4vw, 74px) clamp(30px, 4vw, 70px);
  color: #f0e1d1;
  background: #987e6d;
}

.gan-contact-visit-copy .gan-contact-kicker { margin-bottom: 14px; }
.gan-contact-visit-copy h1 {
  max-width: 9ch;
  margin: 0;
  color: #f0e1d1 !important;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2.8rem, 4.3vw, 5rem);
  font-weight: 400;
  line-height: .92;
  letter-spacing: -.04em;
}

.gan-contact-visit-copy address {
  margin: 24px 0 0;
  color: #f0e1d1;
  font-size: .9rem;
  font-style: normal;
  line-height: 1.7;
}

.gan-contact-visit-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  margin-top: 22px;
}

.gan-contact-visit-links a {
  color: #f0e1d1 !important;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-transform: uppercase;
}

@media (max-width: 1000px) {
  .gan-contact-reference-top {
    grid-template-columns: 1fr;
    gap: 38px;
    padding: 48px clamp(24px, 7vw, 70px);
  }
  .gan-contact-form-card { width: min(680px, 100%); margin: 0 auto; }
  .gan-contact-reference-top .gan-contact-image { width: min(860px, 100%); margin: 0 auto; }
  .gan-contact-visit { grid-template-columns: 62% 38%; }
}

@media (max-width: 700px) {
  .gan-contact-reference-top { padding: 30px 18px 42px; }
  .gan-contact-form-card { min-height: 0; padding: 26px 22px 34px; }
  .gan-contact-reference-top .gan-contact-image { aspect-ratio: auto; }
  .gan-contact-reference-top .gan-contact-image img { height: auto; object-fit: contain; }
  .gan-contact-visit { grid-template-columns: 1fr; }
  .gan-contact-map,
  .gan-contact-map iframe { min-height: 310px; }
  .gan-contact-visit-copy { min-height: 340px; }
}

/* ==================================================
   CONTACT PAGE
================================================== */
body.gan-contact-view {
  overflow-x: clip;
}

body.gan-contact-view,
body:has(.gan-contact-page) {
  margin: 0;
  overflow-x: clip;
  background: var(--gan-brown-deep);
}

body.gan-contact-view .site-content > .ast-container,
body.gan-contact-view .ast-container,
body.gan-contact-view #primary,
body:has(.gan-contact-page) .site-content > .ast-container,
body:has(.gan-contact-page) .ast-container,
body:has(.gan-contact-page) #primary {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.gan-contact-view #masthead,
body.gan-contact-view .ast-primary-header-bar,
body.gan-contact-view .entry-header,
body:has(.gan-contact-page) #masthead,
body:has(.gan-contact-page) .entry-header { display: none !important; }

.gan-contact-page {
  width: 100%;
  background: var(--gan-brown-deep);
  color: var(--gan-selected-text);
}

.gan-contact-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  pointer-events: none;
}

.gan-contact-header .hks-site-logo,
.gan-contact-header .hks-menu-toggle { pointer-events: auto !important; }

.gan-contact-header .hks-menu-toggle {
  display: grid !important;
  gap: 6px;
  width: 46px;
  height: 46px;
  margin: 0;
  padding: 12px 8px;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.gan-contact-header .hks-menu-toggle span {
  display: block;
  width: 30px;
  height: 2px;
  margin-left: auto;
  transform-origin: center;
  transition: transform .35s ease, opacity .25s ease, width .35s ease;
}

.gan-contact-header .hks-menu-toggle span:nth-child(2) { width: 23px; }

.gan-contact-kicker {
  margin: 0 0 18px;
  color: var(--gan-selected-text) !important;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .24em;
  text-transform: uppercase;
}

.gan-contact-image {
  min-width: 0;
  display: grid;
  place-items: center;
  margin: 0;
  overflow: hidden;
  background: var(--gan-taupe);
}

.gan-contact-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.gan-contact-image > span {
  color: var(--gan-selected-text);
  letter-spacing: .24em;
}

.gan-contact-form { display: grid; gap: 28px; }
.gan-contact-form label { display: grid; gap: 9px; margin: 0; }
.gan-contact-form label > span {
  color: var(--gan-ink);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.gan-contact-form input,
.gan-contact-form textarea {
  width: 100%;
  margin: 0;
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid rgba(51,40,34,.42);
  border-radius: 0;
  outline: 0;
  color: var(--gan-ink);
  background: transparent;
  box-shadow: none;
  font: inherit;
}

.gan-contact-form textarea { resize: vertical; }
.gan-contact-form input:focus,
.gan-contact-form textarea:focus { border-color: var(--gan-ink); }

.gan-contact-form button {
  width: max-content;
  margin-top: 10px;
  padding: 14px 0 8px;
  border: 0;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  color: var(--gan-ink);
  background: transparent;
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
  cursor: pointer;
}

.gan-contact-honeypot { position: absolute !important; left: -9999px !important; }

.gan-contact-notice {
  margin-bottom: 28px;
  padding: 15px 18px;
  border: 1px solid rgba(51,40,34,.3);
  color: var(--gan-ink);
  font-size: .9rem;
}
.gan-contact-notice.is-success { background: rgba(255,230,188,.46); }
.gan-contact-notice.is-error { background: rgba(112,89,77,.12); }

/* Final no-crop rule: the exhibition row follows the images' intrinsic ratio
   instead of forcing every image into a fixed-height window. */
html body.post-type-archive-gan_sergi .gan-exhibition-row,
html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse {
  grid-template-rows: auto !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  align-items: stretch !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-copy,
html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse .gan-exhibition-copy {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-images,
html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse .gan-exhibition-images,
html body.post-type-archive-gan_sergi .gan-exhibition-images.count-1,
html body.post-type-archive-gan_sergi .gan-exhibition-images.count-2,
html body.post-type-archive-gan_sergi .gan-exhibition-images.count-3 {
  grid-template-rows: auto !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  align-items: start !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-images figure {
  grid-row: auto !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  align-self: start !important;
}

html body.post-type-archive-gan_sergi .gan-exhibition-images img {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center top !important;
}

@media (max-width: 767px) {
  html body.post-type-archive-gan_sergi .gan-exhibition-images,
  html body.post-type-archive-gan_sergi .gan-exhibition-row.is-reverse .gan-exhibition-images,
  html body.post-type-archive-gan_sergi .gan-exhibition-images.count-1,
  html body.post-type-archive-gan_sergi .gan-exhibition-images.count-2,
  html body.post-type-archive-gan_sergi .gan-exhibition-images.count-3 {
    grid-template-columns: 1fr !important;
  }

  html body.post-type-archive-gan_sergi .gan-exhibition-images figure {
    aspect-ratio: auto !important;
  }
}

/* Exhibition archive: 32/68 row, images full & uncropped (height follows content). */
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-row {
  grid-template-columns: 32% 68% !important;
  grid-template-rows: auto !important;
  height: auto !important;
  min-height: 0 !important;
  align-items: stretch !important;
  overflow: visible !important;
  background: var(--gan-palette-taupe) !important;
  margin-bottom: 94px !important;
}
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-copy {
  order: 0 !important;
  box-sizing: border-box !important;
  min-height: 0 !important;
  height: auto !important;
  align-self: stretch !important;
  padding: clamp(1.5rem, 3vw, 3.5rem) !important;
  background: rgba(244,237,228,.96) !important;
  justify-content: center !important;
}
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-copy h2 {
  font-family: 'Bitter', Georgia, serif !important;
  font-size: clamp(2rem, 3vw, 3.5rem) !important;
  line-height: .96 !important;
  max-width: 12ch !important;
}
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-meta,
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-description {
  display: none !important;
}
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images {
  order: 1 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-template-rows: auto !important;
  height: auto !important;
  min-height: 0 !important;
  gap: 10px !important;
  padding: 14px !important;
  box-sizing: border-box !important;
  background: var(--gan-palette-taupe) !important;
  overflow: visible !important;
  align-items: center !important;
}
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images figure {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  grid-row: auto !important;
  grid-column: auto !important;
  height: auto !important;
  min-height: 0 !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images figure img {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: clamp(160px, 28vw, 340px) !important;
  object-fit: contain !important;
  object-position: center center !important;
  aspect-ratio: auto !important;
  transform: none !important;
}
@media (max-width: 767px) {
  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-row {
    grid-template-columns: 100% !important;
    margin-bottom: 76px !important;
  }
  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
    height: auto !important;
    gap: 24px !important;
    padding-top: 24px !important;
  }
  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images figure {
    height: auto !important;
  }
}

/* 1.7.1 — contact links and Instagram icon. */
.gan-instagram-icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0 !important;
  color: inherit;
  line-height: 1;
  text-transform: none !important;
}

.gan-instagram-icon svg {
  display: block;
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
}

.gan-home-contact-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin-top: 20px;
}

.gan-home-contact-links > a:not(.gan-instagram-icon) {
  color: inherit;
  font-size: .78rem;
  letter-spacing: .04em;
  text-decoration: none;
  text-transform: lowercase;
}

.gan-home-contact-cta {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 16px;
  min-height: 100%;
}

.gan-home-contact-cta .gan-home-contact-kicker {
  margin: 0;
  font-size: .7rem;
  letter-spacing: .18em;
}

.gan-home-contact-cta h2,
.gan-home-contact-cta p {
  margin: 0;
}

.gan-home-contact-cta > a {
  display: inline-block;
  margin-top: 10px;
  padding-bottom: 5px;
  color: inherit;
  border-bottom: 1px solid currentColor;
  text-decoration: none;
}


/* Preserve the previously tuned sticky header: no overflow is set on html/body. */

.hks-portfolyo .hks-story-copy > p:first-child {
  display: none !important;
}

.gan-current-show-title-link {
  color: inherit !important;
  text-decoration: none !important;
}

@media (max-width: 767px) {
  /* Bağlı: keep the complete 1800×890 artwork visible on phones.
     The page's parallax/cover rules otherwise shift and crop the image. */
  html body .hks-portfolyo .hks-story-media {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1800 / 890 !important;
    overflow: hidden !important;
    background: var(--gan-palette-taupe) !important;
    transform: none !important;
  }

  html body .hks-portfolyo .hks-story-media img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    transition: none !important;
  }

  html body .hks-portfolyo .hks-current-show {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: 178px 116px !important;
    width: 100% !important;
    height: 294px !important;
    min-height: 294px !important;
    overflow: hidden !important;
  }

  html body .hks-portfolyo .hks-current-show::before {
    width: 100% !important;
    height: 178px !important;
    inset: 0 !important;
  }

  html body .hks-portfolyo .hks-current-show .hks-show-inner {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 178px !important;
    height: 178px !important;
    padding: 22px !important;
  }

  html body .hks-portfolyo .hks-current-show .hks-show-inner h2 {
    max-width: none !important;
    margin: 6px 0 14px !important;
    font-size: clamp(2rem, 9vw, 2.55rem) !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html body .hks-portfolyo .hks-current-show .hks-show-gallery {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    max-width: none !important;
    grid-template-rows: 116px !important;
    height: 116px !important;
    min-height: 0 !important;
    gap: 4px !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body .hks-portfolyo .hks-current-show .hks-show-gallery-item {
    width: 100% !important;
    height: 116px !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
  }

  html body .hks-portfolyo .hks-current-show .hks-show-gallery-item img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 116px !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  html body .hks-portfolyo .hks-current-show + section {
    margin-top: 34px !important;
  }

  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images,
  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images.count-1,
  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images.count-2,
  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images.count-3 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: 1fr !important;
    height: clamp(110px, 30vw, 150px) !important;
    min-height: 0 !important;
    gap: 4px !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images figure {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images figure img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
  }
}

/* Final palette guard: placed after every legacy responsive/layout rule. */
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-row {
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-taupe) !important;
}

html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-copy {
  color: var(--gan-palette-heading) !important;
  background: rgba(244,237,228,.96) !important;
}

html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-copy :is(.gan-exhibition-label,h2,.gan-exhibition-download,.gan-exhibition-unavailable) {
  color: var(--gan-palette-heading) !important;
}

html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images,
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images figure,
html body .hks-portfolyo .hks-story-media {
  background: var(--gan-palette-taupe) !important;
}

html body .gan-contact-form-card .gan-contact-kicker,
html body .gan-contact-visit-copy :is(.gan-contact-kicker,h1,address,a) {
  color: var(--gan-palette-heading) !important;
}

/* ==================================================
   FINAL SURFACE GUARD — kill legacy dark browns site-wide
   Beats WordPress Additional CSS (#70594d / #8a7060) on every page.
================================================== */
html body.home,
html body.home #page,
html body.home .site,
html body.home .site-content,
html body.home #content,
html body.home #primary,
html body.home #main,
html body.page-id-14,
html body.page-id-14 .site-content,
html body.page-id-14 #primary,
html body.page-id-14 #main,
html body.post-type-archive-gan_eser,
html body.post-type-archive-gan_sergi,
html body.single-gan_eser,
html body.page-template-default {
  background-color: var(--gan-palette-bg) !important;
}

html body .hks-portfolyo .hks-story-banner-section,
html body .hks-portfolyo .hks-story-banner-section::before,
html body .hks-portfolyo .hks-lead-section,
html body .hks-portfolyo .hks-lead-section::before,
html body .hks-portfolyo .hks-map-section,
html body .hks-portfolyo .hks-hero-section,
html body .hks-portfolyo .hks-current-show::before,
html body .hks-portfolyo > section.hks-full-bleed:not(.hks-current-show) {
  background: var(--gan-palette-bg) !important;
  background-color: var(--gan-palette-bg) !important;
}

html body .hks-portfolyo .hks-show-gallery,
html body .hks-portfolyo .hks-show-gallery-item,
html body .hks-portfolyo .hks-story-media,
html body .hks-portfolyo .hks-lead-image,
html body .hks-portfolyo .hks-current-show {
  background: var(--gan-palette-taupe) !important;
  background-color: var(--gan-palette-taupe) !important;
}

html body .hks-portfolyo .hks-story-copy,
html body .hks-portfolyo .hks-show-inner,
html body .hks-portfolyo .hks-lead-form-wrap {
  background: var(--gan-palette-card) !important;
  background-color: var(--gan-palette-card) !important;
  color: var(--gan-palette-heading) !important;
}

html body .hks-about-page,
html body .hks-about-page > section,
html body .hks-about-page .hks-about-hero,
html body .hks-about-page .hks-about-block,
html body .gan-collection-page,
html body .gan-work-page,
html body .gan-exhibitions-page,
html body .gan-contact-page,
html body .gan-contact-reference-top {
  background-color: var(--gan-palette-bg) !important;
}

html body .gan-contact-reference-top .gan-contact-image,
html body .gan-contact-visit {
  background: var(--gan-palette-sand) !important;
  background-color: var(--gan-palette-sand) !important;
}

/* Headers + menu icon + footer — light limewash surfaces, dark icon lines */
html body .hks-site-header,
html body .hks-about-header,
html body .gan-exhibitions-header,
html body .gan-collection-header,
html body .gan-contact-header,
html body .hks-portfolyo > .hks-site-header,
html body.page-id-14 .hks-about-page > .hks-about-header,
html body.post-type-archive-gan_sergi .gan-exhibitions-page > .gan-exhibitions-header {
  background: rgba(233, 221, 210, .96) !important;
  background-color: rgba(233, 221, 210, .96) !important;
  border-bottom: 1px solid rgba(184, 169, 155, .72) !important;
  box-shadow: 0 8px 24px rgba(62, 48, 38, .035) !important;
}

html body .hks-menu-toggle,
html body .hks-site-header .hks-menu-toggle,
html body .hks-about-header .hks-menu-toggle,
html body .gan-exhibitions-header .hks-menu-toggle,
html body .gan-collection-header .hks-menu-toggle,
html body .gan-contact-header .hks-menu-toggle {
  color: var(--gan-palette-heading) !important;
  background: transparent !important;
  opacity: 1 !important;
}

html body .hks-menu-toggle span,
html body .hks-menu-toggle > span,
html body .hks-site-header .hks-menu-toggle > span,
html body .hks-about-header .hks-menu-toggle > span,
html body .gan-exhibitions-header .hks-menu-toggle > span,
html body .gan-collection-header .hks-menu-toggle > span,
html body .gan-contact-header .hks-menu-toggle > span,
html body.post-type-archive-gan_sergi .gan-exhibitions-header .hks-menu-toggle span,
html body.page-id-14 .hks-about-page .hks-about-header .hks-menu-toggle > span,
html body .hks-portfolyo .hks-site-header .hks-menu-toggle > span {
  background: var(--gan-palette-heading) !important;
  background-color: var(--gan-palette-heading) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

html body .hks-site-header .hks-site-logo img,
html body .hks-about-header .hks-site-logo img,
html body .gan-exhibitions-header .hks-site-logo img,
html body .gan-collection-header .hks-site-logo img,
html body .gan-contact-header .hks-site-logo img {
  filter: brightness(0) saturate(100%) invert(16%) sepia(17%) saturate(1009%) hue-rotate(343deg) brightness(94%) contrast(86%) !important;
}

html body .gan-site-footer {
  color: var(--gan-palette-heading) !important;
  background: var(--gan-palette-sand) !important;
  background-color: var(--gan-palette-sand) !important;
  border-top: 1px solid rgba(184, 169, 155, .72) !important;
}

html body .gan-site-footer :is(a, p, span, small) {
  color: var(--gan-palette-heading) !important;
}

html body .gan-site-footer a:hover,
html body .gan-site-footer a:focus-visible {
  color: var(--gan-palette-text) !important;
  opacity: .85;
}

html body .gan-site-footer-brand img {
  filter: none !important;
}

html body .gan-site-footer-bottom {
  border-top-color: rgba(184, 169, 155, .55) !important;
}

/* 1.7.9 — Sergiler / güncel sergi: görselleri kırpmadan, orantılı sığdır */
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-row,
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-row.is-reverse {
  height: auto !important;
  min-height: 0 !important;
  grid-template-rows: auto !important;
  overflow: visible !important;
  align-items: stretch !important;
}

html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-copy {
  height: auto !important;
  min-height: 0 !important;
  align-self: stretch !important;
}

html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images,
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images.count-1,
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images.count-2,
html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images.count-3 {
  height: auto !important;
  min-height: 0 !important;
  grid-template-rows: auto !important;
  gap: 12px !important;
  padding: 16px !important;
  overflow: visible !important;
  align-items: center !important;
}

html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images figure {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  align-items: center !important;
  align-self: center !important;
  background: transparent !important;
}

html body.post-type-archive-gan_sergi #main.gan-exhibitions-page .gan-exhibition-images figure img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: clamp(160px, 28vw, 340px) !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
}

html body .hks-portfolyo .hks-current-show {
  height: auto !important;
  min-height: 0 !important;
  grid-template-rows: auto !important;
  overflow: visible !important;
}

html body .hks-portfolyo .hks-show-gallery {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 12px !important;
}

html body .hks-portfolyo .hks-show-gallery-item {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

html body .hks-portfolyo .hks-show-gallery-item img {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: clamp(160px, 28vw, 340px) !important;
  object-fit: contain !important;
}
