/* Font preview: ibm. H1 = Clash-like fallback; H2 = Wide Latin fallback; body = Google Font. */
@import url("https://fonts.googleapis.com/css2?family=Bungee+Inline&family=IBM+Plex+Sans+JP:wght@400;500;600;700&display=swap");
:root{--bg:#050505;--panel:#0d0d0f;--blue:#001eff;--blue2:#087bd3;--white:#f5f5f5;--muted:#b8b8c0;--line:#25252c;--red:#e21b1b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-size:14px;font-family:"IBM Plex Sans JP", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Meiryo, sans-serif;line-height:1.85;letter-spacing:.02em}a{color:var(--blue);text-decoration:none;border-bottom:1px solid var(--blue2)}a:hover{color:#fff;background:var(--blue)}img{max-width:100%;height:auto;display:block}.wrap{width:min(1120px,92vw);margin:0 auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(5,5,5,.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0}.brand{font-family:Impact, Haettenschweiler, "Arial Black", sans-serif;font-weight:900;letter-spacing:.08em;color:var(--blue);font-size:14px;border-bottom:0;text-transform:uppercase}.links{font-family:"Wide Latin", Impact, "Arial Black", sans-serif;display:flex;gap:18px;flex-wrap:wrap;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.links a{border-bottom:0;color:var(--blue)}.links a:hover{color:#fff;background:transparent}.hero{min-height:84vh;display:grid;align-items:center;padding:72px 0 48px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}.kicker{color:var(--blue2);font-weight:900;letter-spacing:.18em;text-transform:uppercase;font-size:13px}.title{font-family:Impact, Haettenschweiler, "Arial Black", sans-serif;font-stretch:condensed;font-size:clamp(54px,9vw,120px);line-height:.86;margin:.18em 0;text-transform:uppercase;letter-spacing:.02em;font-weight:1000}.blue{color:var(--blue)}.subtitle{font-size:clamp(20px,3vw,34px);font-weight:900;line-height:1.15;margin:22px 0}.manifesto{font-size:14px;line-height:1.85}.manifesto p{margin:0 0 1.2em}.name-block{font-weight:400;color:var(--blue);font-size:inherit;line-height:1.85;margin:18px 0}.hero-img{border:0;box-shadow:none;background:#111}.section{padding:86px 0;border-top:1px solid var(--line)}.section-title{font-family:"Wide Latin", "Copperplate Gothic Bold", Impact, "Arial Black", sans-serif;font-size:clamp(36px,6vw,76px);line-height:.95;margin:0 0 28px;text-transform:uppercase;font-weight:1000;color:var(--blue);letter-spacing:.03em}.section-subtitle{color:var(--blue);font-size:clamp(21px,3vw,34px);font-weight:900;line-height:1.35;margin:0 0 26px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:34px;align-items:start}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--panel);border:1px solid var(--line);padding:24px}.caption{color:var(--muted);font-size:13px;margin-top:10px;line-height:1.6}.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.btn{font-family:"Wide Latin", Impact, "Arial Black", sans-serif;display:inline-block;border:2px solid var(--blue);color:var(--blue);padding:10px 16px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;background:transparent}.btn:hover{background:var(--blue);color:#fff}.btn-red{border-color:var(--blue)}.btn-red:hover{background:var(--blue)}.lead{font-size:clamp(17px,2vw,21px)}.quote{border-left:8px solid var(--blue);padding-left:22px;font-size:clamp(22px,3vw,38px);line-height:1.35;font-weight:900}.records img{aspect-ratio:4/5;object-fit:cover;width:100%}.socials{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px}.socials a{font-family:"Wide Latin", Impact, "Arial Black", sans-serif;border:1px solid var(--blue);padding:10px 14px;font-weight:900;text-transform:uppercase}.footer{padding:70px 0 50px;text-align:center;border-top:1px solid var(--line)}.footer .tag{color:var(--blue);font-size:clamp(28px,5vw,64px);font-weight:1000;line-height:1.05;text-transform:uppercase}.small{font-size:13px;color:var(--blue)}.two-col-text{columns:2;column-gap:46px}.dommune-text{font-size:15px;line-height:1.95;max-height:none}.notice{border:1px solid var(--blue);padding:16px;background:rgba(0,30,255,.12);font-weight:700}@media(max-width:840px){.hero-grid,.grid{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr 1fr}.links{gap:10px}.two-col-text{columns:1}.hero{padding-top:46px}.title{font-family:Impact, Haettenschweiler, "Arial Black", sans-serif;font-stretch:condensed;font-size:clamp(48px,16vw,80px)}}@media(max-width:560px){.grid-3{grid-template-columns:1fr}.nav{align-items:flex-start;flex-direction:column}.links{font-size:11px}.card{padding:18px}.section{padding:58px 0}}

/* Ver.1.1 quick fixes */
.brand-with-logo{display:flex;align-items:center;gap:12px;color:var(--blue)}
.brand-with-logo img{width:42px;height:42px;object-fit:contain}
.title{color:var(--blue)}
.kicker,.caption,.quote{color:var(--blue)}
.section-title,.section-subtitle,.links a,.brand{color:var(--blue)}
.links a:hover,.socials a:hover{color:#fff;background:transparent}
.notice,.zine-rule{border-color:var(--blue)}
.zine-rule{border:0;border-top:1px solid var(--blue);opacity:.55;margin:2em 0}
.dommune-text p{margin:0 0 1.25em}
.dommune-text a{color:var(--blue);border-bottom:1px solid var(--blue)}
.records .caption{display:none}


/* Ver.1.1 patch: unify white body text sizing across all pages */
main p,
main li,
main blockquote,
.manifesto,
.manifesto p,
.lead,
.card p,
.notice,
.two-col-text,
.dommune-text,
.dommune-text p,
.grid p,
.wrap > p {
  font-size: 14px !important;
  line-height: 1.85 !important;
}
.section-subtitle,
.section-title,
.title,
.footer .tag,
.caption,
.btn,
.links,
.brand,
.socials a {
  line-height: inherit;
}
.caption {
  font-size: 13px !important;
  line-height: 1.6 !important;
}


/* Ver.1.1 final emergency patch */
/* Restore top hero title/tagline from the previous stable version */
.title{
  font-family:Impact, Haettenschweiler, "Arial Black", sans-serif !important;
  font-size:clamp(54px,9vw,120px) !important;
  line-height:.86 !important;
  margin:.18em 0 !important;
  color:var(--blue) !important;
  text-transform:uppercase;
  letter-spacing:.02em;
  font-weight:1000;
}
.subtitle{
  color:var(--blue) !important;
  font-size:clamp(20px,3vw,34px) !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  margin:22px 0 !important;
}
.footer .tag{
  color:var(--blue) !important;
  font-size:clamp(28px,5vw,64px) !important;
  font-weight:1000 !important;
  line-height:1.05 !important;
}
/* Keep body copy unified, but do not shrink the hero/tagline elements */
main p:not(.subtitle):not(.quote),
main li,
main blockquote:not(.quote),
.manifesto,
.manifesto p,
.card p,
.notice,
.two-col-text,
.dommune-text,
.dommune-text p,
.grid p:not(.subtitle):not(.quote),
.wrap > p:not(.subtitle):not(.quote){
  font-size:14px !important;
  line-height:1.85 !important;
}
.lead{
  font-size:14px !important;
  line-height:1.85 !important;
}
.caption{
  font-size:13px !important;
  line-height:1.6 !important;
}
@media(max-width:840px){
  .title{font-size:clamp(48px,16vw,80px) !important;line-height:.86 !important;}
}


/* Ver.2 updates: consistent display font, record layout, supplementary notes */
:root{--display-font:"Bungee Inline", "Wide Latin", "Copperplate Gothic Bold", Impact, "Arial Black", sans-serif;}
.brand span,.links,.links a,.section-title,.btn,.socials a{font-family:var(--display-font) !important;}
.brand span{font-size:13px;letter-spacing:.08em;}
.links{font-size:12px;letter-spacing:.06em;}
.section-title{letter-spacing:.02em;}

.record-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start;}
.record-card{background:#050505;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.record-card.portrait{aspect-ratio:4/5;}
.record-card.landscape{aspect-ratio:4/3;}
.records .record-card img{width:100%;height:100%;object-fit:contain;background:#050505;}

.slide-gallery{display:grid;grid-template-columns:1fr;gap:28px;margin-top:26px;}
.slide-gallery figure{margin:0;background:var(--panel);border:1px solid var(--line);padding:14px;}
.slide-gallery img{width:100%;height:auto;background:#fff;}
.slide-gallery figcaption{font-size:12px;color:var(--blue);margin-top:8px;letter-spacing:.08em;text-transform:uppercase;}
.supplementary-notes .lead{max-width:860px;color:var(--muted);}
@media(max-width:840px){.record-grid{grid-template-columns:1fr 1fr}.record-card.landscape{aspect-ratio:4/3}.brand span{font-size:12px}.links{font-size:11px}}
@media(max-width:560px){.record-grid{grid-template-columns:1fr}.slide-gallery figure{padding:8px}}


/* Ver.2 typography final: path-based SVG display type (Wide-Latin-like, no browser font dependency) */
:root{--display-font-svg: initial;}
.type-brand,.type-nav,.type-heading,.type-btn,.type-hero-title,.type-hero-tag,.type-footer-tag{display:block;height:auto;max-width:100%;}
.brand span{display:block;width:300px;max-width:50vw;}
.type-brand{width:300px;}
.links a{display:inline-flex;align-items:center;justify-content:center;min-height:18px;padding:2px 0;}
.type-nav{height:15px;width:auto;max-width:190px;}
.title{margin:.18em 0 18px !important;line-height:1 !important;}
.type-hero-title{width:min(620px,92vw);}
.subtitle{margin:22px 0 !important;line-height:1 !important;}
.type-hero-tag{width:min(520px,82vw);}
.section-title{line-height:1 !important;margin:0 0 28px !important;}
.section-title .type-heading{width:min(760px,92vw);}
.section-subtitle .type-heading{width:min(520px,86vw);}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;}
.type-btn{height:18px;width:auto;max-width:180px;}
.footer .tag{line-height:1 !important;}
.type-footer-tag{width:min(650px,86vw);margin:0 auto;}
/* Disable former rounded webfont influence */
.brand span,.links,.links a,.section-title,.btn,.socials a{font-family:inherit !important;}
@media(max-width:840px){.type-nav{height:13px}.brand span,.type-brand{width:190px}.type-hero-title{width:min(560px,92vw)}.type-hero-tag{width:min(480px,86vw)}}
@media(max-width:560px){.type-nav{height:12px;max-width:160px}.brand span,.type-brand{width:175px}.type-hero-title{width:92vw}.type-hero-tag{width:84vw}.type-btn{height:15px}.section-title .type-heading{width:88vw}.section-subtitle .type-heading{width:80vw}}

/* Ver.2 review patch: larger header brand and calmer section heading scale */
.nav{
  flex-wrap:wrap;
  row-gap:10px;
}
.brand-with-logo{
  flex:1 1 720px;
  gap:16px;
  align-items:center;
}
.brand-with-logo img:not(.type-brand){
  width:64px;
  height:64px;
}
.brand span{
  width:min(720px,72vw) !important;
  max-width:100%;
}
.type-brand{
  width:min(720px,72vw) !important;
}
.links{
  flex:1 1 100%;
  justify-content:flex-end;
  align-items:center;
  gap:18px 22px;
  padding-top:2px;
}
.type-nav{
  height:16px;
}
.section-title .type-heading,
.section-subtitle .type-heading{
  width:auto !important;
  height:clamp(44px,6.2vw,64px) !important;
  max-width:92vw !important;
}
.section-title{
  margin-bottom:24px !important;
}
@media(max-width:840px){
  .brand-with-logo{flex-basis:100%;}
  .brand-with-logo img:not(.type-brand){width:58px;height:58px;}
  .brand span,.type-brand{width:min(620px,78vw) !important;}
  .links{justify-content:flex-start;}
  .type-nav{height:14px;}
  .section-title .type-heading,
  .section-subtitle .type-heading{height:clamp(38px,8.5vw,58px) !important;}
}
@media(max-width:560px){
  .brand-with-logo{gap:12px;}
  .brand-with-logo img:not(.type-brand){width:52px;height:52px;}
  .brand span,.type-brand{width:min(420px,74vw) !important;}
  .links{gap:10px 14px;}
  .type-nav{height:12px;max-width:150px;}
  .section-title .type-heading,
  .section-subtitle .type-heading{height:clamp(34px,10vw,48px) !important;max-width:90vw !important;}
}

/* Ver.2 type patch 2: sharper wide-latin-like SVGs and uniform heading scale */
.brand-with-logo{
  flex:1 1 760px;
  gap:16px;
}
.brand-with-logo img:not(.type-brand){
  width:68px !important;
  height:68px !important;
}
.brand span,
.type-brand{
  width:min(760px,74vw) !important;
  max-width:100% !important;
}
.links{
  flex:1 1 100%;
  justify-content:flex-end;
  gap:18px 22px;
}
.type-nav{height:15px !important;max-width:210px !important;width:auto !important;}
.type-hero-title{width:min(620px,92vw) !important;height:auto !important;}
.type-hero-tag{width:min(520px,84vw) !important;height:auto !important;}
.section-title,
.section-subtitle{
  overflow:visible !important;
}
.section-title .type-heading,
.section-subtitle .type-heading{
  height:52px !important;
  width:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  object-position:left center !important;
}
.section-title{
  margin-bottom:24px !important;
}
.type-footer-tag{width:min(650px,86vw) !important;height:auto !important;}
@media(max-width:840px){
  .brand-with-logo{flex-basis:100%;}
  .brand-with-logo img:not(.type-brand){width:58px !important;height:58px !important;}
  .brand span,.type-brand{width:min(620px,78vw) !important;}
  .links{justify-content:flex-start;}
  .type-nav{height:13px !important;max-width:175px !important;}
  .section-title .type-heading,.section-subtitle .type-heading{height:44px !important;}
}
@media(max-width:560px){
  .brand-with-logo{gap:12px;}
  .brand-with-logo img:not(.type-brand){width:52px !important;height:52px !important;}
  .brand span,.type-brand{width:min(430px,74vw) !important;}
  .links{gap:10px 14px;}
  .type-nav{height:11px !important;max-width:145px !important;}
  .section-title .type-heading,.section-subtitle .type-heading{height:36px !important;max-width:96vw !important;}
}


/* Final Ver.2 tweak: RECORDS heading readability */
.records-title .type-heading{height:clamp(58px,7.5vw,76px) !important;width:auto !important;max-width:92vw !important;}
@media(max-width:560px){.records-title .type-heading{height:clamp(42px,12vw,56px) !important;}}

/* Ver.2 final record heading fix: make RECORDS same visual scale as MUSIC / OTHER CULTURES */
h2.records-title{
  overflow: visible !important;
  min-height: 72px !important;
  margin-bottom: 28px !important;
}
h2.records-title img.type-heading{
  display: block !important;
  width: min(620px, 92vw) !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: left center !important;
}
@media(max-width:840px){
  h2.records-title{min-height: 58px !important;}
  h2.records-title img.type-heading{width:min(560px,92vw) !important;}
}
@media(max-width:560px){
  h2.records-title{min-height: 48px !important;}
  h2.records-title img.type-heading{width:min(480px,96vw) !important;}
}


/* FINAL FINAL: private profile RECORDS spacing only */
.private-profile-records-spacing-fix {}
body section.records {
  padding-top: 8px !important;
  padding-bottom: 28px !important;
  margin-top: 0 !important;
}
body section.records > .wrap {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body section.records h2.records-title {
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
  line-height: 1 !important;
}
body section.records .record-grid {
  margin-top: 0 !important;
  padding-top: 0 !important;
}


/* Ver.2.0.1 RECORDS ghost patch: merge records into MUSIC section and remove sectional gap */
.records-block{margin-top:22px !important;padding-top:0 !important;}
.records-block .records-title{margin-top:0 !important;margin-bottom:16px !important;padding:0 !important;min-height:0 !important;line-height:1 !important;}
.records-block .record-grid{margin-top:0 !important;padding-top:0 !important;}
.records-block .record-card img{width:100%;height:100%;object-fit:contain;background:#050505;}
.records-block .record-card{background:#050505;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.records-block .record-card.portrait{aspect-ratio:4/5;}
.records-block .record-card.landscape{aspect-ratio:4/3;}
@media(max-width:840px){.records-block .record-grid{grid-template-columns:1fr 1fr}.records-block .record-card.landscape{aspect-ratio:4/3}}
@media(max-width:560px){.records-block .record-grid{grid-template-columns:1fr}}

/* Ver.2.0.2 RECORDS size fix: keep RECORDS inside MUSIC section but make it full-width */
.records-block{
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 22px !important;
}
.records-block .record-grid{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  width: 100% !important;
}
.records-block .record-card{
  width: 100% !important;
}
@media(max-width:840px){
  .records-block .record-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:560px){
  .records-block .record-grid{grid-template-columns:1fr !important;}
}
/* v2.0.4: top small Wide Latin note */
.type-kicker-wrap {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 14px 0;
}

.type-kicker-one-man {
  display: block;
  width: min(440px, 92vw);
  height: auto;
}
.hero .kicker {
    font-family:
        "Wide Latin",
        "Copperplate Gothic Bold",
        "Arial Black",
        serif !important;

    font-size: 0.72rem !important;

    letter-spacing: 0.25em !important;

    font-weight: 900 !important;

    opacity: 0.88;
}
/* v2.0.4: restore hero title position */
.hero-grid {
  align-items: center !important;
}
/* v2.0.4: hero layout reset */
.hero-grid {
  display: block !important;
}

.hero .kicker {
  margin-bottom: 28px !important;
}

.hero .title {
  margin: 0 0 42px 0 !important;
  transform: none !important;
  max-width: 760px !important;
}

.hero .title img {
  display: block !important;
  width: min(760px, 92vw) !important;
  height: auto !important;
}
/* v2.0.4: Safari fallback tuning for top kicker */
@supports (-webkit-hyphens: none) {
  .hero .kicker {
    font-size: 0.88rem !important;
    letter-spacing: 0.22em !important;
    font-weight: 900 !important;
    -webkit-text-stroke: 0.35px #001eff;
    transform: scaleX(1.12);
    transform-origin: left center;
  }
}
/* v2.0.4: RECORDS heading size down */
.records-title .type-heading {
  width: min(500px, 72vw) !important;
}
/* temporary disable header test
.site-header .brand img {
  width: 92px !important;
  height: auto !important;
}

.site-header .type-brand {
  width: 540px !important;
  max-width: none !important;
}
*/
/* v2.0.5: header logo mark size up only */
.site-header .brand-with-logo > img {
  width: 105px !important;
  height: auto !important;
  max-width: none !important;
}
/* v2.0.7: ONE MAN ARMY two-line SVG */
.hero .kicker-svg {
  display: block !important;
  width: min(320px, 78vw) !important;
  margin: 0 0 28px 0 !important;
  overflow: visible !important;
}

.hero .kicker-svg img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}