{
  "title": "How to dry clean curtains | The Swiss Laundry",
  "description": "Curtains accumulate more dust, smoke, and biological material than almost any other textile in the house.",
  "keywords": "",
  "robots": "index,follow,max-snippet:-1,max-image-preview:large",
  "canonical": "https://www.theswisslaundry.com/blog-curtain-dry-cleaning-guide",
  "hreflangs": [
    {
      "hreflang": "en-IN",
      "href": "https://www.theswisslaundry.com/blog-curtain-dry-cleaning-guide"
    },
    {
      "hreflang": "en",
      "href": "https://www.theswisslaundry.com/blog-curtain-dry-cleaning-guide"
    }
  ],
  "og": {
    "type": "article",
    "title": "How to dry clean curtains — when to do it and what to expect. — The Record",
    "description": "Curtains accumulate more dust, smoke, and biological material than almost any other textile in the house. How often to clean them, which types need dry cleaning vs washing, and what the process involves.",
    "url": "https://www.theswisslaundry.com/blog-curtain-dry-cleaning-guide",
    "image": "https://www.theswisslaundry.com/images/og-default.svg",
    "image:width": "1200",
    "image:height": "630",
    "site_name": "The Swiss Laundry",
    "locale": "en_IN"
  },
  "geo": {
    "region": "IN-WB",
    "placename": "Kolkata"
  },
  "jsonLd": [
    [
      {
        "@context": "https://schema.org",
        "@type": "Article",
        "headline": "How to dry clean curtains — when to do it and what to expect.",
        "description": "Curtains accumulate more dust, smoke, and biological material than almost any other textile in the house. How often to clean them, which types need dry cleaning vs washing, and what the process involves.",
        "author": {
          "@type": "Organization",
          "name": "The Swiss Laundry",
          "url": "https://www.theswisslaundry.com"
        },
        "publisher": {
          "@type": "Organization",
          "name": "The Swiss Laundry",
          "logo": {
            "@type": "ImageObject",
            "url": "https://www.theswisslaundry.com/images/favicon.svg"
          }
        },
        "url": "https://www.theswisslaundry.com/blog-curtain-dry-cleaning-guide",
        "datePublished": "2026-01-12",
        "dateModified": "2026-01-12",
        "mainEntityOfPage": {
          "@type": "WebPage",
          "@id": "https://www.theswisslaundry.com/blog-curtain-dry-cleaning-guide"
        },
        "keywords": "curtain dry cleaning Kolkata, how to clean curtains India, dry clean curtains at home, curtain cleaning service Kolkata, silk curtain dry cleaning India, when to clean curtains India",
        "articleSection": "Kolkata",
        "wordCount": 1450
      },
      {
        "@context": "https://schema.org",
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "Home",
            "item": "https://www.theswisslaundry.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "The Record",
            "item": "https://www.theswisslaundry.com/blog"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "How to dry clean curtains — when to do it and what to expect.",
            "item": "https://www.theswisslaundry.com/blog-curtain-dry-cleaning-guide"
          }
        ]
      },
      {
        "@context": "https://schema.org",
        "@type": "LocalBusiness",
        "name": "The Swiss Laundry",
        "telephone": "+919836233354",
        "url": "https://www.theswisslaundry.com",
        "openingHours": "Mo-Sa 10:00-17:00",
        "priceRange": "₹₹",
        "aggregateRating": {
          "@type": "AggregateRating",
          "ratingValue": "4.5",
          "reviewCount": "200",
          "bestRating": "5"
        },
        "address": {
          "@type": "PostalAddress",
          "streetAddress": "P-4 Kasba Industrial Estate, Phase III, E.M. Bypass (East)",
          "addressLocality": "Kolkata",
          "addressRegion": "West Bengal",
          "postalCode": "700107",
          "addressCountry": "IN"
        }
      },
      {
        "@context": "https://schema.org",
        "@type": "FAQPage",
        "mainEntity": [
          {
            "@type": "Question",
            "name": "How often should curtains be dry cleaned?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "At minimum once a year. In Kolkata, the most practical timing is before or after the monsoon — May (before the dust and monsoon humidity season) or October (after the monsoon, before the cooler season when windows are used less). Curtains in rooms with smokers, cooking areas, or high foot traffic should be cleaned twice yearly."
            }
          },
          {
            "@type": "Question",
            "name": "Can all curtains be dry cleaned?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "No. Cotton and linen curtains can typically be machine washed according to their care label. Silk curtains, velvet curtains, heavily embroidered or embellished curtains, and any curtain with a fixed lining or interlining require dry cleaning. When in doubt, check the care label or contact the fabric supplier."
            }
          },
          {
            "@type": "Question",
            "name": "Do I need to remove curtain hooks and rings before bringing curtains for dry cleaning?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "Yes. Remove all hooks, rings, and any metal accessories before bringing curtains for cleaning. Metal hardware can damage the drum equipment and may cause marks on the fabric. Most curtains have a hook tape or header tape that allows easy hook removal and reinsertion."
            }
          },
          {
            "@type": "Question",
            "name": "How long does curtain dry cleaning take?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "Standard turnaround at The Swiss Laundry for curtains is 48–72 hours depending on fabric type and current volume. A full set of curtains from a large home takes longer than a single pair. Call ahead to confirm turnaround time, particularly if you need curtains back for a specific occasion."
            }
          },
          {
            "@type": "Question",
            "name": "Will my curtains shrink after dry cleaning?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "Professional dry cleaning does not involve water and does not cause shrinkage. Curtains that shrink after cleaning were cleaned using water — either machine washed incorrectly or cleaned by an operator using wet cleaning when dry cleaning was required. If your curtains have shrunk, the curtains were not dry cleaned despite what you may have been told."
            }
          }
        ]
      },
      {
        "@context": "https://schema.org",
        "@type": "SpeakableSpecification",
        "cssSelector": [
          ".hero-summary",
          ".glance-points",
          ".faq-q"
        ]
      }
    ]
  ],
  "styleCss": "[data-reveal]{opacity:1!important;transform:none!important}\n/* NAV */\nnav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:0 3rem;height:70px;transition:background 0.5s,border-color 0.5s,box-shadow 0.5s;border-bottom:0.5px solid transparent}\nnav.on-dark{background:rgba(12,11,10,0.2);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom-color:rgba(255,255,255,0.07)}\nnav.on-light{background:rgba(245,240,232,0.97);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom-color:rgba(0,0,0,0.08);box-shadow:0 2px 28px rgba(0,0,0,0.07)}\n.nav-logo a{display:block;line-height:0}\n.nav-logo img{height:46px;width:auto;display:block}\n\n\nnav.on-dark \nnav.on-dark \nnav.on-light \nnav.on-light \n.nav-right{display:flex;align-items:center;gap:0.7rem;flex-shrink:0}\n.btn-track{font-family:var(--sans);font-size:9px;letter-spacing:0.15em;text-transform:uppercase;text-decoration:none;padding:9px 20px;transition:all 0.3s;white-space:nowrap}.btn-connect{font-family:var(--sans);font-size:9px;letter-spacing:0.15em;text-transform:uppercase;text-decoration:none;padding:9px 20px;transition:all 0.3s;white-space:nowrap}\nnav.on-dark .btn-track{border:1px solid rgba(255,255,255,0.35);color:rgba(255,255,255,0.9)}.btn-connect{border:1px solid rgba(255,255,255,0.35);color:rgba(255,255,255,0.9)}\nnav.on-dark .btn-track:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,0.08)}.btn-connect:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,0.08)}\nnav.on-light .btn-track{border:1px solid rgba(192,65,90,0.5);color:var(--pink)}.btn-connect{border:1px solid rgba(192,65,90,0.5);color:var(--pink)}\nnav.on-light .btn-track:hover{border-color:var(--pink);background:rgba(192,65,90,0.05)}.btn-connect:hover{border-color:var(--pink);background:rgba(192,65,90,0.05)}\n.btn-book{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;text-decoration:none;padding:10px 22px;background:var(--pink);color:#fff;border:1px solid var(--pink);transition:background 0.25s;white-space:nowrap}\n.btn-book:hover{background:var(--pink2);border-color:var(--pink2)}\n\n\nnav.on-dark \nnav.on-light \n.mob-menu{display:none;position:fixed;top:70px;left:0;right:0;background:var(--cream);z-index:199;flex-direction:column;border-bottom:0.5px solid rgba(0,0,0,0.1);box-shadow:0 8px 24px rgba(0,0,0,0.08)}\n.mob-menu.open{display:flex}\n.mob-menu a{font-family:var(--sans);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--dark2);text-decoration:none;padding:1rem 2rem;border-bottom:0.5px solid rgba(0,0,0,0.07);transition:color 0.2s}\n.mob-menu a:hover{color:var(--pink)}\n.mob-menu .mob-track{color:var(--pink)}\n.mob-menu .mob-book{background:var(--pink);color:#fff;text-align:center;border-bottom:none;font-weight:500}\n.mob-menu .mob-book:hover{background:var(--pink2);color:#fff}\n\n\n*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}\n*{-webkit-tap-highlight-color:transparent}\n:root{\n  --dark:#0c0b0a;--ink:#1a1918;--gold:#C9A84C;--gold-l:#E2C97E;\n  --gold-b:rgba(201,168,76,.25);--gold-a:rgba(201,168,76,.09);\n  --cream:#F5F0E8;--off:#FAFAF8;--white:#ffffff;\n  --muted:rgba(26,25,24,.48);--pink:#C0415A;\n  --bana:#8B1A1A;--bana-l:rgba(139,26,26,.08);\n  --s:'Cormorant Garamond',Georgia,serif;\n  --ss:'Jost','Helvetica Neue',Arial,sans-serif;\n  --ease:cubic-bezier(.16,1,.3,1);\n  --sh:0 2px 8px rgba(26,25,24,.06),0 8px 28px rgba(26,25,24,.09);\n  --sh2:0 4px 16px rgba(26,25,24,.07),0 20px 56px rgba(26,25,24,.11);\n}\nhtml{scroll-behavior:smooth;overflow-x:hidden}\nbody{font-family:var(--ss);background:var(--off);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}\n::-webkit-scrollbar{width:2px}::-webkit-scrollbar-thumb{background:var(--gold-b)}\n:focus-visible{outline:2px solid var(--gold);outline-offset:3px}\nbody::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:9997;opacity:.013;\n  background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E\");\n  background-size:128px;mix-blend-mode:multiply}\n.skip-link{position:absolute;left:-999px;width:1px;height:1px;overflow:hidden}\n.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;padding:.5rem 1rem;background:var(--gold);color:var(--ink);z-index:9999}\n.seo-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}\n.scroll-bar{position:fixed;top:0;left:0;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold-l));z-index:9999;width:0}\n[data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s var(--ease)}\n[data-reveal].in{opacity:1;transform:none}\n@media(scripting:none){[data-reveal]{opacity:1!important;transform:none!important}}\n.btn{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--ss);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;border:none;cursor:pointer;text-decoration:none;transition:background .2s,transform .15s,box-shadow .2s}\n.btn svg{flex-shrink:0}\n.btn-g{background:var(--gold);color:var(--ink);padding:.8rem 1.8rem}\n.btn-g:hover{background:var(--gold-l);transform:translateY(-1px);box-shadow:0 4px 16px rgba(201,168,76,.3)}\n.btn-dk{background:var(--ink);color:var(--gold);padding:.85rem 2rem}\n.btn-dk:hover{background:#000}\n.btn-ol{background:transparent;color:rgba(245,240,232,.7);padding:.8rem 1.6rem;border:1px solid rgba(245,240,232,.22)}\n.btn-ol:hover{color:var(--cream);border-color:rgba(245,240,232,.5)}\n.btn-row{display:flex;gap:.6rem;flex-wrap:wrap}\n/* hero */\n.bsc-hero{min-height:100svh;background:var(--dark);display:flex;flex-direction:column;justify-content:flex-end;padding:0 8vw 5rem;position:relative;overflow:hidden}\n.bsc-hero::before{content:'';position:absolute;inset:0;pointer-events:none;\n  background:radial-gradient(ellipse 60% 50% at 80% 30%,rgba(139,26,26,.08) 0%,transparent 60%),\n  radial-gradient(circle,rgba(201,168,76,.04) 1px,transparent 1px);\n  background-size:100% 100%,32px 32px}\n.bsc-bg-word{position:absolute;bottom:-0.1em;right:3vw;font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(130px,20vw,300px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(201,168,76,.06);pointer-events:none;user-select:none;z-index:1;letter-spacing:-.05em}\n.bsc-eyebrow{font-family:var(--ss);font-size:10px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:.8rem;margin-bottom:1.8rem;position:relative;z-index:2}\n.bsc-eyebrow::before{content:'';width:24px;height:1px;background:var(--gold);flex-shrink:0}\n.bsc-h1{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(44px,7vw,100px);line-height:.88;letter-spacing:-.04em;color:var(--cream);margin-bottom:2rem;position:relative;z-index:2;max-width:860px}\n.bsc-h1 em{font-style:normal;color:var(--gold)}\n.bsc-lead{font-size:clamp(14px,1.4vw,17px);font-weight:300;color:rgba(245,240,232,.6);line-height:1.85;max-width:540px;margin-bottom:2.5rem;position:relative;z-index:2}\n.bsc-hero-btns{position:relative;z-index:2}\n.bsc-strip{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(201,168,76,.15);margin-top:4rem}\n.bsc-stat{padding:1.4rem 0;border-right:1px solid rgba(201,168,76,.1)}\n.bsc-stat:last-child{border-right:none}\n.bsc-stat-n{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(18px,2.8vw,34px);color:var(--gold);display:block;line-height:1;letter-spacing:-.02em}\n.bsc-stat-l{font-family:var(--ss);font-size:9px;font-weight:300;letter-spacing:.18em;text-transform:uppercase;color:rgba(245,240,232,.35);display:block;margin-top:.3rem}\n/* def box */\n.bsc-def-sec{background:var(--cream);padding:6rem 8vw}\n.bsc-def-inner{max-width:860px;margin:0 auto}\n.bsc-def-box{border:1px solid rgba(201,168,76,.35);border-left:4px solid var(--gold);padding:2.2rem 2.5rem 2.2rem 2.2rem;background:var(--white);margin-bottom:2rem}\n.bsc-def-label{font-family:var(--ss);font-size:9px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.8rem}\n.bsc-def-text{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(17px,2.1vw,24px);line-height:1.55;color:var(--ink)}\n.bsc-def-text em{font-style:normal;color:var(--gold)}\n.bsc-def-source{display:block;margin-top:.9rem;font-family:var(--ss);font-size:10px;font-weight:300;letter-spacing:.1em;color:var(--muted)}\n.bsc-def-note{background:var(--off);padding:1.4rem 1.6rem;font-family:var(--ss);font-size:13px;font-weight:300;line-height:1.85;color:var(--muted)}\n.bsc-def-note strong{color:var(--ink);font-weight:400}\n/* body */\n.bsc-body{background:var(--off);padding:0 8vw 7rem;display:grid;grid-template-columns:220px 1fr;gap:5rem;align-items:start;max-width:1200px;margin:0 auto}\n.bsc-sidebar{position:sticky;top:90px}\n.bsc-sb-label{font-family:var(--ss);font-size:9px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:1.2rem}\n.bsc-sb-list{list-style:none;display:flex;flex-direction:column}\n.bsc-sb-link{display:block;font-family:var(--ss);font-size:11px;font-weight:300;letter-spacing:.06em;color:var(--muted);text-decoration:none;padding:.55rem 0 .55rem .9rem;border-left:2px solid rgba(26,25,24,.08);transition:color .2s,border-color .2s;line-height:1.4}\n.bsc-sb-link:hover,.bsc-sb-link.active{color:var(--ink);border-left-color:var(--gold)}\n.bsc-content{padding-top:5rem}\n/* clauses */\n.clause{margin-bottom:5rem;padding-bottom:5rem;border-bottom:1px solid rgba(26,25,24,.07)}\n.clause:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}\n.clause-num{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(44px,6vw,72px);color:rgba(201,168,76,.15);display:block;line-height:1;margin-bottom:.3rem;letter-spacing:-.04em}\n.clause-title{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(24px,3vw,40px);color:var(--ink);line-height:1.1;margin-bottom:1.4rem;letter-spacing:-.02em}\n.clause-title em{font-style:normal;color:var(--gold)}\n.clause-body{font-family:var(--ss);font-size:14px;font-weight:300;line-height:1.95;color:var(--muted)}\n.clause-body p{margin-bottom:1.1rem}\n.clause-body p:last-child{margin-bottom:0}\n.clause-body strong{color:var(--ink);font-weight:400}\n.clause-body a{color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.3);transition:border-color .2s}\n.clause-body a:hover{border-color:var(--gold)}\n.fact-box{margin:1.8rem 0;padding:1.4rem 1.6rem;border-left:3px solid var(--gold);background:var(--gold-a);font-family:var(--ss);font-size:13px;font-weight:300;line-height:1.75;color:var(--ink)}\n.fact-box strong{font-weight:500}\n.warn-box{margin:1.8rem 0;padding:1.4rem 1.6rem;border-left:3px solid var(--pink);background:rgba(192,65,90,.06);font-family:var(--ss);font-size:13px;font-weight:300;line-height:1.75;color:var(--ink)}\n.warn-box strong{font-weight:500;color:var(--pink)}\n/* banarasi variety grid */\n.variety-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(26,25,24,.08);margin:1.8rem 0}\n.variety-card{background:var(--white);padding:1.8rem 1.6rem;transition:background .2s}\n.variety-card:hover{background:var(--cream)}\n.variety-name{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(17px,2vw,23px);color:var(--ink);display:block;margin-bottom:.25rem}\n.variety-weave{font-family:var(--ss);font-size:9px;font-weight:300;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.5rem}\n.variety-care{font-family:var(--ss);font-size:12px;font-weight:300;color:var(--muted);line-height:1.7}\n.variety-care strong{color:var(--ink);font-weight:400}\n/* stain table */\n.stain-table{width:100%;border-collapse:collapse;font-family:var(--ss);margin:1.8rem 0}\n.stain-table th{font-size:9px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;padding:.8rem 1rem;background:var(--ink);color:rgba(245,240,232,.6);text-align:left}\n.stain-table th:first-child{color:var(--gold-l)}\n.stain-table td{padding:.75rem 1rem;font-size:12px;font-weight:300;line-height:1.6;color:var(--muted);border-bottom:1px solid rgba(26,25,24,.06);vertical-align:top}\n.stain-table tr:last-child td{border-bottom:none}\n.stain-table td:first-child{color:var(--ink);font-weight:400}\n.stain-table .do-cell{color:#5A8A5A}\n.stain-table .warn-cell{color:var(--pink)}\n/* storage steps */\n.storage-steps{display:flex;flex-direction:column;gap:1rem;margin:1.8rem 0}\n.storage-step{display:flex;gap:1.2rem;align-items:flex-start;padding:1.2rem 1.4rem;background:var(--white);border:1px solid rgba(26,25,24,.07);border-left:3px solid transparent;transition:border-color .2s}\n.storage-step:hover{border-left-color:var(--gold)}\n.storage-step-n{font-family:var(--s);font-style:italic;font-weight:300;font-size:32px;color:rgba(201,168,76,.25);line-height:1;flex-shrink:0;width:2.2rem;text-align:center}\n.storage-step-body{padding-top:.1rem}\n.storage-step-h{font-family:var(--ss);font-size:12px;font-weight:500;color:var(--ink);display:block;margin-bottom:.25rem;letter-spacing:.02em}\n.storage-step-d{font-family:var(--ss);font-size:12px;font-weight:300;color:var(--muted);line-height:1.7}\n/* do/dont */\n.do-dont{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.8rem 0}\n.do-list,.dont-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}\n.do-list-h,.dont-list-h{font-family:var(--ss);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;display:block;margin-bottom:.7rem}\n.do-list-h{color:#5A8A5A}\n.dont-list-h{color:var(--pink)}\n.do-list li,.dont-list li{font-family:var(--ss);font-size:12px;font-weight:300;line-height:1.7;color:var(--muted);padding-left:1.2rem;position:relative}\n.do-list li::before{content:'✓';position:absolute;left:0;color:#5A8A5A;font-size:11px;top:.05em}\n.dont-list li::before{content:'✗';position:absolute;left:0;color:var(--pink);font-size:11px;top:.05em}\n/* kolkata note */\n.kolkata-note{background:var(--dark);padding:2rem 2.2rem;margin:1.8rem 0;border-left:4px solid var(--gold)}\n.kolkata-note-label{font-family:var(--ss);font-size:9px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.6rem}\n.kolkata-note-text{font-family:var(--ss);font-size:13px;font-weight:300;line-height:1.8;color:rgba(245,240,232,.7)}\n.kolkata-note-text strong{color:var(--cream);font-weight:400}\n/* pressing guide */\n.press-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin:1.8rem 0}\n.press-card{border:1px solid rgba(26,25,24,.08);padding:1.6rem}\n.press-card.correct{border-color:rgba(201,168,76,.3);background:var(--gold-a)}\n.press-card-label{font-family:var(--ss);font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;display:block;margin-bottom:.5rem}\n.press-card.correct .press-card-label{color:var(--gold)}\n.press-card:not(.correct) .press-card-label{color:var(--pink)}\n.press-card-title{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(16px,1.8vw,22px);color:var(--ink);display:block;margin-bottom:.7rem}\n.press-card-items{list-style:none;display:flex;flex-direction:column;gap:.4rem}\n.press-card-items li{font-family:var(--ss);font-size:12px;font-weight:300;color:var(--muted);padding-left:1rem;position:relative;line-height:1.6}\n.press-card.correct .press-card-items li::before{content:'✓';position:absolute;left:0;color:var(--gold);font-size:11px}\n.press-card:not(.correct) .press-card-items li::before{content:'✗';position:absolute;left:0;color:var(--pink);font-size:11px}\n/* related */\n.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}\n.rel-card{border:1px solid rgba(26,25,24,.08);padding:1.8rem;text-decoration:none;display:flex;flex-direction:column;gap:.6rem;transition:box-shadow .25s,transform .25s,border-color .25s}\n.rel-card:hover{box-shadow:var(--sh2);transform:translateY(-3px);border-color:rgba(201,168,76,.3)}\n.rel-tag{font-family:var(--ss);font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}\n.rel-title{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(15px,1.8vw,20px);color:var(--ink);line-height:1.2}\n.rel-desc{font-family:var(--ss);font-size:11px;font-weight:300;color:var(--muted);line-height:1.65}\n.rel-arrow{font-family:var(--ss);font-size:9px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:auto;padding-top:.8rem;transition:color .2s}\n.rel-card:hover .rel-arrow{color:var(--gold)}\n/* faq */\n.bsc-faq{background:var(--cream);padding:7rem 8vw}\n.bsc-faq-inner{max-width:860px;margin:0 auto}\n.bsc-ey{font-family:var(--ss);font-size:10px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:.8rem;margin-bottom:1.2rem}\n.bsc-ey::before{content:'';width:24px;height:1px;background:var(--gold);flex-shrink:0}\n.bsc-h2{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(28px,4vw,52px);color:var(--ink);line-height:1.05;margin-bottom:2.5rem;letter-spacing:-.02em}\n.bsc-h2 em{font-style:normal;color:var(--gold)}\n.faq-item{border-bottom:1px solid rgba(26,25,24,.09)}\n.faq-item:first-of-type{border-top:1px solid rgba(26,25,24,.09)}\n.faq-q{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(14px,1.5vw,18px);color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:none;border:none;width:100%;text-align:left;padding:.9rem 0;transition:color .2s}\n.faq-q:hover,.faq-item.open .faq-q{color:var(--gold)}\n.faq-ico{width:16px;height:16px;color:rgba(26,25,24,.22);flex-shrink:0;transition:transform .3s,color .2s}\n.faq-item.open .faq-ico{transform:rotate(45deg);color:var(--gold)}\n.faq-a{display:none;font-size:13px;font-weight:300;line-height:1.9;color:var(--muted);padding-bottom:1rem;font-family:var(--ss)}\n.faq-item.open .faq-a{display:block}\n/* cta */\n.bsc-cta{background:var(--gold);padding:8rem 8vw;text-align:center;position:relative;overflow:hidden}\n.bsc-cta::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(-60deg,transparent,transparent 30px,rgba(255,255,255,.04) 30px,rgba(255,255,255,.04) 31px)}\n.bsc-cta-inner{position:relative;z-index:1;max-width:680px;margin:0 auto}\n.bsc-cta-rule{width:36px;height:2px;background:var(--ink);opacity:.2;margin:0 auto 2rem}\n.bsc-cta-h2{font-family:var(--s);font-style:italic;font-weight:300;font-size:clamp(40px,8vw,96px);color:var(--ink);line-height:.88;letter-spacing:-.05em;margin-bottom:.8rem}\n.bsc-cta-sub{font-family:var(--ss);font-size:13px;font-weight:300;color:rgba(26,25,24,.55);line-height:1.8;max-width:440px;margin:0 auto 2rem}\n.bsc-cta-btns{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap}\n/* wa/cursor/intro */\n.wa-float{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:9990;box-shadow:0 4px 20px rgba(37,211,102,.35);transition:transform .3s;text-decoration:none;background:none}\n.wa-float:hover{transform:scale(1.1) translateY(-2px)}\n.wa-float::before{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(37,211,102,.35);animation:waPulse 2.5s ease-out infinite}\n@keyframes waPulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.5);opacity:0}}\n@media(hover:hover) and (pointer:fine){*{cursor:none!important}.cur-d{position:fixed;top:0;left:0;z-index:99999;pointer-events:none;width:8px;height:8px;border-radius:50%;background:var(--gold);transform:translate(-50%,-50%);transition:width .15s,height .15s,opacity .3s}.cur-r{position:fixed;top:0;left:0;z-index:99998;pointer-events:none;width:28px;height:28px;border-radius:50%;border:1.5px solid rgba(201,168,76,.45);transform:translate(-50%,-50%);transition:width .25s var(--ease),height .25s var(--ease),opacity .3s}body.cur-hl .cur-d{width:12px;height:12px}body.cur-hl .cur-r{width:40px;height:40px}body.cur-hd .cur-d,body.cur-hd .cur-r{opacity:0}}\n#introEl{position:fixed;inset:0;z-index:99997;background:var(--dark);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.2rem;transition:opacity .6s ease}\n#introEl.hidden{opacity:0;pointer-events:none}\n.intro-m{font-family:var(--s);font-style:italic;font-weight:300;font-size:88px;color:var(--gold);letter-spacing:-.04em;opacity:0;animation:iFade .8s var(--ease) .15s forwards}\n.intro-l{width:0;height:1px;background:var(--gold);opacity:.4;animation:iGrow .7s var(--ease) .35s forwards}\n.intro-w{font-size:10px;font-weight:300;letter-spacing:.35em;text-transform:uppercase;color:rgba(245,240,232,.38);opacity:0;animation:iFade .6s ease .55s forwards}\n@keyframes iFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}\n@keyframes iGrow{from{width:0}to{width:64px}}\n.pg-ov{position:fixed;inset:0;z-index:99996;background:var(--cream);opacity:0;pointer-events:none;transition:opacity .35s ease}\n.pg-ov.visible{opacity:1;pointer-events:all}\n@media print{.wa-float,.cur-d,.cur-r,#introEl,.pg-ov,.bookPill,.seasonal-banner,.scroll-bar{display:none!important}body{font-size:11pt;background:#fff;color:#000}}\n@media(max-width:960px){.bsc-body{grid-template-columns:1fr;padding-left:6vw;padding-right:6vw}.bsc-sidebar{position:static;display:none}.bsc-content{padding-top:2rem}.variety-grid{grid-template-columns:1fr}.do-dont{grid-template-columns:1fr}.press-grid{grid-template-columns:1fr}.related-grid{grid-template-columns:1fr}}\n@media(max-width:640px){.bsc-hero{padding:0 6vw 4rem}.bsc-strip{grid-template-columns:1fr 1fr}.bsc-stat:nth-child(3),.bsc-stat:nth-child(4){border-top:1px solid rgba(201,168,76,.1)}.bsc-stat:nth-child(even){border-right:none}.bsc-def-sec,.bsc-faq,.bsc-cta{padding-left:6vw;padding-right:6vw}}\n\n/* ═══════════════════════════════════════════════\n   GLOBAL FEATURES — added to every page\n   ═══════════════════════════════════════════════ */\n\n/* ── Sticky booking pill (mobile only) ── */\n.book-pill{\n  display:none;\n  position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%);\n  background:var(--pink);color:#fff;\n  font-family:var(--sans);font-size:10px;font-weight:500;\n  letter-spacing:.18em;text-transform:uppercase;\n  padding:.75rem 1.8rem;border-radius:30px;\n  text-decoration:none;white-space:nowrap;\n  box-shadow:0 4px 20px rgba(192,65,90,.4);\n  z-index:9985;\n  animation:pillIn .4s cubic-bezier(.16,1,.3,1);\n  transition:opacity .3s,transform .3s;\n}\n.book-pill:hover{background:var(--pink2,#a8324a);transform:translateX(-50%) translateY(-2px)}\n.book-pill.hidden{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(8px)}\n@keyframes pillIn{from{opacity:0;transform:translateX(-50%) translateY(16px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}\n@media(max-width:768px){.book-pill{display:flex;align-items:center;gap:.5rem}}\n/* Hide pill on the pickup page itself */\nbody.page-pickup .book-pill{display:none!important}\n\n/* ── Seasonal banner ── */\n.seasonal-banner{\n  background:var(--dark2,#1a1918);color:rgba(255,255,255,.75);\n  font-family:var(--sans);font-size:10px;font-weight:400;letter-spacing:.08em;\n  text-align:center;padding:.45rem 3rem;position:relative;z-index:10000;\n  border-bottom:.5px solid rgba(255,255,255,.08);\n}\n.seasonal-banner a{color:var(--gold,#C9A84C);text-decoration:none;margin-left:.5rem;font-weight:500}\n.seasonal-banner a:hover{text-decoration:underline}\n.banner-close{position:absolute;right:1rem;top:50%;transform:translateY(-50%);\n  background:none;border:none;color:rgba(255,255,255,.4);cursor:pointer;\n  font-size:14px;line-height:1;padding:.2rem;transition:color .2s}\n.banner-close:hover{color:#fff}\n.seasonal-banner.hidden{display:none}\n@media(prefers-color-scheme:light){\n  .seasonal-banner{background:var(--dark2,#1a1918)}\n}\n\n/* ── Dark/light toggle in nav ── */\n.theme-toggle{\n  width:32px;height:32px;border-radius:50%;\n  background:none;border:.5px solid rgba(128,128,128,.25);\n  cursor:pointer;display:flex;align-items:center;justify-content:center;\n  transition:border-color .2s,background .2s;flex-shrink:0;\n}\n.theme-toggle:hover{border-color:var(--gold,#C9A84C);background:rgba(201,168,76,.08)}\n.theme-toggle svg{width:14px;height:14px;transition:opacity .2s}\n.theme-toggle .icon-dark{display:block}\n.theme-toggle .icon-light{display:none}\n[data-theme=\"light\"] .theme-toggle .icon-dark{display:none}\n[data-theme=\"light\"] .theme-toggle .icon-light{display:block}\n\n/* ── Google rating badge in footer ── */\n.g-rating-badge{\n  display:inline-flex;align-items:center;gap:.5rem;\n  text-decoration:none;\n  font-family:var(--sans);\n  padding:.5rem .8rem;\n  border-radius:6px;\n  border:.5px solid rgba(255,255,255,.12);\n  background:rgba(255,255,255,.04);\n  transition:border-color .2s,background .2s;\n  margin-bottom:.8rem;\n}\n.g-rating-badge:hover{border-color:rgba(201,168,76,.3);background:rgba(201,168,76,.05)}\n.g-rating-stars{color:#FBBC04;font-size:13px;letter-spacing:.05em;line-height:1}\n.g-rating-num{font-family:var(--sans);font-size:13px;font-weight:500;color:#fff}\n.g-rating-label{font-family:var(--sans);font-size:9px;font-weight:300;\n  color:rgba(255,255,255,.45);letter-spacing:.08em}\n.g-rating-logo{font-family:var(--sans);font-size:9px;font-weight:700;\n  color:#4285F4;letter-spacing:-.02em}\n@media(prefers-color-scheme:light){\n  .g-rating-badge{border-color:rgba(26,25,24,.12);background:#fff}\n  .g-rating-num{color:#1a1918}\n  .g-rating-label{color:rgba(26,25,24,.45)}\n}\n\n/* ── WhatsApp share button (blogs/guides) ── */\n.wa-share{\n  display:inline-flex;align-items:center;gap:.5rem;\n  background:#25D366;color:#fff;\n  font-family:var(--sans);font-size:9px;font-weight:500;\n  letter-spacing:.15em;text-transform:uppercase;\n  padding:.65rem 1.2rem;border-radius:6px;text-decoration:none;\n  transition:background .2s;\n}\n.wa-share:hover{background:#1da851}\n.wa-share svg{width:14px;height:14px;flex-shrink:0}\n\n/* ── Reading time indicator ── */\n.reading-time{\n  font-family:var(--sans);font-size:10px;font-weight:300;\n  color:var(--txt3,rgba(255,255,255,.4));letter-spacing:.08em;\n  display:inline-flex;align-items:center;gap:.35rem;\n}\n.reading-time svg{width:11px;height:11px;opacity:.6}\n\n/* ── Was this helpful ── */\n.helpful-block{\n  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;\n  padding:1.2rem 0;margin-top:2rem;\n  border-top:1px solid rgba(128,128,128,.12);\n}\n.helpful-label{font-family:var(--sans);font-size:12px;font-weight:300;\n  color:var(--txt3,rgba(255,255,255,.4))}\n.helpful-btn{\n  font-family:var(--sans);font-size:10px;font-weight:400;letter-spacing:.1em;\n  text-transform:uppercase;padding:.4rem 1rem;border-radius:4px;cursor:pointer;\n  border:.5px solid rgba(128,128,128,.2);background:none;\n  color:var(--txt3,rgba(255,255,255,.4));transition:all .2s;\n}\n.helpful-btn:hover,.helpful-btn.active{\n  border-color:var(--pink);color:var(--pink);background:rgba(192,65,90,.06)}\n.helpful-thanks{font-family:var(--sans);font-size:11px;color:var(--pink);display:none}\n.helpful-thanks.show{display:block}\n\n/* ── Page reading progress (long guides) ── */\n.read-progress{\n  position:fixed;top:0;left:0;height:2px;\n  background:var(--gold,#C9A84C);z-index:9999;width:0;\n  transition:width .1s linear;\n}\n\n\n/* FOOTER */\n/* ═══ FOOTER BASE ═══ */\n.site-footer{\n  background:#0a0906;\n  position:relative;\n}\n\n/* ── CONTACT FORM STRIP ── */\n.footer-form-strip{\n  border-bottom:0.5px solid rgba(201,168,76,0.1);\n  padding:5rem 4rem;\n  background:rgba(255,255,255,0.01);\n}\n.footer-form-wrap{\n  max-width:1000px;\n  margin:0 auto;\n}\n.footer-form-header{\n  margin-bottom:2.5rem;\n}\n.footer-form-eye{\n  font-family:var(--sans);font-size:9px;\n  letter-spacing:0.32em;text-transform:uppercase;\n  color:var(--gold);margin-bottom:0.8rem;\n}\n.footer-form-title{\n  font-family:var(--serif);font-style:italic;font-weight:300;\n  font-size:clamp(20px,2.5vw,32px);\n  color:#fff;line-height:1.3;letter-spacing:-0.01em;\n}\n\n/* Form grid */\n.footer-form-row{\n  display:grid;\n  grid-template-columns:repeat(4,1fr);\n  gap:1rem;\n  margin-bottom:1rem;\n}\n.footer-form-field{\n  display:flex;flex-direction:column;gap:0.4rem;\n}\n.footer-form-field-full{\n  margin-bottom:1.2rem;\n}\n.footer-form-label{\n  font-family:var(--sans);font-size:9px;\n  letter-spacing:0.18em;text-transform:uppercase;\n  color:rgba(255,255,255,0.4);\n}\n.footer-form input,\n.footer-form select,\n.footer-form textarea{\n  background:rgba(255,255,255,0.04);\n  border:0.5px solid rgba(255,255,255,0.1);\n  color:#fff;\n  font-family:var(--sans);font-size:13px;font-weight:300;\n  padding:10px 14px;\n  outline:none;\n  transition:border-color 0.3s,background 0.3s;\n  width:100%;\n  appearance:none;\n  -webkit-appearance:none;\n}\n.footer-form input::placeholder,\n.footer-form textarea::placeholder{\n  color:rgba(255,255,255,0.2);\n}\n.footer-form input:focus,\n.footer-form select:focus,\n.footer-form textarea:focus{\n  border-color:rgba(201,168,76,0.5);\n  background:rgba(255,255,255,0.06);\n}\n.footer-form select{\n  background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='rgba(201,168,76,0.6)'/%3E%3C/svg%3E\");\n  background-repeat:no-repeat;\n  background-position:right 14px center;\n  padding-right:32px;\n  cursor:pointer;\n}\n.footer-form select option{\n  background:#1a1918;color:#fff;\n}\n.footer-form textarea{\n  resize:vertical;min-height:80px;\n}\n\n/* Submit row */\n.footer-form-submit-row{\n  display:flex;align-items:center;\n  justify-content:space-between;\n  gap:1rem;flex-wrap:wrap;\n}\n.footer-form-legal{\n  font-family:var(--sans);font-size:10px;\n  color:rgba(255,255,255,0.2);line-height:1.6;\n}\n.footer-form-legal a{\n  color:rgba(255,255,255,0.35);\n  text-decoration:none;\n}\n.footer-form-btn{\n  display:inline-flex;align-items:center;gap:0.6rem;\n  background:var(--pink);border:none;cursor:pointer;\n  font-family:var(--sans);font-size:10px;\n  font-weight:500;letter-spacing:0.2em;text-transform:uppercase;\n  color:#fff;padding:12px 28px;\n  transition:background 0.25s,gap 0.3s;\n  white-space:nowrap;\n}\n.footer-form-btn:hover{background:var(--pink2);gap:0.9rem}\n.footer-form-btn-arrow{\n  display:inline-block;transition:transform 0.3s;\n}\n.footer-form-btn:hover .footer-form-btn-arrow{transform:translateX(4px)}\n\n/* Success message */\n.footer-form-success{\n  padding:1rem 0;\n  font-family:var(--serif);font-style:italic;\n  font-size:16px;color:var(--gold-l);\n}\n\n/* ── MAIN COLUMNS ── */\n.footer-main{\n  display:grid;\n  grid-template-columns:1.5fr 1fr 1fr 1.2fr;\n  gap:3rem;\n  max-width:1200px;margin:0 auto;\n  padding:5rem 4rem;\n  border-bottom:0.5px solid rgba(201,168,76,0.1);\n}\n\n/* Brand col */\n.footer-logo{\n  display:block;height:40px;width:auto;\n  margin-bottom:1.6rem;\n  opacity:0.85;\n}\n.footer-seo-text{\n  font-family:var(--sans);font-size:11px;\n  font-weight:300;line-height:1.85;\n  color:rgba(255,255,255,0.38);\n  margin-bottom:2rem;\n}\n\n/* Chotusingh */\n.footer-chotu{\n  margin-bottom:1.2rem;\n}\n.footer-chotu-img{\n  display:block;height:100px;width:auto;\n  object-fit:contain;\n  mix-blend-mode:lighten;\n  filter:brightness(1.1) contrast(1.05);\n  margin-bottom:0.4rem;\n}\n.footer-chotu-line{\n  font-family:var(--serif);font-style:italic;font-weight:300;\n  font-size:11px;color:rgba(255,255,255,0.22);\n  line-height:1.5;\n}\n\n/* Nav cols */\n.footer-col{\n  display:flex;flex-direction:column;\n}\n.footer-col-brand{\n  display:flex;\n  flex-direction:column;\n}\n.footer-col-title{\n  font-family:var(--sans);font-size:9px;\n  font-weight:500;letter-spacing:0.28em;text-transform:uppercase;\n  color:var(--gold);\n  margin-bottom:1.4rem;\n  padding-bottom:0.8rem;\n  border-bottom:0.5px solid rgba(201,168,76,0.15);\n}\n.footer-links{\n  list-style:none;\n  display:flex;flex-direction:column;gap:0.65rem;\n}\n.footer-links a{\n  font-family:var(--sans);font-size:12px;font-weight:300;\n  color:rgba(255,255,255,0.42);text-decoration:none;\n  transition:color 0.3s ease, padding-left 0.3s ease;\n  line-height:1.4;display:block;\n}\n.footer-links a:hover{\n  color:rgba(255,255,255,0.85);\n  padding-left:4px;\n}\n\n/* Contact col */\n.footer-col-contact{\n  justify-content:space-between;\n  display:flex;\n  flex-direction:column;\n}\n.footer-col-contact .footer-apps{\n  margin-top:auto;\n}\n.footer-contact-item{margin-bottom:1.1rem}\n.footer-contact-lbl{\n  display:block;\n  font-family:var(--sans);font-size:8px;\n  letter-spacing:0.22em;text-transform:uppercase;\n  color:var(--gold);opacity:0.65;margin-bottom:0.25rem;\n}\n.footer-address{\n  font-family:var(--sans);font-size:11px;font-weight:300;\n  line-height:1.7;color:rgba(255,255,255,0.38);\n  font-style:normal;\n}\n.footer-contact-val{\n  display:block;\n  font-family:var(--sans);font-size:12px;font-weight:300;\n  color:rgba(255,255,255,0.42);text-decoration:none;\n  line-height:1.7;transition:color 0.25s;\n}\na.footer-contact-val:hover{color:rgba(255,255,255,0.8)}\n\n/* Social */\n.footer-social{\n  display:flex;gap:0.6rem;flex-wrap:wrap;\n  margin-top:1.2rem;margin-bottom:1.6rem;\n}\n.footer-social-ico{\n  width:32px;height:32px;\n  border:0.5px solid rgba(255,255,255,0.12);\n  display:flex;align-items:center;justify-content:center;\n  color:rgba(255,255,255,0.4);text-decoration:none;\n  transition:border-color 0.3s,color 0.3s;\n}\n.footer-social-ico:hover{\n  border-color:rgba(201,168,76,0.5);color:var(--gold-l);\n}\n.footer-social-ico svg{width:14px;height:14px}\n.footer-social-wa:hover{\n  border-color:rgba(37,211,102,0.5);color:#25D366;\n}\n\n/* App badges */\n.footer-apps{margin-top:auto}\n.footer-apps-label{\n  font-family:var(--sans);font-size:8px;\n  letter-spacing:0.22em;text-transform:uppercase;\n  color:var(--gold);opacity:0.65;margin-bottom:0.8rem;\n}\n.footer-apps-row{display:flex;flex-direction:column;gap:0.5rem}\n.footer-app-badge{\n  display:block;text-decoration:none;\n  border:0.5px solid rgba(255,255,255,0.15);\n  padding:8px 14px;\n  transition:border-color 0.3s,background 0.3s;\n}\n.footer-app-badge:hover{\n  border-color:rgba(201,168,76,0.4);\n  background:rgba(255,255,255,0.03);\n}\n.footer-app-inner{\n  display:flex;align-items:center;gap:10px;\n}\n.footer-app-icon{\n  font-size:22px;color:#fff;\n  line-height:1;flex-shrink:0;\n}\n.footer-app-text{\n  display:flex;flex-direction:column;gap:1px;\n}\n.footer-app-sub{\n  font-family:var(--sans);font-size:8px;\n  color:rgba(255,255,255,0.45);letter-spacing:0.06em;\n}\n.footer-app-name{\n  font-family:var(--sans);font-size:13px;\n  font-weight:500;color:#fff;letter-spacing:0.02em;\n}\n\n/* Legal strip */\n.footer-legal{\n  background:#070604;\n  padding:1.4rem 4rem;\n}\n.footer-legal-inner{\n  max-width:1200px;margin:0 auto;\n  display:flex;flex-direction:column;\n  align-items:center;gap:0.5rem;text-align:center;\n}\n.footer-legal-links{\n  display:flex;flex-wrap:wrap;align-items:center;\n  justify-content:center;gap:0.5rem;\n}\n.footer-legal-links a,\n.footer-legal-txt{\n  font-family:var(--sans);font-size:10px;\n  color:rgba(255,255,255,0.28);text-decoration:none;\n  transition:color 0.25s;\n}\n.footer-legal-links a:hover{color:rgba(255,255,255,0.6)}\n.footer-sep{color:rgba(255,255,255,0.18);font-size:10px}\n.footer-copyright{\n  font-family:var(--sans);font-size:10px;\n  color:rgba(255,255,255,0.18);line-height:1.6;\n}\n\n/* Mobile */\n@media(max-width:1024px){\n  .footer-form-row{grid-template-columns:1fr 1fr;}\n  .footer-main{grid-template-columns:1fr 1fr;padding:4rem 3rem;}\n  .footer-col-brand{grid-column:1/-1;}\n  .footer-form-strip{padding:4rem 3rem;}\n}\n@media(max-width:640px){\n  .footer-form-row{grid-template-columns:1fr;}\n  .footer-main{grid-template-columns:1fr;padding:3rem 1.5rem;gap:2.5rem;}\n  .footer-form-strip{padding:3rem 1.5rem;}\n  .footer-legal{padding:1.2rem 1.5rem;}\n  .footer-form-submit-row{flex-direction:column;align-items:flex-start;}\n  .footer-form-btn{width:100%;justify-content:center;}\n}\n\n\n\n\n\n/* ── Footer SEO text — hidden from visitors, present for Google ── */\n.footer-seo-hidden{\n  position:absolute !important;\n  width:1px !important;\n  height:1px !important;\n  overflow:hidden !important;\n  clip:rect(0,0,0,0) !important;\n  white-space:nowrap !important;\n  pointer-events:none !important;\n  visibility:hidden !important;\n  opacity:0 !important;\n  display:block !important;\n  font-size:0 !important;\n  line-height:0 !important;\n}\n/* ── Footer brand statement — visible, premium ── */\n.footer-brand-statement{\n  font-family:var(--serif);\n  font-style:italic;\n  font-weight:300;\n  font-size:clamp(14px,1.3vw,17px);\n  line-height:1.7;\n  color:rgba(255,255,255,0.45);\n  margin-bottom:1.8rem;\n}\n\n\n\n\n \n \n \n\n\n\n.back-to-top{\n  position:fixed;\n  bottom:2rem;\n  left:2rem;\n  width:44px;height:44px;\n  border:0.5px solid rgba(201,168,76,0.35);\n  display:flex;align-items:center;justify-content:center;\n  color:rgba(255,255,255,0.5);\n  background:rgba(12,11,10,0.85);\n  backdrop-filter:blur(8px);\n  text-decoration:none;\n  z-index:998;\n  opacity:0;\n  transform:translateY(8px);\n  transition:opacity 0.3s ease,transform 0.3s ease,\n             border-color 0.3s ease,color 0.3s ease;\n  pointer-events:none;\n}\n.back-to-top.visible{\n  opacity:1;\n  transform:translateY(0);\n  pointer-events:auto;\n}\n.back-to-top:hover{\n  border-color:rgba(201,168,76,0.7);\n  color:var(--gold-l);\n}\n.back-to-top svg{\n  width:16px;height:16px;\n}\n@media(max-width:768px){\n  .back-to-top{\n    bottom:5.5rem;\n    left:1rem;\n    width:40px;height:40px;\n  }\n}\n\n\n\n\n\n\n/* ── Compact contact ── */\n.footer-contact-compact{\n  display:flex;flex-direction:column;gap:0.55rem;\n  margin-bottom:1rem;\n}\n.footer-contact-row{\n  font-family:var(--sans);font-size:11px;font-weight:300;\n  color:rgba(255,255,255,0.42);line-height:1.5;\n  display:flex;align-items:baseline;gap:0.5rem;\n  flex-wrap:wrap;\n}\n.footer-contact-row a{\n  color:rgba(255,255,255,0.42);text-decoration:none;\n  transition:color 0.25s;\n}\n.footer-contact-row a:hover{color:rgba(255,255,255,0.8)}\n.fcc-lbl{font-size:10px;flex-shrink:0;opacity:0.6}\n.fcc-sep{opacity:0.35;margin:0 2px}\n\n/* ── App icon buttons ── */\n.footer-apps-row{\n  display:flex;gap:0.8rem;\n  flex-direction:row !important;\n}\n.footer-app-icon-btn{\n  display:flex;align-items:center;justify-content:center;\n  width:40px;height:40px;\n  border:0.5px solid rgba(255,255,255,0.15);\n  color:rgba(255,255,255,0.5);\n  text-decoration:none;\n  transition:border-color 0.3s,color 0.3s;\n}\n.footer-app-icon-btn:hover{\n  border-color:rgba(201,168,76,0.5);\n  color:var(--gold-l);\n}\n.footer-app-icon-btn svg{width:20px;height:20px}\n\n\n\n.footer-threshold{\n  width:100%;height:1px;\n  background:linear-gradient(90deg,\n    transparent,rgba(201,168,76,0.4) 50%,transparent);\n}\n\n\n</html\n.seo-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;pointer-events:none}\n.footer-form-btn-txt{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:0.22em;text-transform:uppercase}\n.footer-social-wa{display:inline-flex;align-items:center;gap:0.5rem;font-family:'Jost',sans-serif;font-size:11px;font-weight:300;color:rgba(255,255,255,0.5);transition:color 0.2s}\n.footer-social-wa:hover{color:#25D366}\n\n/* Pin toggle */\n.pin-toggle{\n  font-family:var(--sans);font-size:10px;font-weight:400;\n  letter-spacing:.12em;text-transform:uppercase;\n  color:rgba(201,168,76,.6);background:none;border:none;\n  cursor:pointer;padding:0;margin-bottom:1rem;\n  display:block;transition:color .2s;\n}\n.pin-toggle:hover{color:var(--gold);}\n#pinGrid[style*=\"display: grid\"]{display:grid!important;}\n\n/* ══ GARMENT CARE SYMBOLS — floating background ══ */\n.garment-bg{\n  position:absolute;inset:0;\n  pointer-events:none;overflow:hidden;\n  z-index:0;\n  opacity:.06; /* very subtle on light bg */\n}\n@media(prefers-color-scheme:dark){.garment-bg{opacity:.04}}\n\n.garment-symbol{\n  position:absolute;\n  font-size:clamp(20px,3vw,36px);\n  color:var(--pink);\n  animation:garmentFloat var(--gd,20s) ease-in-out infinite var(--gdelay,0s);\n  user-select:none;\n  line-height:1;\n}\n@keyframes garmentFloat{\n  0%   {transform:translateY(0) rotate(0deg);   opacity:0}\n  5%   {opacity:1}\n  45%  {transform:translateY(-18px) rotate(3deg);opacity:1}\n  55%  {transform:translateY(-18px) rotate(-3deg);opacity:1}\n  95%  {opacity:.8}\n  100% {transform:translateY(0) rotate(0deg);   opacity:0}\n}\n\n/* Sections that get the garment background */\n.how-section,.speed-section,.cov-section,.free-section,\n.app-section,.faq-section,.other-ways{position:relative;overflow:hidden}\n\n/* ── SECTION TEXT — explicit contrast on light bg ── */\n.how-h2,.speed-h2,.cov-h2,.free-h2,.app-h2,.faq-h2{color:var(--txt)}\n.how-title{color:var(--txt);font-size:clamp(18px,2vw,24px)}\n.how-desc,.speed-desc,.speed-note,.cov-lead,.cov-note,.app-body,.free-body,.faq-a{color:var(--txt2)}\n.speed-time{color:var(--pink)}\n.speed-name{color:var(--txt)}\n.eyebrow-m{color:var(--pink);opacity:1}\n.pin-num{color:var(--pink)}\n.pin-area{color:var(--txt2)}\n.thresh-val{color:var(--pink)}\n.thresh-lbl{color:var(--txt3)}\n.thresh-or{color:var(--txt3)}\n.ow-hl{color:var(--txt)}\n.ow-name{color:var(--txt)}\n.ow-detail{color:var(--txt3)}\n.ow-hours{background:rgba(192,65,90,.05);border-color:rgba(192,65,90,.15)}\n.ow-hours strong{color:var(--pink)}\n.app-feat{color:var(--txt2)}\n/* pin tag on cream */\n.pin-tag{background:rgba(26,25,24,.04);border-color:rgba(26,25,24,.1)}\n.pin-tag:hover{border-color:rgba(192,65,90,.25);background:rgba(192,65,90,.03)}\n/* speed card on cream */\n.speed-card{background:#fff;border-color:rgba(26,25,24,.1)}\n.speed-card:hover{background:rgba(192,65,90,.03);border-color:rgba(192,65,90,.2)}\n.speed-card.popular{background:rgba(192,65,90,.05);border-color:rgba(192,65,90,.3)}\n.speed-icon{background:rgba(192,65,90,.06);border-color:rgba(192,65,90,.15);color:var(--pink)}\n.speed-note{border-color:rgba(26,25,24,.08);color:var(--txt3)}\n/* thresh items on cream */\n.thresh-item{background:#fff;border-color:rgba(201,168,76,.2)}\n/* faq on cream */\n.faq-item,.faq-item:first-of-type{border-color:rgba(26,25,24,.1)}\n.faq-q{color:var(--txt)}\n.faq-icon{color:var(--txt3)}\n/* how step */\n.how-num{background:var(--pink)}\n/* app btn on cream */\n.app-btn{background:#fff;color:var(--txt);border-color:rgba(26,25,24,.12)}\n.app-btn:hover{background:#f0ece4}\n.app-feat svg{color:var(--pink)}\n/* ow methods on cream */\n.ow-method{border-color:rgba(26,25,24,.08)}\n.ow-icon{background:rgba(192,65,90,.05);border-color:rgba(192,65,90,.1)}\n.ow-icon svg{color:var(--pink)}\n.ow-method:hover .ow-name{color:var(--pink)}\n.ow-arrow{color:rgba(26,25,24,.2)}\n/* other-ways section */\n.other-ways{border-color:rgba(26,25,24,.08)}\n/* how grid connector line */\n.how-grid::before{background:linear-gradient(90deg,transparent,rgba(192,65,90,.15) 20%,rgba(192,65,90,.15) 80%,transparent)}\n\n/* DARK MODE overrides */\n@media(prefers-color-scheme:dark){\n  .how-section,.cov-section,.app-section{background:var(--bg2)!important}\n  .speed-section,.free-section,.faq-section,.other-ways{background:var(--bg)!important}\n  .how-h2,.speed-h2,.cov-h2,.free-h2,.app-h2,.faq-h2{color:#fff}\n  .how-title,.speed-name,.ow-hl,.ow-name,.faq-q{color:var(--txt,var(--ink,var(--dark2,#1a1918)))}\n  .how-desc,.speed-desc,.speed-note,.cov-lead,.cov-note,.app-body,.free-body,.faq-a{color:var(--txt2)}\n  .eyebrow-m{color:rgba(201,168,76,.75)}\n  .pin-num{color:var(--gold)}\n  .pin-area{color:var(--txt3)}\n  .pin-tag{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}\n  .speed-card{background:var(--surf);border-color:var(--surf-b)}\n  .speed-card.popular{background:rgba(201,168,76,.05);border-color:rgba(201,168,76,.35)}\n  .speed-icon{background:rgba(201,168,76,.08);border-color:rgba(201,168,76,.15);color:var(--gold)}\n  .speed-time{color:var(--gold)}\n  .thresh-item{background:var(--surf);border-color:rgba(201,168,76,.15)}\n  .thresh-val{color:var(--gold)}\n  .faq-item,.faq-item:first-of-type{border-color:var(--surf-b)}\n  .faq-icon{color:var(--txt3)}\n  .app-btn{background:var(--surf);color:#fff;border-color:var(--surf-b)}\n  .app-btn:hover{background:rgba(255,255,255,.09)}\n  .app-feat svg{color:var(--pink)}\n  .ow-method{border-color:var(--surf-b)}\n  .ow-icon{background:rgba(201,168,76,.05);border-color:rgba(201,168,76,.15)}\n  .ow-icon svg{color:var(--gold)}\n  .ow-hours{background:rgba(201,168,76,.05);border-color:rgba(201,168,76,.12)}\n  .ow-hours strong{color:rgba(201,168,76,.7)}\n  .other-ways{border-color:var(--surf-b)}\n  .how-grid::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.1) 20%,rgba(255,255,255,.1) 80%,transparent)}\n}\n\n/* ══ GARMENT CARE SYMBOLS — floating background ══ */\n.garment-bg{\n  position:absolute;inset:0;\n  pointer-events:none;overflow:hidden;\n  z-index:0;\n  opacity:.06; /* very subtle on light bg */\n}\n@media(prefers-color-scheme:dark){.garment-bg{opacity:.04}}\n\n.garment-symbol{\n  position:absolute;\n  font-size:clamp(20px,3vw,36px);\n  color:var(--pink);\n  animation:garmentFloat var(--gd,20s) ease-in-out infinite var(--gdelay,0s);\n  user-select:none;\n  line-height:1;\n}\n@keyframes garmentFloat{\n  0%   {transform:translateY(0) rotate(0deg);   opacity:0}\n  5%   {opacity:1}\n  45%  {transform:translateY(-18px) rotate(3deg);opacity:1}\n  55%  {transform:translateY(-18px) rotate(-3deg);opacity:1}\n  95%  {opacity:.8}\n  100% {transform:translateY(0) rotate(0deg);   opacity:0}\n}\n\n/* Sections that get the garment background */\n.how-section,.speed-section,.cov-section,.free-section,\n.app-section,.faq-section,.other-ways{position:relative;overflow:hidden}\n\n/* ── SECTION TEXT — explicit contrast on light bg ── */\n.how-h2,.speed-h2,.cov-h2,.free-h2,.app-h2,.faq-h2{color:var(--txt)}\n.how-title{color:var(--txt);font-size:clamp(18px,2vw,24px)}\n.how-desc,.speed-desc,.speed-note,.cov-lead,.cov-note,.app-body,.free-body,.faq-a{color:var(--txt2)}\n.speed-time{color:var(--pink)}\n.speed-name{color:var(--txt)}\n.eyebrow-m{color:var(--pink);opacity:1}\n.pin-num{color:var(--pink)}\n.pin-area{color:var(--txt2)}\n.thresh-val{color:var(--pink)}\n.thresh-lbl{color:var(--txt3)}\n.thresh-or{color:var(--txt3)}\n.ow-hl{color:var(--txt)}\n.ow-name{color:var(--txt)}\n.ow-detail{color:var(--txt3)}\n.ow-hours{background:rgba(192,65,90,.05);border-color:rgba(192,65,90,.15)}\n.ow-hours strong{color:var(--pink)}\n.app-feat{color:var(--txt2)}\n/* pin tag on cream */\n.pin-tag{background:rgba(26,25,24,.04);border-color:rgba(26,25,24,.1)}\n.pin-tag:hover{border-color:rgba(192,65,90,.25);background:rgba(192,65,90,.03)}\n/* speed card on cream */\n.speed-card{background:#fff;border-color:rgba(26,25,24,.1)}\n.speed-card:hover{background:rgba(192,65,90,.03);border-color:rgba(192,65,90,.2)}\n.speed-card.popular{background:rgba(192,65,90,.05);border-color:rgba(192,65,90,.3)}\n.speed-icon{background:rgba(192,65,90,.06);border-color:rgba(192,65,90,.15);color:var(--pink)}\n.speed-note{border-color:rgba(26,25,24,.08);color:var(--txt3)}\n/* thresh items on cream */\n.thresh-item{background:#fff;border-color:rgba(201,168,76,.2)}\n/* faq on cream */\n.faq-item,.faq-item:first-of-type{border-color:rgba(26,25,24,.1)}\n.faq-q{color:var(--txt)}\n.faq-icon{color:var(--txt3)}\n/* how step */\n.how-num{background:var(--pink)}\n/* app btn on cream */\n.app-btn{background:#fff;color:var(--txt);border-color:rgba(26,25,24,.12)}\n.app-btn:hover{background:#f0ece4}\n.app-feat svg{color:var(--pink)}\n/* ow methods on cream */\n.ow-method{border-color:rgba(26,25,24,.08)}\n.ow-icon{background:rgba(192,65,90,.05);border-color:rgba(192,65,90,.1)}\n.ow-icon svg{color:var(--pink)}\n.ow-method:hover .ow-name{color:var(--pink)}\n.ow-arrow{color:rgba(26,25,24,.2)}\n/* other-ways section */\n.other-ways{border-color:rgba(26,25,24,.08)}\n/* how grid connector line */\n.how-grid::before{background:linear-gradient(90deg,transparent,rgba(192,65,90,.15) 20%,rgba(192,65,90,.15) 80%,transparent)}\n\n/* DARK MODE overrides */\n@media(prefers-color-scheme:dark){\n  .how-section,.cov-section,.app-section{background:var(--bg2)!important}\n  .speed-section,.free-section,.faq-section,.other-ways{background:var(--bg)!important}\n  .how-h2,.speed-h2,.cov-h2,.free-h2,.app-h2,.faq-h2{color:#fff}\n  .how-title,.speed-name,.ow-hl,.ow-name,.faq-q{color:var(--txt,var(--ink,var(--dark2,#1a1918)))}\n  .how-desc,.speed-desc,.speed-note,.cov-lead,.cov-note,.app-body,.free-body,.faq-a{color:var(--txt2)}\n  .eyebrow-m{color:rgba(201,168,76,.75)}\n  .pin-num{color:var(--gold)}\n  .pin-area{color:var(--txt3)}\n  .pin-tag{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}\n  .speed-card{background:var(--surf);border-color:var(--surf-b)}\n  .speed-card.popular{background:rgba(201,168,76,.05);border-color:rgba(201,168,76,.35)}\n  .speed-icon{background:rgba(201,168,76,.08);border-color:rgba(201,168,76,.15);color:var(--gold)}\n  .speed-time{color:var(--gold)}\n  .thresh-item{background:var(--surf);border-color:rgba(201,168,76,.15)}\n  .thresh-val{color:var(--gold)}\n  .faq-item,.faq-item:first-of-type{border-color:var(--surf-b)}\n  .faq-icon{color:var(--txt3)}\n  .app-btn{background:var(--surf);color:#fff;border-color:var(--surf-b)}\n  .app-btn:hover{background:rgba(255,255,255,.09)}\n  .app-feat svg{color:var(--pink)}\n  .ow-method{border-color:var(--surf-b)}\n  .ow-icon{background:rgba(201,168,76,.05);border-color:rgba(201,168,76,.15)}\n  .ow-icon svg{color:var(--gold)}\n  .ow-hours{background:rgba(201,168,76,.05);border-color:rgba(201,168,76,.12)}\n  .ow-hours strong{color:rgba(201,168,76,.7)}\n  .other-ways{border-color:var(--surf-b)}\n  .how-grid::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.1) 20%,rgba(255,255,255,.1) 80%,transparent)}\n}\n\n/* ── Hero is always dark regardless of system setting ── */\nsection#book-form,section#book-form *{--bg:#1a1918}\nsection#book-form{background:#1a1918!important}\nsection#book-form .f-brand-tag{color:var(--gold)!important}\nsection#book-form .f-title{color:#fff!important}\nsection#book-form .f-badge{color:rgba(255,255,255,.4)!important}\nsection#book-form .f-q{color:#fff!important}\nsection#book-form .f-q em{color:var(--gold)!important}\nsection#book-form .f-step-txt{color:rgba(255,255,255,.35)!important}\nsection#book-form .f-step-txt strong{color:#fff!important}\nsection#book-form .f-dot{background:rgba(255,255,255,.2)!important}\nsection#book-form .f-dot.cur{background:var(--gold)!important}\nsection#book-form .f-dot.done{background:var(--pink)!important}\nsection#book-form .f-box{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}\nsection#book-form .f-in{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.12)!important;color:#fff!important}\nsection#book-form .f-in::placeholder{color:rgba(255,255,255,.3)!important}\nsection#book-form .f-lbl{color:rgba(255,255,255,.4)!important}\nsection#book-form .f-pfx{color:rgba(255,255,255,.35)!important}\nsection#book-form .f-hint{color:rgba(255,255,255,.3)!important}\nsection#book-form .f-hint kbd{color:rgba(255,255,255,.35)!important;background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.15)!important}\nsection#book-form .f-bar-row{border-color:rgba(255,255,255,.1)!important}\nsection#book-form .f-sub{color:rgba(255,255,255,.3)!important}\nsection#book-form .f-sub a{color:rgba(201,168,76,.5)!important}\nsection#book-form .f-back{color:rgba(255,255,255,.3)!important}\nsection#book-form .profile-card{background:rgba(201,168,76,.08)!important;border-color:rgba(201,168,76,.2)!important}\nsection#book-form .profile-name{color:#fff!important}\nsection#book-form .profile-detail{color:rgba(255,255,255,.45)!important}\nsection#book-form .edit-btn{color:rgba(201,168,76,.55)!important}\nsection#book-form .choice-card{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.1)!important}\nsection#book-form .choice-card:hover,section#book-form .choice-card.on{background:rgba(201,168,76,.1)!important;border-color:rgba(201,168,76,.4)!important}\nsection#book-form .choice-name{color:#fff!important}\nsection#book-form .choice-sub{color:rgba(255,255,255,.4)!important}\nsection#book-form .tnc-wrap{background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.08)!important}\nsection#book-form .tnc-hd{color:rgba(255,255,255,.4)!important}\nsection#book-form .tnc-body{border-color:rgba(255,255,255,.06)!important}\nsection#book-form .tnc-item{color:rgba(255,255,255,.45)!important}\nsection#book-form .agree-txt{color:rgba(255,255,255,.4)!important}\nsection#book-form .agree-box{border-color:rgba(255,255,255,.2)!important}\nsection#book-form .captcha-row{background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.08)!important}\nsection#book-form .cap-check{border-color:rgba(255,255,255,.2)!important}\nsection#book-form .cap-lbl{color:rgba(255,255,255,.45)!important}\nsection#book-form .cap-logo{color:rgba(255,255,255,.2)!important}\nsection#book-form .otp-d{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.12)!important;color:#fff!important}\nsection#book-form .otp-hint{color:rgba(255,255,255,.4)!important}\nsection#book-form .otp-resend{color:rgba(201,168,76,.55)!important}\nsection#book-form .otp-timer{color:rgba(255,255,255,.3)!important}\nsection#book-form .f-err{color:var(--pink)!important}\nsection#book-form .f-alert{color:var(--pink)!important;background:rgba(192,65,90,.08)!important;border-color:rgba(192,65,90,.2)!important}\nsection#book-form .f-confirm-note{color:rgba(255,255,255,.2)!important}\n\n.faq-a{color:var(--txt2,#3d3a36);line-height:2}\n\nbody{color:#1a1918}\n@media(prefers-color-scheme:dark){body{color:#fff}}\n\n\n\n\n.post-hero{background:#0c0b0a;min-height:100svh;display:grid;grid-template-columns:1fr 1.6fr;position:relative;overflow:hidden}\n.post-hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(201,168,76,.06) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;z-index:0}\n.hero-num-col{display:flex;align-items:center;justify-content:flex-end;padding:8rem 3rem 8rem 8vw;position:relative;z-index:1;border-right:1px solid rgba(201,168,76,.12)}\n.hero-edition-num{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(100px,18vw,240px);line-height:.85;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px rgba(201,168,76,.3);display:block;user-select:none}\n.hero-content-col{display:flex;flex-direction:column;justify-content:center;padding:8rem 8vw 8rem 4rem;position:relative;z-index:1}\n.post-eyebrow{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}\n.post-cat-pill{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;padding:4px 10px;border-radius:2px;border:1px solid rgba(201,168,76,.3);color:#C9A84C;background:rgba(201,168,76,.08)}\n.post-edition-label{font-family:'Jost',sans-serif;font-size:9px;font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:rgba(245,240,232,.3)}\n.post-h1{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(26px,3.5vw,52px);line-height:1.06;letter-spacing:-.03em;color:#F5F0E8;margin-bottom:2rem;max-width:640px}\n.post-h1 em{font-style:normal;color:#C9A84C}\n.post-rule{width:48px;height:1px;background:#C9A84C;margin-bottom:2rem;opacity:.5}\n.post-meta-strip{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:2.5rem}\n.meta-item{font-family:'Jost',sans-serif;font-size:10px;font-weight:300;letter-spacing:.1em;color:rgba(245,240,232,.35);display:flex;align-items:center;gap:.4rem}\n.meta-item strong{color:rgba(245,240,232,.6);font-weight:400}\n.meta-dot{width:3px;height:3px;border-radius:50%;background:rgba(201,168,76,.4);display:inline-block}\n.hero-summary{border-left:2px solid rgba(201,168,76,.4);padding:.8rem 0 .8rem 1.2rem;font-family:'Jost',sans-serif;font-size:13px;font-weight:300;line-height:1.85;color:rgba(245,240,232,.55);max-width:520px;font-style:italic}\n.at-a-glance{background:#F5F0E8;padding:5rem 8vw;border-bottom:1px solid rgba(26,25,24,.08)}\n.glance-inner{max-width:860px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4rem;align-items:start}\n.glance-label{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:#C9A84C;display:flex;align-items:center;gap:.8rem;margin-bottom:1.2rem}\n.glance-label::before{content:'';width:24px;height:1px;background:#C9A84C;flex-shrink:0}\n.glance-h2{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(22px,2.8vw,36px);color:#1a1918;line-height:1.1;letter-spacing:-.02em;margin-bottom:1.4rem}\n.glance-h2 em{font-style:normal;color:#C9A84C}\n.glance-points{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.8rem}\n.glance-points li{font-family:'Jost',sans-serif;font-size:13px;font-weight:300;line-height:1.7;color:rgba(26,25,24,.65);padding-left:1.4rem;position:relative}\n.glance-points li::before{content:'';position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:#C9A84C;opacity:.5}\n.jump-nav{background:rgba(26,25,24,.04);border-radius:8px;padding:1.4rem 1.6rem}\n.jump-nav-label{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:rgba(26,25,24,.4);margin-bottom:.8rem;display:block}\n.jump-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}\n.jump-links li a{font-family:'Jost',sans-serif;font-size:12px;font-weight:300;color:rgba(26,25,24,.55);text-decoration:none;display:flex;align-items:center;gap:.5rem;transition:color .2s;padding:.2rem 0}\n.jump-links li a:hover{color:#C9A84C}\n.jump-links li a::before{content:'';width:12px;height:1px;background:currentColor;flex-shrink:0;opacity:.4}\n.post-body{background:#FAFAF8;padding:6rem 8vw}\n.post-body-inner{max-width:720px;margin:0 auto}\n.post-body p{font-family:'Jost',sans-serif;font-size:15px;font-weight:300;line-height:1.95;color:rgba(26,25,24,.72);margin-bottom:1.4rem}\n.post-body strong{color:#1a1918;font-weight:400}\n.post-body a{color:#C9A84C;text-decoration:none;border-bottom:1px solid rgba(201,168,76,.35);transition:border-color .2s}\n.post-body a:hover{border-bottom-color:#C9A84C}\n.post-h2{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(24px,3vw,38px);line-height:1.1;letter-spacing:-.02em;color:#1a1918;margin:3.5rem 0 1.2rem;padding-top:1rem;border-top:1px solid rgba(26,25,24,.07)}\n.post-h2:first-child{margin-top:0;border-top:none;padding-top:0}\n.post-h2 em{font-style:normal;color:#C9A84C}\n.pull-quote{border-left:3px solid #C9A84C;margin:3rem 0;padding:1.5rem 2rem;background:rgba(201,168,76,.04)}\n.pull-quote p{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(22px,2.8vw,34px);line-height:1.3;letter-spacing:-.02em;color:#1a1918;margin:0}\n.fact-box{background:rgba(201,168,76,.07);border-left:3px solid #C9A84C;padding:1.4rem 1.6rem;margin:2rem 0;border-radius:0 6px 6px 0}\n.fact-box-label{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:#C9A84C;display:block;margin-bottom:.6rem}\n.fact-box p{font-size:13px;line-height:1.8;color:rgba(26,25,24,.65);margin:0}\n.warn-box{background:rgba(192,65,90,.06);border-left:3px solid #C0415A;padding:1.4rem 1.6rem;margin:2rem 0;border-radius:0 6px 6px 0}\n.warn-box-label{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:#C0415A;display:block;margin-bottom:.6rem}\n.warn-box p{font-size:13px;line-height:1.8;color:rgba(26,25,24,.65);margin:0}\n.post-steps{margin:2rem 0;display:flex;flex-direction:column;gap:1.2rem}\n.post-step{display:grid;grid-template-columns:48px 1fr;gap:1rem;align-items:start}\n.step-num{width:36px;height:36px;background:#0c0b0a;color:#C9A84C;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:18px;font-weight:300;display:flex;align-items:center;justify-content:center;border-radius:2px;flex-shrink:0;margin-top:2px}\n.step-title{font-family:'Jost',sans-serif;font-size:12px;font-weight:500;letter-spacing:.06em;color:#1a1918;margin-bottom:.3rem;text-transform:uppercase}\n.step-body{font-size:13px;line-height:1.8;color:rgba(26,25,24,.6)}\n.post-table-wrap{overflow-x:auto;margin:2rem 0}\n.post-table{width:100%;border-collapse:collapse;font-family:'Jost',sans-serif;font-size:12px}\n.post-table th{font-size:9px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:.8rem 1rem;background:#0c0b0a;color:rgba(245,240,232,.55);text-align:left;white-space:nowrap}\n.post-table th:first-child{color:#E2C97E}\n.post-table td{padding:.7rem 1rem;font-size:12px;font-weight:300;line-height:1.6;color:rgba(26,25,24,.6);border-bottom:1px solid rgba(26,25,24,.06);vertical-align:top}\n.post-table tr:last-child td{border-bottom:none}\n.post-table td:first-child{color:#1a1918;font-weight:400}\n.post-faq{background:#F5F0E8;padding:6rem 8vw}\n.faq-inner{max-width:720px;margin:0 auto}\n.faq-ey{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:#C9A84C;display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}\n.faq-ey::before{content:'';width:24px;height:1px;background:#C9A84C;flex-shrink:0}\n.faq-h2{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(28px,3.8vw,48px);color:#1a1918;line-height:1;letter-spacing:-.03em;margin-bottom:2.5rem}\n.faq-h2 em{font-style:normal;color:#C9A84C}\n.faq-item{border-bottom:1px solid rgba(26,25,24,.09)}\n.faq-item:first-of-type{border-top:1px solid rgba(26,25,24,.09)}\n.faq-q{width:100%;background:none;border:none;cursor:pointer;text-align:left;padding:1.1rem 0;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(15px,1.6vw,19px);color:#1a1918;transition:color .2s;line-height:1.3}\n.faq-q:hover,.faq-item.open .faq-q{color:#C9A84C}\n.faq-icon{width:18px;height:18px;flex-shrink:0;color:rgba(26,25,24,.25);transition:transform .3s cubic-bezier(.16,1,.3,1),color .2s}\n.faq-item.open .faq-icon{transform:rotate(45deg);color:#C9A84C}\n.faq-a{display:none;font-family:'Jost',sans-serif;font-size:13px;font-weight:300;line-height:1.9;color:rgba(26,25,24,.6);padding-bottom:1.2rem}\n.faq-item.open .faq-a{display:block}\n.author-strip{background:#0c0b0a;padding:3.5rem 8vw}\n.author-inner{max-width:720px;margin:0 auto;display:flex;align-items:center;gap:2rem;flex-wrap:wrap}\n.author-logo{width:48px;height:48px;background:rgba(201,168,76,.12);border-radius:2px;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:20px;color:#C9A84C;flex-shrink:0;letter-spacing:-.04em}\n.author-info{flex:1}\n.author-name{font-family:'Jost',sans-serif;font-size:12px;font-weight:400;letter-spacing:.06em;color:#F5F0E8;display:block;margin-bottom:.2rem}\n.author-bio{font-family:'Jost',sans-serif;font-size:11px;font-weight:300;color:rgba(245,240,232,.35);line-height:1.6}\n.author-dates{font-family:'Jost',sans-serif;font-size:10px;font-weight:300;letter-spacing:.08em;color:rgba(245,240,232,.2);text-align:right;line-height:1.8}\n.related-sec{background:#FAFAF8;padding:5rem 8vw;border-top:1px solid rgba(26,25,24,.07)}\n.related-inner{max-width:960px;margin:0 auto}\n.related-ey{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:#C9A84C;display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}\n.related-ey::before{content:'';width:24px;height:1px;background:#C9A84C;flex-shrink:0}\n.related-h2{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(24px,3vw,38px);color:#1a1918;margin-bottom:2rem;letter-spacing:-.02em}\n.related-h2 em{font-style:normal;color:#C9A84C}\n.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(26,25,24,.08)}\n.related-card{background:#FAFAF8;text-decoration:none;padding:1.8rem;display:flex;flex-direction:column;gap:.6rem;transition:background .2s;position:relative;overflow:hidden}\n.related-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:#C9A84C;transform:scaleX(0);transition:transform .25s cubic-bezier(.16,1,.3,1);transform-origin:left}\n.related-card:hover{background:#F5F0E8}\n.related-card:hover::after{transform:scaleX(1)}\n.rc-tag{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#C9A84C}\n.rc-title{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(16px,1.8vw,22px);color:#1a1918;line-height:1.2;transition:color .2s}\n.related-card:hover .rc-title{color:#C9A84C}\n.rc-read{font-family:'Jost',sans-serif;font-size:10px;font-weight:300;color:rgba(26,25,24,.3);margin-top:auto}\n.post-cta{background:#C9A84C;padding:6rem 8vw;text-align:center;position:relative;overflow:hidden}\n.post-cta::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(-60deg,transparent,transparent 30px,rgba(255,255,255,.04) 30px,rgba(255,255,255,.04) 31px)}\n.post-cta-inner{position:relative;z-index:1;max-width:560px;margin:0 auto}\n.post-cta-rule{width:36px;height:2px;background:#1a1918;opacity:.2;margin:0 auto 2rem}\n.post-cta-h2{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(38px,7vw,80px);color:#1a1918;line-height:.88;letter-spacing:-.05em;margin-bottom:.8rem}\n.post-cta-sub{font-family:'Jost',sans-serif;font-size:13px;font-weight:300;color:rgba(26,25,24,.5);line-height:1.8;max-width:380px;margin:0 auto 2rem}\n.post-cta-btns{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap}\n.btn-dk{font-family:'Jost',sans-serif;font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;background:#1a1918;color:#C9A84C;padding:.9rem 2rem;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:background .2s}\n.btn-dk:hover{background:#000}\n@media(max-width:900px){.post-hero{grid-template-columns:1fr;min-height:auto}.hero-num-col{justify-content:flex-start;padding:6rem 8vw 2rem;border-right:none;border-bottom:1px solid rgba(201,168,76,.12)}.hero-edition-num{font-size:clamp(80px,20vw,140px)}.hero-content-col{padding:3rem 8vw 6rem}.glance-inner{grid-template-columns:1fr;gap:2rem}.related-grid{grid-template-columns:1fr}}\n@media(max-width:640px){.post-body,.at-a-glance,.post-faq,.author-strip,.related-sec,.post-cta,.hero-num-col,.hero-content-col{padding-left:5vw;padding-right:5vw}.author-dates{text-align:left}}\n\n.pro-box{background:rgba(26,74,138,.06);border-left:3px solid #1a4a8a;padding:1.4rem 1.6rem;margin:2rem 0;border-radius:0 6px 6px 0}\n.pro-box-label{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:#1a4a8a;display:block;margin-bottom:.6rem}\n.pro-box p{font-size:13px;line-height:1.8;color:rgba(26,25,24,.65);margin:0}\n\n.tsl-crumbs{max-width:1200px;margin:0 auto;padding:14px 8vw 0;position:relative;z-index:5}\n.tsl-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;font-family:var(--sans,'Jost',sans-serif);font-size:11px;letter-spacing:.06em}\n.tsl-crumbs li{display:flex;align-items:center;gap:6px;color:inherit;opacity:.55}\n.tsl-crumbs li:not(:last-child)::after{content:'›';opacity:.6}\n.tsl-crumbs a{color:inherit;text-decoration:none;transition:opacity .2s}\n.tsl-crumbs a:hover{opacity:1;text-decoration:underline}\n.tsl-crumbs li:last-child{opacity:.85}\n@media(max-width:600px){.tsl-crumbs{padding:12px 6vw 0}}\n\n\n\n/* breadcrumb contrast */\n.tsl-crumbs a,.tsl-crumbs li{color:rgba(255,255,255,.75)!important}\n.tsl-crumbs a:hover{color:var(--gold,#C9A84C)!important}\n.tsl-crumbs li[aria-current=\"page\"]{color:rgba(255,255,255,.95)!important}\n[data-theme=\"light\"] .tsl-crumbs a,\n[data-theme=\"light\"] .tsl-crumbs li,\n.s-cream .tsl-crumbs a,\n.s-cream .tsl-crumbs li{\n  color:rgba(26,25,24,.75)!important;\n}\n[data-theme=\"light\"] .tsl-crumbs a:hover,\n.s-cream .tsl-crumbs a:hover{color:var(--pink,#C0415A)!important}\n@media (prefers-color-scheme: light){\n  /* crumbs sit on cream body above dark heroes */\n  body > .tsl-crumbs a,\n  body > .tsl-crumbs li,\n  main > .tsl-crumbs a,\n  .scroll-bar + .tsl-crumbs a,\n  .scroll-bar + .tsl-crumbs li,\n  #introScreen + .tsl-crumbs a,\n  div > .tsl-crumbs a,\n  div > .tsl-crumbs li{\n    color:rgba(26,25,24,.75)!important;\n  }\n}\n\n/* ═══ Force dark-default shell ═══ */\n:root{\n  --off:#1a1918 !important;\n  --pink-pale:#1a1918 !important;\n}\nbody{\n  background:var(--bg,var(--off,#1a1918))!important;\n  color:var(--txt,#fff)!important;\n}\n/* When a page hardcodes cream body vars, keep body dark unless OS wants light */\n@media (prefers-color-scheme: light){\n  :root{\n    --off:#FAFAF8 !important;\n    --pink-pale:#fdf0f2 !important;\n  }\n  body{\n    background:var(--cream,var(--off,#F5F0E8))!important;\n    color:var(--dark2,var(--ink,#1a1918))!important;\n  }\n}\n",
  "scriptJs": "function acceptCookies(){\n  try {\n    localStorage.setItem('tsl_cookies','accepted');\n    document.querySelectorAll('.cookie-bar').forEach(function(bar){ bar.classList.remove('show'); bar.style.display='none'; });\n  } catch(e){}\n}\nwindow.addEventListener('DOMContentLoaded', function(){\n  try {\n    if(!localStorage.getItem('tsl_cookies')){\n      setTimeout(function(){\n        var bar = document.getElementById('cookieBar')\n        if(bar) bar.classList.add('show')\n      }, 2000)\n    }\n  } catch(e){}\n})\n;\nwindow.addEventListener('load', function(){\n  setTimeout(function(){\n    var pl = document.getElementById('preloader')\n    if(pl) pl.classList.add('hidden')\n  }, 1200)\n})\n;\n\nwindow.addEventListener('scroll',function(){var b=document.getElementById('scrollBar');if(b)b.style.width=(window.scrollY/(document.documentElement.scrollHeight-window.innerHeight)*100)+'%';},{passive:true});\n/* nav theme: Header.tsx + data-theme */\nif(window.Lenis){var lenis=new window.Lenis({duration:1.2,smoothWheel:true});(function raf(t){lenis.raf(t);requestAnimationFrame(raf)})(0)}\n;(function(){var els=document.querySelectorAll('[data-reveal]');if(!els.length)return;var obs=new IntersectionObserver(function(evts){evts.forEach(function(e){if(!e.isIntersecting)return;e.target.style.opacity='1';e.target.style.transform='translateY(0)';obs.unobserve(e.target);});},{threshold:0.15});requestAnimationFrame(function(){els.forEach(function(el){el.style.opacity='0';el.style.transform='translateY(16px)';el.style.transition='opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)';obs.observe(el);});});})();\ndocument.querySelectorAll('.faq-item').forEach(function(item){item.querySelector('.faq-q').addEventListener('click',function(){var open=item.classList.contains('open');document.querySelectorAll('.faq-item').forEach(function(i){i.classList.remove('open');});if(!open)item.classList.add('open');});});\n\n;\n(function(){'use strict';\nwindow.addEventListener('scroll',function(){var b=document.getElementById('scrollBar');if(!b)return;b.style.width=(window.scrollY/(document.documentElement.scrollHeight-window.innerHeight)*100)+'%';},{passive:true});\n(function(){var n=document.getElementById('nav');if(!n)return;function u(){var h=document.querySelector('.post-hero');if(!h){n.classList.add('on-light');return;}var below=h.getBoundingClientRect().bottom<=60;n.classList.toggle('on-dark',!below);n.classList.toggle('on-light',below);}window.addEventListener('scroll',u,{passive:true});u();})();\nif(window.Lenis){var L=new window.Lenis({duration:1.2,smoothWheel:true});(function r(t){L.raf(t);requestAnimationFrame(r);})(0);}\n(function(){var obs=new IntersectionObserver(function(e){e.forEach(function(en){if(en.isIntersecting){en.target.classList.add('in');obs.unobserve(en.target);}});},{threshold:0.05});document.querySelectorAll('[data-reveal]').forEach(function(el){obs.observe(el);});})();\ndocument.querySelectorAll('.faq-q').forEach(function(btn){btn.addEventListener('click',function(){var item=btn.closest('.faq-item');var was=item.classList.contains('open');document.querySelectorAll('.faq-item').forEach(function(i){i.classList.remove('open');i.querySelector('.faq-q').setAttribute('aria-expanded','false');});if(!was){item.classList.add('open');btn.setAttribute('aria-expanded','true');}});});\nif(window.matchMedia('(hover:hover) and (pointer:fine)').matches){var dot=document.createElement('div');dot.className='cur-d';var ring=document.createElement('div');ring.className='cur-r';document.body.appendChild(dot);document.body.appendChild(ring);var mx=0,my=0,rx=0,ry=0;document.addEventListener('mousemove',function(e){mx=e.clientX;my=e.clientY;dot.style.cssText='left:'+mx+'px;top:'+my+'px';},{passive:true});(function lerp(){rx+=(mx-rx)*.1;ry+=(my-ry)*.1;ring.style.cssText='left:'+rx+'px;top:'+ry+'px';requestAnimationFrame(lerp);})();document.addEventListener('mouseover',function(e){document.body.classList.toggle('cur-hl',!!e.target.closest('a,button,[role=button]'));},{passive:true});document.addEventListener('mouseleave',function(){document.body.classList.add('cur-hd');},{passive:true});document.addEventListener('mouseenter',function(){document.body.classList.remove('cur-hd');},{passive:true});}\n(function(){var el=document.getElementById('introEl');if(!el)return;el.style.display='none';})();\n(function(){var ov=document.createElement('div');ov.className='pg-ov';document.body.appendChild(ov);document.addEventListener('click',function(e){var a=e.target.closest('a');if(!a||!a.href||a.target==='_blank')return;if(/^(tel:|mailto:|https:\\/\\/wa\\.me)/.test(a.href))return;if(a.href.includes('#')||e.metaKey||e.ctrlKey)return;try{if(new URL(a.href).host!==location.host)return;}catch(_){return;}e.preventDefault();ov.classList.add('visible');setTimeout(function(){location.href=a.href;},320);});})();\n})();\n;\n\n/* ── Global features JS ── */\n(function(){\n  /* Seasonal banner */\n  var banner=document.getElementById('seasonalBanner');\n  var bannerClose=document.getElementById('bannerClose');\n  if(banner && bannerClose){\n    var dismissed=sessionStorage.getItem('bannerDismissed');\n    if(dismissed) banner.classList.add('hidden');\n    bannerClose.addEventListener('click',function(){\n      banner.classList.add('hidden');\n      sessionStorage.setItem('bannerDismissed','1');\n    });\n  }\n\n  /* Sticky booking pill — show after 5s, hide when near footer */\n  var pill=document.getElementById('bookPill');\n  if(pill){\n    var pillTimer=setTimeout(function(){\n      pill.classList.remove('hidden');\n    },5000);\n    /* Hide pill when footer is visible */\n    var footer=document.querySelector('footer');\n    if(footer){\n      var pillObs=new IntersectionObserver(function(entries){\n        entries.forEach(function(e){\n          pill.classList.toggle('hidden',e.isIntersecting);\n        });\n      },{threshold:0.1});\n      pillObs.observe(footer);\n    }\n  }\n\n  /* Dark/light theme toggle */\n  var toggle=document.getElementById('themeToggle');\n  if(toggle){\n    var stored=localStorage.getItem('theme');\n    if(stored) document.documentElement.setAttribute('data-theme',stored);\n    toggle.addEventListener('click',function(){\n      var current=document.documentElement.getAttribute('data-theme');\n      var next=current==='light'?'dark':'light';\n      document.documentElement.setAttribute('data-theme',next);\n      localStorage.setItem('theme',next);\n    });\n  }\n\n  /* Reading progress bar */\n  var prog=document.getElementById('readProgress');\n  if(prog){\n    window.addEventListener('scroll',function(){\n      var h=document.documentElement;\n      var pct=(h.scrollTop||document.body.scrollTop)/(h.scrollHeight-h.clientHeight)*100;\n      prog.style.width=Math.min(100,pct)+'%';\n    },{passive:true});\n  }\n\n  /* Was this helpful */\n  document.querySelectorAll('.helpful-btn').forEach(function(btn){\n    btn.addEventListener('click',function(){\n      var block=btn.closest('.helpful-block');\n      var thanks=block && block.querySelector('.helpful-thanks');\n      if(thanks){thanks.classList.add('show');}\n      if(btn.dataset.helpful==='no'){\n        var wa=document.createElement('a');\n        wa.href='https://wa.me/919836233354?text=I+had+a+question+about+your+guide';\n        wa.target='_blank';wa.rel='noopener';\n        wa.style.cssText='font-family:var(--sans);font-size:11px;color:#25D366;margin-left:.5rem';\n        wa.textContent='Chat with us →';\n        if(thanks) thanks.appendChild(wa);\n      }\n      document.querySelectorAll('.helpful-btn').forEach(function(b){b.classList.remove('active')});\n      btn.classList.add('active');\n    });\n  });\n\n})();\n\n\n\n;\n(function(){var f=new Date(\"2013-10-07\");var n=new Date();var y=n.getFullYear()-f.getFullYear();if(n<new Date(n.getFullYear(),9,7))y--;document.querySelectorAll(\".tsl-age\").forEach(function(el){el.textContent=y;});})();",
  "bodyHtml": "<div id=\"introEl\" role=\"status\" aria-label=\"Loading\" style=\"display:none\"><span class=\"intro-m\" aria-hidden=\"true\">TSL</span><div class=\"intro-l\" aria-hidden=\"true\"></div><span class=\"intro-w\" aria-hidden=\"true\">The Swiss Laundry</span></div>\n<a href=\"#main\" class=\"skip-link\">Skip to main content</a>\n<div class=\"seasonal-banner\" id=\"seasonalBanner\" role=\"banner\" aria-label=\"Free pickup offer\">\n  🧺 Want a home pickup? Complimentary pickup on invoices above ₹1,000.\n  <a href=\"/pickup\">Book Now →</a>\n  <button class=\"banner-close\" id=\"bannerClose\" aria-label=\"Close banner\">✕</button>\n</div>\n<div class=\"scroll-bar\" id=\"scrollBar\" aria-hidden=\"true\"></div>\n\n<nav class=\"tsl-crumbs\" aria-label=\"Breadcrumb\"><ol><li><a href=\"/\">Home</a></li><li><a href=\"/blog\">The Record</a></li><li aria-current=\"page\">How to dry clean curtains — when to do it and what to expect.</li></ol></nav>\n\n<main id=\"main\">\n<section class=\"post-hero f-hero\" aria-label=\"Article header\">\n  <div class=\"hero-num-col\"><span class=\"hero-edition-num\" aria-hidden=\"true\">43</span></div>\n  <div class=\"hero-content-col\">\n    <div class=\"post-eyebrow\" data-reveal=\"\"><span class=\"post-cat-pill\">Kolkata</span><span class=\"post-edition-label\">Edition 43 &nbsp;·&nbsp; The Record</span></div>\n    <h1 class=\"post-h1\" data-reveal=\"\">How to dry clean curtains —<em> when to do it and what to expect.</em></h1>\n    <div class=\"post-rule\" data-reveal=\"\"></div>\n    <div class=\"post-meta-strip\" data-reveal=\"\">\n      <span class=\"meta-item\"><strong>The Swiss Laundry</strong><span class=\"meta-dot\"></span>Kasba, Kolkata</span>\n      <span class=\"meta-item\"><span class=\"meta-dot\"></span>12 Jan 2026</span>\n      <span class=\"meta-item\"><span class=\"meta-dot\"></span>5 min read</span>\n      <span class=\"meta-item\"><span class=\"meta-dot\"></span>1,450 words</span>\n    </div>\n    <blockquote class=\"hero-summary\" data-reveal=\"\">Curtains are the most neglected textile in most homes. They filter every particle of air that passes through the room. This post covers how often to clean them, which fabric types need dry cleaning, and what the process involves.</blockquote>\n  </div>\n</section>\n<section class=\"at-a-glance\" aria-label=\"Article summary\">\n  <div class=\"glance-inner\" data-reveal=\"\">\n    <div><p class=\"glance-label\">At a glance</p><h2 class=\"glance-h2\">What this article <em>covers.</em></h2><ul class=\"glance-points\"><li>Curtains should be cleaned at least once a year — most people clean them far less often than this</li><li>Linen and cotton curtains can typically be machine washed; silk, velvet, and lined curtains require dry cleaning</li><li>Curtains in Kolkata accumulate more dust and biological material during monsoon than in any other season</li><li>A full set of curtains for a 3-bedroom apartment represents a significant dry cleaning job — allow 72 hours for turnaround</li><li>After dry cleaning, rehang immediately — leaving curtains folded allows new creases to set before the fabric has cooled</li></ul></div>\n    <div><div class=\"jump-nav\"><span class=\"jump-nav-label\">Jump to section</span><ul class=\"jump-links\"><li><a href=\"#how-often\">How often to clean</a></li><li><a href=\"#which-method\">Which cleaning method</a></li><li><a href=\"#kolkata-specific\">Kolkata-specific considerations</a></li><li><a href=\"#the-process\">What the process involves</a></li><li><a href=\"#after-cleaning\">After cleaning — rehanging</a></li></ul></div></div>\n  </div>\n</section>\n<article class=\"post-body\" aria-label=\"Article content\"><div class=\"post-body-inner\"><h2 class=\"post-h2\" id=\"how-often\">How often <em>to clean</em></h2>\n<p>Curtains are among the most neglected textiles in most homes. They are washed or cleaned significantly less often than the frequency that their actual soil accumulation warrants. A curtain hanging in a typical Kolkata living room for 12 months has filtered thousands of cubic metres of air, accumulated significant dust, absorbed cooking and incense smoke, and in monsoon months, absorbed and released moisture repeatedly.</p><div class=\"fact-box\"><span class=\"fact-box-label\">What curtains accumulate</span><p>Dust and particulate matter from outdoor air. Cooking vapours and grease, particularly in rooms adjacent to kitchens. Incense and candle smoke. Biological material — mould spores, bacteria, dust mites — particularly during the monsoon. Body oils from contact during drawing and closing. UV degradation from direct sunlight.</p></div>\n<h2 class=\"post-h2\" id=\"which-method\">Which <em>cleaning method</em></h2>\n<p>The cleaning method depends on the curtain fabric. Most homes have a mix of curtain types that require different approaches.</p><div class=\"post-table-wrap\"><table class=\"post-table\"><thead><tr><th>Curtain type</th><th>Method</th><th>Notes</th></tr></thead><tbody><tr><td>Cotton or linen</td><td>Machine wash (cool, gentle cycle)</td><td>Check care label; may shrink slightly</td></tr><tr><td>Polyester</td><td>Machine wash</td><td>Straightforward; rehang while damp to minimise creases</td></tr><tr><td>Silk</td><td>Dry clean only</td><td>Water causes permanent damage to silk curtains</td></tr><tr><td>Velvet</td><td>Dry clean only</td><td>Water crushes velvet pile irreversibly</td></tr><tr><td>Lined curtains</td><td>Dry clean (check lining type)</td><td>Lining and outer fabric may shrink differently if washed</td></tr><tr><td>Embroidered or embellished</td><td>Dry clean</td><td>Embellishments require inspection before cleaning</td></tr></tbody></table></div>\n<h2 class=\"post-h2\" id=\"kolkata-specific\"><em>Kolkata-specific</em> considerations</h2>\n<p>Kolkata's climate creates specific curtain care challenges. The monsoon introduces high humidity that curtains absorb and release — this cycle of wetting and drying stresses the fabric and creates conditions for mould growth in curtains that are not regularly cleaned and aired.</p><div class=\"pull-quote\"><p>\"In Kolkata, curtains that are not cleaned before the monsoon go into the most humid four months of the year carrying the previous season's dust and soils. By October, they are among the most heavily soiled textiles in the house.\"</p></div><p>The practical implication: May is the ideal month to clean curtains before the monsoon. October is the ideal month to clean them after. If annual cleaning is the schedule, May is the better choice — clean curtains going into the monsoon are less susceptible to mould and dust accumulation during the season.</p>\n<h2 class=\"post-h2\" id=\"the-process\">What the process <em>involves</em></h2>\n<p>Curtain dry cleaning at The Swiss Laundry follows the same professional process as garment dry cleaning. The curtains are inspected on arrival, any specific soiling noted, and the correct cleaning parameters set. The cleaning cycle uses professional hydrocarbon solvent in an enclosed machine. After cleaning, the curtains are dried in the machine and then pressed on professional pressing equipment.</p><div class=\"post-step\"><span class=\"step-num\">1</span><div><div class=\"step-title\">Measure and note</div><div class=\"step-body\">Before removing curtains, note the hanging measurements. Professional cleaning does not cause shrinkage but knowing the original dimensions is useful.</div></div></div><div class=\"post-step\"><span class=\"step-num\">2</span><div><div class=\"step-title\">Remove all hardware</div><div class=\"step-body\">Remove hooks, rings, and any metal accessories before bringing in for cleaning.</div></div></div><div class=\"post-step\"><span class=\"step-num\">3</span><div><div class=\"step-title\">Bring or arrange pickup</div><div class=\"step-body\">Bring to our Kasba facility or arrange doorstep pickup by calling 9836233354.</div></div></div><div class=\"post-step\"><span class=\"step-num\">4</span><div><div class=\"step-title\">Rehang immediately on collection</div><div class=\"step-body\">Rehang within 24 hours of collecting — leaving curtains folded allows new creases to set permanently.</div></div></div>\n<h2 class=\"post-h2\" id=\"after-cleaning\">After cleaning — <em>rehanging</em></h2>\n<p>The final step in curtain care is often done incorrectly. A curtain collected from the dry cleaner and left folded on a chair for three days develops new, sharp fold lines that require steaming to remove. Curtains should be rehung within 24 hours of collection — the fabric settles naturally when hanging and any minor residual creases fall out over the first day.</p><div class=\"warn-box\"><span class=\"warn-box-label\">After rehanging</span><p>Do not draw newly-cleaned curtains in direct strong sunlight for the first 48 hours — the fabric needs to settle into its hanging position first. Do not use fabric fresheners or sprays on freshly cleaned curtains — they are already clean and the spray adds residue.</p></div>\n</div>\n<div class=\"pro-box\">\n  <span class=\"pro-box-label\">The Swiss Laundry — Curtain cleaning at The Swiss Laundry</span>\n  <p>The Swiss Laundry accepts curtains of all fabric types — silk, velvet, cotton, lined, embroidered. Standard turnaround 48–72 hours depending on fabric complexity and volume. Doorstep pickup available for curtains across 30+ Kolkata areas. Call 9836233354 to arrange collection.</p>\n</div>\n</article>\n<section class=\"post-faq\" id=\"faq\" aria-label=\"Frequently asked questions\">\n  <div class=\"faq-inner\">\n    <p class=\"faq-ey\">Questions</p>\n    <h2 class=\"faq-h2\" data-reveal=\"\">Curtain cleaning questions<br><em>answered directly.</em></h2>\n    <div class=\"faq-item  open\"><button class=\"faq-q\" aria-expanded=\"true\">How often should curtains be dry cleaned?<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"18\" height=\"18\" class=\"faq-icon\"><path d=\"M12 5v14M5 12h14\"></path></svg></button><p class=\"faq-a\">At minimum once a year. In Kolkata, the most practical timing is before or after the monsoon — May (before the dust and monsoon humidity season) or October (after the monsoon, before the cooler season when windows are used less). Curtains in rooms with smokers, cooking areas, or high foot traffic should be cleaned twice yearly.</p></div><div class=\"faq-item\"><button class=\"faq-q\" aria-expanded=\"false\">Can all curtains be dry cleaned?<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"18\" height=\"18\" class=\"faq-icon\"><path d=\"M12 5v14M5 12h14\"></path></svg></button><p class=\"faq-a\">No. Cotton and linen curtains can typically be machine washed according to their care label. Silk curtains, velvet curtains, heavily embroidered or embellished curtains, and any curtain with a fixed lining or interlining require dry cleaning. When in doubt, check the care label or contact the fabric supplier.</p></div><div class=\"faq-item\"><button class=\"faq-q\" aria-expanded=\"false\">Do I need to remove curtain hooks and rings before bringing curtains for dry cleaning?<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"18\" height=\"18\" class=\"faq-icon\"><path d=\"M12 5v14M5 12h14\"></path></svg></button><p class=\"faq-a\">Yes. Remove all hooks, rings, and any metal accessories before bringing curtains for cleaning. Metal hardware can damage the drum equipment and may cause marks on the fabric. Most curtains have a hook tape or header tape that allows easy hook removal and reinsertion.</p></div><div class=\"faq-item\"><button class=\"faq-q\" aria-expanded=\"false\">How long does curtain dry cleaning take?<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"18\" height=\"18\" class=\"faq-icon\"><path d=\"M12 5v14M5 12h14\"></path></svg></button><p class=\"faq-a\">Standard turnaround at The Swiss Laundry for curtains is 48–72 hours depending on fabric type and current volume. A full set of curtains from a large home takes longer than a single pair. Call ahead to confirm turnaround time, particularly if you need curtains back for a specific occasion.</p></div><div class=\"faq-item\"><button class=\"faq-q\" aria-expanded=\"false\">Will my curtains shrink after dry cleaning?<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"18\" height=\"18\" class=\"faq-icon\"><path d=\"M12 5v14M5 12h14\"></path></svg></button><p class=\"faq-a\">Professional dry cleaning does not involve water and does not cause shrinkage. Curtains that shrink after cleaning were cleaned using water — either machine washed incorrectly or cleaned by an operator using wet cleaning when dry cleaning was required. If your curtains have shrunk, the curtains were not dry cleaned despite what you may have been told.</p></div>\n  </div>\n</section>\n<div class=\"author-strip\" data-reveal=\"\">\n  <div class=\"author-inner\">\n    <div class=\"author-logo\">TSL</div>\n    <div class=\"author-info\"><span class=\"author-name\">The Swiss Laundry — Editorial Team</span><span class=\"author-bio\">Written from Kasba, Kolkata. <span class=\"tsl-age\">13</span> years of professional dry cleaning. P-4 Kasba Industrial Estate, Phase III, E.M. Bypass (East), Kolkata 700107.</span></div>\n    <div class=\"author-dates\"><span>Published: 12 Jan 2026</span><br><span>Updated: 12 Jan 2026</span></div>\n  </div>\n</div>\n<section class=\"related-sec\" data-reveal=\"\" aria-label=\"Related articles\">\n  <div class=\"related-inner\"><p class=\"related-ey\">Continue reading</p><h2 class=\"related-h2\">More from <em>The Record.</em></h2><div class=\"related-grid\"><a href=\"/blog-dry-cleaning-vs-steam-cleaning\" class=\"related-card\"><span class=\"rc-tag\">Kolkata</span><span class=\"rc-title\">Dry cleaning vs steam cleaning — what's the difference?</span><span class=\"rc-read\">5 min read</span></a><a href=\"/blog-what-happens-at-dry-cleaner\" class=\"related-card\"><span class=\"rc-tag\">Consumer</span><span class=\"rc-title\">What happens to your clothes at a dry cleaner.</span><span class=\"rc-read\">8 min read</span></a><a href=\"/blog-best-dry-cleaner-kolkata\" class=\"related-card\"><span class=\"rc-tag\">Kolkata</span><span class=\"rc-title\">How to choose a dry cleaner in Kolkata.</span><span class=\"rc-read\">6 min read</span></a></div></div>\n</section>\n<section class=\"post-cta\" aria-label=\"Book dry cleaning\">\n  <div class=\"post-cta-inner\">\n    <div class=\"post-cta-rule\" aria-hidden=\"true\"></div>\n    <h2 class=\"post-cta-h2\">Curtains collected.\n<br><em>Curtains returned.</em></h2>\n    <p class=\"post-cta-sub\">Doorstep curtain pickup across Kolkata. All fabric types. 48–72 hour turnaround. Call 9836233354 to arrange collection.</p>\n    <div class=\"post-cta-btns\">\n      <a href=\"/pickup\" class=\"btn-dk\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" width=\"14\" height=\"14\"><path d=\"M5 12h14M12 5l7 7-7 7\"></path></svg> Book a Pickup</a>\n      <a href=\"https://wa.me/919836233354?text=Hi+I+would+like+to+book\" class=\"btn-dk\" target=\"_blank\" rel=\"noopener\">WhatsApp Us</a>\n      <a href=\"tel:9836233354\" class=\"btn-dk\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" width=\"14\" height=\"14\"><path d=\"M5 12h14M12 5l7 7-7 7\"></path></svg> Call Now</a>\n    </div>\n  </div>\n</section>\n</main>\n<a href=\"https://wa.me/919836233354?text=Hi+I+would+like+to+know+more\" class=\"wa-float\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Chat on WhatsApp\"><svg viewBox=\"0 0 48 48\" width=\"56\" height=\"56\" xmlns=\"http://www.w3.org/2000/svg\"><circle cx=\"24\" cy=\"24\" r=\"24\" fill=\"#25D366\"></circle><path fill=\"#fff\" d=\"M24 10.4C16.5 10.4 10.4 16.5 10.4 24c0 2.4.65 4.7 1.78 6.67L10.4 37.6l7.18-1.75A13.53 13.53 0 0024 37.6c7.5 0 13.6-6.1 13.6-13.6S31.5 10.4 24 10.4z\"></path><path fill=\"#25D366\" d=\"M19.9 17.1c-.38-.86-.78-.88-1.14-.9-.3-.01-.63-.01-.97-.01-.34 0-.88.13-1.34.63-.46.5-1.76 1.72-1.76 4.2s1.8 4.87 2.05 5.21c.25.34 3.51 5.6 8.64 7.63 4.27 1.69 5.14 1.35 6.07 1.27.93-.08 3-.23 3.83-2.12.84-1.88.84-3.5.59-3.83-.25-.34-.59-.51-1.23-.85s-3.81-1.88-4.4-2.09c-.59-.21-1.02-.32-1.44.32-.43.63-1.65 2.09-2.02 2.52-.38.43-.75.48-1.4.16-.64-.32-2.71-1-5.16-3.18-1.91-1.7-3.2-3.8-3.57-4.44-.38-.64-.04-.98.28-1.3.29-.28.64-.73.96-1.1.32-.36.43-.63.64-1.05.21-.42.1-.8-.05-1.12l-.98-2.3z\"></path></svg></a><!-- Sticky booking pill — mobile only, hidden on /pickup -->\n<a href=\"/pickup\" class=\"book-pill\" id=\"bookPill\" aria-label=\"Book a pickup\">\n  <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M5 12h14M12 5l7 7-7 7\"></path></svg>\n  Book Pickup · 2 min\n</a>\n\n\n\n\n\n<script src=\"https://cdn.jsdelivr.net/npm/@studio-freight/lenis@1.0.42/dist/lenis.min.js\"></script>"
}
