/* 2026-08-13 — bright digital atelier refresh for yamada-ryosuke.com */
:root {
  --atelier-ivory:#eef3ec;
  --atelier-cyan:#7ef1df;
  --atelier-blue:#7596ff;
  --atelier-coral:#ff7a9d;
  --atelier-ink:#f4faf7;
  --atelier-panel:rgba(7,17,25,.78);
}

html,body { max-width:100%; overflow-x:clip!important; }
body { background:#061018; }
a,button,input,textarea { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible {
  outline:3px solid var(--atelier-cyan)!important;
  outline-offset:4px!important;
}
button:disabled { cursor:not-allowed; opacity:.52; }

/* Opening: typography, room scan and light all move on separate, quiet layers. */
.heroscroll { height:165vh!important; }
.hero { background:linear-gradient(145deg,#0c2130 0%,#07121c 52%,#182033 100%); }
.heroscrim {
  background:
    linear-gradient(90deg,rgba(5,15,23,.72),rgba(5,15,23,.16) 48%,rgba(5,15,23,.62)),
    radial-gradient(54% 52% at 50% 31%,rgba(176,255,238,.08),transparent 70%),
    linear-gradient(180deg,rgba(6,15,23,.18),transparent 38%,rgba(5,12,19,.88));
}
.hero::after {
  content:"";
  position:absolute;
  z-index:2;
  inset:0;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 25%,rgba(194,255,244,.09) 47%,transparent 64%);
  transform:translateX(-45%);
  animation:atelier-light 11s ease-in-out infinite alternate;
}
@keyframes atelier-light { to { transform:translateX(42%); } }

.hero-signature { opacity:.84; }
.hero-signature__line {
  color:rgba(232,255,249,.035);
  -webkit-text-stroke:1px rgba(196,255,243,.30);
  text-shadow:0 0 80px rgba(110,236,224,.14);
}
.hero-signature__line--one { top:12%; font-family:var(--serif); font-size:clamp(7rem,15vw,17rem); animation-duration:32s; }
.hero-signature__line--two { bottom:8%; font-family:var(--sans); font-size:clamp(8rem,18vw,20rem); animation-duration:40s; }
.hero-signature__line--three {
  top:57%;
  font-family:"Arial Narrow",var(--sans);
  font-size:clamp(3.6rem,8.4vw,9rem);
  font-weight:500;
  letter-spacing:.015em;
  color:rgba(255,122,157,.035);
  -webkit-text-stroke:1px rgba(255,156,181,.22);
  animation-duration:46s;
  animation-direction:reverse;
}
.hero-signature__stamp { top:46%; color:rgba(238,255,251,.7); }
.herotext { top:12.5%!important; z-index:5; pointer-events:none; }
.herotext .avatar { width:82px; height:82px; margin-bottom:13px; border-radius:18px; box-shadow:10px 10px 0 rgba(126,241,223,.12),0 22px 50px rgba(0,0,0,.45); }
.herotext .k { margin-bottom:10px; font-size:.58rem; }
.herotext h1 { font-size:clamp(2.7rem,6.2vw,5.3rem); letter-spacing:.035em; text-wrap:balance; }
.herotext h1 span { margin-top:10px; }
.herotext p { margin-top:10px; }
.hero-focus { margin-top:14px; }

.intro-socials {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  width:min(880px,90vw);
  margin:24px auto 0;
  border-top:1px solid rgba(214,255,248,.42);
  border-bottom:1px solid rgba(214,255,248,.20);
  pointer-events:auto;
  text-align:left;
}
.intro-socials a {
  display:grid;
  grid-template-columns:28px 1fr;
  gap:2px 10px;
  min-height:66px;
  padding:12px 15px;
  border-right:1px solid rgba(214,255,248,.16);
  background:linear-gradient(135deg,rgba(5,16,24,.62),rgba(10,24,33,.34));
  transition:background .25s ease,color .25s ease,transform .25s ease;
}
.intro-socials a:last-child { border-right:0; }
.intro-socials a:hover { color:#051714; background:var(--atelier-cyan); transform:translateY(-3px); }
.intro-socials__no { grid-row:1/3; color:var(--atelier-coral); font-family:var(--serif); font-size:.75rem; }
.intro-socials__name { font-size:.78rem; font-weight:800; letter-spacing:.08em; }
.intro-socials__role { color:#afc7cd; font-size:.48rem; letter-spacing:.12em; line-height:1.4; }
.intro-socials a:hover .intro-socials__role,.intro-socials a:hover .intro-socials__no { color:#143d38; }

/* Shared editorial rhythm. */
section.block { padding:clamp(96px,12vh,148px) 0; }
section.block>.wrap { position:relative; width:min(100%,1540px); max-width:1540px!important; padding-inline:clamp(24px,4.8vw,78px)!important; }
#profile .wrap,#works .wrap,#research .wrap,#bansou .wrap,#contact .wrap { content-visibility:visible!important; contain:none!important; }
.section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:32px; margin-bottom:28px; }
.section-heading .eyebrow { position:relative!important; top:auto!important; margin-bottom:13px!important; text-align:left!important; }
.section-heading .sectitle { margin:0; }
.section-index {
  flex:0 0 auto;
  color:transparent;
  -webkit-text-stroke:1px rgba(177,255,243,.46);
  font-family:var(--serif);
  font-size:clamp(4.8rem,9vw,9.5rem);
  line-height:.7;
  letter-spacing:-.08em;
}
.sectitle { letter-spacing:-.035em; text-wrap:balance; }
.trustlead { max-width:760px; color:#c1d0d5; font-size:1rem; line-height:1.85; }
.secskew .kj { right:-4%; opacity:.42; }

.more,.nbmore,.ndet a.open,.journal-link,.aistage-link,.cform button {
  border-radius:0!important;
}
.more,.nbmore,.ndet a.open,.cform button {
  clip-path:polygon(0 0,calc(100% - 11px) 0,100% 11px,100% 100%,11px 100%,0 calc(100% - 11px));
}
.more:active,.nbmore:active,.cform button:active { transform:translateY(1px); }

/* News: the verified editing work leads, appearances follow at quieter volumes. */
#news { overflow:hidden; }
#news .secskew { --s1:rgba(11,30,40,.97); --s2:rgba(8,17,28,.96); }
#news .section-heading { margin-bottom:18px; }
.quiz-feature { margin-top:clamp(34px,5vw,66px); }
.quiz-feature__head { display:grid; grid-template-columns:minmax(220px,.62fr) minmax(280px,1fr); gap:30px; align-items:end; padding-bottom:18px; border-bottom:1px solid rgba(171,238,229,.38); }
.quiz-feature__head>span { color:var(--atelier-cyan); font-size:.68rem; font-weight:800; letter-spacing:.24em; }
.quiz-feature__head p { color:#b7c8ce; font-size:.86rem; line-height:1.65; }
.quiz-feature__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(164,235,225,.18); }
.quiz-work {
  display:grid;
  grid-template-columns:minmax(240px,.95fr) minmax(260px,1.05fr);
  min-height:320px;
  color:var(--atelier-ink);
  background:#08151f;
  transition:background .3s ease;
}
.quiz-work:hover { background:#102734; }
.quiz-work figure { position:relative; min-height:100%; overflow:hidden; background:#02070b; }
.quiz-work figure::after { content:""; position:absolute; inset:0; box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); pointer-events:none; }
.quiz-work img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .65s cubic-bezier(.2,.75,.2,1); }
.quiz-work:hover img { transform:scale(1.035); }
.quiz-work>div { display:flex; flex-direction:column; justify-content:center; padding:clamp(24px,3vw,46px); }
.quiz-work__index { color:var(--atelier-coral); font-size:.62rem; font-weight:800; letter-spacing:.22em; }
.quiz-work h3 { margin:20px 0 18px; font-family:var(--serif); font-size:clamp(1.45rem,2vw,2.3rem); font-weight:400; line-height:1.34; }
.quiz-work p { color:#b2c3ca; font-size:.82rem; line-height:1.7; }
.quiz-work__action { display:block; margin-top:30px; padding-top:14px; border-top:1px solid rgba(126,241,223,.32); color:var(--atelier-cyan); font-size:.72rem; font-weight:700; letter-spacing:.08em; }

.nmarq { margin-top:clamp(48px,7vw,82px); overflow:hidden; }
.nmarq .ntrack { display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr))!important; gap:0!important; width:100%!important; }
.nmcard { min-width:0!important; height:340px; border:0!important; border-left:1px solid rgba(178,238,230,.18)!important; border-radius:0!important; background:transparent!important; }
.nmcard:last-child { border-right:1px solid rgba(178,238,230,.18)!important; }
.nmcard,.nmcard:nth-child(-n+2) { grid-column:span 1!important; }
.nmcard .nmvisual,.nmcard:nth-child(n+3) .nmvisual { height:142px; aspect-ratio:auto; }
.nmcard .nmshots { display:none; }
.nmcard .nmt,.nmcard:nth-child(n+3) .nmt { padding:16px!important; }
.nmcard .nmtl,.nmcard:nth-child(n+3) .nmtl { display:-webkit-box; overflow:hidden; font-size:.96rem!important; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.nmcard .nmdesc { display:-webkit-box; overflow:hidden; font-size:.72rem!important; line-height:1.55!important; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.nmcard .nmcredit { display:none; }
.newsbox { border:0!important; border-top:1px solid rgba(176,235,228,.30)!important; border-radius:0!important; background:transparent!important; }
.newsbox.collapsed .nrow:nth-child(n+5) { display:none!important; }
.nrow { border-color:rgba(176,235,228,.15)!important; }
.nhead { min-height:74px; }
.nthumb { border-radius:0!important; clip-path:polygon(0 0,100% 0,90% 100%,0 100%); }

/* Four words hold a stable footprint while changing voice independently. */
#aicone .secskew { --s1:rgba(19,24,54,.98); --s2:rgba(8,31,37,.96); }
#aicone .aicone-head { grid-template-columns:minmax(420px,.9fr) minmax(540px,1.1fr); gap:clamp(48px,6vw,102px); }
#aicone .aicone-symbol { border-radius:8px; }
#aicone .vision-title {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.02em .12em;
  width:min(100%,820px);
  margin:0 0 34px;
  font-size:clamp(3.2rem,5.6vw,6.5rem);
  line-height:.9;
  letter-spacing:-.05em;
}
.vision-word {
  display:block;
  min-width:0;
  height:.96em;
  overflow:visible;
  white-space:nowrap;
  color:#f7faf9;
  font-size:1em;
  font-weight:600;
  letter-spacing:-.055em;
  transition:color .5s ease,text-shadow .5s ease;
  contain:layout style;
}
.vision-word:nth-child(2),.vision-word:nth-child(3) { color:#c7fff5; }
.font-gothic { font-family:var(--sans); font-weight:800; }
.font-mincho { font-family:var(--serif); font-weight:400; letter-spacing:-.08em; }
.font-script { font-family:"Snell Roundhand","Brush Script MT",cursive; font-weight:500; letter-spacing:-.03em; }
.font-display { font-family:Impact,"Arial Black",var(--sans); font-weight:900; letter-spacing:-.035em; text-transform:uppercase; }
.aicard .face.front { clip-path:polygon(3% 0,100% 0,100% 94%,0 100%,0 6%)!important; }
.aislot { height:auto!important; aspect-ratio:16/9; }
.aislot video { object-fit:cover; }
.aipreview-hint { max-width:calc(100% - 34px); }

/* Journal CTA reads like a small editorial invitation, not an admin command. */
.journal-link { grid-template-columns:1fr!important; gap:7px!important; clip-path:none!important; }
.journal-link span:last-child { color:#afc8ce!important; font-size:.72rem!important; font-weight:700; letter-spacing:.12em; }

/* Research: evidence and explanation share the width; the kanji no longer owns the frame. */
#research .secskew { --s1:rgba(5,34,35,.98); --s2:rgba(5,18,26,.97); }
#research .secskew .kj { display:none; }
#research .section-heading { margin-bottom:48px; }
#research .research-stage { grid-template-columns:minmax(360px,.86fr) minmax(520px,1.14fr); gap:clamp(48px,7vw,120px); }
#research .research-question { font-size:clamp(2.5rem,4.4vw,5.4rem); }
#research .research-collage { min-height:590px; }
#research .research-findings { margin-top:64px; }

/* Tutoring belongs to the same atelier: a wide editorial spread, not a legacy island. */
#bansou { overflow:hidden; }
#bansou .secskew { --s1:rgba(21,24,43,.98); --s2:rgba(9,20,28,.97); }
#bansou::after {
  content:"TEACHING / MAKING";
  position:absolute;
  z-index:-1;
  right:-.04em;
  bottom:2%;
  color:transparent;
  -webkit-text-stroke:1px rgba(150,174,255,.12);
  font-family:var(--sans);
  font-size:clamp(7rem,17vw,18rem);
  font-weight:900;
  letter-spacing:-.08em;
  white-space:nowrap;
  pointer-events:none;
}
#bansou .edcols { grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr); gap:clamp(52px,8vw,130px); }
#bansou .bansou-copy { max-width:760px; }
#bansou .lead { font-size:clamp(1rem,1.35vw,1.24rem); line-height:1.95; }
#bansou .secfig { display:block; position:relative; min-height:480px; }
#bansou .secfig img { position:absolute; width:88%; height:auto; border-radius:0; clip-path:polygon(5% 0,100% 0,95% 100%,0 100%); }
#bansou .secfig img:first-child { top:0; left:0; transform:rotate(-1.4deg); }
#bansou .secfig img+img { right:0; bottom:0; margin:0; transform:rotate(1.2deg); }
#bansou .chip { border-radius:0!important; }

/* Profile: vertical chapters with a dedicated rail. Lines never pass through copy. */
#profile .secskew { --s1:rgba(24,17,42,.98); --s2:rgba(7,17,27,.97); }
#profile .secskew .kj { opacity:.16; }
#profile .profile-opening { display:grid; grid-template-columns:minmax(180px,.38fr) minmax(0,1.25fr); gap:clamp(34px,5vw,82px); margin:0 0 50px; padding-bottom:36px; border-bottom:1px solid rgba(197,182,255,.28); }
.life-list { position:relative; max-width:1240px; margin:0 auto; }
.life-list::before { content:""; position:absolute; top:20px; bottom:22px; left:206px; width:1px; background:linear-gradient(180deg,var(--atelier-blue),var(--atelier-cyan),rgba(255,255,255,.28)); }
.life-event,.life-event:nth-child(odd),.life-event:nth-child(even) {
  position:relative;
  display:grid!important;
  grid-template-columns:176px minmax(0,1fr);
  gap:60px;
  min-height:0!important;
  margin:0!important;
  padding:36px 0 42px;
  border-top:1px solid rgba(255,255,255,.13);
  color:inherit;
  transform:none!important;
  scroll-snap-align:none!important;
}
.life-event:first-child { border-top:0; }
.life-event::before { content:""; position:absolute; left:198px; top:47px; width:17px; height:5px; background:var(--atelier-cyan); box-shadow:0 0 18px rgba(126,241,223,.45); }
.life-event.is-turning::before { width:31px; background:var(--atelier-coral); }
.life-meta { text-align:right; }
.life-year { display:block; margin:0!important; color:#f5fbf9; font-size:clamp(2rem,3.2vw,3.7rem)!important; line-height:.86!important; }
.life-phase { display:block; margin-top:14px; color:#bcaeff; font-size:.58rem; font-weight:800; letter-spacing:.18em; line-height:1.45; }
.life-body { min-width:0; }
.life-body:has(figure) { display:grid; grid-template-columns:minmax(0,1fr) minmax(210px,290px); gap:clamp(28px,4vw,60px); align-items:start; }
.life-body h3 { grid-column:1; margin:0 0 12px; font-family:var(--serif); font-size:clamp(1.5rem,2.4vw,2.65rem); font-weight:400; line-height:1.25; }
.life-body p { grid-column:1; color:#b6c5cc; font-size:.92rem; line-height:1.9; }
.life-body figure { grid-column:2; grid-row:1/3; margin:0; }
.life-body img { width:100%; height:170px!important; margin:0!important; object-fit:cover; filter:saturate(.78); clip-path:polygon(4% 0,100% 0,94% 100%,0 100%); }
.life-event:hover h3 { color:var(--atelier-cyan); }

/* Awards keep their current editorial list; mobile is no longer converted to a card wall. */
#works .secskew { --s1:rgba(8,24,35,.98); --s2:rgba(7,12,20,.98); }

/* Contact is a clear final room. */
#contact { padding:clamp(110px,16vh,180px) 0; border-top:1px solid rgba(152,242,228,.52); isolation:isolate; overflow:hidden; }
#contact::before {
  content:"CONTACT / CONTACT / CONTACT";
  position:absolute;
  z-index:-1;
  left:-2%;
  top:8%;
  color:transparent;
  -webkit-text-stroke:1px rgba(157,242,229,.12);
  font-family:var(--sans);
  font-size:clamp(6rem,14vw,15rem);
  font-weight:900;
  line-height:.8;
  white-space:nowrap;
  animation:contact-drift 36s linear infinite;
}
@keyframes contact-drift { to { transform:translateX(-24%); } }
#contact .secskew { --s1:rgba(8,42,45,.99); --s2:rgba(5,14,22,.99); }
#contact .secskew .simg { opacity:.05; }
#contact .secskew .kj { display:none; }
#contact>.wrap { max-width:940px!important; padding:clamp(34px,5vw,72px)!important; border:1px solid rgba(157,242,229,.25); background:linear-gradient(135deg,rgba(7,25,31,.88),rgba(6,15,24,.72)); backdrop-filter:blur(10px); }
#contact .sectitle { font-size:clamp(2.6rem,5vw,5.2rem); }
.cform input,.cform textarea { border-radius:0!important; }

/* Calm reveal: motion supplies life but never changes reading order or text position after entry. */
.reveal .section-heading,.reveal .quiz-feature,.reveal .life-event {
  opacity:0;
  transform:translateY(28px);
  transition:opacity .75s ease,transform .9s cubic-bezier(.2,.75,.2,1);
}
.reveal.in .section-heading,.reveal.in .quiz-feature,.reveal.in .life-event { opacity:1; transform:none; }
.reveal.in .quiz-feature { transition-delay:.12s; }

@media (min-width:1000px) {
  section.block { min-height:0!important; display:block!important; }
  section.block>.wrap { display:block!important; }
}

@media (max-width:1180px) {
  #aicone .aicone-head,#research .research-stage { grid-template-columns:1fr; }
  #aicone .aicone-copy { max-width:820px; }
  #research .research-copy { max-width:760px; }
  #research .research-collage { min-height:520px; }
  .quiz-work { grid-template-columns:1fr; }
  .quiz-work figure { min-height:220px; }
  #bansou .edcols { grid-template-columns:minmax(0,1fr) 380px; }
}

@media (max-width:820px) {
  .heroscroll { height:135vh!important; }
  .hero { min-height:640px!important; }
  .hero-signature__line--one { top:14%; font-size:33vw; }
  .hero-signature__line--two { bottom:12%; font-size:38vw; }
  .hero-signature__line--three { top:62%; font-size:19vw; }
  .hero-signature__stamp { display:none; }
  .herotext { top:14.5%!important; padding-inline:14px!important; }
  .herotext .avatar { width:74px!important; height:74px!important; margin-bottom:10px!important; border-radius:12px; }
  .herotext .k { max-width:none; font-size:.49rem!important; letter-spacing:.12em!important; }
  .herotext h1 { font-size:clamp(2.05rem,10vw,3rem)!important; }
  .herotext h1 span { font-size:.58rem!important; }
  .herotext p { font-size:.76rem!important; }
  .hero-focus { margin-top:11px!important; font-size:.48rem!important; }
  .intro-socials { grid-template-columns:repeat(2,minmax(0,1fr)); width:min(94vw,510px); margin-top:15px; }
  .intro-socials a { min-height:48px; padding:8px 10px; }
  .intro-socials a:nth-child(2) { border-right:0; }
  .intro-socials a:nth-child(-n+2) { border-bottom:1px solid rgba(214,255,248,.16); }
  .intro-socials__role { display:none; }

  section.block { padding:78px 0; }
  section.block>.wrap { padding-inline:18px!important; }
  .section-heading { align-items:flex-end; gap:14px; margin-bottom:24px; }
  .section-heading .sectitle { font-size:clamp(2.1rem,10.8vw,3.2rem)!important; line-height:1.08; }
  .section-index { font-size:4.5rem; line-height:.78; }
  .trustlead { display:block!important; font-size:.82rem; line-height:1.75; }

  .quiz-feature { margin-top:32px; }
  .quiz-feature__head { grid-template-columns:1fr; gap:10px; }
  .quiz-feature__grid { grid-template-columns:1fr; }
  .quiz-work { grid-template-columns:1fr; min-height:0; }
  .quiz-work figure { min-height:0; aspect-ratio:16/9; }
  .quiz-work>div { padding:22px 18px 26px; }
  .quiz-work h3 { margin:14px 0 10px; font-size:1.55rem; }
  .quiz-work__action { margin-top:18px; }

  .nmarq { width:calc(100% + 36px)!important; margin:42px -18px 0!important; padding:0 18px 14px!important; overflow-x:auto; }
  .nmarq .ntrack { display:flex!important; gap:10px!important; width:max-content!important; }
  .nmarq .nmcard,.nmarq .nmcard:nth-child(n+3) { flex:0 0 min(78vw,320px); height:auto; min-height:330px; border:1px solid rgba(178,238,230,.18)!important; }
  .nmcard .nmvisual,.nmcard:nth-child(n+3) .nmvisual { height:auto; aspect-ratio:16/9; }
  .newsbox { display:block!important; width:100%!important; margin-left:0!important; padding:0!important; overflow:visible!important; }
  .newsbox .nrow { min-height:0!important; margin:0; border-width:0 0 1px!important; background:transparent!important; }
  .newsbox .nhead { grid-template-columns:48px 1fr!important; padding:12px 4px!important; }

  #aicone .vision-title { grid-template-columns:1fr 1fr; width:100%; font-size:clamp(2.6rem,13.5vw,4rem)!important; line-height:.94; }
  #aicone .aicone-head { gap:34px; }
  .aifull { width:calc(100% + 36px)!important; margin-inline:-18px!important; }
  .aipreview-hint { right:10px!important; bottom:9px!important; font-size:.52rem!important; }

  #research .section-heading { margin-bottom:30px; }
  #research .research-stage { grid-template-columns:1fr; gap:28px; }
  #research .research-question { font-size:clamp(2rem,10vw,3.2rem); }
  #research .research-collage { min-height:330px!important; }
  #research .research-findings { display:grid!important; grid-template-columns:1fr!important; margin-top:34px!important; overflow:visible!important; }
  #research .research-findings article { min-width:0; border-right:0; }

  #bansou .edcols { grid-template-columns:1fr; gap:34px!important; }
  #bansou .secfig { min-height:330px!important; }
  #bansou .secfig img { width:88%; }
  #bansou::after { bottom:14%; font-size:25vw; }

  #profile .profile-opening { grid-template-columns:1fr; gap:12px; margin-bottom:28px; padding-bottom:24px; }
  .life-list { margin:0; }
  .life-list::before { display:none; }
  .life-event,.life-event:nth-child(odd),.life-event:nth-child(even) {
    display:block!important;
    width:100%;
    min-height:0!important;
    padding:28px 0 34px!important;
    border:0!important;
    border-top:1px solid rgba(255,255,255,.15)!important;
    background:transparent!important;
  }
  .life-event:first-child { border-top:0!important; }
  .life-event::before { left:0; top:0; width:48px; height:2px; }
  .life-meta { text-align:left; }
  .life-year { font-size:2.5rem!important; }
  .life-phase { margin-top:8px; }
  .life-body,.life-body:has(figure) { display:grid; grid-template-columns:1fr; gap:0; margin-top:18px; }
  .life-body h3,.life-body p,.life-body figure { grid-column:1; grid-row:auto; }
  .life-body h3 { font-size:1.7rem; }
  .life-body p { font-size:.83rem; line-height:1.75; }
  .life-body figure { margin-top:18px; }
  .life-body img { height:auto!important; aspect-ratio:16/9; }

  #works-area { display:block!important; }
  .award-row { display:grid!important; grid-template-columns:38px minmax(0,1fr) 30px!important; min-height:0!important; padding:20px 0!important; border:0!important; border-bottom:1px solid rgba(255,255,255,.17)!important; background:transparent!important; }
  .award-row figure { display:none!important; }
  .award-copy { display:block!important; }
  .award-copy b { font-size:1.16rem!important; }
  .award-copy span { margin-top:6px; font-size:.72rem!important; }
  .award-arrow { display:block!important; font-size:.5rem!important; }

  #contact { padding:90px 0; }
  #contact>.wrap { width:calc(100% - 28px); padding:28px 18px!important; }
  #contact .sectitle { font-size:2.5rem!important; }
}

@media (max-width:390px) {
  .herotext { top:13%!important; }
  .herotext .avatar { width:66px!important; height:66px!important; }
  .intro-socials a { padding:7px 8px; }
  .section-index { font-size:3.8rem; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto!important; }
  *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .hero::after { transform:none!important; }
  .hero-signature__line { transform:none!important; }
  .reveal,.reveal * { opacity:1!important; filter:none!important; transform:none!important; }
  .site-atmosphere-film,.journal-film { display:none!important; }
}
