@font-face {
  font-family:Pretendard;
  src:url('../assets/PretendardVariable.woff2');
  font-weight:100 900;
  font-display:swap}
* {
  box-sizing:border-box}
html {
  scroll-behavior:smooth;
  scroll-padding-top:120px}
body {
  margin:0;
  background:#070d17;
  color:#f3f2ee;
  font-family:Pretendard,sans-serif;
  overflow-x:hidden}
body.intro-active {
  overflow:hidden}
a {
  color:inherit;
  text-decoration:none}
button,input,select,textarea {
  font:inherit}
button,a,summary,select {
  touch-action:manipulation}
button {
  cursor:pointer}
button {
  color:inherit}
h1,h2,h3,h4,p {
  margin:0}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {
  outline:2px solid #e3c794;
  outline-offset:6px}
::selection {
  background:#c9b189;
  color:#070d17}
.skip {
  position:fixed;
  top:-100px;
  left:20px;
  z-index:200;
  background:#f2e5c9;
  color:#080d17;
  padding:12px}
.skip:focus {
  top:20px}
.eyebrow {
  font-size:11px;
  letter-spacing:2.6px;
  color:#c5b394;
  line-height:1.7}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  min-height:56px;
  padding:15px 24px;
  background:#d4c19f;
  color:#111723;
  border:1px solid #d4c19f;
  border-radius:2px;
  font-size:14px;
  font-weight:600;
  transition:background .3s,box-shadow .3s,transform .3s}
.button:hover {
  background:#eedaba;
  box-shadow:0 0 35px #c9b18926;
  transform:translateY(-2px)}
.button span,.quiet-link span {
  font-size:22px;
  font-weight:300}
.quiet-link {
  display:inline-flex;
  align-items:center;
  gap:22px;
  font-size:14px}
