/* Editorial project template — shared by every card opened through /project.html. */
.project-standalone-page {
  --project-bg:#0d0d0f;
  --project-panel:#141416;
  --project-line:rgba(255,255,255,.11);
  --project-muted:#929096;
  --project-text:#f3f1f2;
  --project-accent:#6258ef;
  overflow-x:hidden;
  background:
    radial-gradient(80% 32% at 68% 0%,rgba(107,83,225,.12),transparent 70%),
    var(--project-bg) !important;
}

.project-standalone-page .project-standalone-main {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:112px 0 120px !important;
}

.project-standalone-page .project-standalone-back {
  width:100% !important;
  margin:0 0 28px !important;
  padding:0 max(24px,calc((100% - 1040px)/2)) !important;
  color:#7f7d84;
  font:500 14px/1 var(--sans);
}

.project-standalone-page .project-detail-workspace,
.project-standalone-page .project-detail-primary {
  width:100% !important;
  display:block !important;
}

.project-standalone-page .project-detail-page.project-detail-modal--native,
.project-standalone-page .project-detail-modal__shell,
.project-standalone-page .project-detail-modal__layout {
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  overflow:visible !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.project-standalone-page .project-detail-modal__layout {
  display:flex !important;
  flex-direction:column !important;
}

.project-standalone-page .project-detail-page.project-detail-modal--native .project-detail-modal__content {
  order:1;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  margin:0 !important;
  padding:0 max(24px,calc((100% - 1040px)/2)) 100px !important;
  display:block !important;
  overflow:visible !important;
  border:0 !important;
  background:transparent !important;
}

.project-standalone-page .project-detail-modal__summary {
  position:relative;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:40px !important;
  padding:0 !important;
  background:transparent !important;
}

.project-standalone-page .project-detail-modal__heading {
  display:block !important;
  min-width:0;
}

.project-standalone-page .project-detail-page.project-detail-modal--native .project-detail-modal__heading > div:first-child {
  width:100% !important;
  display:block !important;
  align-items:initial !important;
}

.project-editorial-date {
  display:block;
  margin-bottom:34px;
  color:#929096;
  font:500 16px/1 var(--sans);
}

.project-editorial-kicker {
  margin-bottom:52px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.project-editorial-kicker span,
.project-standalone-page .project-detail-modal__tags span {
  min-height:34px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  border:1px solid var(--project-line);
  border-radius:999px;
  background:#111113;
  color:#aaa8ae;
  font:500 14px/1 var(--sans);
  text-transform:none !important;
}

.project-standalone-page .project-detail-modal__heading h1 {
  max-width:900px;
  margin:0 !important;
  color:var(--project-text) !important;
  font:500 clamp(58px,7vw,94px)/.94 var(--sans) !important;
  letter-spacing:-.065em !important;
}

.project-editorial-lede {
  max-width:850px;
  margin:44px 0 0;
  color:#98969c;
  font:450 clamp(20px,2vw,27px)/1.5 var(--sans);
  letter-spacing:-.025em;
}

.project-standalone-page .project-detail-page__creator {
  margin-top:52px;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
}

.project-standalone-page .project-detail-page__creator img {
  width:48px !important;
  height:48px !important;
  flex:0 0 48px !important;
  border-radius:50% !important;
}

.project-standalone-page .project-detail-page__creator span {
  display:grid;
  gap:4px;
  color:#8f8d93 !important;
  font:500 14px/1.25 var(--sans) !important;
  white-space:normal !important;
}

.project-standalone-page .project-detail-page__creator strong { color:#f0eef0 !important;font-weight:550 !important; }
.project-standalone-page .project-detail-page__creator small { color:#77757b;font:450 13px/1.25 var(--sans); }

.project-standalone-page .project-detail-modal__meta {
  position:absolute;
  right:0;
  bottom:0;
}

.project-standalone-page .project-detail-modal__tags { display:flex !important;flex-wrap:wrap;justify-content:flex-end;gap:8px !important; }
.project-standalone-page .project-detail-page.project-detail-modal--native .project-detail-modal__meta .project-detail-modal__tags span {
  min-height:34px !important;
  padding:0 14px !important;
  border:1px solid var(--project-line) !important;
  border-radius:999px !important;
  background:#111113 !important;
  color:#aaa8ae !important;
  font-size:14px !important;
}

.project-standalone-page .project-detail-modal__header-actions {
  position:sticky;
  top:98px;
  z-index:4;
  display:flex !important;
  align-items:center;
  gap:8px !important;
}

.project-standalone-page .project-detail-modal__header-actions button {
  width:46px !important;
  height:46px !important;
  border:1px solid var(--project-line) !important;
  border-radius:50% !important;
  background:#171719 !important;
  color:#c5c3c7 !important;
}

.project-standalone-page .project-detail-modal__header-actions > a {
  min-height:46px !important;
  padding:0 18px !important;
  display:inline-flex !important;
  align-items:center;
  border-radius:999px !important;
  background:var(--project-accent) !important;
  color:#fff !important;
  font:600 14px/1 var(--sans) !important;
}

.project-standalone-page .project-detail-modal__media {
  order:2;
  width:min(1280px,100%) !important;
  height:clamp(560px,64vw,760px) !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:0 !important;
  position:relative !important;
  border-block:1px solid var(--project-line);
  background:#111315;
}

.project-standalone-page .project-media-slider { border-radius:0 !important; }
.project-standalone-page .project-media-slider__control { width:50px;height:50px; }
.project-standalone-page .project-detail-mobile-access { display:none !important; }

.project-standalone-page .project-prompt-list {
  width:min(1040px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:120px 0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.project-standalone-page .project-prompt-list__header--desktop { display:none !important; }

.project-standalone-page .project-prompt-list > header {
  margin:0 0 48px !important;
  padding:0 !important;
  align-items:flex-start !important;
  border:0 !important;
}

.project-standalone-page .project-prompt-list > header > div { max-width:720px; }
.project-standalone-page .project-prompt-list > header small { color:#85838a;font:600 13px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase; }
.project-standalone-page .project-prompt-list h2 { margin:16px 0 0 !important;color:var(--project-text) !important;font:500 clamp(38px,5vw,62px)/1 var(--sans) !important;letter-spacing:-.055em !important; }
.project-standalone-page .project-prompt-list > header p { max-width:620px;margin:24px 0 0;color:#8f8d93;font:450 18px/1.55 var(--sans); }
.project-standalone-page .project-prompt-list > header > span { margin-top:30px;color:#77757b !important;font-size:14px !important; }

.project-prompt-slider {
  position:relative;
  min-height:560px;
  padding:58px 82px 76px;
  overflow:hidden;
  border:1px solid var(--project-line);
  border-radius:18px;
  background:linear-gradient(145deg,#171719,#111113);
}

.project-prompt-slider__viewport { overflow:hidden; }
.project-standalone-page .project-prompt-list__items {
  width:100%;
  display:flex !important;
  gap:0 !important;
  opacity:1;
  transition:transform .5s cubic-bezier(.16,1,.3,1);
  will-change:transform;
}

.project-standalone-page .project-prompt-list__item {
  min-width:100% !important;
  min-height:400px !important;
  grid-template-rows:1fr 58px !important;
  padding:0 !important;
}

.project-standalone-page .project-prompt-list__item > div {
  padding:72px 34px 34px !important;
  border-color:rgba(255,255,255,.08) !important;
  border-radius:14px !important;
  background:#202023 !important;
}

.project-standalone-page .project-prompt-list__item > div strong { font-size:25px !important; }
.project-standalone-page .project-prompt-list__item p { margin-top:12px;font-size:16px !important;line-height:1.6 !important;-webkit-line-clamp:8 !important; }
.project-standalone-page .project-prompt-list__item > b { top:22px;left:24px;width:36px;height:36px;border-radius:50%;font-size:12px; }

.project-prompt-slider__arrow {
  position:absolute;
  z-index:6;
  top:50%;
  width:44px;
  height:44px;
  padding:0;
  display:grid;
  place-items:center;
  border:1px solid var(--project-line);
  border-radius:50%;
  background:#242428;
  color:#d4d2d6;
  cursor:pointer;
  transform:translateY(-50%);
}
.project-prompt-slider__arrow--previous { left:20px; }
.project-prompt-slider__arrow--next { right:20px; }
.project-prompt-slider__arrow svg { width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8; }

.project-prompt-slider__dots { position:absolute;z-index:6;bottom:30px;left:50%;display:flex;gap:8px;transform:translateX(-50%); }
.project-prompt-slider__dots button { width:7px;height:7px;padding:0;border:0;border-radius:99px;background:#55535a;cursor:pointer;transition:width .25s ease,background .25s ease; }
.project-prompt-slider__dots button[aria-current="true"] { width:24px;background:#e5e3e5; }

.project-standalone-page .project-prompt-list__gate {
  inset:0 !important;
  border:0 !important;
  border-radius:18px !important;
  background:rgba(15,15,17,.78) !important;
  backdrop-filter:blur(12px) !important;
}
.project-standalone-page .project-prompt-list__gate > strong { margin-top:12px;font-size:26px !important; }
.project-standalone-page .project-prompt-list__gate > p { margin-top:6px;font-size:15px !important; }
.project-standalone-page .project-prompt-list__gate > a { min-height:52px;margin-top:18px;padding:0 24px;border-radius:12px;background:var(--project-accent);color:#fff;font-size:15px; }
.project-standalone-page .project-prompt-list__lock { width:48px;height:48px;border-radius:50%; }
.project-standalone-page .project-prompt-list.is-locked .project-prompt-list__items { height:auto !important;overflow:visible !important;opacity:.22 !important;filter:blur(5px) !important; }
.project-standalone-page .project-prompt-list.is-locked .project-prompt-slider__arrow,
.project-standalone-page .project-prompt-list.is-locked .project-prompt-slider__dots { opacity:.22;pointer-events:none; }

.project-standalone-page .project-comments {
  width:min(820px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:116px 0 !important;
  border-top:1px solid var(--project-line) !important;
}

.project-standalone-page .project-comments > header { margin-bottom:28px;padding:0 0 22px;border-bottom:0; }
.project-standalone-page .project-comments h2 { font:500 clamp(38px,5vw,58px)/1 var(--sans) !important;letter-spacing:-.05em !important; }
.project-standalone-page .project-comments > header span { width:38px;height:38px;border:1px solid var(--project-line);border-radius:50%;background:transparent;font-size:14px; }
.project-standalone-page .project-comment-composer { min-height:82px;padding:14px 16px;border:1px solid var(--project-line);border-radius:14px;background:#121214; }
.project-standalone-page .project-comment { padding:28px 0;grid-template-columns:42px 1fr;gap:14px; }
.project-standalone-page .project-comment > img,
.project-standalone-page .project-comment__avatar { width:42px;height:42px;border:0;border-radius:50%; }
.project-standalone-page .project-comment p { font-size:16px;line-height:1.5; }

.project-more {
  width:min(1040px,calc(100% - 48px));
  margin:0 auto;
  padding:116px 0 40px;
  border-top:1px solid var(--project-line);
}
.project-more > header { margin-bottom:42px;display:flex;align-items:center;justify-content:space-between; }
.project-more h2 { margin:0;color:var(--project-text);font:500 clamp(40px,5vw,60px)/1 var(--sans);letter-spacing:-.055em; }
.project-more > header a { color:#8b83ff;font:550 17px/1 var(--sans);text-decoration:none; }
.project-more__grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px; }
.project-more__card { min-width:0;display:block;overflow:hidden;color:#f1eff1;text-decoration:none; }
.project-more__card > img { width:100%;height:230px;display:block;border:1px solid var(--project-line);border-radius:14px;object-fit:cover;transition:transform .7s cubic-bezier(.16,1,.3,1); }
.project-more__card:hover > img { transform:scale(1.025); }
.project-more__card > span { padding:18px 2px 0;display:grid;gap:5px; }
.project-more__card b { font:550 20px/1.1 var(--sans); }
.project-more__card small { color:#85838a;font:450 14px/1.3 var(--sans); }
.project-more__card i { margin-top:5px;color:#68666d;font:500 12px/1.2 var(--sans);font-style:normal; }

@media(max-width:760px) {
  .project-standalone-page .project-standalone-main { padding:90px 0 84px !important; }
  .project-standalone-page .project-standalone-back { width:100% !important;margin-bottom:38px !important;padding-inline:20px !important; }
  .project-standalone-page .project-detail-page.project-detail-modal--native .project-detail-modal__content { width:100% !important;padding:0 20px 78px !important; }
  .project-standalone-page .project-detail-modal__summary { grid-template-columns:1fr !important;gap:28px !important; }
  .project-editorial-date { margin-bottom:26px;font-size:14px; }
  .project-editorial-kicker { margin-bottom:46px;gap:8px; }
  .project-editorial-kicker span { min-height:32px;padding-inline:11px;font-size:14px; }
  .project-standalone-page .project-detail-modal__heading h1 { font-size:clamp(48px,14vw,68px) !important;line-height:.96 !important; }
  .project-editorial-lede { margin-top:34px;font-size:20px;line-height:1.48; }
  .project-standalone-page .project-detail-page__creator { margin-top:42px; }
  .project-standalone-page .project-detail-modal__meta { position:static;margin-top:28px; }
  .project-standalone-page .project-detail-modal__tags { justify-content:flex-start; }
  .project-standalone-page .project-detail-modal__header-actions { position:static; }
  .project-standalone-page .project-detail-modal__header-actions > a { flex:1;justify-content:center; }
  .project-standalone-page .project-detail-modal__media { width:100% !important;height:72vw !important;min-height:310px !important; }
  .project-standalone-page .project-media-slider__control { width:42px;height:42px; }

  .project-standalone-page .project-prompt-list { width:calc(100% - 40px) !important;padding:88px 0 !important; }
  .project-standalone-page .project-prompt-list > header { margin-bottom:38px !important; }
  .project-standalone-page .project-prompt-list > header > span { display:none; }
  .project-standalone-page .project-prompt-list h2 { font-size:40px !important; }
  .project-standalone-page .project-prompt-list > header p { margin-top:20px;font-size:16px; }
  .project-prompt-slider { min-height:520px;padding:36px 20px 72px;border-radius:14px; }
  .project-standalone-page .project-prompt-list__item { min-height:400px !important; }
  .project-standalone-page .project-prompt-list__item > div { padding:68px 22px 28px !important; }
  .project-standalone-page .project-prompt-list__item p { font-size:14px !important; }
  .project-prompt-slider__arrow { top:auto;bottom:16px;width:40px;height:40px;transform:none; }
  .project-prompt-slider__arrow--previous { left:16px; }
  .project-prompt-slider__arrow--next { right:16px; }
  .project-prompt-slider__dots { bottom:32px; }
  .project-standalone-page .project-prompt-list__gate { padding:26px; }
  .project-standalone-page .project-prompt-list__gate > strong { font-size:23px !important; }

  .project-standalone-page .project-comments { width:calc(100% - 40px) !important;padding:88px 0 !important; }
  .project-standalone-page .project-comments h2 { font-size:40px !important; }
  .project-standalone-page .project-comment-composer { grid-template-columns:38px minmax(0,1fr) 44px; }
  .project-standalone-page .project-comment p { font-size:14px; }

  .project-more { width:calc(100% - 40px);padding-top:88px; }
  .project-more h2 { font-size:40px; }
  .project-more > header a { font-size:15px; }
  .project-more__grid { grid-template-columns:1fr;gap:38px; }
  .project-more__card > img { height:245px; }
  .project-more__card > span { padding-top:16px; }
  .project-more__card b { font-size:20px; }
}

@media(prefers-reduced-motion:reduce) {
  .project-standalone-page .project-prompt-list__items,
  .project-more__card > img { transition:none !important; }
}
