/* Approved editorial homepage. Local assets only; no framework required. */
#press-concept {
  --p-paper:light-dark(#f7f6ef,#20221e);
  --p-ink:light-dark(#20271f,#f3f1e7);
  --p-muted:light-dark(#61675e,#b5b8ac);
  --p-line:light-dark(#d9dcd0,#454a40);
  --p-panel:light-dark(#eeefe5,#292e26);
  --p-accent:#d4ef78;
  --p-deep:#253a2e;
  --p-display:'Instrument Serif',Georgia,serif;
  --p-space:82px;
  background:var(--p-paper);
  color:var(--p-ink);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:14px;
  line-height:1.5;
  overflow-wrap:anywhere;
  text-align:left;
  position:relative;
  isolation:isolate;
  margin-inline:auto
}

#press-concept * {
  box-sizing:border-box
}
#press-concept button,#press-concept input {
  font:inherit
}
#press-concept button,#press-concept a {
  -webkit-tap-highlight-color:transparent
}
#press-concept button {
  cursor:pointer
}
#press-concept a {
  color:inherit;
  text-decoration:none
}
#press-concept h1,#press-concept h2,#press-concept h3,#press-concept p {
  margin:0
}
#press-concept button {
  color:inherit
}
#press-concept .p-wrap {
  padding-inline:44px
}
#press-concept .p-mark {
  display:flex;
  gap:3px;
  transform:skew(-12deg)
}
#press-concept .p-mark b {
  display:block;
  width:5px;
  height:25px;
  background:currentColor
}
#press-concept .p-mark b:nth-child(2) {
  height:31px;
  margin-top:-3px
}
#press-concept .p-button {
  border:1px solid var(--p-ink);
  background:var(--p-ink);
  color:var(--p-paper);
  padding:13px 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  font-size:12px;
  font-weight:600;
  border-radius:4px;
  min-height:44px;
  transition:transform .2s
}
#press-concept .p-button:hover {
  transform:translateY(-2px)
}
#press-concept .p-small {
  font-size:10px;
  font-weight:600;
  letter-spacing:1.8px;
  text-transform:uppercase
}
#press-concept .p-hero {
  padding-top:64px;
  padding-bottom:56px;
  display:grid;
  grid-template-columns:1.06fr 1fr;
  gap:28px;
  align-items:center
}
#press-concept .p-eyebrow {
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:23px
}
#press-concept .p-dot {
  width:7px;
  height:7px;
  background:#68843d;
  border-radius:100%;
  display:inline-block
}
#press-concept h1 {
  font-family:var(--p-display);
  font-size:clamp(56px,7.8vw,88px);
  line-height:.98;
  font-weight:400;
  letter-spacing:-3px
}
#press-concept h1 em {
  font-weight:400
}
#press-concept .p-intro {
  font-size:14px;
  line-height:1.75;
  color:var(--p-muted);
  max-width:390px;
  margin-top:25px
}
#press-concept .p-actions {
  display:flex;
  align-items:center;
  gap:22px;
  margin-top:29px;
  flex-wrap:wrap
}
#press-concept .p-text-link {
  font-size:12px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:none;
  background:transparent;
  padding:8px 0;
  border-bottom:1px solid var(--p-ink)
}
#press-concept .p-note {
  font-size:11px;
  color:var(--p-muted);
  margin-top:15px
}
#press-concept .p-art {
  height:426px;
  position:relative;
  min-width:0;
  background:radial-gradient(circle at center,color-mix(in srgb,var(--p-line) 50%,transparent) 1px,transparent 1.3px);
  background-size:14px 14px
}
#press-concept .p-art-label {
  position:absolute;
  top:9px;
  right:1px;
  font-size:11px;
  letter-spacing:1.3px;
  color:var(--p-muted)
}
#press-concept .p-idea {
  position:absolute;
  left:3%;
  top:28px;
  background:var(--p-paper);
  border:1px solid var(--p-line);
  border-radius:5px;
  padding:10px 13px;
  font-size:11px;
  box-shadow:0 6px 15px #00000008;
  transform:rotate(-4deg)
}
#press-concept .p-cover {
  position:absolute;
  left:10%;
  top:96px;
  width:65%;
  height:281px;
  background:#f0744d;
  color:#25291f;
  transform:rotate(-8deg);
  padding:21px;
  box-shadow:0 20px 25px #00000013;
  display:flex;
  flex-direction:column;
  justify-content:space-between
}
#press-concept .p-cover-top {
  font-size:8px;
  letter-spacing:2px;
  border-bottom:1px solid #25291f88;
  padding-bottom:10px
}
#press-concept .p-cover-title {
  font-family:var(--p-display);
  font-size:47px;
  line-height:.94;
  letter-spacing:-1.8px;
  max-width:180px
}
#press-concept .p-cover-bottom {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  font-size:8px;
  letter-spacing:1px
}
#press-concept .p-sun {
  height:50px;
  width:50px;
  border-radius:50%;
  background:#d4ef78;
  box-shadow:inset -13px -1px 0 #253a2e
}
#press-concept .p-social {
  position:absolute;
  right:0;
  top:139px;
  width:53%;
  background:var(--p-paper);
  padding:17px;
  transform:rotate(7deg);
  box-shadow:0 14px 25px #00000018;
  border:1px solid var(--p-line)
}
#press-concept .p-author {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:11px;
  font-weight:600;
  margin-bottom:17px
}
#press-concept .p-avatar {
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border-radius:50%;
  background:#d4ef78;
  color:#253a2e;
  font-family:Georgia,serif;
  font-size:15px
}
#press-concept .p-social p {
  font-size:14px;
  line-height:1.4;
  font-weight:500
}
#press-concept .p-social small {
  font-size:11px;
  color:var(--p-muted);
  display:block;
  margin-top:12px
}
#press-concept .p-social-foot {
  margin-top:22px;
  border-top:1px solid var(--p-line);
  padding-top:9px;
  display:flex;
  justify-content:space-between;
  color:var(--p-muted)
}
#press-concept .p-carry {
  position:absolute;
  right:4%;
  bottom:0;
  width:78%;
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px;
  background:var(--p-deep);
  color:#f7f6ef;
  border-radius:5px;
  box-shadow:0 10px 20px #00000015;
  transform:rotate(-2deg)
}
#press-concept .p-carry-icon {
  display:grid;
  place-items:center;
  flex:0 0 32px;
  height:32px;
  border-radius:50%;
  background:var(--p-accent);
  color:#253a2e;
  font-size:22px
}
#press-concept .p-carry-copy { flex:1; min-width:0; }
#press-concept .p-carry .p-small { font-size:8px; letter-spacing:1px; }
#press-concept .p-carry small { flex-shrink:0; font-size:11px; white-space:nowrap; }
#press-concept .p-carry-lines { display:grid; gap:5px; max-width:140px; margin-top:8px; }
#press-concept .p-carry-lines b { display:flex; align-items:center; gap:6px; }
#press-concept .p-carry-lines b::before { content:""; width:4px; height:4px; border:1px solid #f7f6ef88; }
#press-concept .p-carry-lines b::after { content:""; width:75%; height:2px; background:#f7f6ef66; }
#press-concept .p-carry-lines b:nth-child(2)::after { width:95%; }
#press-concept .p-carry-lines b:nth-child(3)::after { width:60%; }
#press-concept .p-caption {
  border-top:1px solid var(--p-line);
  border-bottom:1px solid var(--p-line);
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-block:19px;
  gap:20px
}
#press-concept .p-caption p {
  font-size:11px;
  color:var(--p-muted)
}
#press-concept .p-format-list {
  display:flex;
  gap:23px;
  font-size:11px;
  font-weight:500;
  flex-wrap:wrap
}
#press-concept .p-section {
  padding-block:var(--p-space)
}
#press-concept .p-section-top {
  display:flex;
  justify-content:space-between;
  gap:25px;
  align-items:flex-end;
  margin-top:14px;
  margin-bottom:30px
}
#press-concept h2 {
  font-family:var(--p-display);
  font-weight:400;
  font-size:47px;
  line-height:1.05;
  letter-spacing:-1.5px
}
#press-concept .p-section-top p {
  font-size:12px;
  color:var(--p-muted);
  max-width:275px;
  line-height:1.7
}
#press-concept .p-demo {
  border:1px solid var(--p-line);
  border-radius:6px;
  background:var(--p-panel);
  overflow:hidden
}
#press-concept .p-demo-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--p-line);
  padding:13px 21px;
  font-size:11px
}
#press-concept .p-demo-bar span {
  display:flex;
  align-items:center;
  gap:7px
}
#press-concept .p-demo-body {
  display:grid;
  grid-template-columns:minmax(0, 29%) minmax(0, 71%);
  min-height:354px
}
#press-concept .p-brief {
  padding:25px;
  border-right:1px solid var(--p-line)
}
#press-concept .p-brief-label {
  font-size:11px;
  letter-spacing:1.6px;
  font-weight:600;
  display:block;
  margin-bottom:18px
}
#press-concept .p-pack-name {
  font-family:var(--p-display);
  font-size:30px;
  line-height:1.1;
  letter-spacing:-.4px;
  color:inherit
}
#press-concept .p-tags {
  display:flex;
  gap:5px;
  flex-wrap:wrap;
  margin:15px 0 20px
}
#press-concept .p-tags span {
  font-size:11px;
  border:1px solid var(--p-line);
  padding:3px 8px;
  border-radius:20px
}
#press-concept .p-brief-note {
  font-size:11px;
  color:var(--p-muted);
  margin-top:12px!important
}
#press-concept .p-output {
  padding:20px 27px 26px;
  min-width:0
}
#press-concept .p-tabs {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:3px;
  border-bottom:1px solid var(--p-line);
  margin-bottom:21px
}
#press-concept .p-tabs button {
  min-height:44px;
  border:0;
  border-bottom:2px solid transparent;
  padding:9px 6px;
  background:transparent;
  font-size:11px;
  color:var(--p-muted)
}
#press-concept .p-tabs button[aria-selected=true] {
  color:var(--p-ink);
  border-color:var(--p-ink)
}
#press-concept .p-sheet {
  background:var(--p-paper);
  padding:25px 29px;
  border:1px solid var(--p-line);
  box-shadow:0 5px 10px #00000003;
  min-height:244px
}
#press-concept .p-sheet-meta {
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:10px;
  letter-spacing:1px;
  color:var(--p-muted);
  text-transform:uppercase;
  flex-wrap:wrap
}
#press-concept .p-sheet h3 {
  font-family:var(--p-display);
  font-size:33px;
  font-weight:400;
  line-height:1.1;
  letter-spacing:-.6px;
  margin:18px 0 13px;
  max-width:390px
}
#press-concept .p-sheet p {
  font-size:13px;
  color:var(--p-muted);
  line-height:1.8;
  white-space:pre-line
}
#press-concept .p-sheet-footer {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-top:21px;
  font-size:11px;
  color:var(--p-muted)
}
#press-concept .p-status {
  display:flex;
  align-items:center;
  gap:6px;
  color:var(--p-ink)
}
#press-concept .p-demo-note {
  font-size:11px;
  color:var(--p-muted);
  margin-top:12px;
  text-align:center
}
#press-concept .p-process {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:31px;
  margin-top:44px
}
#press-concept .p-process article {
  border-top:1px solid var(--p-line);
  padding-top:15px
}
#press-concept .p-number {
  font-family:var(--p-display);
  font-size:28px;
  color:var(--p-muted)
}
#press-concept .p-process h3 {
  font-size:15px;
  font-weight:500;
  margin:10px 0
}
#press-concept .p-process p {
  font-size:12px;
  line-height:1.75;
  color:var(--p-muted)
}
#press-concept .p-manifesto {
  background:var(--p-deep);
  color:#f7f6ef;
  padding:55px 44px;
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:42px
}
#press-concept .p-manifesto h2 {
  margin-top:20px;
  font-size:49px
}
#press-concept .p-benefits {
  display:grid;
  gap:21px
}
#press-concept .p-benefit {
  border-bottom:1px solid #ffffff25;
  padding-bottom:18px;
  display:grid;
  grid-template-columns:23px 1fr;
  gap:13px
}
#press-concept .p-benefit:last-child {
  border:none;
  padding-bottom:0
}
#press-concept .p-benefit i {
  color:var(--p-accent)
}
#press-concept .p-benefit h3 {
  font-size:13px;
  font-weight:500;
  margin-bottom:6px
}
#press-concept .p-benefit p {
  font-size:11px;
  line-height:1.75;
  color:#c3cdbf
}
#press-concept .p-cta {
  text-align:center;
  padding-block:65px
}
#press-concept .p-cta h2 {
  font-size:58px;
  margin-top:15px
}
#press-concept .p-cta .p-button {
  margin-top:25px;
  background:var(--p-accent);
  border-color:var(--p-accent);
  color:#253a2e
}
#press-concept .p-live {
  min-height:16px;
  font-size:11px;
  color:var(--p-muted);
  margin-top:8px
}
@media(pointer:coarse) {
  #press-concept .p-tabs button,#press-concept .p-text-link {
  min-height:44px
}

}

