@font-face{
  font-family:"Secondfont";
  src:url("https://static.tildacdn.com/tild6461-6232-4931-b861-666232643564/SFProText-Medium.woff") format("woff");
  font-weight:100;
  font-display:swap;
}
@font-face{
  font-family:"Secondfont";
  src:url("https://static.tildacdn.com/tild6539-3936-4038-b738-663966393732/Palqa-regular.woff") format("woff");
  font-weight:300;
  font-display:swap;
}
@font-face{
  font-family:"Secondfont";
  src:url("https://static.tildacdn.com/tild3134-6335-4337-a239-353863646563/Palqa-Bold.woff") format("woff");
  font-weight:400;
  font-display:swap;
}
@font-face{
  font-family:"Secondfont";
  src:url("https://static.tildacdn.com/tild3738-6635-4533-b566-636462313638/LeonovSP.woff") format("woff");
  font-weight:700;
  font-display:swap;
}

:root{
  --wine:#48222D;
  --paper:#EAE5DF;
}

*{box-sizing:border-box}
html,body{margin:0;width:100%;min-height:100%;overflow:hidden}
body{
  background:var(--wine);
  color:#fff;
  font-family:"Secondfont",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}

.hero{
  position:relative;
  width:100%;
  height:100svh;
  min-height:700px;
  overflow:hidden;
  background:var(--wine);
  isolation:isolate;
}

.plastic{
  position:absolute;
  inset:0;
  z-index:1;
  background:url("assets/reference-plastic.webp") center/cover no-repeat;
  opacity:.10;
  pointer-events:none;
}

.canvas{
  position:absolute;
  z-index:2;
  left:50%;
  top:50%;
  width:1200px;
  height:700px;
  transform:translate(-50%,-50%);
}

.title{
  position:absolute;
  z-index:8;
  top:38px;
  left:70px;
  width:1060px;
  margin:0;
  color:#fff;
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap;
  font-family:"Secondfont",Arial,sans-serif;
  font-size:80px;
  font-weight:600;
  line-height:1.25;
  letter-spacing:-.025em;
}

.subtitle{
  position:absolute;
  z-index:9;
  top:158px;
  left:160px;
  width:880px;
  color:#fff;
  text-align:center;
  white-space:nowrap;
  font-size:22px;
  font-weight:400;
  line-height:1.4;
}
.subtitle b{
  margin-left:2px;
  font-weight:400;
  animation:blink .75s steps(1,end) infinite;
}
@keyframes blink{50%{opacity:0}}

.shape{
  position:absolute;
  z-index:3;
  top:235px;
  left:318px;
  width:565px;
  height:365px;
  overflow:hidden;
  pointer-events:none;
}
.shape img{
  width:100%;
  height:auto;
  display:block;
  transform:translateY(-4px);
}

.portrait{
  position:absolute;
  z-index:5;
  top:218px;
  left:220px;
  width:760px;
  pointer-events:none;
  transform-origin:50% 20%;
}
.portrait img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 4px 4px rgba(22,8,12,.07));
}

.arrow{
  position:absolute;
  z-index:10;
  top:235px;
  left:875px;
  width:67px;
  height:auto;
  pointer-events:none;
}

.calc{
  position:fixed;
  z-index:990;
  right:43px;
  bottom:20px;
  width:100px;
  height:100px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--wine);
  border:1px solid rgba(255,255,255,.9);
  color:#fff;
  text-decoration:none;
  text-align:center;
  text-transform:uppercase;
  font-family:"Secondfont",Arial,sans-serif;
  font-size:11px;
  font-weight:400;
  line-height:1.18;
}
.calc i{
  position:absolute;
  inset:0;
  border:2px solid rgba(255,255,255,.82);
  border-radius:50%;
  animation:ring 2.1s ease-out infinite;
}
@keyframes ring{
  0%{transform:scale(.98);opacity:.55}
  80%,100%{transform:scale(1.34);opacity:0}
}

.noise{
  position:fixed;
  inset:0;
  z-index:9999;
  pointer-events:none;
  background:url("assets/reference-noise.jpg");
  background-size:170px;
  opacity:0;
  transition:opacity .3s ease;
}
.noise.visible{opacity:.10}

.opening{
  position:absolute;
  left:0;
  width:100%;
  height:50%;
  z-index:1000;
  overflow:hidden;
  background:var(--paper);
  color:#000;
  pointer-events:none;
}
.opening-top{
  top:0;
  animation:openTop 1.02s cubic-bezier(.76,0,.24,1) .55s forwards;
}
.opening-bottom{
  bottom:0;
  animation:openBottom 1.02s cubic-bezier(.76,0,.24,1) .55s forwards;
}
.opening-name{
  position:absolute;
  left:50%;
  bottom:-48px;
  width:1060px;
  transform:translateX(-50%);
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap;
  font-size:64px;
  font-weight:600;
  line-height:1.25;
}
.opening-role{
  position:absolute;
  left:50%;
  top:-17px;
  width:560px;
  transform:translateX(-50%);
  text-align:center;
  white-space:nowrap;
  font-size:23px;
  font-weight:300;
  line-height:1.4;
}
@keyframes openTop{to{transform:translateY(-101%)}}
@keyframes openBottom{to{transform:translateY(101%)}}

.hero-motion{
  will-change:transform;
  transform-origin:50% 20%;
}
@media(max-width:1199px){
  .hero{
    min-height:570px;
    height:100svh;
  }
  .canvas{
    top:0;
    width:320px;
    height:570px;
    transform:translateX(-50%);
  }
  .title{
    top:19px;
    left:-10px;
    width:340px;
    white-space:normal;
    font-size:49px;
    line-height:.92;
    letter-spacing:-.035em;
  }
  .subtitle{
    top:137px;
    left:0;
    width:320px;
    white-space:normal;
    font-size:19px;
    line-height:1.2;
  }
  .shape{
    top:190px;
    left:-15px;
    width:350px;
    height:270px;
  }
  .portrait{
    top:217px;
    left:-105px;
    width:530px;
  }
  .arrow{
    top:182px;
    left:246px;
    width:49px;
  }
  .calc{
    right:26px;
    bottom:20px;
    width:75px;
    height:75px;
    font-size:9px;
  }
  .opening-name{
    bottom:-22px;
    width:320px;
    white-space:normal;
    font-size:35px;
    line-height:.95;
  }
  .opening-role{
    top:-2px;
    width:320px;
    font-size:21px;
  }
}


@media(prefers-reduced-motion:reduce){
  .opening{display:none}
  .calc i,.subtitle b{animation:none}
}
.shape{display:none!important}

@media(min-width:1200px){
  .portrait{
    top:212px;
    left:224px;
    width:752px;
  }
  .arrow{
    top:232px;
    left:875px;
  }
}

@media(max-width:1199px){
  .portrait{
    top:214px;
    left:-104px;
    width:528px;
  }
  .arrow{
    top:181px;
    left:246px;
  }
}
@media(min-width:1200px){
  .portrait{
    top:auto!important;
    bottom:-18px!important;
    left:224px!important;
    width:752px!important;
    transform:none!important;
  }
}

@media(max-width:1199px){
  .portrait{
    top:auto!important;
    bottom:-8px!important;
    left:-104px!important;
    width:528px!important;
    transform:none!important;
  }
}

.opening{display:none!important}
@media(min-width:1200px){
  .portrait{
    top:auto!important;
    bottom:calc((700px - 100svh)/2 - 3px)!important;
    left:224px!important;
    width:752px!important;
    transform-origin:50% 100%!important;
  }
}
.title,
.subtitle,
.arrow{
  opacity:0;
  transform:translateY(8px);
  transition:
    opacity .72s ease .78s,
    transform .90s cubic-bezier(.22,.61,.36,1) .78s;
}

.portrait{
  opacity:0;
  transform:scale(.985)!important;
  transition:
    opacity .85s ease .68s,
    transform 1.05s cubic-bezier(.22,.61,.36,1) .68s!important;
}

.calc{
  opacity:0;
  transform:scale(.88);
  transition:
    opacity .55s ease 1.12s,
    transform .70s cubic-bezier(.22,.61,.36,1) 1.12s;
}

body.hero-ready .title,
body.hero-ready .subtitle,
body.hero-ready .arrow{
  opacity:1;
  transform:translateY(0);
}

body.hero-ready .portrait{
  opacity:1;
  transform:scale(1)!important;
}

body.hero-ready .calc{
  opacity:1;
  transform:scale(1);
}
.opening-screen{
  position:absolute;
  inset:0;
  z-index:1000;
  pointer-events:none;
}

.opening-half{
  position:absolute;
  left:0;
  width:100%;
  height:50.2%;
  background:var(--paper);
  will-change:transform;
  transition:transform 1.22s cubic-bezier(.76,0,.24,1) .46s;
}

.opening-half-top{top:0}
.opening-half-bottom{bottom:0}

.opening-brand{
  position:absolute;
  z-index:2;
  left:50%;
  top:50%;
  width:min(1060px,90vw);
  transform:translate(-50%,-50%);
  color:#171215;
  text-align:center;
  opacity:1;
  transition:
    opacity .28s ease .20s,
    transform .42s cubic-bezier(.22,.61,.36,1) .16s;
}

.opening-brand strong{
  display:block;
  white-space:nowrap;
  font-size:clamp(38px,4.35vw,68px);
  line-height:.98;
  letter-spacing:-.03em;
  font-weight:600;
}

.opening-brand span{
  display:block;
  margin-top:18px;
  font-size:clamp(13px,1.25vw,20px);
  line-height:1.2;
  letter-spacing:.03em;
  font-weight:300;
  text-transform:uppercase;
}

body.hero-ready .opening-half-top{
  transform:translateY(-101.5%);
}

body.hero-ready .opening-half-bottom{
  transform:translateY(101.5%);
}

body.hero-ready .opening-brand{
  opacity:0;
  transform:translate(-50%,-54%);
}

body.hero-opened .opening-screen{
  visibility:hidden;
}

.subtitle{
  font-size:21px;
}
@media(max-width:1199px){
  .canvas{
    height:100svh!important;
    min-height:570px!important;
  }

  .portrait{
    top:auto!important;
    bottom:-3px!important;
    left:-104px!important;
    width:528px!important;
    transform-origin:50% 100%!important;
  }

  .opening-brand{
    width:290px;
  }

  .opening-brand strong{
    white-space:normal;
    font-size:34px;
    line-height:.94;
  }

  .opening-brand span{
    margin-top:14px;
    font-size:11px;
    line-height:1.25;
  }

  .subtitle{
    top:137px;
    font-size:17px;
    line-height:1.18;
  }
}

html,body{background:#48222D}
.subtitle{
  min-height:28px;
}

.subtitle #typed{
  display:inline-block;
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
  transition:
    opacity .52s ease,
    transform .62s cubic-bezier(.22,.61,.36,1),
    filter .52s ease;
  will-change:opacity,transform,filter;
}

.subtitle #typed.is-switching{
  opacity:0;
  transform:translateY(-5px);
  filter:blur(2px);
}
.subtitle b{display:none!important}

@media(max-width:1199px){
  .subtitle{
    width:320px!important;
    left:0!important;
    font-size:16px!important;
    line-height:1.18!important;
  }
}
.portrait{
  transform-origin:50% 100%!important;
  will-change:transform,opacity;
}

body.hero-ready .portrait{
  animation:portraitBreath 5.6s cubic-bezier(.45,0,.55,1) 1.45s infinite alternate!important;
}

@keyframes portraitBreath{
  0%{
    transform:scale(1)!important;
  }
  45%{
    transform:scale(1.045)!important;
  }
  100%{
    transform:scale(1.085)!important;
  }
}
.subtitle #typed{
  display:inline-block;
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
  transition:
    opacity .42s ease,
    transform .48s cubic-bezier(.22,.61,.36,1),
    filter .42s ease;
}

.subtitle #typed.is-switching{
  opacity:0;
  transform:translateY(-7px);
  filter:blur(3px);
}
@font-face{
  font-family:"HeroSameFont";
  src:url("https://static.tildacdn.com/tild3738-6635-4533-b566-636462313638/LeonovSP.woff") format("woff");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

.hero,
.hero *,
.opening-screen,
.opening-screen *,
.calc,
.calc *{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-weight:400!important;
}

.title{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-weight:400!important;
}

.subtitle,
.subtitle #typed{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-weight:400!important;
  letter-spacing:.005em;
}
.portrait{
  transform:none!important;
  animation:none!important;
  overflow:visible!important;
}

body.hero-ready .portrait{
  transform:none!important;
  animation:none!important;
}

.portrait img{
  transform-origin:50% 100%!important;
  will-change:transform;
  animation:none!important;
}
body.hero-ready .portrait img{
  animation:heroPortraitZoom 5.2s cubic-bezier(.45,0,.55,1) 1.15s infinite alternate!important;
}

@keyframes heroPortraitZoom{
  0%{
    transform:translate3d(0,0,0) scale(1);
  }
  50%{
    transform:translate3d(1px,0,0) scale(1.045);
  }
  100%{
    transform:translate3d(0,0,0) scale(1.09);
  }
}
.subtitle #typed{
  transition:
    opacity .48s ease,
    transform .56s cubic-bezier(.22,.61,.36,1),
    filter .48s ease!important;
}

.subtitle #typed.is-switching{
  opacity:0!important;
  transform:translateY(-6px)!important;
  filter:blur(2px)!important;
}

@media(max-width:1199px){
  body.hero-ready .portrait img{
    animation-duration:5.6s!important;
  }

  @keyframes heroPortraitZoom{
    0%{
      transform:translate3d(0,0,0) scale(1);
    }
    50%{
      transform:translate3d(1px,0,0) scale(1.035);
    }
    100%{
      transform:translate3d(0,0,0) scale(1.07);
    }
  }
}

.subtitle{
  display:flex!important;
  justify-content:center!important;
  align-items:baseline!important;
  gap:2px!important;
}

.subtitle #typed{
  display:inline!important;
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  transition:none!important;
}

.subtitle .typing-caret{
  display:inline!important;
  margin-left:1px!important;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-weight:400!important;
  animation:typingCaretBlink .72s steps(1,end) infinite!important;
}

@keyframes typingCaretBlink{
  0%,48%{opacity:1}
  49%,100%{opacity:0}
}
html{
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
body{
  overflow-x:hidden!important;
  overflow-y:visible!important;
}
.hero{
  z-index:2;
  overflow:hidden!important;
}
.showreel-scene{
  position:relative;
  z-index:3;
  height:160svh;
  min-height:1300px;
  margin:0;
  background:#EAE5DF;
}

.showreel-stage{
  --cx:37.5%;
  --cy:24%;
  --right-x:63.5%;

  position:sticky;
  top:0;
  width:100%;
  height:100svh;
  min-height:700px;
  overflow:hidden;
  background:#EAE5DF;
  isolation:isolate;
}
.showreel-video{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.035);
  transform-origin:center;
  will-change:transform;
}
.showreel-under-ui{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
}

.showreel-mask{
  position:absolute;
  z-index:3;
  left:var(--cx);
  top:var(--cy);
  width:2600px;
  height:1800px;
  margin-left:-1300px;
  margin-top:-900px;
  max-width:none;
  transform-origin:50% 50%;
  transform:scale(1);
  will-change:transform,opacity,left,top;
  pointer-events:none;
}
.showreel-choice{
  position:absolute;
  width:124px;
  height:124px;
  margin-left:-62px;
  margin-top:-62px;
  border:0;
  border-radius:50%;
  background:rgba(0,0,0,.35);
  -webkit-backdrop-filter:blur(13px);
  backdrop-filter:blur(13px);
  display:grid;
  place-items:center;
  cursor:pointer;
}

.showreel-choice-left{
  z-index:5;
  left:var(--cx);
  top:var(--cy);
  pointer-events:auto;
}

.showreel-choice-right{
  z-index:2;
  left:var(--right-x);
  top:var(--cy);
  pointer-events:auto;
}

.showreel-play-triangle{
  display:block;
  width:0;
  height:0;
  margin-left:7px;
  border-top:18px solid transparent;
  border-bottom:18px solid transparent;
  border-left:29px solid #fff;
}

.showreel-left-label,
.showreel-right-label{
  position:absolute;
  top:calc(var(--cy) + 92px);
  width:150px;
  color:#fff;
  text-align:center;
  text-transform:uppercase;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:16px;
  font-weight:400;
  line-height:1.12;
  opacity:0;
  will-change:opacity;
}

.showreel-left-label{
  left:calc(var(--cx) - 75px);
}
.showreel-right-label{
  left:calc(var(--right-x) - 75px);
}
.showreel-ring{
  position:absolute;
  z-index:6;
  left:var(--cx);
  top:var(--cy);
  width:220px;
  height:220px;
  margin-left:-110px;
  margin-top:-110px;
  color:#161214;
  transform:rotate(0deg);
  transform-origin:50% 50%;
  will-change:transform,opacity,left,top;
  pointer-events:none;
}

.showreel-ring svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}
.showreel-ring text{
  fill:currentColor;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:22px;
  font-weight:400;
  letter-spacing:2.1px;
}
.showreel-arrow{
  position:absolute;
  z-index:6;
  left:60%;
  top:calc(var(--cy) - 8px);
  width:155px;
  height:auto;
  color:#151113;
  transform:rotate(8deg);
  will-change:opacity,transform,top;
  pointer-events:none;
}
.showreel-sound{
  position:absolute;
  z-index:7;
  right:36px;
  bottom:24px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  padding:11px 18px 10px;
  background:rgba(0,0,0,.18);
  color:#fff;
  opacity:0;
  pointer-events:none;
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:10px;
  font-weight:400;
  letter-spacing:.06em;
  cursor:pointer;
  transition:opacity .2s linear;
}
.calc{
  z-index:990!important;
}

@media(max-width:1199px){
  .showreel-scene{
    height:165svh;
    min-height:1000px;
  }

  .showreel-stage{
    min-height:570px;
    --cx:50%;
    --cy:25%;
    --right-x:50%;
  }

  .showreel-mask{
    width:2200px;
    height:1523px;
    margin-left:-1100px;
    margin-top:-761px;
  }

  .showreel-ring{
    width:190px;
    height:190px;
    margin-left:-95px;
    margin-top:-95px;
  }
  .showreel-ring text{
    font-size:20px;
    letter-spacing:1.6px;
  }

  .showreel-choice{
    width:112px;
    height:112px;
    margin-left:-56px;
    margin-top:-56px;
  }

  .showreel-arrow{
    left:67%;
    width:105px;
  }
  .showreel-choice-right{
    top:calc(var(--cy) + 200px);
  }
  .showreel-right-label{
    top:calc(var(--cy) + 278px);
    left:calc(50% - 75px);
  }
  .showreel-left-label{
    top:calc(var(--cy) + 78px);
  }
}

@media(prefers-reduced-motion:reduce){
  .showreel-mask{
    opacity:0!important;
  }
  .showreel-ring,
  .showreel-arrow{
    display:none!important;
  }
  .showreel-left-label,
  .showreel-right-label,
  .showreel-sound{
    opacity:1!important;
  }
}
.showreel-left-label,
.showreel-right-label{
  display:none!important;
}

.about-reference{
  position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:1fr 1fr;
  width:100%;
  min-height:1520px;
  overflow:hidden;
  background:#EAE5DF;
  color:#171215;
  font-family:"HeroSameFont",Arial,sans-serif!important;
}
.about-left{
  position:relative;
  min-height:1520px;
  overflow:hidden;
  background:#EAE5DF;
}

.about-left:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:url("assets/reference-plastic.webp") center/cover repeat;
  opacity:.055;
}

.about-pattern{
  position:absolute;
  z-index:1;
  left:-11%;
  top:-80px;
  width:132%;
  color:#111;
  transform:rotate(-4.2deg);
  transform-origin:center top;
  pointer-events:none;
}

.about-pattern div{
  height:77px;
  white-space:nowrap;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:31px;
  line-height:1;
  font-weight:400!important;
  letter-spacing:-.018em;
  text-transform:uppercase;
}

.about-pattern div:nth-child(even){
  transform:translateX(-90px);
}

.about-photo-card{
  position:absolute;
  z-index:3;
  left:50%;
  top:112px;
  width:min(61vw,600px);
  max-width:68%;
  height:565px;
  transform:translateX(-50%);
  background:#d7d2cc;
}

.about-photo-card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.about-tape{
  position:absolute;
  z-index:5;
  left:-30px;
  top:-36px;
  width:155px;
  height:52px;
  transform:rotate(-18deg);
  background:rgba(133,166,187,.88);
  box-shadow:inset 0 -5px 10px rgba(255,255,255,.12);
  clip-path:polygon(5% 4%,95% 0,100% 88%,8% 100%,0 18%);
}

.about-tape:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(
      100deg,
      rgba(255,255,255,.08) 0 3px,
      rgba(0,0,0,.035) 3px 6px
    );
  opacity:.65;
}
.about-right{
  position:relative;
  min-height:1520px;
  background:#48222D;
  color:#fff;
  overflow:hidden;
}

.about-right:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:url("assets/reference-plastic.webp") center/cover repeat;
  opacity:.055;
}

.about-right-text{
  position:relative;
  z-index:2;
  width:min(650px,calc(100% - 110px));
  margin:0 auto;
  padding:66px 0 130px;
}

.about-right h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:58px;
  line-height:.88;
  font-weight:400!important;
  letter-spacing:-.035em;
  text-transform:uppercase;
}

.about-title-line{
  width:455px;
  max-width:88%;
  height:4px;
  margin:16px 0 34px;
  background:#fff;
  transform:rotate(-1deg);
  transform-origin:left center;
}

.about-right p,
.about-right li{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:15px;
  line-height:1.52;
  font-weight:400!important;
}

.about-right p{
  margin:0 0 24px;
}

.about-right strong{
  font-weight:400!important;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.about-lead{
  margin-top:35px!important;
  margin-bottom:15px!important;
  text-transform:uppercase;
  letter-spacing:.035em;
}

.about-right ul{
  margin:0;
  padding:0 0 0 20px;
}

.about-right li{
  margin:0 0 27px;
  padding-left:7px;
}

.about-right li::marker{
  content:"•  ";
  font-size:14px;
}

.about-signature{
  margin-top:47px;
  padding-top:25px;
  border-top:1px solid rgba(255,255,255,.45);
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:19px;
  line-height:1.18;
  font-weight:400!important;
  letter-spacing:.005em;
}
.about-reference + .calc{
  z-index:990!important;
}

@media(max-width:1199px){
  .about-reference{
    display:block;
    min-height:0;
  }

  .about-left{
    min-height:670px;
  }

  .about-pattern{
    left:-34%;
    top:-40px;
    width:185%;
  }

  .about-pattern div{
    height:52px;
    font-size:22px;
  }

  .about-pattern div:nth-child(even){
    transform:translateX(-60px);
  }

  .about-photo-card{
    top:93px;
    width:280px;
    max-width:none;
    height:430px;
  }

  .about-tape{
    left:-19px;
    top:-27px;
    width:115px;
    height:40px;
  }

  .about-right{
    min-height:0;
  }

  .about-right-text{
    width:280px;
    padding:55px 0 90px;
  }

  .about-right h2{
    font-size:44px;
    line-height:.9;
  }

  .about-title-line{
    width:265px;
    height:3px;
    margin:13px 0 28px;
  }

  .about-right p,
  .about-right li{
    font-size:13px;
    line-height:1.48;
  }

  .about-right p{
    margin-bottom:19px;
  }

  .about-right li{
    margin-bottom:22px;
  }

  .about-signature{
    margin-top:35px;
    font-size:16px;
  }
}
.showreel-scene{
  height:116svh!important;
  min-height:0!important;
}
.showreel-stage{
  height:100svh!important;
  min-height:0!important;
}
.about-reference{
  margin-top:0!important;
}

@media(max-width:1199px){
  .showreel-scene{
    height:120svh!important;
    min-height:0!important;
  }

  .showreel-stage{
    height:100svh!important;
    min-height:0!important;
  }
}

.about-left{
  overflow:hidden!important;
}

.about-pattern{
  top:-95px!important;
  min-height:1850px!important;
}
.about-pattern div{
  height:77px!important;
}
.about-pattern div:nth-child(3n){
  transform:translateX(-42px);
}
.about-pattern div:nth-child(3n+1){
  transform:translateX(28px);
}
.about-pattern div:nth-child(even){
  transform:translateX(-88px);
}

@media(max-width:1199px){
  .about-pattern{
    top:-45px!important;
    min-height:820px!important;
  }

  .about-pattern div{
    height:52px!important;
  }
}
.about-reference{
  min-height:0!important;
  height:auto!important;
  align-items:stretch!important;
}

.about-left{
  min-height:0!important;
  height:auto!important;
  align-self:stretch!important;
}

.about-right{
  min-height:0!important;
  height:auto!important;
  align-self:stretch!important;
}
.about-right-text{
  padding-bottom:72px!important;
}
.about-pattern{
  bottom:-120px!important;
  min-height:0!important;
  height:auto!important;
}
@media(min-width:1200px){
  .about-left{
    position:relative!important;
  }

  .about-pattern{
    top:-95px!important;
  }
}

@media(max-width:1199px){
  .about-reference{
    height:auto!important;
  }

  .about-left{
    min-height:670px!important;
  }

  .about-right-text{
    padding-bottom:65px!important;
  }
}

.team-section{
  position:relative;
  z-index:5;
  width:100%;
  overflow:hidden;
  background:#EAE5DF;
  color:#48222D;
  font-family:"HeroSameFont",Arial,sans-serif!important;
}

.team-shell{
  position:relative;
  width:min(1200px,100%);
  min-height:1510px;
  margin:0 auto;
  padding-top:82px;
}

.team-head{
  position:relative;
  z-index:4;
  width:100%;
  padding:0 48px;
}

.team-kicker{
  margin-bottom:14px;
  font-size:11px;
  line-height:1;
  letter-spacing:.15em;
  text-transform:uppercase;
  opacity:.62;
}

.team-head h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:78px;
  line-height:.88;
  font-weight:400!important;
  letter-spacing:-.04em;
  text-transform:uppercase;
}

