/* each section spans full viewport width; inner .cgi-lp-wrap caps content at 1536 */
.cgi-lp-body .cgi-csec{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.cgi-lp-wrap{max-width:1536px;margin:0 auto;padding:0 1rem;width:100%}
@media(min-width:640px){.cgi-lp-wrap{padding:0 1.5rem}}
@media(min-width:1024px){.cgi-lp-wrap{padding:0 2rem}}
/* hero */
.cgi-lp-hero{position:relative;min-height:100vh;display:flex;align-items:center;background:#0a0a0a;color:#fff;overflow:hidden}
.cgi-lp-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cgi-lp-hero-shade{position:absolute;inset:0;background:rgba(0,0,0,.4)}
.cgi-lp-hero-inner{position:relative;z-index:2;width:100%;max-width:1100px;margin:0 auto;padding:6rem 1rem 2rem;text-align:center}
.cgi-lp-hero-h{font-family:var(--cgi-font-display,sans-serif);font-weight:800;color:#fff;margin:0;font-size:clamp(2.5rem,1.5rem + 5vw,6rem);line-height:1.05}
.cgi-lp-hero-sub{color:#f3f4f6;font-weight:300;margin:1.5rem auto 0;max-width:48rem;font-size:clamp(1.125rem,1rem + .8vw,1.5rem)}
.cgi-lp-hero-btns{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:6rem}
.cgi-lp-hero-note{color:#d4d4d4;font-size:.875rem;margin-top:1.25rem}
.cgi-lp-range-foot{text-align:center;color:#525252;margin-top:3.5rem!important}html.cgi-dark .cgi-lp-range-foot{color:#a3a3a3}
.cgi-lp-hero-crumbs{position:absolute;top:calc(var(--cgi-header-h,80px) + 1.5rem);left:max(1.5rem,calc((100% - 96rem)/2 + 2rem));display:flex;gap:.5rem;color:rgba(255,255,255,.75);font-size:.9375rem;z-index:2}
.cgi-lp-hero .cgi-lp-hero-crumbs a{color:rgba(255,255,255,.85)!important;text-decoration:none}.cgi-lp-hero .cgi-lp-hero-crumbs a:hover{color:#fff!important}
.cgi-lp-hero-eyebrow{display:inline-block;border:1px solid rgba(255,255,255,.35);border-radius:9999px;padding:.375rem 1rem;font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:#e0f2fe;margin-bottom:1.5rem}
.cgi-lp-hero-price{color:#fff;font-size:1.125rem;margin-top:2rem}.cgi-lp-hero-price b{font-size:1.5rem;color:#7dd3fc}
.cgi-lp-hero-stats{display:flex;justify-content:center;gap:2.5rem;margin-top:1.75rem;flex-wrap:wrap}
.cgi-lp-hero-stat{display:flex;flex-direction:column;align-items:center}
.cgi-lp-hero-stat-v{font-family:var(--cgi-font-display,sans-serif);font-weight:700;font-size:1.75rem;color:#fff}
.cgi-lp-hero-stat-l{font-size:.875rem;color:rgba(255,255,255,.7)}
.cgi-lp-hero-leftal .cgi-lp-hero-inner{text-align:left;max-width:96rem;padding:9.5rem 2rem 2rem}
.cgi-lp-hero-leftal .cgi-lp-hero-sub{margin-left:0;margin-right:0}
.cgi-lp-hero-leftal .cgi-lp-hero-btns{justify-content:flex-start}
.cgi-lp-hero-leftal .cgi-lp-hero-stats{justify-content:flex-start}
.cgi-lp-hero-leftal .cgi-lp-hero-stat{align-items:flex-start}
.cgi-lp-range-fit .cgi-lp-rsl-slide img,.cgi-lp-range-fit .cgi-lp-rng-media>img{object-fit:contain;background:#fff}
html.cgi-dark .cgi-lp-range-fit .cgi-lp-rsl-slide img,html.cgi-dark .cgi-lp-range-fit .cgi-lp-rng-media>img{background:#171717}
.cgi-wf2 .cgi-wf-left .cgi-wf-fig{margin:3.5rem 0 0!important}.cgi-wf-fig img{width:100%;border-radius:1rem;display:block;max-height:44rem;object-fit:contain}
.cgi-wf-fig figcaption{font-size:.875rem;color:#737373;margin-top:.75rem}
.cgi-wf-cards{margin-top:3rem}
@media(min-width:1088px){.cgi-lp-cards-5{grid-template-columns:repeat(5,1fr)!important}.cgi-lp-cards-5 .cgi-lp-card-t{font-size:1rem}}
.cgi-lp-cards-5 .cgi-lp-card{padding:0 0 1rem}.cgi-lp-cards-5 .cgi-lp-card-t{padding:.875rem 1rem 0;margin:0}
.cgi-lp-cards-5 .cgi-lp-card-media{margin:0!important;border-radius:.75rem .75rem 0 0}
@media(min-width:1088px){.cgi-lp-range-grid3{display:grid!important;grid-template-columns:repeat(3,1fr);gap:2rem;align-items:stretch}}
.cgi-lp-range-grid3 .cgi-lp-rng{padding:0;background:#e5e7eb;border-radius:.75rem;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);display:flex;flex-direction:column}
.cgi-lp-range-grid3 .cgi-lp-rng-body{flex:1}
.cgi-lp-range-grid3 .cgi-lp-rng:hover{background:#e5e7eb}
html.cgi-dark .cgi-lp-range-grid3 .cgi-lp-rng{background:#262626}
.cgi-lp-range-grid3 .cgi-lp-rng-media{border-radius:0}
.cgi-lp-range-grid3 .cgi-lp-rng-body{padding:1.25rem 1.25rem 1.5rem}
.cgi-lp-range-grid3 .cgi-lp-rng-t{font-size:1.125rem;font-style:normal;margin-bottom:.5rem}
.cgi-lp-range-grid3 .cgi-lp-rng-d{font-size:.9375rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cgi-lp-range-grid3 .cgi-lp-rsl-ctrl{padding:0 1rem;min-height:1.5rem;margin-top:-1.75rem;position:relative;z-index:2}
/* checkerboard rows (old static cat-row): copy | gallery, alternating sides */
.cgi-lp-range-rows{display:block}
.cgi-lp-catrow{display:grid;gap:1.5rem;align-items:center;margin-top:3.5rem}
.cgi-lp-catrow:first-child{margin-top:3rem}
@media(min-width:900px){
.cgi-lp-catrow{grid-template-columns:5fr 7fr;gap:3.5rem}
.cgi-lp-catrow.reverse{grid-template-columns:7fr 5fr}
.cgi-lp-catrow.reverse .cgi-lp-catrow-copy{order:2}
.cgi-lp-catrow.reverse .cgi-lp-catrow-stage{order:1}
}
.cgi-lp-catrow-copy .cgi-lp-rng-t{font-size:1.5rem;font-style:normal;margin:.625rem 0 .75rem}
.cgi-lp-catrow-copy .cgi-lp-rng-d{display:block;overflow:visible;-webkit-line-clamp:unset}
.cgi-lp-catrow-stage{position:relative}
.cgi-lp-catrow-rsl{aspect-ratio:16/10;border-radius:1rem;overflow:hidden;background:#f3f4f6}
html.cgi-dark .cgi-lp-catrow-rsl{background:#171717}
.cgi-lp-catrow-rsl .cgi-lp-rsl-track{height:100%;position:relative}
.cgi-lp-catrow-rsl .cgi-lp-rsl-slide{position:absolute;inset:0;aspect-ratio:auto;height:auto}
.cgi-lp-catrow-rsl img,.cgi-lp-catrow-rsl .cgi-lp-rsl-slide img{width:100%;height:100%;object-fit:cover!important;display:block;background:#fff}
html.cgi-dark .cgi-lp-catrow-rsl img,html.cgi-dark .cgi-lp-catrow-rsl .cgi-lp-rsl-slide img{background:#171717}
.cgi-lp-catrow-stage .cgi-lp-rsl-ctrl{position:absolute;left:0;right:0;bottom:.75rem;display:flex;justify-content:center;margin:0;padding:0;z-index:2}
.cgi-lp-catrow-stage .cgi-lp-rsl-arrows{display:none}
.cgi-lp-catrow-stage .cgi-lp-rsl-dots{margin:0 auto}
.cgi-lp-catrow-rsl img.is-fit{object-fit:contain!important;padding:.75rem;box-sizing:border-box}
.cgi-lp-range-grid3 .cgi-lp-rsl-arrows{display:none}
.cgi-lp-range-grid3 .cgi-lp-rsl-dots{margin-left:auto;margin-right:auto}
.cgi-lp-cards-5 .cgi-lp-card-media .spin-360{width:100%;height:100%;position:absolute;inset:0}
.cgi-lp-cards-5 .cgi-lp-card-media .spin-360 canvas{width:100%;height:100%;display:block}
.cgi-lp-card-media{position:relative}
.cgi-lp-card-badge{position:absolute;right:.625rem;bottom:.625rem;width:2.25rem;height:2.25rem;border-radius:9999px;background:rgba(10,10,10,.65);color:#fff;display:flex;align-items:center;justify-content:center;pointer-events:none}
.cgi-lp-card-badge svg{width:1.25rem;height:1.25rem}
.cgi-cta-btnrow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.25rem}
/* the decorative 1024px glow SVG must be clipped by the card; the canonical rule that does this
   is scoped to .entry-content, which landing CTA cards are not inside -> mobile page overflow */
.cgi-cta-card{position:relative;isolation:isolate;overflow:hidden}
.cgi-cta-card-2col .cgi-cta-btnrow{justify-content:flex-start}
.cgi-cta-eyebrow.cgi-cta-eyebrow{color:#7dd3fc!important;margin-bottom:.75rem}
.cgi-cta-contact{color:rgba(255,255,255,.85)!important;text-decoration:none;font-size:1rem}
.cgi-cta-contact:hover{color:#7dd3fc!important;text-decoration:underline}
.cgi-lp-hero-btn{display:inline-block;cursor:pointer;border:0;border-radius:9999px;background:#0ea5e9;color:#fff;font-weight:500;font-size:1.125rem;padding:1.25rem 2rem;text-decoration:none;transition:background .2s}/* prod: 20px/32px pad, weight 500 (h 68) */
.cgi-lp-hero-btn:hover{background:#0284c7}
.cgi-lp-hero-btn-ghost{background:transparent;color:#fff;border:0}
.cgi-lp-hero-btn-ghost:hover,.cgi-lp-hero-btn-ghost:focus{background:#262626;color:#fff!important}/* prod: solid dark #262626 fill, text stays white (!important beats the entry-content a:hover blue) */
/* light 2-col hero (reference installation page) */
.cgi-lp-herosplit{padding-top:7rem!important}
@media(min-width:1024px){.cgi-lp-herosplit{padding-top:9rem!important}}
.cgi-lp-hs-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center}
@media(min-width:1024px){.cgi-lp-hs-grid{grid-template-columns:1fr 1fr;gap:5rem}}
.cgi-lp-hs-h{font-family:var(--cgi-font-display,sans-serif);font-weight:800;font-size:clamp(2.25rem,1.4rem + 2.6vw,3.75rem);line-height:1.1;margin:0;color:#0f172a}
.cgi-lp-hs-h mark{background:transparent;color:var(--cgi-accent,#0ea5e9)}
html.cgi-dark .cgi-lp-hs-h{color:#fafafa}
.cgi-lp-hs-sub{font-size:1.125rem;line-height:1.6;color:#374151;margin:1.5rem 0 0;max-width:38rem}
html.cgi-dark .cgi-lp-hs-sub{color:#d4d4d4}
.cgi-lp-hs-btns{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem}
.cgi-lp-hs-btn2{background:transparent;color:#0a0a0a;border:1px solid #d1d5db}
.cgi-lp-hs-btn2:hover{background:#f3f4f6}
html.cgi-dark .cgi-lp-hs-btn2{color:#fff;border-color:#374151}
html.cgi-dark .cgi-lp-hs-btn2:hover{background:#262626;color:#fff}/* dark hover: was inheriting #f3f4f6 → white-on-near-white */
.cgi-lp-hs-media{border-radius:1rem;overflow:hidden;background:#e5e7eb;aspect-ratio:4/3}
html.cgi-dark .cgi-lp-hs-media{background:#262626}
.cgi-lp-hs-media :is(img,video){width:100%;height:100%;object-fit:cover;display:block}
/* image-top cards (reference "Installation Animation for Every Product Type") */
.cgi-lp-card-media{margin:-2rem -2rem 1.5rem;border-radius:.75rem .75rem 0 0;overflow:hidden;aspect-ratio:16/10;background:#d1d5db}
.cgi-lp-card-media :is(img,video){width:100%;height:100%;object-fit:cover;display:block}
.cgi-lp-card-img{overflow:hidden}
/* shared head */
.cgi-lp-head{margin:0 0 0}
.cgi-lp-head-center{text-align:center}
.cgi-lp-head-center .cgi-sec-desc{margin-left:auto!important;margin-right:auto;text-align:center}
.cgi-sec-desc a,.cgi-sec-desc-link{color:#0ea5e9;text-decoration:none}
.cgi-sec-desc a:hover,.cgi-sec-desc-link:hover{text-decoration:underline}
.cgi-lp-head .cgi-sec-h{font-family:var(--cgi-font-display,sans-serif);font-weight:700;font-size:clamp(1.875rem,1rem + 2.5vw,3rem);letter-spacing:-.02em;line-height:1.1;margin:0}
.cgi-lp-head .cgi-sec-h mark{background:transparent;color:var(--cgi-accent,#0ea5e9)}
.cgi-lp-head h2.cgi-eyebrow{font-family:var(--cgi-font-body)!important;font-size:.875rem!important;font-weight:600!important;letter-spacing:.1em!important;margin:0!important}
.cgi-eyebrow{font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;color:#6b7280;margin:0 0 .75rem;font-weight:600}
.cgi-lp-head .cgi-sec-desc{max-width:48rem;margin:2rem 0 0;font-size:1.125rem;line-height:1.625;color:#374151}
html.cgi-dark .cgi-lp-head .cgi-sec-desc{color:#d4d4d4}
@media(min-width:1280px){.cgi-lp-head .cgi-sec-desc{font-size:1.25rem;margin-top:2.5rem}}
/* stats */
/* stats use the canonical .cgi-stats/.cgi-stat-v/.cgi-stat-l (loaded via the CGI-single CSS block) */
/* heading sizes (reference Heading headingSize): lg = .cgi-sec-h (canonical); md / sm below */
.cgi-lp-head .cgi-lp-h-md{font-family:var(--cgi-font-display,sans-serif);font-weight:600;font-size:clamp(1.5rem,1rem + 1.6vw,2.25rem);line-height:1.15;letter-spacing:-.01em;margin:0}
.cgi-lp-head .cgi-lp-h-md mark{background:transparent;color:var(--cgi-accent,#0ea5e9)}
.cgi-lp-head .cgi-lp-h-sm{font-size:.875rem;text-transform:uppercase;letter-spacing:.12em;color:#6b7280;font-weight:600;margin:0}
/* brands strip heading = small uppercase tracking-widest muted (reference SectionBrands sm) */
.cgi-lp-brands-h{font-family:var(--cgi-font-body,sans-serif)!important;font-size:.875rem;text-transform:uppercase;letter-spacing:.12em;color:#6b7280;font-weight:600;margin:0 0 2.5rem}/* h2 now — keep the small-label look (global heading rule would set Amulya) */
html.cgi-dark .cgi-lp-brands-h{color:#a3a3a3}
.cgi-lp-brands-h-center{text-align:center}
.cgi-lp-brands-h-left{text-align:left}
/* workflow stat badges (reference SectionWorkflow left column, hidden on mobile) */
/* reference SectionWorkflow stat badges: p-4 bg-gray-500/10 rounded-2xl, value + label (gray-600) */
.cgi-wf-stats{display:none}
@media(min-width:768px){.cgi-wf-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:4rem}}/* prod: ~80px below the Schedule-a-demo button (was 2.5rem/56px) */
@media(min-width:1024px){.cgi-wf-stats{gap:2rem}}
.cgi-wf-stat{background:rgba(107,114,128,.1);border-radius:1rem;padding:1rem;display:flex;flex-direction:column;gap:.25rem}
@media(min-width:768px){.cgi-wf-stats-n{grid-template-columns:repeat(3,1fr);gap:1rem}}
/* icon step circle: same scroll-fill mechanic as the numbered ones — the 2px ring between the
   outer track and the inner disc is where the rising sky fill shows, so NO border here (a border
   covered the ring and the circle looked static). */
.cgi-wf-num-ico{display:flex;align-items:center;justify-content:center;background:#d1d5db;border:0;color:#0ea5e9}
.cgi-wf-num-ico svg{width:26px;height:26px}
.cgi-wf-num-icobox{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;transition:color .15s}
.cgi-wf-num-ico .cgi-wf-num-inner{background:#fff}
.cgi-wf-num-ico.full{color:#fff}
html.cgi-dark .cgi-wf-num-ico{background:#404040;border:0}
html.cgi-dark .cgi-wf-num-ico .cgi-wf-num-inner{background:#262626}
.cgi-wf-num-ico.on{color:#fff}
.cgi-wf-stats-n .cgi-wf-stat{padding:1rem .875rem}
.cgi-wf-stats-n .cgi-wf-stat-v{font-size:clamp(2rem,3.2vw,3rem)}
.cgi-wf-stats-n .cgi-wf-stat-l{font-size:.875rem}
.cgi-wf-stat-v{font-family:var(--cgi-font-display,sans-serif);font-weight:100;font-size:clamp(2.75rem,6.7vw,6rem);line-height:1;letter-spacing:-.05em;color:#404040}/* prod: 96px THIN (weight 100), tight tracking, neutral-700 (was 44px/700/#111827) */
html.cgi-dark .cgi-wf-stat-v{color:#f3f4f6}
.cgi-wf-stat-l{color:#525252;font-size:1rem;line-height:1.5;letter-spacing:.4px}/* prod neutral-600 + .4px tracking */
html.cgi-dark .cgi-wf-stat-l{color:#a3a3a3}
/* landing section gray = prod #f5f5f5 (canonical singles use #f3f4f6) */
/* installation page (10277): prod keeps the bespoke scale — h1 72/600, section h2 48/700, card titles 16/700 */
body.page-id-10277 :is(.cgi-lp-hero h1,h1.cgi-lp-hs-h){font-size:4.5rem!important;font-weight:600!important}
body.page-id-10277 .cgi-lp-h-md{font-size:2.25rem!important;font-weight:700!important}
@media(min-width:1280px){body.page-id-10277 .cgi-lp-h-md{font-size:3rem!important}}
body.page-id-10277 .cgi-lp-card-t{font-size:1rem;line-height:1.5;font-weight:700}
/* dark full-screen industry hero */
.cgi-ind-hero{position:relative;min-height:100vh;display:flex;align-items:center;padding-top:5rem;background:#0a0a0a;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.cgi-ind-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cgi-ind-hero-ol{position:absolute;inset:0;background:rgba(0,0,0,.4)}
.cgi-ind-hero-in{position:relative;width:100%;padding:0 1rem 2rem;text-align:center;color:#fff}
.cgi-ind-hero-in h1{font-family:var(--cgi-font-display,sans-serif);font-weight:900;color:#fff;font-size:3rem;line-height:1;margin:0}
@media(min-width:640px){.cgi-ind-hero-in h1{font-size:3.75rem}}
@media(min-width:1280px){.cgi-ind-hero-in h1{font-size:4.5rem}}
@media(min-width:1536px){.cgi-ind-hero-in h1{font-size:6rem}}
.cgi-ind-hero-sub{font-size:1.125rem;font-weight:300;margin:1.5rem auto 0;max-width:56rem}
@media(min-width:640px){.cgi-ind-hero-sub{font-size:1.25rem}}
@media(min-width:1280px){.cgi-ind-hero-sub{font-size:1.5rem}}
.cgi-ind-hero-cta{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;margin-top:6rem}
@media(min-width:640px){.cgi-ind-hero-cta{flex-direction:row}}
.cgi-ind-hero-btn{background:#0ea5e9;color:#fff;border:0;border-radius:9999px;padding:1rem 1.5rem;font-size:1.125rem;font-weight:500;cursor:pointer}
.cgi-ind-hero-btn:hover{background:#0284c7}
.cgi-ind-hero-ghost{color:#fff;border-radius:9999px;padding:1rem 1.5rem;font-size:1.125rem;font-weight:500;text-decoration:none}
.cgi-ind-hero-ghost:hover{background:#262626}
/* SectionTextWithMedia (industry): prose left + image right */
/* reference industry pages: <main> carries letter-spacing .4px (taller text wrap everywhere) */
body.single-industry_service .cgi-csec,body.single-industry_service .cgi-ind-hero{letter-spacing:.4px}
.cgi-ind-hero-ghost:hover{color:#fff!important}
.cgi-lp-tm{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:stretch}
@media(min-width:1024px){.cgi-lp-tm{grid-template-columns:1fr 1fr;gap:2rem}}
/* reference: media column fills the text-column height (h-full object-cover, rounded-xl, gray border) */
/* reference: media column sits LEFT of the text on industry text_media */
.cgi-lp-tm-media{order:-1;min-height:100%}
.cgi-lp-tm-media img{width:100%;height:100%;object-fit:cover;border-radius:.75rem;border:1px solid #e5e7eb;display:block}
html.cgi-dark .cgi-lp-tm-media img{border-color:#262626}
.cgi-lp-tm-text p{margin:1.25em 0}
.cgi-lp-tm-text>div>:first-child,.cgi-lp-tm-text>:first-child{margin-top:0}
.cgi-lp-tm-text .text-lg{font-size:1.125rem;line-height:1.5556}
.cgi-lp-tm-text .text-sm{font-size:.875rem;line-height:1.4286}
.cgi-lp-tm-text h2{line-height:2.5rem!important;letter-spacing:inherit!important;margin:0 0 1em!important}
.cgi-lp-tm-text .uppercase{text-transform:uppercase}
.cgi-lp-tm-text .tracking-widest{letter-spacing:.1em}
.cgi-lp-tm-text h2{font-family:var(--cgi-font-display,sans-serif)!important;font-weight:600!important;font-size:1.5rem!important;margin:0 0 1.5rem!important}
@media(min-width:640px){.cgi-lp-tm-text h2{font-size:1.875rem!important}}
@media(min-width:1280px){.cgi-lp-tm-text h2{font-size:2.25rem!important}}
.cgi-lp-tm-text .font-display{font-family:var(--cgi-font-display,sans-serif)}
.cgi-lp-tm-text .italic{font-style:italic}
.cgi-lp-tm-text .font-bold{font-weight:700}
.cgi-lp-tm-text .text-2xl{font-size:1.5rem;line-height:2rem}
.cgi-lp-tm-media img{width:100%;border-radius:1rem;display:block;object-fit:cover}
/* prod text-with-media prose lists: gray-300 disc markers + 9px row rhythm */
.cgi-lp-tm-text ul{list-style:disc;padding-left:1.25rem}
.cgi-lp-tm-text ul li{margin:9px 0}
.cgi-lp-tm-text ul li::marker{color:#d1d5db}
html.cgi-dark .cgi-lp-tm-text{color:#fff}
html.cgi-dark .cgi-lp-tm-text :is(p,li){color:#fff}/* the global html.cgi-dark p rule targets the element directly, so inheritance alone loses */
/* apex-style scheduler card stays WHITE in dark on ALL captured pages (prod is light-only there) —
   pin the card copy dark like the home rules do (automotive/toys/healthcare ship their own .sched-card) */
html.cgi-dark body.cgi-iap-page .sched-card :is(h1,h2,h3,h4,h5,h6){color:#111111!important}
html.cgi-dark body.cgi-iap-page .sched-card label,html.cgi-dark body.cgi-iap-page .sched-card p:not(.sched-err){color:#374151!important}
html.cgi-dark body.cgi-iap-page .sched-card .sched-err{color:#ef4444!important}
html.cgi-dark .cgi-lp-tm-text ul li::marker{color:#4b5563}
/* SectionServiceCards (industry): stacked wide media cards */
.cgi-lp-svcc{display:flex;flex-direction:column;gap:2rem;margin-top:2rem}
@media(min-width:640px){.cgi-lp-svcc{gap:3rem}}
.cgi-lp-svcc-card{background:#f3f4f6;border-radius:1.5rem;overflow:hidden}
@media(min-width:640px){.cgi-lp-svcc-card{background:transparent;padding:.75rem;transition:background .3s}.cgi-lp-svcc-card:hover{background:#f3f4f6}}
.cgi-lp-svcc-media{aspect-ratio:16/9}
.cgi-lp-svcc-media img{width:100%;height:100%;object-fit:cover;display:block;border-radius:1rem}
.cgi-lp-svcc-body{padding:1.5rem 1.5rem 2rem;display:flex;flex-direction:column;align-items:flex-start}
/* reference card body rhythm: eyebrow flush, h3 mb-4 only, desc no bottom margin */
.cgi-lp-svcc-body .cgi-eyebrow{margin:0!important}
.cgi-lp-svcc-body h3.cgi-lp-svcc-t{margin:0 0 1rem!important}
.cgi-lp-svcc-body .cgi-lp-svcc-d{margin:0!important}
.cgi-lp-svcc-t{font-family:var(--cgi-font-display,sans-serif);font-style:italic;font-weight:700;font-size:1.5rem;line-height:2rem;margin:0 0 1rem}
.cgi-lp-svcc-d{font-size:1.125rem;line-height:1.5556;max-width:65ch;margin:0}
.cgi-lp-svcc-link{display:inline-flex;align-items:center;gap:.75rem;margin-top:2rem;border:0!important;box-shadow:inset 0 0 0 1px #0a0a0a!important;background:transparent!important;color:#0a0a0a!important;border-radius:6px;padding:.75rem 1rem;font-weight:500;font-size:1rem;line-height:1.5;text-decoration:none!important}
.cgi-lp-svcc-link:hover,.cgi-lp-svcc-link:focus,.cgi-lp-svcc-link:active{background:transparent!important;color:#0a0a0a!important;box-shadow:inset 0 0 0 1px #0a0a0a!important}
html.cgi-dark .cgi-lp-svcc-link,html.cgi-dark .cgi-lp-svcc-link:hover{color:#e5e5e5!important;box-shadow:inset 0 0 0 1px #e5e5e5!important;background:transparent!important}
.cgi-lp-svcc-arr{flex:0 0 auto}
.cgi-lp-svcc-vid{position:relative}
.cgi-lp-svcc-vid iframe{width:100%;height:100%;border:0;border-radius:1rem;aspect-ratio:16/9}
.cgi-lp-svcc-model .cgi-ar-card,.cgi-lp-svcc-model .cgi-model-viewer{margin:0!important}
.cgi-lp-svcc-media.cgi-lp-rsl{aspect-ratio:16/9;border-radius:1rem;overflow:hidden}
.cgi-lp-svcc .cgi-lp-rsl-nav{display:none}
.cgi-lp-svcc-slider{overflow:visible}
.cgi-svcsl{border-radius:1rem;overflow:hidden;aspect-ratio:16/9;cursor:grab;user-select:none;border:1px solid #e5e5e5}
.cgi-svcsl.dragging{cursor:grabbing}
.cgi-svcsl-track{display:flex;height:100%;transition:transform .45s ease;will-change:transform}
.cgi-svcsl-slide{flex:0 0 100%;height:100%}
.cgi-svcsl-slide img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.cgi-svcsl-ctrl{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;justify-content:space-between}
.cgi-svcsl-arrows{display:inline-flex;gap:.75rem}
.cgi-svcsl-prev,.cgi-svcsl-next{width:3rem;height:3rem;flex-shrink:0;padding:0!important;border-radius:9999px;border:0;background:#171717!important;color:#fff!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.cgi-svcsl-prev svg,.cgi-svcsl-next svg{width:1.5rem!important;height:1.5rem!important;max-width:none;flex-shrink:0}
.cgi-svcsl-prev:hover,.cgi-svcsl-next:hover{background:#262626!important}
.cgi-svcsl-dots{display:inline-flex;gap:0;margin-left:auto}
.cgi-svcsl-dot{width:1.875rem;height:1.875rem;border:0;background:transparent!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.cgi-svcsl-dot i{width:.875rem;height:.875rem;border-radius:9999px;border:2px solid #d4d4d4;transition:all .2s;display:block}
.cgi-svcsl-dot.on i{border-color:#171717;background:#171717}
html.cgi-dark .cgi-svcsl{border-color:#404040}
html.cgi-dark .cgi-svcsl-prev,html.cgi-dark .cgi-svcsl-next{background:#e5e5e5!important;color:#171717!important}
html.cgi-dark .cgi-svcsl-dot i{border-color:#525252}
html.cgi-dark .cgi-svcsl-dot.on i{border-color:#e5e5e5;background:#e5e5e5}
.cgi-lp-svcc-media .cgi-srlabel{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cgi-lp-svcc-spin .cgi-spin{margin:0!important}
html.cgi-dark .cgi-lp-svcc-card{background:#171717}
html.cgi-dark .cgi-lp-svcc-card:hover{background:#262626}
.cgi-lp-body .cgi-csec-gray{background:#f5f5f5}
html.cgi-dark .cgi-lp-body .cgi-csec-gray{background:#171717}
/* cards (icon grid) */
.cgi-lp-prose{max-width:48rem;margin:1.75rem auto 0;text-align:center;line-height:1.7;color:#374151;font-size:1.125rem}
.cgi-lp-prose p{margin:0 0 1rem}
html.cgi-dark .cgi-lp-prose{color:#a3a3a3}
.cgi-lp-cards{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:4rem}
/* prod SectionCards (current build) = grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 */
@media(min-width:640px){.cgi-lp-cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.cgi-lp-cards{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.cgi-lp-cards.cgi-lp-cards-2{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.cgi-lp-cards.cgi-lp-cards-4{grid-template-columns:repeat(4,1fr)}}
.cgi-lp-headrow{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem}
.cgi-lp-headrow .cgi-lp-head{margin-bottom:0}
.cgi-lp-headbtn{flex-shrink:0;background:#0ea5e9;color:#fff!important;padding:.625rem 1.25rem;border-radius:.75rem;font-weight:600;font-size:.875rem;text-decoration:none!important;transition:background .15s}
.cgi-lp-headbtn:hover{background:#0284c7}
.cgi-lp-brands-note{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:2.5rem 0 0;font-size:.9375rem;color:#737373}
.cgi-lp-brands-note svg{width:16px;height:16px;flex:none;color:#0ea5e9}
.cgi-lp-rng-label{display:block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#0284c7;margin-bottom:.5rem}
html.cgi-dark .cgi-lp-rng-label{color:#38bdf8}
/* landing links: no underline at rest, underline on hover/focus (site-wide convention) */
.cgi-lp-card-d a,.cgi-agc-link,.cgi-lp-headbtn,.cgi-mag-explore,.cgi-lp-rng-link,.cgi-cta-btn,.cgi-roomset-cta,
.cgi-svc-link,.cgi-lp-hero-crumbs a,.hero-bleed__breadcrumb a,.cgi-hctr .cgi-roomset-cta{text-decoration:none}
.cgi-lp-card-d a:hover,.cgi-lp-card-d a:focus,
.cgi-agc-link:hover,.cgi-agc-link:focus,
.cgi-mag-explore:hover,
.cgi-lp-rng-link:hover,.cgi-lp-rng-link:focus,
.cgi-roomset-cta:hover,.cgi-roomset-cta:focus,
.hero-bleed__breadcrumb a:hover,.hero-bleed__breadcrumb a:focus,
.cgi-lp-hero-crumbs a:hover,.cgi-lp-hero-crumbs a:focus,
.cgi-lp-brands-note a:hover,.cgi-wf-desc a:hover,.cgi-sec-desc a:hover{text-decoration:underline!important}
html.cgi-dark .cgi-lp-brands-note{color:#9ca3af}
.cgi-lp-card-spec{display:block;margin-top:.75rem;font-size:.8125rem;color:#737373;letter-spacing:.02em}
html.cgi-dark .cgi-lp-card-spec{color:#9ca3af}
.cgi-lp-card-d a{color:#0284c7;text-decoration:none}html.cgi-dark .cgi-lp-card-d a{color:#38bdf8}
.cgi-lp-card{background:#e5e7eb;border-radius:.75rem;padding:2rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.06)}.cgi-lp-card:has(.cgi-lp-card-link){display:flex;flex-direction:column;position:relative;transition:transform .15s,box-shadow .15s}.cgi-lp-card:has(.cgi-lp-card-link):hover{transform:translateY(-3px);box-shadow:0 12px 24px -8px rgba(0,0,0,.18)}.cgi-lp-card-link{margin-top:auto;padding-top:1.25rem;font-weight:600;color:#0284c7;text-decoration:none;position:relative;z-index:1;align-self:flex-start}.cgi-lp-card-link:hover{text-decoration:underline}html.cgi-dark .cgi-lp-card-link{color:#38bdf8}.cgi-lp-card-cover{position:absolute;inset:0;z-index:0;border-radius:.75rem}
html.cgi-dark .cgi-lp-card{background:#262626}
.cgi-lp-card-icon{display:block;color:#0ea5e9}/* user preference: sky-blue card icons everywhere (prod shows black) */
html.cgi-dark .cgi-lp-card-icon{color:#38bdf8}
.cgi-lp-card-icon svg{width:48px;height:48px}
.cgi-lp-card-t{font-family:var(--cgi-font-body,'Plus Jakarta Sans',sans-serif)!important;font-weight:500;font-size:1.5rem;line-height:2rem;margin:0 0 .5rem}/* prod: BODY font 24px/500, not display Amulya (!important beats the global heading font rule) */
.cgi-lp-card-d{color:#374151;line-height:1.6;margin:0}
html.cgi-dark .cgi-lp-card-d{color:#d4d4d4}
/* horizontal slider */
.cgi-lp-slider{margin-top:4rem;overflow-x:auto;-webkit-overflow-scrolling:touch}
.cgi-lp-slider-track{display:flex;gap:1rem;padding:.5rem max(1rem,calc((100vw - 1536px)/2 + 2rem)) 1.5rem}
.cgi-lp-slide{flex:0 0 auto}
.cgi-lp-slide-card{width:19rem;background:#e5e7eb;border-radius:.75rem;overflow:hidden;display:flex;flex-direction:column;min-height:30rem}
@media(min-width:1024px){.cgi-lp-slide-card{width:24rem;min-height:34rem}}
html.cgi-dark .cgi-lp-slide-card{background:#262626}
.cgi-lp-slide-img{flex:1 1 auto;min-height:16rem}
.cgi-lp-slide-img img{width:100%;height:100%;object-fit:cover;display:block}
.cgi-lp-slide-body{padding:1.25rem 1.5rem 1.75rem}
.cgi-lp-slide-t{font-family:var(--cgi-font-display,sans-serif);font-weight:700;font-size:1.125rem;margin:0}
.cgi-lp-slide-d{color:#374151;margin:.5rem 0 0;font-size:.95rem;line-height:1.55}
html.cgi-dark .cgi-lp-slide-d{color:#d4d4d4}
/* service range (stacked 2-col cards) */
.cgi-lp-range{display:flex;flex-direction:column;gap:2rem;margin-top:3rem}
.cgi-lp-range-card{display:flex;flex-direction:column;gap:1.5rem;background:#e5e7eb;border-radius:1rem;overflow:hidden}
@media(min-width:768px){.cgi-lp-range-card{flex-direction:row;align-items:stretch;gap:0}}
html.cgi-dark .cgi-lp-range-card{background:#262626}
.cgi-lp-range-media{flex:0 0 auto;background:#d1d5db}
@media(min-width:768px){.cgi-lp-range-media{flex:0 0 45%;max-width:45%}}
.cgi-lp-range-media img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:16/9}
@media(min-width:768px){.cgi-lp-range-media img{aspect-ratio:auto;min-height:100%}}
.cgi-lp-range-body{padding:1.75rem 2rem 2rem;display:flex;flex-direction:column;justify-content:center}
.cgi-lp-range-t{font-family:var(--cgi-font-display,sans-serif);font-weight:700;font-style:italic;font-size:1.4rem;margin:0 0 .75rem}
.cgi-lp-range-d{color:#374151;line-height:1.65;margin:0 0 1rem}
html.cgi-dark .cgi-lp-range-d{color:#d4d4d4}
.cgi-lp-range-link{color:#0284c7;font-weight:600;text-decoration:none}
.cgi-lp-range-link:hover{text-decoration:underline}
/* reference CardServiceRendering: media on top (16:9, slider if >1 img) + name/desc/outline btn below */
.cgi-lp-range-rendering{gap:2rem}
@media(min-width:640px){.cgi-lp-range-rendering{gap:3rem}}
.cgi-lp-rng{border-radius:1.5rem;overflow:hidden;transition:background .3s}
@media(min-width:640px){.cgi-lp-rng{padding:.75rem}.cgi-lp-rng:hover{background:#f3f4f6}}
html.cgi-dark .cgi-lp-rng:hover{background:#262626}
.cgi-lp-rng-media{position:relative;border-radius:1rem;overflow:hidden;background:#e5e7eb;aspect-ratio:16/9}
html.cgi-dark .cgi-lp-rng-media{background:#262626}
.cgi-lp-rng-media>img{width:100%;height:100%;object-fit:cover;display:block}
.cgi-lp-rng-body{padding:2rem .25rem .5rem}
@media(min-width:640px){.cgi-lp-rng-body{padding:2rem .25rem .5rem}}/* prod: text ~flush with the image left (only ~4px inset), not indented */
.cgi-lp-rng-t{font-family:var(--cgi-font-display,sans-serif);font-weight:700;font-style:italic;font-size:1.5rem;margin:0 0 1rem}
.cgi-lp-rng-d{font-size:1.125rem;line-height:1.6;color:#374151;margin:0;max-width:65ch}
html.cgi-dark .cgi-lp-rng-d{color:#d4d4d4}
.cgi-lp-rng-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:2rem;border:1px solid #0a0a0a;border-radius:.375rem;padding:.75rem 1rem;text-decoration:none;color:#0a0a0a!important;font-weight:500;font-size:1rem}/* prod: DARK #0a0a0a 1px ring (box-shadow inset), black text, no hover fill (!important: the .entry-content a rule would otherwise paint it sky-blue) */
.cgi-lp-rng-btn:hover{background:transparent;color:#0a0a0a!important;border-color:#0a0a0a}
html.cgi-dark .cgi-lp-rng-btn{border-color:#334155;color:#e5e7eb!important}
html.cgi-dark .cgi-lp-rng-btn:hover{background:transparent;color:#e5e7eb!important;border-color:#475569}
/* per-card image slider (reference BlockSliderCoverImage) */
.cgi-lp-rsl{overflow:hidden}
/* prod: embla FADE — slides stacked in one grid cell, cross-fade on change (not horizontal scroll) */
.cgi-lp-rsl-track{display:grid}
.cgi-lp-rsl-slide{grid-area:1/1;aspect-ratio:16/9;opacity:0;transition:opacity .5s ease;pointer-events:none}
.cgi-lp-rsl-slide.is-on{opacity:1;pointer-events:auto}
.cgi-lp-rsl-slide img{width:100%;height:100%;object-fit:cover;display:block}
/* prod controls row below the image: dark round arrows bottom-left, outline-ring dots bottom-right */
.cgi-lp-rsl-ctrl{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem;min-height:2rem}
@media(max-width:639px){.cgi-lp-rsl-ctrl{justify-content:center}.cgi-lp-rsl-dots{margin-left:0}}/* mobile: arrows hidden, so center the dots (prod) instead of pushing them right */
.cgi-lp-rsl-arrows{display:flex;gap:.75rem}
@media(max-width:639px){.cgi-lp-rsl-arrows{display:none}}
.cgi-lp-rsl-nav{width:3rem;height:3rem;border-radius:999px;border:0;background:#171717!important;color:#fff!important;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:12px;box-shadow:none!important;transition:background .2s}
.cgi-lp-rsl-nav:hover,.cgi-lp-rsl-nav:focus,.cgi-lp-rsl-nav:active{background:#0a0a0a!important;color:#fff!important;box-shadow:none!important}
.cgi-lp-rsl-nav svg{width:24px;height:24px;display:block}
html.cgi-dark .cgi-lp-rsl-nav{background:#e5e5e5!important;color:#171717!important}
html.cgi-dark .cgi-lp-rsl-nav:hover,html.cgi-dark .cgi-lp-rsl-nav:focus,html.cgi-dark .cgi-lp-rsl-nav:active{background:#fff!important;color:#171717!important}
.cgi-lp-rsl-dots{display:flex;align-items:center;gap:0;margin-left:auto}
.cgi-lp-rsl-dot{width:30px;height:30px;padding:8px;border:0;background:transparent!important;box-shadow:none!important;cursor:pointer;display:flex;align-items:center;justify-content:center}
.cgi-lp-rsl-dot:hover,.cgi-lp-rsl-dot:focus,.cgi-lp-rsl-dot:active{background:transparent!important;box-shadow:none!important}
.cgi-lp-rsl-dot>span{width:14px;height:14px;border-radius:999px;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 0 1px rgba(0,0,0,.35);transition:border-color .2s,box-shadow .2s}
.cgi-lp-rsl-dot:hover>span{border-color:#a3a3a3}
.cgi-lp-rsl-dot.is-active>span{border-color:#0ea5e9;background:transparent;box-shadow:0 0 0 1px rgba(0,0,0,.35),0 0 0 3px rgba(14,165,233,.25)}
html.cgi-dark .cgi-lp-rsl-dot>span{border-color:rgba(255,255,255,.85);box-shadow:0 0 0 1px rgba(0,0,0,.5)}
html.cgi-dark .cgi-lp-rsl-dot.is-active>span{border-color:#38bdf8;background:transparent;box-shadow:0 0 0 1px rgba(0,0,0,.45),0 0 0 3px rgba(56,189,248,.25)}
/* price/plain CTA tweaks */
/* CTA cards reuse canonical .cgi-cta-card/.cgi-cta-title/.cgi-cta-sub/.cgi-cta-btn/.cgi-cta-viscol */
.cgi-cta-btnrow{margin-top:2.5rem}
button.cgi-cta-btn{border:0;cursor:pointer;font-family:inherit}
/* recommendations (case studies) grid */
.cgi-lp-recs{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:4rem}
@media(min-width:640px){.cgi-lp-recs{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.cgi-lp-recs{grid-template-columns:repeat(3,1fr)}}
/* reference SectionRecommendations card: bg-gray-200 p-6 rounded-xl shadow-md, square image, bold title */
.cgi-lp-rec{display:block;text-decoration:none;color:#111827;background:#e5e7eb;padding:0;border-radius:.75rem;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.06)}
html.cgi-dark .cgi-lp-rec{background:#262626;color:#f3f4f6}
.cgi-lp-rec-img{aspect-ratio:4/3;border-radius:0;overflow:hidden;background:#d1d5db;margin-bottom:0}/* image runs to the card edge (lighting look, now the default) */
.cgi-lp-rec-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.cgi-lp-rec:hover .cgi-lp-rec-img img{transform:scale(1.04)}
.cgi-lp-rec-t{display:block;font-weight:700;font-size:1rem;line-height:1.35;margin-top:0;padding:1rem 1.25rem 1.25rem;color:#111827}
html.cgi-dark .cgi-lp-rec-t{color:#f3f4f6}
@media(min-width:1280px){.cgi-lp-rec-t{font-size:1.125rem}}
/* workflow */
/* workflow reuses the canonical .cgi-wf2/.cgi-wf/.cgi-wf-num/.cgi-wf-elabel/.cgi-wf-title/.cgi-wf-desc/.cgi-wf-demo CSS */
/* roomsets (case-study cards) */
.cgi-lp-rooms{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:4rem}
@media(min-width:768px){.cgi-lp-rooms{grid-template-columns:repeat(2,1fr)}}
.cgi-lp-room{display:flex;flex-direction:column;border-radius:1rem;overflow:hidden;background:#fff;text-decoration:none;color:inherit;border:1px solid #e5e7eb;transition:transform .2s,box-shadow .2s}
html.cgi-dark .cgi-lp-room{background:#171717;border-color:#262626}
.cgi-lp-room:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px rgba(0,0,0,.2)}
.cgi-lp-room-img{aspect-ratio:16/9;background:#d1d5db}
.cgi-lp-room-img img{width:100%;height:100%;object-fit:cover;display:block}
.cgi-lp-room-body{padding:1.5rem 1.75rem 1.75rem}
.cgi-lp-room-t{font-family:var(--cgi-font-display,sans-serif);font-weight:700;font-size:1.25rem;margin:0 0 .5rem}
.cgi-lp-room-d{color:#374151;line-height:1.6;margin:0 0 1rem}
html.cgi-dark .cgi-lp-room-d{color:#d4d4d4}
/* bespoke 2-col image+headings */
.cgi-lp-2col{display:grid;grid-template-columns:1fr;gap:2rem}
@media(min-width:1024px){.cgi-lp-2col{grid-template-columns:1fr 1fr;gap:4rem;align-items:center}}
.cgi-lp-2col img{width:100%;height:100%;object-fit:cover;border-radius:.75rem;border:1px solid #e5e7eb}
.cgi-lp-2col h2{font-family:var(--cgi-font-display,sans-serif);font-weight:600;font-size:clamp(1.5rem,1rem + 1.6vw,2.25rem);margin:0 0 2rem}
.cgi-lp-2col h3{font-family:var(--cgi-font-display,sans-serif);font-weight:700;font-style:italic;font-size:1.5rem;margin:1.5rem 0 .5rem}
.cgi-lp-2col p{color:#374151;line-height:1.65;margin:0;max-width:65ch}
html.cgi-dark .cgi-lp-2col p{color:#d4d4d4}
.cgi-lp-2col .cgi-lp-2col-lead{font-size:1.125rem;margin-bottom:2rem}
/* prod landing trustpilot strip = neutral-100 #f5f5f5 (home keeps its #f3f4f6 inline) */
body.cgi-lp-body .cgi-tp-section{background-color:#f5f5f5!important}
html.cgi-dark body.cgi-lp-body .cgi-tp-section{background-color:#171717!important}
/* white body under transparent header (hero is dark already) */
body.cgi-lp-body{--color-primary-400:56 189 248;--color-primary-500:14 165 233;--color-primary-950:8 47 73;--color-gray-400:163 163 163;--color-gray-500:115 115 115;--color-gray-950:10 10 10;background:#fff}/* brand var fallback: sections built on tw vars (booking gradient etc.) must work on landings without a captured -tw.css */
html.cgi-dark body.cgi-lp-body{background:#0a0a0a}
body.cgi-lp-body .entry-content>section.cgi-csec:last-child,body.cgi-lp-body .content-container>section.cgi-csec:last-child{margin-bottom:5rem}/* a light section as the LAST block needs air before the footer (dark #demo bands end flush by design) */
body.cgi-lp-body:not(.home) .cgi-csec,body.cgi-lp-body:not(.home) .cgi-bl-faq{padding-top:5rem!important;padding-bottom:5rem!important}/* the tighter 5rem rhythm the lighting landing proved out, now every landing.
   Unscoped on purpose: the base padding lives under :is(.entry-content,.entry-content-wrap), so a trailing
   section printed outside that wrapper (the blog strip after the booking form) got no vertical padding at all. */
body.cgi-lp-lighting .cgi-cta-card{box-shadow:0 12px 28px -14px rgba(0,0,0,.22)!important}/* soften big card shadows that smudged white areas before FAQ/demo */
/* review round: card headings were cramped against their copy */
body.cgi-lp-body:not(.home) .cgi-lp-card-t{margin-bottom:1.25rem!important;line-height:1.25!important}
body.cgi-lp-body:not(.home) .cgi-lp-card-icon{margin-bottom:.75rem!important;display:block}
/* review round: a 4-item recommendation row must not leave an orphan on a 3-col grid */
@media(min-width:1024px){body.cgi-lp-lighting .cgi-lp-recs:has(.cgi-lp-rec:nth-child(4)){grid-template-columns:repeat(4,1fr)}}
body.cgi-lp-body:not(.home) .cgi-lp-recs{margin-top:2.5rem!important}
/* Case-study / article cards: image runs edge to edge, only the title keeps padding.
   4/3 instead of the square also stops a 16:9 case shot losing 44% to the sides. */
/* Focal points for the portrait shots that lose the fixture to a landscape crop.
   Keyed per file because the crop is a property of the photo, not of the section:
   the value is where the lamp sits vertically, so cover keeps it in frame. */
body.cgi-lp-lighting img[src*="outdoor_lamp_3d_rendering_064"]{object-position:50% 88%!important}
body.cgi-lp-lighting img[src*="lighting_render_outdoor_concept_close_up"]{object-position:90% 50%!important}/* pendant sits at the right edge — this crop is horizontal, not vertical */
body.cgi-lp-lighting img[src*="lighting-gold-table-lamp"]{object-position:50% 20%!important}
body.cgi-lp-lighting img[src*="lighting-globe-pendants"]{object-position:50% 25%!important}
body.cgi-lp-lighting #hero-bg{object-position:50% 12%!important}/* the bedside lamp sits high in the frame; centring cropped its shade off */
/* the closing grey article band must meet the footer, not float above a white strip */
body.cgi-lp-body:not(.home) .content-container>section.cgi-csec-gray:last-child{margin-bottom:0!important}
/* review round: keep the post-hero logo wall, make it take less room */
body.cgi-lp-body:not(.home) .cgi-csec-brands{padding-top:3.5rem!important;padding-bottom:3.5rem!important}
body.cgi-lp-body:not(.home) .cgi-csec-brands .cgi-brands-wall{margin-top:1.75rem!important;column-gap:1.75rem!important;row-gap:1rem!important;max-width:60rem!important}
body.cgi-lp-body:not(.home) .cgi-csec-brands .cgi-brands-wall img{width:92px!important}
@media(min-width:1536px){body.cgi-lp-body:not(.home) .cgi-csec-brands .cgi-brands-wall img{width:112px!important}}
body.cgi-lp-lighting .cgi-rv-scroll{scrollbar-width:none!important;-ms-overflow-style:none}body.cgi-lp-lighting .cgi-rv-scroll::-webkit-scrollbar{display:none!important;width:0;height:0}/* the reviews-carousel scrollbar painted as a grey stripe under the cards (kept on other pages: prod design) */
@media(min-width:1024px){.cgi-mag2:has(.cgi-mag-card:nth-child(3)){grid-template-columns:repeat(3,1fr)}}/* 3+ path cards sit in one row on desktop */
body.cgi-lp-lighting .cgi-mag-path .cgi-mag-media{aspect-ratio:16/10!important;overflow:hidden}body.cgi-lp-lighting .cgi-mag-path .cgi-mag-media img{width:100%;height:100%!important;object-fit:cover!important;display:block}/* equal-height card images regardless of source ratio */
body.cgi-lp-lighting .cgi-mag2{align-items:stretch}body.cgi-lp-lighting .cgi-mag-card{height:100%}
body.cgi-lp-body .content-area{margin:0!important;padding:0!important}
/* The captured island is no longer the page wrapper but a couple of blocks inside it, so its
   groups sit as ordinary siblings of the sections and pick up the editor block gap. They are
   pure containers — the sections own the rhythm. */
:is(.entry-content,.content-container)>.wp-block-group.cgi-iap{margin:0!important}

/* ── AI background landing (page 13119) ── */
/* The aspect-ratio diagram shows three framed formats (1:1, 4:5, 9:16); cover cut the outer
   frames off, so it is fitted whole into the card instead. */
.cgi-lp-card-media img[src*="output-social"]{object-fit:contain!important;background:#fff}
/* Captured sections carry raw utility classes, so their headings came out at a different
   line-height than the canonical .cgi-sec-h used by every other landing. */
body.page-id-13119 h2[class*="text-3xl"]{line-height:1.1!important;letter-spacing:.4px}
/* bespoke dark-hero landings: transparent header at top uses white nav text + white logo (prod parity) */
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .header-navigation a,
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .header-menu-container a,
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) nav a,
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) button:not(.cgi-theme-toggle){color:rgba(255,255,255,.9)!important}
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .cgi-theme-toggle{color:rgba(255,255,255,.9)!important}
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .site-branding img{filter:brightness(0) invert(1)}
/* the dropdown/mega-menu panel is WHITE — its links must stay dark even when the top nav is white */
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .header-navigation .cgi-mega-panel a,
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .header-menu-container .cgi-mega-panel a,
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) nav .cgi-mega-panel a,
body.cgi-hero-dark-iap #masthead .cgi-mega-panel a,body.cgi-hero-dark-iap #masthead .cgi-mega-panel .cgi-mega-title,
body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .header-navigation .sub-menu a,
body.cgi-hero-dark-iap #masthead .sub-menu a{color:#171717!important}
/* ...but in dark mode that panel is dark too. Mirror every selector above with a
   html.cgi-dark prefix — a shorter selector loses to the :not()/.header-navigation ones. */
html.cgi-dark body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .header-navigation .cgi-mega-panel a,
html.cgi-dark body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .header-menu-container .cgi-mega-panel a,
html.cgi-dark body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) nav .cgi-mega-panel a,
html.cgi-dark body.cgi-hero-dark-iap #masthead .cgi-mega-panel a,
html.cgi-dark body.cgi-hero-dark-iap #masthead .cgi-mega-panel .cgi-mega-title,
html.cgi-dark body.cgi-hero-dark-iap #masthead:not(.cgi-hdr-fixed) .header-navigation .sub-menu a,
html.cgi-dark body.cgi-hero-dark-iap #masthead.cgi-hdr-overhero .sub-menu a,
html.cgi-dark body.cgi-hero-dark-iap #masthead .sub-menu a{color:#f5f5f5!important}
	