:root{--bg:#f6f2eb;--ink:#181818;--muted:#666;--line:#d8d1c7;--paper:#fff;--accent:#7a5b45;--dark:#171717}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;line-height:1.55}a{color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.7rem;z-index:20}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.1rem 4vw;background:rgba(246,242,235,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.brand{font-family:Georgia,serif;font-size:1.42rem;text-decoration:none}.site-nav{display:flex;gap:1.25rem;flex-wrap:wrap}.site-nav a{text-decoration:none;font-size:.92rem;color:#444}.site-nav a[aria-current=page]{color:#000;border-bottom:1px solid #000}.menu-button{display:none;border:1px solid var(--line);background:none;padding:.5rem .7rem}.hero{min-height:76vh;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.hero-art{background:#e9e5df url('assets/at-the-source.jpg') center/contain no-repeat;min-height:580px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:6vw;background:var(--paper)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--muted);font-weight:600}.hero h1,.page-hero h1{font:400 clamp(3.4rem,8vw,7.2rem)/.87 Georgia,serif;letter-spacing:-.045em;margin:.25rem 0 1.5rem}.hero h1 em{font-weight:400}.intro,.lede,.page-hero p{max-width:45rem;font-size:1.2rem;color:#4e4e4e}.button{display:inline-block;width:max-content;margin-top:1rem;padding:.85rem 1.15rem;border:1px solid #222;text-decoration:none;background:#222;color:#fff}.section{padding:5rem 6vw;border-top:1px solid var(--line)}.page-hero{padding:6rem 6vw 4rem;background:var(--paper)}.page-hero h1{font-size:clamp(3rem,7vw,6rem)}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:1.2rem}.work-card{grid-column:span 4;background:var(--paper);text-decoration:none;border:1px solid var(--line);transition:transform .15s ease}.work-card:hover{transform:translateY(-2px)}.work-card.large{grid-column:span 6}.work-card.wide{grid-column:span 8}.art-image{aspect-ratio:4/5;background:#eee;display:flex;align-items:center;justify-content:center;overflow:hidden}.art-image img{width:100%;height:100%;object-fit:contain;display:block}
.art{aspect-ratio:4/5;background:linear-gradient(135deg,#c8b8a9,#756b63)}.art.holly{background:url('assets/hollyhock-improvization.jpg') center/cover no-repeat}.art.alt1{background:linear-gradient(155deg,#d7cec1 0 34%,#9e7f69 34% 54%,#463c36 54%)}.art.alt2{background:linear-gradient(35deg,#9aa4a1,#d8d0c4 45%,#6a6157)}.art.alt3{background:linear-gradient(120deg,#c6a986,#70665c 55%,#c7c0b7)}.art.alt4{background:linear-gradient(150deg,#a8a09b,#ede6db 48%,#7b665a)}.meta{padding:1rem 1.1rem 1.2rem}.meta h3{font:400 1.4rem Georgia,serif;margin:0 0 .3rem}.meta p,.source-note{color:var(--muted);margin:.2rem 0}.view-link{display:inline-block;margin-top:.7rem;font-size:.9rem}.split{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:5vw;align-items:start}.portrait-placeholder{min-height:520px;background:url('assets/hollyhock-improvization.jpg') center/cover no-repeat}.prose{max-width:760px}.prose h2{font:400 2rem Georgia,serif;margin:2.2rem 0 .8rem}.prose h2:first-child{margin-top:0}.cv-row{display:grid;grid-template-columns:170px 1fr;gap:1rem;padding:.85rem 0;border-top:1px solid var(--line)}.notice{padding:1rem 1.2rem;background:#fff;border:1px solid var(--line);margin-bottom:2rem}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.video-card{min-height:300px;background:var(--dark);color:#fff;padding:1.4rem;display:flex;align-items:flex-end}.footer{display:flex;justify-content:space-between;gap:2rem;padding:2rem 4vw;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}.work-detail{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);min-height:74vh}.work-image{background:#e7dfd4;display:flex;align-items:center;justify-content:center;padding:3vw}.work-image img{max-width:100%;max-height:78vh;object-fit:contain;box-shadow:0 12px 45px rgba(0,0,0,.13)}.work-copy{padding:5vw;background:#fff}.work-copy h1{font:400 clamp(2.7rem,5vw,4.8rem)/.95 Georgia,serif;margin:.35rem 0 1rem}.work-copy dl{margin-top:2rem}.work-copy dt{font-weight:700;margin-top:1rem}.work-copy dd{margin:.2rem 0 0;color:#555}.back{display:inline-block;margin-top:2rem}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-art{min-height:55vh}.work-card,.work-card.large,.work-card.wide{grid-column:span 6}.split,.work-detail{grid-template-columns:1fr}.video-grid{grid-template-columns:1fr}.site-header{align-items:flex-start}.menu-button{display:block}.site-nav{display:none;position:absolute;right:4vw;top:4.1rem;background:#fff;border:1px solid var(--line);padding:1rem;flex-direction:column;min-width:180px}.site-nav.open{display:flex}}@media(max-width:600px){.work-card,.work-card.large,.work-card.wide{grid-column:1/-1}.section,.page-hero{padding-left:5vw;padding-right:5vw}.footer{flex-direction:column}.cv-row{grid-template-columns:1fr}.hero-copy{padding:10vw 6vw}.hero h1{font-size:3.5rem}}

.legacy-quote{margin:1.5rem 0;padding:1.2rem 1.4rem;border-left:3px solid var(--accent);background:#fff;font:italic 1.35rem/1.55 Georgia,serif}

.video-feature{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);gap:2rem;align-items:center;margin-bottom:3rem}.video-embed{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden}.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-copy h2{font:400 2rem Georgia,serif;margin:.35rem 0 1rem}.video-grid-spaced{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.video-feature{grid-template-columns:1fr}.video-grid-spaced{grid-template-columns:1fr}}

/* Local Mac video preview / hosted embed */
.video-frame { max-width: 1100px; margin: 0 auto; }
.video-frame iframe { width: 100%; aspect-ratio: 16 / 9; border: 0; display: block; }
.video-local-fallback { position: relative; display: block; overflow: hidden; background: #111; color: #fff; text-decoration: none; }
.video-local-fallback img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; opacity: .82; }
.video-play-button { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 76px; height: 76px; border-radius: 50%; background: rgba(0,0,0,.75); display: grid; place-items: center; font-size: 30px; padding-left: 5px; }
.video-play-label { position: absolute; left: 50%; top: calc(50% + 58px); transform: translateX(-50%); font-size: .95rem; letter-spacing: .04em; }
.video-local-note { margin: 14px 0 0; font-size: .9rem; color: #666; }
.video-copy { max-width: 1100px; margin: 22px auto 0; }

.featured-video-heading {
  font-size: clamp(2rem, 5vw, 4rem);
  line-height: 1.05;
  margin: 0 0 1.25rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.video-section + .video-section {
  margin-top: 5rem;
  padding-top: 1rem;
}

/* Corporate Installations */
.corporate-hero h1 em{font-weight:400}.corporate-statement{background:var(--paper)}.corporate-prose{max-width:960px;margin:0 auto}.corporate-prose>p:first-child{font:400 clamp(1.35rem,2.4vw,2rem)/1.5 Georgia,serif;margin-top:0}.corporate-features{counter-reset:item;margin:2.5rem 0 0;padding:0;list-style:none}.corporate-features li{counter-increment:item;position:relative;padding:1.25rem 0 1.25rem 4rem;border-top:1px solid var(--line);font-size:1.05rem}.corporate-features li::before{content:counter(item);position:absolute;left:0;top:1rem;font:400 2rem Georgia,serif;color:var(--accent)}.corporate-video-block video{width:100%;height:auto;display:block;background:#000}.section-title{font:400 clamp(2rem,4vw,3.8rem)/1 Georgia,serif;margin:.35rem 0 1.5rem;letter-spacing:-.025em}.client-list{columns:2;column-gap:3.5rem;margin-top:2.2rem}.client-list p{break-inside:avoid;margin:0;padding:.55rem 0;border-top:1px solid var(--line)}.legacy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.legacy-grid article{background:var(--paper);border:1px solid var(--line);padding:1.35rem}.legacy-grid h3{font:400 1.45rem Georgia,serif;margin:0 0 .5rem}.legacy-grid p{color:var(--muted);margin:0}
@media(max-width:760px){.client-list{columns:1}.legacy-grid{grid-template-columns:1fr}.corporate-features li{padding-left:3rem}}

/* Available works: generous separation so saturated colors do not compete */
.available-gallery {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7rem;
}
.available-gallery .work-card {
  max-width: 980px;
  margin: 0 auto;
}
.available-gallery .art-image {
  margin-bottom: 1.5rem;
}
@media (max-width: 700px) {
  .available-gallery { gap: 4.5rem; }
}

/* Restored corporate installation image gallery */
.corporate-installation-gallery{display:grid;grid-template-columns:1fr;gap:7rem;margin-top:3rem}
.corporate-installation-item{margin:0}
.corporate-installation-item img{display:block;width:min(100%,1100px);height:auto;margin:0 auto;object-fit:contain}
.corporate-installation-item figcaption{max-width:1100px;margin:1rem auto 0}
.corporate-installation-item h3{font:400 1.5rem Georgia,serif;margin:0}
@media(max-width:700px){.corporate-installation-gallery{gap:4rem}}



/* Home review context */
.home-review{background:var(--paper)}
.home-review-inner{max-width:900px;margin:0 auto}
.home-review-inner h2{font:400 clamp(2.4rem,5vw,4.6rem)/1 Georgia,serif;margin:.3rem 0 1.5rem}
.home-review-inner p{font:400 1.12rem/1.8 Georgia,serif;margin:0 0 1.4rem;color:#333}
.home-review-credit{font-size:.92rem!important;color:var(--muted)!important;font-style:italic}

/* 2026 Home alignment refinement */
.home-language-banner{
  max-width:1120px;
  margin:0 auto;
  padding:1.5rem 2rem 1.25rem;
}
.home-language-banner img{
  width:100%;
  max-width:none;
  margin:0;
  border:0;
  box-shadow:none;
}
#main{
  width:100%;
}
#main > .hero{
  width:min(calc(100% - 4rem),1120px);
  min-height:0;
  margin:0 auto 4.5rem;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  background:var(--paper);
  border:1px solid var(--line);
}
#main > .hero .hero-art{
  min-height:620px;
  background-size:contain;
  background-position:center;
}
#main > .hero .hero-copy{
  padding:4.5rem 4rem;
}
#main > .hero h1{
  font-size:clamp(3.25rem,5.8vw,5.4rem);
  line-height:.93;
  margin:.35rem 0 1.35rem;
}
#main > .hero .intro{
  max-width:26rem;
  font-size:1.08rem;
  line-height:1.5;
}
#main > .hero .eyebrow{
  font-size:.76rem;
}
.home-review.section{
  width:min(calc(100% - 4rem),1120px);
  margin:0 auto 4.5rem;
  padding:4.5rem 4rem;
  border:1px solid var(--line);
}
.home-review-inner{
  max-width:760px;
  margin:0;
}
.home-review-inner h2{
  font-size:clamp(2.4rem,4vw,3.65rem);
  line-height:1.02;
  margin:.35rem 0 1.5rem;
}
.home-review-inner p{
  font-size:1.04rem;
  line-height:1.72;
}
@media(max-width:900px){
  .home-language-banner{padding-left:1.25rem;padding-right:1.25rem}
  #main > .hero,
  .home-review.section{width:min(calc(100% - 2.5rem),1120px)}
  #main > .hero{grid-template-columns:1fr}
  #main > .hero .hero-art{min-height:62vw;max-height:720px}
  #main > .hero .hero-copy{padding:3.25rem 2.5rem}
  .home-review.section{padding:3.25rem 2.5rem}
}
@media(max-width:600px){
  .home-language-banner{padding:1rem .8rem}
  #main > .hero,
  .home-review.section{width:calc(100% - 1.6rem);margin-bottom:2.5rem}
  #main > .hero .hero-art{min-height:72vw}
  #main > .hero .hero-copy{padding:2.5rem 1.5rem}
  #main > .hero h1{font-size:3.25rem}
  .home-review.section{padding:2.5rem 1.5rem}
}