.team-line{
  width:315px;
  height:4px;
  margin-top:18px;
  background:#48222D;
  transform:rotate(-1deg);
  transform-origin:left center;
}
.team-grid{
  position:relative;
  width:100%;
  height:1260px;
  margin-top:24px;
}

.team-card{
  position:absolute;
  z-index:2;
}

.team-photo-wrap{
  position:relative;
  overflow:hidden;
  background:#d8d2cc;
}

.team-photo-wrap img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 1.25s cubic-bezier(.22,.61,.36,1);
}

.team-card:hover .team-photo-wrap img{
  transform:scale(1.025);
}

.team-name{
  margin-top:13px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:18px;
  line-height:1.05;
  font-weight:400!important;
  letter-spacing:.015em;
  text-transform:uppercase;
}

.team-card-1{
  left:48px;
  top:58px;
  width:305px;
}
.team-card-1 .team-photo-wrap{
  height:455px;
}
.team-card-1 img{
  object-position:center 45%;
}

.team-card-2{
  left:410px;
  top:18px;
  width:330px;
}
.team-card-2 .team-photo-wrap{
  height:495px;
}
.team-card-2 img{
  object-position:center 42%;
}

.team-card-3{
  right:52px;
  top:92px;
  width:345px;
}
.team-card-3 .team-photo-wrap{
  height:510px;
}
.team-card-3 img{
  object-position:center 36%;
}

.team-card-4{
  left:175px;
  top:660px;
  width:365px;
}
.team-card-4 .team-photo-wrap{
  height:520px;
}
.team-card-4 img{
  object-position:center 42%;
}

.team-card-5{
  right:150px;
  top:685px;
  width:385px;
}
.team-card-5 .team-photo-wrap{
  height:500px;
}
.team-card-5 img{
  object-position:center 36%;
}
.team-card:before{
  position:absolute;
  z-index:4;
  right:10px;
  top:10px;
  color:#fff;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:9px;
  letter-spacing:.09em;
  text-shadow:0 1px 4px rgba(0,0,0,.32);
}
.team-card-1:before{content:"01"}
.team-card-2:before{content:"02"}
.team-card-3:before{content:"03"}
.team-card-4:before{content:"04"}
.team-card-5:before{content:"05"}

.team-marquee{
  position:absolute;
  left:0;
  right:0;
  bottom:20px;
  overflow:hidden;
  opacity:.075;
  pointer-events:none;
}

.team-marquee-track{
  width:max-content;
  display:flex;
  gap:60px;
  white-space:nowrap;
  animation:teamMarquee 26s linear infinite;
}

.team-marquee span{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:74px;
  line-height:1;
  letter-spacing:-.04em;
  text-transform:uppercase;
}

@keyframes teamMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(-25%)}
}
.team-reveal{
  opacity:0;
  transform:translateY(26px);
  transition:
    opacity .82s ease,
    transform .96s cubic-bezier(.22,.61,.36,1);
}

.team-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media(max-width:1199px){
  .team-shell{
    width:320px;
    min-height:0;
    padding-top:58px;
    padding-bottom:120px;
  }

  .team-head{
    padding:0 20px;
  }

  .team-kicker{
    font-size:8px;
    line-height:1.2;
    margin-bottom:10px;
  }

  .team-head h2{
    font-size:47px;
    line-height:.9;
  }

  .team-line{
    width:190px;
    height:3px;
    margin-top:14px;
  }

  .team-grid{
    display:block;
    height:auto;
    margin-top:42px;
    padding:0 20px;
  }

  .team-card{
    position:relative;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:100%!important;
    margin-bottom:48px;
  }

  .team-photo-wrap{
    width:100%;
    height:390px!important;
  }

  .team-card-5 .team-photo-wrap{
    height:300px!important;
  }

  .team-name{
    margin-top:10px;
    font-size:16px;
  }

  .team-marquee{
    bottom:22px;
  }

  .team-marquee-track{
    gap:34px;
  }

  .team-marquee span{
    font-size:42px;
  }
}

@media(prefers-reduced-motion:reduce){
  .team-reveal{
    opacity:1!important;
    transform:none!important;
  }

  .team-photo-wrap img{
    transition:none!important;
  }

  .team-marquee-track{
    animation:none!important;
  }
}

.team-section{
  position:relative!important;
  background:#EAE5DF!important;
  isolation:isolate;
}
.team-bg-pattern{
  position:absolute;
  z-index:0;
  left:-9%;
  top:-55px;
  width:118%;
  height:calc(100% + 110px);
  overflow:hidden;
  color:#48222D;
  opacity:.085;
  transform:rotate(-4deg);
  transform-origin:center top;
  pointer-events:none;
}

.team-bg-pattern div{
  height:96px;
  white-space:nowrap;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:54px;
  line-height:1;
  font-weight:400!important;
  letter-spacing:-.03em;
  text-transform:uppercase;
}

.team-bg-pattern div:nth-child(even){
  transform:translateX(-110px);
}

.team-bg-pattern div:nth-child(3n){
  transform:translateX(55px);
}
.team-shell,
.team-head,
.team-grid,
.team-card{
  position:relative;
  z-index:2;
}
.team-photo-wrap{
  box-shadow:0 0 0 1px rgba(72,34,45,.07);
}
.team-marquee{
  opacity:.11!important;
  z-index:1!important;
}

@media(max-width:1199px){
  .team-bg-pattern{
    left:-35%;
    top:-20px;
    width:175%;
    height:calc(100% + 40px);
    opacity:.07;
  }

  .team-bg-pattern div{
    height:64px;
    font-size:34px;
  }

  .team-bg-pattern div:nth-child(even){
    transform:translateX(-70px);
  }

  .team-bg-pattern div:nth-child(3n){
    transform:translateX(35px);
  }
}

.team-shell{
  position:relative!important;
  z-index:2!important;
}

.team-head{
  position:relative!important;
  z-index:4!important;
}

.team-grid{
  position:relative!important;
  z-index:2!important;
}

.team-card{
  position:absolute!important;
  z-index:3!important;
  opacity:1;
}

.team-photo-wrap{
  position:relative!important;
  z-index:1!important;
  overflow:hidden!important;
}

.team-photo-wrap img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.team-bg-pattern{
  z-index:0!important;
}

.team-marquee{
  z-index:1!important;
}
.team-card.team-reveal{
  opacity:0;
  transform:translateY(26px);
}

.team-card.team-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media(max-width:1199px){
  .team-card{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:100%!important;
  }
}

.team-shell{
  min-height:1380px!important;
}

.team-grid{
  width:1104px!important;
  height:1120px!important;
  margin:42px auto 0!important;
}
.team-card{
  width:320px!important;
}

.team-photo-wrap{
  width:320px!important;
  height:430px!important;
}
.team-card-1{
  left:0!important;
  top:54px!important;
}
.team-card-2{
  left:392px!important;
  top:12px!important;
}
.team-card-3{
  left:784px!important;
  top:64px!important;
}
.team-card-4,
.team-card-5{
  width:350px!important;
}

.team-card-4 .team-photo-wrap,
.team-card-5 .team-photo-wrap{
  width:350px!important;
  height:470px!important;
}

.team-card-4{
  left:172px!important;
  top:610px!important;
}

.team-card-5{
  left:582px!important;
  top:572px!important;
}
.team-card-1 img{
  object-position:center 42%!important;
}
.team-card-2 img{
  object-position:center 40%!important;
}
.team-card-3 img{
  object-position:center 34%!important;
}
.team-card-4 img{
  object-position:center 40%!important;
}
.team-card-5 img{
  object-position:center 31%!important;
}
.team-name{
  margin-top:12px!important;
  font-size:17px!important;
  line-height:1.08!important;
  letter-spacing:.012em!important;
}
.team-bg-pattern{
  opacity:.055!important;
}

.team-marquee{
  opacity:.085!important;
}
.team-card:before{
  right:10px!important;
  top:10px!important;
  opacity:.82;
}
@media(max-width:1199px){
  .team-shell{
    min-height:0!important;
  }

  .team-grid{
    width:auto!important;
    height:auto!important;
    margin:38px 0 0!important;
  }

  .team-card,
  .team-card-4,
  .team-card-5{
    width:100%!important;
    margin-bottom:44px!important;
  }

  .team-photo-wrap,
  .team-card-4 .team-photo-wrap,
  .team-card-5 .team-photo-wrap{
    width:100%!important;
    height:390px!important;
  }

  .team-card-5 .team-photo-wrap{
    height:360px!important;
  }

  .team-name{
    font-size:16px!important;
  }
}

.team-shell{
  min-height:1320px!important;
}

.team-grid{
  position:relative!important;
  width:1100px!important;
  height:1080px!important;
  margin:46px auto 0!important;
}

.team-card,
.team-card-4,
.team-card-5{
  width:320px!important;
}

.team-photo-wrap,
.team-card-4 .team-photo-wrap,
.team-card-5 .team-photo-wrap{
  width:320px!important;
  height:440px!important;
}
.team-card-1{
  left:0!important;
  top:0!important;
}

.team-card-2{
  left:390px!important;
  top:0!important;
}

.team-card-3{
  left:780px!important;
  top:0!important;
}
.team-card-4{
  left:195px!important;
  top:550px!important;
}

.team-card-5{
  left:585px!important;
  top:550px!important;
}
.team-card-1 img{
  object-position:center 43%!important;
}

.team-card-2 img{
  object-position:center 40%!important;
}

.team-card-3 img{
  object-position:center 35%!important;
}

.team-card-4 img{
  object-position:center 40%!important;
}

.team-card-5 img{
  object-position:center 34%!important;
}
.team-name{
  margin-top:12px!important;
  font-size:17px!important;
  line-height:1.08!important;
  text-align:left!important;
}
.team-bg-pattern{
  opacity:.045!important;
}

.team-marquee{
  opacity:.07!important;
}
@media(max-width:1199px){
  .team-shell{
    min-height:0!important;
  }

  .team-grid{
    width:auto!important;
    height:auto!important;
    margin:38px 0 0!important;
  }

  .team-card,
  .team-card-4,
  .team-card-5{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:100%!important;
    margin-bottom:42px!important;
  }

  .team-photo-wrap,
  .team-card-4 .team-photo-wrap,
  .team-card-5 .team-photo-wrap{
    width:100%!important;
    height:390px!important;
  }
}

.team-card:before{
  display:none!important;
  content:none!important;
}

.portfolio-section{
  position:relative;
  z-index:6;
  overflow:hidden;
  background:#48222D;
  color:#fff;
  padding:88px 0 150px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
}

.portfolio-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.055;
  background-image:url("assets/reference-plastic.webp");
  background-repeat:repeat;
  background-size:520px auto;
  mix-blend-mode:screen;
}

.portfolio-head,
.portfolio-gallery{
  position:relative;
  z-index:2;
  width:min(1200px,calc(100% - 80px));
  margin-left:auto;
  margin-right:auto;
}

.portfolio-head{
  margin-bottom:44px;
}

.portfolio-kicker{
  margin-bottom:13px;
  font-size:11px;
  line-height:1.1;
  letter-spacing:.15em;
  text-transform:uppercase;
  opacity:.72;
}

.portfolio-head h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:88px;
  line-height:.86;
  font-weight:400!important;
  letter-spacing:-.045em;
  text-transform:uppercase;
}

.portfolio-underline{
  width:420px;
  height:4px;
  margin-top:19px;
  background:#fff;
  opacity:.9;
  transform:rotate(-.8deg);
  transform-origin:left center;
}

.portfolio-gallery{
  display:flex;
  flex-direction:column;
  gap:22px;
}

.portfolio-item{
  margin:0;
}

.portfolio-img{
  position:relative;
  overflow:hidden;
  width:100%;
  background:#2d1118;
}

.portfolio-img:after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(255,255,255,.08);
  pointer-events:none;
}

.portfolio-item:hover .portfolio-img img{
  transform:scale(1.025);
}
.portfolio-wide .portfolio-img{
  height:590px;
}
.portfolio-wide .portfolio-img img{
  object-position:center center;
}
.portfolio-pair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.portfolio-pair .portfolio-img{
  height:520px;
}
.portfolio-pair .portfolio-item:first-child img{
  object-position:center 43%;
}
.portfolio-pair .portfolio-item:last-child img{
  object-position:center 44%;
}
.portfolio-img-dark{
  height:610px!important;
}
.portfolio-img-dark img{
  object-position:center 42%!important;
}
.portfolio-triptych{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.portfolio-triptych .portfolio-img{
  height:410px;
}
.portfolio-triptych .portfolio-item:nth-child(1) img{
  object-position:center 47%;
}
.portfolio-triptych .portfolio-item:nth-child(2) img{
  object-position:center 43%;
}
.portfolio-triptych .portfolio-item:nth-child(3) img{
  object-position:center 46%;
}
.portfolio-finale{
  display:grid;
  grid-template-columns:1.65fr .85fr;
  gap:22px;
  align-items:stretch;
}
.portfolio-finale-wide .portfolio-img,
.portfolio-finale-vertical .portfolio-img{
  height:610px;
}
.portfolio-finale-wide img{
  object-position:center 48%;
}
.portfolio-finale-vertical img{
  object-position:center 48%;
}
.portfolio-word{
  position:absolute;
  z-index:1;
  left:-3%;
  right:-3%;
  bottom:24px;
  display:flex;
  gap:45px;
  width:max-content;
  opacity:.065;
  pointer-events:none;
  white-space:nowrap;
  transform:rotate(-2deg);
}

.portfolio-word span{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:84px;
  line-height:1;
  letter-spacing:-.04em;
  text-transform:uppercase;
}

.portfolio-reveal{
  opacity:0;
  transform:translateY(30px);
  transition:
    opacity .82s ease,
    transform .96s cubic-bezier(.22,.61,.36,1);
}

.portfolio-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media(max-width:1199px){
  .portfolio-section{
    padding:58px 0 105px;
  }

  .portfolio-head,
  .portfolio-gallery{
    width:280px;
  }

  .portfolio-head{
    margin-bottom:30px;
  }

  .portfolio-kicker{
    font-size:8px;
    line-height:1.25;
    margin-bottom:9px;
  }

  .portfolio-head h2{
    font-size:48px;
    line-height:.9;
  }

  .portfolio-underline{
    width:220px;
    height:3px;
    margin-top:13px;
  }

  .portfolio-gallery{
    gap:14px;
  }

  .portfolio-wide .portfolio-img,
  .portfolio-img-dark{
    height:220px!important;
  }

  .portfolio-pair,
  .portfolio-triptych,
  .portfolio-finale{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
  }

  .portfolio-pair .portfolio-img,
  .portfolio-triptych .portfolio-img,
  .portfolio-finale-wide .portfolio-img{
    height:220px;
  }

  .portfolio-finale-vertical .portfolio-img{
    height:400px;
  }

  .portfolio-word{
    bottom:24px;
    gap:25px;
  }

  .portfolio-word span{
    font-size:45px;
  }
}

@media(prefers-reduced-motion:reduce){
  .portfolio-reveal{
    opacity:1!important;
    transform:none!important;
  }

  .portfolio-img img{
    transition:none!important;
  }
}
.portfolio-section{
  padding-top:70px!important;
  padding-bottom:110px!important;
}

.portfolio-head{
  margin-bottom:34px!important;
}

.portfolio-head h2{
  font-size:78px!important;
}

.portfolio-gallery{
  gap:16px!important;
}

.portfolio-pair,
.portfolio-triptych,
.portfolio-finale{
  gap:16px!important;
}
.portfolio-wide .portfolio-img{
  height:470px!important;
}

.portfolio-pair .portfolio-img{
  height:405px!important;
}

.portfolio-img-dark{
  height:480px!important;
}

.portfolio-triptych .portfolio-img{
  height:325px!important;
}

.portfolio-finale-wide .portfolio-img,
.portfolio-finale-vertical .portfolio-img{
  height:470px!important;
}
.portfolio-word{
  bottom:18px!important;
}

.portfolio-word span{
  font-size:70px!important;
}

@media(max-width:1199px){
  .portfolio-section{
    padding-top:50px!important;
    padding-bottom:88px!important;
  }

  .portfolio-head{
    margin-bottom:25px!important;
  }

  .portfolio-head h2{
    font-size:44px!important;
  }

  .portfolio-gallery{
    gap:11px!important;
  }

  .portfolio-pair,
  .portfolio-triptych,
  .portfolio-finale{
    gap:11px!important;
  }

  .portfolio-wide .portfolio-img,
  .portfolio-img-dark,
  .portfolio-pair .portfolio-img,
  .portfolio-triptych .portfolio-img,
  .portfolio-finale-wide .portfolio-img{
    height:195px!important;
  }

  .portfolio-finale-vertical .portfolio-img{
    height:340px!important;
  }

  .portfolio-word span{
    font-size:40px!important;
  }
}
.showreel-stage{
  contain:paint!important;
}

.showreel-mask{
  position:absolute!important;
  z-index:3!important;
  inset:0!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  max-width:none!important;
  transform:none!important;
  transform-origin:center!important;
  will-change:opacity!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.showreel-video{
  transform:translateZ(0) scale(1.018)!important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  will-change:auto!important;
}
.showreel-choice,
.showreel-sound{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

.showreel-choice{
  background:rgba(0,0,0,.39)!important;
}

.showreel-sound{
  background:rgba(0,0,0,.28)!important;
}
.showreel-ring,
.showreel-arrow{
  transform-style:preserve-3d;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

.quiz-section{
  position:relative;
  z-index:7;
  overflow:hidden;
  padding:88px 0 102px;
  background:#EAE5DF;
  color:#171717;
  font-family:"HeroSameFont",Arial,sans-serif!important;
}

.quiz-noise{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.07;
  background-image:url("assets/reference-noise.jpg");
  background-repeat:repeat;
  background-size:170px;
}

.quiz-shell{
  position:relative;
  z-index:2;
  width:min(1000px,calc(100% - 80px));
  margin:0 auto;
}

.quiz-card{
  overflow:hidden;
  min-height:535px;
  border-radius:13px;
  background:rgba(255,255,255,.78);
  box-shadow:
    0 20px 55px rgba(52,35,37,.08),
    inset 0 0 0 1px rgba(72,34,45,.05);
}

.quiz-top{
  position:relative;
  padding:32px 46px 33px;
  border-bottom:1px solid rgba(72,34,45,.08);
}

.quiz-title{
  font-size:18px;
  line-height:1.22;
  text-transform:uppercase;
}

.quiz-progress{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:4px;
  background:rgba(187,203,216,.28);
}

.quiz-progress-fill{
  width:25%;
  height:100%;
  background:#BBCBD8;
  transition:width .5s cubic-bezier(.22,.61,.36,1);
}

.quiz-body{
  min-height:310px;
  padding:42px 46px 24px;
}

.quiz-step{
  display:none;
  grid-template-columns:280px minmax(0,1fr);
  gap:48px;
  align-items:start;
}

.quiz-step.is-active{
  display:grid;
  animation:quizStepIn .42s ease both;
}

@keyframes quizStepIn{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:translateY(0)}
}

.quiz-question{
  padding-top:3px;
  font-size:14px;
  line-height:1.35;
}

.quiz-options{
  min-width:0;
}

.quiz-options-gifts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:17px;
}

.quiz-option{
  border:1px solid rgba(72,34,45,.17);
  background:rgba(255,255,255,.26);
  color:#171717;
  font:inherit;
  cursor:pointer;
  transition:
    border-color .24s ease,
    background .24s ease,
    transform .24s ease;
}

.quiz-option:hover{
  border-color:rgba(72,34,45,.48);
}

.quiz-option.is-selected{
  border-color:#48222D;
  background:rgba(72,34,45,.075);
}

.quiz-gift{
  border:0;
  background:transparent;
  text-align:left;
}

.quiz-gift:hover,
.quiz-gift.is-selected{
  background:transparent;
}

.quiz-option-image,
.quiz-gift-empty{
  height:180px;
  border:1px solid rgba(72,34,45,.15);
  border-radius:4px;
  overflow:hidden;
  background:#f4f0eb;
}

.quiz-gift.is-selected .quiz-option-image,
.quiz-gift.is-selected.quiz-gift-empty{
  border-color:#48222D;
  box-shadow:0 0 0 2px rgba(72,34,45,.12);
}

.quiz-option-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.quiz-gift span{
  display:block;
  margin-top:10px;
  font-size:12px;
  line-height:1.25;
}

.quiz-gift-empty{
  display:flex;
  flex-direction:column;
}

.quiz-empty-text{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:1;
  font-size:25px;
  line-height:.92;
  text-align:center;
}

.quiz-options-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.quiz-options-list .quiz-option{
  min-height:62px;
  padding:16px 18px;
  border-radius:7px;
  text-align:left;
  font-size:14px;
}

.quiz-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 46px 44px;
}

.quiz-count{
  font-size:13px;
  color:rgba(23,23,23,.55);
}

.quiz-controls{
  display:flex;
  align-items:center;
  gap:10px;
}

.quiz-back,
.quiz-next,
.quiz-submit{
  border:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  cursor:pointer;
}

.quiz-back{
  width:54px;
  height:54px;
  border:1px solid rgba(72,34,45,.25);
  border-radius:50%;
  background:transparent;
  color:#48222D;
  font-size:22px;
  transition:opacity .2s ease,border-color .2s ease;
}

.quiz-back:disabled{
  opacity:.28;
  cursor:default;
}

.quiz-next{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  min-width:240px;
  height:54px;
  padding:0 27px;
  border-radius:28px;
  background:#48222D;
  color:#fff;
  font-size:14px;
  transition:opacity .2s ease,transform .2s ease;
}

.quiz-next:disabled{
  opacity:.38;
  cursor:default;
}

.quiz-next:not(:disabled):hover{
  transform:translateY(-1px);
}

.quiz-next b{
  font-size:20px;
  font-weight:400;
}

.quiz-result{
  grid-template-columns:280px minmax(0,1fr);
}

.quiz-result-form{
  display:grid;
  gap:12px;
  max-width:450px;
}

.quiz-input{
  height:56px;
  padding:0 17px;
  border:1px solid rgba(72,34,45,.2);
  border-radius:7px;
  outline:none;
  background:rgba(255,255,255,.6);
  font:inherit;
  font-size:14px;
}

.quiz-input:focus{
  border-color:#48222D;
}

.quiz-submit{
  height:56px;
  border-radius:28px;
  background:#48222D;
  color:#fff;
  font-size:14px;
}

.quiz-note{
  font-size:10px;
  line-height:1.35;
  color:rgba(23,23,23,.48);
}

.quiz-result + *{
  display:none;
}

@media(max-width:1199px){
  .quiz-section{
    padding:58px 0 70px;
  }

  .quiz-shell{
    width:280px;
  }

  .quiz-card{
    min-height:0;
    border-radius:10px;
  }

  .quiz-top{
    padding:24px 20px 27px;
  }

  .quiz-title{
    font-size:13px;
    line-height:1.3;
  }

  .quiz-body{
    min-height:0;
    padding:28px 20px 20px;
  }

  .quiz-step,
  .quiz-result{
    grid-template-columns:1fr;
    gap:20px;
  }

  .quiz-question{
    font-size:13px;
  }

  .quiz-options-gifts{
    grid-template-columns:1fr;
    gap:18px;
  }

  .quiz-option-image,
  .quiz-gift-empty{
    height:220px;
  }

  .quiz-options-list{
    grid-template-columns:1fr;
  }

  .quiz-footer{
    padding:8px 20px 28px;
  }

  .quiz-count{
    font-size:11px;
  }

  .quiz-back{
    width:44px;
    height:44px;
  }

  .quiz-next{
    min-width:0;
    width:150px;
    height:44px;
    padding:0 16px;
    font-size:11px;
    gap:8px;
  }
}

.quiz-option-wide{
  grid-column:1 / -1;
}

.quiz-title{
  max-width:900px;
}

@media(max-width:1199px){
  .quiz-option-wide{
    grid-column:auto;
  }
}

.quiz-card{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}
.quiz-title{
  font-family:"HeroSameFont",Arial,sans-serif!important;
}
.quiz-question,
.quiz-option,
.quiz-gift span,
.quiz-empty-text,
.quiz-count,
.quiz-back,
.quiz-next,
.quiz-submit,
.quiz-input,
.quiz-note{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.quiz-question{
  font-weight:600!important;
}

.quiz-option,
.quiz-gift span{
  font-weight:500!important;
}

.quiz-next,
.quiz-submit{
  font-weight:600!important;
}

.quiz-count,
.quiz-note{
  font-weight:400!important;
}
.quiz-question,
.quiz-option,
.quiz-gift span,
.quiz-count,
.quiz-next,
.quiz-submit,
.quiz-input,
.quiz-note{
  letter-spacing:0!important;
}

.quiz-option-image img{
  object-fit:cover!important;
}
.quiz-options-gifts .quiz-gift:nth-child(1) .quiz-option-image img{
  object-position:center center!important;
}

.quiz-options-gifts .quiz-gift:nth-child(2) .quiz-option-image img{
  object-position:center center!important;
}

.quiz-options-gifts .quiz-gift:nth-child(3) .quiz-option-image img{
  object-position:center center!important;
}
.quiz-gift-empty,
.quiz-empty-text{
  display:none!important;
}

.benefits-section{
  position:relative;
  z-index:8;
  overflow:hidden;
  min-height:1030px;
  padding:92px 0 120px;
  background:#EAE5DF;
  color:#171717;
}

.benefits-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.075;
  background-image:url("assets/reference-noise.jpg");
  background-repeat:repeat;
  background-size:170px;
}

.benefits-splatter{
  position:absolute;
  z-index:1;
  top:10px;
  right:-8px;
  width:360px;
  height:1000px;
  overflow:visible;
  opacity:.98;
  pointer-events:none;
}

.benefits-shell{
  position:relative;
  z-index:2;
  width:min(1080px,calc(100% - 80px));
  margin:0 auto;
}

.benefits-title{
  position:relative;
  width:max-content;
  margin:0 auto 52px;
  padding-right:92px;
  color:#171717;
}

.benefits-title h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:62px;
  line-height:.9;
  font-weight:400!important;
  letter-spacing:-.035em;
  text-transform:uppercase;
}

