/* Shared refinements: keep the existing brand palette and product storytelling. */
.footer-inner { grid-template-columns: minmax(0, 1fr) auto; }
.footer-brand { min-width: 0; }
.footer-logos { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 2fr); align-items: center; gap: 24px; width: min(380px, 100%); }
.footer-logos img { display: block; width: 100%; height: auto; }
.footer-brand p { margin: 18px 0 0; color: #a6b4bf; font-size: .85rem; }
@media (max-width: 900px) {
  .footer-inner { grid-template-columns: minmax(0, 1fr); }
  .footer-logos { gap: 20px; }
}
:root { --muted: #56616a; }
html { scroll-padding-top: 0; }
.sanitary-home, #catalogue, #visit, #contact, #intro, #brands, #trust, #terms-title { scroll-margin-top: 92px; }
:focus-visible { outline: 3px solid #1488c4; outline-offset: 5px; }
button, input, select { font: inherit; }
button, a { touch-action: manipulation; }
.hero { height: auto; min-height: 100svh; display: flex; flex-direction: column; }
.hero-content { flex: 1; padding-top: 108px; padding-bottom: 34px; }
.hero-hindi-logo { width: clamp(230px, 32svh, 350px); }
.hero-copy { font-size: 1rem; line-height: 1.6; max-width: 550px; }
.hero-actions { display: flex; align-items: center; gap: 24px; margin-top: 20px; }
.hero-actions .button { min-height: 46px; padding: 12px 22px; }
.hero-directions { font-size: .9rem; border-bottom: 1px solid #ffffff80; padding-block: 10px; }
.hero-categories, .hero-brands { position: relative; inset: auto; flex: none; }
.hero-categories { min-height: 46px; }
.hero-brands { min-height: 104px; }
.hero-scroll { display: none; }
.product-copy p, .intro-side p { color: #535f68; }
.section-brand-feature { margin-top: 26px; padding-top: 20px; border-top: 1px solid #102b4030; }
.section-brand-feature h4 { margin: 0; font: 650 1.1rem/1.4 var(--font-body); }
.section-brand-feature p { margin: 10px 0 0; font-size: .88rem; line-height: 1.8; color: #535f68; max-width: 560px; }
.taps-showcase .section-brand-feature { border-color: #ffffff30; }
.taps-showcase .section-brand-feature h4 { color: #75cfff; }
.taps-showcase .section-brand-feature p { color: #c2ccd3; }
.brand-claim-note { display: block; margin-top: 8px; font-size: .68rem; font-weight: 400; opacity: .8; }
.quick-find { gap: 10px; }
.quick-find a { isolation: isolate; overflow: hidden; min-height: 220px; background: #546975; padding: 22px 18px; }
.quick-find a img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.quick-find a::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, #071b2c0a 10%, #071b2c20 38%, #071b2ceb 100%); }
.quick-find a b, .quick-find a small { position: relative; }
.quick-find a small { color: #e1edf5; }
.quick-find a i { display: grid; place-items: center; width: 28px; height: 28px; top: 12px; right: 12px; background: #071b2c99; border: 1px solid #ffffff40; border-radius: 50%; }
.quick-find a:hover img, .quick-find a:focus-visible img { transform: scale(1.05); }
.quick-find a[href="#taps"] img { object-position: 48% center; }
.quick-find a[href="#tanks"] img { object-position: 50% center; }
.quick-find a[href="#tiles"] img { object-position: 42% 75%; }
@media (max-width: 760px) {
  .quick-find { gap: 10px; }
  .quick-find a { min-height: 190px; padding: 18px 16px; }
  .quick-find a:last-child { min-height: 160px; }
}
.taps-showcase-copy, .brands-title-row > p { color: #c2ccd3 !important; }
.taps-collection-card-content > small { color: #b5d0e0; }
.pipe-intro .text-link { display: inline-flex; font-size: .88rem; line-height: 1.65; margin-top: 16px; }
.sanitary-home { padding: 100px 0; background: #d5e9df; color: #153f35; }
.sanitary-home-head { max-width: 800px; }
.sanitary-home h3, .essentials h3 { font: 700 clamp(2.5rem, 4.5vw, 4.3rem)/1.13 var(--font-display); margin: 24px 0; }
.sanitary-home-head p { max-width: 540px; line-height: 1.8; }
.sanitary-types { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin: 44px 0 32px; }
.sanitary-type { min-width: 0; display: block; }
.sanitary-type figure { margin: 0 0 18px; aspect-ratio: 1; background: #f5faf7; overflow: hidden; position: relative; }
.sanitary-type img { width: 100%; height: 100%; padding: 18px; object-fit: contain; mix-blend-mode: multiply; transition: transform .35s ease; }
.sanitary-type:hover img { transform: scale(1.05); }
.sanitary-type h4 { font: 600 1.65rem var(--font-display); margin: 0 0 4px; display: flex; justify-content: space-between; }
.sanitary-type p { font-size: .78rem; color: #586067; margin: 0; }
.sanitary-home-foot { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid #102b4026; padding-top: 28px; }
.sanitary-home-foot p { font-size: .88rem; color: #535f68; }
.essentials { padding-block: 48px 88px; border-top: 1px solid #102b4026; }
.essentials > div:first-child { padding-top: 38px; }
.essentials h3 { margin-top: 0; }
.essentials-list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; margin-bottom: 26px; }
.essentials-list p { margin: 0; border-left: 2px solid var(--blue); padding-left: 18px; }
.essentials-list strong { display: block; font: 600 1.5rem var(--font-display); margin-bottom: 9px; }
.essentials-list span { font-size: .8rem; color: #56616a; line-height: 1.8; }
.trust-since { font-size: clamp(5rem, 12vw, 12rem); letter-spacing: -.065em; }
.trust-since small { display: block; letter-spacing: .24em; font: 700 .9rem var(--font-body); color: #298ec5; margin-bottom: 18px; }
.purashield-feature { background: #142e40; color: #fff; padding-block: 70px; }
.purashield-terms-link { font-size: .8rem; margin-top: 30px; color: #c2d8e4; text-decoration: underline; }
.purashield-feature-intro p, .purashield-proof dd, .purashield-nameplate p { color: #c6d4dd; }
.purashield-finishes p { color: #b5c7d2; }
.mobile-menu[aria-hidden="true"] { pointer-events: none; }
.mobile-menu[aria-hidden="false"] { pointer-events: auto; }
.collection-enquiry { display: inline-flex; margin-top: 22px; font-size: .88rem; color: #102b40; border-bottom: 1px solid currentColor; padding-bottom: 6px; }
@media (min-width: 761px) and (max-height: 800px) {
  .hero-content { padding-top: 86px; padding-bottom: 24px; }
  .hero-hindi-logo { width: 270px; margin-bottom: 8px; }
  .hero-since { margin-bottom: 10px; font-size: .88rem; }
  .hero h1 { font-size: 2.5rem; }
  .hero-copy { margin-top: 12px; font-size: .92rem; }
  .hero-actions { margin-top: 14px; }
}
@media (max-width: 1000px) {
  .sanitary-types { gap: 16px; }
}
@media (max-width: 760px) {
  .hero { min-height: calc(100svh - 54px); height: auto; }
  .hero-content { position: relative; inset: auto; width: auto; margin: 0 20px; padding: 86px 0 28px; }
  .hero-hindi-logo { width: clamp(220px, 30svh, 300px); }
  .hero h1 { font-size: clamp(2.2rem, 9.5vw, 3.1rem); }
  .hero-copy { display: block; font-size: .88rem; max-width: 350px; }
  .hero-actions { margin-top: 20px; gap: 18px; }
  .hero-actions .button { font-size: .84rem; }
  .hero-directions { font-size: .8rem; }
  .hero-categories, .hero-brands { inset: auto; }
  .hero-brands { min-height: 84px; padding: 14px 0; }
  .hero-logo-set .logo-ashirvad { height: 36px; }
  .hero-logo-set .logo-citizen { height: 24px; }
  .hero-logo-set .logo-asian-paints { height: 36px; }
  .hero-logo-set .logo-sonet { height: 28px; }
  .sanitary-home { padding: 60px 0; }
  .sanitary-home h3 { font-size: 2.6rem; }
  .sanitary-types { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 14px; margin-top: 30px; }
  .sanitary-type h4 { font-size: 1.45rem; }
  .sanitary-type p { font-size: .72rem; }
  .sanitary-home-foot { align-items: flex-start; flex-direction: column; }
  .essentials-list { grid-template-columns: 1fr 1fr; gap: 26px 16px; }
  .essentials { padding-bottom: 60px; }
  .trust-since { font-size: 6.8rem; }
  .purashield-feature { padding-block: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Small signature beneath the sticky header's English wordmark. */
.site-header .brand { height: 68px; flex-direction: column; justify-content: center; gap: 3px; }
.site-header .brand img { flex: none; }
.brand-tagline { display: block; color: #fff; opacity: .8; font: 500 9px/1.2 var(--font-body); letter-spacing: .24em; white-space: nowrap; }
@media (max-width: 760px) {
  .site-header .brand { height: 56px; }
  .brand-tagline { font-size: 8px; letter-spacing: .22em; }
}

/* Official BathSense and ESSESS marks with local after-sales support. */
.taps-brand-logos { display: flex; align-items: center; gap: 34px; margin: 4px 0 22px; }
.taps-bathsense-logo { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; width: 210px; }
.taps-bathsense-logo img { display: block; width: 100%; height: auto; }
.taps-bathsense-logo .taps-asian-paints-logo { width: 106px; }
.taps-brand-logos .taps-essess-logo { display: block; width: 148px; height: auto; }
.taps-service-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; padding: 0; margin: 26px 0 12px; gap: 22px; }
.taps-service-benefits li { border-top: 1px solid #ffffff35; padding-top: 14px; }
.taps-service-benefits strong { display: block; font: 650 1rem/1.45 var(--font-body); color: #fff; }
.taps-service-benefits span { display: block; margin-top: 5px; font-size: .78rem; color: #c2ccd3; line-height: 1.6; }
@media (max-width: 480px) {
  .taps-brand-logos { gap: 26px; }
  .taps-bathsense-logo { width: min(46vw, 190px); }
  .taps-brand-logos .taps-essess-logo { width: min(31vw, 130px); }
  .taps-service-benefits { gap: 12px; }
  .taps-service-benefits strong { font-size: .84rem; }
  .taps-service-benefits span { font-size: .7rem; }
}

/* Water storage: one image-led introduction, one range guide. */
.tank-story { background: #f5f9fb; color: #102b40; scroll-margin-top: 76px; }
.tank-story-opening { display: grid; grid-template-columns: minmax(0, 42fr) minmax(0, 58fr); background: #e5eff5; }
.tank-story-intro { padding: clamp(48px, 5vw, 80px) 40px clamp(42px, 4vw, 66px) max(48px, calc((100vw - 1320px) / 2)); align-self: center; }
.tank-story-intro .pipe-intro-meta { margin-bottom: 32px; }
.tank-story h3 { margin: 0; font: 650 clamp(2.8rem, 4.25vw, 4.5rem)/1.13 var(--font-display); letter-spacing: -.025em; }
.tank-story-description { max-width: 360px; margin: 22px 0 0; color: #456172; font-size: .94rem; line-height: 1.8; }
.tank-story-brand { margin-top: 36px; }
.tank-story-brand span { display: block; margin-bottom: 12px; color: #526b7b; font-size: .73rem; }
.tank-story-brand img { display: block; width: clamp(170px, 16vw, 224px); height: auto; }
.tank-story-image { position: relative; margin: 0; overflow: hidden; min-height: 510px; }
.tank-story-image > img { display: block; width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: 51% center; }
.tank-selection { padding-block: 44px 40px; }
.tank-selection-ranges { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 40px; margin: 0 0 34px; }
.tank-selection-ranges > div { border-top: 1px solid #102b402b; padding-top: 15px; }
.tank-selection-ranges dt { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 12px; font: 650 1.05rem/1.5 var(--font-body); }
.tank-selection-ranges dt span { color: #647985; font-size: .7rem; font-weight: 400; }
.tank-selection-ranges dd { margin: 8px 0 0; color: #456172; font: 400 .84rem/1.85 var(--font-body); font-variant-numeric: tabular-nums; }
.tank-selection-footer { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 24px; border-top: 1px solid #102b402b; }
.tank-stand-detail h5 { margin: 0; font: 600 1.24rem/1.4 var(--font-display); }
.tank-stand-detail p { margin: 6px 0 0; color: #526b7b; font-size: .8rem; line-height: 1.7; }
.tank-store-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 22px; min-height: 48px; padding: 12px 18px; color: #fff; background: #102b40; font-size: .84rem; font-weight: 600; }
.tank-store-link span { font-size: 1.3rem; transition: transform .2s ease; }
.tank-store-link:hover { background: #174461; }
.tank-store-link:hover span { transform: translate(2px, -2px); }
html:lang(en) .tank-story h3 { font-size: clamp(2.45rem, 3.6vw, 4rem); line-height: 1.08; letter-spacing: -.045em; }
html:lang(en) .tank-stand-detail h5 { font-size: 1.05rem; }
@media (min-width: 761px) and (max-width: 1100px) {
  .tank-story-intro { padding-left: 28px; padding-right: 28px; }
  .tank-story h3 { font-size: 3rem; }
  .tank-selection-ranges { column-gap: 26px; }
}
@media (max-width: 760px) {
  .tank-story-opening { grid-template-columns: 1fr; }
  .tank-story-intro { padding: 48px 20px 30px; }
  .tank-story-intro .pipe-intro-meta { margin-bottom: 24px; }
  .tank-story h3 { font-size: clamp(2.65rem, 8.3vw, 3.6rem); }
  .tank-story-description { margin-top: 16px; max-width: 420px; font-size: .9rem; }
  .tank-story-brand { margin-top: 24px; }
  .tank-story-brand img { width: 174px; }
  .tank-story-brand span { margin-bottom: 9px; }
  .tank-story-image { min-height: 0; aspect-ratio: 3 / 2; }
  .tank-story-image > img { position: static; object-fit: cover; }
  .tank-selection { padding-block: 30px 32px; }
  .tank-selection-ranges { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 23px 22px; margin: 0 0 28px; }
  .tank-selection-ranges dt { display: block; font-size: .97rem; }
  .tank-selection-ranges dt span { margin-left: 6px; font-size: .66rem; white-space: nowrap; }
  .tank-selection-ranges dd { font-size: .76rem; line-height: 1.9; }
  .tank-selection-footer { flex-direction: column; align-items: stretch; gap: 22px; padding-top: 20px; }
  .tank-store-link { font-size: .82rem; }
  html:lang(en) .tank-story h3 { font-size: clamp(2.3rem, 8vw, 3.4rem); }
}

.tank-brand-signature { display: flex; align-items: center; gap: 16px; }
.tank-brand-signature > img { min-width: 0; object-fit: contain; }
.tank-warranty { flex: none; margin: 0; padding-left: 16px; border-left: 1px solid #102b4033; }
.tank-warranty strong { display: block; color: #102b40; font: 650 1.2rem/1.3 var(--font-body); }
.tank-story-brand .tank-warranty span { margin: 3px 0 0; color: #456172; font-size: .73rem; }

/* Mint and porcelain give the sanitaryware range its own visual identity. */
.sanitary-home .pipe-intro-meta .product-number { background: #225b4d; }
.sanitary-home .pipe-intro-meta .product-type { color: #225b4d !important; }
.sanitary-home-head > div > p,
.sanitary-brand-column p,
.sanitary-home .sanitary-type p,
.sanitary-home-foot p { color: #466257; }
.sanitary-home-foot { border-color: #225b4d33; }
.sanitary-home-foot .button-primary { background: #225b4d; color: #fff; }
.sanitary-home-foot .button-primary:hover { background: #153f35; }

.sanitary-brand-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px; margin-top: 34px; padding-top: 26px; border-top: 1px solid #225b4d33; }
.sanitary-brand-column { min-width: 0; }
.sanitary-brand-column h4 { display: flex; align-items: center; height: 74px; margin: 0 0 18px; }
.sanitary-brand-column img { display: block; width: 180px; max-width: 100%; max-height: 74px; height: auto; object-fit: contain; object-position: left center; filter: brightness(0); opacity: .8; }
.sanitary-brand-column p { margin: 0; max-width: 500px; font-size: .88rem; line-height: 1.8; }
@media (max-width: 760px) {
  .sanitary-brand-grid { gap: 24px; margin-top: 28px; padding-top: 24px; }
  .sanitary-brand-column h4 { height: 60px; margin-bottom: 14px; }
  .sanitary-brand-column img { width: 150px; max-height: 60px; }
  .sanitary-brand-column p { font-size: .8rem; line-height: 1.75; }
}
