/* IndoSurgicals Anaesthesia Gold Standard R1.2 — Hospital Furniture Layout Parity */
:root{--ana12-primary:#0b5269;--ana12-dark:#073b4c;--ana12-accent:#0d7f9f;--ana12-teal:#087f78;--ana12-soft:#f4f9fb;--ana12-border:#d8e7ec;--ana12-text:#263b44;--ana12-muted:#647780}

/* CATEGORY — same component language as Hospital Furniture, with a locked image ratio. */
.isp-category-page.isp-ana-hf-r12-category .isp-category-card{height:100%}
.isp-category-page.isp-ana-hf-r12-category .isp-category-image{aspect-ratio:4/3;overflow:hidden;background:#f4f4f4}
.isp-category-page.isp-ana-hf-r12-category .isp-category-image img{width:100%!important;height:100%!important;object-fit:contain}
.isp-category-page.isp-ana-hf-r12-category .isp-category-card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}

/* SUBCATEGORY — Hospital Furniture discovery CSS is intentionally loaded too. */
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-product-card--anaesthesia-r11{box-shadow:0 5px 16px rgba(25,57,75,.045);border-color:#dbe4e6}
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-product-card--anaesthesia-r11:hover{box-shadow:0 10px 24px rgba(25,57,75,.085)}
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-product-image{padding:13px;background:linear-gradient(180deg,#f8fbfb 0%,#f2f6f8 100%)}
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-ana-card-placeholder{min-height:0;background:linear-gradient(180deg,#f8fbfb 0%,#f2f6f8 100%)}
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-product-card h2{min-height:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-product-sku{margin-top:auto}
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-view-product{margin-top:0}
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-ana-card-summary,.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-ana-card-chips{display:none!important}
.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-subcategory-information>.isp-section-heading{margin-bottom:14px}

/* Anaesthesia guide using Hospital Furniture FCP classes. */
.isp-ana-r12-subguide{margin-top:0}
.isp-ana-r12-subguide .isp-hf-fcp-v2__intro{margin-top:0}

/* PRODUCT DETAILS — mirrors Hospital Furniture's authored component hierarchy. */
.isp-product-page.isp-ana-hf-r12-product .isp-product-description{font-family:inherit}
.isp-ana-r12,.isp-ana-r12 *{box-sizing:border-box}
.isp-ana-r12{width:100%;max-width:100%;margin:0;color:var(--ana12-text);font-size:15.5px;line-height:1.72}
.isp-ana-r12 h2,.isp-ana-r12 h3,.isp-ana-r12 h4,.isp-ana-r12 p{margin-top:0}
.isp-ana-r12 h3{margin-bottom:14px!important;color:var(--ana12-dark)!important;font-size:25px!important;line-height:1.3!important;text-align:left!important}
.isp-ana-r12 p{color:var(--ana12-text)}

.isp-ana-r12-hero{position:relative;overflow:hidden;padding:44px;margin-bottom:25px;border-radius:18px;background:linear-gradient(135deg,#073b4c 0%,#0b617c 58%,#0d7f9f 100%);color:#fff}
.isp-ana-r12-hero:before,.isp-ana-r12-hero:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.06)}
.isp-ana-r12-hero:before{width:285px;height:285px;right:-90px;top:-115px}.isp-ana-r12-hero:after{width:185px;height:185px;right:150px;bottom:-135px}
.isp-ana-r12-badge{position:relative;z-index:2;display:inline-block;padding:6px 14px;margin-bottom:15px;border:1px solid rgba(255,255,255,.25);border-radius:30px;background:rgba(255,255,255,.12);color:#fff;font-size:13px;font-weight:700}
.isp-ana-r12-hero h2{position:relative;z-index:2;margin:0 0 13px!important;color:#fff!important;font-size:35px!important;line-height:1.2!important;text-align:left!important}
.isp-ana-r12-hero p{position:relative;z-index:2;max-width:980px;margin:0!important;color:rgba(255,255,255,.94)!important;font-size:17px!important;line-height:1.65!important}

.isp-ana-r12-section{padding:31px;margin-bottom:23px;border:1px solid var(--ana12-border);border-radius:16px;background:#fff}
.isp-ana-r12-section> :last-child{margin-bottom:0!important}.isp-ana-r12-intro{border-left:5px solid var(--ana12-accent);background:var(--ana12-soft)}
.isp-ana-r12-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:22px}
.isp-ana-r12-summary-item{padding:20px 13px;border:1px solid var(--ana12-border);border-radius:12px;background:#fff;text-align:center;min-width:0}
.isp-ana-r12-summary-item strong{display:block;margin-bottom:5px;color:var(--ana12-dark);font-size:17px;line-height:1.35;overflow-wrap:anywhere}.isp-ana-r12-summary-item span{color:var(--ana12-muted);font-size:12px}

.isp-ana-r12-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:22px}.isp-ana-r12-feature{padding:21px;border:1px solid var(--ana12-border);border-radius:13px;background:var(--ana12-soft);min-width:0}.isp-ana-r12-icon{display:flex;align-items:center;justify-content:center;width:57px;height:44px;margin-bottom:13px;border-radius:10px;background:var(--ana12-primary);color:#fff;font-size:11px;font-weight:800}.isp-ana-r12-feature p{margin:0!important;color:var(--ana12-muted)!important;font-size:14px!important;line-height:1.6!important}

.isp-ana-r12-advanced{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.isp-ana-r12-advanced-card{padding:24px;border:1px solid var(--ana12-border);border-radius:13px;background:#fafcfd}.isp-ana-r12-advanced-card strong{display:block;margin-bottom:7px;color:var(--ana12-dark);font-size:18px}.isp-ana-r12-advanced-card p{margin:0!important;color:var(--ana12-muted)!important;font-size:14px!important;line-height:1.65!important}

.isp-ana-r12-table-wrap{overflow-x:auto;margin-top:15px;border:1px solid var(--ana12-border);border-radius:12px}.isp-ana-r12-table{width:100%;min-width:650px;border-collapse:collapse!important;margin:0!important}.isp-ana-r12-table tr{border-bottom:1px solid var(--ana12-border)}.isp-ana-r12-table tr:last-child{border-bottom:0}.isp-ana-r12-table th,.isp-ana-r12-table td{padding:13px 11px!important;border:0!important;text-align:left;vertical-align:top;font-size:14px!important;line-height:1.6!important}.isp-ana-r12-table th{width:31%;background:#f8fbfc;color:var(--ana12-dark)!important;font-weight:700!important}
.isp-ana-r12-fact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:0!important;padding:0!important;list-style:none}.isp-ana-r12-fact-list li{position:relative;padding:10px 10px 10px 28px;border-bottom:1px solid var(--ana12-border);color:var(--ana12-muted);font-size:14px}.isp-ana-r12-fact-list li:before{content:'✓';position:absolute;left:5px;color:var(--ana12-accent);font-weight:800}

.isp-ana-r12-note-section{background:#fff}.isp-ana-r12-note{padding:18px 21px;border-left:4px solid var(--ana12-accent);border-radius:8px;background:var(--ana12-soft);color:var(--ana12-muted);font-size:14px;line-height:1.65}.isp-ana-r12-note strong{color:var(--ana12-dark)}
.isp-ana-r12-company{background:var(--ana12-soft)}
.isp-ana-r12-cta{padding:31px;margin-bottom:23px;border-radius:16px;background:var(--ana12-dark);color:#fff}.isp-ana-r12-cta h3{margin-bottom:9px!important;color:#fff!important;font-size:25px!important;text-align:left!important}.isp-ana-r12-cta p{margin-bottom:18px!important;color:rgba(255,255,255,.9)!important}.isp-ana-r12-cta-actions{display:flex;flex-wrap:wrap;gap:10px}.isp-ana-r12-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:11px 20px;border-radius:8px;background:#fff;color:var(--ana12-dark)!important;font-weight:700;text-decoration:none!important}.isp-ana-r12-btn--secondary{background:transparent;color:#fff!important;border:1px solid rgba(255,255,255,.45)}

.isp-ana-r12-faq-list{display:grid;gap:10px}.isp-ana-r12-faq-list details{overflow:hidden;background:#fff;border:1px solid var(--ana12-border);border-radius:13px}.isp-ana-r12-faq-list summary{position:relative;cursor:pointer;list-style:none;padding:16px 48px 16px 18px;color:var(--ana12-dark);font-size:13.5px;font-weight:800;line-height:1.5}.isp-ana-r12-faq-list summary::-webkit-details-marker{display:none}.isp-ana-r12-faq-list summary:after{content:'+';position:absolute;right:18px;top:50%;transform:translateY(-50%);color:var(--ana12-teal);font-size:20px;font-weight:500}.isp-ana-r12-faq-list details[open] summary:after{content:'−'}.isp-ana-r12-faq-list details>div{padding:0 18px 16px}.isp-ana-r12-faq-list p{margin:0!important;color:var(--ana12-muted)!important;font-size:13.5px!important;line-height:1.65!important}
.isp-ana-r12-source-note{margin:0 2px 0!important;padding:12px 14px;border-radius:10px;background:#f6f8f9;color:#687986!important;font-size:12.5px!important;line-height:1.55!important}

@media(max-width:900px){.isp-ana-r12-summary,.isp-ana-r12-features,.isp-ana-r12-advanced{grid-template-columns:repeat(2,minmax(0,1fr))}.isp-ana-r12-fact-list{grid-template-columns:1fr}}
@media(max-width:650px){.isp-ana-r12{font-size:15px}.isp-ana-r12-hero{padding:27px 21px;border-radius:13px}.isp-ana-r12-hero h2{font-size:27px!important}.isp-ana-r12-section{padding:22px 18px;border-radius:13px}.isp-ana-r12-summary,.isp-ana-r12-features,.isp-ana-r12-advanced{grid-template-columns:1fr}.isp-ana-r12-cta{padding:24px 19px}.isp-ana-r12-btn{width:100%}}
@media(max-width:560px){.isp-category-page.isp-ana-hf-r12-category .isp-category-image{aspect-ratio:auto}.isp-subcategory-page.isp-ana-hf-r12-subcategory .isp-product-card h2{-webkit-line-clamp:4}}

/* R1.2.2 — Dark-surface contrast hardening.
   Public Page Standard is intentionally loaded after page-family CSS, so these
   selectors use a stronger Anaesthesia-only scope to preserve white typography
   on the two dark Hospital-Furniture-style surfaces. */
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-hero,
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-hero * {
    color:#fff !important;
}
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-hero h2,
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-hero p,
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-hero .isp-ana-r12-badge {
    color:#fff !important;
}
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta,
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta h3,
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta p {
    color:#fff !important;
}
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta .isp-ana-r12-btn,
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta .isp-ana-r12-btn:visited {
    color:var(--ana12-dark) !important;
    background:#fff !important;
}
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta .isp-ana-r12-btn--secondary,
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta .isp-ana-r12-btn--secondary:visited {
    color:#fff !important;
    background:transparent !important;
    border-color:rgba(255,255,255,.62) !important;
}
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta .isp-ana-r12-btn--secondary:hover,
html body .isp-product-page .isp-product-description.isp-anaesthesia-product-content-r12 .isp-ana-r12 .isp-ana-r12-cta .isp-ana-r12-btn--secondary:focus-visible {
    color:var(--ana12-dark) !important;
    background:#fff !important;
}

/* R1.2.3 — Anaesthesia subcategory product-card media hardening.
   R1.1's branded image fallback used display:flex!important, which could
   override the HTML hidden state and render beside a valid product image.
   Keep one Hospital-Furniture-style media surface: product image OR fallback. */
html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
.isp-product-card--anaesthesia-r11 .isp-product-image {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    aspect-ratio:1 / 1;
    min-height:0;
    padding:12px;
    overflow:hidden;
    background:#f7f9f9;
}

html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
.isp-product-card--anaesthesia-r11 .isp-product-image > img {
    display:block;
    flex:0 0 100%;
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    margin:0 !important;
}

/* Critical fix: a valid image must never share the media row with the fallback. */
html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
.isp-product-card--anaesthesia-r11 .isp-ana-card-placeholder[hidden] {
    display:none !important;
}

/* If image loading really fails, fill the same locked media surface cleanly. */
html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
.isp-product-card--anaesthesia-r11 .isp-ana-card-placeholder:not([hidden]) {
    position:absolute;
    inset:12px;
    z-index:1;
    display:flex !important;
    width:auto;
    height:auto;
    min-height:0;
    padding:18px;
}

/* Keep catalogue rows visually aligned like Hospital Furniture. */
html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
.isp-product-card--anaesthesia-r11 {
    height:100%;
}
html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
.isp-product-card--anaesthesia-r11 .isp-product-card-body {
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
}
html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
.isp-product-card--anaesthesia-r11 .isp-product-sku {
    margin-top:auto;
}

@media (max-width:600px) {
    html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
    .isp-product-card--anaesthesia-r11 .isp-product-image {
        aspect-ratio:auto;
        min-height:150px;
        padding:8px;
    }
    html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
    .isp-product-card--anaesthesia-r11 .isp-product-image > img {
        height:136px !important;
    }
    html body .isp-subcategory-page.isp-ana-hf-r12-subcategory
    .isp-product-card--anaesthesia-r11 .isp-ana-card-placeholder:not([hidden]) {
        inset:8px;
    }
}