.benefits-underline{
  position:absolute;
  left:268px;
  bottom:-9px;
  width:340px;
  height:4px;
  background:#171717;
  transform:rotate(-1deg);
  transform-origin:left center;
}

.benefits-heart{
  position:absolute;
  right:0;
  top:-4px;
  width:74px;
  height:64px;
  color:#171717;
  transform:rotate(-9deg);
}

.benefits-timeline{
  position:relative;
  width:780px;
  margin:0 auto;
  padding-left:52px;
}

.benefits-line{
  position:absolute;
  left:4px;
  top:18px;
  bottom:66px;
  width:2px;
  background:#AFC4D3;
}

.benefit-card{
  position:relative;
  min-height:137px;
  margin-bottom:16px;
  padding:28px 34px 27px;
  border-radius:12px;
  background:#BBCBD8;
  box-shadow:inset 0 0 0 1px rgba(72,34,45,.025);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.benefit-card:last-child{
  margin-bottom:0;
}

.benefit-dot{
  position:absolute;
  left:-58px;
  top:57px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#AFC4D3;
}

.benefit-card h3{
  margin:0 0 15px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:25px;
  line-height:1.1;
  font-weight:650;
  letter-spacing:-.02em;
}

.benefit-card p{
  max-width:690px;
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:14px;
  line-height:1.55;
  font-weight:400;
}

.benefits-reveal{
  opacity:0;
  transform:translateY(22px);
  transition:
    opacity .72s ease,
    transform .88s cubic-bezier(.22,.61,.36,1);
}

.benefits-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media(max-width:1199px){
  .benefits-section{
    min-height:0;
    padding:62px 0 82px;
  }

  .benefits-splatter{
    right:-108px;
    top:75px;
    width:230px;
    height:720px;
    opacity:.38;
  }

  .benefits-shell{
    width:280px;
  }

  .benefits-title{
    width:100%;
    margin-bottom:38px;
    padding-right:50px;
  }

  .benefits-title h2{
    font-size:42px;
    line-height:.9;
  }

  .benefits-underline{
    left:98px;
    bottom:-7px;
    width:145px;
    height:3px;
  }

  .benefits-heart{
    right:-3px;
    top:0;
    width:47px;
    height:43px;
  }

  .benefits-timeline{
    width:100%;
    padding-left:27px;
  }

  .benefits-line{
    left:3px;
    top:18px;
    bottom:55px;
  }

  .benefit-card{
    min-height:0;
    margin-bottom:12px;
    padding:22px 20px 21px;
    border-radius:9px;
  }

  .benefit-dot{
    left:-31px;
    top:34px;
    width:13px;
    height:13px;
  }

  .benefit-card h3{
    margin-bottom:10px;
    font-size:19px;
    line-height:1.08;
  }

  .benefit-card p{
    font-size:12px;
    line-height:1.48;
  }
}

@media(prefers-reduced-motion:reduce){
  .benefits-reveal{
    opacity:1!important;
    transform:none!important;
  }
}

.benefits-section{
  --benefits-title-p:0;
  --benefits-line-p:0;
}
.benefits-section .benefits-reveal,
.benefits-section .benefits-reveal.is-visible{
  transition:none!important;
}
.benefits-title{
  opacity:calc(.18 + var(--benefits-title-p) * .82)!important;
  transform:translateY(calc((1 - var(--benefits-title-p)) * 16px))!important;
  will-change:opacity,transform;
}

.benefits-underline{
  transform:
    rotate(-1deg)
    scaleX(var(--benefits-title-p))!important;
  transform-origin:left center!important;
}

.benefits-heart{
  opacity:calc(.20 + var(--benefits-title-p) * .80)!important;
  transform:
    rotate(-9deg)
    scale(calc(.88 + var(--benefits-title-p) * .12))!important;
  transform-origin:center!important;
}
.benefits-line{
  transform:scaleY(var(--benefits-line-p))!important;
  transform-origin:top center!important;
  will-change:transform;
}
.benefit-card{
  --card-p:0;
  opacity:calc(.075 + var(--card-p) * .925)!important;
  transform:
    translateY(calc((1 - var(--card-p)) * 22px))
    scale(calc(.995 + var(--card-p) * .005))!important;
  transform-origin:center center!important;
  transition:none!important;
  will-change:opacity,transform;
}
.benefit-card h3,
.benefit-card p{
  opacity:clamp(0, calc((var(--card-p) - .12) * 1.18), 1);
  transform:translateY(calc((1 - var(--card-p)) * 5px));
  transition:none!important;
  will-change:opacity,transform;
}
.benefit-card .benefit-dot{
  opacity:var(--card-p)!important;
  transform:scale(calc(.45 + var(--card-p) * .55))!important;
  transition:none!important;
  will-change:opacity,transform;
}
.benefits-splatter{
  transform:none!important;
}
@media(max-width:1199px){
  .benefit-card{
    transform:
      translateY(calc((1 - var(--card-p)) * 14px))
      scale(calc(.997 + var(--card-p) * .003))!important;
  }

  .benefits-title{
    transform:translateY(calc((1 - var(--benefits-title-p)) * 11px))!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .benefits-section{
    --benefits-title-p:1!important;
    --benefits-line-p:1!important;
  }

  .benefit-card{
    --card-p:1!important;
  }
}

.contract-ref{
  --pen-p:0;
  position:relative;
  z-index:9;
  overflow:hidden;
  min-height:720px;
  padding:96px 0 96px;
  background:#EAE5DF;
  color:#171717;
}

.contract-ref-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.075;
  background-image:url("assets/reference-noise.jpg");
  background-repeat:repeat;
  background-size:170px;
}

.contract-ref-splatter{
  position:absolute;
  z-index:1;
  top:-6px;
  right:-10px;
  width:270px;
  height:390px;
  pointer-events:none;
}

.contract-ref-shell{
  position:relative;
  z-index:3;
  width:min(1160px,calc(100% - 84px));
  min-height:505px;
  margin:0 auto;
  display:grid;
  grid-template-columns:44% 56%;
  align-items:center;
}

.contract-ref-visual{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding-right:54px;
}

.contract-ref-art{
  display:block;
  width:420px;
  max-width:100%;
  height:auto;
  overflow:visible;
}

.contract-ref-copy{
  align-self:center;
  padding-left:22px;
  padding-bottom:8px;
}

.contract-ref-copy h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:62px;
  line-height:.92;
  font-weight:400!important;
  letter-spacing:-.035em;
  text-transform:uppercase;
}

.contract-ref-copy h2 span{
  position:relative;
  display:inline-block;
}

.contract-ref-copy h2 span:after{
  content:"";
  position:absolute;
  left:0;
  right:-4px;
  bottom:-5px;
  height:4px;
  background:#171717;
  transform:rotate(-1deg);
}
.contract-ref-bottom{
  position:absolute;
  z-index:1;
  left:0;
  right:0;
  bottom:0;
  height:72px;
  background:#BBCBD8;
}
#contractRefPen{
  transform-origin:0 0;
  will-change:transform;
}
#contractRefMark{
  stroke-dasharray:92;
  stroke-dashoffset:calc(92 - var(--pen-p) * 92);
  opacity:calc(.38 + var(--pen-p) * .62);
}
.contract-ref-paper-group,
.contract-ref-copy{
  will-change:auto;
}

@media(max-width:1199px){
  .contract-ref{
    min-height:0;
    padding:60px 0 92px;
  }

  .contract-ref-shell{
    width:280px;
    min-height:0;
    grid-template-columns:1fr;
    gap:20px;
  }

  .contract-ref-visual{
    justify-content:center;
    padding-right:0;
  }

  .contract-ref-art{
    width:285px;
  }

  .contract-ref-copy{
    padding:0;
  }

  .contract-ref-copy h2{
    font-size:41px;
    line-height:.92;
  }

  .contract-ref-splatter{
    width:150px;
    height:220px;
    opacity:.6;
  }

  .contract-ref-bottom{
    height:54px;
  }
}

@media(prefers-reduced-motion:reduce){
  .contract-ref{
    --pen-p:.45!important;
  }
}
.contract-ref-shell{
  align-items:center!important;
}

.contract-ref-visual{
  transform:translateY(52px)!important;
}

.contract-ref-copy{
  transform:translateY(0)!important;
}
.contract-ref-art{
  width:435px!important;
}
#contractHeartPath{
  opacity:0;
  transition:none!important;
  will-change:stroke-dashoffset,opacity;
}
#contractRefPenMover{
  opacity:0;
  transition:none!important;
  will-change:opacity;
}
#contractRefPenArt{
  transform-origin:0 0;
}
.contract-ref-art,
.contract-ref-visual{
  overflow:visible!important;
}
@media(max-width:1199px){
  .contract-ref-visual{
    transform:none!important;
  }

  .contract-ref-art{
    width:285px!important;
  }
}
#contractHeartPath{
  stroke:#48222D!important;
  stroke-width:4.1!important;
  opacity:0;
}
#contractRefPenMover{
  opacity:.84;
}
.contract-ref-art{
  filter:saturate(1.04) contrast(1.02);
}
.contract-ref{
  min-height:560px!important;
  padding-top:22px!important;
  padding-bottom:82px!important;
}

.contract-ref-shell{
  min-height:420px!important;
  align-items:center!important;
}
.contract-ref-visual{
  transform:translateY(10px)!important;
}
.contract-ref-copy{
  transform:translateY(-2px)!important;
}
.contract-ref-art{
  width:425px!important;
}
.benefits-section{
  padding-bottom:58px!important;
  min-height:0!important;
}

@media(max-width:1199px){
  .contract-ref{
    min-height:0!important;
    padding-top:34px!important;
    padding-bottom:78px!important;
  }

  .contract-ref-shell{
    min-height:0!important;
  }

  .contract-ref-visual,
  .contract-ref-copy{
    transform:none!important;
  }

  .contract-ref-art{
    width:285px!important;
  }

  .benefits-section{
    padding-bottom:44px!important;
  }
}

.cost-section{
  position:relative;
  z-index:10;
  background:#BBCBD8;
  color:#171717;
}

.cost-scene{
  position:relative;
  height:150svh;
  min-height:980px;
}

.cost-stage{
  --cost-p:0;
  position:sticky;
  top:0;
  width:100%;
  height:100svh;
  min-height:680px;
  overflow:hidden;
  background:#BBCBD8;
}

.cost-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.065;
  background-image:url("assets/reference-noise.jpg");
  background-size:170px;
  background-repeat:repeat;
  mix-blend-mode:multiply;
}

.cost-title{
  position:absolute;
  z-index:4;
  top:10.5%;
  left:50%;
  transform:translateX(-50%);
  text-align:center;
}

.cost-title h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:58px;
  line-height:.88;
  font-weight:400!important;
  letter-spacing:-.035em;
  text-transform:uppercase;
}

.cost-title-line{
  width:240px;
  height:4px;
  margin:10px auto 0;
  background:#171717;
  transform:rotate(-1deg);
}

.cost-card{
  position:absolute;
  z-index:3;
  left:50%;
  top:27%;
  width:500px;
  min-height:360px;
  transform:translateX(-50%);
  border-radius:14px;
  background:rgba(248,244,239,.92);
  box-shadow:0 18px 45px rgba(40,55,65,.10);
}

.cost-card-copy{
  padding:34px 42px 30px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.cost-card-label{
  margin-bottom:18px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(23,23,23,.58);
}

.cost-card ul{
  margin:0;
  padding-left:18px;
}

.cost-card li{
  margin:0 0 9px;
  font-size:13px;
  line-height:1.35;
}

.cost-button{
  display:flex;
  width:max-content;
  min-width:205px;
  height:46px;
  margin:24px auto 0;
  padding:0 22px;
  align-items:center;
  justify-content:center;
  border-radius:24px;
  background:#48222D;
  color:#fff;
  text-decoration:none;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:12px;
  font-weight:650;
  letter-spacing:.01em;
}

.cost-small{
  margin-top:10px;
  text-align:center;
  font-size:9px;
  color:rgba(23,23,23,.50);
}
.cost-pug{
  position:absolute;
  z-index:5;
  right:7.5%;
  bottom:-7%;
  width:270px;
  pointer-events:none;
  transform:
    translateY(calc((1 - var(--cost-p)) * 52px))
    scale(calc(.94 + var(--cost-p) * .06));
  transform-origin:center bottom;
  will-change:transform;
}

.cost-pug img{
  display:block;
  width:100%;
  height:auto;
  filter:drop-shadow(0 18px 20px rgba(33,38,41,.18));
}
.cost-treat{
  position:absolute;
  z-index:7;
  left:0;
  top:0;
  width:112px;
  pointer-events:none;
  transform-origin:8% 50%;
  will-change:transform,opacity;
}

.cost-treat img{
  display:block;
  width:100%;
  height:auto;
  filter:drop-shadow(0 8px 8px rgba(50,36,24,.20));
}

.cost-paw-note{
  position:absolute;
  z-index:2;
  left:8%;
  bottom:8%;
  display:flex;
  align-items:center;
  gap:8px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:18px;
  opacity:.24;
  transform:rotate(-4deg);
}

.cost-paw-note b{
  font-size:28px;
  font-weight:400;
}
.cost-stage.is-fed .cost-pug{
  animation:costPugChew .48s ease-in-out 1 both;
}

@keyframes costPugChew{
  0%{transform:translateY(0) scale(1)}
  35%{transform:translateY(-3px) scale(1.018)}
  70%{transform:translateY(1px) scale(.995)}
  100%{transform:translateY(0) scale(1)}
}

@media(max-width:1199px){
  .cost-scene{
    height:145svh;
    min-height:850px;
  }

  .cost-stage{
    min-height:620px;
  }

  .cost-title{
    top:8%;
  }

  .cost-title h2{
    font-size:44px;
  }

  .cost-title-line{
    width:180px;
    height:3px;
  }

  .cost-card{
    top:22%;
    width:280px;
    min-height:0;
  }

  .cost-card-copy{
    padding:24px 22px 22px;
  }

  .cost-card-label{
    font-size:9px;
    margin-bottom:13px;
  }

  .cost-card li{
    margin-bottom:7px;
    font-size:11px;
  }

  .cost-button{
    min-width:180px;
    height:42px;
    font-size:10px;
    margin-top:18px;
  }

  .cost-pug{
    right:-3%;
    bottom:-2%;
    width:165px;
  }

  .cost-treat{
    width:74px;
  }

  .cost-paw-note{
    left:5%;
    bottom:5%;
    font-size:13px;
  }
}

@media(prefers-reduced-motion:reduce){
  .cost-stage{
    --cost-p:1!important;
  }
}

.cost-treat{
  width:72px!important;
}
@media(max-width:1199px){
  .cost-treat{
    width:48px!important;
  }
}

.cost-scene{
  height:142svh!important;
  min-height:900px!important;
}

.cost-pug{
  right:11.5%!important;
  bottom:-4%!important;
  width:232px!important;
  transform:none!important;
  animation:none!important;
}

.cost-treat{
  width:54px!important;
}

.cost-paw-note{
  display:none!important;
}
.cost-stage.is-fed .cost-pug{
  animation:none!important;
}

@media(max-width:1199px){
  .cost-scene{
    height:138svh!important;
    min-height:800px!important;
  }

  .cost-pug{
    right:1%!important;
    bottom:-1%!important;
    width:145px!important;
  }

  .cost-treat{
    width:39px!important;
  }
}

.cost-scene{
  height:175svh!important;
  min-height:1120px!important;
}

.cost-pug{
  right:8.5%!important;
  bottom:3.5%!important;
  width:220px!important;
  transform:none!important;
}

.cost-pug img{
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
}
.cost-treat{
  width:48px!important;
}

@media(max-width:1199px){
  .cost-scene{
    height:165svh!important;
    min-height:940px!important;
  }

  .cost-pug{
    right:1%!important;
    bottom:2.5%!important;
    width:142px!important;
  }

  .cost-treat{
    width:34px!important;
  }
}
.cost-section{
  position:relative!important;
  min-height:0!important;
  padding:68px 0 78px!important;
  overflow:hidden!important;
}

.cost-scene{
  height:auto!important;
  min-height:0!important;
}

.cost-stage{
  position:relative!important;
  top:auto!important;
  height:auto!important;
  min-height:620px!important;
  overflow:hidden!important;
}
.cost-title{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  transform:none!important;
  width:max-content;
  margin:0 auto 42px!important;
}

.cost-title h2{
  font-size:58px!important;
}
.cost-content-row{
  position:relative;
  z-index:4;
  width:min(900px,calc(100% - 90px));
  margin:0 auto;
  display:grid;
  grid-template-columns:500px 250px;
  justify-content:center;
  align-items:end;
  gap:54px;
}

.cost-card{
  position:relative!important;
  left:auto!important;
  top:auto!important;
  width:500px!important;
  min-height:360px!important;
  transform:none!important;
}
.cost-pug{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  width:220px!important;
  align-self:end;
  transform:none!important;
  margin:0 0 0 auto!important;
}

.cost-pug img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
}
.cost-treat{
  width:42px!important;
  z-index:8!important;
}
.cost-paw-note{
  display:none!important;
}
.cost-stage.is-fed .cost-pug{
  animation:none!important;
}

@media(max-width:1199px){
  .cost-section{
    padding:50px 0 62px!important;
  }

  .cost-stage{
    min-height:0!important;
  }

  .cost-title{
    margin-bottom:28px!important;
  }

  .cost-title h2{
    font-size:43px!important;
  }

  .cost-content-row{
    width:280px!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    align-items:end!important;
  }

  .cost-card{
    width:280px!important;
  }

  .cost-pug{
    width:135px!important;
    margin:-8px 0 0 auto!important;
  }

  .cost-treat{
    width:32px!important;
  }
}

.cost-content-row{
  width:min(1120px,calc(100% - 80px))!important;
  grid-template-columns:1fr 500px 1fr!important;
  gap:0!important;
  align-items:end!important;
  justify-items:center!important;
}
.cost-card{
  grid-column:2!important;
  width:500px!important;
  justify-self:center!important;
  margin:0!important;
}
.cost-pug{
  grid-column:3!important;
  width:218px!important;
  justify-self:end!important;
  align-self:end!important;
  margin:0 -16px -26px 0!important;
  transform:none!important;
}
.cost-content-row{
  padding-bottom:28px!important;
}
.cost-treat{
  width:39px!important;
}

@media(max-width:1199px){
  .cost-content-row{
    width:280px!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    padding-bottom:18px!important;
  }

  .cost-card{
    grid-column:1!important;
    width:280px!important;
  }

  .cost-pug{
    grid-column:1!important;
    width:132px!important;
    justify-self:end!important;
    margin:-6px -2px -18px 0!important;
  }

  .cost-treat{
    width:30px!important;
  }
}
.cost-section{
  overflow:hidden!important;
}
.cost-treat{
  width:36px!important;
}
.cost-pug{
  width:218px!important;
  margin:0 -16px -26px 0!important;
}

@media(max-width:1199px){
  .cost-treat{
    width:28px!important;
  }
}
.cost-title{
  margin-bottom:50px!important;
}
.cost-treat{
  width:34px!important;
}

@media(max-width:1199px){
  .cost-title{
    margin-bottom:34px!important;
  }

  .cost-treat{
    width:27px!important;
  }
}

.reviews-section{
  position:relative;
  z-index:11;
  overflow:hidden;
  padding:84px 0 100px;
  background:#48222D;
  color:#F4EFE9;
}

.reviews-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.055;
  background-image:url("assets/reference-plastic.webp");
  background-repeat:repeat;
  background-size:520px auto;
  mix-blend-mode:screen;
}

.reviews-shell{
  position:relative;
  z-index:2;
  width:min(1120px,calc(100% - 80px));
  margin:0 auto;
}

.reviews-head{
  margin-bottom:42px;
}

.reviews-kicker{
  margin-bottom:10px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:10px;
  line-height:1;
  letter-spacing:.16em;
  opacity:.65;
}

.reviews-head h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:78px;
  line-height:.88;
  font-weight:400!important;
  letter-spacing:-.04em;
}

.reviews-line{
  width:250px;
  height:4px;
  margin-top:16px;
  background:#F4EFE9;
  transform:rotate(-1deg);
}

.reviews-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  align-items:start;
}

