/** Shopify CDN: Minification failed

Line 16:0 Unexpected "{"
Line 16:1 Unexpected "{"
Line 16:3 Expected identifier but found "'sophimare.css'"
Line 22:0 Unexpected "{"
Line 22:1 Expected identifier but found "%"
Line 23:24 Unexpected "{"
Line 23:33 Expected ":"
Line 23:40 Unexpected "{"
Line 24:12 Expected identifier but found whitespace
Line 24:14 Unexpected "{"
... and 27 more hidden warnings

**/
{{ 'sophimare.css' | asset_url | stylesheet_tag }}

/* =========================================================
   SOPHIMARE COMING SOON
   ========================================================= */

{%- style -%}
  #SophimareComingSoon-{{ section.id }} {
    --sm-bg: {{ section.settings.background_color }};
    --sm-panel: {{ section.settings.panel_color }};
    --sm-text: {{ section.settings.text_color }};
    --sm-muted: {{ section.settings.muted_text_color }};
    --sm-blue: {{ section.settings.baby_blue_color }};
    --sm-gold: {{ section.settings.gold_color }};
    --logo-width: {{ section.settings.logo_width }}px;
    --footer-monogram-width: {{ section.settings.footer_monogram_width }}px;
  }
{%- endstyle -%}

<section
  id="SophimareComingSoon-{{ section.id }}"
  class="sophimare-shell"
>

/* ---------- RESET ---------- */

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
}

button,
input {
  font: inherit;
}

a {
  color: inherit;
}

img {
  max-width: 100%;
}

.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;
}


/* =========================================================
   PAGE SHELL
   ========================================================= */

.sophimare-shell {
  --sm-bg: #f8f3ea;
  --sm-panel: #fffaf2;
  --sm-text: #17202a;
  --sm-muted: #5e6670;
  --sm-blue: #cfe0f1;
  --sm-gold: #b99a66;

  min-height: 100vh;
  overflow: hidden;

  color: var(--sm-text);
  background: var(--sm-bg);

  font-family: Georgia, "Times New Roman", serif;
}


/* =========================================================
   ANNOUNCEMENT BAR
   ========================================================= */

.sophimare-announcement {
  width: 100%;
  margin: 0;
  padding: .9rem 1.25rem;

  background: var(--sm-blue);

  text-align: center;

  font-family: Arial, Helvetica, sans-serif;
  font-size: .62rem;
  line-height: 1.4;
  letter-spacing: .28em;
  text-transform: uppercase;
}


/* =========================================================
   MAIN CONTAINER
   ========================================================= */

.sophimare-main {
  width: min(100% - 2rem, 1080px);
  margin: 0 auto;

  padding: 4.75rem 0 1.5rem;

  text-align: center;
}


/* =========================================================
   LOGO
   ========================================================= */

.sophimare-logo-wrap {
  margin-bottom: 2.5rem;
}

.sophimare-logo-image {
  display: block;

  width: min(var(--logo-width, 390px), 82vw);
  height: auto;

  margin: 0 auto 1.2rem;
}

.sophimare-wordmark {
  margin: 0 0 1.2rem;

  font-family: Didot, "Bodoni MT", "Times New Roman", serif;
  font-size: clamp(3rem, 7vw, 5.3rem);
  font-weight: 400;
  line-height: .95;
  letter-spacing: .07em;

  text-transform: uppercase;
}

.sophimare-tagline {
  margin: 0;

  font-family: Arial, Helvetica, sans-serif;
  font-size: .6rem;
  line-height: 1.5;
  letter-spacing: .34em;
  text-transform: uppercase;
}


/* =========================================================
   FEATURE IMAGE
   ========================================================= */

.sophimare-featured-image-wrap {
  width: min(100%, 880px);

  margin: 0 auto 2.8rem;
  padding: .65rem;

  background: var(--sm-blue);
}

.sophimare-featured-image {
  display: block;

  width: 100%;
  height: auto;

  aspect-ratio: 16 / 9;

  object-fit: cover;
}


/* =========================================================
   HERO
   ========================================================= */

.sophimare-hero {
  text-align: center;
}

