{
  "title": "How to remove blood stains from fabric | The Swiss Laundry",
  "description": "Blood is a protein stain that denatures permanently with heat. Cold water is the only safe home first step.",
  "keywords": "",
  "robots": "index,follow,max-snippet:-1,max-image-preview:large",
  "canonical": "https://www.theswisslaundry.com/blog-how-to-remove-blood-stain-from-clothes-india",
  "hreflangs": [
    {
      "hreflang": "en-IN",
      "href": "https://www.theswisslaundry.com/blog-how-to-remove-blood-stain-from-clothes-india"
    },
    {
      "hreflang": "en",
      "href": "https://www.theswisslaundry.com/blog-how-to-remove-blood-stain-from-clothes-india"
    }
  ],
  "og": {
    "type": "article",
    "title": "How to remove blood stains from fabric — and why cold water is the only safe first step. — The Swiss Laundry",
    "description": "Blood is a protein stain that denatures permanently with heat. Cold water is the only safe home first step. The complete method for fresh blood, why hot water causes permanent staining, and what professional treatment achieves.",
    "url": "https://www.theswisslaundry.com/blog-how-to-remove-blood-stain-from-clothes-india",
    "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 remove blood stains from fabric — and why cold water is the only safe first step.",
        "description": "Blood is a protein stain that denatures permanently with heat. Cold water is the only safe home first step. The complete method for fresh blood, why hot water causes permanent staining, and what professional treatment achieves.",
        "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-how-to-remove-blood-stain-from-clothes-india",
        "datePublished": "2026-02-11",
        "dateModified": "2026-02-11",
        "mainEntityOfPage": {
          "@type": "WebPage",
          "@id": "https://www.theswisslaundry.com/blog-how-to-remove-blood-stain-from-clothes-india"
        },
        "keywords": "how to remove blood stain clothes India, blood stain removal fabric India, dried blood fabric India, blood stain dry cleaning, remove blood from white clothes India",
        "articleSection": "Stain Removal",
        "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 remove blood stains from fabric — and why cold water is the only safe first step.",
            "item": "https://www.theswisslaundry.com/blog-how-to-remove-blood-stain-from-clothes-india"
          }
        ]
      },
      {
        "@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": "What should I do immediately if I get blood on a silk saree?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "Do not apply water — even cold water risks spreading on silk. Blot excess with a clean dry cloth working from the outside of the stain inward. Bring to a professional dry cleaner as soon as possible. Fresh blood on silk without water contact is very treatable professionally."
            }
          },
          {
            "@type": "Question",
            "name": "Can I remove dried blood from white cotton at home?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "Yes. Salt paste in cold water for 30 minutes, then cold soak with biological enzyme detergent. Repeat 2–3 cycles. Never use hot water or a dryer until completely clean. Most dried blood on cotton responds to this method."
            }
          },
          {
            "@type": "Question",
            "name": "My linen shirt blood stain went through the dryer. What can I do?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "Bring it to a professional. Heat-set blood on linen is difficult but not necessarily impossible to improve. We will assess and advise on realistic outcome before treating."
            }
          },
          {
            "@type": "Question",
            "name": "Does dry cleaning treat blood stains?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "Blood is primarily water-soluble — dry cleaning solvent alone is not the primary treatment. Professional treatment uses enzyme pre-spotting in controlled conditions followed by wet cleaning at controlled temperature."
            }
          },
          {
            "@type": "Question",
            "name": "Is enzyme detergent safe for all fabrics?",
            "acceptedAnswer": {
              "@type": "Answer",
              "text": "No. Biological enzyme detergents contain proteases that break down protein. Silk and wool are protein fibres. Using enzyme detergent on silk or wool causes fabric damage alongside stain treatment."
            }
          }
        ]
      },
      {
        "@context": "https://schema.org",
        "@type": "HowTo",
        "name": "How to remove blood stains from fabric — and why cold water is the only safe first step.",
        "description": "Blood is a protein stain that denatures permanently with heat. Cold water is the only safe home first step. The complete method for fresh blood, why hot water causes permanent staining, and what professional treatment achieves.",
        "supply": [
          {
            "@type": "HowToSupply",
            "name": "Clean dry cloth"
          },
          {
            "@type": "HowToSupply",
            "name": "Cold water"
          }
        ],
        "tool": [
          {
            "@type": "HowToTool",
            "name": "Professional dry cleaning (recommended)"
          }
        ]
      },
      {
        "@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/* ══ STAIN POST ══════════════════════════════════════════════════════ */\n.stain-hero{background:#0c0b0a;min-height:100svh;display:grid;grid-template-columns:1fr 1.6fr;position:relative;overflow:hidden}\n.stain-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(80px,14vw,200px);line-height:.85;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px rgba(201,168,76,.3);display:block;user-select:none;text-align:right}\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(192,65,90,.4);color:#E8789A;background:rgba(192,65,90,.1)}\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:#C0415A;margin-bottom:2rem;opacity:.6}\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(192,65,90,.5);display:inline-block}\n.hero-summary{border-left:2px solid rgba(192,65,90,.5);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 */\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:#C0415A;display:flex;align-items:center;gap:.8rem;margin-bottom:1.2rem}\n.glance-label::before{content:'';width:24px;height:1px;background:#C0415A;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:#C0415A}\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:#C0415A;opacity:.4}\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:#C0415A}\n.jump-links li a::before{content:'';width:12px;height:1px;background:currentColor;flex-shrink:0;opacity:.4}\n/* 4-PART AUTHORITY SECTIONS */\n.authority-body{background:#FAFAF8;padding:0}\n.authority-section{padding:5rem 8vw;border-bottom:1px solid rgba(26,25,24,.06)}\n.authority-section:last-child{border-bottom:none}\n/* Section colour coding */\n.section-home{background:#FAFAF8}\n.section-fails{background:#FDF8F8}\n.section-professional{background:#F8FAF8}\n.section-cta-section{background:#0c0b0a}\n.section-inner{max-width:720px;margin:0 auto}\n.section-label{font-family:'Jost',sans-serif;font-size:9px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}\n.section-label::before{content:'';width:24px;height:1px;flex-shrink:0}\n.label-home{color:#1a6b3a}.label-home::before{background:#1a6b3a}\n.label-fails{color:#C0415A}.label-fails::before{background:#C0415A}\n.label-professional{color:#1a4a8a}.label-professional::before{background:#1a4a8a}\n.label-cta{color:#C9A84C}.label-cta::before{background:#C9A84C}\n.section-h2{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(26px,3.2vw,42px);line-height:1.05;letter-spacing:-.02em;color:#1a1918;margin-bottom:1.5rem}\n.section-h2 em{font-style:normal}\n.section-home .section-h2 em{color:#1a6b3a}\n.section-fails .section-h2 em{color:#C0415A}\n.section-professional .section-h2 em{color:#1a4a8a}\n.section-cta-section .section-h2{color:#F5F0E8}\n.section-cta-section .section-h2 em{color:#C9A84C}\n.authority-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.section-cta-section p{color:rgba(245,240,232,.55)}\n.authority-body strong{color:#1a1918;font-weight:400}\n.section-cta-section strong{color:#F5F0E8}\n/* Step list */\n.auth-steps{margin:2rem 0;display:flex;flex-direction:column;gap:1rem}\n.auth-step{display:grid;grid-template-columns:44px 1fr;gap:1rem;align-items:start;padding:1.2rem;border-radius:6px;background:rgba(26,25,24,.03)}\n.section-fails .auth-step{background:rgba(192,65,90,.04)}\n.section-professional .auth-step{background:rgba(26,74,138,.04)}\n.auth-step-num{width:32px;height:32px;border-radius:2px;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:16px;font-weight:300;flex-shrink:0;margin-top:2px}\n.section-home .auth-step-num{background:#0c0b0a;color:#4a9a6a}\n.section-fails .auth-step-num{background:#C0415A;color:#fff}\n.section-professional .auth-step-num{background:#1a4a8a;color:#fff}\n.auth-step-title{font-family:'Jost',sans-serif;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#1a1918;margin-bottom:.3rem}\n.auth-step-body{font-family:'Jost',sans-serif;font-size:13px;font-weight:300;line-height:1.8;color:rgba(26,25,24,.6)}\n/* Boxes */\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.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.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.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(20px,2.5vw,30px);line-height:1.3;letter-spacing:-.02em;color:#1a1918;margin:0}\n/* Table */\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}\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.td-yes{color:#1a6b3a;font-weight:500}\n.td-no{color:#C0415A;font-weight:500}\n.td-maybe{color:#8a6a1c;font-weight:500}\n/* FAQ */\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:#C0415A;display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}\n.faq-ey::before{content:'';width:24px;height:1px;background:#C0415A;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:#C0415A}\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:#C0415A}\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:#C0415A}\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 + Related + CTA */\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}\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;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:#C0415A}\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:400px;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){\n  .stain-hero{grid-template-columns:1fr;min-height:auto}\n  .hero-num-col{justify-content:flex-start;padding:5rem 8vw 2rem;border-right:none;border-bottom:1px solid rgba(201,168,76,.12)}\n  .hero-edition-num{font-size:clamp(60px,18vw,120px);text-align:left}\n  .hero-content-col{padding:3rem 8vw 5rem}\n  .glance-inner{grid-template-columns:1fr;gap:2rem}\n  .related-grid{grid-template-columns:1fr}\n}\n@media(max-width:640px){\n  .authority-section,.at-a-glance,.post-faq,.author-strip,.related-sec,.post-cta{padding-left:5vw;padding-right:5vw}\n  .hero-num-col,.hero-content-col{padding-left:5vw;padding-right:5vw}\n  .author-dates{text-align:left}\n}\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('.stain-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 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\">\n  <span class=\"intro-m\" aria-hidden=\"true\">TSL</span>\n  <div class=\"intro-l\" aria-hidden=\"true\"></div>\n  <span class=\"intro-w\" aria-hidden=\"true\">The Swiss Laundry</span>\n</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 remove blood stains from fabric — and why cold water is the only safe first step.</li></ol></nav>\n\n<main id=\"main\">\n\n<section class=\"stain-hero f-hero\" aria-label=\"Article header\">\n  <div class=\"hero-num-col\">\n    <span class=\"hero-edition-num\" aria-hidden=\"true\">B55</span>\n  </div>\n  <div class=\"hero-content-col\">\n    <div class=\"post-eyebrow\" data-reveal=\"\">\n      <span class=\"post-cat-pill\">Stain Removal</span>\n      <span class=\"post-edition-label\">The Swiss Laundry &nbsp;·&nbsp; Expert Guide</span>\n    </div>\n    <h1 class=\"post-h1\" data-reveal=\"\">How to remove blood stains from fabric —<em> and why cold water is the only safe first step.</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>11 Feb 2026</span>\n      <span class=\"meta-item\"><span class=\"meta-dot\"></span>5 min read</span>\n    </div>\n    <blockquote class=\"hero-summary\" data-reveal=\"\">Blood is one of the most treatable stains when handled correctly — and one of the most permanent when handled incorrectly. The difference is a single decision: cold water or hot water.</blockquote>\n  </div>\n</section>\n\n<section class=\"at-a-glance\" aria-label=\"Article summary\">\n  <div class=\"glance-inner\" data-reveal=\"\">\n    <div>\n      <p class=\"glance-label\">At a glance</p>\n      <h2 class=\"glance-h2\">What this guide <em>covers.</em></h2>\n      <ul class=\"glance-points\"><li>Cold water is the only safe first step — hot water denatures blood protein and bonds it permanently to fabric</li><li>Fresh blood on cotton and linen can be fully removed at home with cold water and mild enzyme detergent</li><li>Dried blood is not permanently set unless heat was applied — cold soak with enzyme detergent works on cotton</li><li>Blood on silk and wool should go directly to a professional — enzyme detergent damages protein fibres</li><li>Never use bleach on blood stains — it creates a permanent brown mark worse than the original stain</li></ul>\n    </div>\n    <div>\n      <div class=\"jump-nav\">\n        <span class=\"jump-nav-label\">Jump to section</span>\n        <ul class=\"jump-links\"><li><a href=\"#home-method\">Home method</a></li><li><a href=\"#where-it-fails\">The fatal mistake — heat</a></li><li><a href=\"#professional-treatment\">Professional treatment</a></li><li><a href=\"#faq\">Questions answered</a></li></ul>\n      </div>\n    </div>\n  </div>\n</section>\n\n<div class=\"authority-body\">\n\n  <!-- SECTION 1: HOME METHOD -->\n  <section class=\"authority-section section-home\" id=\"home-method\" aria-label=\"Home treatment method\">\n    <div class=\"section-inner\">\n      <p class=\"section-label label-home\">Home method</p>\n      <h2 class=\"section-h2\">Home method —<em> cold water first, every time.</em></h2>\n      <p>Blood responds well to cold water on robust fabrics when fresh. Blood proteins are water-soluble in their native state. Cold water keeps them that way. Hot water denatures them — permanently bonding them to the fabric.</p><div class=\"auth-steps\"><div class=\"auth-step\"><span class=\"auth-step-num\">1</span><div><div class=\"auth-step-title\">Cold running water — cotton and linen only</div><div class=\"auth-step-body\">Hold the stained area under cold running water, pushing through the fabric from the back of the stain to the front. This carries blood out of the weave. Do this within minutes of staining for maximum effectiveness.</div></div></div><div class=\"auth-step\"><span class=\"auth-step-num\">2</span><div><div class=\"auth-step-title\">Salt paste — for dried blood on cotton</div><div class=\"auth-step-body\">A paste of salt and cold water applied to dried blood on cotton, left for 30 minutes, loosens dried protein before a cold soak. Rinse thoroughly with cold water.</div></div></div><div class=\"auth-step\"><span class=\"auth-step-num\">3</span><div><div class=\"auth-step-title\">Enzyme detergent — cotton and linen only</div><div class=\"auth-step-body\">Biological enzyme detergents break down blood protein in cold water. Do not use on silk or wool — the same enzymes that break down blood will damage protein fibres.</div></div></div><div class=\"auth-step\"><span class=\"auth-step-num\">4</span><div><div class=\"auth-step-title\">Hydrogen peroxide — white cotton only</div><div class=\"auth-step-body\">3% hydrogen peroxide lifts remaining colour on white cotton. Never on coloured fabrics, silk, or wool. Rinse with cold water after 5 minutes.</div></div></div></div><div class=\"fact-box\"><span class=\"fact-box-label\">Why cold works and hot does not</span><p>Blood proteins are soluble in their native state. Cold water dissolves and carries them away. Above approximately 40°C, proteins denature and form new bonds with the fabric fibre — the same process that cooks egg white. Once denatured, it cannot be reversed.</p></div>\n    </div>\n  </section>\n\n  <!-- SECTION 2: WHERE IT FAILS -->\n  <section class=\"authority-section section-fails\" id=\"where-it-fails\" aria-label=\"Where home treatment fails\">\n    <div class=\"section-inner\">\n      <p class=\"section-label label-fails\">Where home treatment fails</p>\n      <h2 class=\"section-h2\">The fatal mistake — <em>heat.</em></h2>\n      <p>Every other stain removal mistake is recoverable with professional treatment. A blood stain that has seen hot water or a hot dryer is significantly less recoverable.</p><div class=\"auth-steps\"><div class=\"auth-step\"><span class=\"auth-step-num\">1</span><div><div class=\"auth-step-title\">Hot water</div><div class=\"auth-step-body\">Causes blood proteins to denature and bond with fabric fibre. The brown or rust stain that remains is denatured protein locked into the fabric. Professional treatment can partially improve this but cannot fully reverse it.</div></div></div><div class=\"auth-step\"><span class=\"auth-step-num\">2</span><div><div class=\"auth-step-title\">Hot dryer before stain is removed</div><div class=\"auth-step-body\">Same effect as hot water. Check carefully in good light before any heat. If any stain remains, air dry and repeat treatment — never heat an incompletely treated blood stain.</div></div></div><div class=\"auth-step\"><span class=\"auth-step-num\">3</span><div><div class=\"auth-step-title\">Bleach</div><div class=\"auth-step-body\">Oxidises blood protein and creates a permanent brown or orange mark typically more visible than the original stain. One of the rare cases where the treatment is definitively worse than the problem.</div></div></div><div class=\"auth-step\"><span class=\"auth-step-num\">4</span><div><div class=\"auth-step-title\">Enzyme detergent on silk or wool</div><div class=\"auth-step-body\">Biological detergents cannot distinguish between blood protein and silk or wool protein. Using enzyme detergent on silk or wool to treat blood damages the fabric itself.</div></div></div></div><div class=\"warn-box\"><span class=\"warn-box-label\">The irreversible scenario</span><p>Blood + hot water + dryer on silk = near-permanent staining. If this has occurred, bring the garment to us. We will assess honestly and attempt professional treatment, but we will tell you clearly if the damage is beyond recovery.</p></div>\n    </div>\n  </section>\n\n  <!-- SECTION 3: PROFESSIONAL -->\n  <section class=\"authority-section section-professional\" id=\"professional-treatment\" aria-label=\"Professional treatment\">\n    <div class=\"section-inner\">\n      <p class=\"section-label label-professional\">Professional treatment</p>\n      <h2 class=\"section-h2\">What professional treatment <em>achieves on dried and set stains.</em></h2>\n      <p>Fresh blood on most fabrics is highly treatable at home with cold water. Professional treatment adds value on three specific situations: dried blood home treatment has not fully removed, blood on delicate fabrics, and blood stains that have seen heat.</p><div class=\"auth-steps\"><div class=\"auth-step\"><span class=\"auth-step-num\">1</span><div><div class=\"auth-step-title\">Enzyme pre-spotting calibrated to fabric</div><div class=\"auth-step-body\">Professional enzyme spotting agents are applied in controlled concentrations calibrated for the specific fabric. On silk, a formulation targeting haemoglobin without damaging silk fibroin. On cotton, a more aggressive formulation for deeper protein breakdown.</div></div></div><div class=\"auth-step\"><span class=\"auth-step-num\">2</span><div><div class=\"auth-step-title\">Professional wet cleaning cycle</div><div class=\"auth-step-body\">Blood responds to controlled wet cleaning better than dry cleaning — it is primarily water-soluble. Professional equipment controls temperature, agitation, and enzyme contact time in ways home washing cannot replicate.</div></div></div><div class=\"auth-step\"><span class=\"auth-step-num\">3</span><div><div class=\"auth-step-title\">Honest prognosis on heat-set stains</div><div class=\"auth-step-body\">For blood stains that have seen heat, we assess the extent of denaturation before treating. We tell you honestly whether the prognosis justifies treatment cost.</div></div></div></div><div class=\"pro-box\"><span class=\"pro-box-label\">Prognosis by situation</span><p>Fresh blood on cotton: near-complete removal. Dried blood on cotton, no heat: good improvement. Dried blood on silk, no heat: good improvement, some fading possible. After hot water: moderate improvement. After hot dryer: partial improvement at best.</p></div>\n    </div>\n  </section>\n\n</div>\n\n<section class=\"post-faq\" id=\"faq\" aria-label=\"Frequently asked questions\">\n  <div class=\"faq-inner\">\n    <p class=\"faq-ey\">Questions answered</p>\n    <h2 class=\"faq-h2\" data-reveal=\"\">Blood stain questions<br><em>answered directly.</em></h2>\n    <div class=\"faq-item  open\"><button class=\"faq-q\" aria-expanded=\"true\">What should I do immediately if I get blood on a silk saree?<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\">Do not apply water — even cold water risks spreading on silk. Blot excess with a clean dry cloth working from the outside of the stain inward. Bring to a professional dry cleaner as soon as possible. Fresh blood on silk without water contact is very treatable professionally.</p></div><div class=\"faq-item\"><button class=\"faq-q\" aria-expanded=\"false\">Can I remove dried blood from white cotton at home?<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. Salt paste in cold water for 30 minutes, then cold soak with biological enzyme detergent. Repeat 2–3 cycles. Never use hot water or a dryer until completely clean. Most dried blood on cotton responds to this method.</p></div><div class=\"faq-item\"><button class=\"faq-q\" aria-expanded=\"false\">My linen shirt blood stain went through the dryer. What can I do?<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\">Bring it to a professional. Heat-set blood on linen is difficult but not necessarily impossible to improve. We will assess and advise on realistic outcome before treating.</p></div><div class=\"faq-item\"><button class=\"faq-q\" aria-expanded=\"false\">Does dry cleaning treat blood stains?<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\">Blood is primarily water-soluble — dry cleaning solvent alone is not the primary treatment. Professional treatment uses enzyme pre-spotting in controlled conditions followed by wet cleaning at controlled temperature.</p></div><div class=\"faq-item\"><button class=\"faq-q\" aria-expanded=\"false\">Is enzyme detergent safe for all fabrics?<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. Biological enzyme detergents contain proteases that break down protein. Silk and wool are protein fibres. Using enzyme detergent on silk or wool causes fabric damage alongside stain treatment.</p></div>\n  </div>\n</section>\n\n<div class=\"author-strip\" data-reveal=\"\">\n  <div class=\"author-inner\">\n    <div class=\"author-logo\">TSL</div>\n    <div class=\"author-info\">\n      <span class=\"author-name\">The Swiss Laundry — Stain Removal Specialists</span>\n      <span class=\"author-bio\"><span class=\"tsl-age\">13</span> years of professional stain treatment from Kasba, Kolkata. P-4 Kasba Industrial Estate, Phase III, E.M. Bypass (East), Kolkata 700107.</span>\n    </div>\n    <div class=\"author-dates\"><span>Published: 11 Feb 2026</span><br><span>Updated: 11 Feb 2026</span></div>\n  </div>\n</div>\n\n<section class=\"related-sec\" data-reveal=\"\" aria-label=\"Related guides\">\n  <div class=\"related-inner\">\n    <p class=\"related-ey\">Related guides</p>\n    <h2 class=\"related-h2\">More from <em>The Swiss Laundry.</em></h2>\n    <div class=\"related-grid\"><a href=\"/blog-stain-removal-science\" class=\"related-card\"><span class=\"rc-tag\">Stain Removal</span><span class=\"rc-title\">The science of stain removal.</span><span class=\"rc-read\">7 min read</span></a><a href=\"/blog-how-to-remove-oil-stain-from-clothes-india\" class=\"related-card\"><span class=\"rc-tag\">Stain Removal</span><span class=\"rc-title\">How to remove oil stains from clothes.</span><span class=\"rc-read\">5 min read</span></a><a href=\"/blog-can-dry-cleaning-damage-clothes\" class=\"related-card\"><span class=\"rc-tag\">Consumer</span><span class=\"rc-title\">Can dry cleaning damage clothes?</span><span class=\"rc-read\">6 min read</span></a></div>\n  </div>\n</section>\n\n<section class=\"post-cta\" aria-label=\"Professional stain removal service\">\n  <div class=\"post-cta-inner\">\n    <div class=\"post-cta-rule\" aria-hidden=\"true\"></div>\n    <h2 class=\"post-cta-h2\">Remove the risk.<br><em>Completely.</em></h2>\n    <p class=\"post-cta-sub\">Blood on delicate fabric, or blood that has seen heat — professional enzyme treatment is the correct response. Bring it in and we will tell you honestly what is achievable.</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+have+a+stain+I+need+help+with\" class=\"btn-dk\" target=\"_blank\" rel=\"noopener\">WhatsApp for Advice</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 9836233354</a>\n    </div>\n  </div>\n</section>\n\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>"
}