.review-card{
  position:relative;
  padding:28px 30px 30px;
  border:1px solid rgba(244,239,233,.13);
  border-radius:12px;
  background:rgba(244,239,233,.055);
  backdrop-filter:none;
}

.review-card-c{
  grid-column:1 / -1;
  width:72%;
  justify-self:center;
}

.review-card-e{
  transform:translateY(10px);
}

.review-meta{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:9px;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.review-meta span:first-child{
  font-weight:700;
}

.review-meta span:nth-child(2){
  opacity:.55;
}

.review-meta em{
  margin-left:auto;
  padding:4px 7px;
  border:1px solid rgba(244,239,233,.18);
  border-radius:999px;
  font-style:normal;
  font-size:8px;
  opacity:.56;
}

.review-card p{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:15px;
  line-height:1.58;
  font-weight:400;
  color:#F4EFE9;
}

.reviews-note{
  margin-top:28px;
  padding-top:16px;
  border-top:1px solid rgba(244,239,233,.14);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:9px;
  letter-spacing:.07em;
  opacity:.48;
}

.reviews-reveal{
  opacity:0;
  transform:translateY(20px);
  transition:
    opacity .7s ease,
    transform .85s cubic-bezier(.22,.61,.36,1);
}

.reviews-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media(max-width:1199px){
  .reviews-section{
    padding:58px 0 72px;
  }

  .reviews-shell{
    width:280px;
  }

  .reviews-head{
    margin-bottom:30px;
  }

  .reviews-head h2{
    font-size:48px;
  }

  .reviews-line{
    width:160px;
    height:3px;
  }

  .reviews-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .review-card-c{
    grid-column:auto;
    width:auto;
  }

  .review-card,
  .review-card-e{
    padding:21px 20px 22px;
    transform:none;
  }

  .review-meta{
    gap:7px;
    flex-wrap:wrap;
    font-size:8px;
    margin-bottom:13px;
  }

  .review-meta em{
    margin-left:0;
  }

  .review-card p{
    font-size:13px;
    line-height:1.52;
  }

  .reviews-note{
    font-size:8px;
    line-height:1.35;
  }
}

@media(prefers-reduced-motion:reduce){
  .reviews-reveal{
    opacity:1!important;
    transform:none!important;
  }
}

.reviews-carousel-section{
  position:relative!important;
  z-index:11!important;
  overflow:hidden!important;
  padding:70px 0 82px!important;
  background:#BBCBD8!important;
  color:#171717!important;
}

.reviews-carousel-section .reviews-noise{
  opacity:.065!important;
  background-image:url("assets/reference-noise.jpg")!important;
  background-size:170px!important;
  mix-blend-mode:multiply!important;
}

.reviews-carousel-head{
  position:relative;
  z-index:6;
  width:min(1120px,calc(100% - 80px));
  margin:0 auto 12px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
}

.reviews-head-copy h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:58px;
  line-height:.9;
  font-weight:400!important;
  letter-spacing:-.035em;
}

.reviews-carousel-underline{
  width:170px;
  height:4px;
  margin-top:7px;
  background:#171717;
  transform:rotate(-1.5deg);
}

.reviews-arrows{
  display:flex;
  gap:8px;
  padding-top:2px;
}

.reviews-arrow{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  padding:0;
  border:2px solid #171717;
  border-radius:50%;
  background:transparent;
  color:#171717;
  font-family:Arial,sans-serif;
  font-size:21px;
  line-height:1;
  cursor:pointer;
  transition:transform .18s ease,background .18s ease,color .18s ease;
}

@media(hover:hover) and (pointer:fine){
  .reviews-arrow:hover{
    transform:translateY(-1px);
    background:#171717;
    color:#BBCBD8;
  }
}

.reviews-wave{
  position:absolute;
  z-index:1;
  left:0;
  right:0;
  top:118px;
  height:280px;
  pointer-events:none;
}

.reviews-wave svg{
  display:block;
  width:100%;
  height:100%;
}

.reviews-viewport{
  position:relative;
  z-index:4;
  width:100%;
  overflow:hidden;
  padding:22px 0 35px;
}

.reviews-track{
  --reviews-shift:0px;
  display:flex;
  align-items:flex-start;
  gap:34px;
  width:max-content;
  padding:0 0 0 max(70px,calc((100vw - 1120px)/2));
  transform:translate3d(var(--reviews-shift),0,0);
  transition:transform .65s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}

.review-slide{
  width:285px;
  flex:0 0 285px;
  margin:0;
}

.review-slide-inner{
  min-height:355px;
  padding:32px 28px 30px;
  border-radius:5px;
  background:#F4F1EC;
  box-shadow:0 11px 25px rgba(55,63,68,.07);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.review-slide-1{margin-top:54px}
.review-slide-2{margin-top:10px}
.review-slide-3{margin-top:74px}
.review-slide-4{margin-top:30px}
.review-slide-5{margin-top:66px}

.review-slide-meta{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:21px;
}

.review-slide-name{
  font-size:18px;
  line-height:1.05;
  font-weight:750;
  letter-spacing:-.02em;
}

.review-slide-type{
  font-size:9px;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(23,23,23,.47);
}

.review-slide p{
  margin:0;
  font-size:13px;
  line-height:1.56;
  color:#171717;
}

.reviews-layout-note{
  position:relative;
  z-index:5;
  width:min(1120px,calc(100% - 80px));
  margin:2px auto 0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:8px;
  line-height:1.3;
  letter-spacing:.04em;
  color:rgba(23,23,23,.36);
}

@media(max-width:1199px){
  .reviews-carousel-section{
    padding:54px 0 66px!important;
  }

  .reviews-carousel-head{
    width:280px;
    margin-bottom:9px;
  }

  .reviews-head-copy h2{
    font-size:44px;
  }

  .reviews-carousel-underline{
    width:130px;
    height:3px;
  }

  .reviews-arrow{
    width:36px;
    height:36px;
    font-size:18px;
  }

  .reviews-wave{
    top:100px;
    height:235px;
  }

  .reviews-viewport{
    padding-top:18px;
  }

  .reviews-track{
    gap:18px;
    padding-left:20px;
  }

  .review-slide{
    width:255px;
    flex-basis:255px;
  }

  .review-slide-inner{
    min-height:340px;
    padding:26px 22px 24px;
  }

  .review-slide-1{margin-top:42px}
  .review-slide-2{margin-top:8px}
  .review-slide-3{margin-top:56px}
  .review-slide-4{margin-top:24px}
  .review-slide-5{margin-top:48px}

  .review-slide-name{
    font-size:17px;
  }

  .review-slide p{
    font-size:12px;
    line-height:1.52;
  }

  .reviews-layout-note{
    width:280px;
    font-size:7px;
  }
}

.faq-section{
  position:relative;
  z-index:12;
  overflow:hidden;
  padding:78px 0 86px;
  background:#BBCBD8;
  color:#171717;
}

.faq-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.065;
  background-image:url("assets/reference-noise.jpg");
  background-repeat:repeat;
  background-size:170px;
  mix-blend-mode:multiply;
}

.faq-shell{
  position:relative;
  z-index:2;
  width:min(1180px,calc(100% - 80px));
  margin:0 auto;
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:70px;
  align-items:start;
}

.faq-title-block{
  position:sticky;
  top:120px;
  padding-top:34px;
}

.faq-bubble{
  position:absolute;
  top:-18px;
  right:40px;
  width:78px;
  height:auto;
}

.faq-title-block h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:58px;
  line-height:.85;
  font-weight:400!important;
  letter-spacing:-.035em;
}

.faq-title-line{
  width:250px;
  height:4px;
  margin-top:8px;
  background:#171717;
  transform:rotate(-1deg);
}

.faq-list{
  min-width:0;
}

.faq-item{
  margin-bottom:6px;
  overflow:hidden;
  border-radius:38px;
  background:rgba(248,246,242,.94);
  box-shadow:inset 0 0 0 1px rgba(23,23,23,.035);
  transition:border-radius .32s ease;
}

.faq-item.is-open{
  border-radius:34px;
}

.faq-question{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  width:100%;
  min-height:72px;
  padding:18px 28px 18px 30px;
  border:0;
  background:transparent;
  color:#171717;
  text-align:left;
  cursor:pointer;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:19px;
  line-height:1.2;
  font-weight:700;
}

.faq-plus{
  position:relative;
  flex:0 0 26px;
  width:26px;
  height:26px;
}

.faq-plus:before,
.faq-plus:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:22px;
  height:1.5px;
  background:#171717;
  transform:translate(-50%,-50%);
  transition:transform .28s ease;
}

.faq-plus:after{
  transform:translate(-50%,-50%) rotate(90deg);
}

.faq-item.is-open .faq-plus:before{
  transform:translate(-50%,-50%) rotate(45deg);
}

.faq-item.is-open .faq-plus:after{
  transform:translate(-50%,-50%) rotate(-45deg);
}

.faq-answer{
  display:grid;
  grid-template-rows:0fr;
  opacity:0;
  transition:
    grid-template-rows .38s cubic-bezier(.22,.61,.36,1),
    opacity .28s ease;
}

.faq-item.is-open .faq-answer{
  grid-template-rows:1fr;
  opacity:1;
}

.faq-answer-inner{
  overflow:hidden;
  padding:0 30px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:13px;
  line-height:1.58;
  color:rgba(23,23,23,.82);
  transition:padding .35s ease;
}

.faq-item.is-open .faq-answer-inner{
  padding-top:2px;
  padding-bottom:26px;
}

.faq-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:58px;
  margin-top:8px;
  padding:0 26px 0 30px;
  border-radius:29px;
  background:#48222D;
  color:#fff;
  text-decoration:none;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:14px;
  font-weight:650;
}

.faq-cta b{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:27px;
  font-weight:400;
}

.contact-final{
  position:relative;
  z-index:13;
  overflow:hidden;
  min-height:690px;
  padding:88px 0 0;
  background:#EAE5DF;
  color:#171717;
}

.contact-final-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.07;
  background-image:url("assets/reference-noise.jpg");
  background-repeat:repeat;
  background-size:170px;
}

.contact-wave{
  position:absolute;
  z-index:1;
  right:0;
  bottom:64px;
  width:58%;
  height:300px;
  pointer-events:none;
}

.contact-final-inner{
  position:relative;
  z-index:3;
  display:flex;
  flex-direction:column;
  align-items:center;
  width:min(900px,calc(100% - 60px));
  margin:0 auto;
}

.contact-final-inner h2{
  margin:0 0 48px;
  text-align:center;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:28px;
  line-height:1.22;
  font-weight:500;
}

