:root{
  --paper:#faf9f6;--paper2:#f2f0ea;--line:#e0ddd4;--ink:#1c2228;--graphite:#3a434c;
  --tide:#4a6674;--tide-soft:#7a95a2;--brass:#9c7b4f;--mute:#6b727a;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:'Inter',sans-serif;font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
.wrap{max-width:1280px;margin:0 auto;padding:0 40px}

/* nav */
nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  padding:22px 40px;background:rgba(250,249,246,0.9);backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:all .3s}
nav.solid,nav.scrolled{border-bottom:1px solid var(--line)}
.brand{font-family:'Fraunces',serif;font-size:22px;font-weight:500;letter-spacing:0.01em}
.brand span{color:var(--brass)}
.navlinks{display:flex;gap:34px;font-size:12px;letter-spacing:0.16em;text-transform:uppercase;font-weight:400}
.navlinks a{color:var(--graphite);transition:color .3s;position:relative}
.navlinks a:hover,.navlinks a.active{color:var(--brass)}
.navlinks a.active::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--brass)}
.menu-btn{display:none;background:none;border:none;color:var(--ink);font-size:24px;cursor:pointer}
.mobile-menu{display:none;position:fixed;inset:0;z-index:60;background:var(--paper);flex-direction:column;align-items:center;justify-content:center;gap:28px}
.mobile-menu.open{display:flex}
.mobile-menu a{font-family:'Fraunces',serif;font-size:1.8rem;color:var(--ink)}
.mobile-menu .close{position:absolute;top:24px;right:28px;font-size:30px;background:none;border:none;cursor:pointer;color:var(--ink)}

/* buttons */
.btn{display:inline-block;padding:15px 30px;font-size:12px;letter-spacing:0.18em;text-transform:uppercase;border:1px solid var(--ink);color:var(--ink);transition:all .35s;cursor:pointer;background:none;text-align:center}
.btn:hover{background:var(--ink);color:var(--paper)}
.btn.solid{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.solid:hover{background:var(--brass);border-color:var(--brass)}
.btn.light{border-color:rgba(255,255,255,0.6);color:#fff}
.btn.light:hover{background:#fff;color:var(--ink)}
.btn.brass{background:var(--brass);color:#fff;border-color:var(--brass)}
.btn.brass:hover{background:var(--ink);border-color:var(--ink)}

/* generic page header */
.page-head{padding:160px 0 60px;border-bottom:1px solid var(--line)}
.page-head .eyebrow{font-size:12px;letter-spacing:0.3em;text-transform:uppercase;color:var(--tide);margin-bottom:20px}
.page-head h1{font-family:'Fraunces',serif;font-weight:300;font-size:clamp(2.6rem,6vw,4.6rem);line-height:1;letter-spacing:-0.02em}
.page-head p{margin-top:24px;max-width:560px;font-size:17px;color:var(--mute)}

section{padding:110px 0}
.tideline{position:relative;height:1px;background:var(--line)}
.tideline::after{content:"";position:absolute;left:50%;top:-3px;width:7px;height:7px;transform:translateX(-50%) rotate(45deg);background:var(--brass)}

.sec-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:50px;flex-wrap:wrap;gap:16px}
.sec-head h2{font-family:'Fraunces',serif;font-weight:300;font-size:clamp(2rem,4vw,3rem);letter-spacing:-0.01em}
.sec-head .label{font-size:12px;letter-spacing:0.22em;text-transform:uppercase;color:var(--tide)}

/* footer */
footer{border-top:1px solid var(--line);padding:60px 0 44px;background:var(--paper)}
.foot-grid{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:30px}
.foot-brand{font-family:'Fraunces',serif;font-size:22px;font-weight:500}
.foot-brand span{color:var(--brass)}
.foot-col h5{font-size:12px;letter-spacing:0.16em;text-transform:uppercase;color:var(--tide);margin-bottom:16px}
.foot-col a,.foot-col p{display:block;font-size:14px;color:var(--mute);margin-bottom:10px}
.foot-col a:hover{color:var(--brass)}
.foot-note{margin-top:44px;font-size:12px;color:var(--tide-soft);letter-spacing:0.03em}

@media(max-width:900px){
  .navlinks{display:none}.menu-btn{display:block}
}
@media(max-width:560px){
  .wrap{padding:0 22px}nav{padding:16px 22px}section{padding:70px 0}
  .page-head{padding:130px 0 44px}
}

/* ===== FIXES & ADDITIONS ===== */

/* Scroll-aware transparent hero nav */
/* Split hero: solid cream bar with dark text so logo + menu are always readable */
nav.over-hero{background:rgba(250,249,246,0.96);border-bottom:1px solid var(--line)}
nav.over-hero .brand,nav.over-hero .navlinks a{color:var(--graphite)}
nav.over-hero .brand span{color:var(--brass)}
nav.over-hero .menu-btn{color:var(--ink)}
nav.over-hero .navlinks a:hover{color:var(--brass)}

/* HERO — split layout so full sculpture is always visible (no crop of the piece) */
.hero2{min-height:100vh;display:grid;grid-template-columns:1fr 1.1fr;align-items:stretch;position:relative}
.hero2-text{display:flex;flex-direction:column;justify-content:center;padding:120px 60px 60px;background:var(--paper)}
.hero2-eyebrow{font-size:12px;letter-spacing:0.3em;text-transform:uppercase;color:var(--tide);margin-bottom:22px}
.hero2 h1{font-family:'Fraunces',serif;font-weight:300;font-size:clamp(2.6rem,5vw,4.6rem);line-height:0.98;letter-spacing:-0.02em;color:var(--ink)}
.hero2 h1 em{font-style:italic;color:var(--brass)}
.hero2 p.sub{margin-top:24px;max-width:400px;font-size:17px;color:var(--mute)}
.hero2-cta{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap}
.hero2-media{position:relative;overflow:hidden;background:#e9e6df;min-height:100vh}
.hero2-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}
.hero2-slide.active{opacity:1}
/* contain = whole sculpture visible; cover with focal fallback handled per-image */
.hero2-slide img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero2-dots{position:absolute;bottom:28px;right:28px;z-index:4;display:flex;gap:9px}
.hero2-dots button{width:30px;height:2px;background:rgba(255,255,255,0.55);border:none;cursor:pointer;padding:0}
.hero2-dots button.on{background:#fff}
@media(max-width:900px){
  .hero2{grid-template-columns:1fr;min-height:auto}
  .hero2-media{min-height:60vh;order:-1}
  .hero2-text{padding:120px 30px 50px}
}

/* Thumbnails: bias crop toward center-top so tall sculptures aren't reduced to sky bottoms */
.thumb img{object-position:center 40%}
.pf .im img{object-position:center 42%}
.hp .im img{object-position:center 42%}

/* two-button row on portfolio + piece pages */
.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.btn-row .btn{flex:1;min-width:130px}
.btn.sm{padding:12px 20px;font-size:11px}