#press-concept [hidden] {
  display:none!important
}
#press-concept svg {
  width:14px;
  height:14px;
  flex-shrink:0
}
@media(min-width:1150px) {
  #press-concept h1 {
  font-size:88px
}

}

@media(max-width:760px) {
  #press-concept .p-wrap {
  padding-inline:26px
}
#press-concept .p-hero {
  gap:8px;
  padding-top:45px
}
#press-concept h1 {
  font-size:64px
}
#press-concept .p-art {
  height:370px
}
#press-concept .p-cover {
  top:85px;
  width:73%;
  left:3%;
  height:246px;
  padding:16px
}
#press-concept .p-cover-title {
  font-size:39px
}
#press-concept .p-social {
  width:59%;
  top:120px;
  padding:12px
}
#press-concept .p-social p {
  font-size:12px
}
#press-concept .p-format-list {
  gap:14px
}
#press-concept .p-caption {
  align-items:flex-start
}
#press-concept .p-caption p {
  max-width:180px
}
#press-concept .p-brief {
  padding:20px 15px
}
#press-concept .p-output {
  padding:15px
}
#press-concept .p-sheet {
  padding:20px
}
#press-concept .p-tabs button {
  min-height:44px;
  padding:9px
}
#press-concept .p-manifesto {
  padding:40px 26px;
  gap:25px
}
#press-concept .p-manifesto h2 {
  font-size:42px
}
#press-concept .p-section-top {
  align-items:flex-start
}
#press-concept .p-section-top p {
  max-width:230px
}

}