.contact-phone{
  position:relative;
  width:345px;
  height:405px;
  padding:19px 18px 0;
  border:8px solid #171717;
  border-bottom:0;
  border-radius:54px 54px 0 0;
  background:linear-gradient(160deg,#34242b 0%,#161416 72%);
  box-shadow:0 20px 40px rgba(25,20,22,.13);
}

.contact-phone-speaker{
  width:84px;
  height:8px;
  margin:0 auto 16px;
  border-radius:999px;
  background:#050505;
}

.contact-phone-call{
  display:flex;
  align-items:center;
  gap:12px;
  height:66px;
  padding:0 13px;
  border-radius:27px;
  background:#101010;
  color:#fff;
}

.contact-avatar{
  display:grid;
  place-items:center;
  width:43px;
  height:43px;
  border-radius:50%;
  background:#77737a;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:19px;
  font-weight:600;
}

.contact-call-copy{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
}

.contact-call-copy small{
  font-size:10px;
  opacity:.62;
}

.contact-call-copy strong{
  font-size:16px;
  font-weight:600;
}

.contact-call-icon{
  display:grid;
  place-items:center;
  width:39px;
  height:39px;
  border-radius:50%;
  background:#31C65B;
  font-size:18px;
}

.contact-phone-grid{
  display:grid;
  grid-template-columns:1.35fr .8fr .8fr;
  grid-template-rows:78px 78px;
  gap:12px;
  margin-top:18px;
}

.contact-note-tile{
  grid-row:1 / span 2;
  padding:14px 12px;
  border-radius:18px;
  background:#F4D13A;
  color:#171717;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.contact-note-tile span{
  display:block;
  margin-bottom:18px;
  font-size:13px;
  font-weight:650;
}

.contact-note-tile p{
  margin:0;
  font-size:10px;
  line-height:1.35;
}

.contact-app{
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#fff;
  text-decoration:none;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:18px;
  font-weight:750;
}

.contact-wa{background:#2CB742}
.contact-tg{background:#2A9DDB}
.contact-ig{
  grid-column:2;
  background:linear-gradient(135deg,#7B3FD1,#E3428D,#F49B36);
}

.contact-final-caption{
  margin-top:17px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:9px;
  color:rgba(23,23,23,.42);
}

.site-footer{
  position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  min-height:68px;
  margin-top:0;
  padding:0 34px;
  border-top:1px solid rgba(23,23,23,.12);
  background:rgba(234,229,223,.86);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:10px;
  color:rgba(23,23,23,.56);
}

.site-footer strong{
  color:#171717;
  font-size:13px;
  letter-spacing:.04em;
}

.site-footer span:last-child{
  text-align:right;
}

@media(max-width:1199px){
  .faq-section{
    padding:56px 0 64px;
  }

  .faq-shell{
    width:280px;
    grid-template-columns:1fr;
    gap:32px;
  }

  .faq-title-block{
    position:relative;
    top:auto;
    padding-top:0;
  }

  .faq-title-block h2{
    font-size:44px;
  }

  .faq-bubble{
    top:-15px;
    right:5px;
    width:58px;
  }

  .faq-title-line{
    width:190px;
    height:3px;
  }

  .faq-question{
    min-height:62px;
    padding:15px 18px 15px 20px;
    font-size:15px;
  }

  .faq-answer-inner{
    padding-left:20px;
    padding-right:20px;
    font-size:12px;
  }

  .faq-item.is-open .faq-answer-inner{
    padding-bottom:20px;
  }

  .faq-cta{
    min-height:52px;
    padding:0 18px 0 20px;
    font-size:11px;
  }

  .contact-final{
    min-height:590px;
    padding-top:64px;
  }

  .contact-final-inner{
    width:280px;
  }

  .contact-final-inner h2{
    margin-bottom:34px;
    font-size:22px;
  }

  .contact-phone{
    width:270px;
    height:360px;
    border-width:7px;
    border-bottom:0;
    border-radius:44px 44px 0 0;
  }

  .contact-wave{
    width:100%;
    height:220px;
    bottom:60px;
  }

  .contact-phone-grid{
    grid-template-columns:1.25fr .8fr .8fr;
    grid-template-rows:65px 65px;
    gap:9px;
  }

  .contact-note-tile{
    padding:11px 10px;
  }

  .contact-app{
    border-radius:15px;
    font-size:15px;
  }

  .contact-final-caption{
    text-align:center;
    font-size:8px;
  }

  .site-footer{
    grid-template-columns:1fr;
    gap:3px;
    min-height:82px;
    padding:13px 20px;
    text-align:center;
  }

  .site-footer span:last-child{
    text-align:center;
  }
}

.contact-mail{
  grid-column:2 / span 2;
  background:#48222D;
  font-size:24px!important;
}
.contact-call-copy strong{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:15px!important;
  font-weight:600!important;
  letter-spacing:.01em!important;
  line-height:1.15!important;
}

.contact-call-copy small{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.about-right p,
.about-right li,
.about-lead,
.about-signature{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  letter-spacing:0!important;
}
.about-right p,
.about-right li{
  font-size:15px!important;
  line-height:1.58!important;
  font-weight:400!important;
}

.about-right strong{
  font-family:inherit!important;
  font-weight:600!important;
  text-decoration:none!important;
}

.about-lead{
  font-size:14px!important;
  line-height:1.4!important;
  font-weight:700!important;
  letter-spacing:.03em!important;
}

.about-signature{
  font-size:17px!important;
  line-height:1.35!important;
  font-weight:600!important;
  letter-spacing:0!important;
}

@media(max-width:1199px){
  .about-right p,
  .about-right li{
    font-size:13px!important;
    line-height:1.55!important;
  }

  .about-lead{
    font-size:12px!important;
  }

  .about-signature{
    font-size:15px!important;
    line-height:1.35!important;
  }
}
.quiz-title{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-weight:650!important;
  letter-spacing:.01em!important;
  line-height:1.28!important;
}
.quiz-gift span,
.quiz-question,
.quiz-option{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.quiz-gift span{
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:600!important;
}
.quiz-options-gifts{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:start!important;
}

.quiz-options-gifts .quiz-gift{
  display:grid!important;
  grid-template-rows:178px minmax(36px,auto)!important;
  width:100%!important;
  min-width:0!important;
  align-content:start!important;
}
.quiz-options-gifts .quiz-option-image{
  width:100%!important;
  height:178px!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  border-radius:5px!important;
  background:#eee9e3!important;
}
.quiz-options-gifts .quiz-option-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.quiz-options-gifts .quiz-gift:nth-child(1) .quiz-option-image img{
  object-position:center 52%!important;
}

.quiz-options-gifts .quiz-gift:nth-child(2) .quiz-option-image img{
  object-position:center 42%!important;
}

.quiz-options-gifts .quiz-gift:nth-child(3) .quiz-option-image img{
  object-position:center 48%!important;
}
.quiz-options-gifts .quiz-gift > span{
  display:flex!important;
  align-items:flex-start!important;
  width:100%!important;
  min-height:36px!important;
  margin-top:10px!important;
  padding:0!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:600!important;
}
.quiz-options-gifts .quiz-gift.is-selected .quiz-option-image{
  box-shadow:0 0 0 2px rgba(72,34,45,.16)!important;
}

@media(max-width:1199px){
  .quiz-options-gifts{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .quiz-options-gifts .quiz-gift{
    grid-template-rows:205px auto!important;
  }

  .quiz-options-gifts .quiz-option-image{
    height:205px!important;
  }

  .quiz-options-gifts .quiz-gift > span{
    min-height:0!important;
    font-size:12px!important;
  }
}
.review-slide-6{margin-top:18px}
.review-slide-7{margin-top:62px}
.review-slide-inner{
  min-height:390px!important;
}

@media(max-width:1199px){
  .review-slide-6{margin-top:16px}
  .review-slide-7{margin-top:46px}

  .review-slide-inner{
    min-height:375px!important;
  }
}

.quiz-input.is-error{
  outline:2px solid #48222D!important;
  outline-offset:1px;
}

.quiz-submit:disabled{
  opacity:.58;
  cursor:wait;
}

.about-left,
.about-right{
  isolation:isolate;
}

.about-pattern{
  --about-pattern-y:0px;
  transform:
    translate3d(0,var(--about-pattern-y),0)
    rotate(-4.2deg)!important;
  will-change:transform;
}

.about-photo-card{
  --about-photo-y:0px;
  --about-tilt-x:0deg;
  --about-tilt-y:0deg;
  transform:
    translate3d(-50%,var(--about-photo-y),0)
    perspective(900px)
    rotateX(var(--about-tilt-x))
    rotateY(var(--about-tilt-y))!important;
  transform-origin:center center;
  box-shadow:0 18px 45px rgba(72,34,45,.13);
  will-change:transform;
}

.about-photo-card img{
  transform:scale(1.035);
  transition:transform .7s cubic-bezier(.22,.61,.36,1);
}

.about-photo-card:hover img{
  transform:scale(1.055);
}

.about-fact{
  position:absolute;
  z-index:7;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:116px;
  min-height:74px;
  padding:10px 13px 9px;
  background:#BBCBD8;
  color:#48222D;
  box-shadow:0 8px 18px rgba(72,34,45,.12);
  pointer-events:none;
}

.about-fact strong{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:30px;
  line-height:.82;
  font-weight:400!important;
}

.about-fact span{
  margin-top:7px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:8px;
  line-height:1.1;
  font-weight:750;
  letter-spacing:.09em;
}

.about-fact-years{
  left:-30px;
  bottom:64px;
  transform:rotate(-5deg);
}

.about-fact-events{
  right:-36px;
  top:105px;
  transform:rotate(4deg);
}

.about-doodle-arrow{
  position:absolute;
  z-index:4;
  left:7%;
  bottom:70px;
  width:200px;
  color:#48222D;
  pointer-events:none;
  transform:rotate(-4deg);
}

.about-doodle-arrow svg{
  display:block;
  width:180px;
  height:90px;
  overflow:visible;
}

.about-doodle-arrow path{
  fill:none;
  stroke:currentColor;
  stroke-width:2.3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.about-doodle-arrow span{
  display:block;
  margin:-4px 0 0 10px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:19px;
  line-height:.86;
}

.about-stamp{
  display:inline-block;
  margin:-8px 0 28px auto;
  padding:7px 12px 5px;
  border:1.5px solid rgba(255,255,255,.66);
  border-radius:2px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:8px;
  line-height:1;
  font-weight:750;
  letter-spacing:.13em;
  transform:rotate(2.5deg);
  opacity:.78;
}

.about-right-text > p:first-of-type{
  position:relative;
}

.about-right-text > p:first-of-type:before{
  content:"";
  position:absolute;
  left:-18px;
  top:.35em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#BBCBD8;
}

.about-right li{
  position:relative;
  transition:transform .28s ease,opacity .28s ease;
}

@media(hover:hover) and (pointer:fine){
  .about-right li:hover{
    transform:translateX(5px);
  }
}

.team-bg-pattern div{
  --team-row-shift:0px;
  will-change:transform;
}

.team-bg-pattern div:nth-child(odd){
  transform:translate3d(var(--team-row-shift),0,0)!important;
}

.team-bg-pattern div:nth-child(even){
  transform:translate3d(calc(var(--team-row-shift) - 110px),0,0)!important;
}

.team-bg-pattern div:nth-child(3n){
  transform:translate3d(calc(var(--team-row-shift) + 48px),0,0)!important;
}

.team-photo-wrap{
  box-shadow:0 14px 30px rgba(72,34,45,.075);
  transition:
    transform .52s cubic-bezier(.22,.61,.36,1),
    box-shadow .52s ease;
  transform-origin:center bottom;
}

.team-photo-wrap:before{
  content:"";
  position:absolute;
  z-index:4;
  inset:8px;
  border:1px solid rgba(255,255,255,.22);
  pointer-events:none;
  opacity:.45;
}

.team-photo-wrap:after{
  content:"";
  position:absolute;
  z-index:5;
  right:13px;
  bottom:13px;
  width:34px;
  height:7px;
  background:#BBCBD8;
  transform:rotate(-3deg);
  opacity:0;
  transition:opacity .3s ease,transform .42s ease;
  pointer-events:none;
}

.team-card:nth-child(even) .team-photo-wrap:after{
  right:auto;
  left:13px;
  transform:rotate(3deg);
}

.team-name{
  position:relative;
  display:inline-block;
}

.team-name:after{
  content:"";
  position:absolute;
  left:0;
  bottom:-7px;
  width:0;
  height:3px;
  background:#48222D;
  transform:rotate(-1.5deg);
  transition:width .52s cubic-bezier(.22,.61,.36,1);
}

@media(hover:hover) and (pointer:fine){
  .team-card:hover .team-photo-wrap{
    transform:translateY(-7px) rotate(.45deg);
    box-shadow:0 23px 42px rgba(72,34,45,.13);
  }

  .team-card:nth-child(even):hover .team-photo-wrap{
    transform:translateY(-7px) rotate(-.45deg);
  }

  .team-card:hover .team-photo-wrap img{
    transform:scale(1.055)!important;
  }

  .team-card:hover .team-photo-wrap:after{
    opacity:.92;
    transform:rotate(-8deg) scaleX(1.15);
  }

  .team-card:nth-child(even):hover .team-photo-wrap:after{
    transform:rotate(8deg) scaleX(1.15);
  }

  .team-card:hover .team-name:after{
    width:100%;
  }
}

.team-head-doodle{
  position:absolute;
  right:66px;
  bottom:-9px;
  display:flex;
  gap:6px;
  transform:rotate(-10deg);
  pointer-events:none;
}

.team-head-doodle span{
  display:block;
  width:5px;
  height:22px;
  border-radius:999px;
  background:#BBCBD8;
}

.team-head-doodle span:nth-child(1){transform:rotate(-24deg)}
.team-head-doodle span:nth-child(3){transform:rotate(24deg)}

.team-marquee-track{
  animation-duration:34s!important;
}

@media(max-width:1199px){
  .about-photo-card{
    box-shadow:0 13px 28px rgba(72,34,45,.11);
  }

  .about-fact{
    min-width:91px;
    min-height:59px;
    padding:8px 10px;
  }

  .about-fact strong{
    font-size:24px;
  }

  .about-fact span{
    font-size:6.5px;
  }

  .about-fact-years{
    left:-8px;
    bottom:36px;
  }

  .about-fact-events{
    right:-7px;
    top:72px;
  }

  .about-doodle-arrow{
    display:none;
  }

  .about-stamp{
    margin-bottom:22px;
  }

  .team-head-doodle{
    right:16px;
  }

  .team-photo-wrap:after{
    opacity:.58;
  }
}

@media(prefers-reduced-motion:reduce){
  .about-pattern,
  .about-photo-card,
  .team-bg-pattern div{
    transform:none!important;
    transition:none!important;
  }

  .team-photo-wrap,
  .team-name:after{
    transition:none!important;
  }
}

.quiz-card{
  position:relative!important;
  isolation:isolate;
}
.quiz-card:before{
  content:attr(data-quiz-step);
  position:absolute;
  z-index:-1;
  right:-12px;
  top:82px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:230px;
  line-height:.72;
  color:rgba(187,203,216,.115);
  pointer-events:none;
  transform:rotate(-4deg);
}

.quiz-top{
  overflow:hidden;
}

.quiz-top-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:34px;
  align-items:start;
}

.quiz-title{
  max-width:760px!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:18px!important;
  line-height:1.28!important;
  font-weight:650!important;
  letter-spacing:.005em!important;
}

.quiz-step-visual{
  display:flex;
  align-items:flex-start;
  min-width:92px;
  color:#48222D;
  user-select:none;
}

.quiz-step-visual span{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:48px;
  line-height:.76;
  font-weight:400;
  letter-spacing:-.05em;
  transition:
    transform .36s cubic-bezier(.22,.61,.36,1),
    opacity .28s ease;
}

.quiz-step-visual b{
  margin:4px 0 0 5px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:10px;
  line-height:1;
  font-weight:750;
  letter-spacing:.05em;
  opacity:.45;
}

.quiz-step-visual.is-changing span{
  transform:translateY(-5px) rotate(-4deg);
  opacity:.42;
}

.quiz-mini-meta{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:20px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:7px;
  line-height:1;
  font-weight:750;
  letter-spacing:.13em;
  color:rgba(72,34,45,.48);
}

.quiz-dots{
  display:flex;
  align-items:center;
  gap:4px;
}

.quiz-dots i{
  display:block;
  width:16px;
  height:4px;
  border-radius:999px;
  background:rgba(72,34,45,.12);
  transition:
    width .34s cubic-bezier(.22,.61,.36,1),
    background .34s ease,
    transform .34s ease;
}

.quiz-dots i.is-active{
  width:29px;
  background:#48222D;
  transform:rotate(-2deg);
}
.quiz-step{
  position:relative;
}

.quiz-step.is-active{
  animation:quizStepInV7 .48s cubic-bezier(.22,.61,.36,1) both!important;
}

@keyframes quizStepInV7{
  from{
    opacity:0;
    transform:translateX(14px) translateY(6px);
    filter:blur(2px);
  }
  to{
    opacity:1;
    transform:translateX(0) translateY(0);
    filter:blur(0);
  }
}

.quiz-question{
  position:relative;
  padding-top:5px!important;
  font-size:16px!important;
  line-height:1.34!important;
  font-weight:700!important;
}

.quiz-question:after{
  content:"";
  display:block;
  width:62px;
  height:3px;
  margin-top:13px;
  background:#BBCBD8;
  transform:rotate(-2deg);
}

.quiz-options-gifts{
  gap:14px!important;
  counter-reset:gift;
}

.quiz-gift{
  counter-increment:gift;
  position:relative;
  display:grid!important;
  grid-template-rows:178px minmax(42px,auto)!important;
  padding:9px 9px 12px!important;
  border:1px solid rgba(72,34,45,.10)!important;
  border-radius:7px!important;
  background:#F7F4EF!important;
  box-shadow:0 8px 22px rgba(72,34,45,.055);
  transition:
    transform .38s cubic-bezier(.22,.61,.36,1),
    box-shadow .38s ease,
    border-color .28s ease!important;
}

.quiz-gift:before{
  content:"0" counter(gift);
  position:absolute;
  z-index:5;
  left:16px;
  top:16px;
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  border-radius:50%;
  background:rgba(234,229,223,.90);
  color:#48222D;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:8px;
  font-weight:800;
  letter-spacing:.04em;
  box-shadow:0 4px 12px rgba(72,34,45,.08);
}

.quiz-gift:after{
  content:"";
  position:absolute;
  z-index:7;
  inset:4px;
  border:2px solid #48222D;
  border-radius:8px;
  opacity:0;
  pointer-events:none;
  transform:rotate(-.65deg) scale(.975);
  transition:
    opacity .25s ease,
    transform .38s cubic-bezier(.22,.61,.36,1);
}

.quiz-gift:nth-child(2):after{
  transform:rotate(.55deg) scale(.975);
}

.quiz-gift:nth-child(3):after{
  transform:rotate(-.25deg) scale(.975);
}

.quiz-gift.is-selected:after{
  opacity:.9;
  transform:rotate(-.65deg) scale(1);
}

.quiz-gift:nth-child(2).is-selected:after{
  transform:rotate(.55deg) scale(1);
}

.quiz-gift:nth-child(3).is-selected:after{
  transform:rotate(-.25deg) scale(1);
}

.quiz-options-gifts .quiz-option-image{
  position:relative;
  height:178px!important;
  border:0!important;
  border-radius:4px!important;
  background:#EAE5DF!important;
}

.quiz-options-gifts .quiz-option-image:after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(72,34,45,.055);
  pointer-events:none;
}

.quiz-gift.is-selected .quiz-option-image{
  box-shadow:none!important;
}

.quiz-gift-check{
  position:absolute;
  z-index:6;
  right:10px;
  bottom:10px;
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:50%;
  background:#48222D;
  color:#fff;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:15px;
  font-style:normal;
  font-weight:800;
  opacity:0;
  transform:scale(.55) rotate(-14deg);
  transition:
    opacity .24s ease,
    transform .34s cubic-bezier(.22,.61,.36,1);
}

.quiz-gift.is-selected .quiz-gift-check{
  opacity:1;
  transform:scale(1) rotate(-4deg);
}

.quiz-options-gifts .quiz-gift > span{
  display:flex!important;
  align-items:center!important;
  min-height:42px!important;
  margin:7px 3px 0!important;
  font-size:11.5px!important;
  line-height:1.25!important;
  font-weight:700!important;
  color:#2A2526;
}

@media(hover:hover) and (pointer:fine){
  .quiz-gift:hover{
    transform:translateY(-5px);
    border-color:rgba(72,34,45,.18)!important;
    box-shadow:0 15px 30px rgba(72,34,45,.10);
  }

  .quiz-gift:hover .quiz-option-image img{
    transform:scale(1.025);
  }
}

.quiz-options-gifts .quiz-option-image img{
  transition:transform .45s cubic-bezier(.22,.61,.36,1)!important;
}

.quiz-options-list{
  counter-reset:quizanswer;
}

.quiz-options-list .quiz-option{
  counter-increment:quizanswer;
  position:relative;
  display:flex;
  align-items:center;
  min-height:66px!important;
  padding:15px 52px 15px 58px!important;
  border:1px solid rgba(72,34,45,.12)!important;
  border-radius:33px!important;
  background:rgba(255,255,255,.44)!important;
  overflow:hidden;
  font-size:13px!important;
  font-weight:600!important;
  transition:
    background .28s ease,
    border-color .28s ease,
    transform .28s ease,
    box-shadow .28s ease!important;
}

.quiz-options-list .quiz-option:before{
  content:counter(quizanswer);
  position:absolute;
  left:17px;
  top:50%;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
  background:#EAE5DF;
  color:rgba(72,34,45,.58);
  font-size:9px;
  font-weight:800;
  transform:translateY(-50%);
  transition:background .28s ease,color .28s ease;
}

.quiz-options-list .quiz-option:after{
  content:"✓";
  position:absolute;
  right:20px;
  top:50%;
  color:#48222D;
  font-size:16px;
  font-weight:800;
  opacity:0;
  transform:translateY(-50%) scale(.55) rotate(-12deg);
  transition:
    opacity .2s ease,
    transform .3s cubic-bezier(.22,.61,.36,1);
}

.quiz-options-list .quiz-option.is-selected{
  border-color:#48222D!important;
  background:rgba(187,203,216,.34)!important;
  box-shadow:inset 0 0 0 1px rgba(72,34,45,.12);
}

.quiz-options-list .quiz-option.is-selected:before{
  background:#48222D;
  color:#fff;
}

.quiz-options-list .quiz-option.is-selected:after{
  opacity:1;
  transform:translateY(-50%) scale(1) rotate(-3deg);
}

@media(hover:hover) and (pointer:fine){
  .quiz-options-list .quiz-option:hover{
    transform:translateX(4px);
    border-color:rgba(72,34,45,.34)!important;
    box-shadow:0 7px 16px rgba(72,34,45,.05);
  }
}

.quiz-footer{
  position:relative;
}

.quiz-count{
  display:none!important;
}

.quiz-back{
  transition:
    transform .25s ease,
    opacity .2s ease,
    border-color .2s ease!important;
}

.quiz-next{
  position:relative;
  overflow:hidden;
  box-shadow:0 10px 22px rgba(72,34,45,.12);
}

.quiz-next:after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:-45%;
  width:34%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
  transform:skewX(-18deg);
  transition:left .55s ease;
  pointer-events:none;
}

@media(hover:hover) and (pointer:fine){
  .quiz-next:not(:disabled):hover:after{
    left:115%;
  }

  .quiz-back:not(:disabled):hover{
    transform:translateX(-3px);
    border-color:#48222D;
  }
}

.quiz-result-form{
  position:relative;
}

.quiz-result-form:before{
  content:"ГОТОВО";
  position:absolute;
  right:-18px;
  top:-37px;
  padding:5px 9px 4px;
  border:1px solid rgba(72,34,45,.28);
  border-radius:2px;
  color:#48222D;
  font-size:7px;
  font-weight:800;
  letter-spacing:.12em;
  transform:rotate(4deg);
  opacity:.72;
}

.quiz-input{
  transition:
    border-color .2s ease,
    background .2s ease,
    box-shadow .2s ease!important;
}

.quiz-input:focus{
  background:#fff!important;
  box-shadow:0 7px 18px rgba(72,34,45,.06);
}

@media(max-width:1199px){
  .quiz-card:before{
    right:-8px;
    top:110px;
    font-size:122px;
  }

  .quiz-top-row{
    grid-template-columns:minmax(0,1fr) 50px;
    gap:10px;
  }

  .quiz-title{
    font-size:12px!important;
    line-height:1.36!important;
  }

  .quiz-step-visual{
    min-width:50px;
  }

  .quiz-step-visual span{
    font-size:34px;
  }

  .quiz-step-visual b{
    margin-left:3px;
    font-size:7px;
  }

  .quiz-mini-meta{
    gap:7px;
    margin-top:15px;
    font-size:5.5px;
    letter-spacing:.08em;
  }

  .quiz-dots{
    gap:3px;
  }

  .quiz-dots i{
    width:8px;
    height:3px;
  }

  .quiz-dots i.is-active{
    width:18px;
  }

  .quiz-question{
    font-size:14px!important;
  }

  .quiz-options-gifts{
    gap:13px!important;
  }

  .quiz-gift{
    grid-template-rows:185px auto!important;
    padding:8px 8px 10px!important;
  }

  .quiz-options-gifts .quiz-option-image{
    height:185px!important;
  }

  .quiz-options-gifts .quiz-gift > span{
    min-height:32px!important;
    font-size:11px!important;
  }

  .quiz-options-list .quiz-option{
    min-height:58px!important;
    padding:13px 42px 13px 50px!important;
    border-radius:29px!important;
    font-size:12px!important;
  }

  .quiz-options-list .quiz-option:before{
    left:14px;
    width:25px;
    height:25px;
  }

  .quiz-options-list .quiz-option:after{
    right:15px;
  }

  .quiz-result-form:before{
    right:4px;
    top:-32px;
  }
}

@media(prefers-reduced-motion:reduce){
  .quiz-step.is-active,
  .quiz-gift,
  .quiz-gift:after,
  .quiz-gift-check,
  .quiz-options-list .quiz-option,
  .quiz-options-list .quiz-option:after,
  .quiz-step-visual span,
  .quiz-next:after{
    animation:none!important;
    transition:none!important;
  }
}

.benefits-section{
  --benefits-scene-p:0;
}

.benefits-title-stamp{
  position:absolute;
  left:30px;
  top:-35px;
  padding:6px 10px 5px;
  border:1px solid rgba(72,34,45,.35);
  border-radius:2px;
  color:#48222D;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:7px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  opacity:calc(.25 + var(--benefits-title-p) * .55);
  transform:
    translateY(calc((1 - var(--benefits-title-p)) * 6px))
    rotate(-3deg);
  pointer-events:none;
}

.benefits-ambient-word{
  position:absolute;
  z-index:0;
  left:-24px;
  top:255px;
  color:rgba(72,34,45,.035);
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:190px;
  line-height:.72;
  white-space:nowrap;
  pointer-events:none;
  transform:
    translate3d(calc((var(--benefits-scene-p) - .5) * -44px),0,0)
    rotate(-7deg);
  will-change:transform;
}

.benefits-splatter{
  transform:
    translate3d(
      calc((var(--benefits-scene-p) - .5) * 10px),
      calc((var(--benefits-scene-p) - .5) * -26px),
      0
    )
    rotate(calc((var(--benefits-scene-p) - .5) * 1.1deg))!important;
  transform-origin:center!important;
  will-change:transform;
}

.benefits-heart{
  filter:drop-shadow(0 4px 7px rgba(72,34,45,.07));
}

.benefits-side-doodle{
  position:absolute;
  z-index:5;
  right:-172px;
  top:150px;
  width:145px;
  color:#48222D;
  opacity:calc(.15 + var(--benefits-scene-p) * .55);
  transform:
    translateY(calc((1 - var(--benefits-scene-p)) * 14px))
    rotate(3deg);
  pointer-events:none;
}

.benefits-side-doodle svg{
  display:block;
  width:132px;
  height:auto;
  overflow:visible;
}

.benefits-side-doodle path{
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.benefits-side-doodle span{
  display:block;
  margin:-4px 0 0 35px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:17px;
  line-height:.85;
}

.benefit-card{
  overflow:visible!important;
  box-shadow:
    inset 0 0 0 1px rgba(72,34,45,.025),
    0 calc(var(--card-p) * 10px) calc(var(--card-p) * 24px) rgba(72,34,45,.055)!important;
}

.benefit-card:before{
  content:attr(data-benefit-note);
  position:absolute;
  z-index:2;
  right:22px;
  top:-7px;
  padding:4px 8px 3px;
  border-radius:2px;
  background:#EAE5DF;
  color:#48222D;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:6.5px;
  line-height:1;
  font-weight:800;
  letter-spacing:.1em;
  opacity:calc(var(--card-p) * .72);
  transform:
    translateY(calc((1 - var(--card-p)) * 5px))
    rotate(2deg);
  pointer-events:none;
}

.benefit-card:nth-of-type(even):before{
  transform:
    translateY(calc((1 - var(--card-p)) * 5px))
    rotate(-2deg);
}

.benefit-card:after{
  content:"";
  position:absolute;
  z-index:-1;
  left:18px;
  right:18px;
  bottom:-5px;
  height:15px;
  border-radius:50%;
  background:rgba(72,34,45,.055);
  filter:blur(8px);
  opacity:calc(var(--card-p) * .65);
  pointer-events:none;
}

.benefit-dot{
  box-shadow:
    0 0 0 calc(var(--card-p) * 5px) rgba(175,196,211,.18);
}

.contract-ref{
  --contract-scene-p:0;
  --contract-paper-y:0px;
}

.contract-ref-splatter{
  transform:
    translate3d(
      calc((var(--contract-scene-p) - .5) * 9px),
      calc((var(--contract-scene-p) - .5) * -18px),
      0
    )
    rotate(calc((var(--contract-scene-p) - .5) * .8deg));
  transform-origin:center;
  will-change:transform;
}

.contract-ref-visual{
  position:relative!important;
  isolation:isolate;
}

.contract-paper-shadow{
  position:absolute;
  z-index:-1;
  left:50%;
  top:56%;
  width:260px;
  height:55px;
  border-radius:50%;
  background:rgba(72,34,45,.16);
  filter:blur(18px);
  opacity:calc(.08 + var(--contract-scene-p) * .42);
  transform:
    translate(-44%,18px)
    scaleX(calc(.74 + var(--contract-scene-p) * .26))
    scaleY(calc(.72 + var(--contract-scene-p) * .28));
  pointer-events:none;
}

.contract-ref-art{
  transform:
    translate3d(
      0,
      calc((1 - var(--contract-scene-p)) * 13px + var(--contract-paper-y)),
      0
    )
    rotate(calc((1 - var(--contract-scene-p)) * -1deg))
    scale(calc(.982 + var(--contract-scene-p) * .018));
  transform-origin:center center;
  will-change:transform;
  filter:
    drop-shadow(
      0
      calc(5px + var(--contract-scene-p) * 5px)
      calc(8px + var(--contract-scene-p) * 5px)
      rgba(72,34,45,.055)
    );
}

.contract-visual-note{
  position:absolute;
  z-index:6;
  pointer-events:none;
  opacity:calc(.12 + var(--contract-scene-p) * .76);
  transition:none!important;
}

.contract-visual-note-a{
  left:4px;
  top:74px;
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px 9px 6px;
  background:#BBCBD8;
  color:#48222D;
  transform:
    translateY(calc((1 - var(--contract-scene-p)) * 10px))
    rotate(-5deg);
  box-shadow:0 7px 18px rgba(72,34,45,.08);
}

.contract-visual-note-a strong{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:23px;
  line-height:.7;
  font-weight:400!important;
}

.contract-visual-note-a span{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:6px;
  line-height:1.05;
  font-weight:800;
  letter-spacing:.08em;
}

.contract-visual-note-b{
  right:14px;
  bottom:77px;
  padding:5px 8px 4px;
  border:1px solid rgba(72,34,45,.38);
  border-radius:2px;
  color:#48222D;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:7px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  transform:
    translateY(calc((1 - var(--contract-scene-p)) * -7px))
    rotate(4deg);
}

.contract-copy-kicker{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 20px 2px;
  color:rgba(72,34,45,.58);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:7px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  opacity:calc(.2 + var(--contract-scene-p) * .8);
  transform:translateY(calc((1 - var(--contract-scene-p)) * 7px));
}

.contract-copy-kicker span{
  display:block;
  width:34px;
  height:2px;
  background:#48222D;
  transform:
    scaleX(var(--contract-scene-p))
    rotate(-2deg);
  transform-origin:left center;
}

.contract-copy-sign{
  display:flex;
  align-items:flex-start;
  gap:8px;
  width:max-content;
  margin:30px 0 0 88px;
  color:#48222D;
  opacity:calc(.12 + var(--contract-scene-p) * .64);
  transform:
    translateY(calc((1 - var(--contract-scene-p)) * 9px))
    rotate(-2deg);
  pointer-events:none;
}

.contract-copy-sign svg{
  display:block;
  width:105px;
  height:auto;
  overflow:visible;
}

.contract-copy-sign path{
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.contract-copy-sign span{
  margin-top:19px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:14px;
  line-height:.82;
}

#contractRefPenMover{
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.12));
}
.contract-ref:after{
  content:"";
  position:absolute;
  z-index:2;
  left:calc(22% + 154px);
  top:414px;
  width:20px;
  height:10px;
  border-radius:50%;
  background:rgba(72,34,45,.10);
  filter:blur(6px);
  opacity:clamp(0,calc((var(--pen-p) - .86) * 5),.42);
  transform:rotate(-8deg);
  pointer-events:none;
}

@media(max-width:1199px){
  .benefits-title-stamp{
    left:3px;
    top:-28px;
    font-size:5.5px;
  }

  .benefits-ambient-word{
    left:-35px;
    top:205px;
    font-size:95px;
  }

  .benefits-side-doodle{
    display:none;
  }

  .benefit-card:before{
    right:12px;
    top:-5px;
    font-size:5.5px;
  }

  .contract-paper-shadow{
    width:190px;
    height:42px;
    top:54%;
  }

  .contract-ref-art{
    transform:
      translate3d(
        0,
        calc((1 - var(--contract-scene-p)) * 8px),
        0
      )
      rotate(calc((1 - var(--contract-scene-p)) * -.55deg))
      scale(calc(.99 + var(--contract-scene-p) * .01));
  }

  .contract-visual-note-a{
    left:-7px;
    top:38px;
    padding:5px 7px 5px;
  }

  .contract-visual-note-a strong{
    font-size:18px;
  }

  .contract-visual-note-b{
    right:-3px;
    bottom:39px;
    font-size:5.5px;
  }

  .contract-copy-kicker{
    margin-bottom:14px;
    font-size:5.5px;
    letter-spacing:.09em;
  }

  .contract-copy-sign{
    margin:19px 0 0 22px;
  }

  .contract-copy-sign svg{
    width:75px;
  }

  .contract-copy-sign span{
    margin-top:13px;
    font-size:10px;
  }

  .contract-ref:after{
    display:none;
  }
}

@media(prefers-reduced-motion:reduce){
  .benefits-section{
    --benefits-scene-p:1!important;
  }

  .benefits-splatter,
  .benefits-ambient-word,
  .contract-ref-splatter,
  .contract-ref-art{
    transform:none!important;
  }

  .contract-ref{
    --contract-scene-p:1!important;
    --contract-paper-y:0px!important;
  }
}

.reviews-carousel-section{
  --reviews-scene-p:0;
  --reviews-wave-x:0px;
}

.reviews-head-kicker{
  width:max-content;
  margin:0 0 8px 2px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:6.5px;
  line-height:1;
  font-weight:800;
  letter-spacing:.14em;
  color:rgba(23,23,23,.48);
}

.reviews-wave{
  transform:
    translate3d(var(--reviews-wave-x),0,0)
    scaleX(1.035);
  transform-origin:center;
  will-change:transform;
}

.reviews-wave path{
  stroke-dasharray:8 6;
  stroke-dashoffset:calc(var(--reviews-scene-p) * -18px);
}

.reviews-track{
  --reviews-drift:0px;
  transform:
    translate3d(
      calc(var(--reviews-shift) + var(--reviews-drift)),
      0,
      0
    )!important;
}
.review-slide{
  --review-float:0px;
  --review-tilt:0deg;
  transform:
    translate3d(0,var(--review-float),0)
    rotate(var(--review-tilt));
  transform-origin:center center;
  will-change:transform;
}

.review-slide-1{--review-tilt:-.20deg}
.review-slide-2{--review-tilt:.18deg}
.review-slide-3{--review-tilt:-.12deg}
.review-slide-4{--review-tilt:.22deg}
.review-slide-5{--review-tilt:-.16deg}
.review-slide-6{--review-tilt:.12deg}
.review-slide-7{--review-tilt:-.18deg}

.review-slide-inner{
  position:relative;
  box-shadow:
    0 13px 28px rgba(55,63,68,.075),
    0 1px 0 rgba(255,255,255,.70) inset!important;
  transition:
    transform .42s cubic-bezier(.22,.61,.36,1),
    box-shadow .42s ease!important;
}

.review-slide-inner:before{
  content:"";
  position:absolute;
  left:26px;
  top:23px;
  width:27px;
  height:3px;
  background:#BBCBD8;
  transform:rotate(-3deg);
  opacity:.74;
}

.review-slide-meta{
  padding-top:10px;
}

.review-slide-type{
  padding:4px 7px 3px;
  border:1px solid rgba(23,23,23,.10);
  border-radius:999px;
}

.reviews-arrow{
  box-shadow:0 6px 14px rgba(44,58,66,.055);
}

@media(hover:hover) and (pointer:fine){
  .review-slide:hover .review-slide-inner{
    transform:translateY(-4px);
    box-shadow:
      0 19px 35px rgba(55,63,68,.11),
      0 1px 0 rgba(255,255,255,.70) inset!important;
  }
}

@media(max-width:1199px){


  .reviews-head-kicker{
    font-size:5.5px;
  }

  .review-slide{
    --review-tilt:0deg!important;
  }

  .review-slide-inner:before{
    left:21px;
    top:18px;
    width:22px;
  }
}

@media(prefers-reduced-motion:reduce){
  .reviews-wave,
  .review-slide{
    transform:none!important;
  }

  .reviews-track{
    --reviews-drift:0px!important;
  }
}

.cost-content-row{
  grid-template-columns:minmax(0,1fr) 500px minmax(0,1fr)!important;
  justify-items:stretch!important;
}

.cost-card{
  grid-column:2!important;
  justify-self:center!important;
  width:500px!important;
  box-sizing:border-box!important;
  margin-left:0!important;
  margin-right:0!important;
}

.cost-card-copy{
  width:100%!important;
  box-sizing:border-box!important;
  padding-left:42px!important;
  padding-right:42px!important;
}

.cost-card-label{
  width:100%!important;
  box-sizing:border-box!important;
  margin-left:0!important;
  margin-right:0!important;
}
.cost-card ul{
  width:100%!important;
  box-sizing:border-box!important;
  list-style:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
}

.cost-card li{
  position:relative!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding-left:18px!important;
  margin-left:0!important;
  margin-right:0!important;
}

.cost-card li:before{
  content:""!important;
  position:absolute!important;
  left:1px!important;
  top:.58em!important;
  width:5px!important;
  height:5px!important;
  border-radius:50%!important;
  background:#48222D!important;
  transform:translateY(-50%)!important;
}

.cost-button{
  box-sizing:border-box!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:center!important;
}

.cost-small{
  width:100%!important;
  box-sizing:border-box!important;
  text-align:center!important;
  margin-left:0!important;
  margin-right:0!important;
}

.cost-pug{
  grid-column:3!important;
}

@media(max-width:1199px){
  .cost-content-row{
    grid-template-columns:1fr!important;
  }

  .cost-card{
    grid-column:1!important;
    width:280px!important;
  }

  .cost-card-copy{
    padding-left:24px!important;
    padding-right:24px!important;
  }

  .cost-pug{
    grid-column:1!important;
  }
}

.portfolio-section{
  position:relative;
  z-index:6;
  overflow:hidden;
  background:#48222D;
  color:#fff;
  padding:88px 0 150px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
}

.portfolio-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.055;
  background-image:url("assets/reference-plastic.webp");
  background-repeat:repeat;
  background-size:520px auto;
  mix-blend-mode:screen;
}

.portfolio-head,
.portfolio-gallery{
  position:relative;
  z-index:2;
  width:min(1200px,calc(100% - 80px));
  margin-left:auto;
  margin-right:auto;
}

.portfolio-head{
  margin-bottom:44px;
}

.portfolio-kicker{
  margin-bottom:13px;
  font-size:11px;
  line-height:1.1;
  letter-spacing:.15em;
  text-transform:uppercase;
  opacity:.72;
}

.portfolio-head h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:88px;
  line-height:.86;
  font-weight:400!important;
  letter-spacing:-.045em;
  text-transform:uppercase;
}

.portfolio-underline{
  width:420px;
  height:4px;
  margin-top:19px;
  background:#fff;
  opacity:.9;
  transform:rotate(-.8deg);
  transform-origin:left center;
}

.portfolio-gallery{
  display:flex;
  flex-direction:column;
  gap:22px;
}

.portfolio-item{
  margin:0;
}

.portfolio-img{
  position:relative;
  overflow:hidden;
  width:100%;
  background:#2d1118;
}

.portfolio-img:after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(255,255,255,.08);
  pointer-events:none;
}

.portfolio-img img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 1.3s cubic-bezier(.22,.61,.36,1);
}

