@font-face {
  font-family: "Fixel Display";
  src: url('fixel/FixelDisplay-ExtraBold.woff2') format('woff2');
  font-style: normal;
  font-weight: 800;
  font-display: swap;
}

@font-face {
  font-family: "Fixel Text";
  src: url('fixel/FixelText-Regular.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Fixel Text";
  src: url('fixel/FixelText-Medium.woff2') format('woff2');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "Fixel Text";
  src: url('fixel/FixelText-SemiBold.woff2') format('woff2');
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Fixel Text";
  src: url('fixel/FixelText-Bold.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Fixel Text";
  src: url('fixel/FixelText-ExtraBold.woff2') format('woff2');
  font-style: normal;
  font-weight: 800;
  font-display: swap;
}

@font-face {
  font-family: Arimo;
  src: url('arimo.ttf') format('truetype');
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}

:root{--ink:#20211f;--paper:#f7f6f2;--accent:#edb9dd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Fixel Text",Arimo,sans-serif}a{color:inherit;text-decoration:none}header{display:flex;align-items:center;justify-content:space-between;padding:27px 5.5%;border-bottom:1px solid #dddcd6}.logo{font-weight:800;letter-spacing:-.07em;font-size:24px}nav{display:flex;gap:32px;font-size:13px}nav a:hover{text-decoration:underline}.availability{font-size:12px;border:1px solid #c8c8c0;border-radius:30px;padding:10px 14px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#bd8fce;margin-right:7px}.hero{padding:95px 5.5% 70px;min-height:590px;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700}.hero h1{font-family:"Fixel Text",Arimo,sans-serif;font-size:clamp(58px,9.2vw,146px);line-height:.99;letter-spacing:-.085em;margin:32px 0 35px;font-weight:700;max-width:1300px}.highlight{position:relative;white-space:nowrap}.highlight:after{content:'';height:15px;background:var(--accent);position:absolute;left:1%;right:0;bottom:6%;z-index:-1;transform:rotate(-1deg)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:25px}.hero-bottom p{font-size:18px;max-width:440px;line-height:1.5;margin:0}.round{display:grid;place-items:center;background:var(--accent);border-radius:50%;width:94px;height:94px;font-size:36px;transition:transform .3s}.round:hover{transform:rotate(40deg)}section.work{padding:50px 5.5% 110px}.section-head{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #bbbcb6;padding:25px 0 40px}.section-head h2{font-size:17px;margin:0}.section-head span{font-size:12px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:58px 24px}.project:nth-child(even){margin-top:105px}.art{height:clamp(280px,36vw,550px);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;transition:filter .3s}.art:hover .mock{transform:translateY(-12px) rotate(-4deg) scale(1.05)}.art1{background:#b7d4a1}.art2{background:#f2b6b9}.art3{background:#efbc4b}.art4{background:#c7c2e9}.mock{transition:transform .5s cubic-bezier(.2,.7,.2,1);filter:drop-shadow(12px 18px 13px #0002)}.tin{width:185px;height:220px;border-radius:24px 24px 27px 27px;background:#e5f5c6;border:7px solid #d5e9b5;text-align:center;padding:50px 8px 10px;box-shadow:inset 0 14px #f8ffea,0 12px 0 #b2c9a1;transform:rotate(-7deg)}.tin strong{font-size:27px;letter-spacing:-.07em}.tin small{display:block;font-size:11px;margin-top:14px}.bottle{height:260px;width:120px;background:linear-gradient(90deg,#a83852,#e88d93 35%,#d5526a 75%,#a93852);border-radius:34px 34px 18px 18px;position:relative;transform:rotate(8deg);text-align:center;padding-top:110px;color:#fff}.bottle:before{content:'';position:absolute;width:54px;height:40px;background:#e6b8a4;top:-30px;left:33px;border-radius:8px 8px 2px 2px}.bottle strong{font-size:20px}.can{width:135px;height:260px;background:#f7df76;border-radius:18px 18px 25px 25px;text-align:center;padding-top:83px;transform:rotate(-10deg);box-shadow:inset 0 10px #fff7c7,inset 0 -10px #cda94c}.can strong{font-size:55px;letter-spacing:-.1em}.jar{width:210px;height:200px;background:linear-gradient(100deg,#f6f4f4,#d9d0e7);border-radius:18px 18px 28px 28px;text-align:center;padding-top:68px;transform:rotate(7deg);box-shadow:inset 0 15px #fff}.jar strong{font-size:27px}.project-meta{display:flex;justify-content:space-between;gap:12px;padding-top:18px}.project-meta h3{font-size:23px;letter-spacing:-.04em;margin:0}.project-meta p{font-size:12px;color:#6e6e69;margin:6px 0}.arrow{font-size:24px}.about{background:#e9ebdf;padding:90px 5.5% 105px}.about h2{font-family:"Fixel Text",Arimo,sans-serif;font-size:clamp(38px,6vw,85px);line-height:1.12;letter-spacing:-.065em;max-width:1060px;margin:30px 0}.about p{max-width:550px;line-height:1.6}.contact{padding:100px 5.5% 120px}.contact h2{font-family:"Fixel Text",Arimo,sans-serif;font-size:clamp(55px,10vw,145px);letter-spacing:-.08em;line-height:1.05;margin:35px 0}.contact a.email{border-bottom:2px solid;padding-bottom:8px;font-size:22px}footer{padding:25px 5.5%;border-top:1px solid #d7d7d1;display:flex;justify-content:space-between;font-size:12px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@media(max-width:700px){header{padding:22px 5%}nav{gap:14px}nav a{font-size:12px}.availability{display:none}.hero{padding:70px 5% 60px;min-height:auto}.hero h1{font-size:clamp(51px,11vw,80px)}.hero-bottom p{font-size:15px}.round{width:65px;height:65px;flex-shrink:0}.projects{grid-template-columns:1fr;gap:40px}.project:nth-child(even){margin-top:0}.art{height:390px}.about,.contact{padding:65px 5%}footer{padding:22px 5%}}

.services,.team{padding:60px 5.5% 110px}.service-row{display:grid;grid-template-columns:55px 1.5fr 1fr 35px;gap:15px;align-items:center;padding:32px 0;border-bottom:1px solid #c7c5c0}.service-no,.service-desc{font-size:13px;color:#64645e}.service-row h3{font-family:"Fixel Text",Arimo,sans-serif;font-size:clamp(24px,3.3vw,48px);letter-spacing:-.055em;margin:0}.service-arrow{font-size:24px;text-align:right;transition:transform .2s}.service-row:hover .service-arrow{transform:translate(5px,-5px)}.services-cta{display:inline-block;margin-top:35px;padding:14px 20px;background:#edb9dd;border-radius:50px;font-weight:600;font-size:14px}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.team-photo{height:clamp(250px,34vw,500px);display:grid;place-items:center;position:relative;overflow:hidden}.team-photo.person{background:#ead6e8}.team-photo.cat{background:#d5e2f5}.team-photo span{font-size:13px;letter-spacing:.12em;color:#625c65}.team-card h3{font-size:27px;letter-spacing:-.04em;margin:18px 0 2px}.team-card p{margin:0 0 10px;font-size:14px}.team-card small{color:#666;font-size:13px}.highlight:after{height:13px}.team-card:hover .team-photo{filter:saturate(1.15)}@media(max-width:700px){.services,.team{padding:45px 5% 75px}.service-row{grid-template-columns:30px 1fr 24px;gap:10px;padding:23px 0}.service-row h3{font-size:26px}.service-desc{grid-column:2;grid-row:2}.service-arrow{grid-column:3;grid-row:1}.team-grid{gap:14px}.team-photo{height:260px}.team-photo span{font-size:10px;text-align:center}.team-card h3{font-size:21px}.team-card small{font-size:12px}nav{gap:11px}nav a{font-size:11px}}

.hero h1{margin-top:12px}.brand-smile{width:clamp(45px,6vw,91px);height:clamp(45px,6vw,91px);vertical-align:baseline;margin-left:.12em;transform:rotate(12deg);overflow:visible}.contact-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 42px;max-width:900px;margin-top:45px}.contact-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #bcbab5;padding:21px 0;font-size:clamp(19px,2.6vw,34px);font-weight:600;letter-spacing:-.045em}.contact-link span{font-size:25px}.contact-link.pending{cursor:default}.contact-note{font-size:12px;color:#777!important;margin-top:20px}.contact h2{margin-bottom:20px}@media(max-width:700px){.contact-links{grid-template-columns:1fr}.brand-smile{width:42px;height:42px}.contact-link{padding:17px 0}}

.page-intro{padding:85px 5.5% 75px}.page-intro h1{font:700 clamp(65px,11vw,155px)/.97 "Fixel Text",Arimo,sans-serif;letter-spacing:-.085em;margin:20px 0 30px}.page-intro p{font-size:18px;line-height:1.6;max-width:650px}
.back-link{display:inline-block;margin:30px 0;color:#555;font-size:14px}.case-layout{padding:30px 5.5% 110px}.case-hero{min-height:470px;display:grid;place-items:center}.case-hero .mock{transform:scale(1.25)}.case-text{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:60px 0;border-bottom:1px solid #ccc}.case-text h2{font:700 clamp(36px,5vw,65px)/1.1 "Fixel Text",Arimo,sans-serif;letter-spacing:-.06em;margin:0}.case-text p{line-height:1.7;max-width:560px}.note{font-size:13px;color:#777}.all-work{display:inline-block;margin-top:38px;border-bottom:1px solid;padding-bottom:7px}.services-page,.about-page,.contact-page{min-height:55vh}.about-page{padding:70px 5.5%;background:#e9ebdf}.about-page h2{font:700 clamp(40px,6vw,85px)/1.1 "Fixel Text",Arimo,sans-serif;letter-spacing:-.06em}.about-page p{max-width:670px;line-height:1.8;font-size:17px}.page-cta{padding:70px 5.5%;border-top:1px solid #ddd}.page-cta a{display:inline-block;background:var(--accent);padding:16px 25px;border-radius:40px}.nav-active{text-decoration:underline;text-underline-offset:6px}
@media(max-width:700px){.page-intro{padding:60px 5% 50px}.page-intro h1{font-size:clamp(55px,13vw,95px)}.case-layout{padding:25px 5% 70px}.case-hero{min-height:340px}.case-hero .mock{transform:scale(1)}.case-text{grid-template-columns:1fr;gap:15px}.about-page{padding:55px 5%}.page-cta{padding:50px 5%}}

.highlight{isolation:isolate}.highlight:after{z-index:-1;height:.12em;bottom:.04em;background:#edb9dd}
header{flex-wrap:wrap;gap:22px}.logo{letter-spacing:-.065em}nav a[aria-current]{text-decoration:underline;text-underline-offset:6px}
:focus-visible{outline:3px solid #8c69ab;outline-offset:6px}.skip{position:absolute;left:20px;top:-80px;background:#edb9dd;padding:12px;z-index:5}.skip:focus{top:8px}
.story{padding:80px 5.5%;background:#dce6f4;display:grid;grid-template-columns:1fr 1.4fr;gap:60px}.story h2{font:500 clamp(36px,5vw,72px)/1.08 "Fixel Text",Arimo,sans-serif;letter-spacing:-.06em;margin:0}.story p{font-size:20px;line-height:1.65;max-width:650px;margin:0 0 22px}
.photo-strip{padding:70px 5.5% 100px;display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:24px;align-items:start}.photo-slot{background:#ead6e8;min-height:360px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px;color:#5d5360;text-align:center;padding:25px}.photo-slot span{font-size:34px;font-weight:400}.photo-slot small{font-size:12px}.photo-strip figure{margin:0}.photo-strip figure:nth-child(2){margin-top:70px}.photo-strip figure:nth-child(2) .photo-slot{background:#d5e2f5;min-height:290px}.photo-strip figure:nth-child(3) .photo-slot{background:#ded9ed;min-height:400px}figcaption{font-size:12px;margin-top:14px;color:#666}
.team{background:#eeebf4}.team-photo{display:flex;flex-direction:column;gap:15px}.team-photo b{font-size:48px;font-weight:400}.team-photo span{letter-spacing:0}
.contact-link.pending{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.contact-link small{font:400 13px "Fixel Text",Arimo,sans-serif;letter-spacing:0;color:#666}.contact-link code{font:12px monospace;color:#66526a}.availability{display:none}.hero h1{max-width:1250px}.reveal{opacity:1;transform:none}.draft-note{font-size:13px;color:#666}
@media(max-width:700px){header{justify-content:flex-start;gap:4px;padding-block:18px 8px}.logo{font-size:23px}header>nav{width:100%;justify-content:flex-start;gap:clamp(16px,5vw,28px)}header>nav a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}.hero h1{font-size:clamp(43px,10.9vw,80px);letter-spacing:-.075em}.story{grid-template-columns:1fr;gap:30px;padding:55px 5%}.story p{font-size:17px}.photo-strip{padding:40px 5% 60px;gap:14px;grid-template-columns:1fr 1fr}.photo-strip figure:nth-child(2){margin-top:35px}.photo-strip figure:nth-child(3){grid-column:1/-1}.photo-slot,.photo-strip figure:nth-child(2) .photo-slot{min-height:230px}.photo-strip figure:nth-child(3) .photo-slot{min-height:260px}.team-grid{grid-template-columns:1fr}.team-photo{height:320px}footer{gap:20px;flex-wrap:wrap}.hero-bottom{align-items:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.hero .brand-smile {
  position: relative;
  margin-left: -0.35em;
  top: 0.18em;
  z-index: 1;
}
.hero-bottom p {
  max-width: 620px;
}
.story {
  grid-template-columns: 1.2fr 1fr;
}

.story > div:last-child p {
  max-width: 680px;
  font-size: 24px;
  line-height: 1.5;
  text-wrap: pretty;
}

@media (max-width: 700px) {
  .story > div:last-child p {
    font-size: 18px;
  }
}

@media (max-width: 700px) {
  .story {
    grid-template-columns: 1fr;
  }
}
.story {
  align-items: center;
}

.story > div:last-child p:last-child {
  margin-bottom: 0;
}
.team-grid {
  max-width: 900px;
  margin-inline: auto;
  gap: 32px;
}

.team-photo {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 4;
}
.team .section-head {
  max-width: 900px;
  margin-inline: auto;
}
.photo-strip {
  max-width: 1240px;
  margin-inline: auto;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
}

.photo-strip figure:nth-child(n) {
  margin: 0;
}

.photo-strip figure:nth-child(n) .photo-slot {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 3 / 4;
}

@media (max-width: 700px) {
  .photo-strip {
    grid-template-columns: 1fr;
  }

  .photo-strip figure:nth-child(n) {
    grid-column: auto;
  }
}
.photo-strip {
  max-width: none;
}

.photo-strip figure:nth-child(n) .photo-slot {
  aspect-ratio: 1 / 1;
}

.team-grid,
.team .section-head {
  max-width: 1200px;
}
.team .section-head h2 {
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.65;
}
.story-brand {
  border-bottom: none;
  background: #edb9dd;
  padding: 0 0.15em;
  border-radius: 3px;
}

.story > div:last-child p {
  text-wrap: wrap;
}
.team-photo {
  position: relative;
}

.team-photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-bottom p {
  max-width: 850px;
}
.photo-strip .photo-slot {
  position: relative;
  padding: 0;
}

.photo-strip .photo-slot img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero h1 {
  position: relative;
  left: -0.065em;
}
.service-item {
  border-bottom: 1px solid #c7c5c0;
}

.service-item > summary {
  list-style: none;
  cursor: pointer;
  border-bottom: none;
}

.service-item > summary::-webkit-details-marker {
  display: none;
}

.service-toggle {
  grid-column: 4;
  grid-row: 1;
  text-align: right;
  font-size: 28px;
}

.service-toggle::before {
  content: "+";
}

.service-item[open] .service-toggle::before {
  content: "−";
}

.service-content {
  max-width: 1000px;
  padding: 24px 0 48px 70px;
  font-size: 20px;
  line-height: 1.6;
}

.service-content h4 {
  margin: 24px 0 8px;
}

.service-content p {
  margin: 0 0 16px;
}

@media (max-width: 700px) {
  .service-toggle {
    grid-column: 3;
  }

  .service-content {
    padding-left: 40px;
  }
}
.services-hero h1 {
  max-width: none;
}

.services-hero .highlight {
  white-space: normal;
}
.services .section-head h2 {
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.65;
}

.services .section-head h2 sup {
  font-size: inherit;
  vertical-align: baseline;
}
.work-hero h1 {
  max-width: none;
}

.work-hero .highlight {
  white-space: normal;
}
.work .section-head h2 {
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.65;
}

.work .section-head h2 sup {
  font-size: inherit;
  vertical-align: baseline;
}
.art > .project-cover {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.contact-hero h1 {
  max-width: none;
}

.contact-hero .highlight {
  white-space: normal;
}
html {
  scrollbar-gutter: stable;
}
.eyebrow,
.team .section-head h2,
.services .section-head h2,
.work .section-head h2 {
  letter-spacing: 0.06em;
}
.team {
  background: transparent;
}
.team-photo {
  height: auto;
  min-height: 0;
  aspect-ratio: 1 / 1;
}
.work-hero .title-ending {
  position: relative;
  display: inline-block;
  white-space: nowrap;
}

.work-hero .brand-smile {
  position: absolute;
  inset: auto auto -.03em calc(100% - .26em);
  width: .62em;
  height: .62em;
  margin-left: 0;
}

@media (max-width: 420px) {
  .work-hero .highlight {
    letter-spacing: clamp(-.16em, calc(-.075em + (100vw - 410px) / 40), -.075em);
  }
}

.service-content h4 {
  margin: 28px 0 12px;
  font-size: 16px;
  font-weight: 700;
}

.service-content ul {
  margin: 0;
  padding-left: 24px;
}

.service-content li + li {
  margin-top: 8px;
}

@media (max-width: 700px) {
  .service-content {
    padding: 20px 0 32px 40px;
    font-size: 17px;
  }
}
.service-content.service-content-columns {
  max-width: none;
  padding-right: 0;
}

.service-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

.service-columns > div {
  min-width: 0;
}

.service-columns h4:first-child {
  margin-top: 0;
}

.service-content-columns .service-intro {
  margin-bottom: 32px;
}

@media (max-width: 700px) {
  .service-columns {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}
.brand-service .service-intro {
  max-width: 900px;
  font-size: 26px;
  line-height: 1.4;
  margin-bottom: 40px;
}

.brand-service h4 {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin: 32px 0 16px;
}

.brand-service .service-columns h4:first-child {
  margin-top: 0;
}

.brand-service .service-steps {
  margin: 0;
  padding-left: 26px;
}

.brand-service .service-duration {
  font-size: 28px;
  line-height: 1.3;
  margin-bottom: 12px;
}

.brand-service .service-note {
  max-width: 540px;
  font-size: 16px;
  line-height: 1.6;
  color: #595953;
}

@media (max-width: 700px) {
  .brand-service .service-intro {
    font-size: 22px;
  }

  .brand-service .service-duration {
    font-size: 24px;
  }
}
.service-content.service-sheet {
  max-width: 1050px;
  padding: 24px 0 48px 70px;
}

.service-sheet .service-sheet-intro {
  max-width: none;
  margin: 0 0 28px;
  font-size: 22px;
  line-height: 1.5;
}

.service-sheet .service-sheet-row {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 28px;
  padding: 24px 0;
  border-top: 1px solid #d7d7d1;
}

.service-sheet .service-sheet-row h4 {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.service-sheet .service-sheet-row ul,
.service-sheet .service-sheet-row ol {
  margin: 0;
  padding-left: 24px;
}

.service-sheet .service-sheet-row li {
  font-size: 18px;
  line-height: 1.6;
}

.service-sheet .service-sheet-row li + li {
  margin-top: 6px;
}

.service-sheet .service-sheet-duration {
  margin: 0 0 12px;
  font-size: 24px;
  line-height: 1.4;
}

.service-sheet .service-sheet-note {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: #595953;
}

@media (max-width: 700px) {
  .service-content.service-sheet {
    padding: 20px 0 32px;
  }

  .service-sheet .service-sheet-intro {
    font-size: 20px;
  }

  .service-sheet .service-sheet-row {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 20px 0;
  }
}
.service-item[open] > .service-row {
  padding-bottom: 0;
}

.service-content.service-sheet {
  padding-top: 32px;
}

.service-sheet .service-sheet-intro {
  margin-top: 0;
  margin-bottom: 32px;
}
@media (max-width: 700px) {
  .work .section-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .work .section-head h2 {
    font-size: 18px;
  }

  .work .section-head h2 sup {
    white-space: nowrap;
  }
}
@media (max-width: 700px) {
  .services .section-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .services .section-head h2 {
    font-size: 18px;
  }

  .services .section-head h2 sup {
    white-space: nowrap;
  }
}
section.hero.work-hero,
section.hero.services-hero {
  min-height: auto;
  padding-bottom: 32px;
}

.work-hero + section.work,
.services-hero + section.services {
  padding-top: 24px;
}
body.contact-page {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

body.contact-page > main {
  flex: 1;
}
section.hero {
  padding-top: 70px;
}

@media (max-width: 700px) {
  section.hero {
    padding-top: 40px;
  }
}
@media (max-width: 700px) {
  .work-hero .hero-bottom p {
    text-wrap: balance;
  }
}

.icon-arrow {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -0.12em;
}

.menu-toggle {
  display: none;
}

@media (max-width: 700px) {
  header.has-menu-toggle {
    justify-content: space-between;
    padding-block: 10px;
  }

  .has-menu-toggle > .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
  }

  .menu-toggle svg {
    width: 20px;
    height: 20px;
  }

  .menu-toggle .menu-close-icon,
  .menu-toggle[aria-expanded="true"] .menu-open-icon,
  .menu-toggle[aria-expanded="false"] + nav {
    display: none;
  }

  .menu-toggle[aria-expanded="true"] .menu-close-icon {
    display: inline-block;
  }

  .has-menu-toggle > nav {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    margin-top: 6px;
  }

  .has-menu-toggle > nav a {
    min-height: 48px;
    border-top: 1px solid #dddcd6;
    font-size: 16px;
  }
}

/* Give project copy room to wrap on narrow layouts. */
.work .project-meta p,
main .case-overview dl dd,
.kamakura-preview .editorial-copy p,
.capri-draft .copy p,
.capri-draft .closing-copy p,
.logo-case .case-copy p {
  text-wrap: balance;
}

@media (min-width: 701px) and (max-width: 960px) {
  main[id="main"] .case-overview dl > div {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

main[id="main"] h1,
header .logo {
  font-family: "Fixel Display", "Fixel Text", Arimo, sans-serif;
  font-weight: 800;
}

.footer-signature {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.footer-signature img {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.case-motion {
  position: relative;
}

.animation-toggle {
  position: absolute;
  inset: auto 12px 12px auto;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: var(--paper);
  color: var(--ink);
  cursor: pointer;
}

.animation-toggle[hidden],
.animation-toggle .animation-pause,
.animation-toggle[data-playing] .animation-play {
  display: none;
}

.animation-toggle[data-playing] .animation-pause {
  display: block;
}

.animation-toggle svg {
  width: 20px;
  height: 20px;
}
