/** Shopify CDN: Minification failed

Line 237:32 Unexpected "{"

**/
/* ===================================================================
   Curtains Canvas — shared styles
=================================================================== */
:root{
  --cc-bg:            #faf7f2; 
  --cc-surface:       #f1ebe1; 
  --cc-ink:           #241f1a;  
  --cc-ink-muted:     #6b6259;   
  --cc-accent:       #8B918B;
  --cc-accent-ink:    #faf7f2;   
  --cc-border:        #e2d9cb;
  --cc-radius:        2px;
  --cc-font-serif:    "Playfair Display", Georgia, serif;
  --cc-font-sans:     "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  --cc-maxw:          1280px;
}

.cc-wrap{ max-width: var(--cc-maxw); margin: 0 auto; padding: 0 24px; }
.cc-serif{ font-family: var(--cc-font-serif); font-weight: 400;}
.cc-eyebrow{
  font-family: var(--cc-font-sans);
  font-size: 11px; letter-spacing: .3em; text-transform: uppercase;
  color: var(--cc-ink-muted); margin-bottom: 1.25rem; display:block;
}
.cc-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  font-family: var(--cc-font-sans); font-size: 11px; letter-spacing:.2em; text-transform:uppercase;
  padding: 14px 30px; border-radius: 999px; text-decoration:none; transition:.2s ease;
  border: 1px solid transparent; cursor:pointer;
}
.cc-btn--solid{ background: var(--cc-ink); color: var(--cc-bg); }
.cc-btn--solid:hover{ opacity:.88; }
.cc-btn--outline{ border-color: currentColor; color: inherit; background:transparent; }
.cc-btn--outline:hover{ background: rgba(255,255,255,.1); }
.cc-btn--accent{ background: var(--cc-accent); color: var(--cc-accent-ink); }
.cc-btn--accent:hover{ opacity:.9; }