.portfolio-item:hover .portfolio-img img{
  transform:scale(1.025);
}
.portfolio-wide .portfolio-img{
  height:590px;
}
.portfolio-wide .portfolio-img img{
  object-position:center center;
}
.portfolio-pair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.portfolio-pair .portfolio-img{
  height:520px;
}
.portfolio-pair .portfolio-item:first-child img{
  object-position:center 43%;
}
.portfolio-pair .portfolio-item:last-child img{
  object-position:center 44%;
}
.portfolio-img-dark{
  height:610px!important;
}
.portfolio-img-dark img{
  object-position:center 42%!important;
}
.portfolio-triptych{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.portfolio-triptych .portfolio-img{
  height:410px;
}
.portfolio-triptych .portfolio-item:nth-child(1) img{
  object-position:center 47%;
}
.portfolio-triptych .portfolio-item:nth-child(2) img{
  object-position:center 43%;
}
.portfolio-triptych .portfolio-item:nth-child(3) img{
  object-position:center 46%;
}
.portfolio-finale{
  display:grid;
  grid-template-columns:1.65fr .85fr;
  gap:22px;
  align-items:stretch;
}
.portfolio-finale-wide .portfolio-img,
.portfolio-finale-vertical .portfolio-img{
  height:610px;
}
.portfolio-finale-wide img{
  object-position:center 48%;
}
.portfolio-finale-vertical img{
  object-position:center 48%;
}
.portfolio-word{
  position:absolute;
  z-index:1;
  left:-3%;
  right:-3%;
  bottom:24px;
  display:flex;
  gap:45px;
  width:max-content;
  opacity:.065;
  pointer-events:none;
  white-space:nowrap;
  transform:rotate(-2deg);
}

.portfolio-word span{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:84px;
  line-height:1;
  letter-spacing:-.04em;
  text-transform:uppercase;
}

.portfolio-reveal{
  opacity:0;
  transform:translateY(30px);
  transition:
    opacity .82s ease,
    transform .96s cubic-bezier(.22,.61,.36,1);
}

.portfolio-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media(max-width:1199px){
  .portfolio-section{
    padding:58px 0 105px;
  }

  .portfolio-head,
  .portfolio-gallery{
    width:280px;
  }

  .portfolio-head{
    margin-bottom:30px;
  }

  .portfolio-kicker{
    font-size:8px;
    line-height:1.25;
    margin-bottom:9px;
  }

  .portfolio-head h2{
    font-size:48px;
    line-height:.9;
  }

  .portfolio-underline{
    width:220px;
    height:3px;
    margin-top:13px;
  }

  .portfolio-gallery{
    gap:14px;
  }

  .portfolio-wide .portfolio-img,
  .portfolio-img-dark{
    height:220px!important;
  }

  .portfolio-pair,
  .portfolio-triptych,
  .portfolio-finale{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
  }

  .portfolio-pair .portfolio-img,
  .portfolio-triptych .portfolio-img,
  .portfolio-finale-wide .portfolio-img{
    height:220px;
  }

  .portfolio-finale-vertical .portfolio-img{
    height:400px;
  }

  .portfolio-word{
    bottom:24px;
    gap:25px;
  }

  .portfolio-word span{
    font-size:45px;
  }
}

@media(prefers-reduced-motion:reduce){
  .portfolio-reveal{
    opacity:1!important;
    transform:none!important;
  }

  .portfolio-img img{
    transition:none!important;
  }
}
.portfolio-section{
  padding-top:70px!important;
  padding-bottom:110px!important;
}

.portfolio-head{
  margin-bottom:34px!important;
}

.portfolio-head h2{
  font-size:78px!important;
}

.portfolio-gallery{
  gap:16px!important;
}

.portfolio-pair,
.portfolio-triptych,
.portfolio-finale{
  gap:16px!important;
}
.portfolio-wide .portfolio-img{
  height:470px!important;
}

.portfolio-pair .portfolio-img{
  height:405px!important;
}

.portfolio-img-dark{
  height:480px!important;
}

.portfolio-triptych .portfolio-img{
  height:325px!important;
}

.portfolio-finale-wide .portfolio-img,
.portfolio-finale-vertical .portfolio-img{
  height:470px!important;
}
.portfolio-word{
  bottom:18px!important;
}

.portfolio-word span{
  font-size:70px!important;
}

@media(max-width:1199px){
  .portfolio-section{
    padding-top:50px!important;
    padding-bottom:88px!important;
  }

  .portfolio-head{
    margin-bottom:25px!important;
  }

  .portfolio-head h2{
    font-size:44px!important;
  }

  .portfolio-gallery{
    gap:11px!important;
  }

  .portfolio-pair,
  .portfolio-triptych,
  .portfolio-finale{
    gap:11px!important;
  }

  .portfolio-wide .portfolio-img,
  .portfolio-img-dark,
  .portfolio-pair .portfolio-img,
  .portfolio-triptych .portfolio-img,
  .portfolio-finale-wide .portfolio-img{
    height:195px!important;
  }

  .portfolio-finale-vertical .portfolio-img{
    height:340px!important;
  }

  .portfolio-word span{
    font-size:40px!important;
  }
}

.portfolio-section{
  position:relative;
  z-index:6;
  overflow:hidden;
  background:#48222D;
  color:#fff;
  padding:88px 0 150px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
}

.portfolio-noise{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.055;
  background-image:url("assets/reference-plastic.webp");
  background-repeat:repeat;
  background-size:520px auto;
  mix-blend-mode:screen;
}

.portfolio-head,
.portfolio-gallery{
  position:relative;
  z-index:2;
  width:min(1200px,calc(100% - 80px));
  margin-left:auto;
  margin-right:auto;
}

.portfolio-head{
  margin-bottom:44px;
}

.portfolio-kicker{
  margin-bottom:13px;
  font-size:11px;
  line-height:1.1;
  letter-spacing:.15em;
  text-transform:uppercase;
  opacity:.72;
}

.portfolio-head h2{
  margin:0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:88px;
  line-height:.86;
  font-weight:400!important;
  letter-spacing:-.045em;
  text-transform:uppercase;
}

.portfolio-underline{
  width:420px;
  height:4px;
  margin-top:19px;
  background:#fff;
  opacity:.9;
  transform:rotate(-.8deg);
  transform-origin:left center;
}

.portfolio-gallery{
  display:flex;
  flex-direction:column;
  gap:22px;
}

.portfolio-item{
  margin:0;
}

.portfolio-img{
  position:relative;
  overflow:hidden;
  width:100%;
  background:#2d1118;
}

.portfolio-img:after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(255,255,255,.08);
  pointer-events:none;
}

.portfolio-img img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 1.3s cubic-bezier(.22,.61,.36,1);
}

