:root {
  --bg:#faf0e9;
  --ink:#733c2a;
  --accent:#bd6447
}
body {
  background:var(--bg);
  color:var(--ink)
}
* {
  box-sizing:border-box
}
html,body {
  margin:0
}
html {
  color-scheme:light
}
body {
  font-family:"PingFang SC","Microsoft YaHei","Helvetica Neue",sans-serif;
  -webkit-font-smoothing:antialiased
}
.page {
  height:100svh;
  min-height:620px;
  padding:0 5.5vw 32px;
  display:grid;
  grid-template-rows:80px minmax(0,1fr);
  position:relative;
  isolation:isolate
}
.brand {
  display:flex;
  align-items:center;
  font-size:20px;
  letter-spacing:.02em
}
.hero {
  display:grid;
  align-items:center;
  min-height:0;
  max-width:1400px;
  width:100%;
  margin:0 auto
}
.copy {
  min-width:0;
  position:relative
}
.copy h1 {
  font-size:clamp(40px,4.55vw,68px);
  line-height:1.17;
  letter-spacing:-.04em;
  margin:0;
  font-weight:600;
  overflow-wrap:anywhere
}
.copy p {
  font-size:18px;
  line-height:1.85;
  margin:28px 0 0;
  max-width:36em;
  color:inherit;
  opacity:.87
}
.art {
  margin:0;
  min-width:0;
  min-height:0;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center
}
.art img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  max-height:620px
}
::selection {
  background:var(--accent);
  color:var(--bg)
}

@media(max-height:780px) and (min-width:768px) {
  .copy h1 {
    font-size:clamp(38px,4.1vw,60px)
  }
  .copy p {
    font-size:17px;
    margin-top:23px
  }
  .page {
    grid-template-rows:72px minmax(0,1fr);
    padding-bottom:24px
  }
  .art {
    max-height:510px
  }
}
@media(max-width:767px) {
  .page {
    height:100svh;
    min-height:700px;
    padding:0 26px 24px;
    grid-template-rows:65px minmax(0,1fr)
  }
  .brand {
    font-size:18px
  }
  .hero {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:center;
    gap:24px
  }
  .copy {
    order:1;
    max-width:none!important
  }
  .copy h1 {
    font-size:38px!important;
    line-height:1.18;
    letter-spacing:-.04em
  }
  .copy p {
    font-size:15px!important;
    line-height:1.85;
    margin-top:20px;
    max-width:100%;
    opacity:.9
  }
  .art {
    order:2;
    height:260px;
    flex:none;
    max-height:none;
    align-self:center
  }
  .art img {
    max-height:100%
  }
}
@media(max-width:360px) {
  .page {
    padding-left:22px;
    padding-right:22px
  }
  .copy h1 {
    font-size:34px!important
  }
  .copy p {
    font-size:14px!important
  }
  .art {
    height:235px!important
  }
}
@media(max-width:767px) and (max-height:740px) {
  .hero {
    gap:16px
  }
  .copy h1 {
    font-size:34px!important
  }
  .copy p {
    font-size:14px!important;
    margin-top:16px
  }
  .art {
    height:210px!important
  }
  .page {
    min-height:660px;
    grid-template-rows:58px minmax(0,1fr)
  }
}

.hero {
  grid-template-columns:1fr 1fr;
  align-items:start;
  column-gap:8vw
}
.copy {
  padding-top:3vh
}
.art {
  height:92%;
  transform:rotate(-4deg)
}
.copy h1 {
  font-family:"Arial Rounded MT Bold","PingFang SC",sans-serif;
  font-weight:700
}
.page {
  border:22px solid #e8ad96;
  padding:0 4vw 24px
}
.brand {
  border-bottom:2px solid #733c2a;
  padding-bottom:8px;
  width:fit-content;
  font-size:19px
}
.copy p {
  max-width:28em
}
@media(max-width:767px) {
  .page {
    border:10px solid #e8ad96;
    padding:0 22px 22px
  }
  .copy {
    padding-top:0
  }
  .art {
    height:255px;
    transform:rotate(-3deg)
  }
}

.hero {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:24px
}
.copy {
  text-align:center;
  padding-top:0;
  max-width:910px
}
.copy h1 br {
  display:none
}
.copy h1 {
  font-size:clamp(40px,4.6vw,66px)
}
.copy p {
  max-width:50em;
  margin-left:auto;
  margin-right:auto
}
.art {
  height:345px;
  width:70%;
  transform:rotate(-4deg)
}
@media(max-width:767px) {
  .copy {
    text-align:left
  }
  .copy h1 br {
    display:block
  }
  .art {
    height:255px;
    width:100%
  }
}
