/* Nika Maria — shared About modal. Artwork is an image; every label is HTML. */
.nm-about-dialog {
  position:fixed; inset:0; margin:auto; box-sizing:border-box;
  width:min(1120px,calc(100vw - 56px)); height:min(650px,calc(100dvh - 56px));
  max-width:none; max-height:none; padding:0; border:1px solid #ac8a58; border-radius:0;
  background:#090706; color:#f0e3c9; overflow:hidden;
  box-shadow:0 28px 100px rgba(0,0,0,.78),inset 0 0 0 1px rgba(228,188,122,.18);
}
.nm-about-dialog:not([open]){display:none}
.nm-about-dialog::backdrop{background:rgba(0,0,0,.80);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.nm-about-frame{
  position:relative; isolation:isolate; box-sizing:border-box;
  width:100%; height:100%; overflow:hidden; overscroll-behavior:contain;
  background:#080706;
  scrollbar-color:#92734c #0a0706;
}
.nm-about-frame::before{
  position:absolute;inset:-14px;content:"";pointer-events:none;z-index:0;
  background:url('/assets/about/about-background.jpg') center center / cover no-repeat;
  filter:blur(8px);
  transform:scale(1.035);
}
.nm-about-frame::after{
  position:absolute;inset:0;content:"";pointer-events:none;z-index:1;
  background:linear-gradient(90deg,rgba(5,4,3,.80) 0%,rgba(5,4,3,.36) 39%,transparent 66%),
             linear-gradient(0deg,rgba(5,4,3,.25),transparent 30%);
}
.nm-about-close{
  position:absolute;z-index:3;top:12px;right:14px;
  display:grid;place-items:center;width:48px;height:48px;padding:0;
  border:1px solid transparent;background:rgba(8,6,4,.54);
  color:#dac59e;font:400 37px/1 Arial,sans-serif;cursor:pointer;
  transition:color .2s,background .2s,box-shadow .2s,border-color .2s;
}
.nm-about-close:hover,.nm-about-close:focus-visible{
  outline:none;border-color:rgba(232,190,124,.75);
  background:rgba(36,24,12,.85);color:#fff0d3;box-shadow:0 0 15px rgba(209,161,87,.34)
}
.nm-about-copy{
  position:relative;z-index:2;box-sizing:border-box;
  width:53%;max-width:610px; min-height:100%; padding:44px 15px 40px clamp(32px,4.5vw,64px);
  display:flex;flex-direction:column;justify-content:center;
  color:#f0e1c3;text-shadow:0 2px 10px rgba(0,0,0,.65)
}
.nm-about-cross{
  width:100%;color:#dfb97b;font-size:32px;line-height:1;text-align:center;
  margin:0 0 8px;text-shadow:0 0 13px rgba(211,151,73,.42);
}
.nm-about-copy h2{
  margin:0;color:#f4dbac; font-size:clamp(40px,4.15vw,61px);
  letter-spacing:.07em;line-height:1.04;font-weight:400;
  text-align:center;text-transform:uppercase;white-space:nowrap;
  text-shadow:0 1px 10px rgba(0,0,0,.68);
}
.nm-about-ornament{display:flex;align-items:center;gap:12px;margin:9px 0 17px;color:#ddb474}
.nm-about-ornament>span{height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(222,181,112,.8))}
.nm-about-ornament>span:last-child{background:linear-gradient(90deg,rgba(222,181,112,.8),transparent)}
.nm-about-ornament>b{font-size:16px;line-height:1;font-weight:400}
.nm-about-subtitle{
  margin:0 0 17px;color:#f3e3c9;
  font:400 clamp(17px,1.62vw,24px)/1.25 Georgia,"Times New Roman",serif;
  letter-spacing:.10em;text-transform:uppercase;
}
.nm-about-description{font:400 clamp(13px,1.01vw,16px)/1.34 Georgia,"Times New Roman",serif;color:#ecddc9}
.nm-about-description p{margin:0 0 12px}
.nm-about-description p:last-child{margin-bottom:0}
.nm-about-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:21px}
.nm-about-action{
  box-sizing:border-box;min-width:0;min-height:45px;flex:1 1 auto;
  padding:11px 15px;display:flex;align-items:center;justify-content:space-between;gap:14px;
  border:1px solid rgba(226,183,110,.72);text-decoration:none;text-shadow:none;
  font:400 clamp(11px,.94vw,14px)/1.2 Georgia,"Times New Roman",serif;
  letter-spacing:.035em;white-space:nowrap;cursor:pointer;
  transition:box-shadow .2s,border-color .2s,color .2s,background .2s
}
.nm-about-action b{font:400 25px/1 Arial,sans-serif}
.nm-about-action-primary{color:#25190c;background:linear-gradient(90deg,#f4e2b0,#caa363)}
.nm-about-action-outline{color:#ecd5a5;background:rgba(7,6,5,.76)}
.nm-about-action:hover,.nm-about-action:focus-visible{
  outline:none;box-shadow:0 0 16px rgba(232,173,88,.45),0 0 32px rgba(197,137,46,.22);border-color:#f4d59a
}
.nm-about-action-outline:hover,.nm-about-action-outline:focus-visible{background:rgba(54,35,17,.86)}
html[data-language="en"] .nm-about-copy h2{font-size:clamp(30px,3.35vw,47px);letter-spacing:.04em}
html[data-language="zh"] .nm-about-copy h2{
  font-family:"Noto Serif CJK SC","Microsoft YaHei",Georgia,serif;
  font-size:clamp(33px,3.2vw,47px);letter-spacing:.04em
}
html[data-language="zh"] .nm-about-subtitle,html[data-language="zh"] .nm-about-description,
html[data-language="zh"] .nm-about-action{
  font-family:"Noto Serif CJK SC","Microsoft YaHei",Georgia,serif;letter-spacing:0
}
html[data-language="zh"] .nm-about-description{line-height:1.55}
@media(max-width:1100px){
  .nm-about-dialog{width:calc(100vw - 34px);height:min(620px,calc(100dvh - 34px))}
  .nm-about-copy{width:57%;padding:36px 14px 35px clamp(23px,4vw,44px)}
  .nm-about-copy h2{font-size:clamp(32px,4.8vw,51px)}
  .nm-about-subtitle{font-size:clamp(15px,1.9vw,21px)}
  .nm-about-description{font-size:clamp(12px,1.3vw,15px)}
}
@media(max-width:720px){
  .nm-about-frame{overflow:auto}
  .nm-about-dialog{width:calc(100vw - 20px);height:min(780px,calc(100dvh - 24px))}
  .nm-about-frame{background:#090706}
  .nm-about-frame::before{
    inset:-10px;
    background:url('/assets/about/about-background.jpg') center top / auto 245px no-repeat;
    filter:blur(7px);
    transform:scale(1.035)
  }
  .nm-about-frame::after{
    background:linear-gradient(0deg,#090706 0%,#090706 45%,rgba(9,7,6,0) 73%)
  }
  .nm-about-copy{
    width:100%;max-width:none;min-height:100%;padding:208px 22px 28px;
    justify-content:flex-start;text-align:left
  }
  .nm-about-cross{font-size:22px;margin:0 0 5px}
  .nm-about-copy h2{font-size:clamp(28px,7vw,43px);letter-spacing:.045em;white-space:normal}
  .nm-about-ornament{margin:10px 0 15px}
  .nm-about-subtitle{font-size:clamp(14px,4vw,19px);letter-spacing:.045em;line-height:1.22;margin-bottom:14px}
  .nm-about-description{font-size:clamp(13px,3.4vw,15px);line-height:1.4}
  .nm-about-description p{margin-bottom:11px}
  .nm-about-actions{margin-top:15px}
  .nm-about-close{top:7px;right:7px;background:rgba(8,6,5,.78)}
  html[data-language="en"] .nm-about-copy h2{font-size:clamp(29px,6.3vw,42px)}
  html[data-language="zh"] .nm-about-copy h2{font-size:clamp(28px,6vw,42px)}
}
@media(max-width:430px){
  .nm-about-actions{gap:9px}
  .nm-about-action{padding:10px 12px;min-height:43px;font-size:11px;gap:6px}
  .nm-about-action b{font-size:19px}
  .nm-about-copy{padding-left:18px;padding-right:18px}
}
@media(max-height:520px) and (min-width:721px){
  .nm-about-frame{overflow:auto}
  .nm-about-dialog{height:calc(100dvh - 16px)}
  .nm-about-copy{justify-content:flex-start;padding-top:24px;padding-bottom:24px}
  .nm-about-copy h2{font-size:37px}
  .nm-about-cross{margin-bottom:0}
  .nm-about-description p{margin-bottom:8px}
}
@media(prefers-reduced-motion:reduce){.nm-about-close,.nm-about-action{transition:none}}