.portfolio-item:hover .portfolio-img img{
  transform:scale(1.025);
}
.portfolio-wide .portfolio-img{
  height:590px;
}
.portfolio-wide .portfolio-img img{
  object-position:center center;
}
.portfolio-pair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.portfolio-pair .portfolio-img{
  height:520px;
}
.portfolio-pair .portfolio-item:first-child img{
  object-position:center 43%;
}
.portfolio-pair .portfolio-item:last-child img{
  object-position:center 44%;
}
.portfolio-img-dark{
  height:610px!important;
}
.portfolio-img-dark img{
  object-position:center 42%!important;
}
.portfolio-triptych{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.portfolio-triptych .portfolio-img{
  height:410px;
}
.portfolio-triptych .portfolio-item:nth-child(1) img{
  object-position:center 47%;
}
.portfolio-triptych .portfolio-item:nth-child(2) img{
  object-position:center 43%;
}
.portfolio-triptych .portfolio-item:nth-child(3) img{
  object-position:center 46%;
}
.portfolio-finale{
  display:grid;
  grid-template-columns:1.65fr .85fr;
  gap:22px;
  align-items:stretch;
}
.portfolio-finale-wide .portfolio-img,
.portfolio-finale-vertical .portfolio-img{
  height:610px;
}
.portfolio-finale-wide img{
  object-position:center 48%;
}
.portfolio-finale-vertical img{
  object-position:center 48%;
}
.portfolio-word{
  position:absolute;
  z-index:1;
  left:-3%;
  right:-3%;
  bottom:24px;
  display:flex;
  gap:45px;
  width:max-content;
  opacity:.065;
  pointer-events:none;
  white-space:nowrap;
  transform:rotate(-2deg);
}

.portfolio-word span{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:84px;
  line-height:1;
  letter-spacing:-.04em;
  text-transform:uppercase;
}

.portfolio-reveal{
  opacity:0;
  transform:translateY(30px);
  transition:
    opacity .82s ease,
    transform .96s cubic-bezier(.22,.61,.36,1);
}

.portfolio-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media(max-width:1199px){
  .portfolio-section{
    padding:58px 0 105px;
  }

  .portfolio-head,
  .portfolio-gallery{
    width:280px;
  }

  .portfolio-head{
    margin-bottom:30px;
  }

  .portfolio-kicker{
    font-size:8px;
    line-height:1.25;
    margin-bottom:9px;
  }

  .portfolio-head h2{
    font-size:48px;
    line-height:.9;
  }

  .portfolio-underline{
    width:220px;
    height:3px;
    margin-top:13px;
  }

  .portfolio-gallery{
    gap:14px;
  }

  .portfolio-wide .portfolio-img,
  .portfolio-img-dark{
    height:220px!important;
  }

  .portfolio-pair,
  .portfolio-triptych,
  .portfolio-finale{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
  }

  .portfolio-pair .portfolio-img,
  .portfolio-triptych .portfolio-img,
  .portfolio-finale-wide .portfolio-img{
    height:220px;
  }

  .portfolio-finale-vertical .portfolio-img{
    height:400px;
  }

  .portfolio-word{
    bottom:24px;
    gap:25px;
  }

  .portfolio-word span{
    font-size:45px;
  }
}

@media(prefers-reduced-motion:reduce){
  .portfolio-reveal{
    opacity:1!important;
    transform:none!important;
  }

  .portfolio-img img{
    transition:none!important;
  }
}
.portfolio-section{
  padding-top:70px!important;
  padding-bottom:110px!important;
}

.portfolio-head{
  margin-bottom:34px!important;
}

.portfolio-head h2{
  font-size:78px!important;
}

.portfolio-gallery{
  gap:16px!important;
}

.portfolio-pair,
.portfolio-triptych,
.portfolio-finale{
  gap:16px!important;
}
.portfolio-wide .portfolio-img{
  height:470px!important;
}

.portfolio-pair .portfolio-img{
  height:405px!important;
}

.portfolio-img-dark{
  height:480px!important;
}

.portfolio-triptych .portfolio-img{
  height:325px!important;
}

.portfolio-finale-wide .portfolio-img,
.portfolio-finale-vertical .portfolio-img{
  height:470px!important;
}
.portfolio-word{
  bottom:18px!important;
}

.portfolio-word span{
  font-size:70px!important;
}

@media(max-width:1199px){
  .portfolio-section{
    padding-top:50px!important;
    padding-bottom:88px!important;
  }

  .portfolio-head{
    margin-bottom:25px!important;
  }

  .portfolio-head h2{
    font-size:44px!important;
  }

  .portfolio-gallery{
    gap:11px!important;
  }

  .portfolio-pair,
  .portfolio-triptych,
  .portfolio-finale{
    gap:11px!important;
  }

  .portfolio-wide .portfolio-img,
  .portfolio-img-dark,
  .portfolio-pair .portfolio-img,
  .portfolio-triptych .portfolio-img,
  .portfolio-finale-wide .portfolio-img{
    height:195px!important;
  }

  .portfolio-finale-vertical .portfolio-img{
    height:340px!important;
  }

  .portfolio-word span{
    font-size:40px!important;
  }
}
.showreel-stage{
  contain:paint!important;
}

.showreel-mask{
  position:absolute!important;
  z-index:3!important;
  inset:0!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  max-width:none!important;
  transform:none!important;
  transform-origin:center!important;
  will-change:opacity!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.showreel-video{
  transform:translateZ(0) scale(1.018)!important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  will-change:auto!important;
}
.showreel-choice,
.showreel-sound{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

.showreel-choice{
  background:rgba(0,0,0,.39)!important;
}

.showreel-sound{
  background:rgba(0,0,0,.28)!important;
}
.showreel-ring,
.showreel-arrow{
  transform-style:preserve-3d;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

.portfolio-gallery{
  position:relative;
}

.portfolio-img{
  isolation:isolate;
  box-shadow:0 12px 30px rgba(18,5,10,.10);
}

.portfolio-img img{
  --portfolio-parallax:0px;
  --portfolio-scale:1.06;
  transform:
    translate3d(0,var(--portfolio-parallax),0)
    scale(var(--portfolio-scale))!important;
  will-change:transform;
  transition:
    transform .32s linear,
    filter .55s ease!important;
}

@media(hover:hover) and (pointer:fine){
  .portfolio-item:hover .portfolio-img img{
    --portfolio-scale:1.095;
    filter:saturate(1.045) contrast(1.02);
  }
}

.portfolio-item{
  position:relative;
}

.portfolio-item:before{
  content:attr(data-portfolio-index);
  position:absolute;
  z-index:4;
  left:13px;
  top:12px;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:50%;
  color:#fff;
  background:rgba(72,34,45,.18);
  backdrop-filter:blur(4px);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:8px;
  font-weight:700;
  letter-spacing:.05em;
  pointer-events:none;
}

.portfolio-item:after{
  content:"";
  position:absolute;
  z-index:4;
  right:13px;
  top:14px;
  width:38px;
  height:8px;
  background:#BBCBD8;
  opacity:0;
  transform:rotate(5deg) scaleX(.65);
  transform-origin:right center;
  transition:opacity .3s ease,transform .5s cubic-bezier(.22,.61,.36,1);
  pointer-events:none;
}

@media(hover:hover) and (pointer:fine){
  .portfolio-item:hover:after{
    opacity:.9;
    transform:rotate(-4deg) scaleX(1);
  }
}

.portfolio-note{
  position:relative;
  z-index:5;
  display:flex;
  align-items:center;
  gap:12px;
  width:max-content;
  margin:2px 0 -8px;
  color:#BBCBD8;
  pointer-events:none;
}

.portfolio-note span{
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:31px;
  line-height:.8;
  letter-spacing:-.02em;
}

.portfolio-note i{
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border:1px solid rgba(187,203,216,.65);
  border-radius:50%;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:7px;
  font-style:normal;
  font-weight:700;
}

.portfolio-note-1{
  margin-left:7%;
  transform:rotate(-4deg);
}

.portfolio-note-2{
  align-self:flex-end;
  margin-right:6%;
  transform:rotate(3deg);
}

.portfolio-note-3{
  margin-left:37%;
  transform:rotate(-2deg);
}

.portfolio-word{
  --portfolio-word-x:0px;
  transform:
    translate3d(var(--portfolio-word-x),0,0)
    rotate(-2deg)!important;
  will-change:transform;
}
.portfolio-section:after{
  content:"";
  position:absolute;
  z-index:3;
  right:-4%;
  bottom:73px;
  width:230px;
  height:22px;
  border-top:3px solid rgba(187,203,216,.55);
  border-radius:50%;
  transform:rotate(-8deg);
  pointer-events:none;
}

@media(max-width:1199px){
.portfolio-note{
    margin-top:1px;
    margin-bottom:-2px;
  }

.portfolio-note span{
    font-size:22px;
  }

.portfolio-note-1{
    margin-left:5px;
  }

.portfolio-note-2{
    align-self:flex-end;
    margin-right:5px;
  }

.portfolio-note-3{
    margin-left:82px;
  }

.portfolio-item:before{
    left:9px;
    top:9px;
    width:24px;
    height:24px;
    font-size:7px;
  }

.portfolio-img img{
    --portfolio-scale:1.035;
  }

.portfolio-section:after{
    display:none;
  }
}


@media(prefers-reduced-motion:reduce){
  .portfolio-img img,
  .portfolio-word{
    transform:none!important;
    transition:none!important;
  }

  .portfolio-item:after{
    transition:none!important;
  }
}

.portfolio-item:before{
  display:none!important;
  content:none!important;
}

.faq-section{
  --faq-scene-p:0;
}

.faq-kicker{
  width:max-content;
  margin-bottom:13px;
  padding:5px 8px 4px;
  border:1px solid rgba(23,23,23,.18);
  border-radius:2px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:6.5px;
  line-height:1;
  font-weight:800;
  letter-spacing:.13em;
  color:rgba(23,23,23,.58);
  transform:rotate(-2deg);
}

.faq-bubble{
  transform:
    translate3d(
      calc((var(--faq-scene-p) - .5) * 5px),
      calc(sin(var(--faq-scene-p) * 3.14159) * -5px),
      0
    )
    rotate(calc((var(--faq-scene-p) - .5) * 5deg));
  transform-origin:center;
  will-change:transform;
}

.faq-side-note{
  width:145px;
  margin:33px 0 0 55px;
  color:#48222D;
  opacity:calc(.25 + var(--faq-scene-p) * .6);
  transform:
    translateY(calc((1 - var(--faq-scene-p)) * 8px))
    rotate(-3deg);
  pointer-events:none;
}

.faq-side-note svg{
  display:block;
  width:130px;
  height:auto;
}

.faq-side-note path{
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.faq-side-note span{
  display:block;
  margin:-3px 0 0 33px;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:14px;
  line-height:.84;
}

.faq-item{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(72,34,45,.055)!important;
  box-shadow:
    0 4px 0 rgba(255,255,255,.20) inset,
    0 8px 18px rgba(72,34,45,.025)!important;
  transition:
    border-radius .34s ease,
    transform .34s cubic-bezier(.22,.61,.36,1),
    box-shadow .34s ease,
    background .34s ease!important;
}

.faq-item:before{
  content:attr(data-faq-index);
  position:absolute;
  left:24px;
  top:25px;
  z-index:2;
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border-radius:50%;
  background:#EAE5DF;
  color:rgba(72,34,45,.58);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:7px;
  font-weight:800;
  letter-spacing:.04em;
  pointer-events:none;
  transition:
    background .28s ease,
    color .28s ease,
    transform .34s ease;
}

.faq-question{
  padding-left:66px!important;
  transition:color .25s ease!important;
}

.faq-item.is-open{
  background:#F8F5F0!important;
  border-color:rgba(72,34,45,.14)!important;
  box-shadow:
    0 17px 32px rgba(72,34,45,.07),
    0 4px 0 rgba(255,255,255,.24) inset!important;
  transform:translateY(-2px);
}

.faq-item.is-open:before{
  background:#48222D;
  color:#fff;
  transform:rotate(-4deg);
}

.faq-answer-inner{
  position:relative;
  padding-left:66px!important;
}

.faq-answer-inner:before{
  content:"";
  position:absolute;
  left:66px;
  right:30px;
  top:0;
  height:1px;
  background:rgba(72,34,45,.10);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .42s cubic-bezier(.22,.61,.36,1);
}

.faq-item.is-open .faq-answer-inner:before{
  transform:scaleX(1);
}

.faq-plus{
  border:1px solid rgba(72,34,45,.14);
  border-radius:50%;
  transition:
    background .28s ease,
    border-color .28s ease,
    transform .28s ease!important;
}

.faq-item.is-open .faq-plus{
  background:#48222D;
  border-color:#48222D;
  transform:rotate(2deg);
}

.faq-item.is-open .faq-plus:before,
.faq-item.is-open .faq-plus:after{
  background:#fff!important;
}

.faq-cta{
  position:relative;
  overflow:hidden;
  box-shadow:0 10px 22px rgba(72,34,45,.10);
  transition:
    transform .28s ease,
    box-shadow .28s ease!important;
}

.faq-cta:after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:-42%;
  width:30%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);
  transform:skewX(-17deg);
  transition:left .55s ease;
}

@media(hover:hover) and (pointer:fine){
  .faq-item:not(.is-open):hover{
    transform:translateX(4px);
    border-color:rgba(72,34,45,.13)!important;
  }

  .faq-cta:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 28px rgba(72,34,45,.15);
  }

  .faq-cta:hover:after{
    left:115%;
  }
}

.contact-final{
  --contact-scene-p:0;
  --contact-wave-x:0px;
  --contact-phone-y:0px;
  --contact-tilt-x:0deg;
  --contact-tilt-y:0deg;
  min-height:760px!important;
  padding-top:76px!important;
}

.contact-wave{
  width:64%!important;
  height:330px!important;
  bottom:67px!important;
  transform:
    translate3d(var(--contact-wave-x),0,0)
    scaleX(1.035);
  transform-origin:right center;
  will-change:transform;
}

.contact-wave-fill{
  fill:#BBCBD8;
  opacity:.78;
}

.contact-wave-line{
  fill:none;
  stroke:#94B0C4;
  stroke-linecap:round;
  opacity:.55;
}

.contact-wave-line-a{
  stroke-width:3;
  stroke-dasharray:10 7;
  stroke-dashoffset:calc(var(--contact-scene-p) * -22px);
}

.contact-wave-line-b{
  stroke-width:1.5;
  opacity:.34;
  stroke-dasharray:4 7;
  stroke-dashoffset:calc(var(--contact-scene-p) * 16px);
}

.contact-final-kicker{
  width:max-content;
  margin:0 auto 13px;
  padding:5px 8px 4px;
  border:1px solid rgba(72,34,45,.20);
  border-radius:2px;
  color:rgba(72,34,45,.62);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:6px;
  line-height:1;
  font-weight:800;
  letter-spacing:.14em;
  transform:rotate(-2deg);
}

.contact-final-inner h2{
  margin-bottom:33px!important;
  font-size:30px!important;
  font-weight:520!important;
}

.contact-phone-wrap{
  position:relative;
  z-index:4;
  transform:
    translate3d(0,var(--contact-phone-y),0)
    perspective(1000px)
    rotateX(var(--contact-tilt-x))
    rotateY(var(--contact-tilt-y));
  transform-origin:center 75%;
  will-change:transform;
}

.contact-phone{
  width:352px!important;
  height:486px!important;
  padding:8px!important;
  border:2px solid #111!important;
  border-radius:52px!important;
  background:#111!important;
  box-shadow:
    0 32px 54px rgba(31,26,28,.18),
    0 5px 0 rgba(255,255,255,.05) inset!important;
}

.contact-phone-screen{
  position:relative;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:44px;
  background:
    radial-gradient(circle at 75% 13%,rgba(187,203,216,.27),transparent 30%),
    linear-gradient(165deg,#242126 0%,#141316 56%,#0f0e10 100%);
  color:#fff;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.contact-status{
  position:absolute;
  z-index:6;
  left:21px;
  right:21px;
  top:11px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:21px;
  font-size:9px;
  font-weight:650;
}

.contact-status-icons{
  display:flex;
  align-items:center;
  gap:6px;
}

.contact-signal{
  width:13px;
  height:8px;
  background:
    linear-gradient(to top,
      #fff 0 100%) left bottom/2px 3px no-repeat,
    linear-gradient(to top,
      #fff 0 100%) 4px bottom/2px 5px no-repeat,
    linear-gradient(to top,
      #fff 0 100%) 8px bottom/2px 7px no-repeat,
    linear-gradient(to top,
      #fff 0 100%) 12px bottom/2px 8px no-repeat;
}

.contact-wifi{
  width:12px;
  height:8px;
  border-top:1.5px solid #fff;
  border-radius:50% 50% 0 0;
  position:relative;
}

.contact-wifi:after{
  content:"";
  position:absolute;
  left:4.5px;
  top:4px;
  width:3px;
  height:3px;
  border-radius:50%;
  background:#fff;
}

.contact-battery{
  position:relative;
  width:16px;
  height:8px;
  border:1px solid rgba(255,255,255,.8);
  border-radius:2px;
}

.contact-battery:before{
  content:"";
  position:absolute;
  right:1px;
  top:1px;
  bottom:1px;
  width:10px;
  border-radius:1px;
  background:#fff;
}

.contact-battery:after{
  content:"";
  position:absolute;
  right:-3px;
  top:2px;
  width:2px;
  height:4px;
  border-radius:0 1px 1px 0;
  background:rgba(255,255,255,.7);
}

.contact-dynamic-island{
  position:absolute;
  z-index:7;
  left:50%;
  top:10px;
  width:86px;
  height:23px;
  border-radius:99px;
  background:#050505;
  transform:translateX(-50%);
}

.contact-profile{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding-top:58px;
}

.contact-profile .contact-avatar{
  width:72px!important;
  height:72px!important;
  margin:0 0 12px;
  background:
    radial-gradient(circle at 35% 30%,#9c9a9e,#68656c 65%,#4b494e);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 9px 22px rgba(0,0,0,.24);
  font-size:27px!important;
}

.contact-profile small{
  margin-bottom:3px;
  font-size:8px;
  letter-spacing:.07em;
  text-transform:uppercase;
  color:rgba(255,255,255,.43);
}

.contact-profile strong{
  font-size:21px;
  line-height:1.1;
  font-weight:620;
}

.contact-number{
  margin-top:5px;
  color:rgba(255,255,255,.74);
  text-decoration:none;
  font-size:12px;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.01em;
}

.contact-actions{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin:24px 14px 0;
}

.contact-action{
  min-width:0;
  color:#fff;
  text-decoration:none;
  text-align:center;
  font-size:7px;
  line-height:1.1;
  transition:transform .28s cubic-bezier(.22,.61,.36,1);
}

.contact-action-icon{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  margin:0 auto 7px;
  border-radius:18px;
  box-shadow:
    0 8px 16px rgba(0,0,0,.17),
    inset 0 1px 0 rgba(255,255,255,.17);
  transition:
    transform .28s cubic-bezier(.22,.61,.36,1),
    box-shadow .28s ease;
}

.contact-action-icon svg{
  width:24px;
  height:24px;
  fill:#fff;
}

.contact-call .contact-action-icon{background:#343137}
.contact-wa .contact-action-icon{background:#2DBD54}
.contact-tg .contact-action-icon{background:#2A9DDB}
.contact-mail .contact-action-icon{background:#48222D}

.contact-message{
  margin:27px 14px 0;
  padding:13px 15px 14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(255,255,255,.055);
}

.contact-message span{
  display:block;
  margin-bottom:4px;
  font-size:7px;
  color:rgba(255,255,255,.43);
}

.contact-message p{
  margin:0;
  font-size:11px;
  line-height:1.35;
  color:rgba(255,255,255,.90);
}

.contact-home-indicator{
  position:absolute;
  left:50%;
  bottom:8px;
  width:104px;
  height:4px;
  border-radius:99px;
  background:rgba(255,255,255,.88);
  transform:translateX(-50%);
}

.contact-float-label{
  position:absolute;
  z-index:6;
  padding:6px 9px 5px;
  border:1px solid rgba(72,34,45,.18);
  border-radius:2px;
  background:#EAE5DF;
  color:#48222D;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:6px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  box-shadow:0 7px 15px rgba(72,34,45,.07);
  pointer-events:none;
}

.contact-float-label-a{
  left:-76px;
  top:78px;
  transform:rotate(-5deg);
}

.contact-float-label-b{
  right:-95px;
  bottom:100px;
  transform:rotate(4deg);
}

.contact-final-caption{
  margin-top:16px!important;
  font-size:8px!important;
  letter-spacing:.02em;
}

@media(hover:hover) and (pointer:fine){
  .contact-action:hover{
    transform:translateY(-3px);
  }

  .contact-action:hover .contact-action-icon{
    transform:scale(1.045);
    box-shadow:
      0 12px 22px rgba(0,0,0,.22),
      inset 0 1px 0 rgba(255,255,255,.20);
  }

  .contact-number:hover{
    color:#fff;
  }
}

@media(max-width:1199px){
  .faq-kicker{
    font-size:5.5px;
  }

  .faq-side-note{
    display:none;
  }

  .faq-item:before{
    left:15px;
    top:18px;
    width:23px;
    height:23px;
  }

  .faq-question{
    padding-left:50px!important;
  }

  .faq-answer-inner{
    padding-left:50px!important;
  }

  .faq-answer-inner:before{
    left:50px;
    right:18px;
  }

  .contact-final{
    min-height:650px!important;
    padding-top:58px!important;
  }

  .contact-final-inner h2{
    margin-bottom:27px!important;
    font-size:22px!important;
  }

  .contact-wave{
    width:100%!important;
    height:240px!important;
    bottom:78px!important;
  }

  .contact-phone{
    width:270px!important;
    height:400px!important;
    border-radius:43px!important;
  }

  .contact-phone-screen{
    border-radius:36px;
  }

  .contact-profile{
    padding-top:49px;
  }

  .contact-profile .contact-avatar{
    width:58px!important;
    height:58px!important;
    margin-bottom:9px;
    font-size:22px!important;
  }

  .contact-profile strong{
    font-size:18px;
  }

  .contact-number{
    font-size:10px;
  }

  .contact-actions{
    gap:5px;
    margin:19px 9px 0;
  }

  .contact-action{
    font-size:6px;
  }

  .contact-action-icon{
    width:42px;
    height:42px;
    margin-bottom:5px;
    border-radius:14px;
  }

  .contact-action-icon svg{
    width:20px;
    height:20px;
  }

  .contact-message{
    margin:20px 10px 0;
    padding:11px 12px 12px;
  }

  .contact-message p{
    font-size:9px;
  }

  .contact-float-label{
    display:none;
  }

  .contact-final-caption{
    width:280px;
    line-height:1.3;
    word-break:break-word;
  }
}

@media(prefers-reduced-motion:reduce){
  .faq-section{
    --faq-scene-p:1!important;
  }

  .faq-bubble,
  .faq-side-note,
  .contact-phone-wrap,
  .contact-wave{
    transform:none!important;
  }

  .faq-item,
  .faq-plus,
  .contact-action,
  .contact-action-icon{
    transition:none!important;
  }
}

.flow-bridge{
  --bridge-p:0;
  position:relative;
  z-index:20;
  width:100%;
  height:68px;
  overflow:hidden;
  pointer-events:none;
}

.flow-bridge-inner{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:calc(.22 + var(--bridge-p) * .78);
  transform:translateY(calc((1 - var(--bridge-p)) * 8px));
}

.flow-bridge-copy{
  position:relative;
  z-index:5;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:7px;
  line-height:1;
  font-weight:800;
  letter-spacing:.15em;
  white-space:nowrap;
}

.flow-bridge svg{
  overflow:visible;
}

.flow-bridge path{
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:310;
  stroke-dashoffset:calc(310 - var(--bridge-p) * 310);
}
.flow-team-portfolio{
  margin-top:-1px;
  margin-bottom:-1px;
  background:#EAE5DF;
}

.flow-team-portfolio:after{
  content:"";
  position:absolute;
  left:-4%;
  right:-4%;
  bottom:-1px;
  height:53px;
  background:#48222D;
  clip-path:ellipse(68% 70% at 55% 100%);
}

.flow-team-portfolio .flow-bridge-inner{
  justify-content:flex-end;
  gap:11px;
  width:min(1200px,calc(100% - 80px));
  margin:0 auto;
  padding-right:6%;
}

.flow-team-portfolio .flow-bridge-copy{
  margin-top:-19px;
  color:#48222D;
  transform:rotate(-2deg);
}

.flow-team-portfolio .flow-bridge-doodle{
  z-index:4;
  width:170px;
  margin-top:-8px;
}

.flow-team-portfolio path{
  stroke:#48222D;
  stroke-width:2;
}
.flow-portfolio-quiz{
  margin-top:-1px;
  margin-bottom:-1px;
  height:76px;
  background:#48222D;
}

.flow-portfolio-quiz:after{
  content:"";
  position:absolute;
  left:-2%;
  right:-2%;
  bottom:-1px;
  height:52px;
  background:#EAE5DF;
  clip-path:polygon(
    0 34%, 7% 28%, 14% 36%, 22% 26%, 31% 34%,
    40% 24%, 49% 33%, 59% 25%, 69% 36%, 79% 27%,
    89% 34%, 100% 25%, 100% 100%, 0 100%
  );
}

.flow-portfolio-quiz .flow-bridge-inner{
  z-index:3;
  flex-direction:column;
  gap:0;
}

.flow-portfolio-quiz .flow-bridge-scribble{
  width:215px;
  height:35px;
  transform:translateX(calc((var(--bridge-p) - .5) * 18px));
}

.flow-portfolio-quiz path{
  stroke:#BBCBD8;
  stroke-width:2.2;
}

.flow-portfolio-quiz .flow-bridge-copy{
  margin-top:-9px;
  color:#EAE5DF;
  transform:rotate(1.5deg);
}
.flow-contract-cost{
  height:68px;
  margin-top:-1px;
  margin-bottom:-1px;
  background:#EAE5DF;
}

.flow-contract-cost:after{
  content:"";
  position:absolute;
  left:-5%;
  right:-5%;
  bottom:-1px;
  height:54px;
  border-radius:55% 48% 0 0 / 75% 70% 0 0;
  background:#BBCBD8;
  transform:
    translateX(calc((var(--bridge-p) - .5) * 9px))
    rotate(-.6deg);
  transform-origin:center bottom;
}

.flow-contract-cost .flow-bridge-doodle{
  position:absolute;
  z-index:4;
  left:calc(50% - 270px);
  top:3px;
  width:190px;
}

.flow-contract-cost path{
  stroke:#48222D;
  stroke-width:2;
  opacity:.72;
}
.flow-faq-contact{
  height:64px;
  margin-top:-1px;
  margin-bottom:-1px;
  background:#BBCBD8;
}

.flow-faq-contact:after{
  content:"";
  position:absolute;
  left:-4%;
  right:-4%;
  bottom:-1px;
  height:48px;
  background:#EAE5DF;
  clip-path:ellipse(64% 72% at 50% 100%);
}

.flow-faq-contact .flow-bridge-inner{
  z-index:4;
  gap:7px;
  align-items:flex-start;
  padding-top:4px;
}

.flow-faq-contact .flow-bridge-heart{
  color:#48222D;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:24px;
  line-height:1;
  transform:
    translateY(calc((1 - var(--bridge-p)) * 5px))
    rotate(-8deg);
}

.flow-faq-contact .flow-bridge-scribble{
  width:165px;
  height:37px;
  transform:translateX(calc((var(--bridge-p) - .5) * -12px));
}

.flow-faq-contact path{
  stroke:#48222D;
  stroke-width:1.9;
  opacity:.68;
}
#calculator,
#faq,
#contact{
  scroll-margin-top:24px;
}

@media(max-width:1199px){
  .flow-bridge{
    height:44px;
  }

  .flow-team-portfolio:after,
  .flow-contract-cost:after{
    height:35px;
  }

  .flow-portfolio-quiz{
    height:50px;
  }

  .flow-portfolio-quiz:after{
    height:34px;
  }

  .flow-faq-contact{
    height:42px;
  }

  .flow-faq-contact:after{
    height:32px;
  }

  .flow-team-portfolio .flow-bridge-inner{
    width:280px;
    padding-right:0;
    justify-content:center;
  }

  .flow-team-portfolio .flow-bridge-copy{
    display:none;
  }

  .flow-team-portfolio .flow-bridge-doodle{
    width:125px;
    margin-top:-8px;
  }

  .flow-portfolio-quiz .flow-bridge-copy{
    font-size:5.5px;
  }

  .flow-portfolio-quiz .flow-bridge-scribble{
    width:155px;
    height:25px;
  }

  .flow-contract-cost .flow-bridge-doodle{
    left:calc(50% - 105px);
    top:-2px;
    width:132px;
  }

  .flow-faq-contact .flow-bridge-scribble{
    width:120px;
  }

  .flow-faq-contact .flow-bridge-heart{
    font-size:19px;
  }
}

@media(prefers-reduced-motion:reduce){
  .flow-bridge{
    --bridge-p:1!important;
  }

  .flow-bridge-inner,
  .flow-bridge svg,
  .flow-bridge:after{
    transform:none!important;
  }
}
@media(max-width:1199px){
  html,
  body{
    max-width:100%;
    overflow-x:clip;
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
  }

  button,
  a{
    -webkit-tap-highlight-color:transparent;
  }
  .calc{
    right:max(12px,env(safe-area-inset-right))!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    width:56px!important;
    height:56px!important;
    font-size:6.5px!important;
    line-height:1.08!important;
    letter-spacing:0!important;
    box-shadow:0 7px 17px rgba(72,34,45,.16);
  }

  .calc i{
    animation:none!important;
    transform:scale(1.07)!important;
    opacity:.40!important;
    border-width:1px!important;
  }

  .calc.is-mobile-context-hidden{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:scale(.82)!important;
  }
  .showreel-sound{
    min-height:44px!important;
    padding:12px 17px 11px!important;
  }
  .reviews-arrow{
    width:44px!important;
    height:44px!important;
    flex:0 0 44px!important;
  }
  .reviews-track{
    padding-left:20px!important;
  }
  .contact-actions .contact-mail{
    grid-column:auto!important;
    grid-row:auto!important;
    background:transparent!important;
    font-size:7px!important;
  }

  .contact-actions .contact-mail .contact-action-icon{
    background:#48222D!important;
  }

  .contact-actions{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }

  .contact-action{
    min-width:0!important;
    font-size:7px!important;
  }

  .contact-action-icon{
    width:44px!important;
    height:44px!important;
    border-radius:14px!important;
  }

  .contact-final-caption{
    max-width:280px!important;
    padding:0 8px!important;
    font-size:8.5px!important;
    line-height:1.35!important;
  }

  .site-footer{
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .site-footer span,
  .site-footer strong{
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  button:focus-visible,
  a:focus-visible,
  input:focus-visible{
    outline:2px solid currentColor;
    outline-offset:3px;
  }
}
.portfolio-note{
  display:none!important;
}

.portfolio-img{
  pointer-events:none!important;
}

.portfolio-photo-bg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  transform:none!important;
  transition:none!important;
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  -webkit-user-drag:none!important;
}
.portfolio-img img{
  display:none!important;
}

.portfolio-item:hover .portfolio-photo-bg,
.portfolio-item:focus .portfolio-photo-bg,
.portfolio-item:active .portfolio-photo-bg{
  transform:none!important;
  filter:none!important;
}
.portfolio-item{
  cursor:default!important;
}

.portfolio-item:hover,
.portfolio-item:focus,
.portfolio-item:active{
  transform:none!important;
}

.about-pattern > .about-pattern-row{
  position:relative;
  display:block;
  overflow:visible;
  transform:none!important;
}

.about-pattern-track{
  display:flex;
  width:max-content;
  will-change:transform;
  animation:aboutTickerLeft 21s linear infinite;
}

.about-pattern-copy{
  display:block;
  flex:0 0 auto;
  white-space:nowrap;
  padding-right:34px;
}
.about-pattern > .about-pattern-row:nth-child(even) .about-pattern-track{
  animation-name:aboutTickerRight;
  animation-duration:24s;
}
.about-pattern > .about-pattern-row:nth-child(3n) .about-pattern-track{
  animation-duration:26s;
  animation-delay:-6s;
}

.about-pattern > .about-pattern-row:nth-child(4n) .about-pattern-track{
  animation-duration:22s;
  animation-delay:-10s;
}

.about-pattern > .about-pattern-row:nth-child(5n) .about-pattern-track{
  animation-delay:-14s;
}

@keyframes aboutTickerLeft{
  from{transform:translate3d(0,0,0);}
  to{transform:translate3d(-50%,0,0);}
}

@keyframes aboutTickerRight{
  from{transform:translate3d(-50%,0,0);}
  to{transform:translate3d(0,0,0);}
}

@media(max-width:1199px){
  .about-pattern-track{
    animation-duration:24s;
  }

  .about-pattern > .about-pattern-row:nth-child(even) .about-pattern-track{
    animation-duration:27s;
  }

  .about-pattern-copy{
    padding-right:26px;
  }
}

@media(prefers-reduced-motion:reduce){
  .about-pattern-track{
    animation:none!important;
    transform:none!important;
  }
}

.team-bg-pattern > .team-pattern-row{
  position:relative;
  display:block;
  height:96px;
  overflow:visible;
  transform:none!important;
  will-change:auto!important;
}

.team-pattern-track{
  display:flex;
  width:max-content;
  will-change:transform;
  animation:teamTickerLeft 22s linear infinite;
}

.team-pattern-copy{
  display:block;
  flex:0 0 auto;
  white-space:nowrap;
  padding-right:46px;
}
.team-bg-pattern > .team-pattern-row:nth-child(even) .team-pattern-track{
  animation-name:teamTickerRight;
  animation-duration:25s;
}

.team-bg-pattern > .team-pattern-row:nth-child(3n) .team-pattern-track{
  animation-duration:27s;
  animation-delay:-7s;
}

.team-bg-pattern > .team-pattern-row:nth-child(4n) .team-pattern-track{
  animation-duration:23s;
  animation-delay:-11s;
}

.team-bg-pattern > .team-pattern-row:nth-child(5n) .team-pattern-track{
  animation-delay:-15s;
}

@keyframes teamTickerLeft{
  from{transform:translate3d(0,0,0);}
  to{transform:translate3d(-50%,0,0);}
}

@keyframes teamTickerRight{
  from{transform:translate3d(-50%,0,0);}
  to{transform:translate3d(0,0,0);}
}

.portfolio-word{
  left:0!important;
  right:0!important;
  width:100%!important;
  max-width:none!important;
  overflow:hidden!important;
  gap:0!important;
  transform:rotate(-2deg)!important;
  will-change:auto!important;
}

.portfolio-word-track{
  display:flex;
  width:max-content;
  will-change:transform;
  animation:portfolioTickerLeft 25s linear infinite;
}

.portfolio-word-group{
  display:flex;
  flex:0 0 auto;
  gap:45px;
  padding-right:45px;
}

@keyframes portfolioTickerLeft{
  from{transform:translate3d(0,0,0);}
  to{transform:translate3d(-50%,0,0);}
}

@media(max-width:1199px){
  .team-bg-pattern > .team-pattern-row{
    height:64px;
  }

  .team-pattern-track{
    animation-duration:25s;
  }

  .team-bg-pattern > .team-pattern-row:nth-child(even) .team-pattern-track{
    animation-duration:28s;
  }

  .team-pattern-copy{
    padding-right:32px;
  }

  .portfolio-word-group{
    gap:25px;
    padding-right:25px;
  }

  .portfolio-word-track{
    animation-duration:28s;
  }
}

@media(prefers-reduced-motion:reduce){
  .team-pattern-track,
  .portfolio-word-track{
    animation:none!important;
    transform:none!important;
  }
}
.quiz-noise,
.benefits-noise,
.contract-ref-noise,
.contact-final-noise{
  -webkit-mask-image:linear-gradient(
    to bottom,
    transparent 0,
    transparent 18px,
    #000 105px,
    #000 calc(100% - 105px),
    transparent calc(100% - 18px),
    transparent 100%
  )!important;
  mask-image:linear-gradient(
    to bottom,
    transparent 0,
    transparent 18px,
    #000 105px,
    #000 calc(100% - 105px),
    transparent calc(100% - 18px),
    transparent 100%
  )!important;
}
.portfolio-noise{
  -webkit-mask-image:linear-gradient(
    to bottom,
    transparent 0,
    transparent 16px,
    #000 110px,
    #000 calc(100% - 110px),
    transparent calc(100% - 16px),
    transparent 100%
  )!important;
  mask-image:linear-gradient(
    to bottom,
    transparent 0,
    transparent 16px,
    #000 110px,
    #000 calc(100% - 110px),
    transparent calc(100% - 16px),
    transparent 100%
  )!important;
}
.cost-noise,
.reviews-carousel-section .reviews-noise,
.faq-noise{
  -webkit-mask-image:linear-gradient(
    to bottom,
    transparent 0,
    transparent 16px,
    #000 105px,
    #000 calc(100% - 105px),
    transparent calc(100% - 16px),
    transparent 100%
  )!important;
  mask-image:linear-gradient(
    to bottom,
    transparent 0,
    transparent 16px,
    #000 105px,
    #000 calc(100% - 105px),
    transparent calc(100% - 16px),
    transparent 100%
  )!important;
}
.about-left:after,
.about-right:before{
  -webkit-mask-image:linear-gradient(
    to bottom,
    transparent 0,
    #000 95px,
    #000 calc(100% - 95px),
    transparent 100%
  )!important;
  mask-image:linear-gradient(
    to bottom,
    transparent 0,
    #000 95px,
    #000 calc(100% - 95px),
    transparent 100%
  )!important;
}
.cost-stage{
  background:#BBCBD8!important;
}

.contract-ref-bottom,
.flow-contract-cost:after{
  background:#BBCBD8!important;
}
.flow-team-portfolio{
  background:#EAE5DF!important;
}
.flow-team-portfolio:after{
  background:#48222D!important;
}

.flow-portfolio-quiz{
  background:#48222D!important;
}
.flow-portfolio-quiz:after{
  background:#EAE5DF!important;
}

.flow-contract-cost{
  background:#EAE5DF!important;
}

.flow-faq-contact{
  background:#BBCBD8!important;
}
.flow-faq-contact:after{
  background:#EAE5DF!important;
}
.flow-bridge{
  margin-top:-2px!important;
  margin-bottom:-2px!important;
}
@media(max-width:1199px){
  .quiz-noise,
  .benefits-noise,
  .contract-ref-noise,
  .contact-final-noise,
  .portfolio-noise,
  .cost-noise,
  .reviews-carousel-section .reviews-noise,
  .faq-noise{
    -webkit-mask-image:linear-gradient(
      to bottom,
      transparent 0,
      #000 56px,
      #000 calc(100% - 56px),
      transparent 100%
    )!important;
    mask-image:linear-gradient(
      to bottom,
      transparent 0,
      #000 56px,
      #000 calc(100% - 56px),
      transparent 100%
    )!important;
  }

  .about-left:after,
  .about-right:before{
    -webkit-mask-image:linear-gradient(
      to bottom,
      transparent 0,
      #000 50px,
      #000 calc(100% - 50px),
      transparent 100%
    )!important;
    mask-image:linear-gradient(
      to bottom,
      transparent 0,
      #000 50px,
      #000 calc(100% - 50px),
      transparent 100%
    )!important;
  }
}
.quiz-consent{
  position:relative;
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:10px;
  align-items:start;
  margin:2px 0 0;
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}
.quiz-consent-input{
  position:absolute;
  width:1px;height:1px;
  opacity:0;
  pointer-events:none;
}
.quiz-consent-box{
  position:relative;
  display:block;
  width:20px;height:20px;
  margin-top:1px;
  border:1.5px solid rgba(72,34,45,.45);
  border-radius:5px;
  background:#fff;
  transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.quiz-consent-input:checked + .quiz-consent-box{
  border-color:#48222D;
  background:#48222D;
}
.quiz-consent-input:checked + .quiz-consent-box:after{
  content:"";
  position:absolute;
  left:6px;top:2.5px;
  width:5px;height:10px;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:rotate(42deg);
}
.quiz-consent-input:focus-visible + .quiz-consent-box{
  outline:2px solid #48222D;
  outline-offset:2px;
}
.quiz-consent-text{
  font-size:10px;
  line-height:1.42;
  color:rgba(23,23,23,.72);
}
.quiz-consent-text a,
.quiz-privacy-note a{
  color:#48222D;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}
.quiz-privacy-note{
  margin-top:7px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:8.5px;
  line-height:1.42;
  color:rgba(23,23,23,.52);
}
.quiz-consent.is-error .quiz-consent-box{
  border-color:#A33333;
  box-shadow:0 0 0 3px rgba(163,51,51,.10);
}
.quiz-consent.is-error .quiz-consent-text{color:#8F2E2E}

.site-footer{
  grid-template-rows:auto auto;
  row-gap:7px;
  padding-top:13px;
  padding-bottom:13px;
}
.site-footer-legal{
  grid-column:1 / -1;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:7px 18px;
}
.site-footer-legal a{
  color:rgba(23,23,23,.54);
  text-decoration:none;
  font-size:8px;
  line-height:1.3;
}
.site-footer-legal a:hover{
  text-decoration:underline;
  text-underline-offset:2px;
}
@media(max-width:1199px){
  .quiz-consent{grid-template-columns:22px minmax(0,1fr);gap:9px}
  .quiz-consent-text{font-size:9px}
  .quiz-privacy-note{font-size:8px}
  .site-footer{
    grid-template-columns:1fr;
    grid-template-rows:auto;
    justify-items:center;
    gap:7px;
    min-height:0;
    padding:17px 20px;
    text-align:center;
  }
  .site-footer-legal{
    grid-column:auto;
    flex-direction:column;
    gap:5px;
  }
  .site-footer-legal a{font-size:7.5px}
}

.entry-consent[hidden]{
  display:none!important;
}

.entry-consent{
  position:fixed;
  inset:0;
  z-index:100000;
  display:grid;
  place-items:center;
  padding:24px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}

.entry-consent-backdrop{
  position:absolute;
  inset:0;
  background:rgba(23,18,21,.56);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.entry-consent-card{
  position:relative;
  z-index:2;
  width:min(520px,calc(100vw - 36px));
  padding:34px 32px 28px;
  border-radius:20px;
  background:#EAE5DF;
  color:#171717;
  box-shadow:0 30px 90px rgba(23,18,21,.28);
  overflow:hidden;
}

.entry-consent-card:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:url("assets/reference-noise.jpg") repeat;
  background-size:170px;
  opacity:.045;
}

.entry-consent-card > *{
  position:relative;
  z-index:1;
}

.entry-consent-kicker{
  margin-bottom:10px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
  color:#48222D;
}

.entry-consent-card h2{
  margin:0 34px 18px 0;
  font-family:"HeroSameFont",Arial,sans-serif!important;
  font-size:42px;
  line-height:.92;
  font-weight:400!important;
  letter-spacing:-.035em;
  color:#48222D;
  text-transform:uppercase;
}

.entry-consent-card p{
  margin:0;
  font-size:13px;
  line-height:1.55;
  color:rgba(23,23,23,.76);
}

.entry-consent-close{
  position:absolute;
  z-index:3;
  right:18px;
  top:14px;
  width:36px;
  height:36px;
  border:0;
  border-radius:50%;
  background:rgba(72,34,45,.08);
  color:#48222D;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}

.entry-consent-links{
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
  margin-top:18px;
}

.entry-consent-links a{
  color:#48222D;
  font-size:10px;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:2px;
}

.entry-consent-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:9px;
  margin-top:22px;
}

.entry-consent-accept,
.entry-consent-decline{
  min-height:48px;
  border-radius:999px;
  padding:0 18px;
  cursor:pointer;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:11px;
  font-weight:800;
  letter-spacing:.03em;
}

.entry-consent-accept{
  border:1px solid #48222D;
  background:#48222D;
  color:#fff;
}

.entry-consent-decline{
  border:1px solid rgba(72,34,45,.18);
  background:transparent;
  color:#48222D;
}

.entry-consent-note{
  margin-top:13px;
  font-size:8.5px;
  line-height:1.45;
  color:rgba(23,23,23,.50);
}

body.entry-consent-open{
  overflow:hidden!important;
}
.showreel-choice{
  display:none!important;
}
.showreel-ring{
  display:block!important;
}
.showreel-arrow{
  display:block!important;
}
.entry-consent{
  pointer-events:auto!important;
  touch-action:manipulation;
}

.entry-consent-backdrop{
  z-index:0!important;
  pointer-events:auto!important;
  touch-action:manipulation;
}

.entry-consent-card{
  z-index:10!important;
  pointer-events:auto!important;
  isolation:isolate!important;
}

.entry-consent-card:before{
  pointer-events:none!important;
}

.entry-consent-card button,
.entry-consent-card a,
.entry-consent-card input,
.entry-consent-card label{
  position:relative;
  z-index:20!important;
  pointer-events:auto!important;
}

.entry-consent-accept,
.entry-consent-decline,
.entry-consent-close{
  cursor:pointer!important;
  touch-action:manipulation!important;
  -webkit-user-select:none!important;
  user-select:none!important;
}
.entry-consent[hidden]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.entry-consent:not([hidden]){
  visibility:visible!important;
  pointer-events:auto!important;
}

.entry-consent:not([hidden]) .entry-consent-card{
  pointer-events:auto!important;
}

.entry-consent:not([hidden]) .entry-consent-accept,
.entry-consent:not([hidden]) .entry-consent-decline,
.entry-consent:not([hidden]) .entry-consent-close{
  pointer-events:auto!important;
  -webkit-tap-highlight-color:transparent;
}
.entry-consent:not([hidden]){
  display:grid!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
.entry-consent[hidden]{
  display:none!important;
}
.contact-actions{
  align-items:start!important;
}

.contact-action{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Arial,sans-serif!important;
  font-size:7.5px!important;
  font-weight:500!important;
  letter-spacing:-.01em!important;
  color:rgba(255,255,255,.92)!important;
}

.contact-action-icon{
  position:relative!important;
  overflow:hidden!important;
  border-radius:13px!important;
  box-shadow:
    0 1px 0 rgba(255,255,255,.22) inset,
    0 5px 12px rgba(0,0,0,.20)!important;
}

.contact-action-icon:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,0) 44%);
}

.contact-action-icon svg{
  position:relative;
  z-index:2;
  width:25px!important;
  height:25px!important;
  fill:#fff!important;
}
.contact-call .contact-action-icon{
  background:linear-gradient(180deg,#61D76A 0%,#22B83D 100%)!important;
}
.contact-wa .contact-action-icon{
  background:linear-gradient(180deg,#38DC70 0%,#19B950 100%)!important;
}
.contact-wa .contact-action-icon svg{
  width:28px!important;
  height:28px!important;
}
.contact-tg .contact-action-icon{
  background:linear-gradient(180deg,#55BCEB 0%,#2498D5 100%)!important;
}
.contact-tg .contact-action-icon svg{
  width:27px!important;
  height:27px!important;
  transform:translate(-1px,1px);
}
.contact-mail .contact-action-icon{
  background:linear-gradient(180deg,#5CC8FF 0%,#1976F3 100%)!important;
}
.contact-mail .contact-action-icon svg{
  width:26px!important;
  height:26px!important;
}
.contact-actions{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
  margin-left:16px!important;
  margin-right:16px!important;
}
.contact-actions{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:8px!important;
  margin:24px 16px 0!important;
}

.contact-action{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex:0 0 62px!important;
  width:62px!important;
  max-width:62px!important;
  min-width:62px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  text-align:center!important;
  -webkit-tap-highlight-color:transparent!important;
  user-select:none!important;
}

.contact-action span:last-child{
  display:block!important;
  width:100%!important;
  margin-top:0!important;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Arial,sans-serif!important;
  font-size:6.8px!important;
  line-height:1.2!important;
  font-weight:500!important;
  color:rgba(255,255,255,.88)!important;
  letter-spacing:0!important;
}

.contact-action-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
  overflow:hidden!important;
  width:52px!important;
  height:52px!important;
  margin:0 auto 8px!important;
  border-radius:14px!important;
  background:#2b2b2b!important;
  box-shadow:
    0 8px 20px rgba(0,0,0,.18),
    0 1px 0 rgba(255,255,255,.20) inset,
    0 -6px 14px rgba(255,255,255,.06) inset!important;
}

.contact-action-icon::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,0) 38%);
  pointer-events:none;
}

.contact-action-icon::after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.08);
  pointer-events:none;
}

.contact-action-icon svg{
  position:relative!important;
  z-index:2!important;
  width:24px!important;
  height:24px!important;
  fill:#fff!important;
}

.contact-call .contact-action-icon{
  background:linear-gradient(180deg,#69e36b 0%,#31c755 58%,#20b449 100%)!important;
}
.contact-wa .contact-action-icon{
  background:linear-gradient(180deg,#54e779 0%,#25ca5a 58%,#15b84b 100%)!important;
}
.contact-tg .contact-action-icon{
  background:linear-gradient(180deg,#65cdf6 0%,#37aef0 55%,#1d93ea 100%)!important;
}
.contact-mail .contact-action-icon{
  background:linear-gradient(180deg,#71c8ff 0%,#479cff 55%,#2b78f7 100%)!important;
}

.contact-call .contact-action-icon svg{ width:23px!important; height:23px!important; }
.contact-wa .contact-action-icon svg{ width:26px!important; height:26px!important; }
.contact-tg .contact-action-icon svg{ width:25px!important; height:25px!important; transform:translate(-1px,1px)!important; }
.contact-mail .contact-action-icon svg{ width:24px!important; height:24px!important; }
@media(min-width:1200px){
  .team-card-4{
    left:74px!important;
    right:auto!important;
    top:660px!important;
    width:320px!important;
  }
  .team-card-4 .team-photo-wrap{
    height:480px!important;
  }

  .team-card-5{
    left:440px!important;
    right:auto!important;
    top:680px!important;
    width:320px!important;
  }
  .team-card-5 .team-photo-wrap{
    height:460px!important;
  }

  .team-card-6{
    position:absolute!important;
    z-index:2!important;
    right:74px!important;
    left:auto!important;
    top:660px!important;
    width:320px!important;
  }
  .team-card-6 .team-photo-wrap{
    height:480px!important;
  }
  .team-card-6 img{
    object-position:center 38%!important;
  }
  .team-card-6 .team-name{
    font-size:16.5px!important;
  }
}

.team-card-6:before{
  content:"06";
}
@media(min-width:1200px){

  .team-section{
    min-height:0!important;
    height:auto!important;
  }

  .team-shell{
    width:min(1180px,calc(100vw - 84px))!important;
    min-height:0!important;
    padding-top:64px!important;
    padding-bottom:118px!important;
  }

  .team-grid{
    position:relative!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:auto auto!important;
    gap:54px 42px!important;
    width:100%!important;
    height:auto!important;
    margin:42px auto 0!important;
    padding:0!important;
  }

  .team-card,
  .team-card-1,
  .team-card-2,
  .team-card-3,
  .team-card-4,
  .team-card-5,
  .team-card-6{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    width:100%!important;
    margin:0!important;
    align-self:start!important;
  }

  .team-card-1{grid-column:1!important;grid-row:1!important}
  .team-card-2{grid-column:2!important;grid-row:1!important}
  .team-card-3{grid-column:3!important;grid-row:1!important}
  .team-card-4{grid-column:1!important;grid-row:2!important}
  .team-card-5{grid-column:2!important;grid-row:2!important}
  .team-card-6{grid-column:3!important;grid-row:2!important}

  .team-photo-wrap,
  .team-card-1 .team-photo-wrap,
  .team-card-2 .team-photo-wrap,
  .team-card-3 .team-photo-wrap,
  .team-card-4 .team-photo-wrap,
  .team-card-5 .team-photo-wrap,
  .team-card-6 .team-photo-wrap{
    width:100%!important;
    height:auto!important;
    aspect-ratio:4 / 5!important;
    overflow:hidden!important;
  }

  .team-photo-wrap img,
  .team-card-1 img,
  .team-card-2 img,
  .team-card-3 img,
  .team-card-4 img,
  .team-card-5 img,
  .team-card-6 img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  .team-card-1 img{object-position:center 44%!important}
  .team-card-2 img{object-position:center 42%!important}
  .team-card-3 img{object-position:center 38%!important}
  .team-card-4 img{object-position:center 42%!important}
  .team-card-5 img{object-position:center 38%!important}
  .team-card-6 img{object-position:center 40%!important}

  .team-name,
  .team-card-6 .team-name{
    margin-top:12px!important;
    min-height:22px!important;
    font-size:16px!important;
    line-height:1.08!important;
    text-align:left!important;
  }

  .team-marquee{
    bottom:18px!important;
  }
}
@media(min-width:1200px){
  .team-bg-pattern{
    opacity:.072!important;
  }

  .team-bg-pattern > .team-pattern-row{
    height:102px!important;
  }

  .team-pattern-track{
    gap:0!important;
  }

  .team-pattern-copy{
    padding-right:96px!important;
  }

  .team-bg-pattern div,
  .team-pattern-row{
    letter-spacing:-.015em!important;
  }

  .team-marquee-track{
    gap:84px!important;
  }

  .team-marquee span{
    letter-spacing:-.02em!important;
  }
}
.team-pattern-word{
  display:block;
  flex:0 0 auto;
  white-space:nowrap;
}

@media(min-width:1200px){
  .team-bg-pattern{
    opacity:.068!important;
  }

  .team-bg-pattern > .team-pattern-row{
    height:102px!important;
    display:flex!important;
    align-items:center!important;
    overflow:hidden!important;
    transform:none!important;
  }

  .team-pattern-track{
    display:flex!important;
    align-items:center!important;
    width:max-content!important;
    gap:0!important;
    animation:teamTickerLeft 28s linear infinite!important;
    animation-delay:0s!important;
    will-change:transform!important;
  }

  .team-pattern-copy{
    display:flex!important;
    align-items:center!important;
    gap:112px!important;
    padding-right:112px!important;
    flex:0 0 auto!important;
  }

  .team-pattern-word{
    letter-spacing:-.015em!important;
  }

  .team-bg-pattern > .team-pattern-row:nth-child(even) .team-pattern-track,
  .team-bg-pattern > .team-pattern-row:nth-child(3n) .team-pattern-track,
  .team-bg-pattern > .team-pattern-row:nth-child(4n) .team-pattern-track,
  .team-bg-pattern > .team-pattern-row:nth-child(5n) .team-pattern-track{
    animation:teamTickerLeft 28s linear infinite!important;
    animation-delay:0s!important;
  }
}
.team-bg-pattern{
  display:none!important;
}

.team-marquee{
  display:block!important;
}
.entry-consent.entry-consent--banner{
  position:fixed!important;
  right:16px!important;
  bottom:calc(14px + env(safe-area-inset-bottom))!important;
  left:auto!important;
  top:auto!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:flex-end!important;
  width:auto!important;
  padding:0!important;
  z-index:100000!important;
  pointer-events:none!important;
}

.entry-consent.entry-consent--banner .entry-consent-backdrop{
  display:none!important;
}

.entry-consent.entry-consent--banner .entry-consent-card{
  width:min(320px, calc(100vw - 24px))!important;
  padding:12px 12px 10px!important;
  border-radius:14px!important;
  background:rgba(20,20,24,.82)!important;
  color:rgba(255,255,255,.9)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  overflow:hidden!important;
  pointer-events:auto!important;
}

.entry-consent.entry-consent--banner .entry-consent-card:before{
  opacity:.04!important;
}

.entry-consent.entry-consent--banner .entry-consent-kicker,
.entry-consent.entry-consent--banner .entry-consent-note,
.entry-consent.entry-consent--banner .entry-consent-links{
  display:none!important;
}

.entry-consent.entry-consent--banner .entry-consent-card h2{
  margin:0 28px 5px 0!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  color:rgba(255,255,255,.95)!important;
  text-transform:none!important;
}

.entry-consent.entry-consent--banner .entry-consent-card p{
  margin:0!important;
  font-size:10px!important;
  line-height:1.35!important;
  color:rgba(255,255,255,.72)!important;
}

.entry-consent.entry-consent--banner .entry-consent-card p a{
  color:rgba(255,255,255,.86)!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

.entry-consent.entry-consent--banner .entry-consent-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  margin-top:10px!important;
  align-items:center!important;
}

.entry-consent.entry-consent--banner .entry-consent-accept,
.entry-consent.entry-consent--banner .entry-consent-decline{
  min-height:36px!important;
  border-radius:999px!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
}

.entry-consent.entry-consent--banner .entry-consent-accept{
  padding:0 14px!important;
  border:1.2px solid rgba(255,255,255,.9)!important;
  background:transparent!important;
  color:#fff!important;
}

.entry-consent.entry-consent--banner .entry-consent-decline{
  min-width:64px!important;
  padding:0 12px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:rgba(255,255,255,.05)!important;
  color:rgba(255,255,255,.8)!important;
}

.entry-consent.entry-consent--banner .entry-consent-close{
  top:8px!important;
  right:8px!important;
  width:22px!important;
  height:22px!important;
  background:rgba(255,255,255,.05)!important;
  color:rgba(255,255,255,.66)!important;
  font-size:15px!important;
}

body.entry-consent-open{
  overflow:auto!important;
}
.entry-consent.entry-consent--banner{
  left:16px!important;
  right:auto!important;
  bottom:16px!important;
  top:auto!important;
  width:auto!important;
  justify-content:flex-start!important;
  align-items:flex-end!important;
  padding:0!important;
  pointer-events:none!important;
}

.entry-consent.entry-consent--banner .entry-consent-backdrop{
  display:none!important;
}

.entry-consent.entry-consent--banner .entry-consent-card{
  width:min(286px,calc(100vw - 24px))!important;
  padding:10px 10px 9px!important;
  border-radius:12px!important;
  background:rgba(20,20,24,.78)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.14)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  pointer-events:auto!important;
}

.entry-consent.entry-consent--banner .entry-consent-card h2{
  margin:0 22px 4px 0!important;
  font-size:10px!important;
  line-height:1.1!important;
}

.entry-consent.entry-consent--banner .entry-consent-card p{
  margin:0!important;
  font-size:9px!important;
  line-height:1.32!important;
}

.entry-consent.entry-consent--banner .entry-consent-actions{
  grid-template-columns:1fr auto!important;
  gap:6px!important;
  margin-top:8px!important;
}

.entry-consent.entry-consent--banner .entry-consent-accept,
.entry-consent.entry-consent--banner .entry-consent-decline{
  min-height:32px!important;
  font-size:8.5px!important;
}

.entry-consent.entry-consent--banner .entry-consent-accept{
  padding:0 11px!important;
}

.entry-consent.entry-consent--banner .entry-consent-decline{
  min-width:54px!important;
  padding:0 9px!important;
}

.entry-consent.entry-consent--banner .entry-consent-close{
  top:6px!important;
  right:6px!important;
  width:20px!important;
  height:20px!important;
  font-size:14px!important;
}

body.entry-consent-open{
  overflow:auto!important;
}


/* =====================================================================
   COST L-PATH V51 — DESKTOP
   Narrower card + Muksik pushed to the right + clear path lane.
   ===================================================================== */
@media(min-width:1200px){
  .cost-stage{
    min-height:600px!important;
  }

  .cost-content-row{
    width:min(1180px,calc(100% - 64px))!important;
    grid-template-columns:440px minmax(130px,1fr) 250px!important;
    gap:0!important;
    align-items:end!important;
    justify-items:stretch!important;
    padding-bottom:32px!important;
  }

  .cost-card{
    grid-column:1!important;
    width:440px!important;
    max-width:440px!important;
    justify-self:start!important;
    margin:0!important;
  }

  .cost-card-copy{
    padding:30px 34px 28px!important;
  }

  .cost-card li{
    font-size:12.5px!important;
    line-height:1.34!important;
    margin-bottom:7px!important;
  }

  .cost-button{
    height:44px!important;
    margin-top:20px!important;
  }

  .cost-pug{
    grid-column:3!important;
    width:232px!important;
    justify-self:end!important;
    align-self:end!important;
    margin:0 -28px -28px 0!important;
    transform:none!important;
  }

  .cost-treat{
    width:32px!important;
    z-index:12!important;
  }
}


/* ========================================================
   COST TREAT SIZE / SPEED V52 — DESKTOP
   Slightly larger treat.
   ======================================================== */
@media(min-width:1200px){
  .cost-treat{
    width:38px!important;
  }
}


/* ========================================================
   COST TREAT FINAL POLISH V53
   Larger treat on desktop and mobile.
   ======================================================== */
.cost-treat{
  width:52px!important;
}
@media(max-width:1199px){
  .cost-treat{
    width:40px!important;
  }
}


/* ========================================================
   COST DESKTOP CENTERING V60
   Desktop only: center the cost card in the middle and
   place the dog like the reference piggy-bank on the right.
   Mobile untouched.
   ======================================================== */
@media(min-width:1200px){
  .cost-stage{
    min-height:640px!important;
    overflow:hidden!important;
  }

  .cost-content-row{
    width:min(1180px,calc(100% - 64px))!important;
    display:flex!important;
    justify-content:center!important;
    align-items:flex-start!important;
    position:relative!important;
    padding-bottom:0!important;
  }

  .cost-card{
    grid-column:auto!important;
    justify-self:center!important;
    margin:0 auto!important;
  }

  .cost-pug{
    position:absolute!important;
    right:28px!important;
    bottom:-92px!important;
    width:286px!important;
    min-width:286px!important;
    margin:0!important;
    z-index:7!important;
    justify-self:auto!important;
  }
}
