[hidden]{display:none!important}
*{box-sizing:border-box;margin:0;padding:0}
:root{--green:#566149;--green-dark:#30372e;--beige:#f7f4ed;--white:#fff}
html,body{width:100%;min-height:100%;background:#e9e2d8;color:var(--green-dark)}
body{font-family:Arial,Helvetica,sans-serif}
.hero{position:relative;width:100%;min-height:100svh;overflow:hidden;background:url('../images/coming-soon/coming-soon-desktop.png') center/cover no-repeat}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,244,237,.05),rgba(0,0,0,.02));pointer-events:none}
.brand{font-family:Georgia,'Times New Roman',serif;color:#343b2e;font-weight:400;letter-spacing:-2px}
.desktop-brand{position:absolute;z-index:2;top:7.5vh;left:7.5vw;font-size:clamp(54px,5.2vw,86px)}
.desktop-coming{position:absolute;z-index:2;top:9.5vh;right:6.8vw;color:#fff;font-size:11px;letter-spacing:6px}
.mobile-header{display:none}
.content{position:absolute;z-index:2;left:8.3vw;top:50%;transform:translateY(-46%);width:min(510px,39vw)}
h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,4.45vw,74px);line-height:.93;font-weight:400;letter-spacing:-2.2px;margin-bottom:31px}
h1 em{font-weight:400}.teaser{font-size:11px;line-height:1.9;letter-spacing:5px;margin-bottom:34px}
.notify-form{display:flex;width:100%;height:54px}
.notify-form input{flex:1;min-width:0;border:0;background:rgba(250,248,244,.95);border-radius:18px 0 0 18px;padding:0 20px;color:#30372e;font-size:13px;outline:none}
.notify-form input:focus{box-shadow:inset 0 0 0 1px rgba(86,97,73,.45)}
.notify-form button{border:0;border-radius:0 18px 18px 0;padding:0 24px;background:var(--green);color:#fff;font-size:13px;cursor:pointer;white-space:nowrap}
.notify-form button:disabled{opacity:.8;cursor:wait}
.success-message{width:100%;padding:25px 28px;border-radius:20px;background:rgba(86,97,73,.96);color:#fff;text-align:center}
.success-title{font-family:Georgia,'Times New Roman',serif;font-size:22px;margin-bottom:10px}.success-text{font-family:Georgia,'Times New Roman',serif;font-size:15px;font-style:italic;line-height:1.5}.error-message{margin-top:12px;font-size:12px;line-height:1.4}
.footer{position:absolute;z-index:2;left:7.3vw;right:6.7vw;bottom:3.4vh;display:flex;align-items:center;gap:28px;font-size:10px;color:rgba(48,55,46,.8)}
.desktop-footer-label{margin-left:auto;color:rgba(255,255,255,.86);letter-spacing:5px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){
.hero{background-image:url('../images/coming-soon/coming-soon-webapp.png');background-position:center center}
.hero:after{background:linear-gradient(180deg,rgba(247,244,237,.04),rgba(0,0,0,.08))}
.desktop-brand,.desktop-coming{display:none}.mobile-header{display:flex;position:absolute;z-index:5;top:0;left:0;width:100%;height:82px;padding:0 27px;align-items:center;justify-content:space-between;background:rgba(247,244,237,.95)}.mobile-header .brand{font-size:43px}.menu{display:flex;flex-direction:column;gap:5px;border:0;background:transparent;padding:8px 0;opacity:1}.menu span{display:block;width:20px;height:1.5px;background:#30372e}.menu:disabled{opacity:1}
.content{left:50%;top:41%;transform:translate(-50%,-50%);width:calc(100% - 48px);max-width:370px;text-align:center}
h1{font-size:clamp(43px,12.3vw,57px);line-height:.96;letter-spacing:-1.7px;margin-bottom:29px}
.teaser{font-size:8px;line-height:1.9;letter-spacing:3.6px;margin-bottom:30px}
.notify-form{height:auto;display:flex;flex-direction:column;gap:8px;width:100%;max-width:330px;margin:0 auto}
.notify-form input,.notify-form button{height:47px;width:100%;border-radius:15px}.notify-form input{padding:0 18px;font-size:11px}.notify-form button{font-size:11px}
.success-message{max-width:330px;margin:0 auto;padding:25px 18px;border-radius:19px}.success-title{font-size:20px}.success-text{font-size:14px}.error-message{color:#30372e}
.footer{left:0;right:0;bottom:20px;justify-content:center;gap:18px;color:#fff;font-size:9px;text-shadow:0 1px 5px rgba(0,0,0,.25)}.desktop-footer-label{display:none}
}
@media(max-width:380px){.content{top:42%;width:calc(100% - 34px)}.mobile-header{height:76px;padding:0 22px}.mobile-header .brand{font-size:39px}h1{font-size:42px}.notify-form,.success-message{max-width:310px}}
.menu{display:flex;flex-direction:column;gap:5px;border:0;background:transparent;padding:9px;cursor:pointer}.menu span{display:block;width:22px;height:1.5px;background:currentColor}.desktop-menu{position:absolute;z-index:3;top:8.7vh;right:3vw;color:#fff}.mobile-header .menu{color:#30372e}
.menu-backdrop{position:fixed;z-index:50;inset:0;background:rgba(24,29,22,.34);opacity:0;transition:opacity .35s ease}.menu-backdrop.show{opacity:1}
.menu-panel{position:fixed;z-index:60;top:0;right:0;width:min(520px,40vw);height:100svh;padding:42px 44px 38px;background:#566149;color:#f7f4ed;transform:translateX(102%);transition:transform .42s cubic-bezier(.22,.8,.28,1);display:flex;flex-direction:column}.menu-panel.open{transform:translateX(0)}
.menu-panel-head{display:flex;align-items:center;justify-content:space-between}.menu-brand{font:400 46px/1 Georgia,'Times New Roman',serif;letter-spacing:-2px}.menu-close{border:0;background:transparent;color:#f7f4ed;font:300 42px/1 Arial,sans-serif;cursor:pointer;padding:0 4px}
.menu-home{display:flex;flex:1;flex-direction:column}.menu-nav{margin-top:15vh;display:flex;flex-direction:column}.menu-link{display:flex;align-items:center;justify-content:space-between;width:100%;padding:22px 0;border:0;border-bottom:1px solid rgba(247,244,237,.25);background:transparent;color:#f7f4ed;text-align:left;font:400 25px/1.2 Georgia,'Times New Roman',serif;cursor:pointer}.menu-link span{font-family:Arial,sans-serif;font-size:18px}
.menu-bottom{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-top:30px;border-top:1px solid rgba(247,244,237,.25)}.menu-bottom a{color:#f7f4ed;text-decoration:none;font-size:12px}.menu-bottom p{font:italic 15px Georgia,'Times New Roman',serif;text-align:right}
.menu-view{margin-top:9vh}.menu-back{border:0;background:transparent;color:rgba(247,244,237,.8);font-size:11px;letter-spacing:1.5px;cursor:pointer;margin-bottom:34px}.menu-kicker{font-size:9px;letter-spacing:4px;margin-bottom:18px;opacity:.8}
.menu-view h2{font:400 38px/1.06 Georgia,'Times New Roman',serif;letter-spacing:-1px;margin-bottom:24px}.menu-view>p:not(.menu-kicker):not(.menu-error){max-width:410px;font:400 16px/1.65 Georgia,'Times New Roman',serif;color:rgba(247,244,237,.9)}
.stylist-form{display:flex;flex-direction:column;gap:9px;margin-top:30px;max-width:390px}.stylist-form input,.stylist-form button{height:49px;border:0;border-radius:14px;padding:0 17px}.stylist-form input{background:#f7f4ed;color:#30372e;outline:none}.stylist-form button{background:#f7f4ed;color:#566149;font-weight:600;cursor:pointer}
.menu-success{margin-top:30px;padding:22px;border:1px solid rgba(247,244,237,.35);border-radius:16px;font-family:Georgia,'Times New Roman',serif}.menu-success strong,.menu-success span{display:block}.menu-success strong{font-size:20px;font-weight:400;margin-bottom:8px}.menu-success span{font-size:14px;font-style:italic;line-height:1.5}.menu-error{margin-top:12px;font-size:12px;color:#f7f4ed}.menu-opened{overflow:hidden}
@media(max-width:760px){.desktop-menu{display:none}.menu-panel{width:100%;padding:28px 26px 30px}.menu-brand{font-size:42px}.menu-nav{margin-top:9vh}.menu-link{font-size:25px;padding:21px 0}.menu-bottom{padding-bottom:max(0px,env(safe-area-inset-bottom))}.menu-view{margin-top:5vh}.menu-view h2{font-size:34px}.menu-view>p:not(.menu-kicker):not(.menu-error){font-size:15px}.mobile-header .menu{padding:8px 0}}

/* V5 — luxury waitlist forms */
.waitlist-intro{margin-bottom:14px}
.waitlist-intro span{display:block;font-size:9px;line-height:1.2;letter-spacing:3.4px;color:var(--green-dark);margin-bottom:7px}
.waitlist-intro p{font:italic 14px/1.45 Georgia,'Times New Roman',serif;color:rgba(48,55,46,.78)}
.notify-form{height:auto;gap:9px;align-items:stretch}
.notify-form input,.notify-form button{height:52px;border-radius:10px}
.notify-form input{border:1px solid rgba(86,97,73,.20);background:rgba(247,244,237,.94);box-shadow:0 6px 22px rgba(45,39,30,.06);font-size:12px}
.notify-form button{border-radius:10px;padding:0 20px;font-size:10px;letter-spacing:1.5px;box-shadow:0 7px 22px rgba(45,39,30,.10)}
.notify-form button span{margin-left:7px;font-size:14px;letter-spacing:0}
.stylist-form{gap:10px}
.stylist-form input,.stylist-form button{height:52px;border-radius:10px}
.stylist-form input{border:1px solid rgba(247,244,237,.24);padding:0 18px}
.stylist-form button{font-size:10px;letter-spacing:1.3px;font-weight:500}
.stylist-form button span{margin-left:7px;font-size:14px;letter-spacing:0}
@media(max-width:760px){
  .content{top:40.5%}
  .teaser{margin-bottom:24px}
  .waitlist-intro{max-width:306px;margin:0 auto 14px}
  .waitlist-intro span{font-size:8px;letter-spacing:3px}
  .waitlist-intro p{font-size:12px}
  .notify-form{max-width:306px;gap:9px}
  .notify-form input,.notify-form button{height:50px;border-radius:10px}
  .notify-form input{padding:0 17px;font-size:12px}
  .notify-form button{font-size:9px;letter-spacing:1.4px}
}
@media(max-width:380px){.notify-form,.waitlist-intro{max-width:292px}}
/* V6 — minimal Stylla waitlist */

.waitlist-intro {
  margin: 0 0 14px;
  text-align: left;
}

.waitlist-intro span {
  display: block;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 3.5px;
  color: #30372e;
}

.notify-form {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 0;
  width: 100%;
  height: 50px;
}

.notify-form input {
  flex: 1;
  height: 50px;
  min-width: 0;
  padding: 0 18px;

  border: 1px solid rgba(48, 55, 46, 0.25);
  border-right: 0;
  border-radius: 4px 0 0 4px;

  background: rgba(247, 244, 237, 0.92);
  color: #30372e;

  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;

  box-shadow: none;
  outline: none;
}

.notify-form input::placeholder {
  color: rgba(48, 55, 46, 0.55);
}

.notify-form input:focus {
  border-color: #566149;
  box-shadow: none;
}

.notify-form button {
  height: 50px;
  padding: 0 21px;

  border: 1px solid #566149;
  border-radius: 0 4px 4px 0;

  background: #566149;
  color: #f7f4ed;

  font-family: Arial, Helvetica, sans-serif;
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 1.5px;

  box-shadow: none;
  white-space: nowrap;
}

.notify-form button span {
  margin-left: 7px;
}


/* MOBILE */

@media (max-width: 760px) {

  .waitlist-intro {
    width: 100%;
    max-width: 330px;
    margin: 0 auto 12px;
    text-align: center;
  }

  .waitlist-intro span {
    font-size: 8px;
    letter-spacing: 3.5px;
  }

  .notify-form {
    display: flex;
    flex-direction: row;
    gap: 0;

    width: 100%;
    max-width: 330px;
    height: 48px;

    margin: 0 auto;
  }

  .notify-form input {
    height: 48px;
    padding: 0 14px;

    border-radius: 4px 0 0 4px;

    font-size: 11px;
  }

  .notify-form button {
    width: auto;
    height: 48px;
    padding: 0 15px;

    border-radius: 0 4px 4px 0;

    font-size: 8px;
    letter-spacing: 1px;
  }
}/* V6 — minimal stacked Stylla form */

@media (max-width: 760px) {

  .waitlist-intro {
    width: 100%;
    max-width: 306px;
    margin: 0 auto 13px;
    text-align: center;
  }

  .waitlist-intro span {
    display: block;
    margin: 0;

    font-family: Arial, Helvetica, sans-serif;
    font-size: 8px;
    font-weight: 400;
    letter-spacing: 3.5px;

    color: #30372e;
  }

  .notify-form {
    display: flex;
    flex-direction: column;
    gap: 8px;

    width: 100%;
    max-width: 306px;
    height: auto;

    margin: 0 auto;
  }

  .notify-form input {
    width: 100%;
    height: 45px;
    padding: 0 16px;

    background: rgba(247, 244, 237, 0.94);

    border: 1px solid rgba(48, 55, 46, 0.20);
    border-radius: 6px;

    box-shadow: none;

    color: #30372e;
    font-size: 11px;

    outline: none;
  }

  .notify-form input::placeholder {
    color: rgba(48, 55, 46, 0.52);
    opacity: 1;
  }

  .notify-form input:focus {
    border-color: rgba(86, 97, 73, 0.65);
    box-shadow: none;
  }

  .notify-form button {
    width: 100%;
    height: 47px;
    padding: 0 18px;

    background: #566149;
    color: #f7f4ed;

    border: 0;
    border-radius: 6px;

    box-shadow: none;

    font-family: Arial, Helvetica, sans-serif;
    font-size: 9px;
    font-weight: 400;
    letter-spacing: 1.7px;

    cursor: pointer;
  }

  .notify-form button span {
    margin-left: 8px;
    font-size: 13px;
  }
}@media (max-width: 760px) {

  .notify-form input,
  .notify-form button {
    display: block;
    flex: none;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .notify-form input {
    height: 47px;
  }

  .notify-form button {
    height: 47px;
  }
}