*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f1efe9;color:#111;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid #bbb;position:sticky;top:0;background:rgba(241,239,233,.94);z-index:10}.brand{font-size:22px;font-weight:800;letter-spacing:-1px}.brand span{font-weight:400}nav{display:flex;gap:28px;font-size:12px;letter-spacing:1.5px}.menu{display:none;background:none;border:0;font-size:24px}.hero{min-height:calc(100vh - 84px);display:grid;grid-template-columns:42% 58%;padding:4vw}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding-right:4vw}.eyebrow{font-size:11px;letter-spacing:2px;margin:0 0 24px}.hero h1,.section h2{font-size:clamp(54px,8vw,126px);line-height:.82;letter-spacing:-5px;margin:0}.intro{max-width:440px;font-family:Georgia,serif;font-size:20px;line-height:1.5;margin:40px 0}.arrow,.section-head>a{font-size:11px;letter-spacing:1.5px;border-bottom:1px solid;padding-bottom:6px;width:max-content}.hero-art{min-height:650px;background:#1b1b1b;display:grid;place-items:center;color:#ddd;text-align:center;letter-spacing:2px}.hero-art small{font-size:9px;color:#777}.section{padding:9vw 4vw;border-top:1px solid #bbb}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:55px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.art{aspect-ratio:4/5;background:#ccc}.a1{background:linear-gradient(145deg,#232323 0 35%,#b7b0a0 35% 48%,#6d6254 48% 70%,#d2cdc1 70%)}.a2{background:radial-gradient(circle at 65% 35%,#d0c7b8 0 12%,transparent 13%),linear-gradient(35deg,#222 0 45%,#82786b 45% 68%,#c8c2b5 68%)}.a3{background:linear-gradient(165deg,#d7d2c7 0 30%,#4c4944 30% 52%,#a39b8c 52% 72%,#242424 72%)}.meta{display:flex;justify-content:space-between;gap:15px;padding-top:14px}.meta h3{font-size:13px;margin:0 0 5px}.meta p{font-size:10px;margin:0;color:#666}.available{color:#355d3a!important}.journal-row{display:grid;grid-template-columns:25% 75%;border-top:1px solid #999;padding:28px 0}.journal-row>p{font-size:11px}.journal-row h3{font-size:30px;margin:0 0 12px}.journal-row div p{font-family:Georgia,serif;max-width:650px;line-height:1.6}.journal-row a{font-size:10px;letter-spacing:1px}.video{display:grid;grid-template-columns:35% 65%;gap:5vw}.video h2{margin-bottom:35px}.video>div>p:last-child{font-family:Georgia,serif;line-height:1.6}.video-box{aspect-ratio:16/9;background:#171717;color:white;display:grid;place-items:center}.video-box span{font-size:60px;text-align:center}.video-box small{display:block;font-size:9px;letter-spacing:2px;margin-top:12px}.about>div{display:grid;grid-template-columns:60% 40%;gap:4vw}.about p:last-child,.contact>p{font-family:Georgia,serif;font-size:18px;line-height:1.7;max-width:560px}.contact{background:#171717;color:#eee}.contact h2{margin-bottom:40px}.button{display:inline-block;border:1px solid #eee;padding:17px 22px;margin-top:25px;font-size:11px;letter-spacing:1.5px}footer{padding:35px 4vw;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px}
@media(max-width:800px){header{height:68px}.menu{display:block}nav{display:none;position:absolute;top:68px;left:0;right:0;background:#f1efe9;padding:30px 4vw;flex-direction:column}nav.open{display:flex}.hero{grid-template-columns:1fr;gap:35px}.hero h1,.section h2{letter-spacing:-3px}.hero-art{min-height:430px}.grid{grid-template-columns:1fr}.video,.about>div{grid-template-columns:1fr}.journal-row{grid-template-columns:1fr}.section{padding:80px 5vw}footer{gap:20px;flex-direction:column}}
.hero-art.real-art{background:#171717;overflow:hidden}
.hero-art.real-art img{width:100%;height:100%;object-fit:cover;display:block}
.work-photo{overflow:hidden;background:#ddd}
.work-photo img{width:100%;height:100%;object-fit:cover;display:block}

.embedded-video{display:block;background:#111}
.embedded-video iframe{width:100%;height:100%;aspect-ratio:16/9;border:0;display:block}
.video-link{display:inline-block;margin-top:22px;font-size:10px;letter-spacing:1.4px;border-bottom:1px solid;padding-bottom:5px}

.work-card-link{display:block}
.work-card-link .work-photo img{transition:transform .45s ease}
.work-card-link:hover .work-photo img{transform:scale(1.018)}
.view-work{display:inline-block;margin-top:8px;font-size:9px;letter-spacing:1.2px;border-bottom:1px solid #999;padding-bottom:3px}

.sculpture-video-card{position:relative;display:grid;place-items:center}
.play-mark{display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(255,255,255,.75);border-radius:50%;color:#fff;font-size:16px;padding-left:3px;background:rgba(0,0,0,.18)}

.lang-switch{font-size:10px;letter-spacing:1px;margin-left:10px;white-space:nowrap}
.lang-switch b{font-weight:700}.lang-switch a{opacity:.55}.lang-switch a:hover{opacity:1}
@media(max-width:800px){.lang-switch{margin:8px 0 0}}

/* Hero refinement — more breathing room between surname and artwork */
.hero{grid-template-columns:46% 54%}
.hero-copy{padding-right:5vw}
.hero h1{font-size:clamp(50px,6.6vw,104px);line-height:.86;letter-spacing:-4px;max-width:100%;overflow-wrap:normal;word-break:normal}
@media(max-width:1100px) and (min-width:801px){
  .hero{grid-template-columns:48% 52%}
  .hero h1{font-size:clamp(48px,6.1vw,82px);letter-spacing:-3px}
}
@media(max-width:800px){
  .hero{grid-template-columns:1fr}
  .hero h1{font-size:clamp(52px,16vw,88px);letter-spacing:-3px}
}

.grid{grid-template-columns:repeat(4,1fr)}
.landscape-work img{object-fit:cover}
@media(max-width:1100px) and (min-width:801px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.grid{grid-template-columns:1fr}}

.studio-section{background:#dedbd3;border-top:1px solid #aaa;border-bottom:1px solid #aaa}
.studio-section .section-head{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:end;margin-bottom:45px}
.studio-section h2{font-size:clamp(40px,5vw,78px);line-height:.9;letter-spacing:-3px;margin:0}
.studio-intro,.editable-note{font-family:Georgia,serif;line-height:1.6;max-width:520px}
.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.studio-item{background:#ece9e2}
.studio-item img{width:100%;height:58vh;min-height:430px;object-fit:cover;display:block}
.studio-caption{padding:24px 26px 30px}
.studio-caption h3{font-size:18px;letter-spacing:.3px;margin:8px 0 14px}
.studio-date{font-size:9px;letter-spacing:1.4px;color:#666}
.editable-note{font-size:14px;margin:0}
@media(max-width:800px){.studio-section .section-head,.studio-grid{grid-template-columns:1fr}.studio-item img{height:auto;min-height:0}.studio-section h2{letter-spacing:-2px}}

@media(min-width:1101px){.studio-grid{grid-template-columns:repeat(3,1fr)}}

.observations-section{background:#f4f1e9;border-top:1px solid #aaa;border-bottom:1px solid #aaa}
.observations-section .section-head{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:end;margin-bottom:40px}
.observations-section h2{font-size:clamp(38px,5vw,72px);line-height:.92;letter-spacing:-3px;margin:0}
.observations-intro{font-family:Georgia,serif;line-height:1.6;max-width:520px}
.observations-grid{display:grid;grid-template-columns:minmax(0,620px) 1fr;gap:35px}
.observation-item{background:#fff}
.observation-item img{width:100%;height:auto;display:block}
.observation-caption{padding:24px 26px 30px}
.observation-caption h3{font-size:20px;margin:8px 0 14px}
@media(max-width:800px){.observations-section .section-head,.observations-grid{grid-template-columns:1fr}.observations-section h2{letter-spacing:-2px}}

.journal-observation{margin:35px 0 55px;max-width:680px}
.journal-observation-label{font-size:10px;letter-spacing:1.7px;border-top:1px solid #999;padding-top:12px;margin-bottom:18px}
.journal-observation .observation-item{background:transparent}
.journal-observation .observation-caption{padding:20px 0 0}

.journal-studio{margin-top:70px;padding-top:24px;border-top:1px solid #999}
.journal-subhead{display:grid;grid-template-columns:.45fr 1fr 1fr;gap:30px;align-items:start;margin-bottom:32px}
.journal-subhead h3{font-size:clamp(28px,3.5vw,52px);line-height:.95;letter-spacing:-2px;margin:0}
.journal-subhead>p:last-child{font-family:Georgia,serif;line-height:1.55;margin:0}
@media(max-width:800px){.journal-subhead{grid-template-columns:1fr;gap:10px}}

.journal-hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}
.journal-hub-card{display:block;border-top:1px solid #222;padding:20px 0 28px;color:inherit;text-decoration:none}
.journal-hub-card>span{font-size:10px;letter-spacing:1.5px}
.journal-hub-card h3{font-size:clamp(28px,3.2vw,48px);line-height:.95;letter-spacing:-2px;margin:12px 0 18px}
.journal-hub-card>p:last-of-type{font-family:Georgia,serif;line-height:1.55;max-width:500px}
.journal-hub-card b{display:inline-block;margin-top:18px;font-size:10px;letter-spacing:1.5px}
.journal-page{padding-top:90px}
.journal-page-hero{padding:7vw 6vw 5vw;border-bottom:1px solid #999}
.journal-page-hero h1{font-size:clamp(48px,7vw,105px);line-height:.88;letter-spacing:-4px;max-width:1000px;margin:16px 0 25px}
.journal-page-hero>p:last-child{font-family:Georgia,serif;max-width:650px;line-height:1.6}
.journal-page-content{padding:5vw 6vw 8vw}
.journal-page-content .journal-observation,.journal-page-content .journal-studio{margin-top:0}
@media(max-width:800px){.journal-hub-grid{grid-template-columns:1fr}.journal-page-hero h1{letter-spacing:-2px}}

.process-entry{margin:0 0 70px;padding-bottom:60px;border-bottom:1px solid #999}
.process-entry-head{display:grid;grid-template-columns:.35fr 1fr 1fr;gap:28px;align-items:start;margin-bottom:30px}
.process-entry-head h2{font-size:clamp(30px,4vw,58px);line-height:.94;letter-spacing:-2px;margin:0}
.process-entry-head>p:last-child{font-family:Georgia,serif;line-height:1.6;margin:0}
.process-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.process-pair figure{margin:0}
.process-pair img{display:block;width:100%;height:620px;object-fit:cover;background:#eee}
.process-pair figcaption{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;padding-top:10px}
@media(max-width:800px){.process-entry-head,.process-pair{grid-template-columns:1fr}.process-pair img{height:auto}}

.journal-latest-thumb{width:92px;margin:0 0 18px;position:relative}
.journal-latest-thumb img{width:92px;height:92px;display:block;object-fit:cover;border:1px solid #222}
.journal-latest-thumb span{display:block;font-size:8px;letter-spacing:1px;margin-top:7px}
@media(max-width:700px){.journal-latest-thumb,.journal-latest-thumb img{width:76px}.journal-latest-thumb img{height:76px}}

.admin-prototype-link{font-size:8px;letter-spacing:1px;opacity:.35;color:inherit;text-decoration:none;margin-left:18px}

.all-works-cta{display:flex;justify-content:center;padding:34px 0 5px}
.all-works-cta a{font-size:10px;letter-spacing:1.4px;color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}
.portfolio-top{display:flex;justify-content:space-between;align-items:center;padding:25px 4vw;border-bottom:1px solid #aaa;font-size:10px;letter-spacing:1.2px}
.portfolio-top a{color:inherit;text-decoration:none}.portfolio-brand{font-weight:700}
.portfolio-all{padding-top:55px}.portfolio-all .section-head h1{font-size:clamp(52px,8vw,110px);margin:0;letter-spacing:-5px}
.work-count{font-size:12px;letter-spacing:2px}.portfolio-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px}
.portfolio-filters button{border:1px solid #999;background:transparent;padding:8px 11px;font-size:9px;letter-spacing:1px}
.portfolio-footer{padding:40px 4vw;font-size:9px;letter-spacing:2px;border-top:1px solid #aaa;margin-top:60px}

.portfolio-filters button{cursor:pointer}
.portfolio-filters button.active{background:#181818;color:#fff;border-color:#181818}
.portfolio-all .grid article.work[hidden]{display:none!important}

.admin-entry{position:fixed;right:10px;bottom:8px;font-size:7px;letter-spacing:1px;opacity:.22;color:inherit;text-decoration:none;z-index:5}.admin-entry:hover{opacity:.7}


/* Social media — footer visibility adjustment */
[data-social-links] a{
  font-size:1.08em;
  display:inline-flex;
  align-items:center;
  gap:.42em;
}
[data-social-links] .social-icon{
  width:1.05em;
  height:1.05em;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  opacity:.78;
}
[data-social-links] .social-icon svg{
  width:100%;
  height:100%;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
[data-social-links] .social-icon.youtube svg .fill{
  fill:currentColor;
  stroke:none;
}

/* Media attached to Journal entries */
.journal-video-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px}.journal-video-embed{aspect-ratio:16/9;background:#111}.journal-video-embed iframe{width:100%;height:100%;border:0;display:block}.journal-video>a,.journal-social-links a{display:inline-block;margin-top:12px;font-size:10px;letter-spacing:1.2px;border-bottom:1px solid currentColor;padding-bottom:5px}.journal-social-links{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:28px;padding-top:20px;border-top:1px solid #bbb}.journal-social-links a{margin-top:0}

/* Videos selected from Journal for the home page */
.video.video-feed{display:block}.video-feed-head{max-width:620px;margin-bottom:48px}.video-feed-head>p:last-child{font-family:Georgia,serif;line-height:1.6}.video-feed-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 28px}.video-feed-item h3{font-size:19px;margin:18px 0 7px}.video-feed-item p{font-size:9px;letter-spacing:1.1px;color:#666;margin:0}.video-feed-item .video-link{margin-top:14px}
@media(max-width:800px){.journal-video-list,.video-feed-grid{grid-template-columns:1fr}.video-feed-head{margin-bottom:30px}}

/* Homepage artwork: show the entire image without changing its proportions.
   Absolute positioning keeps intrinsic image dimensions out of grid sizing. */
.hero-art.real-art {
  position: relative;
  min-width: 0;
}
.hero-art.real-art > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}