.sophimare-overline {
  margin: 0 0 .8rem;

  color: var(--sm-muted);

  font-family: Arial, Helvetica, sans-serif;
  font-size: .57rem;
  line-height: 1.4;
  letter-spacing: .34em;
  text-transform: uppercase;
}

.sophimare-title {
  margin: 0;

  font-family: Didot, "Bodoni MT", "Times New Roman", serif;

  font-size: clamp(4.4rem, 11vw, 8.5rem);
  font-weight: 400;

  line-height: .86;
  letter-spacing: -.015em;

  text-transform: uppercase;
}

.sophimare-subtitle {
  margin: 1.45rem auto .7rem;

  color: var(--sm-gold);

  font-family: Georgia, "Times New Roman", serif;

  font-size: clamp(1.65rem, 4vw, 2.65rem);
  font-style: italic;
  font-weight: 600;

  line-height: 1.15;
}

.sophimare-intro {
  max-width: 660px;

  margin: 0 auto;

  color: var(--sm-muted);

  font-size: clamp(.95rem, 2vw, 1.08rem);
  line-height: 1.55;
}


/* =========================================================
   COUNTDOWN
   ========================================================= */

.sophimare-countdown {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));

  width: min(100%, 700px);

  gap: .85rem;

  margin: 2.3rem auto 0;
}

.sophimare-count-card {
  padding: 1.2rem .55rem 1rem;

  border: 1px solid
    color-mix(in srgb, var(--sm-gold) 48%, transparent);

  background: rgba(255, 255, 255, .18);
}

.sophimare-count-number {
  display: block;

  font-family: Arial, Helvetica, sans-serif;

  font-size: clamp(2rem, 5vw, 2.8rem);
  font-weight: 500;

  line-height: 1;

  font-variant-numeric: tabular-nums;
}

.sophimare-count-label {
  display: block;

  margin-top: .65rem;

  font-family: Arial, Helvetica, sans-serif;

  font-size: .47rem;

  letter-spacing: .28em;
  text-transform: uppercase;
}

.sophimare-countdown-status {
  min-height: 1em;

  margin: .55rem 0 0;

  color: var(--sm-muted);

  font-size: .8rem;
}


/* =========================================================
   OFFER
   ========================================================= */

.sophimare-offer {
  width: min(100%, 820px);

  margin: 3.2rem auto 0;
}

.sophimare-offer-lead,
.sophimare-offer-suffix {
  margin: 0;

  font-size: clamp(1rem, 2.4vw, 1.3rem);
  font-weight: 600;

  line-height: 1.4;
}

.sophimare-discount {
  margin: .05rem 0 .1rem;

  color: var(--sm-gold);

  font-family: Didot, "Bodoni MT", "Times New Roman", serif;

  font-size: clamp(5rem, 12vw, 8rem);
  font-weight: 400;

  line-height: .92;
}


/* =========================================================
   NEWSLETTER
   ========================================================= */

.sophimare-newsletter {
  margin-top: 1.9rem;
}

.sophimare-form-row {
  display: grid;
  grid-template-columns: 1fr;

  width: min(100%, 820px);

  margin: 0 auto;

  border: 1px solid
    color-mix(in srgb, var(--sm-text) 28%, transparent);

  background: rgba(255, 255, 255, .4);
}

