:root {
  --ea-ink: #111;
  --ea-paper: #f4f0e5;
  --ea-blue: #1736ff;
  --ea-coral: #ef4c3f;
  --ea-yellow: #f7c817;
  --ea-pink: #db4b8d;
  --ea-gutter: clamp(24px,5.9vw,114px);
}

.everyart-theme { --accent: #d4ff36; background: #000; color: var(--ea-ink); }
.everyart-loader .page-loader__brand span,
.everyart-loader .page-loader__progress::after { color: var(--ea-coral); }
.everyart-loader .page-loader__kicker i,
.everyart-loader .page-loader__meter span { background: var(--ea-coral); box-shadow: 0 0 20px rgba(239,76,63,.62); }
.everyart-loader::after { background: linear-gradient(transparent,rgba(239,76,63,.8),transparent); }
.everyart-page { overflow: hidden; border-radius: 0 0 30px 30px; background: var(--ea-paper); }

.everyart-hero { position: relative; min-height: 100vh; min-height: 100dvh; padding: clamp(128px,11vw,186px) var(--ea-gutter) clamp(96px,8vw,136px); overflow: hidden; background: var(--ea-paper); isolation: isolate; }
.everyart-hero::before { position: absolute; z-index: -1; inset: 0; background-image: linear-gradient(rgba(17,17,17,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(17,17,17,.055) 1px,transparent 1px); background-size: min(9vw,150px) min(9vw,150px); content: ""; }
.everyart-hero__meta { position: relative; z-index: 3; display: grid; grid-template-columns: 1fr auto auto; gap: 28px; padding-bottom: 13px; border-bottom: 1px solid rgba(17,17,17,.28); color: #68665f; font-size: 8px; font-weight: 650; letter-spacing: .13em; text-transform: uppercase; }
.everyart-hero__brand { position: relative; z-index: 3; display: flex; align-items: center; gap: 18px; margin-top: clamp(25px,3vw,46px); }
.everyart-hero__brand img:first-child { width: 42px; height: 42px; object-fit: contain; }
.everyart-hero__brand img:last-child { width: min(260px,34vw); }
.everyart-hero__title { position: relative; z-index: 3; max-width: 1180px; margin: clamp(42px,5vw,80px) 0 0; font-size: clamp(76px,10.6vw,202px); font-weight: 650; line-height: .77; letter-spacing: -.085em; text-transform: uppercase; }
.everyart-hero__title em { color: var(--ea-blue); font-family: var(--font-serif); font-weight: 400; text-transform: none; }
.everyart-hero__intro { position: relative; z-index: 3; width: min(470px,39vw); margin: clamp(38px,4vw,64px) 0 0; font-size: clamp(15px,1.2vw,19px); line-height: 1.58; }
.everyart-button { position: relative; z-index: 4; display: flex; align-items: center; justify-content: space-between; width: min(360px,100%); margin-top: 28px; padding: 17px 18px; border-radius: 999px; background: var(--ea-ink); color: #fff; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; transition: padding .35s ease,background .35s ease,color .35s ease; }
.everyart-button:hover { padding-inline: 25px; background: var(--ea-blue); }
.everyart-button i { color: var(--accent); font-size: 17px; font-style: normal; }
.everyart-hero__art { position: absolute; z-index: 1; right: 0; bottom: 0; width: 61%; height: 50%; margin: 0; overflow: hidden; }
.everyart-hero__art::after { position: absolute; inset: 0; background: linear-gradient(90deg,var(--ea-paper),transparent 24%),linear-gradient(180deg,var(--ea-paper),transparent 26%); content: ""; }
.everyart-hero__art img { width: 100%; height: calc(100% + 90px); object-fit: cover; object-position: center; translate: 0 calc(var(--ea-scroll,0) * -.045px); }
.everyart-hero__phone { position: absolute; z-index: 2; right: clamp(4%,8vw,12%); bottom: -16%; width: clamp(300px,36vw,660px); max-width: none; filter: drop-shadow(0 44px 45px rgba(0,0,0,.28)); translate: 0 calc(var(--ea-scroll,0) * -.07px); }
.everyart-hero__index { position: absolute; z-index: 0; left: -2vw; bottom: -5vw; color: #fff; font-size: clamp(170px,29vw,540px); font-weight: 700; line-height: .7; letter-spacing: -.13em; mix-blend-mode: soft-light; }
.everyart-marquee { display: flex; width: max-content; overflow: hidden; background: var(--ea-coral); color: var(--ea-ink); font-size: clamp(32px,4.4vw,78px); font-weight: 700; line-height: 1.18; letter-spacing: -.045em; white-space: nowrap; }
.everyart-marquee span { animation: ea-marquee 24s linear infinite; }
@keyframes ea-marquee { to { translate: -100% 0; } }

.everyart-manifesto,.everyart-principles { padding: clamp(96px,11vw,190px) var(--ea-gutter); background: var(--ea-ink); color: #fff; }
.everyart-section-head { display: grid; grid-template-columns: .55fr 1.45fr; gap: 42px; padding-bottom: clamp(56px,7vw,116px); border-bottom: 1px solid rgba(17,17,17,.25); }
.everyart-section-head--light { border-color: rgba(255,255,255,.22); }
.everyart-section-head > p { margin: 0; color: rgba(17,17,17,.48); font-size: 9px; font-weight: 650; letter-spacing: .14em; text-transform: uppercase; }
.everyart-section-head--light > p { color: rgba(255,255,255,.44); }
.everyart-section-head h2 { margin: 0; font-size: clamp(54px,7.5vw,144px); font-weight: 650; line-height: .82; letter-spacing: -.078em; text-transform: uppercase; }
.everyart-section-head h2 em { color: var(--ea-blue); font-family: var(--font-serif); font-weight: 400; text-transform: none; }
.everyart-section-head--light h2 em { color: var(--ea-yellow); }
.everyart-manifesto__body { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(48px,8vw,150px); padding: clamp(70px,9vw,150px) 0; }
.everyart-manifesto__lead { max-width: 700px; margin: 0; color: var(--ea-yellow); font-family: var(--font-serif); font-size: clamp(40px,5vw,90px); line-height: 1.04; letter-spacing: -.04em; }
.everyart-manifesto__copy { align-self: end; max-width: 660px; color: rgba(255,255,255,.62); font-size: clamp(15px,1.2vw,19px); line-height: 1.68; }
.everyart-manifesto__copy p { margin: 0 0 24px; }
.everyart-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.22); border-left: 1px solid rgba(255,255,255,.22); }
.everyart-stat { min-height: clamp(270px,23vw,420px); padding: clamp(22px,2.8vw,44px); border-right: 1px solid rgba(255,255,255,.22); border-bottom: 1px solid rgba(255,255,255,.22); transition: background .35s ease,color .35s ease; }
.everyart-stat:hover { background: var(--ea-blue); }
.everyart-stat span { color: rgba(255,255,255,.42); font-size: 8px; font-weight: 650; letter-spacing: .13em; }
.everyart-stat strong { display: block; margin: clamp(54px,6vw,96px) 0 18px; font-size: clamp(54px,5.7vw,108px); line-height: .8; letter-spacing: -.07em; }
.everyart-stat p { max-width: 240px; margin: 0; color: rgba(255,255,255,.58); font-size: 11px; line-height: 1.5; }

.everyart-product { padding: clamp(96px,11vw,190px) var(--ea-gutter); background: #faf8f2; }
.everyart-product__intro { display: grid; grid-template-columns: .55fr 1.45fr; gap: 42px; padding: clamp(42px,6vw,90px) 0; }
.everyart-product__intro p { grid-column: 2; max-width: 720px; margin: 0; font-size: clamp(18px,2.1vw,38px); line-height: 1.35; letter-spacing: -.035em; }
.everyart-product__intro span { grid-column: 2; color: #77746b; font-size: 8px; font-weight: 650; letter-spacing: .12em; text-transform: uppercase; }
.everyart-screens { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 12px; }
.everyart-screen { position: relative; grid-column: span 6; min-height: clamp(520px,57vw,980px); margin: 0; overflow: hidden; isolation: isolate; }
.everyart-screen:nth-child(3),.everyart-screen:nth-child(6) { grid-column: span 7; }
.everyart-screen:nth-child(4),.everyart-screen:nth-child(5) { grid-column: span 5; }
.everyart-screen::before { position: absolute; inset: auto auto 7% 8%; width: 60%; aspect-ratio: 1; border: clamp(28px,4vw,72px) solid rgba(255,255,255,.18); border-radius: 50%; content: ""; }
.everyart-screen img { position: absolute; z-index: 1; left: 50%; bottom: -6%; width: 90%; height: 94%; object-fit: contain; translate: -50% 0; transition: translate .65s cubic-bezier(.16,1,.3,1); }
.everyart-screen:hover img { translate: calc(-50% + 8px) -9px; }
.everyart-screen figcaption { position: absolute; z-index: 2; left: 20px; right: 20px; bottom: 18px; display: flex; justify-content: space-between; padding-top: 12px; border-top: 1px solid currentColor; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.everyart-screen--blue { background: var(--ea-blue); color: #fff; }
.everyart-screen--cream { background: #e7dfcc; }
.everyart-screen--coral { background: var(--ea-coral); }
.everyart-screen--yellow { background: var(--ea-yellow); }
.everyart-screen--pink { background: var(--ea-pink); color: #fff; }
.everyart-screen--ink { background: var(--ea-ink); color: #fff; }

.everyart-principles__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); padding-top: clamp(70px,8vw,130px); border-top: 1px solid rgba(255,255,255,.22); }
.everyart-principle { min-height: clamp(330px,31vw,560px); padding: clamp(28px,4vw,62px); border-right: 1px solid rgba(255,255,255,.22); border-bottom: 1px solid rgba(255,255,255,.22); transition: background .35s ease,color .35s ease; }
.everyart-principle:nth-child(odd) { border-left: 1px solid rgba(255,255,255,.22); }
.everyart-principle:hover { background: var(--ea-coral); color: var(--ea-ink); }
.everyart-principle > span { color: var(--ea-yellow); font-size: 9px; font-weight: 700; }
.everyart-principle h3 { margin: clamp(75px,8vw,135px) 0 22px; font-size: clamp(54px,6.3vw,118px); line-height: .77; letter-spacing: -.08em; }
.everyart-principle p { max-width: 500px; margin: 0; color: rgba(255,255,255,.58); font-size: 13px; line-height: 1.58; }
.everyart-principle:hover p { color: rgba(17,17,17,.67); }

.everyart-origin { display: grid; grid-template-columns: .8fr 1.2fr; min-height: 100vh; background: var(--ea-paper); }
.everyart-origin__image { min-height: 720px; margin: 0; overflow: hidden; background: var(--ea-coral); }
.everyart-origin__image img { width: 100%; height: 100%; object-fit: cover; object-position: 60% center; }
.everyart-origin__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(70px,9vw,150px) var(--ea-gutter); }
.everyart-origin__label { margin: 0 0 clamp(60px,8vw,130px); color: #77746b; font-size: 9px; font-weight: 650; letter-spacing: .13em; text-transform: uppercase; }
.everyart-origin h2 { margin: 0 0 clamp(50px,6vw,90px); font-size: clamp(72px,9.5vw,180px); line-height: .76; letter-spacing: -.085em; text-transform: uppercase; }
.everyart-origin h2 em { color: var(--ea-blue); font-family: var(--font-serif); font-weight: 400; text-transform: none; }
.everyart-origin__english { max-width: 670px; margin: 0 0 30px; font-size: clamp(17px,1.55vw,25px); line-height: 1.55; letter-spacing: -.02em; }
.everyart-origin blockquote { max-width: 670px; margin: 0 0 38px; padding: 26px 0; border-top: 1px solid rgba(17,17,17,.25); border-bottom: 1px solid rgba(17,17,17,.25); color: #5e5b54; font-size: 14px; line-height: 1.75; }
.everyart-origin__credits { max-width: 650px; margin: 0; color: #77746b; font-size: 11px; line-height: 1.58; }

.everyart-download { display: grid; grid-template-columns: 1fr 1fr; min-height: 90vh; background: var(--ea-blue); color: #fff; }
.everyart-download__art { align-self: stretch; width: 100%; height: 100%; object-fit: cover; }
.everyart-download__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(70px,9vw,150px) var(--ea-gutter); }
.everyart-download__copy > p { margin: 0 0 auto; color: rgba(255,255,255,.55); font-size: 9px; font-weight: 650; letter-spacing: .13em; text-transform: uppercase; }
.everyart-download h2 { margin: clamp(80px,10vw,160px) 0 50px; font-size: clamp(70px,9vw,170px); line-height: .77; letter-spacing: -.085em; text-transform: uppercase; }
.everyart-download h2 em { color: var(--ea-yellow); font-family: var(--font-serif); font-weight: 400; text-transform: none; }
.everyart-button--light { background: #fff; color: var(--ea-ink); }
.everyart-button--light:hover { background: var(--ea-yellow); color: var(--ea-ink); }
.everyart-button--light i { color: var(--ea-blue); }
.everyart-footer__note { margin: 0; text-align: right; }

.everyart-reveal { opacity: 0; translate: 0 48px; clip-path: inset(0 0 12% 0); transition: opacity .8s ease,translate 1s cubic-bezier(.16,1,.3,1),clip-path 1s cubic-bezier(.16,1,.3,1); }
.everyart-reveal.is-visible { opacity: 1; translate: 0 0; clip-path: inset(0); }

@media (max-width: 900px) {
  .everyart-hero__art { width: 72%; }
  .everyart-hero__phone { right: 0; }
  .everyart-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .everyart-origin { grid-template-columns: 1fr; }
  .everyart-origin__image { min-height: 82vh; }
  .everyart-download { grid-template-columns: 1fr; }
  .everyart-download__art { max-height: 82vh; }
}

@media (max-width: 700px) {
  :root { --ea-gutter: 20px; }
  .everyart-page { border-radius: 0 0 20px 20px; }
  .everyart-hero { min-height: 920px; padding-top: 112px; }
  .everyart-hero__meta { grid-template-columns: 1fr auto; }
  .everyart-hero__meta span:nth-child(2) { display: none; }
  .everyart-hero__brand img:last-child { width: 180px; }
  .everyart-hero__title { font-size: clamp(66px,18.5vw,94px); }
  .everyart-hero__intro { width: 100%; max-width: 330px; }
  .everyart-hero__art { width: 100%; height: 41%; }
  .everyart-hero__phone { right: -22%; bottom: -4%; width: 105vw; }
  .everyart-section-head,.everyart-manifesto__body,.everyart-product__intro { grid-template-columns: 1fr; }
  .everyart-section-head h2 { margin-top: 28px; }
  .everyart-manifesto__copy { margin-top: 12px; }
  .everyart-stats { grid-template-columns: 1fr; }
  .everyart-product__intro p,.everyart-product__intro span { grid-column: 1; }
  .everyart-screen,.everyart-screen:nth-child(n) { grid-column: 1/-1; min-height: 620px; }
  .everyart-principles__grid { grid-template-columns: 1fr; }
  .everyart-principle,.everyart-principle:nth-child(odd) { border-left: 1px solid rgba(255,255,255,.22); }
  .everyart-origin__image { min-height: 640px; }
  .everyart-download__art { max-height: 620px; }
  .everyart-footer__note { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
  .everyart-marquee span { animation: none; }
  .everyart-reveal { opacity: 1 !important; translate: none !important; clip-path: none !important; transition: none !important; }
  .everyart-hero__art img,.everyart-hero__phone { translate: none !important; }
}