@media(max-width:570px) {
  #press-concept .p-wrap {
  padding-inline:21px
}
#press-concept .p-hero {
  grid-template-columns:1fr;
  padding-top:38px;
  gap:30px;
  padding-bottom:35px
}
#press-concept h1 {
  font-size:clamp(48px,15vw,68px);
  letter-spacing:-2.5px
}
#press-concept .p-intro {
  font-size:14px;
  max-width:350px
}
#press-concept .p-art {
  height:360px;
  max-width:360px;
  width:100%;
  margin:auto
}
#press-concept .p-cover {
  left:9%;
  width:64%
}
#press-concept .p-social {
  width:53%
}
#press-concept .p-caption {
  display:block;
  padding-block:18px
}
#press-concept .p-caption p {
  max-width:none;
  margin-bottom:13px
}
#press-concept .p-format-list {
  justify-content:space-between;
  font-size:11px;
  gap:8px
}
#press-concept .p-section {
  padding-block:49px
}
#press-concept .p-section-top {
  display:block;
  margin-top:15px
}
#press-concept h2 {
  font-size:43px
}
#press-concept .p-section-top p {
  max-width:none;
  margin-top:17px
}
#press-concept .p-demo-body {
  grid-template-columns:1fr
}
#press-concept .p-brief {
  border-right:0;
  border-bottom:1px solid var(--p-line);
  padding:20px
}
#press-concept .p-brief-label {
  margin-bottom:10px
}
#press-concept .p-pack-name {
  font-size:26px
}
#press-concept .p-tags {
  margin-block:10px
}
#press-concept .p-demo-bar {
  padding-inline:15px;
  font-size:11px
}
#press-concept .p-process {
  grid-template-columns:1fr;
  gap:22px;
  margin-top:30px
}
#press-concept .p-process article {
  display:grid;
  grid-template-columns:35px 1fr;
  gap:0 14px
}
#press-concept .p-process h3 {
  margin:4px 0 7px
}
#press-concept .p-process p {
  grid-column:2
}
#press-concept .p-number {
  grid-row:span 2
}
#press-concept .p-manifesto {
  grid-template-columns:1fr;
  padding:37px 21px;
  gap:30px
}
#press-concept .p-manifesto h2 {
  font-size:46px
}
#press-concept .p-cta {
  padding-block:49px
}
#press-concept .p-cta h2 {
  font-size:49px
}
#press-concept .p-sheet h3 {
  font-size:29px
}
#press-concept .p-demo-note {
  font-size:11px
}
#press-concept .p-sheet {
  padding:20px 17px
}
#press-concept .p-actions {
  gap:17px
}

}

