/* Homepage layout, migrated from the static bridge. */
/* This stylesheet is enqueued only on the front page. Astra adjusts the root
   font size at mobile widths; the original homepage and shared shell use a
   16px rem baseline, so retain it without altering other WordPress pages. */
html { font-size: 16px; }
body.iris-home-native {
    margin: 0;
    background: var(--iris-shell-bg);
    color: var(--iris-shell-ink);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}
body.iris-home-native .site-content > .ast-container { width: 100%; max-width: none; padding: 0; }
body.iris-home-native :where(.site-main, .ast-article-single, .entry-content) { margin: 0; padding: 0; }
body.iris-home-native .entry-header { display: none; }
body.iris-home-native .home-shell :is(h1, h2, h3) { color: #eef4f2; }
.home-shell {
            --core: #0a0d0e;
            --deep: #0b0f12;
            --panel: #131a1f;
            --text: #eef4f2;
            --body: #a3afb5;
            --muted: #65727a;
            --line: rgba(238,244,242,.11);
            --laser: #21f223;
            --panel-vi: repeating-linear-gradient(90deg, rgba(238,244,242,.024) 0 1px, transparent 1px 42px), repeating-linear-gradient(0deg, rgba(238,244,242,.018) 0 1px, transparent 1px 42px), radial-gradient(circle at 18% 12%, rgba(33,242,35,.095), transparent 30%), linear-gradient(145deg, rgba(255,255,255,.062), rgba(255,255,255,.018)), var(--panel);
            --panel-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 34px 110px rgba(0,0,0,.28);
            --ease: cubic-bezier(.16,1,.3,1);
            color: var(--text);
            background:
                radial-gradient(circle at 72% 12%, rgba(80,106,128,.16), transparent 30%),
                radial-gradient(circle at 16% 84%, rgba(33,242,35,.035), transparent 28%),
                linear-gradient(135deg, var(--core), var(--deep) 52%, #080c0f);
            overflow: hidden;
        }
        .home-shell * { box-sizing: border-box; }
        .home-shell img,
        .home-shell video { display: block; max-width: 100%; }
        .home-shell .wrap { width: min(1240px, calc(100% - 72px)); margin: 0 auto; }
        .home-shell .hero {
            position: relative;
            min-height: calc(100svh - 72px);
            overflow: hidden;
            isolation: isolate;
            background: var(--core);
        }
        .home-shell .hero-media { position: absolute; inset: 0; z-index: -4; }
        .home-shell .hero-media video { width: 100%; height: 100%; object-fit: cover; filter: saturate(.82) contrast(1.08) brightness(.82); }
        .home-shell .hero::after {
            content: "";
            position: absolute;
            inset: 0;
            z-index: -3;
            background:
                linear-gradient(90deg, rgba(10,13,14,.82), rgba(10,13,14,.5) 38%, rgba(10,13,14,.08)),
                linear-gradient(180deg, transparent 48%, rgba(10,13,14,.76));
        }
        .home-shell .hero::before {
            content: "";
            position: absolute;
            left: -18vw;
            bottom: 9vh;
            z-index: -2;
            width: 104vw;
            height: 30vw;
            background: linear-gradient(90deg, transparent 0%, rgba(33,242,35,.07) 33%, rgba(33,242,35,.34) 52%, rgba(33,242,35,.10) 67%, transparent 100%);
            clip-path: polygon(0 78%, 100% 0, 100% 18%, 0 95%);
            filter: blur(11px);
            opacity: .7;
        }
        .home-shell .watermark {
            position: absolute;
            left: -2vw;
            bottom: 6vh;
            z-index: -1;
            color: rgba(238,244,242,.045);
            font-size: clamp(120px,24vw,380px);
            font-weight: 700;
            line-height: .72;
            letter-spacing: 0;
            white-space: nowrap;
        }
        .home-shell .hero-inner {
            position: relative;
            z-index: 2;
            display: grid;
            grid-template-columns: 9fr 5fr;
            gap: 24px;
            min-height: calc(100svh - 72px);
            align-items: center;
            padding: clamp(46px,6vh,70px) 0 clamp(44px,6vh,72px);
        }
        .home-shell .hero-copy { align-self: end; transform: none; }
        .home-shell .kicker { color: rgba(33,242,35,.92); font-size: 11px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; }
        .home-shell .caption { color: var(--muted); font-size: 12px; font-weight: 400; letter-spacing: .14em; text-transform: uppercase; }
        .home-shell h1,
        .home-shell h2,
        .home-shell h3 { margin: 0; text-wrap: balance; }
        .home-shell h1 { margin-top: 18px; max-width: 860px; color: var(--text); font-size: clamp(42px,5vw,82px); font-weight: 700; line-height: .82; letter-spacing: 0; }
        .home-shell .hero-copy p { max-width: 560px; margin: 22px 0 0; color: rgba(238,244,242,.72); font-size: clamp(15px,1.18vw,18px); line-height: 1.68; }
        .home-shell .home-actions { display: flex; flex-direction: row; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
        .home-shell .home-actions .btn { flex: 0 0 auto; }
        .home-shell .section { position: relative; overflow: hidden; padding: clamp(64px,6.4vw,96px) 0; }
        .home-shell .section::before { content: ""; position: absolute; inset: 0 0 auto; height: 1px; background: linear-gradient(90deg, transparent, rgba(238,244,242,.11), transparent); }
        .home-shell .section-head { display: grid; grid-template-columns: repeat(16,1fr); gap: 24px; align-items: end; margin-bottom: clamp(34px,4.4vw,58px); }
        .home-shell .section-head .title { grid-column: 1 / span 9; }
        .home-shell .section-head .intro { grid-column: 11 / span 4; color: var(--body); font-size: clamp(15px,1.12vw,18px); line-height: 1.8; }
        .home-shell h2 { margin-top: 12px; max-width: 820px; color: var(--text); font-size: clamp(30px,3vw,50px); font-weight: 700; line-height: .96; letter-spacing: 0; }
        .home-shell h3 { color: var(--text); font-size: clamp(24px,2.3vw,38px); font-weight: 700; line-height: 1; letter-spacing: 0; }
        .home-shell .campaign-layout { display: grid; grid-template-columns: repeat(16, 1fr); gap: 18px; align-items: stretch; }
        .home-shell .campaign-image { position: relative; grid-column: 1 / span 9; display: grid; place-items: center; min-height: clamp(520px,42vw,680px); padding: clamp(28px,4vw,58px); border-radius: 12px; overflow: hidden; isolation: isolate; border: 1px solid rgba(238,244,242,.12); background: radial-gradient(circle at 24% 20%, rgba(33,242,35,.12), transparent 30%), radial-gradient(circle at 82% 78%, rgba(8,12,14,.1), transparent 30%), repeating-linear-gradient(90deg, rgba(6,16,8,.045) 0 1px, transparent 1px 42px), repeating-linear-gradient(0deg, rgba(6,16,8,.035) 0 1px, transparent 1px 42px), #f3f6f3; box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 44px 130px rgba(0,0,0,.34); }
        .home-shell .campaign-image::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(255,255,255,.12), transparent 30%, rgba(6,16,8,.08)), radial-gradient(circle at 24% 22%, rgba(33,242,35,.12), transparent 32%); pointer-events: none; }
        .home-shell .campaign-image::after { content: "Product view"; position: absolute; left: 22px; bottom: 20px; z-index: 3; color: rgba(6,16,8,.56); font-size: 10px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; pointer-events: none; }
        .home-shell .campaign-image img,
        .home-shell .campaign-image video { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; object-fit: contain; object-position: center; padding: clamp(22px,4.2vw,70px); filter: saturate(.92) contrast(1.06) drop-shadow(0 34px 44px rgba(6,16,8,.18)); transition: opacity .42s var(--ease), transform .56s var(--ease), filter .42s var(--ease); }
        .home-shell .campaign-image img { mix-blend-mode: multiply; }
        .home-shell .campaign-image .product-main { object-fit: cover; padding: 0; }
        .home-shell .campaign-image .product-hover { z-index: 3; object-fit: cover; padding: 0; background: #f3f6f3; filter: saturate(.96) contrast(1.04); opacity: 0; transform: scale(1.01); }
        .home-shell .campaign-image:hover .product-main,
        .home-shell .campaign-image:focus .product-main { opacity: 0; transform: scale(.99); }
        .home-shell .campaign-image:hover .product-hover,
        .home-shell .campaign-image:focus .product-hover { opacity: 1; transform: scale(1); }
        .home-shell .campaign-copy { grid-column: 10 / span 7; padding: clamp(22px,2.6vw,34px); border: 1px solid rgba(238,244,242,.11); border-radius: 12px; background: var(--panel-vi); box-shadow: var(--panel-shadow); }
        .home-shell .campaign-copy h2 { max-width: 520px; margin-top: 12px; font-size: clamp(24px,2.15vw,34px); line-height: .98; letter-spacing: -.046em; }
        .home-shell .campaign-copy p { color: var(--body); margin: 14px 0 0; font-size: 14px; line-height: 1.58; }
        .home-shell .campaign-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 22px; }
        .home-shell .campaign-stat { min-height: 74px; padding: 13px 14px; border: 1px solid rgba(238,244,242,.11); background: rgba(10,13,14,.64); }
        .home-shell .campaign-stat.price { grid-column: 1 / -1; min-height: 92px; background: radial-gradient(circle at 10% 20%, rgba(33,242,35,.18), transparent 34%), rgba(10,13,14,.7); }
        .home-shell .campaign-stat b { display: block; color: rgba(238,244,242,.9); font-size: 11px; line-height: 1; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
        .home-shell .campaign-stat.price b { color: rgba(33,242,35,.94); font-size: clamp(30px,3vw,46px); line-height: .9; letter-spacing: -.055em; text-transform: none; }
        .home-shell .campaign-stat span { display: block; margin-top: 9px; color: var(--body); font-size: 13px; line-height: 1.45; }
        .home-shell .campaign-tax-note { margin-top: 10px; color: rgba(238,244,242,.46); font-size: 12px; line-height: 1.45; }
        .home-shell .campaign-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
        .home-shell .safety-split { display: grid; grid-template-columns: repeat(16,1fr); gap: 22px; align-items: center; min-height: clamp(520px,48vw,660px); }
        .home-shell .safety-split-media { position: relative; grid-column: 1 / span 9; min-height: clamp(420px,42vw,620px); overflow: hidden; border-radius: 12px; background: var(--panel); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 60px 170px rgba(0,0,0,.42); }
        .home-shell .safety-split-media video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(.9) contrast(1.08) brightness(.82); transform: scale(1.02); }
        .home-shell .safety-split-media::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(10,13,14,.02), rgba(10,13,14,.76)), radial-gradient(circle at 62% 70%, rgba(33,242,35,.16), transparent 28%); pointer-events: none; }
        .home-shell .safety-split-media::after { content: ""; position: absolute; z-index: 2; left: 24px; right: 24px; bottom: 24px; height: 1px; background: linear-gradient(90deg, rgba(33,242,35,.8), transparent 62%); box-shadow: 0 0 18px rgba(33,242,35,.18); pointer-events: none; }
        .home-shell .safety-split-copy { grid-column: 11 / span 5; display: grid; gap: clamp(24px,3vw,42px); }
        .home-shell .safety-split-copy h2 { max-width: 520px; font-size: clamp(30px,3vw,50px); line-height: .93; letter-spacing: 0; }
        .home-shell .safety-split-copy p { max-width: 430px; margin: 18px 0 0; color: rgba(238,244,242,.7); font-size: 14px; line-height: 1.7; }
        .home-shell .safety-cues { display: grid; gap: 10px; }
        .home-shell .safety-cue { display: grid; grid-template-columns: 70px 1fr; gap: 18px; align-items: center; padding: 18px; border: 1px solid rgba(238,244,242,.1); border-radius: 12px; background: var(--panel-vi); box-shadow: inset 0 1px 0 rgba(255,255,255,.045); }
        .home-shell .safety-cue-icon { position: relative; width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(33,242,35,.26); border-radius: 16px; background: radial-gradient(circle at 28% 22%, rgba(238,244,242,.55), transparent 18%), radial-gradient(circle at 50% 56%, rgba(33,242,35,.24), transparent 60%), rgba(33,242,35,.08); box-shadow: 0 0 0 1px rgba(33,242,35,.07), 0 18px 46px rgba(33,242,35,.13); }
        .home-shell .safety-cue-icon::after { content: ""; position: absolute; inset: 11px; border-radius: 50%; border: 1px solid rgba(33,242,35,.13); opacity: .56; }
        .home-shell .safety-cue-icon svg { position: relative; z-index: 1; width: 34px; height: 34px; fill: none; stroke: rgba(33,242,35,.96); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 8px rgba(33,242,35,.22)); }
        .home-shell .safety-cue span { color: rgba(238,244,242,.78); font-size: clamp(17px,1.45vw,23px); font-weight: 700; letter-spacing: 0; }
        .home-shell .hud-panel { display: grid; grid-template-columns: 1.05fr .95fr; gap: 22px; align-items: stretch; }
        .home-shell .hud-copy p { color: var(--body); max-width: 500px; margin: 18px 0 0; font-size: 14px; line-height: 1.65; }
        .home-shell .hud-visual { min-height: 430px; border-radius: 12px; overflow: hidden; background: var(--panel); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 60px 170px rgba(0,0,0,.38); }
        .home-shell .hud-visual img,
        .home-shell .hud-visual video { width: 100%; height: 100%; object-fit: cover; filter: saturate(.88) contrast(1.06) brightness(.86); }
        .home-shell .hud-row { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; margin-top: 32px; }
        .home-shell .hud { min-height: 136px; padding: 16px; border: 1px solid rgba(238,244,242,.1); background: var(--panel-vi); box-shadow: inset 0 1px 0 rgba(255,255,255,.045); }
        .home-shell .hud::before { content: ""; display: block; width: 28px; height: 2px; margin-bottom: 16px; background: rgba(33,242,35,.88); box-shadow: 0 0 18px rgba(33,242,35,.28); }
        .home-shell .hud b { color: rgba(33,242,35,.9); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
        .home-shell .hud span { display: block; margin-top: 14px; color: var(--body); font-size: 13px; line-height: 1.45; }
        .home-shell .comparison-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; align-items: stretch; }
        .home-shell .comparison-card { min-height: 318px; padding: clamp(22px,2.35vw,32px); position: relative; overflow: hidden; border: 1px solid rgba(238,244,242,.1); border-radius: 12px; background: repeating-linear-gradient(90deg, rgba(238,244,242,.035) 0 1px, transparent 1px 38px), repeating-linear-gradient(0deg, rgba(238,244,242,.026) 0 1px, transparent 1px 38px), radial-gradient(circle at 18% 15%, rgba(33,242,35,.15), transparent 34%), linear-gradient(145deg, rgba(255,255,255,.062), rgba(255,255,255,.018)), var(--panel); box-shadow: inset 0 1px 0 rgba(255,255,255,.055), 0 32px 100px rgba(0,0,0,.24); }
        .home-shell .comparison-card::before { content: ""; position: absolute; left: 24px; right: 24px; bottom: 0; height: 3px; background: linear-gradient(90deg, rgba(33,242,35,.92), rgba(33,242,35,.22), transparent); opacity: .86; }
        .home-shell .comparison-card::after { content: attr(data-mark); position: absolute; right: 22px; top: 18px; color: rgba(238,244,242,.035); font-size: clamp(52px,5vw,88px); font-weight: 900; line-height: .8; letter-spacing: -.08em; text-transform: uppercase; pointer-events: none; }
        .home-shell .comparison-card:nth-child(2) { margin-top: 26px; }
        .home-shell .comparison-card:nth-child(3) { margin-top: 52px; }
        .home-shell .comparison-card.featured { background: repeating-linear-gradient(90deg, rgba(238,244,242,.035) 0 1px, transparent 1px 38px), repeating-linear-gradient(0deg, rgba(238,244,242,.026) 0 1px, transparent 1px 38px), radial-gradient(circle at 20% 8%, rgba(33,242,35,.22), transparent 34%), linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.02)), var(--panel); }
        .home-shell .comparison-icon { position: relative; z-index: 1; width: 70px; height: 70px; display: grid; place-items: center; margin-bottom: 30px; border: 1px solid rgba(33,242,35,.46); border-radius: 18px; background: radial-gradient(circle at 28% 22%, rgba(238,244,242,.62), transparent 17%), radial-gradient(circle at 50% 56%, rgba(33,242,35,.28), transparent 58%), rgba(33,242,35,.1); box-shadow: 0 0 0 1px rgba(33,242,35,.08), 0 20px 58px rgba(33,242,35,.18); }
        .home-shell .comparison-icon::after { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(33,242,35,.16); border-radius: 50%; pointer-events: none; }
        .home-shell .comparison-icon svg { width: 40px; height: 40px; fill: none; stroke: rgba(33,242,35,.96); stroke-width: 2.25; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 8px rgba(33,242,35,.24)); }
        .home-shell .comparison-card b { position: relative; z-index: 1; color: rgba(33,242,35,.9); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
        .home-shell .comparison-card h3 { position: relative; z-index: 1; max-width: 350px; margin-top: 16px; font-size: clamp(23px,1.85vw,30px); }
        .home-shell .comparison-card p { position: relative; z-index: 1; max-width: 380px; margin: 14px 0 0; color: var(--body); font-size: 14px; line-height: 1.5; }
        .home-shell .expression-grid { display: grid; grid-template-columns: repeat(16,1fr); gap: 22px; align-items: center; }
        .home-shell .expression-copy { grid-column: 1 / span 5; }
        .home-shell .expression-copy p { max-width: 460px; color: var(--body); margin: 18px 0 0; font-size: 14px; line-height: 1.65; }
        .home-shell .expression-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
        .home-shell .expression-tags span { padding: 7px 10px; border: 1px solid rgba(238,244,242,.12); border-radius: 999px; color: var(--body); background: rgba(238,244,242,.035); font-size: 12px; }
        .home-shell .business-layout { display: grid; grid-template-columns: 6fr 9fr; gap: 24px; align-items: center; }
        .home-shell .business-lead { position: static; padding-right: 28px; border-right: 1px solid rgba(238,244,242,.1); }
        .home-shell .business-lead p { max-width: 520px; color: var(--body); margin: 26px 0 0; line-height: 1.75; }
        .home-shell .business-points { display: grid; gap: 16px; margin: 32px 0; }
        .home-shell .business-point { padding-top: 16px; border-top: 1px solid var(--line); }
        .home-shell .business-point b { display: block; color: rgba(33,242,35,.88); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
        .home-shell .business-point span { display: block; margin-top: 8px; color: var(--body); font-size: 14px; line-height: 1.55; }
        .home-shell .business-cards { width: 100%; display: grid; grid-template-columns: minmax(0, 1.28fr) minmax(0, 1fr); grid-template-rows: repeat(2, 220px); gap: 18px; align-items: stretch; align-self: center; }
        .home-shell .biz-card { position: relative; display: block; min-height: 0; padding: 0; border-radius: 8px; overflow: hidden; background: var(--panel); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 34px 90px rgba(0,0,0,.25); isolation: isolate; transition: transform .42s var(--ease), box-shadow .42s var(--ease); }
        .home-shell .biz-card.featured { grid-row: 1 / span 2; min-height: 458px; }
        .home-shell .biz-card img,
        .home-shell .biz-card video { width: 100%; height: 100%; object-fit: cover; border-radius: 0; opacity: .78; filter: saturate(.78) contrast(1.08); transform: scale(1.01); transition: transform .52s var(--ease), opacity .52s var(--ease), filter .52s var(--ease); }
        .home-shell .biz-card::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(8,12,15,.05) 0%, rgba(8,12,15,.32) 44%, rgba(8,12,15,.84) 100%); pointer-events: none; }
        .home-shell .biz-card::after { content: ""; position: absolute; left: 20px; right: auto; top: 20px; z-index: 2; width: 72px; height: 1px; background: linear-gradient(90deg, rgba(33,242,35,.72), transparent); opacity: .72; transition: width .42s var(--ease), opacity .42s var(--ease); }
        .home-shell .biz-card:hover { transform: translateY(-5px); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 0 20px rgba(33,242,35,.12), 0 44px 108px rgba(0,0,0,.34); }
        .home-shell .biz-card:hover img,
        .home-shell .biz-card:hover video { opacity: .94; filter: saturate(.95) contrast(1.12); transform: scale(1.055); }
        .home-shell .biz-card:hover::after { width: 120px; opacity: 1; }
        .home-shell .biz-card h3 { margin: 0; color: #f6fbf8; font-size: clamp(24px,1.85vw,34px); line-height: 1.02; text-shadow: 0 2px 18px rgba(0,0,0,.48); }
        .home-shell .biz-card:not(.featured) h3 { font-size: clamp(21px,1.42vw,27px); }
        .home-shell .biz-card p { max-width: 390px; margin: 12px 0 0; color: rgba(238,244,242,.76); font-size: 13.5px; line-height: 1.52; text-shadow: 0 2px 16px rgba(0,0,0,.55); }
        .home-shell .biz-card:not(.featured) p { font-size: 13px; line-height: 1.48; }        .home-shell .data-row { display: grid; grid-template-columns: repeat(4,1fr); gap: 1px; background: rgba(238,244,242,.09); border: 1px solid rgba(238,244,242,.09); }
        .home-shell .metric { min-height: 210px; padding: 24px; background: linear-gradient(145deg, rgba(255,255,255,.052), rgba(255,255,255,.016)), var(--panel); }
        .home-shell .metric .value { color: rgba(33,242,35,.95); font-size: clamp(36px,4.2vw,62px); font-weight: 700; line-height: .86; letter-spacing: 0; text-shadow: 0 0 22px rgba(33,242,35,.22); }
        .home-shell .metric .unit { color: rgba(238,244,242,.44); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; }
        .home-shell .metric p { color: var(--body); font-size: 14px; margin: 20px 0 0; line-height: 1.6; }
        .home-shell .journey-panel { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(340px,.82fr) minmax(520px,1.18fr); gap: clamp(42px,6vw,92px); align-items: center; padding: clamp(36px,4.8vw,68px); border: 1px solid rgba(238,244,242,.1); border-radius: 12px; background: var(--panel-vi); box-shadow: var(--panel-shadow); }
        .home-shell .journey-panel::before { content: "PROJECT"; position: absolute; left: -1vw; bottom: -18px; color: rgba(238,244,242,.03); font-size: clamp(82px,11vw,170px); font-weight: 700; letter-spacing: 0; line-height: .8; pointer-events: none; }
        .home-shell .journey-panel::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(33,242,35,.68), transparent); opacity: .72; }
        .home-shell .journey-lead { position: relative; z-index: 1; max-width: 470px; }
        .home-shell .journey-lead h2 { max-width: 460px; font-size: clamp(30px,3vw,50px); line-height: 1; letter-spacing: 0; }
        .home-shell .journey-lead p { max-width: 420px; margin: 18px 0 0; color: rgba(238,244,242,.64); font-size: clamp(14px,.9vw,15px); line-height: 1.66; }
        .home-shell .journey-actions { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr; gap: 12px; }
        .home-shell .journey-card { position: relative; min-height: 0; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: clamp(20px,3vw,44px); align-items: center; padding: clamp(18px,2.1vw,28px) clamp(20px,2.5vw,34px); overflow: hidden; border: 1px solid rgba(238,244,242,.1); border-radius: 12px; background: var(--panel-vi); color: inherit; text-decoration: none; transition: transform .38s var(--ease), background .38s var(--ease); }
        .home-shell .journey-card:hover { transform: translateY(-3px); background: var(--panel-vi); }
        .home-shell .journey-card::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: linear-gradient(180deg, rgba(33,242,35,.9), transparent); opacity: .62; }
        .home-shell .journey-card b { display: block; color: rgba(33,242,35,.9); font-size: 10px; letter-spacing: .18em; text-transform: uppercase; }
        .home-shell .journey-card h3 { margin: 14px 0 0; color: rgba(238,244,242,.94); font-size: clamp(20px,1.75vw,28px); line-height: 1; letter-spacing: 0; }
        .home-shell .journey-card p { margin: 8px 0 0; max-width: 440px; color: rgba(238,244,242,.56); font-size: 13px; line-height: 1.5; }
        .home-shell .journey-card span { white-space: nowrap; color: rgba(238,244,242,.86); font-size: 11px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
        .home-shell .journey-card.primary-card { min-height: 170px; background: var(--panel-vi); }
        .home-shell .journey-card.primary-card h3 { color: #fff; }
        .home-shell .journey-card.primary-card span { color: #061008; width: fit-content; padding: 12px 16px; background: rgba(33,242,35,.92); }
        .home-shell .journey-card.secondary-card::after { opacity: .32; }
        .home-shell .journey-card.secondary-card { min-height: 124px; }
        .home-shell .journey-utility { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
        .home-shell .journey-secondary { display: inline-flex; align-items: center; min-height: 48px; padding: 0 16px; border: 1px solid rgba(238,244,242,.12); color: rgba(238,244,242,.72); background: rgba(10,13,14,.42); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; transition: transform .38s var(--ease), border-color .38s var(--ease), color .38s var(--ease); }
        .home-shell .journey-secondary:hover { transform: translateY(-2px); color: rgba(238,244,242,.94); border-color: rgba(33,242,35,.34); }
        .home-shell .section-business { padding-top: clamp(34px,4.2vw,64px); padding-bottom: clamp(34px,4.2vw,64px); }
        .home-shell .section-expression { padding-top: clamp(38px,4.4vw,72px); padding-bottom: clamp(40px,4.8vw,76px); }
        .home-shell .section-expression .expression-copy h2 { font-size: clamp(30px,3vw,50px); line-height: .98; max-width: 560px; }
        .home-shell .section-safety { padding-top: clamp(34px,4vw,58px); padding-bottom: clamp(38px,4.8vw,68px); }
        .home-shell .section-campaign { padding-top: clamp(22px,3vw,46px); padding-bottom: clamp(28px,3.4vw,54px); }

        .home-shell .section-campaign,
        .home-shell .section-safety,
        .home-shell .section-hud,
        .home-shell .section-expression,
        .home-shell .section-business {
            min-height: calc(100svh - 72px);
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        @media (max-width:1080px) {
            .home-shell .wrap { width: min(100% - 36px, 1240px); }
            .home-shell .hero-inner,
            .home-shell .section-head,
            .home-shell .safety-split,
            .home-shell .hud-panel,
            .home-shell .comparison-grid,
            .home-shell .expression-grid,
            .home-shell .business-layout,
            .home-shell .campaign-layout,
            .home-shell .journey-panel { grid-template-columns: 1fr; }
            .home-shell .hero-copy,
            .home-shell .section-head .title,
            .home-shell .section-head .intro,
            .home-shell .safety-split-media,
            .home-shell .safety-split-copy,
            .home-shell .expression-copy,
            .home-shell .business-lead,
            .home-shell .business-cards,
            .home-shell .campaign-image,
            .home-shell .campaign-copy { grid-column: auto; }
            .home-shell .campaign-image { min-height: 440px; aspect-ratio: 1.42 / 1; }
            .home-shell .hero-inner { padding-top: 76px; padding-bottom: 56px; }
            .home-shell .hero-copy { transform: none; }
            .home-shell .business-lead { position: static; }
            .home-shell .safety-split { min-height: auto; }
            .home-shell .safety-split-media { min-height: 390px; }
            .home-shell .journey-actions { grid-template-columns: 1fr; }
            .home-shell .data-row,
            .home-shell .hud-row,
            .home-shell .comparison-grid { grid-template-columns: 1fr 1fr; }
            .home-shell .biz-card { grid-template-columns: 1fr; }
            .home-shell .biz-card img,
            .home-shell .biz-card video { width: 100%; height: 220px; }
        }
        @media (max-width:768px) {
            /* Business cards rail: keep featured card compact, no tall empty gap */
            .home-shell .business-cards.ig-mobile-rail { align-items: stretch; }
            .home-shell .business-cards.ig-mobile-rail .biz-card,
            .home-shell .business-cards.ig-mobile-rail .biz-card.featured { min-height: 0; grid-row: auto; }

            /* Expression section: reorder copy / media / tags vertically on mobile */
            .home-shell .section-expression .expression-grid { display: flex; flex-direction: column; gap: 0; align-items: stretch; }
            .home-shell .section-expression .expression-copy { display: contents; }
            .home-shell .section-expression .expression-copy > .kicker,
            .home-shell .section-expression .expression-copy > h2 { order: 1; }
            .home-shell .section-expression .expression-copy > .kicker { text-align: left; }
            .home-shell .section-expression .expression-copy > p { order: 2; margin-top: 18px; }
            .home-shell .section-expression .expression-tags {
                order: 5;
                flex-wrap: nowrap;
                gap: 8px;
                margin-top: 20px;
                overflow-x: auto;
                scrollbar-width: none;
                -ms-overflow-style: none;
            }
            .home-shell .section-expression .expression-tags::-webkit-scrollbar { display: none; }
            .home-shell .section-expression .expression-tags span { flex: 0 0 auto; padding: 7px 12px; font-size: 12px; }
        }
        @media (max-width:560px) {
            .home-shell .wrap { width: min(100% - 28px, 1240px); }
            .home-shell h1 { font-size: clamp(44px,14vw,68px); }
            .home-shell .home-actions { margin-top: 24px; }
            .home-shell .section { padding: 58px 0; }
            .home-shell .safety-split-media { min-height: 300px; }
            .home-shell .safety-cue { grid-template-columns: 48px 1fr; padding: 15px; }
            .home-shell .journey-panel { padding: 22px; }
            .home-shell .journey-card { grid-template-columns: 1fr; gap: 18px; min-height: 190px; }
            .home-shell .journey-card.primary-card,
            .home-shell .journey-card.secondary-card { min-height: auto; }
            .home-shell .journey-card span { white-space: normal; }
            .home-shell .data-row,
            .home-shell .hud-row,
            .home-shell .comparison-grid { grid-template-columns: 1fr; }
            .home-shell .section-campaign,
            .home-shell .section-safety,
            .home-shell .section-hud,
            .home-shell .section-expression,
            .home-shell .section-business {
                min-height: auto;
            }
            .home-shell .business-layout { gap: 34px; }
            .home-shell .business-lead { padding-bottom: 0; }
            .home-shell .business-cards { align-self: stretch; }
            .home-shell .biz-card,
            .home-shell .journey-card { min-height: 0; }
            .home-shell .biz-card img,
            .home-shell .biz-card video { height: 180px; }
            .home-shell .campaign-image { min-height: 300px; }
            .home-shell .campaign-image img { padding: 18px; }
        }

        /* v41 content layout: scoped to the homepage so shared theme components remain unaffected. */
        .home-shell .hero { min-height: 100svh; }
        .home-shell .hero-inner { display: grid; grid-template-columns: repeat(16, 1fr); gap: 22px; min-height: 100svh; align-items: end; padding: 132px 0 72px; }
        .home-shell .hero-copy { grid-column: 1 / span 8; }
        .home-shell h1 { max-width: 760px; font-size: clamp(36px, 3.2vw, 48px); font-weight: 900; line-height: .9; letter-spacing: -.046em; }
        .home-shell h2 { max-width: 660px; font-size: clamp(23px, 1.95vw, 32px); font-weight: 900; line-height: 1.06; letter-spacing: -.028em; }
        .home-shell h3 { font-size: clamp(17px, 1.12vw, 20px); font-weight: 900; line-height: 1.08; letter-spacing: -.02em; }
        .home-shell .section { padding: clamp(58px, 6.2vw, 88px) 0; scroll-margin-top: 86px; }
        .home-shell .section-head { display: block; margin-bottom: clamp(26px, 3.4vw, 44px); }
        .home-shell .section-head .title { max-width: 760px; }
        .home-shell .section-head .intro { max-width: 620px; margin: 16px 0 0; font-size: clamp(13px, .96vw, 15px); line-height: 1.68; }
        .home-shell .section-campaign,
        .home-shell .section-safety,
        .home-shell .section-hud,
        .home-shell .section-expression,
        .home-shell .section-business { min-height: 0; display: block; }

        .home-shell .comparison-grid { align-items: end; }
        .home-shell #why .comparison-card { min-height: 318px; height: 318px; margin-top: 0; }
        .home-shell .comparison-card h3 { font-size: clamp(18px, 1.22vw, 22px); }
        .home-shell #why .comparison-card { transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease; }
        .home-shell #why .comparison-card:hover { transform: translateY(-5px); border-color: rgba(33,242,35,.18); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 34px 96px rgba(0,0,0,.3); }
        .home-shell #why .comparison-card:hover::before { opacity: 1; filter: drop-shadow(0 0 14px rgba(33,242,35,.12)); }
        .home-shell #why .comparison-card:hover .comparison-icon { transform: translateY(-2px); border-color: rgba(33,242,35,.42); box-shadow: 0 0 0 1px rgba(33,242,35,.08), 0 14px 34px rgba(33,242,35,.1); }
        .home-shell #why .comparison-icon { transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease; }

        .home-shell .safety-split { grid-template-columns: repeat(12, 1fr); gap: clamp(24px, 3vw, 42px); }
        .home-shell .safety-split-media { grid-column: 1 / span 6; min-height: clamp(420px, 36vw, 540px); }
        .home-shell .safety-split-copy { grid-column: 7 / span 6; gap: clamp(22px, 2.6vw, 34px); width: 100%; max-width: 610px; justify-self: end; }
        .home-shell .safety-split-copy h2 { max-width: 560px; font-size: clamp(23px, 1.95vw, 32px); line-height: 1.06; letter-spacing: -.028em; }
        .home-shell .safety-cue span { color: rgba(238,244,242,.7); font-size: clamp(13px, .94vw, 15px); font-weight: 400; line-height: 1.48; }
        .home-shell .safety-cue span b { display: block; margin-bottom: 3px; color: rgba(238,244,242,.9); font-size: clamp(15px, 1.02vw, 18px); font-weight: 900; line-height: 1.08; letter-spacing: -.018em; }

        /* Keep the Safety in motion copy visually aligned with the media at desktop. */
        @media (min-width:1081px) {
            .home-shell .safety-split-media { min-height: clamp(450px, 39vw, 580px); }
            .home-shell .safety-split-copy { gap: clamp(16px, 1.45vw, 20px); }
            .home-shell .safety-split-copy p { max-width: 570px; }
        }

        .home-shell .hud-row { grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 28px; }
        @media (min-width:1081px) {
            .home-shell .hud-copy { padding-top: 16px; }
            .home-shell .hud-row { column-gap: 18px; row-gap: 20px; }
        }
        .home-shell .hud { position: relative; min-height: 82px; display: grid; grid-template-columns: 46px 1fr; column-gap: 12px; align-content: center; align-items: center; padding: 12px 15px; overflow: hidden; border-radius: 12px; background: radial-gradient(circle at 14% 50%, rgba(33,242,35,.08), transparent 32%), linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.015)), var(--panel-vi); transition: border-color .28s ease, transform .28s ease, box-shadow .28s ease; }
        .home-shell .hud::before { position: absolute; inset: 0; width: auto; height: auto; margin: 0; border-radius: inherit; background: radial-gradient(circle at 15% 26%, rgba(33,242,35,.13), transparent 25%), linear-gradient(90deg, rgba(33,242,35,.075), rgba(33,242,35,.018) 30%, transparent 60%); opacity: .58; }
        .home-shell .hud-icon { position: relative; z-index: 1; width: 44px; height: 44px; display: grid; place-items: center; grid-row: 1 / span 2; border: 1px solid rgba(33,242,35,.24); border-radius: 13px; background: radial-gradient(circle at 30% 22%, rgba(238,244,242,.34), transparent 17%), radial-gradient(circle at 50% 58%, rgba(33,242,35,.16), transparent 60%), rgba(33,242,35,.08); }
        .home-shell .hud-icon svg { width: 27px; height: 27px; fill: none; stroke: rgba(33,242,35,.95); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
        .home-shell .hud b { position: relative; z-index: 1; align-self: end; }
        .home-shell .hud span { position: relative; z-index: 1; align-self: start; margin-top: 6px; color: rgba(238,244,242,.72); font-size: 13px; line-height: 1.36; }

        .home-shell .section-expression { padding-top: clamp(58px, 6.2vw, 88px); padding-bottom: clamp(58px, 6.2vw, 88px); }
        .home-shell .expression-grid { grid-template-columns: repeat(16, 1fr); gap: 22px; align-items: stretch; }
        .home-shell .expression-copy { grid-column: 1 / span 6; }
        .home-shell .expression-videos { grid-column: 8 / span 9; display: grid; grid-template-columns: minmax(0, 1.22fr) minmax(0, .95fr); grid-template-rows: repeat(2, auto); gap: 16px; min-height: 0; align-self: center; }
        .home-shell .expression-video { position: relative; min-height: 0; aspect-ratio: 16 / 9; margin: 0; overflow: hidden; border-radius: 12px; background: var(--panel); box-shadow: 0 44px 120px rgba(0,0,0,.34); isolation: isolate; }
        .home-shell .expression-video.featured { grid-column: 1; grid-row: 1 / span 2; align-self: center; }
        .home-shell .expression-video:not(.featured) { grid-column: 2; align-self: start; }
        .home-shell .expression-video video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 40%; filter: saturate(.9) contrast(1.08) brightness(.84); transform: scale(1.14); }
        .home-shell .expression-video.featured video { object-position: center 34%; transform: scale(1.14); }
        .home-shell .expression-video::before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 66px; z-index: 2; background: linear-gradient(0deg, rgba(4,6,7,.96), rgba(4,6,7,.76) 48%, transparent); }
        .home-shell .expression-video figcaption { position: absolute; left: 18px; right: 18px; bottom: 17px; z-index: 3; display: none; }
        .home-shell .expression-tags { display: grid; grid-template-columns: repeat(3, max-content); align-items: start; width: fit-content; }

        .home-shell .business-layout { display: grid; grid-template-columns: repeat(16, 1fr); gap: 22px; align-items: center; }
        .home-shell .business-lead { grid-column: 1 / span 6; min-height: 330px; padding: 18px 28px 18px 0; border-right: 1px solid rgba(238,244,242,.09); }
        .home-shell .business-lead p { max-width: 430px; margin: 16px 0 0; font-size: 14px; line-height: 1.62; }
        .home-shell .business-points { gap: 10px; max-width: 430px; margin: 28px 0 0; }
        .home-shell .business-point { padding-top: 12px; }
        .home-shell .business-cards { grid-column: 8 / span 9; display: grid; grid-template-columns: 1fr; grid-template-rows: none; gap: 14px; min-height: 0; }
        .home-shell #creators .business-lead > .ig-btn { margin-top: 38px; }
        .home-shell .biz-card,
        .home-shell .biz-card.featured { position: relative; display: flex; flex-direction: row; align-items: center; gap: 24px; min-height: 126px; padding: 20px 24px; border-radius: 12px; background: var(--panel-vi); box-shadow: var(--panel-shadow); overflow: hidden; }
        .home-shell .biz-card::before { inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(10,13,14,.08), rgba(10,13,14,.76)); }
        .home-shell .biz-card::after { inset: 0; z-index: 2; width: auto; height: auto; background: radial-gradient(circle at 16% 16%, rgba(33,242,35,.08), transparent 26%), linear-gradient(90deg, rgba(33,242,35,.04), transparent 46%); }
        .home-shell .biz-icon { position: relative; z-index: 3; flex: 0 0 auto; display: grid; place-items: center; width: 62px; height: 62px; border: 1px solid rgba(33,242,35,.36); border-radius: 16px; background: radial-gradient(circle at 30% 22%, rgba(255,255,255,.55), transparent 13%), rgba(33,242,35,.08); box-shadow: 0 0 42px rgba(33,242,35,.2); }
        .home-shell .biz-icon svg { width: 30px; height: 30px; fill: none; stroke: rgba(33,242,35,.92); stroke-width: 2.15; stroke-linecap: round; stroke-linejoin: round; }
        .home-shell .biz-card > div:last-child { position: relative; z-index: 3; max-width: 560px; }
        .home-shell .biz-card h3,
        .home-shell .biz-card.featured h3 { font-size: 18px; line-height: 1.08; text-shadow: none; }
        .home-shell .biz-card p,
        .home-shell .biz-card.featured p { margin: 8px 0 0; color: var(--body); font-size: 13px; line-height: 1.45; text-shadow: none; }

        .home-shell .data-row { gap: 10px; background: transparent; border: 0; }
        .home-shell .metric { min-height: 166px; padding: 18px; border: 1px solid rgba(238,244,242,.1); border-radius: 12px; background: var(--panel-vi); }
        .home-shell .metric .value { font-size: clamp(34px, 4.2vw, 58px); font-weight: 900; line-height: .9; letter-spacing: -.05em; }
        .home-shell .metric p { margin: 14px 0 0; font-size: 13px; line-height: 1.48; }

        @media (max-width:1080px) {
            .home-shell .hero-inner,
            .home-shell .expression-grid,
            .home-shell .business-layout { grid-template-columns: 1fr; }
            .home-shell .hero-copy,
            .home-shell .expression-copy,
            .home-shell .expression-videos,
            .home-shell .business-lead,
            .home-shell .business-cards { grid-column: auto; }
            .home-shell .business-lead { min-height: auto; padding: 0; border-right: 0; }
            .home-shell .expression-videos { grid-template-columns: 1fr; grid-template-rows: none; min-height: auto; }
            .home-shell .expression-video.featured { grid-column: auto; grid-row: auto; }
            .home-shell .expression-video:not(.featured) { grid-column: auto; }
            .home-shell .expression-video video { position: absolute; min-height: 0; }
            .home-shell .expression-tags { display: flex; width: auto; }
            .home-shell .safety-split-media,
            .home-shell .safety-split-copy { grid-column: auto; }
        }
        @media (max-width:560px) {
            .home-shell .hero-inner { padding-top: 104px; padding-bottom: 56px; }
            .home-shell h1 { font-size: clamp(34px, 10vw, 48px); }
            .home-shell .section { padding: 48px 0; scroll-margin-top: 96px; }
            .home-shell .hud-row { grid-template-columns: 1fr; }
            .home-shell .biz-card,
            .home-shell .biz-card.featured { min-height: 0; }
        }
