:root{--paper:#f4efe6;--ink:#201e1b;--muted:#716b62;--line:rgba(32,30,27,.18);--gold:#9b7a3f;--night:#17222d;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:18px clamp(20px,5vw,68px);background:rgba(244,239,230,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.brand{font:18px Georgia,serif;letter-spacing:.18em}.nav{display:flex;gap:24px;font-size:12px;letter-spacing:.14em}.nav a{color:var(--muted)}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}main{flex:1}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.hero{min-height:70vh;display:grid;grid-template-columns:1.05fr .95fr;border-bottom:1px solid var(--line)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(20px,6vw,90px)}.eyebrow{margin:0 0 18px;color:var(--gold);font-size:11px;letter-spacing:.2em;text-transform:uppercase}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.04}h1{font-size:clamp(54px,9vw,116px);margin:0}.hero-copy p{max-width:520px;color:var(--muted);font-size:19px}.hero-media{min-height:520px;background:#d9d0c1}.hero-media img{object-position:center}.section{padding:clamp(60px,9vw,120px) 0}.intro{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(30px,8vw,120px);align-items:start}.intro h2{font-size:clamp(38px,6vw,72px);margin:0}.intro p{font-size:clamp(18px,2vw,24px);color:var(--muted);margin-top:0}.doors{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.door{min-height:330px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.door:nth-child(odd){border-right:1px solid var(--line)}.door:nth-last-child(-n+2){border-bottom:0}.door:after{content:"";position:absolute;width:220px;height:220px;border:1px solid currentColor;opacity:.13;border-radius:50%;right:-55px;bottom:-95px}.door:hover{background:#fffaf2}.door small,.meta{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.door h2{font-size:clamp(36px,5vw,64px);margin:28px 0 8px}.door span{font-size:12px;letter-spacing:.16em}.page-head{padding:clamp(60px,9vw,120px) 0 50px;border-bottom:1px solid var(--line)}.page-head h1{font-size:clamp(58px,10vw,124px)}.page-head .lead{max-width:720px;color:var(--muted);font-size:clamp(19px,2.2vw,28px)}.feature{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,6vw,80px);align-items:center}.feature.reverse{grid-template-columns:.85fr 1.15fr}.media{min-height:540px;background:#d8cfc1}.media.landscape{min-height:420px}.copy h2{font-size:clamp(38px,5vw,68px);margin:0 0 20px}.copy p{color:var(--muted);font-size:18px}.button{display:inline-block;margin-top:20px;padding:13px 18px;border:1px solid var(--ink);font-size:11px;letter-spacing:.17em;text-transform:uppercase}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:rgba(255,255,255,.2)}.card-media{aspect-ratio:4/5;background:#d8cfc1}.card-body{padding:22px}.card h2,.card h3{margin:0 0 10px;font-size:28px}.card p{color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.art-card .card-media{aspect-ratio:4/3}.details{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.detail{padding:20px;background:var(--paper)}.detail strong{display:block;margin-top:5px;font-weight:400}.photo-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.photo-grid>div{min-height:620px;background:#d8cfc1}.photo-grid .stack{display:grid;grid-template-rows:1fr 1fr;gap:18px;min-height:620px}.empty{padding:55px;border:1px solid var(--line);color:var(--muted);max-width:760px}.footer{display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap;padding:30px clamp(20px,5vw,68px);border-top:1px solid var(--line);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.footer-links{display:flex;gap:18px}.note{border-left:2px solid var(--gold);padding-left:18px;color:var(--muted)}@media(max-width:800px){.topbar{align-items:flex-start;gap:14px}.nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.hero,.feature,.feature.reverse,.intro{grid-template-columns:1fr}.hero{min-height:auto}.hero-copy{padding:64px 20px}.hero-media{min-height:420px}.doors,.gallery-grid,.grid{grid-template-columns:1fr}.door,.door:nth-child(odd){border-right:0;border-bottom:1px solid var(--line)}.door:nth-last-child(2){border-bottom:1px solid var(--line)}.details{grid-template-columns:1fr 1fr}.photo-grid{grid-template-columns:1fr}.photo-grid>div,.photo-grid .stack{min-height:440px}.media{min-height:420px}}@media(max-width:520px){.brand{font-size:14px}.nav{font-size:10px}.topbar{padding:15px}.wrap{width:min(100% - 28px,var(--max))}.doors{grid-template-columns:1fr}.door{min-height:240px;padding:25px}.details{grid-template-columns:1fr}.footer{padding:25px 15px}.hero-media{min-height:340px}}
:root .language-switch{display:inline-flex;align-items:center;gap:6px;margin-left:6px}:root .language-switch button{border:0;background:none;padding:0;color:var(--muted);font:inherit;letter-spacing:inherit;cursor:pointer}:root .language-switch button[aria-pressed="true"]{color:var(--ink);text-decoration:underline;text-underline-offset:4px}:root .language-switch span{color:var(--line)}
:root .artwork-nav{width:min(var(--max),calc(100% - 40px));margin:0 auto clamp(60px,9vw,120px);padding-top:28px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;font-size:11px;letter-spacing:.14em;text-transform:uppercase}:root .artwork-nav a:last-child{text-align:right}:root .artwork-nav-gallery{padding:11px 16px;border:1px solid var(--ink);text-align:center}:root .artwork-nav a:hover{color:var(--gold)}@media(max-width:640px){:root .artwork-nav{grid-template-columns:1fr 1fr}:root .artwork-nav-gallery{grid-column:1/-1;grid-row:1}:root .artwork-nav a:last-child{text-align:right}}
:root .art-card .card-media{aspect-ratio:1/1;padding:18px;background:#e3dbcf}:root .art-card .card-media img{object-fit:contain}:root .artwork-main{min-height:500px;max-height:900px;background:#e3dbcf;display:flex;align-items:center;justify-content:center}:root .artwork-main img{width:100%;height:auto;max-height:900px;object-fit:contain}:root .detail-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}:root .detail-gallery img{aspect-ratio:3/4;object-fit:cover}@media(max-width:700px){:root .detail-gallery{grid-template-columns:1fr}:root .artwork-main{min-height:320px}}
:root .detail-gallery-three img:last-child{grid-column:1/-1;justify-self:center;width:min(50%,620px)}@media(max-width:700px){:root .detail-gallery-three img:last-child{grid-column:auto;width:100%}}
:root .photo-credit{margin-top:10px;text-align:right}

/* HOME — approved concept, technical brief 01 */
.home-hero{min-height:calc(100vh - 65px);grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}
.home-hero-copy{justify-content:center;padding-top:clamp(70px,9vw,130px);padding-bottom:clamp(70px,9vw,130px)}
.home-title{font-size:clamp(44px,6.2vw,88px);line-height:.9;letter-spacing:.035em;margin:0}
.home-title span{display:block}
.home-title span+span{margin-top:.28em}
.home-studio-description{max-width:430px;margin:34px 0 0;color:var(--ink);font-size:clamp(15px,1.45vw,19px);letter-spacing:.025em}
.home-welcome{max-width:520px;margin:0;color:var(--muted);font-family:Georgia,serif;font-size:clamp(24px,2.65vw,38px);line-height:1.35}
.home-hero-media{min-height:calc(100vh - 65px);padding:clamp(28px,4.2vw,68px);display:flex;align-items:center;justify-content:center;background:#e1d8ca}
.home-mandala-image{width:100%;height:100%;max-height:calc(100vh - 121px);object-fit:contain}
.home-photo-section{min-height:calc(100vh - 65px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);border-bottom:1px solid var(--line)}
.home-photo-frame{padding:clamp(38px,5vw,82px);display:flex;align-items:center;background:#ebe4d8}
.home-photo-frame img{width:100%;height:auto;object-fit:contain}
.home-welcome-panel{padding:clamp(54px,7vw,110px);display:flex;align-items:center}
.home-directions{padding-top:clamp(92px,11vw,160px);padding-bottom:clamp(96px,12vw,180px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,2.5vw,34px);max-width:1180px}
.home-direction{display:block;width:100%;background:transparent}
.home-direction img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
@media(max-width:800px){.home-hero{grid-template-columns:1fr}.home-hero-copy{min-height:62vh;padding-top:72px;padding-bottom:72px}.home-hero-media{min-height:72vh}.home-photo-section{min-height:auto;grid-template-columns:1fr}.home-welcome-panel{order:1;min-height:52vh;padding:clamp(54px,9vw,84px)}.home-photo-frame{order:2;padding:clamp(28px,7vw,58px)}.home-directions{grid-template-columns:1fr;gap:18px}}
@media(max-width:520px){.home-title{font-size:clamp(42px,15vw,66px)}.home-studio-description{margin-top:28px;font-size:15px}.home-welcome{font-size:26px}.home-hero-media{min-height:58vh;padding:24px}.home-photo-frame{padding:24px}.home-welcome-panel{min-height:46vh;padding:48px 24px}}

/* CONTACTS — technical brief */
.contact-page{padding-bottom:clamp(90px,12vw,170px)}
.contact-intro{padding:clamp(76px,10vw,138px) 0 clamp(64px,8vw,110px)}
.contact-intro h1{font-size:clamp(58px,9vw,118px);margin:0}
.contact-lead{max-width:820px;margin:clamp(34px,4.5vw,62px) 0 0;color:var(--muted);font-family:Georgia,serif;font-size:clamp(21px,2.25vw,31px);line-height:1.45}
.contact-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(64px,10vw,150px);align-items:start}
.contact-details{padding-top:3px}
.contact-label,.contact-field>span{display:block;margin:0 0 12px;color:var(--muted);font-size:11px;letter-spacing:.18em}
.contact-email{display:inline-block;font-family:Georgia,serif;font-size:clamp(24px,2.5vw,34px);line-height:1.25;border-bottom:1px solid var(--line);padding-bottom:8px}
.contact-email:hover{border-color:var(--ink)}
.contact-projects{margin-top:clamp(68px,8vw,106px)}
.contact-projects>h2{margin:0 0 38px;font:11px/1.4 Inter,Arial,sans-serif;letter-spacing:.18em;color:var(--muted)}
.contact-project-group+.contact-project-group{margin-top:32px}
.contact-project-group h3{display:flex;align-items:center;gap:10px;margin:0;font:24px/1.25 Georgia,serif}
.contact-project-group h3 span{font:18px/1 Inter,Arial,sans-serif}
.contact-project-links{display:grid;gap:13px;margin-top:17px}
.contact-project-link{width:max-content;max-width:100%;display:flex;align-items:center;gap:11px;color:var(--muted);font-size:13px}
.contact-project-link[hidden]{display:none}
.contact-project-link:hover{color:var(--ink)}
.contact-platform-icon{width:25px;height:25px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;flex:0 0 25px;font-size:8px;font-weight:600;letter-spacing:0}
.contact-platform-icon-facebook{font-family:Georgia,serif;font-size:17px}
.contact-platform-icon-youtube{font-size:9px;padding-left:1px}
.contact-form{position:relative;display:grid;gap:34px}
.contact-field{display:block}
.contact-field input,.contact-field textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font:17px/1.5 Inter,Arial,sans-serif;padding:8px 0 14px;resize:vertical}
.contact-field textarea{min-height:150px}
.contact-field input:focus,.contact-field textarea:focus{outline:0;border-color:var(--ink)}
.contact-submit{justify-self:start;border:0;border-bottom:1px solid var(--ink);background:transparent;color:var(--ink);font:12px/1.4 Inter,Arial,sans-serif;letter-spacing:.18em;padding:8px 0;cursor:pointer}
.contact-submit:hover{color:var(--gold);border-color:var(--gold)}
.contact-form-note,.contact-form-status{max-width:470px;margin:0;color:var(--muted);font-size:13px}
.contact-form-status:empty{display:none}
.contact-honeypot{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.contact-honeypot *{width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:800px){.contact-layout{grid-template-columns:1fr;gap:72px}.contact-intro{padding-top:72px}.contact-email{font-size:27px}.contact-projects{margin-top:68px}.contact-form{gap:30px}}
@media(max-width:520px){.contact-page{width:min(calc(100% - 32px),var(--max))}.contact-intro h1{font-size:clamp(44px,13vw,58px)}.contact-lead{font-size:21px}.contact-layout{gap:62px}.contact-email{font-size:23px;overflow-wrap:anywhere}}

/* ABOUT + CV — approved author texts */
.about-page{padding-bottom:clamp(90px,12vw,170px)}
.about-heading{padding:clamp(76px,10vw,138px) 0 clamp(54px,7vw,92px)}
.about-heading h1{font-size:clamp(64px,10vw,126px);letter-spacing:.02em}
.about-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:clamp(52px,9vw,132px);align-items:start}
.about-portrait{position:sticky;top:112px;margin:0}
.about-portrait img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:center}
.about-monologue{max-width:720px}
.about-monologue p{margin:0 0 1.45em;color:var(--ink);font-family:Georgia,serif;font-size:clamp(18px,1.5vw,21px);line-height:1.72}
.about-cv-entry{margin-top:clamp(92px,12vw,170px);padding-top:clamp(50px,7vw,84px);border-top:1px solid var(--line)}
.about-cv-entry h2{margin:0;font-size:clamp(58px,9vw,112px)}
.about-cv-link{display:inline-block;margin-top:34px;padding-bottom:8px;border-bottom:1px solid var(--ink);font-size:12px;letter-spacing:.18em}
.about-cv-link:hover{color:var(--gold);border-color:var(--gold)}

.cv-page{padding-bottom:clamp(90px,12vw,170px)}
.cv-heading{max-width:1040px;padding:clamp(76px,10vw,138px) 0 clamp(58px,8vw,104px)}
.cv-heading h1{font-size:clamp(64px,10vw,126px);letter-spacing:.02em}
.cv-subtitle{max-width:940px;margin:34px 0 0;font-family:Georgia,serif;font-size:clamp(21px,2.25vw,31px);line-height:1.45}
.cv-key-lines{max-width:880px;margin-top:38px;padding-top:30px;border-top:1px solid var(--line)}
.cv-key-lines p{margin:0 0 8px;color:var(--muted);font-size:clamp(15px,1.4vw,18px)}
.cv-toc{position:sticky;top:65px;z-index:10;display:flex;gap:14px 28px;flex-wrap:wrap;padding:20px 0;background:rgba(244,239,230,.96);border-top:1px solid var(--line);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.cv-toc a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cv-toc a:hover{color:var(--ink)}
.cv-sections{margin-top:clamp(54px,7vw,92px)}
.cv-accordion{scroll-margin-top:140px;border-top:1px solid var(--line)}
.cv-accordion:last-child{border-bottom:1px solid var(--line)}
.cv-accordion summary{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:22px 0;cursor:pointer;list-style:none;font-family:Georgia,serif;font-size:clamp(25px,3vw,39px);line-height:1.2}
.cv-accordion summary::-webkit-details-marker{display:none}
.cv-accordion-indicator{position:relative;width:22px;height:22px;flex:0 0 22px}
.cv-accordion-indicator:before,.cv-accordion-indicator:after{content:"";position:absolute;left:1px;top:10px;width:20px;height:1px;background:var(--ink)}
.cv-accordion-indicator:after{transform:rotate(90deg);transition:transform .18s ease}
.cv-accordion[open] .cv-accordion-indicator:after{transform:rotate(0)}
.cv-section-content{max-width:850px;padding:8px 0 clamp(54px,7vw,88px)}
.cv-section-content h3{margin:46px 0 18px;font:11px/1.5 Inter,Arial,sans-serif;letter-spacing:.17em;color:var(--muted)}
.cv-section-content h3:first-child{margin-top:16px}
.cv-section-content p{margin:0 0 15px;font-size:17px;line-height:1.7}
.cv-section-content ul{margin:0 0 22px;padding-left:22px}
.cv-section-content li{margin:0 0 7px;padding-left:4px;line-height:1.65}
.cv-section-content .cv-meta-line{color:var(--muted);font-size:13px;letter-spacing:.05em}
.cv-footer-nav{display:flex;justify-content:space-between;gap:30px;margin-top:clamp(68px,9vw,120px);padding-top:28px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.14em}
.cv-footer-nav a:hover{color:var(--gold)}
@media(max-width:800px){
  .about-layout{grid-template-columns:1fr;gap:52px}
  .about-portrait{position:static;width:min(100%,560px)}
  .about-monologue{max-width:680px}
  .cv-toc{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .cv-toc::-webkit-scrollbar{display:none}
  .cv-toc a{white-space:nowrap}
}
@media(max-width:520px){
  .about-page,.cv-page{width:min(calc(100% - 32px),var(--max))}
  .about-heading{padding-top:72px}
  .about-heading h1,.cv-heading h1{font-size:clamp(48px,16vw,68px)}
  .about-monologue p{font-size:18px;line-height:1.68}
  .cv-subtitle{font-size:21px}
  .cv-toc{top:58px;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}
  .cv-accordion summary{min-height:76px;font-size:25px}
  .cv-section-content p{font-size:16px}
  .cv-footer-nav{flex-direction:column}
}

/* RESEARCH — field notes and verified cultural context */
.research-page{padding-bottom:clamp(90px,12vw,170px)}
.research-index-head{padding:clamp(76px,10vw,138px) 0 clamp(60px,8vw,105px);border-bottom:1px solid var(--line)}
.research-index-head h1{font-size:clamp(62px,10vw,126px);margin:0}
.research-index-head>p:last-child{max-width:760px;margin:34px 0 0;color:var(--muted);font-family:Georgia,serif;font-size:clamp(20px,2.2vw,30px);line-height:1.45}
.research-feature{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:clamp(48px,8vw,120px);align-items:center;padding-top:clamp(72px,10vw,140px)}
.research-feature-media{display:block;background:#d8cfc1;overflow:hidden}
.research-feature-media img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;transition:transform .45s ease}
.research-feature-media:hover img{transform:scale(1.015)}
.research-feature-copy h2{margin:0;font-size:clamp(54px,8vw,104px)}
.research-feature-copy>p:not(.eyebrow){max-width:640px;margin:30px 0 0;color:var(--muted);font-family:Georgia,serif;font-size:clamp(19px,2vw,27px);line-height:1.5}
.research-read-link{display:inline-block;margin-top:36px;padding-bottom:7px;border-bottom:1px solid var(--ink);font-size:11px;letter-spacing:.17em}
.research-read-link:hover{color:var(--gold);border-color:var(--gold)}

.research-article-page{padding-bottom:clamp(90px,12vw,170px)}
.research-article-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.7fr);gap:clamp(48px,8vw,120px);align-items:center;padding-top:clamp(70px,9vw,125px);padding-bottom:clamp(72px,10vw,145px)}
.research-article-heading h1{margin:0;font-size:clamp(72px,12vw,154px);letter-spacing:-.025em}
.research-article-lead{max-width:680px;margin:34px 0 0;color:var(--muted);font-family:Georgia,serif;font-size:clamp(21px,2.3vw,31px);line-height:1.48}
.research-article-cover{margin:0;background:#d8cfc1}
.research-article-cover img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.research-article-body{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:clamp(52px,9vw,140px);padding-top:clamp(70px,9vw,125px);border-top:1px solid var(--line)}
.research-article-meta{align-self:start;position:sticky;top:110px}
.research-article-meta p{margin:0;padding:18px 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.55}
.research-article-meta p:last-child{border-bottom:1px solid var(--line)}
.research-article-meta span{display:block;margin-bottom:6px;color:var(--gold);font-size:10px;letter-spacing:.16em}
.research-article-meta b{font-weight:400}
.research-article-copy{max-width:800px}
.research-article-copy p{margin:0 0 1.55em;font-family:Georgia,serif;font-size:clamp(19px,1.8vw,25px);line-height:1.72}
.research-photo-essay{padding-top:clamp(100px,13vw,190px)}
.research-section-heading{margin-bottom:clamp(46px,6vw,82px)}
.research-section-heading h2{margin:0;font-size:clamp(54px,8vw,100px)}
.research-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.research-photo-grid figure{margin:0;background:#d8cfc1;overflow:hidden}
.research-photo-grid img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.research-sources{margin-top:clamp(90px,12vw,160px);padding-top:38px;border-top:1px solid var(--line)}
.research-sources h2{margin:0;font:11px/1.4 Inter,Arial,sans-serif;letter-spacing:.18em;color:var(--gold)}
.research-sources>p{max-width:780px;margin:24px 0 0;color:var(--muted);font-size:14px}
.research-source-links{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:25px}
.research-source-links a{font-size:12px;border-bottom:1px solid var(--line)}
.research-source-links a:hover{color:var(--gold);border-color:var(--gold)}
.research-back{margin-top:clamp(70px,9vw,120px);padding-top:30px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.15em}
.research-back a:hover{color:var(--gold)}
@media(max-width:900px){.research-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.research-feature,.research-article-hero,.research-article-body{grid-template-columns:1fr}.research-feature-media,.research-article-cover{width:min(100%,620px)}.research-article-meta{position:static;display:grid;grid-template-columns:1fr 1fr}.research-article-meta p:nth-child(2){border-left:1px solid var(--line);padding-left:18px}.research-article-meta p:nth-child(4){border-left:1px solid var(--line);padding-left:18px}.research-article-copy{max-width:760px}}
@media(max-width:520px){.research-page,.research-article-page .wrap{width:min(calc(100% - 32px),var(--max))}.research-index-head{padding-top:72px}.research-index-head h1{font-size:clamp(48px,16vw,68px)}.research-feature{padding-top:64px;gap:40px}.research-article-hero{padding-top:62px;padding-bottom:82px;gap:42px}.research-article-heading h1{font-size:clamp(64px,23vw,96px)}.research-article-lead{font-size:21px}.research-article-meta{grid-template-columns:1fr}.research-article-meta p:nth-child(2),.research-article-meta p:nth-child(4){border-left:0;padding-left:0}.research-article-copy p{font-size:18px;line-height:1.68}.research-photo-grid{grid-template-columns:1fr;gap:14px}.research-source-links{display:grid}.research-section-heading h2{font-size:52px}}

/* DANCE — live photographic direction */
.dance-page{overflow:hidden}
.dance-hero{position:relative;width:100%;min-height:calc(100vh - 58px);background:#0b0b0d}
.dance-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.dance-hero-copy{position:relative;z-index:1;min-height:calc(100vh - 58px);display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(34px,6vw,88px);color:#fff}
.dance-hero-copy h1{margin:0;font-size:clamp(72px,13vw,184px);line-height:.82;letter-spacing:-.035em;text-shadow:0 2px 30px rgba(0,0,0,.28)}
.dance-epigraph-space{width:min(460px,64vw);height:clamp(54px,8vh,100px);margin-top:28px;border-top:1px solid rgba(255,255,255,.46)}
.dance-method{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(52px,8vw,116px);align-items:center;padding-top:clamp(90px,11vw,160px);padding-bottom:clamp(90px,11vw,160px)}
.dance-method-no-media{grid-template-columns:1fr}
.dance-method-no-media .dance-method-copy{width:min(820px,100%);margin:0 auto}
.dance-method-media{margin:0;min-height:660px;background:#d8cfc1}
.dance-method-media img{width:100%;height:100%;min-height:660px;object-fit:cover;object-position:center}
.dance-method-copy h2,.dance-section-heading h2{margin:0;font-size:clamp(44px,6vw,78px);line-height:1}
.dance-method-text{margin-top:38px}
.dance-method-text p{margin:0 0 1.25em;font-family:Georgia,serif;font-size:clamp(18px,1.55vw,22px);line-height:1.66}
.dance-text-link{display:inline-block;margin-top:24px;padding-bottom:7px;border-bottom:1px solid var(--ink);font-size:11px;letter-spacing:.17em;text-transform:uppercase}
.dance-text-link:hover{color:var(--gold);border-color:var(--gold)}
.dance-section{padding-top:clamp(84px,10vw,150px);padding-bottom:clamp(84px,10vw,150px)}
.dance-section-heading{margin-bottom:clamp(44px,6vw,78px)}
.dance-format-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.dance-format-card,.dance-direction-card{min-height:240px;display:flex;flex-direction:column;justify-content:space-between;padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.dance-format-card span,.dance-direction-card span{font-size:10px;letter-spacing:.16em;color:var(--muted)}
.dance-format-card h3,.dance-direction-card h3{margin:48px 0 0;font-size:clamp(24px,2.35vw,34px);line-height:1.12}
.dance-gallery-section{padding-left:0;padding-right:0}
.dance-gallery-grid{width:min(1600px,100%);margin:auto;display:grid;grid-template-columns:repeat(12,1fr);gap:16px;padding:0 clamp(16px,3vw,46px)}
.dance-gallery-item{grid-column:span 5;margin:0;min-height:520px;background:#d8cfc1;overflow:hidden}
.dance-gallery-item.dance-gallery-wide{grid-column:span 7}
.dance-gallery-item.dance-gallery-full{grid-column:1/-1}
.dance-gallery-item img{width:100%;height:100%;object-fit:cover;object-position:center}
.dance-gallery-single{display:block}
.dance-gallery-single .dance-gallery-item,.dance-gallery-single .dance-gallery-item.dance-gallery-wide{width:min(100%,1100px);min-height:0;margin:0;aspect-ratio:auto}
.dance-gallery-single .dance-gallery-item img{width:100%;height:auto;object-fit:contain;display:block}
.dance-video-placeholder{min-height:310px;display:flex;align-items:flex-end;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:13px;letter-spacing:.07em}
.dance-testimonials-space{min-height:330px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dance-directions-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.dance-direction-card{min-height:290px}
@media(max-width:980px){
  .dance-method{grid-template-columns:1fr;gap:52px}
  .dance-method-media,.dance-method-media img{min-height:560px}
  .dance-format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dance-format-card:last-child{grid-column:span 2}
  .dance-directions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dance-gallery-item,.dance-gallery-item.dance-gallery-wide{grid-column:span 6;min-height:430px}
}
@media(max-width:620px){
  .dance-hero{min-height:74svh}
  .dance-hero-copy{min-height:74svh;padding:28px 16px}
  .dance-hero-copy h1{font-size:clamp(68px,23vw,96px)}
  .dance-epigraph-space{height:58px;margin-top:20px}
  .dance-method{width:min(calc(100% - 32px),var(--max));padding-top:76px;padding-bottom:82px}
  .dance-method-media,.dance-method-media img{min-height:0;aspect-ratio:7/5}
  .dance-method-copy h2,.dance-section-heading h2{font-size:clamp(42px,13vw,58px)}
  .dance-method-text{margin-top:30px}
  .dance-section{width:min(calc(100% - 32px),var(--max));padding-top:76px;padding-bottom:82px}
  .dance-format-grid,.dance-directions-grid{grid-template-columns:1fr}
  .dance-format-card:last-child{grid-column:auto}
  .dance-format-card,.dance-direction-card{min-height:190px}
  .dance-gallery-section{width:100%}
  .dance-gallery-section .dance-section-heading{width:calc(100% - 32px);margin-left:auto;margin-right:auto}
  .dance-gallery-grid{display:block;padding:0 16px}
  .dance-gallery-item,.dance-gallery-item.dance-gallery-wide{min-height:0;aspect-ratio:4/3;margin-bottom:16px}
  .dance-video-placeholder{min-height:220px}
  .dance-testimonials-space{min-height:250px}
}

/* DANCE v37 — one continuous story */
.dance-intro-photo{width:100%;height:min(82vh,920px);min-height:560px;margin:0;background:#0b0b0d;overflow:hidden}
.dance-intro-photo .dance-hero-image{position:static;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.dance-method-story{padding-top:clamp(84px,10vw,148px);padding-bottom:clamp(84px,10vw,148px)}
.dance-method-story-copy{width:min(900px,100%);margin:0 auto}
.dance-method-story-copy h1{margin:0;font-size:clamp(54px,8vw,106px);line-height:.95;letter-spacing:-.025em}
.dance-method-story .dance-method-text{width:min(780px,100%);margin-top:clamp(38px,5vw,64px)}
.dance-intro-video{width:min(1120px,100%);margin:clamp(58px,8vw,110px) auto 0;background:#111}
.dance-intro-video video{display:block;width:100%;height:auto;max-height:82vh;background:#111}
.dance-formats-story{padding-top:clamp(78px,9vw,138px)}
.dance-format-stories{border-top:1px solid var(--line)}
.dance-format-story{min-height:250px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;border-bottom:1px solid var(--line);padding:clamp(38px,5vw,72px) 0}
.dance-format-story-copy{grid-column:1;max-width:520px}
.dance-format-story:nth-child(even) .dance-format-story-copy{grid-column:2}
.dance-format-story-copy span{display:block;margin-bottom:38px;color:var(--muted);font-size:10px;letter-spacing:.16em}
.dance-format-story-copy h3{margin:0;font-size:clamp(36px,5vw,66px);line-height:1.05}
.dance-format-story-has-media{min-height:0;gap:clamp(42px,7vw,100px)}
.dance-format-story-has-media .dance-format-story-copy{grid-column:2;max-width:560px}
.dance-format-story-media{grid-column:1;margin:0;aspect-ratio:4/3;overflow:hidden;background:#d8cfc1}
.dance-format-story-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.dance-format-story-reverse .dance-format-story-copy{grid-column:1}
.dance-format-story-reverse .dance-format-story-media{grid-column:2;aspect-ratio:4/5}
.dance-format-story-reverse .dance-format-story-landscape{aspect-ratio:16/9}
.dance-format-story-subtitle{margin:28px 0 0;font-family:Georgia,serif;font-size:clamp(21px,2vw,28px);line-height:1.3}
.dance-format-story-text{margin-top:26px}
.dance-format-story-text p{margin:0 0 1.1em;color:var(--muted);font-size:17px;line-height:1.7}
.dance-format-story-text strong{color:var(--ink);font-weight:600}
@media(max-width:700px){
  .dance-intro-photo{height:62svh;min-height:420px}
  .dance-intro-photo .dance-hero-image{object-position:center}
  .dance-method-story{width:min(calc(100% - 32px),var(--max));padding-top:72px;padding-bottom:82px}
  .dance-method-story-copy h1{font-size:clamp(46px,14vw,68px)}
  .dance-intro-video{margin-top:54px}
  .dance-formats-story{width:min(calc(100% - 32px),var(--max))}
  .dance-format-story{min-height:190px;grid-template-columns:1fr;padding:38px 0}
  .dance-format-story-copy,.dance-format-story:nth-child(even) .dance-format-story-copy{grid-column:1}
  .dance-format-story-has-media{gap:34px}
  .dance-format-story-has-media .dance-format-story-copy,.dance-format-story-media,.dance-format-story-reverse .dance-format-story-copy,.dance-format-story-reverse .dance-format-story-media{grid-column:1}
  .dance-format-story-copy span{margin-bottom:24px}
}

/* DANCE v41 — every format reads as title, text, photograph */
.dance-format-story,.dance-format-story-has-media,.dance-format-story-reverse{display:block;min-height:0;padding:clamp(62px,8vw,112px) 0}
.dance-format-story .dance-format-story-copy,.dance-format-story:nth-child(even) .dance-format-story-copy,.dance-format-story-has-media .dance-format-story-copy,.dance-format-story-reverse .dance-format-story-copy{max-width:820px;margin:0;grid-column:auto}
.dance-format-story .dance-format-story-media,.dance-format-story-reverse .dance-format-story-media,.dance-format-story-reverse .dance-format-story-landscape{display:block;width:min(100%,1000px);margin:clamp(38px,5vw,62px) 0 0;grid-column:auto;aspect-ratio:auto;overflow:visible;background:transparent}

/* Unified site background — 2026-08-13 */
:root{--site-background:#f4efe6;--paper:var(--site-background)}
html,body,.shell,main,.topbar,.footer,.section,.page-head,.hero,.hero-copy,
.home-hero,.home-hero-media,.home-about,.home-photo-frame,.home-directions,.home-direction,
.intro,.feature,.copy,.doors,.door,.grid,.card,.card-media,.gallery-grid,
.art-card .card-media,.artwork-main,.details,.detail,.photo-grid,.photo-grid>div,
.photo-grid .stack,.media,.empty,.cv-toc,.cv-section,.cv-accordion,
.research-feature-media,.research-article-cover,.research-photo-grid figure,
.dance-hero,.dance-method-media,.dance-gallery-item,.dance-intro-photo,
.dance-format-story-media,.dance-format-story-landscape{
  background-color:var(--site-background);
}
.door:hover{background-color:var(--site-background)}
.dance-format-story .dance-format-story-media img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
.dance-format-story .dance-format-story-portrait{width:min(100%,720px)}
@media(max-width:700px){
  .dance-format-story,.dance-format-story-has-media,.dance-format-story-reverse{padding:54px 0}
  .dance-format-story .dance-format-story-media,.dance-format-story-reverse .dance-format-story-media{margin-top:34px}
}

/* Unified heading hierarchy — 2026-08-13 */
:root{
  --heading-section:clamp(56px,7vw,84px);
  --heading-project:clamp(42px,5.2vw,64px);
  --heading-block:clamp(28px,3.4vw,42px);
  --heading-service:11px;
}
.type-heading-section,.dance-hero-copy h1,.research-index-head h1{margin:0;font-family:Georgia,serif;font-size:var(--heading-section);font-weight:400;line-height:.98;letter-spacing:-.015em}
.page-head h1,.dance-method-story-copy h1,.research-feature-copy h2,.research-article-heading h1,.about-heading h1,.contact-intro h1,.cv-heading h1{margin-top:0;font-family:Georgia,serif;font-size:var(--heading-project);font-weight:400;line-height:1.02;letter-spacing:-.012em;text-transform:none}
.intro h2,.copy h2,.dance-method-copy h2,.dance-section-heading h2,.dance-format-story-copy h3,.research-section-heading h2,.research-sources h2,.contact-projects>h2,.contact-project-group h3,.about-cv-entry h2,.cv-accordion summary,.card h2,.card h3{font-family:Georgia,serif;font-size:var(--heading-block);font-weight:400;line-height:1.08;letter-spacing:0;text-transform:none}
.eyebrow,.meta,.door small,.research-article-meta span,.dance-format-story-copy>span{font-family:Inter,Arial,sans-serif;font-size:var(--heading-service);font-weight:400;line-height:1.4;letter-spacing:.18em;text-transform:uppercase}
@media(max-width:520px){:root{--heading-section:clamp(48px,15vw,62px);--heading-project:clamp(38px,11.5vw,52px);--heading-block:clamp(27px,8.5vw,38px)}}

/* Visual spacing v55 — card scale and breathing room only. */
@media(min-width:801px){.home-directions{width:min(80%,944px);max-width:944px;gap:clamp(44px,5vw,76px);padding-top:clamp(116px,14vw,204px);padding-bottom:clamp(120px,15vw,216px)}}
.feature{gap:clamp(40px,7.5vw,104px)}
.grid{gap:24px}
.gallery-grid{gap:36px}
.photo-grid,.photo-grid .stack,.detail-gallery{gap:24px}
.research-photo-grid{gap:21px}
.dance-gallery-grid{gap:21px}
.dance-method{gap:clamp(64px,10vw,144px)}
.dance-format-story-has-media{gap:clamp(52px,8.5vw,124px)}
.dance-format-story .dance-format-story-media,.dance-format-story-reverse .dance-format-story-media,.dance-format-story-reverse .dance-format-story-landscape{margin-top:clamp(48px,6.5vw,78px)}
@media(max-width:800px){.home-directions{width:80%;gap:34px;padding-top:clamp(92px,20vw,132px);padding-bottom:clamp(98px,22vw,144px)}.feature{gap:40px}.gallery-grid,.grid{gap:24px}.dance-method{gap:64px}.dance-format-story-has-media{gap:42px}}
@media(max-width:520px){.research-photo-grid{gap:19px}.dance-gallery-grid{padding:0 16px}.dance-gallery-item{margin-bottom:24px}}

/* Home images v60 — preserve complete source photographs. */
.home-mandala-image{transform:scale(1.2);transform-origin:center}
.home-photo-frame img{transform:none}