.sophimare-email {
  width: 100%;

  padding: 1.25rem 1.35rem;

  border: 0;
  border-bottom: 1px solid
    color-mix(in srgb, var(--sm-text) 15%, transparent);

  outline: 0;

  color: var(--sm-text);
  background: transparent;

  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.sophimare-email::placeholder {
  color: #8d949c;
}

.sophimare-submit {
  width: 100%;

  padding: 1.1rem 1.25rem;

  border: 0;

  color: var(--sm-text);
  background: var(--sm-blue);

  cursor: pointer;

  font-family: Arial, Helvetica, sans-serif;

  font-size: .62rem;

  line-height: 1.4;

  letter-spacing: .28em;

  text-transform: uppercase;

  transition:
    filter .2s ease,
    transform .2s ease;
}

.sophimare-submit:hover {
  filter: brightness(.97);
}

.sophimare-submit:active {
  transform: translateY(1px);
}

.sophimare-form-note {
  max-width: 700px;

  margin: .9rem auto 0;

  color: var(--sm-muted);

  font-size: .82rem;
  line-height: 1.45;
}

.sophimare-consent {
  max-width: 700px;

  margin: .65rem auto 0;

  color: var(--sm-muted);

  font-family: Arial, Helvetica, sans-serif;

  font-size: .62rem;
  line-height: 1.45;
}

.sophimare-form-message {
  width: min(100%, 820px);

  margin: 1rem auto 0;

  padding: 1rem 1.25rem;

  border: 1px solid
    color-mix(in srgb, var(--sm-gold) 45%, transparent);

  background: rgba(255, 255, 255, .4);
}

.sophimare-form-message--error {
  border-color: #a75d5d;
}

.sophimare-form-message h3 {
  margin: 0 0 .35rem;

  font-size: 1.2rem;
  font-weight: 400;
}

.sophimare-form-message p {
  margin: 0;

  color: var(--sm-muted);

  line-height: 1.5;
}

.sophimare-coupon {
  display: inline-block;

  margin-top: .7rem;

  padding: .55rem .8rem;

  border: 1px dashed var(--sm-gold);

  font-family: Arial, Helvetica, sans-serif;

  font-size: .7rem;

  letter-spacing: .18em;
}


/* =========================================================
   OPTIONAL IMAGE GRID
   ========================================================= */

.sophimare-image-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 1rem;

  width: min(100%, 900px);

  margin: 3.5rem auto 0;
}

.sophimare-image-grid-item {
  overflow: hidden;

  aspect-ratio: 4 / 5;

  background: var(--sm-panel);
}

.sophimare-grid-image {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
}


/* =========================================================
   BENEFITS
   ========================================================= */

.sophimare-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  width: min(100%, 900px);

  margin: 3.6rem auto 0;
}

.sophimare-benefit {
  padding: 1.2rem 2rem 1.9rem;
}

.sophimare-benefit + .sophimare-benefit {
  border-left: 1px solid
    color-mix(in srgb, var(--sm-gold) 38%, transparent);
}

.sophimare-benefit-icon {
  display: inline-flex;

  width: 2.7rem;
  height: 2.7rem;

  align-items: center;
  justify-content: center;

  margin-bottom: .9rem;

  color: var(--sm-gold);
}

.sophimare-benefit-icon svg {
  width: 1.8rem;
  height: 1.8rem;

  stroke: currentColor;
  fill: none;

  stroke-width: 1.4;
}

.sophimare-benefit-title {
  margin: 0 0 .65rem;

  font-family: Arial, Helvetica, sans-serif;

  font-size: .58rem;

  line-height: 1.5;

  letter-spacing: .28em;

  text-transform: uppercase;
}

.sophimare-benefit-copy {
  margin: 0;

  color: var(--sm-muted);

  font-size: .95rem;
  line-height: 1.45;
}


/* =========================================================
   FOOTER
   ========================================================= */

.sophimare-footer {
  width: 100%;
  margin: 0;

  padding: 2rem 1.5rem 2.4rem;

  text-align: center;

  background: var(--sm-blue);
}


/* =========================================================
   PASSWORD ACCESS
   ========================================================= */

.sophimare-password-access {
  margin-top: 1.5rem;
}

.sophimare-password-open {
  padding: .3rem;

  border: 0;

  color: var(--sm-muted);
  background: transparent;

  cursor: pointer;

  font-family: Arial, Helvetica, sans-serif;

  font-size: .6rem;

  letter-spacing: .12em;

  text-transform: uppercase;

  text-decoration: underline;
  text-underline-offset: .2rem;
}

.sophimare-password-dialog {
  width: min(92vw, 430px);

  padding: 0;

  border: 0;

  color: var(--sm-text);

  background: var(--sm-panel);

  box-shadow: 0 25px 70px rgba(0, 0, 0, .18);
}

.sophimare-password-dialog::backdrop {
  background: rgba(23, 32, 42, .34);

  backdrop-filter: blur(3px);
}

.sophimare-password-inner {
  position: relative;

  padding: 2rem;
}

.sophimare-password-close {
  position: absolute;

  top: .75rem;
  right: .85rem;

  width: 2rem;
  height: 2rem;

  border: 0;

  background: transparent;

  cursor: pointer;

  font-size: 1.4rem;
}

