/* APPROVED OCTOBER RELEASE — typography, native plank previews and story motion.
 * Keep the existing Signature palette, original logo, identity artwork and mask.
 * Font aliases retain compatibility with the older layout variable names.
 */
.ibsh-page { --ibsh-font-body:'Inter',Arial,sans-serif; --ibsh-font-heading:'Manrope',Arial,sans-serif; --ibsh-sans:var(--ibsh-font-body); --ibsh-serif:var(--ibsh-font-heading); font-family:var(--ibsh-font-body); }
.ibsh-page[dir=rtl] { --ibsh-font-body:'Noto Sans Arabic',Arial,sans-serif; --ibsh-font-heading:'IBM Plex Sans Arabic',Arial,sans-serif; --ibsh-sans:var(--ibsh-font-body); --ibsh-serif:var(--ibsh-font-heading); font-family:var(--ibsh-font-body); }
.ibsh-page [lang=en] { --ibsh-font-body:'Inter',Arial,sans-serif; --ibsh-font-heading:'Manrope',Arial,sans-serif; --ibsh-sans:var(--ibsh-font-body); --ibsh-serif:var(--ibsh-font-heading); font-family:var(--ibsh-font-body); }
.ibsh-page h1,.ibsh-page h2,.ibsh-page h3,.ibsh-page h4,.ibsh-page h5,.ibsh-page h6 { font-family:var(--ibsh-font-heading); font-weight:500; }
.ibsh-page[dir=rtl] :is(h1,h2,h3,h4,h5,h6),.ibsh-page[dir=rtl] .ibsh-product-info h3 { font-family:var(--ibsh-font-heading); font-weight:500; }
.ibsh-page[dir=rtl] .ibsh-product-info h3[lang=en] { font-family:'Manrope',Arial,sans-serif; }
.ibsh-page.ibsh-motion-ready .ibsh-hero-copy h1 { font-family:var(--ibsh-font-heading); font-weight:600; font-size:clamp(42px,4.3vw,72px); letter-spacing:-.045em; line-height:1.12; }
.ibsh-page.ibsh-motion-ready[dir=rtl] .ibsh-hero-copy h1 { font-family:var(--ibsh-font-heading); font-weight:500; letter-spacing:0; font-size:clamp(37px,4vw,65px); line-height:1.5; }
.ibsh-page.ibsh-motion-ready .ibsh-hero-after h2,.ibsh-page.ibsh-motion-ready[dir=rtl] .ibsh-hero-after h2 { font-family:var(--ibsh-font-heading); font-weight:500; }
.ibsh-page .ibsh-page-hero h1 { max-width:22ch; }
.ibsh-page[dir=rtl] .ibsh-reading-line { font-family:var(--ibsh-font-heading); }
.ibsh-page .ibsh-finish-description { font-family:'Inter',Arial,sans-serif; text-align:start; }
.ibsh-home-identity-panel { min-height:430px; padding:clamp(28px,5vw,70px); display:flex; flex-direction:column; justify-content:space-between; background:var(--ibsh-stone,#d9d0c2) url('assets/identity-spc-approved-geometry.svg') center/cover; border:1px solid var(--ibsh-line); }
.ibsh-identity-monogram { font-family:'Manrope',sans-serif; font-size:clamp(80px,12vw,170px); line-height:1; letter-spacing:-.08em; color:var(--ibsh-accent); }
.ibsh-home-identity-panel p { font-family:var(--ibsh-font-heading); font-size:clamp(24px,2.5vw,38px); line-height:1.4; max-width:13ch; }
.ibsh-project-layout-approved { grid-template-columns:1fr 1fr; align-items:center; }
.ibsh-project-layout-approved .ibsh-project-record { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.ibsh-project-layout-approved .ibsh-home-photo-frame { aspect-ratio:3/4; }
.ibsh-project-layout-approved .ibsh-home-caption { color:var(--ibsh-on-dark-muted,#d7d0c4); }
/* Gallery: the default catalogue plank and the matching room are separate blocks. */
.ibsh-page .ibsh-plank-preview { margin:0; overflow:hidden; background:var(--ibsh-paper,#eee8dd); }
.ibsh-page .ibsh-finish-preview { display:grid; place-items:center; position:relative; width:100%; min-height:clamp(280px,29vw,370px); padding:34px; overflow:hidden; isolation:isolate; }
.ibsh-page .ibsh-swatch-frame { position:relative; overflow:hidden; width:min(48%,165px); flex:none; box-shadow:7px 14px 30px #211f1926; background:#ddd4c5; }
.ibsh-page .ibsh-swatch-frame img { display:block; border-radius:0; transition:none; }
.ibsh-page .ibsh-finish-preview>.ibsh-room-preview { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .45s ease; transform:none; }
.ibsh-gallery-cue { position:absolute; inset-inline-end:18px; bottom:15px; font:400 24px/1 'Inter',sans-serif; z-index:2; background:#eee8ddd9; color:#292b25; padding:8px; }
.ibsh-finish-preview:focus-visible { outline:3px solid var(--ibsh-accent); outline-offset:-4px; }
.ibsh-finish-preview:focus-visible>.ibsh-room-preview { opacity:1; }
@media(hover:hover) and (pointer:fine) { .ibsh-finish-preview:hover>.ibsh-room-preview { opacity:1; } }
/* Technical sections stay English and left-to-right on both language versions. */
.ibsh-technical { text-align:start; }
.ibsh-technical-table { width:100%; border-collapse:collapse; margin:28px 0 38px; font-size:14px; }
.ibsh-technical-table th,.ibsh-technical-table td { text-align:start; vertical-align:top; padding:15px 18px; border-bottom:1px solid var(--ibsh-line); line-height:1.7; }
.ibsh-technical-table th { width:40%; font-weight:500; }
.ibsh-technical-table td { font-weight:400; }
.ibsh-performance-details { margin-top:35px; border-block:1px solid var(--ibsh-line); padding:20px 0; }
.ibsh-performance-details summary { cursor:pointer; font-weight:600; padding:12px 0; }
.ibsh-native-construction { max-width:575px; margin:35px auto; }
.ibsh-native-construction img { width:100%; height:auto; }
.ibsh-native-construction figcaption { font-size:12px; margin-top:12px; }
.ibsh-construction-breakdown { max-width:620px; margin:40px 0; }
.ibsh-plank-dimension { border:1px solid var(--ibsh-line); min-height:90px; padding:20px; display:grid; place-items:center; margin-bottom:24px; color:var(--ibsh-muted); }
.ibsh-flooring-body,.ibsh-flooring-backing { padding:15px 20px; border:1px solid var(--ibsh-line); }
.ibsh-flooring-body { min-height:90px; display:flex; align-items:center; background:#b6a18530; }
.ibsh-flooring-backing { border-top:0; background:#91826b30; }
.ibsh-construction-breakdown>p { margin-top:16px; font-size:13px; }
/* Story: two founding dates, then one distinct 2025 chapter; no archival fiction. */
.ibsh-story-opening .ibsh-wrap,.ibsh-story-experience .ibsh-copy,.ibsh-story-people .ibsh-copy,.ibsh-story-principles .ibsh-wrap { max-width:1000px; }
.ibsh-story-opening p,.ibsh-story-experience .ibsh-copy p,.ibsh-story-people .ibsh-copy p { max-width:72ch; }
.ibsh-history-timeline { position:relative; padding-inline-start:55px; --timeline-progress:0; }
.ibsh-history-timeline::before,.ibsh-history-timeline::after { content:''; position:absolute; inset-inline-start:10px; top:0; width:1px; }
.ibsh-history-timeline::before { height:100%; background:var(--ibsh-line); }
.ibsh-history-timeline::after { height:calc(var(--timeline-progress)*100%); background:var(--ibsh-accent); }
.ibsh-history-chapter { position:relative; padding:15px 0 70px; max-width:880px; }
.ibsh-history-chapter::before { content:''; position:absolute; inset-inline-start:-49px; top:38px; height:9px; width:9px; border:1px solid var(--ibsh-accent); border-radius:50%; background:var(--ibsh-paper,#eee8dd); }
.ibsh-history-chapter .ibsh-milestone-year { margin-bottom:25px!important; font-family:'Manrope',sans-serif; }
.ibsh-story-new-chapter { background:var(--ibsh-charcoal,#292b25); color:#f0e9df; }
.ibsh-story-new-chapter :is(h2,p),.ibsh-story-new-chapter .ibsh-kicker { color:inherit; }
.ibsh-story-new-chapter .ibsh-copy { max-width:780px; }
.ibsh-story-people .ibsh-reading-line { display:flex; flex-wrap:wrap; gap:18px 38px; margin-top:50px; }
.ibsh-achievement { min-height:190px; }
.ibsh-reveal-prepared { opacity:0; transform:translateY(22px); transition:opacity .7s ease,transform .7s ease; }
.ibsh-reveal-prepared.is-visible { opacity:1; transform:none; }
@media(max-width:900px) { .ibsh-page.ibsh-motion-ready .ibsh-hero-copy h1 { font-size:clamp(34px,5.6vw,51px); } .ibsh-page.ibsh-motion-ready[dir=rtl] .ibsh-hero-copy h1 { font-size:clamp(31px,5.3vw,45px); } }
@media(max-width:760px) {
 .ibsh-home-identity-panel { min-height:320px; }
 .ibsh-project-layout-approved { grid-template-columns:1fr; }
 .ibsh-project-layout-approved .ibsh-project-record { grid-template-columns:1fr; gap:20px; }
 .ibsh-page .ibsh-finish-preview { min-height:320px; }
 .ibsh-technical-table { font-size:13px; table-layout:fixed; }
 .ibsh-technical-table th,.ibsh-technical-table td { padding:12px 8px; overflow-wrap:anywhere; }
 .ibsh-history-timeline { padding-inline-start:36px; }
 .ibsh-history-chapter::before { inset-inline-start:-30px; }
}
@media(prefers-reduced-motion:reduce) {
 .ibsh-reveal-prepared { opacity:1; transform:none; transition:none; }
 .ibsh-finish-preview>.ibsh-room-preview { transition:none; }
 .ibsh-history-timeline::after { height:100%; }
}

.ibsh-page .ibsh-swatch-select-1001 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-select-1001 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-10.9713605%;top:-0.0000147%;transform-origin:0 0;transform:matrix(1.219427142, 0.0, -0.0, 1.000000147, 0, 0); }

.ibsh-page .ibsh-swatch-select-1004 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-select-1004 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.2384194%;top:-0.0000147%;transform-origin:0 0;transform:matrix(1.224767585, 0.0, -0.0, 1.000000147, 0, 0); }

.ibsh-page .ibsh-swatch-select-1006 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-select-1006 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.2384194%;top:-0.0000147%;transform-origin:0 0;transform:matrix(1.224767585, 0.0, -0.0, 1.000000147, 0, 0); }

.ibsh-page .ibsh-swatch-select-1009 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-select-1009 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.2400791%;top:-0.0000147%;transform-origin:0 0;transform:matrix(1.224801716, 0.0, -0.0, 1.000000147, 0, 0); }

.ibsh-page .ibsh-swatch-select-1010 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-select-1010 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.3341582%;top:0.0000147%;transform-origin:0 0;transform:matrix(1.226683366, 0.0, -0.0, 0.999999853, 0, 0); }

.ibsh-page .ibsh-swatch-select-1013 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-select-1013 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.2085041%;top:0.0000147%;transform-origin:0 0;transform:matrix(1.224169279, 0.0, -0.0, 0.999999853, 0, 0); }

.ibsh-page .ibsh-swatch-select-1014 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-select-1014 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.3921048%;top:0.0000147%;transform-origin:0 0;transform:matrix(1.227842097, 0.0, -0.0, 0.999999853, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-3014-8 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-woodline-3014-8 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-188.4917544%;top:-75.1244107%;transform-origin:0 0;transform:matrix(4.905341968, 0.0, -0.0, 3.601990867, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-0051-5 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-woodline-0051-5 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-112.7949029%;top:-50.0000369%;transform-origin:0 0;transform:matrix(3.381125467, 0.0, -0.0, 2.482758966, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-1218-11 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-woodline-1218-11 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-137.2533296%;top:-62.5000092%;transform-origin:0 0;transform:matrix(4.085526316, 0.0, -0.0, 3.000000442, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-10381-15 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-woodline-10381-15 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4163047%;top:-0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 1.000000147, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-3013-5 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-woodline-3013-5 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4164051%;top:0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 0.999999853, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-1359-7 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-woodline-1359-7 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4163181%;top:0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 0.999999853, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-1113-37 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-woodline-1113-37 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-138.5628014%;top:-67.3076586%;transform-origin:0 0;transform:matrix(3.771255225, 0.0, -0.0, 2.769230384, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-1359-3 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-woodline-1359-3 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4164051%;top:-0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 1.000000147, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-1354-1 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-woodline-1354-1 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-129.7987536%;top:-60.7842724%;transform-origin:0 0;transform:matrix(3.845200923, 0.0, -0.0, 2.823529498, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-3007-3 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-woodline-3007-3 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4163047%;top:-0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 1.000000147, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-1223-24 { aspect-ratio:0.550724719; }
.ibsh-page .ibsh-swatch-woodline-1223-24 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4163047%;top:-0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 1.000000147, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-0050-2 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-woodline-0050-2 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4164051%;top:0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 0.999999853, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-1132-10 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-woodline-1132-10 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4163181%;top:0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 0.999999853, 0, 0); }

.ibsh-page .ibsh-swatch-woodline-1309-5 { aspect-ratio:0.550724556; }
.ibsh-page .ibsh-swatch-woodline-1309-5 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-11.4163047%;top:0.0000147%;transform-origin:0 0;transform:matrix(1.228328103, 0.0, -0.0, 0.999999853, 0, 0); }

.ibsh-page .ibsh-swatch-majestic-forest-1328 { aspect-ratio:0.693326483; }
.ibsh-page .ibsh-swatch-majestic-forest-1328 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:0.0000509%;top:105.7448784%;transform-origin:0 0;transform:matrix(0.0, -1.608040309, 0.693326483, 0.0, 0, 0); }

.ibsh-page .ibsh-swatch-majestic-forest-1328-3 { aspect-ratio:0.693326483; }
.ibsh-page .ibsh-swatch-majestic-forest-1328-3 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:0.0000408%;top:105.7448784%;transform-origin:0 0;transform:matrix(0.0, -1.608040309, 0.693326483, 0.0, 0, 0); }

.ibsh-page .ibsh-swatch-majestic-forest-1328-1 { aspect-ratio:0.693326412; }
.ibsh-page .ibsh-swatch-majestic-forest-1328-1 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:0.0000000%;top:105.6051615%;transform-origin:0 0;transform:matrix(0.0, -1.604010649, 0.693326483, 0.0, 0, 0); }

.ibsh-page .ibsh-swatch-majestic-forest-2022 { aspect-ratio:0.693326287; }
.ibsh-page .ibsh-swatch-majestic-forest-2022 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:-4.0870448%;top:0.0000141%;transform-origin:0 0;transform:matrix(1.08174161, 0.0, -0.0, 0.999999859, 0, 0); }

.ibsh-page .ibsh-swatch-majestic-forest-1328-2 { aspect-ratio:0.693326216; }
.ibsh-page .ibsh-swatch-majestic-forest-1328-2 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:0.0000000%;top:105.9761887%;transform-origin:0 0;transform:matrix(0.0, -1.614715242, 0.693326287, 0.0, 0, 0); }

.ibsh-page .ibsh-swatch-majestic-forest-1328-4 { aspect-ratio:0.693326287; }
.ibsh-page .ibsh-swatch-majestic-forest-1328-4 img { position:absolute;width:100%;height:100%;max-width:none;object-fit:fill;left:0.0000102%;top:-1.2487480%;transform-origin:0 0;transform:matrix(1.0, 0.0, -0.0, 1.024975314, 0, 0); }

/* Equal-specificity overrides for earlier Signature Arabic/heading rules. */
.ibsh-page .ibsh-site :is(h1,h2,h3,h4),.ibsh-page .ibsh-home>.ibsh-section :is(h2,h3),.ibsh-page[dir=rtl] .ibsh-site :is(h1,h2,h3,h4),.ibsh-page[dir=rtl] .ibsh-home>.ibsh-section :is(h2,h3) { font-family:var(--ibsh-font-heading); font-weight:500; }
.ibsh-page[dir=rtl] .ibsh-site .ibsh-product-info h3[lang=en] { font-family:'Manrope',Arial,sans-serif; }
.ibsh-image-dialog img { object-fit:contain; }