/* Align multilingual banner to the exact visual width of the large home image */
.home-language-banner{
  padding:1.25rem 0 0;
  background:var(--bg);
}
.home-language-banner img{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  margin:0;
  border:0;
  box-shadow:none;
}
@media(min-width:901px){
  .home-language-banner{
    width:67.5%;
  }
}
@media(max-width:900px){
  .home-language-banner{
    width:100%;
  }
}

/* Collage page */
.collage-gallery{display:grid;grid-template-columns:1fr;gap:6rem;max-width:980px;margin:0 auto}
.collage-gallery figure{margin:0;background:var(--paper);padding:1.25rem;border:1px solid var(--line)}
.collage-gallery img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:700px){.collage-gallery{gap:3.5rem}}


/* Artworks page: more visual breathing room */
.artworks-gallery{gap:4rem 3rem}
.artworks-gallery .work-card{grid-column:span 6}
.artworks-gallery .art-image,.artworks-gallery .art{min-height:420px}
@media(max-width:900px){.artworks-gallery{gap:3.5rem 2rem}.artworks-gallery .work-card{grid-column:1/-1}}

/* Artworks page — museum-style single-work rhythm */
.artworks-gallery{
  display:grid;
  grid-template-columns:1fr;
  gap:8rem;
  max-width:920px;
  margin:0 auto;
}
.artworks-gallery .work-card,
.artworks-gallery a.work-card{
  grid-column:1/-1;
  display:block;
  width:100%;
  max-width:920px;
  margin:0 auto;
  background:transparent;
  border:0;
  box-shadow:none;
}
.artworks-gallery .work-card:hover,
.artworks-gallery a.work-card:hover{
  transform:none;
}
.artworks-gallery .art-image,
.artworks-gallery .art{
  width:100%;
  min-height:0;
  height:auto;
  aspect-ratio:auto;
  background:#f1ede7;
  padding:2rem;
  border:1px solid var(--line);
}
.artworks-gallery .art-image img{
  width:100%;
  height:auto;
  max-height:760px;
  object-fit:contain;
  margin:0 auto;
}
.artworks-gallery .art{
  min-height:620px;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
}
.artworks-gallery .meta{
  padding:1.15rem 0 0;
  max-width:720px;
}
.artworks-gallery .meta h3{
  font-size:1.5rem;
  margin-bottom:.25rem;
}
.artworks-gallery .meta p,
.artworks-gallery .view-link{
  font-size:.92rem;
}
.artworks-gallery .work-card + .work-card,
.artworks-gallery a.work-card + a.work-card{
  padding-top:1rem;
}
@media(max-width:700px){
  .artworks-gallery{gap:5rem}
  .artworks-gallery .art-image,
  .artworks-gallery .art{padding:1rem}
  .artworks-gallery .art{min-height:90vw}
}