.sophimare-password-inner h2 {
  margin: 0 0 .5rem;

  font-weight: 400;
}

.sophimare-password-inner p {
  margin: 0 0 1rem;

  color: var(--sm-muted);
}

.sophimare-password-input {
  width: 100%;

  padding: .9rem 1rem;

  border: 1px solid
    color-mix(in srgb, var(--sm-text) 25%, transparent);

  background: #fff;
}

.sophimare-password-submit {
  width: 100%;

  margin-top: .75rem;

  padding: .9rem 1rem;

  border: 0;

  background: var(--sm-blue);

  cursor: pointer;

  font-family: Arial, Helvetica, sans-serif;

  letter-spacing: .14em;

  text-transform: uppercase;
}

.sophimare-password-error {
  color: #8b3d3d !important;
}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */

@media (max-width: 740px) {

  .sophimare-announcement,
  .sophimare-main,
  .sophimare-footer {
    width: 100%;
  }


  .sophimare-main {
    padding: 3rem 1rem 1rem;
  }


  .sophimare-logo-wrap {
    margin-bottom: 2rem;
  }


  .sophimare-logo-image {
    max-width: 80vw;
  }


  .sophimare-tagline {
    padding: 0 1rem;

    font-size: .52rem;

    letter-spacing: .23em;
  }


  .sophimare-featured-image-wrap {
    padding: .4rem;

    margin-bottom: 2.3rem;
  }


  .sophimare-featured-image {
    aspect-ratio: 4 / 3;
  }


  .sophimare-overline {
    font-size: .5rem;

    letter-spacing: .25em;
  }


  .sophimare-title {
    font-size: clamp(3.4rem, 17vw, 5.5rem);

    line-height: .88;
  }


  .sophimare-subtitle {
    font-size: clamp(1.5rem, 8vw, 2.2rem);
  }


  .sophimare-intro {
    padding: 0 .5rem;

    font-size: .95rem;
  }


  .sophimare-countdown {
    gap: .4rem;

    margin-top: 1.8rem;
  }


  .sophimare-count-card {
    padding: .9rem .2rem .75rem;
  }


  .sophimare-count-number {
    font-size: 1.7rem;
  }


  .sophimare-count-label {
    margin-top: .5rem;

    font-size: .4rem;

    letter-spacing: .15em;
  }


  .sophimare-offer {
    margin-top: 2.5rem;
  }


  .sophimare-offer-lead,
  .sophimare-offer-suffix {
    padding: 0 .5rem;

    font-size: 1rem;
  }


  .sophimare-discount {
    font-size: clamp(4.2rem, 20vw, 6.2rem);
  }


  .sophimare-form-note {
    padding: 0 .5rem;
  }


  .sophimare-consent {
    padding: 0 .75rem;
  }


  .sophimare-image-grid {
    gap: .45rem;

    margin-top: 2.75rem;
  }


  .sophimare-image-grid-item {
    aspect-ratio: 3 / 4;
  }


  .sophimare-benefits {
    grid-template-columns: 1fr;

    max-width: 480px;

    margin-top: 2.8rem;
  }


  .sophimare-benefit {
    padding: 1.5rem 1rem;
  }


  .sophimare-benefit + .sophimare-benefit {
    border-left: 0;

    border-top: 1px solid
      color-mix(in srgb, var(--sm-gold) 38%, transparent);
  }


  .sophimare-footer {
    padding: 2rem 1rem;
  }


  .sophimare-footer-words {
    gap: .65rem .8rem;

    font-size: .5rem;

    letter-spacing: .2em;
  }

}


/* =========================================================
   VERY SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

  .sophimare-announcement {
    padding-left: .75rem;
    padding-right: .75rem;

    font-size: .52rem;

    letter-spacing: .18em;
  }


  .sophimare-main {
    padding-left: .75rem;
    padding-right: .75rem;
  }


  .sophimare-countdown {
    gap: .3rem;
  }


  .sophimare-count-card {
    padding-left: .1rem;
    padding-right: .1rem;
  }


  .sophimare-count-number {
    font-size: 1.45rem;
  }


  .sophimare-count-label {
    font-size: .36rem;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    transition: none !important;
    animation: none !important;
  }

}