/* ---------- Hero ---------- */
.cc-hero{ position:relative; min-height: 60vh; width:100%; overflow:hidden; padding-top:70px; }
.cc-hero__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.cc-hero__scrim{ position:absolute; inset:0; background: linear-gradient(to bottom, rgba(0,0,0,.42), rgba(0,0,0,.08) 40%, rgba(0,0,0,.45)); }
.cc-hero__content{ position:relative; z-index:2; max-width: var(--cc-maxw); margin:0 auto; height:100%; display:flex; align-items:flex-end; padding: 24px; padding-bottom: 0px; }
.cc-hero__inner{ max-width: 650px; color:#fff; }
.cc-hero__inner .cc-eyebrow{ color: rgba(255,255,255,.85); }
.cc-hero h1{ font-size: clamp(1.7rem, 3.6vw, 3.1rem); line-height: .97; margin:0; }
.cc-hero p{ margin-top: 1.5rem; max-width: 34rem; line-height:1.6; opacity:.92; font-size: 14px; }

.cc-hero__ctas .cc-btn--solid{ background:#fff; color:#000;font-size: 10px; padding:10px 15px;}
.cc-hero__ctas .cc-btn--outline{ border-color: rgba(255,255,255,.6); color:#fff; padding:10px 15px !important; margin-left:0px;}

/* ---------- Section headers ---------- */
.cc-section-head{ max-width: 46rem; margin: 0 auto; padding: 60px 24px 24px; text-align:center; }
.cc-section-head h2{ font-size: clamp(1.9rem, 3.4vw, 2.25rem); line-height:1.15; }
.cc-section-head p{ margin-top: 1.75rem; color: var(--cc-ink-muted); line-height:1.65; }

/* ---------- Opacity grid ---------- */
.cc-opacity{ background: var(--cc-surface); padding-bottom: 48px; }
.cc-grid{ display:grid; gap: 2rem; max-width: var(--cc-maxw); margin: 0 auto; padding: 24px; }
.cc-grid--4{ grid-template-columns: repeat(4, 1fr); }
.cc-grid--3{ grid-template-columns: repeat(3, 1fr); gap: 3.2rem 2rem; }
@media (max-width: 900px){ .cc-grid--4{ grid-template-columns: repeat(2,1fr); } .cc-grid--3{ grid-template-columns: 1fr; } }

.cc-card{ display:flex; flex-direction:column; }
.cc-card__imgwrap{ overflow:hidden; border-radius: var(--cc-radius); background: var(--cc-bg); }
.cc-card__imgwrap img{ width:100%; aspect-ratio: 4/5; object-fit:cover; display:block; transition: transform .7s ease; }
.cc-card:hover .cc-card__imgwrap img{ transform: scale(1.03); }
.cc-card h3{ margin-top: 1.25rem; font-size: 1.4rem; }
.cc-card__num{ font-size:11px; letter-spacing:.2em; color: var(--cc-accent); margin-right: 1rem; }
.cc-card__tagline{ margin-top:.35rem; font-size: 11px; letter-spacing:.15em; text-transform:uppercase; color: var(--cc-ink-muted); }
.cc-card p.cc-card__body{ margin-top: .30rem; font-size:14px; line-height:1.6; color: color-mix(in srgb, var(--cc-ink) 82%, transparent); }
.cc-card__link{ margin-top: 1rem; font-size: 11px; letter-spacing:.2em; text-transform:uppercase; text-decoration:none; border-bottom: 1px solid rgba(0,0,0,.3); padding-bottom:3px; align-self:flex-start; color: inherit; }
.cc-card__link:hover{ border-color: var(--cc-accent); color: var(--cc-accent); }

/* ---------- CTA band ---------- */
.cc-cta{ background: var(--cc-accent); color: var(--cc-accent-ink); }
.cc-cta__inner{ max-width: var(--cc-maxw); margin:0 auto; padding: 76px 24px; display:grid; gap: 3rem; grid-template-columns: 1.7fr 1fr; align-items:end; }
@media (max-width: 800px){ .cc-cta__inner{ grid-template-columns: 1fr; } }
.cc-cta h2{ font-size: clamp(1.9rem, 3.6vw, 2.8rem); line-height:1.1; }
.cc-cta p{ margin-top: 1.5rem; max-width: 34rem; line-height:1.6; opacity:.85; }
.cc-cta__actions{ display:flex; flex-direction:column; gap:.75rem; }
.cc-cta .cc-btn--solid{ background:#fff; color: var(--cc-accent); }
.cc-cta .cc-btn--outline{ border-color: rgba(255,255,255,.45); color:#fff; }

/* ===================================================================
   Product template — curtain configurator
=================================================================== */
.cc-product{ max-width: var(--cc-maxw); margin:0 auto; padding: 40px 24px 80px; display:grid; grid-template-columns: 1.1fr 1fr; gap: 4rem; }
@media (max-width: 900px){ .cc-product{ grid-template-columns: 1fr; gap:2rem; } }
.cc-product__gallery img{ width:100%; border-radius: var(--cc-radius); object-fit:cover; }
.cc-product__title{ font-size: clamp(1.8rem, 3vw, 2.6rem); }
.cc-product__price{ font-size: 1.1rem; margin: .5rem 0 1.75rem; color: var(--cc-ink-muted); }

.cc-option{ margin-bottom: 1.75rem; }
.cc-option__label{ font-size: 11px; letter-spacing:.2em; text-transform:uppercase; color: var(--cc-ink-muted); margin-bottom: .75rem; display:block; }
.cc-swatches{ display:flex; flex-wrap:wrap; gap: .6rem; }
.cc-swatch{ position:relative; cursor:pointer; }
.cc-swatch input{ position:absolute; opacity:0; width:100%; height:100%; cursor:pointer; margin:0; }
.cc-swatch__box{
  display:flex; align-items:center; gap:.6rem;
  border: 1px solid var(--cc-border); border-radius: 999px; padding: 8px 16px;
  font-size: 13px; font-family: var(--cc-font-sans); transition:.15s ease; background:#fff;
}
.cc-swatch input:checked + .cc-swatch__box{ border-color: var(--cc-accent); background: color-mix(in srgb, var(--cc-accent) 8%, #fff); color: var(--cc-accent); }
.cc-swatch__thumb{ width: 22px; height:22px; border-radius:50%; object-fit:cover; background: var(--cc-surface); }

.cc-detail-panels{ margin-top: 1rem; padding: 1.25rem; background: var(--cc-surface); border-radius: var(--cc-radius); }
.cc-detail-panel{ display:none; }
.cc-detail-panel.is-active{ display:block; }
.cc-detail-panel h4{ font-size: 1rem; margin-bottom:.4rem; }
.cc-detail-panel p{ font-size: .9rem; line-height:1.6; color: var(--cc-ink-muted); margin:0; }

.cc-add-to-cart{ width:100%; margin-top: 1.5rem; padding: 16px; font-size:12px; }
.cc-accordion{ margin-top: 2rem; border-top:1px solid var(--cc-border); }
.cc-accordion details{ border-bottom: 1px solid var(--cc-border); padding: 1rem 0; }
.cc-accordion summary{ cursor:pointer; font-size:13px; letter-spacing:.1em; text-transform:uppercase; }
.cc-accordion p{ margin-top:.75rem; line-height:1.6; color: var(--cc-ink-muted); font-size:.9rem; }

/* ===================================================================
   Booking page
=================================================================== */
.cc-book-hero{ position:relative; height:50vh; min-height:320px; width:100%; overflow:hidden; }
.cc-book-hero__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.cc-book-hero__content{ position:relative; z-index:2; max-width:52rem; margin:0 auto; margin-top:30px; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:24px; color:#fff; }
.cc-book-hero__content h1{ font-size:clamp(2rem,4.5vw,3.6rem); line-height:1.05; margin:.5rem 0 0; }
.cc-book-hero__content p{ margin-top:1.25rem; max-width:36rem; line-height:1.65; opacity:.92; }

.cc-book-body{ padding: 70px 0 110px; }
.cc-book-grid{ display:grid; grid-template-columns: 1.1fr 1fr; gap: 3.5rem; }
@media (max-width: 900px){ .cc-book-grid{ grid-template-columns: 1fr; } }

.cc-book-lead{ margin-top:1.5rem; line-height:1.65; color: color-mix(in srgb, var(--cc-ink) 82%, transparent); }
.cc-steps{ list-style:none; margin: 2.5rem 0 0; padding:0; display:flex; flex-direction:column; gap:1.5rem; }
.cc-steps li{ display:flex; gap:1.25rem; }
.cc-steps h3{ font-size:1.15rem; margin:0; }
.cc-steps p{ margin-top:.4rem; font-size:.9rem; line-height:1.6; color: var(--cc-ink-muted); }

.cc-callout{ margin-top:3rem; border:1px solid var(--cc-border); background: var(--cc-surface); border-radius: var(--cc-radius); padding:1.5rem; }
.cc-callout ul{ margin:0; padding:0; list-style:none; font-size:.9rem; line-height:1.8; color: color-mix(in srgb, var(--cc-ink) 82%, transparent); }
.cc-callout li::before {
  display: none !important;
}

.cc-book-form-wrap .cc-form{ border:1px solid var(--cc-border); background: var(--cc-bg); border-radius: var(--cc-radius); padding: 2rem; }
.cc-field{ display:block; margin-top:1.25rem; font-size:.8rem; }
.cc-field > span{ font-size:11px; letter-spacing:.15em; text-transform:uppercase; color: var(--cc-ink-muted); }
.cc-field em{ font-style:normal; color: var(--cc-accent); margin-left:.2rem; }
.cc-field input, .cc-field textarea{
  margin-top:.5rem; display:block; width:100%; border:1px solid var(--cc-border); border-radius: var(--cc-radius);
  padding: 12px 14px; font-size:.9rem; font-family: var(--cc-font-sans); background:#fff; color: var(--cc-ink);
}
.cc-field input:focus, .cc-field textarea:focus{ outline:none; border-color: var(--cc-accent); }
.cc-field small{ display:block; margin-top:.4rem; font-size:11px; color: var(--cc-ink-muted); }
.cc-field-row{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
@media (max-width:520px){ .cc-field-row{ grid-template-columns:1fr; } }
.cc-pills{ margin-top:.6rem; display:flex; flex-wrap:wrap; gap:.5rem; }
.cc-pill input{ position:absolute; opacity:0; }
.cc-pill span{ display:inline-block; padding:8px 16px; border-radius:999px; border:1px solid var(--cc-border); font-size:11px; text-transform:uppercase; letter-spacing:.1em; cursor:pointer; }
.cc-pill input:checked + span{ background: var(--cc-accent); border-color: var(--cc-accent); color: var(--cc-accent-ink); }
.cc-fineprint{ margin-top:1rem; text-align:center; font-size:11px; line-height:1.6; color: var(--cc-ink-muted); }

.cc-thankyou-overlay{ position:fixed; inset:0; z-index:1000; background: rgba(20,15,10,.55); display:flex; align-items:center; justify-content:center; padding:24px; }
.cc-thankyou{ max-width: 34rem; width:100%; background: var(--cc-bg); border-radius: var(--cc-radius); padding: 2.5rem; }
.cc-thankyou h2{ margin-top:.5rem; font-size:1.9rem; }
.cc-thankyou p{ margin-top:1rem; line-height:1.65; color: color-mix(in srgb, var(--cc-ink) 85%, transparent); }

/* ===================================================================
   Collection / filter grid
=================================================================== */
.cc-collection-grid{ display:grid; grid-template-columns: 240px 1fr; gap: 3rem; padding: 40px 24px 90px; }
@media (max-width: 860px){ .cc-collection-grid{ grid-template-columns: 1fr; } }
.cc-filters h2{ font-size:11px; }
.cc-filter-group{ margin-bottom: 1.75rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--cc-border); }
.cc-filter-group h3{ font-size: .85rem; margin-bottom: .75rem; }
.cc-filter-options{ display:flex; flex-direction:column; gap:.5rem; }
.cc-filter-option{ display:flex; align-items:center; gap:.55rem; font-size:.85rem; cursor:pointer; color: var(--cc-ink-muted); }
.cc-filter-option input:checked ~ span{ color: var(--cc-accent); }
.cc-filter-empty{ font-size:.8rem; color: var(--cc-ink-muted); line-height:1.6; }

.cc-product-card{ text-decoration:none; color:inherit; }
.cc-product-badges{ margin-top:.6rem; display:flex; flex-wrap:wrap; gap:.4rem; }
.cc-badge{ font-size:10px; letter-spacing:.08em; text-transform:uppercase; padding:4px 10px; border-radius:999px; background: var(--cc-surface); color: var(--cc-ink-muted); }
.cc-pagination{ margin-top: 3rem; display:flex; justify-content:center; gap:.5rem; }
.cc-pagination a, .cc-pagination span{ padding: 8px 14px; font-size:.85rem; border:1px solid var(--cc-border); border-radius: var(--cc-radius); text-decoration:none; color:inherit; }
.cc-pagination .current{ background: var(--cc-accent); color: var(--cc-accent-ink); border-color: var(--cc-accent); }
@media (max-width: 640px){
  .cc-hero__content{ justify-content:center; }
  .cc-hero__inner{ text-align:center; }
  .cc-hero__ctas{ justify-content:center; width:100%; }
  .cc-hero__ctas .cc-btn{ font-size:10px; padding:11px 15px; }
  .cc-cta__actions .cc-btn{ font-size:10px; padding:11px 15px; }
}
/* =========================================================
   CURTAIN RAILS — MOBILE HORIZONTAL SCROLL
========================================================= */

@media (max-width: 768px) {

  #rails .cc-grid--3 {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;

    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 10px;

    margin-left: 20px;
    margin-right: 0px;

    scrollbar-width: none;
  }

  #rails .cc-grid--3::-webkit-scrollbar {
    display: none;
  }

  #rails .cc-card {
    flex: 0 0 78% !important;
    min-width: 78% !important;
    max-width: 78% !important;

    scroll-snap-align: start;
  }

.cc-hero{ min-height: 50vh;}
        .cc-hero__ctas .cc-btn, {
        font-size: 10px;
        padding: 11px 15px;
    }
    .cc-hero__ctas {
    margin-top: 2.1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
  
  }
}
@media (min-width: 900px) {
  .cc-hero__ctas {
    margin-top: 2.1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    max-width: 300px;
  }

  .cc-hero__ctas .cc-btn {
    font-size: 10px;
  }
}
@media screen and (max-width: 768px) {
.cc-book-hero,
  .cc-book-body {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
  }

  .cc-book-body .cc-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .cc-book-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    gap: 40px !important;
  }

  .cc-book-info,
  .cc-book-form-wrap,
  .cc-form,
  .cc-steps,
  .cc-steps li,
  .cc-callout,
  .cc-field,
  .cc-field-row {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .cc-field-row {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .cc-field input,
  .cc-field textarea {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

}