/* Artworks thumbnail gallery + click-to-enlarge lightbox */
.artworks-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:4.5rem 3rem;
  max-width:1050px;
  margin:0 auto;
  align-items:start;
}
.artworks-gallery .work-card,
.artworks-gallery a.work-card{
  grid-column:auto;
  width:100%;
  max-width:none;
  margin:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.artworks-gallery .art-image,
.artworks-gallery .art{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:260px;
  min-height:0;
  padding:1rem;
  border:1px solid var(--line);
  background:#f3f0eb;
  overflow:hidden;
}
.artworks-gallery button.art-image{
  appearance:none;
  font:inherit;
  cursor:zoom-in;
}
.artworks-gallery button.art-image:focus-visible{
  outline:3px solid currentColor;
  outline-offset:4px;
}
.artworks-gallery .art-image img{
  display:block;
  width:100%;
  height:100%;
  max-height:none;
  object-fit:contain;
  margin:0;
}
.artworks-gallery .art{
  min-height:0;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
}
.artworks-gallery .meta{
  padding:.8rem 0 0;
  max-width:none;
}
.artworks-gallery .meta h3{
  font-size:1.15rem;
  margin:0 0 .2rem;
}
.artworks-gallery .meta p,
.artworks-gallery .view-link{font-size:.85rem}
.artworks-gallery .work-card + .work-card,
.artworks-gallery a.work-card + a.work-card{padding-top:0}

.art-lightbox[hidden]{display:none}
.art-lightbox{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:2rem;
}
.art-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(18,16,14,.88);
}
.art-lightbox-dialog{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  width:96vw;
  max-width:1600px;
  max-height:96vh;
}
.art-lightbox-dialog img{
  display:block;
  max-width:96vw;
  max-height:90vh;
  width:auto;
  height:auto;
  object-fit:contain;
  background:#fff;
  box-shadow:0 16px 60px rgba(0,0,0,.35);
}
.art-lightbox-dialog p{
  margin:.8rem 3.5rem 0;
  color:#fff;
  font:400 1.1rem Georgia,serif;
  text-align:center;
}
.art-lightbox-close{
  position:absolute;
  top:-1.2rem;
  right:-1.2rem;
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.65);
  background:#fff;
  color:#111;
  font-size:2rem;
  line-height:1;
  cursor:pointer;
  z-index:2;
}
body.lightbox-open{overflow:hidden}
@media(max-width:850px){
  .artworks-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem 2rem}
}
@media(max-width:560px){
  .artworks-gallery{grid-template-columns:1fr;gap:3.5rem}
  .artworks-gallery .art-image,.artworks-gallery .art{height:240px}
  .art-lightbox{padding:1rem}
  .art-lightbox-close{top:-.6rem;right:-.3rem}
}

