*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8f7f3;color:#272725;font-family:"DM Sans",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,select{font:inherit}.header{height:84px;padding:0 clamp(22px,5vw,84px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e9e7e1;background:#f8f7f3}.brand{font-size:21px;letter-spacing:.15em;font-weight:600}.brand span{font-weight:400}.header nav{display:flex;gap:clamp(18px,3vw,48px);font-size:12px;letter-spacing:.06em}.header nav a:hover,.underlink:hover{opacity:.6}.intro{text-align:center;padding:clamp(65px,8vw,128px) 18px 60px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.22em;color:#6d706d}.intro h1,.section h2,.artist h2,.contact h2,.dialog-info h2{font-family:"Playfair Display",Georgia,serif;font-weight:400}.intro h1{font-size:clamp(44px,6.4vw,92px);line-height:1.12;letter-spacing:-.035em;margin:24px auto}.intro h1 em{font-weight:400;color:#526d66}.intro>p:not(.eyebrow){color:#777974;line-height:1.9;font-size:14px}.explore{display:inline-block;margin-top:25px;border-bottom:1px solid #8a8a83;padding-bottom:12px;font-size:12px;letter-spacing:.07em}.explore span{padding-left:20px}.hero-mosaic{display:grid;grid-template-columns:1.35fr .75fr .85fr;grid-template-rows:230px 230px;gap:13px;max-width:1390px;margin:0 auto;padding:0 34px}.hero-mosaic figure{margin:0;overflow:hidden;background:#eceae4}.hero-mosaic .mosaic-main{grid-row:span 2}.hero-mosaic img{width:100%;height:100%;object-fit:cover;display:block}.hero-mosaic .mosaic-main img{object-fit:contain;background:#eeece6}.quote{max-width:850px;margin:0 auto;text-align:center;padding:100px 26px}.quote p{font:italic clamp(21px,3vw,32px)/1.65 "Playfair Display",Georgia,serif}.quote span{font-size:11px;letter-spacing:.15em;color:#858780;text-transform:uppercase}.section{max-width:1390px;padding:30px 34px 105px;margin:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;border-bottom:1px solid #deddd7;padding-bottom:25px}.section-heading h2{font-size:clamp(42px,5vw,68px);margin:8px 0 0}.section-heading>p{font-size:13px;color:#81817c;line-height:1.8;max-width:320px}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:23px 0;font-size:12px;color:#777974}.toolbar select{background:transparent;border:0;border-bottom:1px solid #aaa;color:#444;padding:5px;max-width:170px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 22px}.art-card{min-width:0}.art-card button{display:block;width:100%;border:0;padding:0;text-align:left;background:transparent;cursor:pointer;color:inherit}.art-card .image-wrap{background:#eeece6;display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;overflow:hidden}.art-card img{height:100%;width:100%;object-fit:contain;transition:transform .35s ease}.art-card button:hover img{transform:scale(1.025)}.art-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-top:15px}.art-meta strong{font:400 19px "Playfair Display",Georgia,serif}.art-meta span{font-size:11px;color:#8b8c86;white-space:nowrap}.footnote{font-size:12px;color:#85857f;line-height:1.8;margin-top:50px}.artist{background:#eeeee8;display:grid;grid-template-columns:1fr 1fr;min-height:560px}.artist-image{max-height:650px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#e6e4df}.artist-image img{width:100%;height:100%;object-fit:contain}.artist-text{align-self:center;max-width:560px;padding:75px clamp(35px,6vw,110px)}.artist h2{font-size:clamp(36px,4vw,60px);margin:15px 0 28px}.artist-text p:not(.eyebrow){font-size:14px;line-height:2;color:#6e706b}.underlink{display:inline-block;border-bottom:1px solid #7e817d;padding-bottom:9px;font-size:12px;margin-top:18px}.contact{text-align:center;padding:105px 20px 120px}.contact h2{font-size:clamp(42px,5vw,65px);margin:18px 0}.contact>p:not(.eyebrow){color:#797b75;font-size:14px}.contact-button{display:inline-block;margin-top:25px;background:#2f413c;color:#fff;padding:17px 25px;font-size:12px;letter-spacing:.04em}.contact-button:hover{background:#526d66}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #e2e0d9;padding:30px clamp(22px,5vw,84px);font-size:11px;color:#787b76}footer span:first-child{font-size:15px;letter-spacing:.16em;color:#333}dialog{border:0;padding:0;max-width:min(1100px,94vw);width:100%;max-height:94vh;background:#f8f7f3;color:#272725;box-shadow:0 25px 100px #0005}dialog::backdrop{background:#121b19cc}.close{position:absolute;right:14px;top:10px;z-index:2;border:0;background:#f8f7f3;border-radius:50%;font-size:29px;width:43px;height:43px;cursor:pointer}.dialog-layout{display:grid;grid-template-columns:1.2fr 1fr}.dialog-layout>img{width:100%;height:min(83vh,760px);object-fit:contain;background:#eeece6}.dialog-info{align-self:center;padding:40px}.dialog-info h2{font-size:clamp(28px,3vw,46px)}.dialog-info p{font-size:13px;line-height:1.9}.muted,.fine{color:#81837c}.fine{font-size:11px!important}@media(max-width:800px){.header{height:70px;padding:0 18px}.brand{font-size:16px}.header nav{gap:14px;font-size:11px}.intro{padding:65px 20px 45px}.intro h1{font-size:clamp(39px,8vw,65px)}.hero-mosaic{padding:0 12px;gap:6px;grid-template-rows:145px 145px}.quote{padding:65px 22px}.section{padding:20px 16px 80px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 13px}.art-meta{display:block}.art-meta strong{font-size:17px}.art-meta span{display:block;margin-top:7px}.artist{grid-template-columns:1fr}.artist-image{height:450px}.artist-text{padding:45px 28px 60px}.dialog-layout{grid-template-columns:1fr;max-height:94vh;overflow:auto}.dialog-layout>img{height:52vh}.dialog-info{padding:20px 25px 45px}}@media(max-width:450px){.hero-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:150px 150px 150px}.hero-mosaic .mosaic-main{grid-row:span 2}.hero-mosaic figure:last-child{grid-column:span 2}.hero-mosaic figure:last-child img{object-fit:contain}.section-heading{display:block}.section-heading>p{margin-top:12px}.gallery{gap:26px 11px}.art-card .image-wrap{aspect-ratio:3/4}.art-meta strong{font-size:15px}.contact{padding:80px 15px}}
.process-intro{max-width:790px;padding:26px 0 35px;color:#6e706b;font-size:14px;line-height:1.95}.process-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.process-gallery figure{margin:0;overflow:hidden;background:#eeece6;aspect-ratio:4/3}.process-gallery img{width:100%;height:100%;object-fit:cover}.process-gallery figure:nth-child(2){grid-row:span 2;aspect-ratio:auto}.process-gallery figure:nth-child(2) img{object-fit:cover}.art-description{white-space:pre-line}.dialog-info{max-height:83vh;overflow-y:auto}.header nav{flex-wrap:wrap;justify-content:flex-end}@media(max-width:800px){.process-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.process-gallery figure:nth-child(2){grid-row:auto;aspect-ratio:4/3}.dialog-info{max-height:none}}@media(max-width:450px){.header nav{gap:9px;font-size:10px}.brand{font-size:14px}.process-gallery{grid-template-columns:1fr 1fr}}

/* Mobile featured artworks: preserve entire paintings and their approved order without empty grid slots. */
@media(max-width:600px){.hero-mosaic{display:flex;flex-direction:column;gap:12px;padding:0 16px}.hero-mosaic figure,.hero-mosaic .mosaic-main{display:block;width:100%;height:auto;overflow:visible;background:transparent}.hero-mosaic img,.hero-mosaic .mosaic-main img,.hero-mosaic figure:last-child img{display:block;width:100%;height:auto;object-fit:contain;background:transparent}}

/* About the Artist — balanced editorial layout and readable typography. */
.artist {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
}
.artist-image {
  min-width: 0;
}
.artist-text {
  width: 100%;
  max-width: 720px;
  padding: clamp(38px, 5vw, 80px);
}
.artist-text p:not(.eyebrow) {
  font-size: clamp(15px, 1.15vw, 17px);
  line-height: 1.8;
  overflow-wrap: normal;
}
.artist h2 {
  line-height: 1.15;
  overflow-wrap: normal;
}
@media (max-width: 1100px) {
  .artist {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
  }
  .artist-image {
    height: auto;
    max-height: none;
    padding: 0;
  }
  .artist-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 580px;
    object-fit: contain;
  }
  .artist-text {
    max-width: 740px;
    margin: 0 auto;
    padding: 42px clamp(24px, 6vw, 64px) 62px;
  }
  .artist-text p:not(.eyebrow) {
    font-size: 16px;
    line-height: 1.85;
  }
}
@media (max-width: 450px) {
  .artist-text { padding: 35px 24px 52px; }
  .artist h2 { font-size: clamp(34px, 9vw, 42px); }
  .artist-text p:not(.eyebrow) { font-size: 15px; line-height: 1.8; }
}
