.small-change-trigger{
  appearance:none;
  border:0;
  font:inherit;
  cursor:pointer;
}
.small-change-trigger--desktop{
  justify-self:end;
  width:clamp(120px,12vw,174px);
  min-height:42px;
  padding:0 14px 0 16px;
  border:2px solid #111;
  border-radius:999px;
  background:#de3847;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-size:clamp(8px,.68vw,11px)!important;
  font-weight:800!important;
  line-height:1!important;
  text-transform:uppercase;
  white-space:nowrap;
  transition:transform .18s ease,box-shadow .18s ease;
}
.small-change-trigger--desktop b{font-size:20px;line-height:1;transition:transform .25s ease}
.small-change-trigger--desktop:hover{transform:translateY(-2px);box-shadow:3px 3px 0 #111}
.small-change-trigger--desktop:hover b{transform:rotate(90deg)}
.small-change-trigger--mobile{display:none}

.osc-caption{
  position:fixed;
  z-index:2147482500;
  left:50%;
  bottom:clamp(22px,4vh,48px);
  width:min(680px,calc(100vw - 36px));
  transform:translate(-50%,18px);
  padding:17px 22px 18px;
  border:2px solid #fff;
  border-radius:15px;
  background:#111;
  color:#fff;
  box-shadow:6px 6px 0 #de3847;
  font-size:clamp(17px,2vw,27px)!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:-.035em;
  text-align:center;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
}
.osc-caption.is-visible{opacity:1;transform:translate(-50%,0)}
.osc-caption small{display:block;margin-top:8px;color:#de3847;font-size:10px!important;letter-spacing:.06em;text-transform:uppercase}
body.osc-running{overflow:hidden!important}
body.osc-running .small-change-trigger{pointer-events:none}

.osc-logo-actor{
  position:fixed;
  z-index:2147481800;
  left:50%;
  top:50%;
  width:clamp(180px,22vw,340px);
  height:auto;
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,-50%) scale(.45);
  filter:drop-shadow(0 0 0 rgba(0,0,0,0));
  transition:transform 1.05s cubic-bezier(.2,.8,.2,1),opacity .22s ease,filter .5s ease;
}
.osc-logo-actor.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.osc-logo-actor.is-bigger{transform:translate(-50%,-50%) scale(2.6);filter:drop-shadow(12px 16px 0 rgba(0,0,0,.16))}
.osc-logo-actor.is-biggest{transform:translate(-50%,-50%) scale(8.5);filter:drop-shadow(18px 24px 0 rgba(0,0,0,.22))}
body.osc-logo-crush .site-header,
body.osc-logo-crush .page,
body.osc-logo-crush [data-site-footer]{transform:scale(.82) translateY(9vh);filter:grayscale(1);transition:transform 1s ease,filter .8s ease}

/* The real navbar logo grows and the header reflows around it. */
.site-header,.site-brand,.site-logo,.site-nav{transition:height 1.05s cubic-bezier(.2,.8,.2,1),width 1.05s cubic-bezier(.2,.8,.2,1),padding 1.05s cubic-bezier(.2,.8,.2,1),gap 1.05s cubic-bezier(.2,.8,.2,1),transform 1.05s cubic-bezier(.2,.8,.2,1)}
body.osc-logo-stage-one .site-header{
  height:clamp(170px,25vh,250px);
  grid-template-columns:minmax(260px,1.3fr) auto minmax(120px,.55fr);
  padding:18px clamp(22px,3vw,48px);
}
body.osc-logo-stage-one .site-brand{
  width:clamp(260px,30vw,480px);
  height:clamp(126px,15vw,226px);
}
body.osc-logo-stage-one .site-logo{width:100%;height:100%}
body.osc-logo-stage-one .site-nav{gap:clamp(12px,2vw,30px)}
body.osc-logo-stage-two .site-header{
  height:min(66vh,620px);
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:minmax(0,1fr) auto;
  padding:22px clamp(24px,4vw,64px) 30px;
}
body.osc-logo-stage-two .site-brand{
  grid-column:1/-1;
  grid-row:1;
  align-self:center;
  justify-self:center;
  width:min(74vw,1050px);
  height:min(47vh,470px);
}
body.osc-logo-stage-two .site-logo{width:100%;height:100%}
body.osc-logo-stage-two .site-nav{grid-column:1;grid-row:2;justify-self:start;gap:clamp(14px,2.3vw,38px)}
body.osc-logo-stage-two .small-change-trigger--desktop{grid-column:2;grid-row:2;align-self:center}

body.osc-pop-inflate .site-header,
body.osc-pop-inflate .page,
body.osc-pop-inflate [data-site-footer]{animation:oscInflate 1.15s cubic-bezier(.2,.85,.2,1) both}
body.osc-pop-hidden .site-header,
body.osc-pop-hidden .page,
body.osc-pop-hidden [data-site-footer]{visibility:hidden}
.osc-particle-canvas{position:fixed;z-index:2147481700;inset:0;width:100%;height:100%;pointer-events:none;background:#fff}
@keyframes oscInflate{0%{transform:scale(1);filter:saturate(1)}72%{transform:scale(1.035);filter:saturate(1.4)}88%{transform:scale(.985)}100%{transform:scale(1.08);filter:saturate(1.8)}}

body.osc-fold .page,
body.osc-fold [data-site-footer]{
  width:100%;
  transform-origin:0 0;
  transform:scale(.16);
  box-shadow:0 0 0 12px #de3847,18px 18px 0 #111;
  transition:transform 1.25s cubic-bezier(.2,.8,.2,1),box-shadow .6s ease;
}

body.osc-premium{background:#2d1900!important}
body.osc-premium .site-header,
body.osc-premium .page,
body.osc-premium [data-site-footer]{
  background:linear-gradient(135deg,#fff9dd 0%,#b98218 38%,#fff1ae 52%,#7c4b00 100%)!important;
  color:#321d00!important;
  transition:background .8s ease,color .8s ease,filter .8s ease;
}
body.osc-premium *{font-family:Georgia,"Times New Roman",serif!important}
body.osc-premium img{filter:sepia(.75) contrast(1.12) saturate(1.35)}
body.osc-premium-extra .site-header,
body.osc-premium-extra .page,
body.osc-premium-extra [data-site-footer]{filter:drop-shadow(0 0 18px #ffd96b) saturate(1.35)}
.osc-sparkles{position:fixed;z-index:2147481600;inset:0;pointer-events:none;overflow:hidden}
.osc-sparkles i{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff1a8;box-shadow:0 0 14px 5px #ffcf40;animation:oscTwinkle 1.1s ease-in-out infinite alternate}
@keyframes oscTwinkle{from{opacity:.15;transform:scale(.5)}to{opacity:1;transform:scale(1.7)}}

body.osc-minimal-one .page img{opacity:0!important;transition:opacity .65s ease}
body.osc-minimal-two .page>*:not(:first-child),
body.osc-minimal-two [data-site-footer]{opacity:0!important;transition:opacity .65s ease}
body.osc-minimal-three .site-header,
body.osc-minimal-three .page,
body.osc-minimal-three [data-site-footer]{opacity:0!important;transition:opacity .65s ease}
.osc-minimal-dot{position:fixed;z-index:2147481700;left:50%;top:50%;width:13px;height:13px;border-radius:50%;background:#de3847;transform:translate(-50%,-50%) scale(0);box-shadow:0 0 0 1px #de3847;animation:oscDotArrive .4s ease forwards}
@keyframes oscDotArrive{to{transform:translate(-50%,-50%) scale(1)}}

@media(max-width:760px){
  .small-change-trigger--desktop{display:none}
  .small-change-trigger--mobile{
    width:100%;
    min-height:104px;
    margin:28px 0 8px;
    padding:18px 20px;
    border:2px solid #111;
    border-radius:14px;
    background:#de3847;
    color:#fff;
    box-shadow:5px 5px 0 #111;
    display:grid;
    grid-template-columns:1fr auto;
    grid-template-rows:auto 1fr;
    gap:7px 12px;
    text-align:left;
    transform:rotate(-.7deg);
  }
  .small-change-trigger--mobile small{grid-column:1/-1;font-size:9px!important;font-weight:700!important;letter-spacing:.09em;text-transform:uppercase;opacity:.8}
  .small-change-trigger--mobile strong{align-self:end;font-size:25px!important;line-height:.92!important;letter-spacing:-.045em;text-transform:none}
  .small-change-trigger--mobile span{align-self:end;font-size:25px!important;line-height:1}
  .osc-caption{bottom:18px;padding:15px 17px 16px;border-radius:12px;font-size:20px!important;box-shadow:4px 4px 0 #de3847}
  .osc-logo-actor{width:min(52vw,230px)}
  .osc-logo-actor.is-bigger{transform:translate(-50%,-50%) scale(2.2)}
  .osc-logo-actor.is-biggest{transform:translate(-50%,-50%) scale(6.2)}
  body.osc-fold .page,body.osc-fold [data-site-footer]{transform:scale(.22);box-shadow:0 0 0 7px #de3847,10px 10px 0 #111}
  body.osc-logo-stage-one .site-header{
    height:180px;
    grid-template-columns:1fr auto;
    padding:14px 16px 14px 18px;
  }
  body.osc-logo-stage-one .site-brand{width:min(72vw,300px);height:142px}
  body.osc-logo-stage-one .site-nav{top:180px}
  body.osc-logo-stage-two .site-header{
    height:56vh;
    min-height:330px;
    grid-template-columns:1fr auto;
    grid-template-rows:1fr;
    padding:16px;
  }
  body.osc-logo-stage-two .site-brand{
    grid-column:1/-1;
    grid-row:1;
    align-self:center;
    justify-self:center;
    width:90vw;
    height:min(44vh,390px);
  }
  body.osc-logo-stage-one .menu-toggle,body.osc-logo-stage-two .menu-toggle{position:absolute;top:18px;right:16px}
  body.osc-logo-stage-two .site-nav{top:56vh}
}

@media(prefers-reduced-motion:reduce){
  .site-header,.site-brand,.site-logo,.site-nav,.osc-logo-actor,.osc-caption,body.osc-logo-crush .site-header,body.osc-logo-crush .page,body.osc-logo-crush [data-site-footer],body.osc-fold .page,body.osc-fold [data-site-footer]{transition-duration:.01ms!important}
  body.osc-pop-inflate .site-header,body.osc-pop-inflate .page,body.osc-pop-inflate [data-site-footer],.osc-sparkles i,.osc-minimal-dot{animation:none!important}
}
