
.tpl-editorial {
  --max: 1400px;
}
.tpl-editorial .hd-in {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  grid-template-areas: 'nav brand end';
}
.tpl-editorial .hd-nav {
  justify-content: flex-start;
}
.tpl-editorial .brand {
  font-size: 1.75rem;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.tpl-editorial :is(.hd-nav a, .lang, .btn, .kicker, .card-place, .nb small) {
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.74rem;
}
.tpl-editorial .btn {
  font-weight: 500;
}
@media (max-width: 900px) {
  .tpl-editorial .hd-in {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: 'brand end';
  }
  .tpl-editorial .brand {
    font-size: 1.3rem;
  }
}
.ed-hero {
  max-width: var(--max);
  margin: 0 auto;
  padding: clamp(28px, 5vw, 72px) var(--gutter) 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  grid-template-rows: auto auto auto auto;
  column-gap: clamp(16px, 3vw, 48px);
}
.ed-name {
  grid-column: 1 / -1;
  grid-row: 1 / 3;
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  font-family: var(--fd);
  font-weight: 400;
  font-size: clamp(3.4rem, 8.4vw, 9rem);
  line-height: 0.86;
  text-transform: uppercase;
  letter-spacing: -0.01em;
}
.ed-w1,
.ed-w2 {
  display: block;
  overflow-wrap: break-word;
  animation: ed-slide 1.1s cubic-bezier(0.2, 0.7, 0.1, 1) both;
}
.ed-w1 {
  --dx: -14%;
  grid-column: 1;
  grid-row: 1;
  align-self: start;
}
.ed-w2 {
  --dx: 14%;
  grid-column: 3;
  grid-row: 2;
  align-self: end;
  text-align: end;
  animation-delay: 0.12s;
}
[dir='rtl'] .ed-w1 {
  --dx: 14%;
}
[dir='rtl'] .ed-w2 {
  --dx: -14%;
}
.ed-ph {
  grid-column: 2;
  grid-row: 1 / 3;
  width: clamp(200px, 25vw, 400px);
  aspect-ratio: 3 / 4;
  animation: ed-mask 1.3s 0.1s cubic-bezier(0.6, 0, 0.2, 1) both;
}
.ed-line {
  grid-column: 1 / -1;
  grid-row: 3;
  margin-top: clamp(20px, 3vw, 36px);
  padding-top: 14px;
  border-top: 1px solid var(--ink);
  font-family: var(--fd);
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  text-align: end;
}
.ed-tag {
  grid-column: 1 / -1;
  grid-row: 4;
  margin-top: 4px;
  font-family: var(--fd);
  font-style: italic;
  font-size: 1.15rem;
  color: var(--muted);
}
@keyframes ed-slide {
  from {
    transform: translateX(var(--dx));
    opacity: 0;
  }
}
@keyframes ed-mask {
  from {
    clip-path: inset(100% 0 0 0);
  }
  to {
    clip-path: inset(0);
  }
}
@media (max-width: 760px) {
  .ed-hero {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    row-gap: 14px;
  }
  .ed-name {
    display: contents;
    font-size: clamp(3rem, 16vw, 5rem);
  }
  .ed-w1,
  .ed-w2,
  .ed-ph,
  .ed-line,
  .ed-tag {
    grid-column: 1;
    grid-row: auto;
  }
  .ed-w1 {
    font-family: var(--fd);
    font-size: clamp(3rem, 16vw, 5rem);
    line-height: 0.9;
    text-transform: uppercase;
  }
  .ed-w2 {
    font-family: var(--fd);
    font-size: clamp(3rem, 16vw, 5rem);
    line-height: 0.9;
    text-transform: uppercase;
    order: 2;
  }
  .ed-ph {
    order: 1;
    width: 100%;
    aspect-ratio: 4 / 5;
  }
  .ed-line {
    order: 3;
  }
  .ed-tag {
    order: 4;
  }
}
.tpl-editorial .sh {
  border-bottom-color: var(--ink);
}
.tpl-editorial .sh-n {
  font-style: italic;
  font-size: 1.3rem;
}
.tpl-editorial .ph-title {
  font-size: clamp(3rem, 9vw, 8rem);
  line-height: 0.92;
}
.tpl-editorial .intro-quote,
.tpl-editorial .quote p,
.tpl-editorial .founder-quote {
  font-style: italic;
}
.tpl-editorial:lang(ar) :is(.intro-quote, .quote p, .founder-quote, .ed-tag) {
  font-style: normal;
}
.tpl-editorial .cards {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(28px, 4vw, 56px) clamp(16px, 2.4vw, 36px);
}
.tpl-editorial .card {
  grid-column: span 2;
}
.tpl-editorial .card:nth-child(5n + 1) {
  grid-column: span 4;
}
.tpl-editorial .card:nth-child(5n + 1) .card-img {
  aspect-ratio: 4 / 3;
}
.tpl-editorial .card:nth-child(5n + 2) .card-img {
  aspect-ratio: 2 / 3;
}
.tpl-editorial .card-text {
  grid-template-columns: auto 1fr;
  column-gap: 14px;
  align-items: baseline;
}
.tpl-editorial .card-n {
  display: block;
  grid-row: 1 / 3;
  font-family: var(--fd);
  font-style: italic;
  color: var(--accent-text);
}
.tpl-editorial .card-title {
  font-size: clamp(1.5rem, 2.4vw, 2.1rem);
}
.tpl-editorial .card:nth-child(5n + 1) .card-title {
  font-size: clamp(1.8rem, 3.4vw, 3rem);
}
@media (max-width: 760px) {
  .tpl-editorial .cards {
    grid-template-columns: minmax(0, 1fr);
  }
  .tpl-editorial .card,
  .tpl-editorial .card:nth-child(5n + 1) {
    grid-column: auto;
  }
  .tpl-editorial .card .card-img,
  .tpl-editorial .card:nth-child(5n + 2) .card-img {
    aspect-ratio: 4 / 5;
  }
}
.tpl-editorial .cta {
  max-width: none;
  margin-top: var(--space);
  padding-block: var(--space);
  background: var(--ink);
  color: var(--bg);
}
.tpl-editorial .cta p {
  color: color-mix(in srgb, var(--bg) 78%, var(--ink));
}
.tpl-editorial .cta .btn-primary {
  background: var(--bg);
  border-color: var(--bg);
  color: var(--ink);
}
.tpl-editorial .cta .btn-ghost {
  border-color: var(--bg);
  color: var(--bg);
}
.tpl-editorial .cta :focus-visible {
  outline-color: var(--bg);
}
.tpl-editorial main:has(> .contents:nth-last-child(2) > .cta) + .ft {
  margin-top: 0;
  border-top: 0;
}
.tpl-editorial .pkgs {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}
.tpl-editorial .pkg {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) auto;
  align-items: baseline;
  column-gap: 32px;
  row-gap: 8px;
  padding: 28px 0;
  border: 0;
  border-bottom: 1px solid var(--rule);
}
.tpl-editorial .pkg[data-highlighted] {
  border-bottom-color: var(--ink);
}
.tpl-editorial .pkg-badge {
  position: static;
  grid-column: 1 / -1;
  justify-self: start;
}
.tpl-editorial .pkg-name {
  grid-column: 1;
  font-size: clamp(1.6rem, 2.6vw, 2.2rem);
}
.tpl-editorial .price {
  grid-column: 2;
}
.tpl-editorial .pkg .btn {
  grid-column: 3;
  grid-row: span 3;
  align-self: center;
  margin: 0;
}
.tpl-editorial .pkg-hours,
.tpl-editorial .pkg-list {
  grid-column: 1 / 3;
}
.tpl-editorial .services-addons .pkg {
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  padding: 16px 0;
}
@media (max-width: 760px) {
  .tpl-editorial .pkg {
    grid-template-columns: minmax(0, 1fr);
  }
  .tpl-editorial .pkg > * {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  .tpl-editorial .pkg .btn {
    justify-self: start;
  }
}
.tpl-editorial .wh-title {
  font-size: clamp(3rem, 10vw, 9rem);
  line-height: 0.9;
}
.tpl-editorial .wh-meta {
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.8rem;
}
.tpl-editorial .story {
  columns: 2 300px;
  column-gap: 48px;
  max-width: 1000px;
  display: block;
}
.tpl-editorial .story p + p {
  margin-top: 1.1em;
}
.tpl-editorial .story p:first-child::first-letter {
  float: inline-start;
  font-family: var(--fd);
  font-size: 4.2em;
  line-height: 0.8;
  margin-inline-end: 10px;
  margin-top: 6px;
}
.tpl-editorial:lang(ar) .story p:first-child::first-letter {
  float: none;
  font-size: inherit;
  margin: 0;
}
.tpl-editorial .nb span {
  font-size: clamp(1.4rem, 2.4vw, 2rem);
}
::view-transition-group(*) {
  animation-duration: 0.55s;
  animation-timing-function: cubic-bezier(0.4, 0, 0.1, 1);
}
