:root{
  --peach:#e5ba8f;--peach-2:#f0d4b8;--brown:#492217;--brown-2:#341810;--white:#fff;
  --line:rgba(229,186,143,.2);--ease:cubic-bezier(.16,1,.3,1);--pad:clamp(1.25rem,4.5vw,4.5rem);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{background:var(--brown);-webkit-text-size-adjust:100%}
body{font-family:'Poppins',system-ui,sans-serif;font-weight:300;color:var(--peach);background:var(--brown);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.is-loading{overflow:hidden;height:100vh}
a{color:inherit;text-decoration:none}
address{font-style:normal}
:focus-visible{outline:2px solid var(--peach-2);outline-offset:4px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.page{width:100%;overflow-x:clip}

.stage{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(1.5rem,4vh,3rem);padding:6rem var(--pad) 3rem;overflow:hidden;isolation:isolate}
.stage__glow{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 60% 50% at 50% 42%,rgba(229,186,143,.2),rgba(229,186,143,0) 70%)}
.stage__pattern{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.06;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96' fill='none' stroke='%23e5ba8f' stroke-width='1'%3E%3Cg id='s'%3E%3Crect x='31' y='31' width='34' height='34'/%3E%3Crect x='31' y='31' width='34' height='34' transform='rotate(45 48 48)'/%3E%3C/g%3E%3Cuse href='%23s' x='-48' y='-48'/%3E%3Cuse href='%23s' x='48' y='-48'/%3E%3Cuse href='%23s' x='-48' y='48'/%3E%3Cuse href='%23s' x='48' y='48'/%3E%3Cpath d='M48 24L24 0M48 24L72 0M24 48L0 24M24 48L0 72M72 48L96 24M72 48L96 72M48 72L24 96M48 72L72 96'/%3E%3C/svg%3E");
  background-size:96px 96px;-webkit-mask-image:radial-gradient(ellipse at 50% 45%,transparent 15%,#000 75%);mask-image:radial-gradient(ellipse at 50% 45%,transparent 15%,#000 75%)}
.steam{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}

.grain{position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.055;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}

.loader{position:fixed;inset:0;z-index:100;background:var(--brown);display:grid;place-items:center}
.loader__mark{width:clamp(100px,14vw,160px);overflow:visible}
.loader__mark path{fill:var(--peach);fill-opacity:0;stroke:var(--peach);stroke-width:1.1;stroke-linejoin:round}


.nav{position:fixed;top:1rem;left:50%;z-index:80;display:flex;align-items:center;gap:1.4rem;padding:.45rem .45rem .45rem 1rem;border-radius:999px;background:var(--brown-2);
  border:1px solid var(--line);box-shadow:0 10px 30px -12px rgba(20,8,4,.6);transform:translateX(-50%);will-change:transform}
.nav__brand{display:flex}.nav__brand img{height:26px;width:auto}
.dot{width:7px;height:7px;border-radius:50%;background:var(--peach);box-shadow:0 0 0 0 rgba(229,186,143,.6);animation:pulse 2.4s infinite;flex:none}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(229,186,143,0)}100%{box-shadow:0 0 0 0 rgba(229,186,143,0)}}
.nav__cta{padding:.6rem 1.1rem;border-radius:999px;background:var(--peach);color:var(--brown);font-size:.78rem;font-weight:500;white-space:nowrap;transition:background .4s var(--ease)}
.nav__cta:hover{background:var(--white)}

.hero{margin-top:clamp(1.5rem,5vh,4rem);display:flex;flex-direction:column;align-items:center;gap:1.3rem;text-align:center;position:relative;z-index:2}
.hero__brand{display:flex;flex-direction:column;align-items:center;gap:1rem;font-weight:inherit}
.wordmark{width:min(86vw,820px);height:auto;overflow:visible;fill:var(--peach)}
.hero__sub{font-size:clamp(.95rem,1.5vw,1.3rem);letter-spacing:.08em;font-weight:300}
.hero__copy{max-width:58ch;font-size:clamp(.95rem,1.3vw,1.1rem);color:var(--peach-2);line-height:1.6}
.hero__line{font-size:clamp(1.8rem,3.6vw,3rem);font-weight:200;color:var(--white);max-width:34ch;letter-spacing:-.02em;line-height:1.3;text-wrap:balance}
.hero__soon{font-size:clamp(.95rem,1.3vw,1.1rem);font-weight:300;color:var(--peach);margin-top:.2rem}

.contact{position:relative;z-index:2;display:grid;grid-template-columns:1.4fr 1fr;width:min(940px,100%);border-top:1px solid var(--line)}
.contact__col{padding:clamp(1.6rem,3vw,2.4rem) clamp(0rem,2vw,2rem) 0 0;display:flex;flex-direction:column;align-items:flex-start;gap:.9rem}
.contact__col+.contact__col{padding-left:clamp(1.4rem,3vw,3rem);border-left:1px solid var(--line)}
.contact h2{font-size:1.05rem;font-weight:300;color:var(--peach)}
.contact__addr{color:var(--white);font-size:clamp(1.2rem,2vw,1.6rem);font-weight:200;line-height:1.35;letter-spacing:-.01em}
.phone{color:var(--white);font-size:clamp(1.6rem,3vw,2.5rem);font-weight:200;letter-spacing:-.02em;line-height:1.1;transition:color .4s var(--ease)}
.phone:hover{color:var(--peach)}
.link{color:var(--peach);font-size:.95rem;font-weight:400;border-bottom:1px solid rgba(229,186,143,.5);padding-bottom:.2rem;transition:color .4s var(--ease),border-color .4s var(--ease)}
.link:hover{color:var(--white);border-color:var(--white)}

.footer{padding:1.6rem var(--pad) 2rem;text-align:center;border-top:1px solid var(--line);background:var(--brown)}
.footer small{font-size:.7rem;letter-spacing:.1em;color:#c99a6d}

@media (max-width:760px){
  .contact{grid-template-columns:1fr}
  .contact__col+.contact__col{border-left:0;padding-left:0;border-top:1px solid var(--line);margin-top:1.6rem}
  .stage{padding-top:6rem}
}
@media (prefers-reduced-motion:reduce){.grain,.dot{animation:none}}
.steam{mix-blend-mode:screen}
.ink{position:absolute;z-index:1;pointer-events:none;overflow:visible;opacity:0}
.ink path{fill:none;stroke:var(--peach);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
