
:root{--ink:#141414;--paper:#f2ece5;--red:#c82c23;--dark:#0b0b0b;--line:rgba(20,20,20,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,"Times New Roman",serif}a{text-decoration:none;color:inherit}img{display:block;width:100%}button,input,textarea,select{font:inherit}
header{position:absolute;z-index:40;top:0;left:0;right:0;height:94px;display:flex;justify-content:flex-end;align-items:center;padding:0 5vw}
nav{display:flex;align-items:center;gap:2.55rem;font-size:1.12rem}nav>a:not(.instagram-link){padding:.4rem 0;border-bottom:1px solid transparent}nav>a:hover,nav>a.active{color:var(--red);border-color:var(--red)}
.instagram-link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-left:.5rem;border-radius:50%;border:1px solid currentColor;transition:.2s ease}.instagram-link:hover{background:var(--red);color:#fff;border-color:var(--red)}.instagram-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
.hero{min-height:665px;display:grid;grid-template-columns:1.04fr .96fr;background:#080808}
.hero-image{position:relative;overflow:hidden;background:linear-gradient(135deg,#050505 0%,#121212 48%,#080808 100%)}
.portrait-orbit{position:absolute;z-index:5;left:50%;top:50%;width:260px;height:260px;transform:translate(-50%,-48%)}
.slides{position:absolute;inset:0;border-radius:50%;overflow:hidden;box-shadow:0 25px 60px rgba(0,0,0,.52);border:1px solid rgba(255,255,255,.14)}
.slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.15s ease}.slide.active{opacity:1}
.orbit-lines{position:absolute;z-index:3;inset:0;width:100%;height:100%;pointer-events:none}.orbit-lines path{fill:none;stroke:rgba(255,255,255,.72);stroke-width:1.2;stroke-dasharray:7 8;stroke-linecap:round}.orbit-lines path.red{stroke:var(--red);stroke-width:1.5;stroke-dasharray:4 7}.orbit-lines circle{fill:var(--red)}
.place{position:absolute;z-index:10;line-height:1.22;display:grid;grid-template-columns:14px auto;column-gap:8px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.65)}.place strong{grid-column:2;font-size:1rem}.place span{grid-column:2;font-size:.79rem;margin-top:.2rem}.point{width:8px;height:8px;border-radius:50%;background:var(--red);margin-top:.28rem}.berlin{left:7%;top:18%}.munich{right:7%;top:18%}.sf{left:6.5%;bottom:18%}.pacifica{right:6.5%;bottom:18%}
.dots{position:absolute;z-index:12;bottom:-34px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.dots button{width:8px;height:8px;border:0;border-radius:50%;background:rgba(255,255,255,.68);padding:0;cursor:pointer}.dots button.active{background:var(--red)}
.hero-copy{position:relative;overflow:hidden;padding:140px 7vw 92px 7.4vw;display:flex;align-items:center;background:linear-gradient(90deg,#111 0%,#202020 7%,rgba(94,89,84,.72) 23%,rgba(232,223,214,.94) 48%,#f7f3ee 72%,#eee7df 100%)}
.hero-copy:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 46%,rgba(255,255,255,.58),transparent 48%);pointer-events:none}.hero-content{position:relative;z-index:5;max-width:535px;margin-left:2.5vw}.hero-copy h1{font-size:clamp(2.25rem,3.15vw,3.55rem);line-height:.91;letter-spacing:-.045em;font-weight:500;margin:0}.kicker{color:var(--red);text-transform:uppercase;letter-spacing:.18em;font:700 .72rem Arial,sans-serif;margin:0 0 1rem}.tag{font-size:1.33rem;color:var(--red);margin:1.2rem 0}.intro{max-width:445px;border-top:1px solid var(--line);padding-top:1.15rem;font-size:1.06rem;line-height:1.55}.button{display:inline-flex;align-items:center;gap:.65rem;background:transparent;color:var(--ink);padding:.9rem 1.25rem;text-transform:uppercase;letter-spacing:.06em;font:700 .75rem Arial,sans-serif;margin-top:.65rem;border:1px solid rgba(20,20,20,.48);cursor:pointer}.button span{color:var(--red);font-size:1.05rem}.button:hover{background:var(--red);color:#fff;border-color:var(--red)}.button:hover span{color:#fff}
.cards{background:var(--dark);display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:14px 2vw 18px}.card{height:255px;position:relative;overflow:hidden;background:#2a2a2a}.card img{height:100%;object-fit:cover;transition:transform .5s ease}.card:hover img{transform:scale(1.035)}.card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 42%,rgba(0,0,0,.79))}.card span{position:absolute;z-index:2;left:18px;bottom:16px;color:#fff;font-size:1.38rem}.card b{color:var(--red);font-family:Arial,sans-serif;font-weight:400;margin-left:.25rem}
.page-header{position:relative;background:#171717;color:#fff}.page-header header{position:relative}.page-hero{padding:108px 8vw 76px;background:radial-gradient(circle at 75% 35%,rgba(199,43,34,.2),transparent 30%),linear-gradient(135deg,#171717,#2b2b2b 52%,#171717);color:#fff}.page-hero h1{font-weight:500;font-size:clamp(2.1rem,3.5vw,3.8rem);line-height:.95;margin:.2rem 0 1rem}.page-hero p{max-width:680px;font-size:1.08rem;line-height:1.65}.back-link{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.3rem;color:var(--red);font:700 .76rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}.back-link:hover{transform:translateX(-3px)}
.about-page{padding:82px 8vw 104px;max-width:1120px;margin:0 auto}.about-page p{font-size:1.1rem;line-height:1.78;color:#302b27;margin:0 0 1.4rem}.about-page p:last-child{margin-bottom:0}
.gallery-page{padding:68px 5vw 90px;max-width:1320px;margin:0 auto}.gallery-note{max-width:680px;line-height:1.6;margin:0 0 2rem;color:#514a44}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-grid img{height:320px;object-fit:cover;background:#ddd}.gallery-grid .feature{grid-column:span 2;height:480px;object-fit:contain;background:#e8e0d8;padding:18px}.placeholder{height:320px;border:1px dashed #aaa097;background:linear-gradient(135deg,#eee8e1,#ddd4ca);display:grid;place-items:center;color:#80766d;font:700 .72rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}.mural-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.mural-grid img{height:310px;object-fit:cover}.mural-grid .wide{grid-column:span 2}.mural-grid .tall{grid-row:span 2;height:638px}.mural-grid .placeholder{height:310px}.mural-grid .placeholder.tall{height:638px}
.commission-content{padding:82px 8vw 96px;display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start}.commission-content h2,.contact-content h2{font-weight:500;font-size:clamp(1.85rem,2.8vw,3.15rem);line-height:.98;margin:.2rem 0 1rem}.commission-content p{font-size:1.08rem;line-height:1.7}.commission-list{border-top:1px solid var(--line);margin-top:1.5rem}.commission-list div{padding:1rem 0;border-bottom:1px solid var(--line)}.contact-content{padding:90px 8vw 105px;max-width:980px;margin:0 auto}.contact-content p{font-size:1.08rem;line-height:1.65;max-width:650px}form{display:grid;gap:1rem;margin-top:2rem;max-width:620px}label{display:grid;gap:.45rem;font:700 .73rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}input,textarea,select{padding:.9rem;border:1px solid #b8aea6;background:#fffdf9;font:1rem Georgia,serif}
footer{background:#080808;color:#bfb8b0;display:flex;justify-content:center;gap:1.6rem;padding:31px 4vw;font:12px Arial,sans-serif;letter-spacing:.03em}footer .domain{color:#ddd}
@media(max-width:900px){header{position:relative;background:#171717;color:#fff;justify-content:center;padding:0 3vw}nav{gap:1.25rem;font-size:.95rem;flex-wrap:wrap;justify-content:center}.hero{grid-template-columns:1fr}.hero-image{min-height:610px}.portrait-orbit{width:235px;height:235px}.hero-copy{min-height:560px;padding:110px 8vw 116px}.hero-content{margin-left:14vw}.hero-copy h1{font-size:2.85rem}.cards{grid-template-columns:1fr 1fr}.gallery-grid,.mural-grid{grid-template-columns:1fr 1fr}.commission-content{grid-template-columns:1fr}}
@media(max-width:560px){nav{gap:.9rem;font-size:.82rem}.hero-image{min-height:555px}.portrait-orbit{width:190px;height:190px}.berlin{left:4%;top:15%}.munich{right:4%;top:15%}.sf{left:4%;bottom:15%}.pacifica{right:4%;bottom:15%}.place{transform:scale(.88)}.hero-copy{min-height:520px;padding:105px 6vw 110px}.hero-content{margin-left:2vw}.hero-copy h1{font-size:2.35rem}.cards{grid-template-columns:1fr}.card{height:295px}.gallery-grid,.mural-grid{grid-template-columns:1fr}.gallery-grid .feature,.mural-grid .wide{grid-column:auto}.gallery-grid .feature{height:380px}.mural-grid .tall{grid-row:auto;height:310px}.about-page,.commission-content,.contact-content{padding:70px 6vw}}

.commission-process{
  display:grid;
  gap:0;
  border-top:1px solid var(--line);
  margin-top:1.6rem;
}
.process-step{
  display:grid;
  grid-template-columns:62px 1fr;
  gap:1rem;
  padding:1.35rem 0;
  border-bottom:1px solid var(--line);
}
.process-number{
  color:var(--red);
  font:700 .82rem Arial,sans-serif;
  letter-spacing:.12em;
  padding-top:.2rem;
}
.process-step h3{
  margin:0 0 .45rem;
  font-size:1.18rem;
  font-weight:700;
}
.process-step p{
  margin:0;
  font-size:1rem;
  line-height:1.62;
  color:#403933;
}
@media(max-width:560px){
  .process-step{grid-template-columns:48px 1fr}
}


/* Version 10 refinements */
.about-page{
  max-width:780px;
  margin-left:auto;
  margin-right:8vw;
  padding-left:0;
}

.page-hero .kicker{
  color:#fff;
}

@media(max-width:900px){
  .about-page{
    margin-left:auto;
    margin-right:auto;
    max-width:760px;
    padding-left:7vw;
    padding-right:7vw;
  }
}


/* Version 11 refinements */
.hero-copy{
  padding-left:calc(8.5vw + 3.5cm);
}

.home-chart{
  position:relative;
  height:92px;
  overflow:hidden;
  background:var(--paper);
  border-top:1px solid var(--line);
}
.home-chart svg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.home-chart path{
  fill:none;
  stroke:rgba(38,38,38,.22);
  stroke-width:1.1;
  stroke-dasharray:5 8;
}
.home-chart path.red{
  stroke:rgba(200,43,34,.55);
  stroke-dasharray:3 7;
}
.home-chart circle{
  fill:var(--paper);
  stroke:rgba(200,43,34,.7);
  stroke-width:1.4;
}

.about-layout{
  position:relative;
  display:grid;
  grid-template-columns:minmax(280px, .8fr) minmax(420px, 1.2fr);
  gap:7vw;
  padding:88px 8vw 100px;
  overflow:hidden;
}
.about-art{
  align-self:start;
  position:sticky;
  top:40px;
}
.about-art img{
  width:100%;
  max-height:680px;
  object-fit:contain;
  background:#1a1a1a;
}
.about-page{
  position:relative;
  z-index:2;
  margin:0;
  max-width:760px;
  padding:0;
}
.map-background{position:absolute;z-index:0;inset:0;pointer-events:none;opacity:.58}
.map-background path{fill:none;stroke:rgba(30,30,30,.34);stroke-width:1.25;stroke-dasharray:6 8}
.map-background path.red{stroke:rgba(200,43,34,.62);stroke-dasharray:4 7}
.map-background circle{display:none}

.page-main{
  position:relative;
  overflow:hidden;
}
.page-main > *:not(.map-background){
  position:relative;
  z-index:1;
}

.work-page{
  padding:82px 5vw 100px;
}
.work-grid-large{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.work-grid-large .card{
  height:360px;
}

.footer-instagram{
  margin-left:auto;
  font-style:normal;
  letter-spacing:.02em;
}
footer{
  gap:1.5rem;
  align-items:center;
}
footer .footer-instagram{
  margin-left:auto;
}

@media(max-width:1100px){
  .hero-copy{padding-left:10vw}
}
@media(max-width:900px){
  .about-layout{grid-template-columns:1fr;padding:72px 7vw}
  .about-art{position:relative;top:auto;max-width:520px}
  .work-grid-large{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .hero-copy{padding-left:7vw}
  .work-grid-large{grid-template-columns:1fr}
  .work-grid-large .card{height:300px}
}

.fixed-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.fixed-gallery .gallery-item{
  margin:0;
  background:#e5dfd8;
  min-height:360px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.fixed-gallery .gallery-item img{
  width:100%;
  height:100%;
  max-height:620px;
  object-fit:contain;
}
@media(max-width:700px){
  .fixed-gallery{grid-template-columns:1fr}
  .fixed-gallery .gallery-item{min-height:280px}
}


.update-banner{
  position:relative;
  z-index:40;
  width:100%;
  padding:8px 4vw;
  text-align:center;
  background:#1a1a1a;
  color:rgba(255,255,255,.82);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.08);
  font:600 11px Arial,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.pelican-full img{
  object-fit:contain !important;
  background:#e7e0d9;
}


/* Final image-fit cleanup */

/* Homepage category tiles: show the entire artwork instead of cropping it. */
.home-page .card{
  background:#111;
}
.home-page .card img{
  object-fit:contain !important;
  object-position:center !important;
  background:#111;
}

/* Work overview uses the same complete-image treatment. */
.work-page .card{
  background:#111;
}
.work-page .card img{
  object-fit:contain !important;
  object-position:center !important;
  background:#111;
}

/* About sculpture: remove the dark side bands. */
.about-art{
  background:var(--paper);
}
.about-art img{
  object-fit:contain !important;
  background:var(--paper) !important;
}

/* Portfolio pages: keep the whole artwork visible. */
.fixed-gallery .gallery-item{
  background:var(--paper);
}
.fixed-gallery .gallery-item img{
  object-fit:contain !important;
  object-position:center !important;
  background:var(--paper);
}

/* Pelican specifically: never crop it. */
.pelican-full{
  background:var(--paper) !important;
}
.pelican-full img{
  width:100%;
  height:auto !important;
  max-height:680px;
  object-fit:contain !important;
  object-position:center !important;
  background:var(--paper) !important;
}

/* Cleaner four-image mural layout. */
.mural-clean-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media(max-width:700px){
  .mural-clean-grid{grid-template-columns:1fr}
}