@media(prefers-reduced-motion:reduce) {
  #press-concept * {
  transition:none!important;
  scroll-behavior:auto!important
}

}


/* Keep the live catalogue in the same visual language as the marketing page. */
#press-concept .p-catalogue { padding-top: 70px; }
#press-concept .p-catalogue .section__title { margin: 18px 0; padding: 0; border: 0; }
#press-concept .p-catalogue-intro { color: var(--p-muted); max-width: 38rem; }
#press-concept .p-catalogue .card__title { font: 400 33px/1.1 var(--serif); }
#press-concept .p-catalogue .group__title { font: 400 28px/1.2 var(--serif); }
#press-concept .jump__link,
#press-concept .badge,
#press-concept .card__files {
  font-family: var(--sans);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1.8px;
}
#press-concept .price { font-family: var(--sans); }
/* Without the script every part of the example is shown, so space them apart. */
#press-concept .p-sheet:not([hidden]) ~ .p-sheet:not([hidden]) { margin-top: 16px; }
#press-concept button:disabled { opacity: .55; cursor: default; transform: none; }
#press-concept .p-sheet h3 { overflow-wrap: anywhere; }
#press-concept .p-benefit > svg { color: var(--p-accent); width: 20px; height: 20px; }
#press-concept .p-live {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
#press-concept .p-tabs button:focus-visible { outline-offset: -4px; }
@media (max-width: 570px) {
  #press-concept .p-demo-bar { gap: 16px; }
  #press-concept .p-tabs { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:4px 8px; }
  #press-concept .p-tabs button { padding-inline: 8px; }
  #press-concept .p-cta .p-button { max-width: 100%; gap: 12px; }
  #press-concept .p-art-label { font-size: 8px; }
  #press-concept .p-art { height:430px; }
  #press-concept .p-social { width:58%; top:110px; }
  #press-concept .p-social-foot { margin-top:14px; }
  #press-concept .p-carry { width:90%; padding:12px; gap:8px; }
  #press-concept .p-sheet { padding:22px 20px; }
  #press-concept .p-sheet h3 { font-size:32px; }
}