/* Definitive compact Artworks thumbnail gallery */
.artworks-section{padding-top:3rem}
.artworks-gallery.compact-thumbnails{display:grid!important;grid-template-columns:repeat(4,minmax(140px,1fr))!important;gap:4rem 2.5rem!important;max-width:1000px!important;margin:0 auto!important;align-items:start!important}
.compact-thumbnails .artwork-thumb{display:block!important;width:100%!important;max-width:210px!important;margin:0 auto!important;background:transparent!important;border:0!important}
.compact-thumbnails .thumb-button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:220px!important;min-height:0!important;padding:.65rem!important;margin:0!important;border:1px solid var(--line)!important;background:#f3f0eb!important;cursor:zoom-in!important;overflow:hidden!important}
.compact-thumbnails .thumb-button img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;margin:0!important}
.compact-thumbnails h3{font:400 1rem/1.25 Georgia,serif!important;text-align:center!important;margin:.7rem 0 0!important}
.compact-thumbnails .thumb-button:hover{border-color:#777!important}
.compact-thumbnails .thumb-button:focus-visible{outline:3px solid #222!important;outline-offset:4px!important}
@media(max-width:850px){.artworks-gallery.compact-thumbnails{grid-template-columns:repeat(3,minmax(130px,1fr))!important;gap:3.5rem 2rem!important}}
@media(max-width:650px){.artworks-gallery.compact-thumbnails{grid-template-columns:repeat(2,minmax(120px,1fr))!important;gap:3rem 1.5rem!important}.compact-thumbnails .thumb-button{height:190px!important}}
@media(max-width:390px){.artworks-gallery.compact-thumbnails{grid-template-columns:1fr!important}.compact-thumbnails .artwork-thumb{max-width:200px!important}.compact-thumbnails .thumb-button{height:210px!important}}

/* Larger click-to-view artwork presentation */
@media(min-width:900px){
  .art-lightbox{padding:1rem!important}
  .art-lightbox-dialog{width:96vw!important;max-width:1600px!important;max-height:96vh!important}
  .art-lightbox-dialog img{max-width:96vw!important;max-height:90vh!important}
}
@media(max-width:899px){
  .art-lightbox-dialog{width:96vw!important;max-width:96vw!important}
  .art-lightbox-dialog img{max-width:96vw!important;max-height:88vh!important}
}


/* Thumbnail links to dedicated full-size artwork pages */
.compact-thumbnails .thumb-link{display:block;text-decoration:none;color:inherit}
.compact-thumbnails .thumb-frame{display:flex;align-items:center;justify-content:center;width:100%;height:220px;padding:.65rem;border:1px solid var(--line);background:#f3f0eb;overflow:hidden;cursor:zoom-in}
.compact-thumbnails .thumb-frame img{display:block;width:100%;height:100%;object-fit:contain}
.compact-thumbnails .thumb-link h3{font:400 1rem/1.25 Georgia,serif;text-align:center;margin:.7rem 0 0}
.compact-thumbnails .thumb-link:hover .thumb-frame{border-color:#666}
.compact-thumbnails .thumb-link:focus-visible{outline:3px solid #222;outline-offset:5px}

/* Dedicated large artwork viewer — intentionally much larger than gallery thumbnails */
.artwork-view-page{margin:0;background:#171614;color:#fff}
.artwork-view-main{width:100%;padding:18px 24px 34px;box-sizing:border-box}
.artwork-view-toolbar{max-width:1800px;margin:0 auto 18px;display:flex;justify-content:space-between;gap:24px;align-items:center;font:400 1rem/1.35 Arial,sans-serif}
.back-to-artworks{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.55);padding:.45rem 0}
.back-to-artworks:hover{border-bottom-color:#fff}
.artwork-view-figure{margin:0 auto;max-width:1800px;text-align:center}
.artwork-view-figure img{display:block;width:auto;height:auto;max-width:96vw;max-height:88vh;margin:0 auto;object-fit:contain;background:#fff}
.artwork-view-figure figcaption{margin:14px 0 0;font:400 1.15rem/1.3 Georgia,serif;color:#fff}
@media(max-width:650px){.artwork-view-main{padding:12px 12px 24px}.artwork-view-toolbar{font-size:.92rem}.artwork-view-figure img{max-width:96vw;max-height:84vh}}

/* Sandia Crest: source is only 300×375, so deliberately upscale it for the dedicated view. */
.sandia-large-view img{
  width:min(78vw,900px);
  height:auto;
  max-width:none;
  max-height:none;
}
@media(max-width:700px){
  .sandia-large-view img{
    width:94vw;
    max-width:94vw;
  }
}

/* Artworks page review */
.artwork-review{
  margin-top:7rem;
  padding-top:5rem;
  border-top:1px solid var(--line);
}
.artwork-review .review-inner{
  max-width:760px;
  margin:0 auto;
}
.artwork-review h2{
  margin:0 0 2rem;
  font:400 clamp(1.8rem,3vw,2.6rem)/1.15 Georgia,serif;
}
.artwork-review p{
  font-size:1.05rem;
  line-height:1.8;
  margin:0 0 1.5rem;
}
.artwork-review .review-credit{
  margin-top:2.25rem;
  font-style:italic;
  text-align:right;
}
@media(max-width:700px){
  .artwork-review{margin-top:5rem;padding-top:3.5rem}
  .artwork-review p{font-size:1rem;line-height:1.7}
}


/* Dedicated artwork pages: consistent large display for every work */
.artwork-view-figure img{
  display:block;
  width:min(78vw,900px);
  height:auto;
  max-width:none;
  max-height:none;
  margin:0 auto;
  object-fit:contain;
}
@media(max-width:700px){
  .artwork-view-figure img{
    width:94vw;
    max-width:94vw;
  }
}


/* Home portrait */
.home-portrait{
  padding-top:3.5rem;
  padding-bottom:2rem;
}
.home-portrait-figure{
  width:min(100%,360px);
  margin:0 auto;
}
.home-portrait-figure img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.home-portrait-figure figcaption{
  margin-top:.8rem;
  text-align:center;
  font:400 1rem Georgia,serif;
  letter-spacing:.02em;
}
@media(max-width:700px){
  .home-portrait{padding-top:2.5rem}
  .home-portrait-figure{width:min(78vw,340px)}
}


/* Corporate Installations: thumbnail gallery with dedicated large views */
.corporate-installation-gallery.corporate-thumbnails{
  display:grid;
  grid-template-columns:repeat(4,minmax(140px,1fr));
  gap:4rem 2.5rem;
  max-width:1000px;
  margin:3rem auto 0;
  align-items:start;
}
.corporate-thumb{
  display:block;
  width:100%;
  max-width:210px;
  margin:0 auto;
}
.corporate-thumb-link{
  display:block;
  color:inherit;
  text-decoration:none;
}
.corporate-thumb-frame{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:220px;
  padding:.65rem;
  border:1px solid var(--line);
  background:#f3f0eb;
  overflow:hidden;
  box-sizing:border-box;
}
.corporate-thumb-frame img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.corporate-thumb h3{
  margin:.7rem 0 0;
  font:400 1rem/1.25 Georgia,serif;
  text-align:center;
}
.corporate-thumb-link:hover .corporate-thumb-frame{border-color:#666}
.corporate-thumb-link:focus-visible{outline:3px solid #222;outline-offset:5px}

.corporate-view-page{margin:0;background:#171614;color:#fff}
.corporate-view-main{width:100%;padding:18px 24px 34px;box-sizing:border-box}
.corporate-view-toolbar{max-width:1800px;margin:0 auto 18px}
.back-to-corporate{
  color:#fff;
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.55);
  padding:.45rem 0;
  font:400 1rem/1.35 Arial,sans-serif;
}
.corporate-view-figure{margin:0 auto;max-width:1800px;text-align:center}
.corporate-view-figure img{
  display:block;
  width:auto;
  height:auto;
  max-width:96vw;
  max-height:88vh;
  margin:0 auto;
  object-fit:contain;
  background:#fff;
}
.corporate-view-figure figcaption{
  margin:14px 0 0;
  font:400 1.15rem/1.3 Georgia,serif;
  color:#fff;
}
@media(max-width:850px){
  .corporate-installation-gallery.corporate-thumbnails{grid-template-columns:repeat(3,minmax(130px,1fr));gap:3.5rem 2rem}
}
@media(max-width:650px){
  .corporate-installation-gallery.corporate-thumbnails{grid-template-columns:repeat(2,minmax(120px,1fr));gap:3rem 1.5rem}
  .corporate-thumb-frame{height:190px}
  .corporate-view-main{padding:12px 12px 24px}
  .corporate-view-figure img{max-width:96vw;max-height:84vh}
}
@media(max-width:390px){
  .corporate-installation-gallery.corporate-thumbnails{grid-template-columns:1fr}
  .corporate-thumb{max-width:200px}
  .corporate-thumb-frame{height:210px}
}


/* Corporate page normalization — keep this page at the same visual scale as the rest of the site */
#main > .corporate-hero{
  padding-top:4.5rem;
  padding-bottom:3.5rem;
}
.corporate-hero h1{
  font-size:clamp(3rem,6vw,5.2rem);
  line-height:.92;
}
.corporate-hero .lede{
  font-size:1.1rem;
  line-height:1.6;
  max-width:44rem;
}

.corporate-statement{
  padding-top:4rem;
  padding-bottom:4rem;
}
.corporate-prose{
  max-width:820px;
  margin:0 auto;
}
.corporate-prose>p:first-child{
  font:inherit;
  font-size:1.05rem;
  line-height:1.75;
  margin-top:0;
}
.corporate-features{
  margin-top:2rem;
}
.corporate-features li{
  padding:1rem 0 1rem 2.75rem;
  font-size:1rem;
  line-height:1.65;
}
.corporate-features li::before{
  top:.9rem;
  font-size:1.35rem;
}

.corporate-video-block,
.legacy-corporate{
  padding-top:4rem;
  padding-bottom:4rem;
}
.corporate-video-block .video-frame{
  max-width:900px;
}

.legacy-corporate .section-title{
  font-size:clamp(1.8rem,3.2vw,3rem);
  margin-bottom:1.25rem;
}
.corporate-installation-gallery.corporate-thumbnails{
  max-width:900px;
  gap:3rem 2rem;
  margin-top:2rem;
}
.corporate-thumb{
  max-width:180px;
}
.corporate-thumb-frame{
  height:185px;
  padding:.5rem;
}
.corporate-thumb h3{
  font-size:.95rem;
  margin-top:.6rem;
}

@media(max-width:700px){
  #main > .corporate-hero{
    padding-top:3.5rem;
    padding-bottom:2.75rem;
  }
  .corporate-hero h1{
    font-size:clamp(2.7rem,13vw,4.2rem);
  }
  .corporate-statement,
  .corporate-video-block,
  .legacy-corporate{
    padding-top:3rem;
    padding-bottom:3rem;
  }
  .corporate-installation-gallery.corporate-thumbnails{
    gap:2.5rem 1.5rem;
  }
  .corporate-thumb{
    max-width:165px;
  }
  .corporate-thumb-frame{
    height:170px;
  }
}


/* Trammell Crow large view: match the width of the other Corporate installation images */
.trammell-crow-large-view img{
  width:min(96vw,1400px);
  height:auto;
  max-width:min(96vw,1400px);
  max-height:88vh;
  object-fit:contain;
}
@media(max-width:700px){
  .trammell-crow-large-view img{
    width:96vw;
    max-width:96vw;
    max-height:84vh;
  }
}


/* Corporate large views: U.S. Ambassador and British Petroleum match the other large images */
.us-ambassador-large-view img,
.british-petroleum-large-view img{
  width:min(96vw,1400px);
  height:auto;
  max-width:min(96vw,1400px);
  max-height:88vh;
  object-fit:contain;
}
@media(max-width:700px){
  .us-ambassador-large-view img,
  .british-petroleum-large-view img{
    width:96vw;
    max-width:96vw;
    max-height:84vh;
  }
}


/* Home page: align review text with portrait edges */
.home-portrait-figure,
.home-review-inner{
  width:min(100%,360px);
  max-width:360px;
  margin-left:auto;
  margin-right:auto;
}
.home-review{
  padding-top:2.5rem;
}
.home-review-inner{
  text-align:left;
}
@media(max-width:700px){
  .home-portrait-figure,
  .home-review-inner{
    width:min(78vw,340px);
    max-width:340px;
  }
}


/* Home portrait + review side by side */
.home-portrait-review{
  padding-top:4rem;
  padding-bottom:4rem;
}
.home-portrait-review-inner{
  display:grid;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr);
  gap:4rem;
  align-items:start;
  max-width:980px;
  margin:0 auto;
}
.home-portrait-column .home-portrait,
.home-review-column .home-review{
  padding:0;
}
.home-portrait-column .home-portrait-figure{
  width:100%;
  max-width:360px;
  margin:0;
}
.home-review-column .home-review-inner{
  width:100%;
  max-width:560px;
  margin:0;
}
@media(max-width:760px){
  .home-portrait-review-inner{
    grid-template-columns:1fr;
    gap:2.5rem;
    max-width:560px;
  }
  .home-portrait-column .home-portrait-figure,
  .home-review-column .home-review-inner{
    margin-left:auto;
    margin-right:auto;
  }
}




/* Home Critical Context: balanced indentation on both sides */
.home-review-column{
  padding-left:2.5rem;
  padding-right:2.5rem;
  box-sizing:border-box;
}
.home-review-column .home-review-inner{
  width:100%;
  max-width:520px;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:760px){
  .home-review-column{
    padding-left:1.25rem;
    padding-right:1.25rem;
  }
  .home-review-column .home-review-inner{
    max-width:100%;
  }
}


/* Critical Context: indent the actual paragraph text evenly on both sides */
.home-review-column .home-review-inner > p:not(.eyebrow){
  width:calc(100% - 3rem);
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}
@media(max-width:760px){
  .home-review-column .home-review-inner > p:not(.eyebrow){
    width:calc(100% - 1.5rem);
  }
}


/* Home Critical Context: widen text area to match the broader Home title composition */
.home-portrait-review-inner{
  grid-template-columns:minmax(280px,360px) minmax(0,1fr);
  max-width:1180px;
}
.home-review-column .home-review-inner{
  width:100%;
  max-width:700px;
}
.home-review-column .home-review-inner > p:not(.eyebrow){
  width:100%;
  max-width:700px;
  margin-left:0;
  margin-right:0;
}
@media(max-width:760px){
  .home-portrait-review-inner{
    max-width:620px;
  }
  .home-review-column .home-review-inner,
  .home-review-column .home-review-inner > p:not(.eyebrow){
    max-width:100%;
    width:100%;
  }
}


/* Home Critical Context: add white space on the left side of the text */
.home-review-column .home-review-inner{
  padding-left:1.75rem;
  box-sizing:border-box;
}
@media(max-width:760px){
  .home-review-column .home-review-inner{
    padding-left:1rem;
  }
}


/* Charcoal backgrounds requested for Home + thumbnail galleries */
body:has(a[href="index.html"][aria-current="page"]){
  background:#333333;
  color:#f3f1ed;
}
body:has(a[href="index.html"][aria-current="page"]) .site-header,
body:has(a[href="index.html"][aria-current="page"]) .footer{
  background:#333333;
  color:#f3f1ed;
  border-color:rgba(255,255,255,.18);
}
body:has(a[href="index.html"][aria-current="page"]) .site-header a,
body:has(a[href="index.html"][aria-current="page"]) .footer a,
body:has(a[href="index.html"][aria-current="page"]) .hero-copy,
body:has(a[href="index.html"][aria-current="page"]) .home-review,
body:has(a[href="index.html"][aria-current="page"]) .home-portrait{
  color:#f3f1ed;
}
body:has(a[href="index.html"][aria-current="page"]) .button{
  border-color:#f3f1ed;
  color:#f3f1ed;
}
body:has(a[href="index.html"][aria-current="page"]) .button:hover{
  background:#f3f1ed;
  color:#333333;
}

/* Artwork thumbnail backgrounds */
.thumb-frame{
  background:#333333 !important;
  border-color:#555 !important;
}
.artwork-thumb h3{
  color:inherit;
}

/* Corporate installation thumbnail backgrounds */
.corporate-thumb-frame{
  background:#333333 !important;
  border-color:#555 !important;
}


/* Home title lettering */
body:has(a[href="index.html"][aria-current="page"]) .hero-copy h1,
body:has(a[href="index.html"][aria-current="page"]) .hero-copy h1 em{
  color:#000;
}


/* Updated site palette: lighter charcoal with dark peach Home accents */
:root{
  --light-charcoal:#4a4744;
  --dark-peach:#c97b63;
}

/* Home page lighter charcoal */
body:has(a[href="index.html"][aria-current="page"]){
  background:var(--light-charcoal);
  color:#f5f1ed;
}
body:has(a[href="index.html"][aria-current="page"]) .site-header,
body:has(a[href="index.html"][aria-current="page"]) .footer{
  background:var(--light-charcoal);
}

/* Home page accent lettering */
body:has(a[href="index.html"][aria-current="page"]) .hero-copy h1,
body:has(a[href="index.html"][aria-current="page"]) .hero-copy h1 em,
body:has(a[href="index.html"][aria-current="page"]) .home-review h2{
  color:var(--dark-peach);
}

/* Lighter charcoal thumbnail fields sitewide */
.thumb-frame,
.corporate-thumb-frame{
  background:var(--light-charcoal) !important;
  border-color:#6a6662 !important;
}


/* Available page: match the lighter charcoal background */
body:has(a[href="available.html"][aria-current="page"]){
  background:var(--light-charcoal);
  color:#f5f1ed;
}
body:has(a[href="available.html"][aria-current="page"]) .site-header,
body:has(a[href="available.html"][aria-current="page"]) .footer{
  background:var(--light-charcoal);
  color:#f5f1ed;
  border-color:rgba(255,255,255,.18);
}
body:has(a[href="available.html"][aria-current="page"]) .site-header a,
body:has(a[href="available.html"][aria-current="page"]) .footer a,
body:has(a[href="available.html"][aria-current="page"]) .page-hero,
body:has(a[href="available.html"][aria-current="page"]) .available-gallery,
body:has(a[href="available.html"][aria-current="page"]) .work-card{
  color:#f5f1ed;
}


/* Available page: artwork titles in dark peach */
body:has(a[href="available.html"][aria-current="page"]) .available-gallery h3,
body:has(a[href="available.html"][aria-current="page"]) .work-card h3{
  color:var(--dark-peach);
}


/* Available page: main page title in dark peach */
body:has(a[href="available.html"][aria-current="page"]) .page-hero h1{
  color:var(--dark-peach);
}


/* Main page headings: dark peach across the site */
.page-hero h1,
.corporate-hero h1,
.featured-video-heading,
.artwork-view-header h1,
.corporate-view-figure figcaption{
  color:var(--dark-peach);
}


/* Video page title: match site dark peach heading */
body:has(a[href="video.html"][aria-current="page"]) .page-hero h1,
body:has(a[href="video.html"][aria-current="page"]) .featured-video-heading{
  color:var(--dark-peach);
}


/* Video page: actual heading elements in dark peach */
.page-intro h1,
#corporate-video-title,
#featured-video-title{
  color:var(--dark-peach) !important;
}


/* Video page title: match the typography of the other main page titles */
.page-intro h1{
  color:var(--dark-peach) !important;
  font:400 clamp(3rem,6vw,5.2rem)/.92 Georgia,serif !important;
  letter-spacing:normal !important;
  margin:0 0 1rem !important;
}


/* Corporate/Public/Institutional Installations heading in dark peach */
.legacy-corporate .section-title{
  color:var(--dark-peach) !important;
}


/* Home and Available pages: remove gray page backgrounds */
body:has(a[href="index.html"][aria-current="page"]),
body:has(a[href="available.html"][aria-current="page"]){
  background:var(--bg) !important;
  color:var(--text) !important;
}
body:has(a[href="index.html"][aria-current="page"]) .site-header,
body:has(a[href="index.html"][aria-current="page"]) .footer,
body:has(a[href="available.html"][aria-current="page"]) .site-header,
body:has(a[href="available.html"][aria-current="page"]) .footer{
  background:var(--bg) !important;
  color:var(--text) !important;
  border-color:var(--line) !important;
}
body:has(a[href="index.html"][aria-current="page"]) .site-header a,
body:has(a[href="index.html"][aria-current="page"]) .footer a,
body:has(a[href="index.html"][aria-current="page"]) .hero-copy,
body:has(a[href="index.html"][aria-current="page"]) .home-review,
body:has(a[href="index.html"][aria-current="page"]) .home-portrait,
body:has(a[href="available.html"][aria-current="page"]) .site-header a,
body:has(a[href="available.html"][aria-current="page"]) .footer a,
body:has(a[href="available.html"][aria-current="page"]) .page-hero,
body:has(a[href="available.html"][aria-current="page"]) .available-gallery,
body:has(a[href="available.html"][aria-current="page"]) .work-card{
  color:var(--text) !important;
}


/* Contact details */
.contact-details-inner{
  max-width:720px;
  margin:0 auto;
}
.contact-details-inner h2{
  color:var(--dark-peach);
  font:400 clamp(2rem,4vw,3.4rem)/1 Georgia,serif;
  margin:0 0 1.5rem;
}
.contact-details-inner p{
  margin:.75rem 0;
  font-size:1.2rem;
}
.contact-details-inner a{
  color:inherit;
  text-decoration-thickness:1px;
  text-underline-offset:.2em;
}


/* Contact page: integrated studio contact details */
.studio-contact-inline{
  margin-top:2rem;
}
.studio-contact-inline p{
  margin:.55rem 0;
}
.studio-contact-inline a{
  color:inherit;
  text-underline-offset:.2em;
}