.quiet-link:hover {
  color:#dac59e}
.line-link {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:1px solid #66707a;
  padding:16px 0;
  font-size:14px}
.line-link:hover {
  color:#dfcba4}
.section {
  padding:120px max(7vw,24px)}
h2 {
  font-weight:450;
  font-size:clamp(32px,4vw,58px);
  letter-spacing:-2px;
  line-height:1.35}
h2 em {
  font-style:normal;
  color:#cbb592}
.header {
  position:fixed;
  z-index:30;
  top:24px;
  left:7%;
  width:86%;
  max-width:1600px;
  padding:16px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border:1px solid #a2b0c025;
  border-radius:70px;
  background:#080e18b8;
  backdrop-filter:blur(18px);
  transition:background .3s}
.brand {
  font-size:28px;
  font-weight:550;
  letter-spacing:-2px;
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:2px}
.brand>span {
  font-size:23px;
  color:#d9c8aa}
.brand small {
  margin-left:12px;
  padding-left:14px;
  border-left:1px solid #697887;
  font-size:11px;
  font-weight:400;
  letter-spacing:0}
.header nav {
  display:flex;
  gap:30px;
  font-size:13px}
.header nav a {
  color:#cad0d5;
  transition:color .2s}
.header nav a:hover,.header nav a.active {
  color:#e2c79c}
.header-contact {
  font-size:12px;
  border:1px solid #bda88b50;
  padding:11px 17px;
  border-radius:30px;
  white-space:nowrap}
.header-contact i {
  display:inline-block;
  width:5px;
  height:5px;
  margin-right:8px;
  border-radius:50%;
  background:#e2c392;
  box-shadow:0 0 10px #e2c392}
.menu {
  display:none}
.hero {
  min-height:780px;
  height:100svh;
  max-height:1200px;
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:center;
  overflow:hidden}
.hero-image {
  position:absolute;
  inset:-3%;
  width:106%;
  height:106%;
  object-fit:cover;
  object-position:center;
  z-index:-3;
  transform:translateY(var(--parallax,0px)) scale(1.02);
  animation:arrive 1.8s ease-out}
.hero-shade {
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(90deg,#020810b5 0%,#02081070 38%,#02081005 78%),linear-gradient(0deg,#070d17 0%,transparent 30%)}
.hero-content {
  margin:100px 7% 70px;
  max-width:750px}
.hero h1 {
  margin-top:25px;
  font-size:clamp(37px,4.3vw,66px);
  line-height:1.3;
  font-weight:550;
  letter-spacing:-3px;
  text-shadow:0 3px 25px #050c16}
.hero h1 span {
  color:#e1d2b9}
.hero-copy {
  font-size:17px;
  line-height:1.9;
  margin-top:23px;
  color:#d6dee6}
.hero-en {
  font-size:11px;
  letter-spacing:3px;
  color:#c4b298;
  margin-top:28px;
  min-height:22px}
.hero-actions {
  display:flex;
  align-items:center;
  gap:26px;
  margin-top:34px}
.bracket {
  color:#a4aeb8;
  padding:0 5px}
.hero-bottom {
  position:absolute;
  bottom:40px;
  left:7%;
  right:7%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:9px;
  letter-spacing:2px;
  color:#aeb9c6}
.hero-bottom a {
  font-size:10px;
  color:#dccaaa}
.hero-bottom a span {
  margin-left:20px}
.reading {
  position:fixed;
  right:20px;
  top:48%;
  z-index:25;
  display:flex;
  align-items:center;
  gap:10px;
  writing-mode:vertical-rl;
  font-size:9px;
  color:#a3adbd;
  letter-spacing:2px}
.reading i {
  width:1px;
  height:100px;
  background:#ffffff30}
.reading b {
  display:block;
  width:1px;
  height:var(--progress,0%);
  background:#e4c899}
.about {
  position:relative;
  padding-bottom:70px;
  border-top:1px solid #9bb0c318;
  overflow:hidden}
.about-grid {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:70px;
  margin-top:35px}
.about-copy p {
  font-size:17px;
  line-height:1.9;
  color:#d1d7dd}
.about-copy p+p {
  font-size:15px;
  color:#8f9ba9;
  margin-top:27px}
.about-copy .line-link {
  margin-top:28px;
  max-width:370px}
.ticker {
  border-top:1px solid #ffffff1a;
  border-bottom:1px solid #ffffff1a;
  margin-top:80px;
  padding:23px 0;
  width:116%;
  margin-left:-8%}
.ticker>div {
  white-space:nowrap;
  width:max-content;
  font-size:24px;
  font-weight:300;
  letter-spacing:2px;
  animation:marquee 45s linear infinite;
  color:#a3aeba}
.ticker i {
  color:#bda98c;
  font-style:normal;
  margin:0 35px}
.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:end;
  margin-bottom:60px}
.section-heading h2 {
  margin-top:24px}
.section-aside {
  font-size:14px;
  color:#95a2b0;
  line-height:1.8}
.business {
  padding-top:80px}
.business-grid {
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:8%}
.business-list {
  border-top:1px solid #596776;
  align-self:start}
.business-tab {
  display:grid;
  width:100%;
  grid-template-columns:35px 1fr 25px;
  gap:10px;
  text-align:left;
  align-items:center;
  border:0;
  border-bottom:1px solid #32404d;
  padding:26px 15px;
  background:transparent;
  transition:background .3s,color .3s}
.business-tab:hover,.business-tab[aria-pressed=true] {
  background:#c4af8911;
  color:#e7cfa6}
.business-tab .num {
  font-size:11px;
  color:#8694a2}
.business-tab small {
  display:block;
  font-size:9px;
  letter-spacing:1.7px;
  color:#95a0ae;
  margin-bottom:7px}
.business-tab strong {
  font-size:23px;
  font-weight:450;
  letter-spacing:-1px}
.business-tab b {
  font-weight:300;
  font-size:25px;
  transition:transform .3s}
.business-tab[aria-pressed=true] b {
  transform:rotate(45deg);
  color:#d7bd94}
.business-detail {
  min-width:0}
.business-art {
  height:270px;
  position:relative;
  overflow:hidden;
  border:1px solid #61758a38;
  display:flex;
  align-items:center;
  justify-content:center;
  background:radial-gradient(ellipse at 50% 110%,#76634790,transparent 60%),#0a1422}
.business-art #art-word {
  font-size:clamp(38px,5vw,74px);
  font-weight:450;
  letter-spacing:-4px;
  z-index:2;
  color:#e0d0b6;
  transition:color .4s}
.orb {
  position:absolute;
  width:240px;
  height:240px;
  border:1px solid #d4c19f60;
  border-radius:50%;
  transform:rotateX(55deg) rotateZ(-25deg);
  box-shadow:inset 0 0 40px #d4c19f10}
.orb-two {
  transform:rotateY(55deg) rotateZ(45deg);
  animation:orbit 18s linear infinite}
.art-grid {
  position:absolute;
  inset:0;
  background-image:linear-gradient(#a7bcc00c 1px,transparent 1px),linear-gradient(90deg,#a7bcc00c 1px,transparent 1px);
  background-size:35px 35px}
.business-art[data-theme=app] {
  background:radial-gradient(ellipse at 50% 110%,#42678990,transparent 60%),#0a1422}
.business-art[data-theme=wellness] {
  background:radial-gradient(ellipse at 50% 110%,#75877790,transparent 65%),#0a1422}
.business-art[data-theme=space] {
  background:radial-gradient(ellipse at 50% 110%,#85817a90,transparent 65%),#0a1422}
.detail-copy {
  padding:25px 0}
.detail-copy h3 {
  font-size:25px;
  font-weight:450;
  letter-spacing:-1px;
  margin:12px 0}
.detail-copy>p:not(.eyebrow) {
  font-size:14px;
  line-height:1.9;
  color:#a4afba;
  min-height:54px}
.detail-copy .line-link {
  margin-top:18px}
.web {
  background:#0b1421;
  border-top:1px solid #adc5e322}
.web-intro h2 {
  margin:25px 0 30px}
.web-summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px}
.web-summary p {
  font-size:15px;
  line-height:1.9;
  color:#aab7c4}
.web-summary .line-link {
  width:250px}
.web-stage {
  height:360px;
  margin:55px 0 70px;
  border:1px solid #90a9c238;
  position:relative;
  overflow:hidden;
  background:radial-gradient(ellipse at 75% 100%,#425a7045,transparent 70%),#070e19;
  padding:30px;
  display:flex;
  flex-direction:column;
  justify-content:space-between}
.stage-label,.stage-bottom {
  font-size:10px;
  letter-spacing:2px;
  color:#bac6d0}
.stage-type {
  font-size:clamp(30px,5.5vw,82px);
  letter-spacing:-3px;
  font-weight:450;
  line-height:1.15;
  position:relative}
.stage-type span {
  color:#c8b08c}
.stage-lines {
  position:absolute;
  border:1px solid #bda98c50;
  width:600px;
  height:600px;
  border-radius:50%;
  top:-100px;
  right:-160px;
  box-shadow:0 0 0 30px #bda98c06,0 0 0 60px #bda98c06,0 0 0 90px #bda98c06;
  animation:breath 6s ease-in-out infinite}
.stage-bottom {
  display:flex;
  justify-content:space-between;
  gap:20px}
.offer-main {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:40px}
.offer h3 {
  font-size:28px;
  font-weight:450;
  margin:15px 0 10px}
.scope {
  font-size:16px;
  color:#aab7c4}
.price strong {
  font-size:80px;
  font-weight:450;
  letter-spacing:-4px;
  line-height:1}
.price strong>span {
  font-size:30px;
  margin-left:6px;
  letter-spacing:-1px}
.price p {
  font-size:14px;
  color:#d1d7db;
  margin-top:20px}
.benefit-row {
  display:flex;
  gap:25px;
  justify-content:space-between;
  padding:28px 0;
  border-top:1px solid #8592a245;
  border-bottom:1px solid #8592a245;
  margin-top:35px;
  font-size:14px}
.offer details {
  border-bottom:1px solid #8592a245;
  margin-bottom:30px}
.offer summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:24px 0;
  font-size:14px;
  cursor:pointer;
  list-style:none}
.offer summary::-webkit-details-marker {
  display:none}
.offer summary span {
  font-size:23px;
  transition:transform .2s}
.offer details[open] summary span {
  transform:rotate(45deg)}
.terms {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  padding:0 0 20px}
.terms h4 {
  font-size:15px;
  margin-bottom:15px;
  font-weight:500}
.terms p,.terms-foot {
  font-size:13px;
  line-height:1.9;
  color:#afbbc8}
.terms p+p {
  margin-top:14px}
.terms-foot {
  padding-bottom:25px}
.contact {
  position:relative;
  overflow:hidden}
.contact h2 {
  margin-top:25px;
  font-size:clamp(38px,5.5vw,78px)}
.contact-orbit {
  width:700px;
  height:700px;
  border:1px solid #b5c6d817;
  border-radius:50%;
  position:absolute;
  right:-340px;
  top:50px;
  pointer-events:none;
  box-shadow:0 0 0 75px #b5c6d806,0 0 0 150px #b5c6d805}
.contact-content {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:80px;
  margin-top:65px;
  position:relative}
.contact-content p {
  font-size:16px;
  line-height:1.9;
  color:#a9b5c2}
.contact-company {
  margin-top:50px!important}
.contact-company span {
  font-size:11px;
  letter-spacing:2px;
  color:#d1bb99}
.contact-actions {
  display:flex;
  flex-direction:column;
  gap:18px}
.contact-actions label {
  font-size:12px;
  color:#b6c1cc}
.contact-actions .quiet-link {
  font-size:12px;
  color:#aab8c6;
  justify-content:space-between}
select,input,textarea {
  width:100%;
  border:1px solid #73839666;
  background:#0b1421;
  color:#e3e8eb;
  border-radius:2px;
  padding:14px;
  resize:vertical;
  font-size:15px}
select {
  min-height:54px}
footer {
  padding:40px 7%;
  border-top:1px solid #6e819333;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:25px;
  justify-content:space-between}
footer p,footer>span {
  font-size:10px;
  color:#9da9b5}
footer button {
  border:0;
  background:none;
  font-size:10px;
  color:#b4a181}
.intro {
  position:fixed;
  inset:0;
  z-index:100;
  background:linear-gradient(#07101bbf,#050c16e8),url('../assets/hero-1280.webp') center/cover;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:opacity .75s,visibility .75s}
.intro.hidden {
  opacity:0;
  visibility:hidden;
  pointer-events:none}
.intro-frame {
  position:absolute;
  inset:22px;
  border:1px solid #c2a77f44;
  pointer-events:none}
.intro-center {
  text-align:center;
  animation:arrive 1.4s ease-out}
.intro-center>strong {
  display:block;
  font-size:clamp(90px,19vw,230px);
  font-weight:500;
  letter-spacing:-.08em;
  line-height:1.25;
  color:#eee4d3}
.intro-center>strong>span {
  color:#c7ad81;
  font-size:.8em}
.intro-name {
  letter-spacing:10px;
  margin-left:10px;
  font-size:15px;
  color:#d6c3a2;
  margin-bottom:40px}
.intro-note,.intro-foot,.intro-skip {
  position:absolute;
  left:50px;
  font-size:10px;
  letter-spacing:2px;
  color:#bcaa8c}
.intro-note {
  top:45px}
.intro-foot {
  bottom:45px}
.intro-skip {
  left:auto;
  right:50px;
  bottom:40px;
  border:0;
  background:none;
  font-size:12px;
  color:#dae0e6}
.cursor {
  width:28px;
  height:28px;
  border:1px solid #d3bb8b80;
  border-radius:50%;
  position:fixed;
  top:0;
  left:0;
  z-index:110;
  pointer-events:none;
  transform:translate(-100px,-100px);
  transition:width .2s,height .2s,opacity .2s;
  opacity:0}
.cursor.on {
  opacity:1}
.reveal {
  transition:opacity .8s,transform .8s}
.js-motion .reveal:not(.visible) {
  opacity:0;
  transform:translateY(28px)}
dialog {
  width:min(560px,calc(100vw - 36px));
  max-height:85svh;
  padding:38px;
  border:1px solid #9d896b60;
  background:#0c1521;
  color:#e8e9e5;
  border-radius:4px}
dialog::backdrop {
  background:#020710cf;
  backdrop-filter:blur(6px)}
dialog h2 {
  font-size:35px;
  margin:18px 0;
  line-height:1.3}
dialog label {
  display:block;
  font-size:12px;
  color:#aab7c4;
  margin:20px 0}
dialog label input,dialog label textarea {
  margin-top:8px}
.close {
  position:absolute;
  top:14px;
  right:18px;
  font-size:27px;
  border:0;
  background:none}
.preview-note,#copy-status {
  font-size:12px;
  line-height:1.7;
  color:#acbac7}
#brief-result {
  margin-top:25px}
#brief-result .button {
  margin:14px 0}
#brief-result .line-link {
  font-size:12px}
.contact-actions .button {
  width:100%}
@keyframes arrive {
  from {
  opacity:0;
  transform:translateY(12px)}
to {
  opacity:1;
  transform:translateY(0)}
}
@keyframes marquee {
  to {
  transform:translateX(-50%)}
}
@keyframes orbit {
  to {
  transform:rotateY(55deg) rotateZ(405deg)}
}
@keyframes breath {
  50% {
  transform:scale(1.07)}
}

@media(min-width:1800px) {
  .header {
  left:50%;
  transform:translateX(-50%)}
}
@media(max-width:1050px) {
  .header {
  left:4%;
  width:92%;
  padding:15px 20px}
.header nav {
  gap:18px}
.brand small {
  display:none}
.header-contact {
  font-size:11px}
.section {
  padding:85px 6%}
.hero-content {
  margin-left:6%}
.hero h1 {
  font-size:48px}
.business-grid {
  gap:5%}
.business-tab {
  padding:24px 10px}
.business-tab strong {
  font-size:20px}
.benefit-row {
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:20px 30px}
.section-aside {
  font-size:12px}
.reading {
  right:10px}
.about-grid {
  gap:40px}
}

@media(max-width:700px) {
  html {
  scroll-padding-top:100px}
.section {
  padding:75px 24px}
.header {
  top:15px;
  left:18px;
  width:calc(100% - 36px);
  padding:11px 17px;
  gap:12px}
.brand {
  font-size:26px}
.brand>span {
  font-size:21px}
.header-contact {
  margin-left:auto;
  padding:10px 12px;
  font-size:10px}
.menu {
  display:flex;
  flex-direction:column;
  gap:5px;
  border:0;
  background:none;
  padding:10px 4px}
.menu span {
  display:block;
  width:18px;
  height:1px;
  background:#e7d5b2}
.header nav {
  display:none;
  position:absolute;
  top:66px;
  left:0;
  right:0;
  padding:25px;
  background:#0a1321f8;
  border:1px solid #697c9044;
  border-radius:12px;
  flex-direction:column;
  gap:25px;
  font-size:15px}
.header nav.open {
  display:flex}
.hero {
  height:100svh;
  min-height:740px;
  max-height:950px;
  align-items:flex-start}
.hero-image {
  object-position:66% center;
  opacity:.8}
.hero-shade {
  background:linear-gradient(0deg,#070d17,transparent 55%),linear-gradient(90deg,#030915b8,#03091540)}
.hero-content {
  margin:170px 24px 110px;
  max-width:calc(100% - 48px)}
.hero h1 {
  font-size:clamp(29px,7.4vw,44px);
  letter-spacing:-1.8px;
  line-height:1.4;
  margin-top:23px}
.hero .eyebrow {
  font-size:9px;
  letter-spacing:2px}
.hero-copy {
  font-size:14px;
  line-height:1.9;
  margin-top:22px}
.hero-en {
  font-size:8px;
  letter-spacing:1.8px;
  margin-top:25px}
.hero-actions {
  align-items:flex-start;
  flex-direction:column;
  gap:21px;
  margin-top:24px}
.hero-actions .button {
  font-size:12px;
  min-height:50px;
  gap:27px}
.hero-actions .quiet-link {
  font-size:12px}
.hero-bottom {
  bottom:34px;
  left:24px;
  right:24px;
  align-items:flex-start;
  gap:22px;
  flex-direction:column;
  font-size:8px;
  letter-spacing:1px}
.hero-bottom>span:last-child {
  display:none}
.hero-bottom a {
  font-size:8px}
.reading {
  display:none}
h2 {
  font-size:32px;
  letter-spacing:-1.3px}
.about-grid {
  grid-template-columns:1fr;
  gap:30px;
  margin-top:23px}
.about-copy p {
  font-size:15px}
.about-copy p+p {
  font-size:14px;
  margin-top:20px}
.desktop-br {
  display:none}
.ticker {
  margin-top:50px;
  padding:19px 0;
  width:calc(100% + 48px);
  margin-left:-24px}
.ticker>div {
  font-size:19px}
.section-heading {
  display:block;
  margin-bottom:33px}
.section-heading h2 {
  margin-top:20px}
.section-aside {
  margin-top:23px}
.section-aside br {
  display:none}
.business-grid {
  grid-template-columns:1fr;
  gap:30px}
.business-tab {
  padding:20px 8px;
  grid-template-columns:28px 1fr 24px}
.business-tab strong {
  font-size:20px}
.business-art {
  height:230px}
.business-art #art-word {
  font-size:56px}
.detail-copy {
  padding-bottom:0}
.detail-copy h3 {
  font-size:23px}
.web-summary {
  display:block}
.web-summary p {
  font-size:14px}
.web-summary .line-link {
  margin-top:20px;
  width:100%}
.web-stage {
  margin:34px 0 45px;
  height:280px;
  padding:22px}
.stage-type {
  font-size:clamp(25px,7vw,44px);
  letter-spacing:-1.8px}
.stage-label {
  font-size:8px;
  letter-spacing:1px}
.stage-bottom {
  font-size:8px;
  letter-spacing:0}
.stage-bottom span:last-child {
  display:none}
.offer-main {
  display:block}
.price {
  margin-top:30px}
.price strong {
  font-size:76px}
.price p {
  font-size:13px}
.benefit-row {
  display:grid;
  grid-template-columns:1fr;
  gap:17px;
  font-size:14px;
  padding:24px 0}
.terms {
  grid-template-columns:1fr;
  gap:25px}
.terms-foot {
  font-size:12px}
.offer>.button {
  width:100%;
  font-size:12px;
  gap:15px}
.contact h2 {
  font-size:38px}
.contact-content {
  grid-template-columns:1fr;
  gap:32px;
  margin-top:35px}
.contact-content p {
  font-size:14px}
.contact-company {
  display:none}
.contact-orbit {
  right:-500px}
.contact-actions .button {
  font-size:13px}
footer {
  padding:30px 24px;
  gap:20px}
footer p {
  line-height:1.8;
  width:100%;
  order:3;
  font-size:9px}
footer button {
  order:4}
footer .brand small {
  display:inline;
  font-size:10px}
footer>span {
  font-size:9px}
.intro-frame {
  inset:15px}
.intro-note {
  left:30px;
  top:35px;
  font-size:8px;
  letter-spacing:1px}
.intro-foot {
  left:30px;
  bottom:80px;
  font-size:10px;
  letter-spacing:0}
.intro-skip {
  left:30px;
  right:auto;
  bottom:35px;
  font-size:11px}
.intro-name {
  font-size:12px;
  letter-spacing:7px}
.intro-center>.eyebrow {
  font-size:9px}
.intro-center .button {
  font-size:12px}
.cursor {
  display:none}
dialog {
  padding:28px 24px}
dialog h2 {
  font-size:30px}
}

.hero-image {
  object-position:right center}
@media(max-width:700px) {
  .hero-image {
  object-position:75% center}
}

@media(prefers-reduced-motion:reduce) {
  html {
  scroll-behavior:auto}
*,*:before,*:after {
  animation:none!important;
  transition:none!important}
.hero-image {
  transform:none!important}
.cursor {
  display:none}
.js-motion .reveal:not(.visible) {
  opacity:1;
  transform:none}
}

