/* Aranya — a quiet lavender surface around the original artwork. */
:root{--ink:#302b42;--paper:#faf8ff;--blue:#6650a1;--red:#7861ad;--line:rgba(77,59,110,.18);--muted:#70677e;--surface:#f0ebf8;--gutter:clamp(20px,5vw,88px)}
body{line-height:1.8;overflow-wrap:break-word}main,section,article,figure,nav{min-width:0}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:5px}section[id]{scroll-margin-top:90px}
.section-pad{padding:clamp(64px,8vw,112px) var(--gutter)}
.site-header{padding:0 var(--gutter);min-height:76px;background:rgba(250,248,255,.94);border-color:var(--line)}
.brand{font-size:.875rem;font-weight:600;letter-spacing:.035em}.site-header nav{font-size:.875rem;font-weight:500;gap:28px}.site-header nav a{padding:24px 0}.site-header .nav-submenu a{font-size:.875rem;padding:10px 14px}.nav-submenu{border-radius:6px;box-shadow:0 12px 30px #302b4210}
.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.14em;line-height:1.8}.profile-hero{min-height:min(800px,calc(100svh - 76px));grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,7vw,112px);background:linear-gradient(135deg,#faf8ff,#f0eaf8)}
.profile-portrait{max-width:440px;border:0;border-radius:3px;background:var(--surface)}.profile-portrait::after{display:none}.profile-copy h1{font-size:clamp(3rem,6.5vw,6.5rem);line-height:1.2;letter-spacing:-.04em}.role-line{font-size:clamp(1rem,1.5vw,1.25rem);color:var(--muted);line-height:1.9}.profile-actions{flex-wrap:wrap;gap:12px;margin-top:28px}.button{font-size:.9375rem;font-weight:500;border-color:var(--line);border-radius:4px;min-height:48px;padding:10px 24px;transition:background .2s,color .2s,transform .2s}.button.primary{background:var(--blue);border-color:var(--blue)}.button:hover{box-shadow:none;transform:translateY(-2px);background:var(--surface)}.button.primary:hover{background:#514080}.hero-index{right:var(--gutter);font-size:.75rem}.hero-index b{font-size:1.6rem;font-weight:500}
.section-title-row{gap:24px;margin-bottom:36px}.section-title-row h2,.contact h2{font-size:clamp(2.1rem,4vw,4rem);line-height:1.25;letter-spacing:0}.section-title-row>p{font-size:1rem;max-width:440px}.category-grid{gap:24px;background:none;border:0}.category-card{min-height:0;aspect-ratio:4/3;padding:28px;border-radius:4px}.category-card::after,.illustration-portal::after{background:linear-gradient(180deg,#211b3210 25%,#211b32c9)}.category-card h3{font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.3;margin:8px 0}.category-card small,.category-no{font-weight:500;font-size:.75rem}.category-card p{font-size:.9375rem;color:#fff}.category-card>div{max-width:88%}.category-card>b{font-size:2.5rem;opacity:.6;bottom:24px}
.collaboration,.more-section{background:var(--surface)}.process-list{border:0;gap:24px}.process-list li{padding:22px 0;min-height:0;border:0;border-top:1px solid var(--line)}.process-list strong{margin:24px 0 10px;font-size:1rem;font-weight:600}.process-list p{font-size:1rem}.process-list li>span{font-weight:500;font-size:.875rem}.commercial-note{background:transparent;color:var(--blue);border:0;border-bottom:1px solid var(--line);font-weight:500;font-size:.875rem;padding:8px 0;max-width:100%}.collab-intro small{font-size:.875rem;font-weight:500}
.contact,.pricing{background:#eae3f5;color:var(--ink)}.contact{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:5vw}.contact>div:first-child>p:last-child,.pricing .section-title-row>p{color:var(--muted)}.contact-grid{border:0;gap:0 24px;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-item{padding:18px 0;min-height:105px;border:0;border-top:1px solid var(--line);gap:8px}.contact-item span{font-size:.875rem;color:var(--muted)}.contact-item strong{font-size:1rem;font-weight:500;overflow-wrap:anywhere}.contact-item:hover[href]{background:none;color:var(--blue)}.contact-item:hover[href] span{color:var(--blue)}
.page-hero,.personal-hero,.series-detail-hero,.series-detail-hero.text-series,.xun-detail,.dream-detail,.fire-detail,.more-illustration-detail,.more-comics-detail,.more-design-detail{background:var(--surface);color:var(--ink)}.page-hero{min-height:340px}.page-hero h1{font-size:clamp(2.8rem,6.5vw,6rem);line-height:1.2;letter-spacing:0}.page-hero .eyebrow{color:var(--blue)}.page-hero>p:not(.eyebrow){color:var(--muted);font-size:1rem;max-width:700px}.back-link{right:var(--gutter);font-size:.875rem;font-weight:500}.capability-strip{padding-top:0;padding-bottom:0}.capability-strip>div{min-height:180px}.capability-strip strong{font-size:1.125rem;margin-top:24px}.capability-strip span{font-size:.875rem;font-weight:500}.category-jump{padding-top:24px;padding-bottom:24px;gap:10px}.category-jump a{font-size:.875rem;font-weight:500;border-color:var(--line);min-height:44px}.category-jump a:hover{background:var(--blue)}
.group-heading{border-color:var(--line);gap:14px;flex-wrap:wrap}.group-heading h2,.group-heading h3{font-size:clamp(1.8rem,3vw,3rem);line-height:1.4}.project-grid,.series-grid{gap:48px 28px;grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid.single{grid-template-columns:minmax(0,780px)}.project-cover{border-radius:4px}.project-cover b{font-size:clamp(2rem,4vw,4.5rem);font-weight:600;line-height:1.15}.project-info{grid-template-columns:32px minmax(0,1fr) 20px;gap:12px;border-color:var(--line)}.project-info h3{font-size:1.125rem;font-weight:600}.project-info p{font-size:.9375rem}.deliverable{font-size:.875rem;font-weight:500}.corner-note{font-size:.75rem;font-weight:500;background:#302b42d9}.price-table,.price-row{border-color:var(--line)}.price-row{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr) minmax(0,.6fr)}.price-row span{color:var(--muted)}.price-row b{color:var(--blue);font-weight:600}.price-head{color:var(--muted);font-size:.875rem}.price-row strong{font-weight:600}
.illustration-portals{gap:24px;background:var(--paper);padding-top:40px;padding-bottom:64px}.illustration-portal{min-height:480px;border-radius:4px}.illustration-portal h2{font-size:clamp(2.5rem,5vw,5rem);line-height:1.3}.series-cover{border-radius:4px;background:var(--surface)}.series-copy{border-color:var(--line)}.series-copy h3{font-weight:600;font-size:1.125rem}.series-copy p{font-size:.9375rem}.series-copy i{font-size:.875rem;font-weight:500}.series-detail-hero{min-height:560px}.series-detail-hero h1{font-size:clamp(4rem,10vw,9rem);line-height:1.2;letter-spacing:0}.detail-monogram{border-color:var(--line);color:#8d7aa9;font-size:clamp(6rem,16vw,16rem)}.series-detail-hero>img{border-color:var(--line)}.gallery-feature img,.album-slide,.artwork-card{background:var(--surface)}.album-slide{border-color:var(--line);box-shadow:0 16px 40px #302b4212}.album-caption{border-color:var(--line)}.album-arrow{border-color:var(--line)}.more-grid{gap:20px;background:none;border:0}.more-card{border:1px solid var(--line);border-radius:4px;color:var(--ink)}.more-illustration{background:#e8e1f5}.more-comics{background:#dedff0}.more-design{background:#eee6f1}.more-card h3{font-size:clamp(2.5rem,5vw,5rem);line-height:1.2}.more-card:hover{box-shadow:none;background:#e0d5f0}.lyric-page,.lyric-fan .lyric-page{background:#f1edf7}.lyric-modern .lyric-page{background:#eae4f5}.lyric-english .lyric-page{background:#373047}.lyric-english .excerpt-number,.lyric-english h5{color:#d6c5ff}.bilingual-line span[lang="zh-CN"]{color:#d8d1e2}.reader-heading{flex-wrap:wrap;border-color:var(--line)}.reader-controls button{border-color:var(--line);border-radius:4px}.more-landing-card{border-radius:4px;overflow:hidden}.more-landing-caption b{font-weight:500}.more-landing-card>img{background:var(--surface)}
footer{padding:28px var(--gutter);background:#f2edf8;color:var(--muted);font-size:.75rem;letter-spacing:.04em}
@media(hover:hover) and (pointer:fine){.category-card:hover img,.illustration-portal:hover img,.project-card:hover img,.series-card:hover img{transform:scale(1.025)}.contact-item,.project-info h3,.series-copy h3{transition:color .2s}}
@media(max-width:1050px){.contact{grid-template-columns:1fr}.profile-copy h1{font-size:clamp(2.8rem,6vw,4.5rem)}.process-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.site-header{min-height:68px;gap:16px}.brand{max-width:calc(100% - 64px);line-height:1.5;font-size:.8125rem}.menu-toggle{min-width:48px;min-height:48px;padding:0;font-size:.875rem;font-weight:500;color:var(--blue)}.site-header nav{top:68px;max-height:calc(100svh - 68px);overflow-y:auto;padding:12px var(--gutter) 24px;gap:0;box-shadow:0 16px 28px #302b420d}.site-header nav a{padding:12px 0;min-height:44px}.site-header .nav-submenu a{padding:9px 12px;font-size:.875rem}.nav-submenu{flex-wrap:wrap;box-shadow:none}.profile-hero{min-height:auto;padding-top:56px;padding-bottom:64px}.section-title-row{display:grid;gap:20px}.capability-strip>div{padding:24px 0;min-height:0}.capability-strip strong{margin:12px 0 8px}.illustration-portal{min-height:420px}.category-card{aspect-ratio:1;min-height:0}.hero-index{display:none}.series-detail-hero,.series-detail-hero.text-series{min-height:auto;grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:600px){.section-pad{padding-top:56px;padding-bottom:56px}.profile-hero{grid-template-columns:1fr;gap:32px;padding-top:32px}.profile-portrait{width:min(68vw,280px);margin:0 auto;aspect-ratio:4/5}.profile-copy{text-align:center}.profile-copy h1{font-size:clamp(2.75rem,11vw,4rem);margin-bottom:16px}.profile-copy .eyebrow{font-size:.75rem;letter-spacing:.09em}.profile-actions{justify-content:center;margin-top:22px}.profile-actions .button{flex:1;max-width:180px;padding:10px 14px}.role-line{font-size:1rem;letter-spacing:0}.category-grid,.project-grid,.project-grid.single,.series-grid,.more-grid,.illustration-portals,.artwork-grid{grid-template-columns:minmax(0,1fr)}.category-grid{gap:20px}.category-card{aspect-ratio:4/3;padding:22px}.category-card h3{font-size:2rem}.category-card>b{display:none}.category-card p{font-size:.875rem}.category-no{top:18px;left:22px}.section-title-row{margin-bottom:28px}.process-list{grid-template-columns:1fr;gap:8px}.process-list li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:22px 0}.process-list strong{margin:0 0 8px}.commercial-note{text-align:left;margin-top:14px}.contact{gap:28px}.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-item{min-height:88px}.page-hero{min-height:0;padding-top:64px;padding-bottom:40px}.page-hero h1{font-size:clamp(2.5rem,11vw,3.5rem);overflow-wrap:anywhere}.back-link{position:static;display:inline-block;margin-top:16px;min-height:44px;padding:8px 0}.capability-strip{padding-top:0;padding-bottom:0}.category-jump{padding-top:20px;padding-bottom:20px}.project-grid,.series-grid{gap:36px}.project-info{grid-template-columns:26px minmax(0,1fr) 18px;gap:10px}.project-cover b{font-size:clamp(1.8rem,8vw,3rem);left:16px;bottom:14px}.corner-note{right:10px;top:10px;padding:5px 8px}.price-row{grid-template-columns:minmax(0,1fr) auto;padding:20px 0;gap:8px 16px}.price-row b{white-space:nowrap}.price-row>span{grid-column:1/-1;grid-row:2;font-size:.9375rem}.price-head{display:none}.illustration-portals{gap:20px}.illustration-portal{min-height:380px;padding:24px}.illustration-portal>b{position:static;margin-top:20px;font-size:.875rem}.series-detail-hero,.series-detail-hero.text-series{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:56px}.series-detail-hero h1{font-size:clamp(4rem,19vw,6rem)}.series-detail-hero>div>p:last-child{margin-top:24px;font-size:1rem}.detail-monogram{max-width:260px;width:70%;justify-self:center}.series-detail-hero>img{max-height:60svh;object-fit:contain}.curated-gallery .portfolio-art:nth-child(n){grid-column:1/-1;margin-top:0}.album-stack{height:62svh;min-height:300px;max-height:560px}.album-arrow{background:#faf8fff0}.album-caption{gap:8px 12px}.album-caption span{font-size:1.125rem}.album-caption small{font-size:.875rem}.reader-heading{gap:12px}.reader-controls{gap:12px}.lyric-page{padding:28px 18px;min-height:360px}.lyric-lines{font-size:1.0625rem}.more-landing-caption{padding:20px;grid-template-columns:minmax(0,1fr)}.more-landing-caption b{min-height:44px;display:flex;align-items:center}.more-card{aspect-ratio:16/10}.series-copy p{padding-right:80px}.portfolio-group+.portfolio-group{margin-top:56px}footer{gap:12px}footer a{min-height:44px;display:inline-flex;align-items:center}}
@media(prefers-reduced-motion:no-preference){.reveal-in{animation:quiet-entry .65s cubic-bezier(.22,.61,.36,1) both}@keyframes quiet-entry{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.site-header nav.open{animation:quiet-entry .22s ease both}}
/* Keep hover and focus states at identical coordinates. */
.site-header .nav-dropdown .nav-submenu,
.site-header .nav-dropdown:hover .nav-submenu,
.site-header .nav-dropdown:focus-within .nav-submenu{transform:none}
@media(min-width:851px){
  .site-header .nav-dropdown{align-self:stretch;align-items:center}
  .site-header .nav-dropdown .nav-submenu{left:-14px;top:calc(100% - 1px);min-width:164px;z-index:40;transition:opacity .12s ease .12s,visibility 0s linear .24s}
  .site-header .nav-dropdown .nav-submenu::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
  .site-header .nav-dropdown:hover .nav-submenu,
  .site-header .nav-dropdown:focus-within .nav-submenu{opacity:1;visibility:visible;transition:opacity .12s ease,visibility 0s}
  .site-header .nav-submenu a{display:flex;align-items:center;min-height:46px}
}
.ui-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.project-cover.fit-cover{background:#efe9f8}
.project-cover.fit-cover::after{background:linear-gradient(180deg,rgba(48,43,66,.02),rgba(48,43,66,.46))}
.project-cover.fit-cover img{object-fit:contain;padding:12px;box-sizing:border-box}
.case-note{max-width:780px;margin-top:24px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted)}
.case-note p{margin:0 0 16px;font-size:1rem;line-height:1.9}
.case-pdf-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--blue);font-weight:600}
.case-pdf-link:hover{color:#514080}
.portfolio-art figcaption{align-items:flex-start}
.portfolio-art figcaption strong{display:block;color:var(--ink);font-size:.95rem;font-weight:600;line-height:1.5}
.portfolio-art figcaption small{display:block;margin-top:3px;color:var(--muted);font-size:.875rem;line-height:1.6}
/* Full-width stacked submenu rows for touch navigation. */
.menu-toggle{border-radius:6px;transition:background-color .16s ease,color .16s ease,transform .16s ease}
.menu-toggle[aria-expanded="true"]{background:var(--surface)}
.menu-toggle:active{background:#e4daf3;transform:scale(.96)}
.site-header nav a{transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}
.site-header nav a:active{background:#e4daf3;color:#514080;transform:translateY(1px)}
@media(max-width:850px){
  .site-header nav{padding:12px var(--gutter) 20px;gap:4px;overscroll-behavior:contain}
  .site-header nav>a,.site-header .nav-dropdown>a{display:flex;align-items:center;width:100%;min-height:48px;padding:10px 14px;border:0;border-radius:6px;font-size:1rem}
  .site-header nav a.active{background:var(--surface);color:var(--blue)}
  .site-header .nav-submenu{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:4px;position:static;min-width:0;margin:2px 0 10px 14px;padding:0 0 0 12px;border:0;border-left:1px solid var(--line);border-radius:0;transform:none;opacity:1;visibility:visible;background:transparent;box-shadow:none}
  .site-header .nav-submenu a{display:flex;align-items:center;width:100%;min-height:48px;padding:10px 14px;border:0;border-radius:6px;white-space:normal;font-size:1rem;line-height:1.6}
  .site-header .nav-submenu a.active{background:var(--surface);color:var(--blue)}
  .site-header nav a:active,.site-header .nav-submenu a:active{background:#e4daf3;color:#514080;transform:translateX(2px)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.menu-toggle:active,.site-header nav a:active,.site-header .nav-submenu a:active{transform:none}}
