*{box-sizing:border-box}
:root{
  --ivory:#f4f0e7;
  --ivory-light:#faf8f2;
  --charcoal:#24292c;
  --muted:#77756f;
  --gold:#b38a43;
  --line:rgba(36,41,44,.17);
}
html,body{margin:0;min-height:100%;background:var(--ivory)}
body{
  color:var(--charcoal);
  font-family:"Helvetica Neue",Inter,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.page{
  position:relative;min-height:100svh;overflow:hidden;
  display:grid;grid-template-rows:auto 1fr auto;
  background:
    radial-gradient(circle at 73% 46%,rgba(255,255,255,.88),rgba(255,255,255,0) 33%),
    linear-gradient(145deg,var(--ivory-light) 0%,var(--ivory) 62%,#ebe3d4 100%);
}
.paper-texture{
  position:absolute;inset:0;pointer-events:none;opacity:.12;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.07'/%3E%3C/svg%3E");
}
.topbar{
  position:relative;z-index:10;display:flex;justify-content:center;
  padding:30px 28px 0;
}
.brand-lockup{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.brand-logo{
  display:block;
  width:clamp(150px,12vw,190px);
  height:auto;
}


.hero{
  position:relative;z-index:2;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);
  align-items:center;gap:3vw;
  width:min(1440px,100%);margin:0 auto;
  padding:44px clamp(28px,6.5vw,104px) 64px;
}
.copy{position:relative;z-index:5;max-width:760px}
.tagline{
  margin:0;
  font-family:Didot,"Bodoni 72","Bodoni MT","Times New Roman",serif;
  font-size:clamp(62px,6.3vw,102px);
  font-weight:300;font-style:italic;
  line-height:.91;letter-spacing:-.045em;
  color:var(--charcoal);
}
.tagline::first-line{color:var(--charcoal)}
.descriptor{
  display:flex;align-items:center;gap:15px;
  margin-top:32px;
  color:#5f6465;
  font-size:11px;font-weight:600;letter-spacing:.19em;
  text-transform:uppercase;
}
.descriptor i{display:block;width:24px;height:1px;background:var(--gold)}
.signup-heading{
  margin:58px 0 18px;
  color:#5f6465;
  font-family:"Helvetica Neue",Inter,Arial,sans-serif;
  font-size:11px;
  font-weight:600;
  line-height:1.45;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.signup{max-width:510px}
.signup-row{
  display:grid;grid-template-columns:1fr auto;
  min-height:54px;border-bottom:1px solid var(--charcoal);
}
input,button{
  padding-left:64px;border:0;border-radius:0;background:transparent;font:inherit}
input{
  min-width:0;padding:0 0;color:var(--charcoal);
  font-family:"Helvetica Neue",Inter,Arial,sans-serif;
  font-size:14px;font-weight:400;letter-spacing:.025em;outline:none;
}
input::placeholder{color:#9b9993;opacity:1}
button{
  padding:0 0 0 28px;color:var(--charcoal);cursor:pointer;
  text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:.22em;
}
button:hover{color:var(--gold)}
.consent,.form-message{
  margin:11px 0 0;color:#8f8d87;
  font-family:"Helvetica Neue",Inter,Arial,sans-serif;
  font-size:9.5px;font-weight:400;line-height:1.55;letter-spacing:.015em;
}
.form-message{min-height:15px}.form-message.success{color:#58725f}.form-message.error{color:#96514d}
.honeypot,.sr-only{
  position:absolute!important;width:1px!important;height:1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;
}
.feather-stage{
  position:relative;min-height:min(72vh,760px);
  display:flex;align-items:center;justify-content:center;
}
.feather-halo{
  position:absolute;width:82%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(194,155,82,.14),rgba(194,155,82,0) 68%);
  filter:blur(24px);
}
.feather{
  position:relative;z-index:2;width:min(34.1vw,517px);height:auto;
  max-height:min(76vh,780px);object-fit:contain;
  transform-origin:50% 55%;
  filter:drop-shadow(0 26px 28px rgba(89,65,24,.09));
  animation:float 11s ease-in-out infinite alternate;
}
@keyframes float{
  0%{transform:translate3d(-5px,-8px,0) rotate(5deg)}
  50%{transform:translate3d(9px,9px,0) rotate(7deg)}
  100%{transform:translate3d(-3px,18px,0) rotate(4deg)}
}
.footer{
  position:relative;z-index:10;display:flex;justify-content:space-between;
  padding:19px clamp(28px,5vw,76px) 28px;border-top:1px solid rgba(36,41,44,.09);
}
.footer a,.footer span{
  color:#8b877f;text-decoration:none;text-transform:uppercase;
  font-size:9px;letter-spacing:.2em;
}
.footer a:hover{color:var(--charcoal)}
button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}

@media(max-width:780px){
  .topbar{padding-top:24px}
  .brand-logo{width:145px}
  .hero{display:block;padding:72px 24px 54px}
  .copy{max-width:none}
  .tagline{font-size:clamp(54px,14vw,76px);line-height:.92}
  .descriptor{
    flex-wrap:wrap;gap:10px;margin-top:26px;
    font-size:9.5px;letter-spacing:.15em;max-width:320px;
  }
  .descriptor i{width:16px}
  .signup-heading{margin-top:50px;font-size:9.5px;line-height:1.45}
  .feather-stage{
    position:absolute;right:-72px;top:54px;width:245px;min-height:0;
    opacity:.22;pointer-events:none;
  }
  .feather{width:225px;max-height:none}
  .footer{flex-direction:column-reverse;gap:8px;align-items:flex-start}
}
@media(max-width:480px){
  .hero{padding-top:62px}
  .tagline{font-size:clamp(49px,13.5vw,65px)}
  .signup-row{grid-template-columns:1fr auto}
  button{padding-left:18px}
}
@media(prefers-reduced-motion:reduce){.feather{animation:none}}
