.elementor-17203 .elementor-element.elementor-element-2315d2b2{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--overflow:hidden;--overlay-opacity:0.5;--padding-top:140px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-2315d2b2:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-2315d2b2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://immortalhealthaustralia.com/wp-content/uploads/2026/08/hero-mountain.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-17203 .elementor-element.elementor-element-2315d2b2::before, .elementor-17203 .elementor-element.elementor-element-2315d2b2 > .elementor-background-video-container::before, .elementor-17203 .elementor-element.elementor-element-2315d2b2 > .e-con-inner > .elementor-background-video-container::before, .elementor-17203 .elementor-element.elementor-element-2315d2b2 > .elementor-background-slideshow::before, .elementor-17203 .elementor-element.elementor-element-2315d2b2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-17203 .elementor-element.elementor-element-2315d2b2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(0deg, #030303 0%, rgba(3,3,3,0.35) 80%);}.elementor-17203 .elementor-element.elementor-element-969e43c{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:48px 32px;--row-gap:48px;--column-gap:32px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-660a08e6{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-590089b3 > .elementor-widget-container{margin:0px 0px 24px 0px;}.elementor-17203 .elementor-element.elementor-element-590089b3{text-align:start;}.elementor-17203 .elementor-element.elementor-element-590089b3 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:4.2px;color:#D4D4D8;}.elementor-17203 .elementor-element.elementor-element-62a43572 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-62a43572{text-align:start;}.elementor-17203 .elementor-element.elementor-element-62a43572 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:96px;font-weight:500;line-height:0.95em;letter-spacing:-2px;}.elementor-17203 .elementor-element.elementor-element-b4bcc46{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:32px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-7651fc77 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-7651fc77{text-align:start;font-family:"Rubik", Sans-serif;font-size:18px;font-weight:400;line-height:1.625em;color:#D4D4D8;}.elementor-17203 .elementor-element.elementor-element-2b943e .elementor-button{background-color:rgba(255,255,255,0);font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:3px;fill:#FFFFFF;color:#FFFFFF;}.elementor-17203 .elementor-element.elementor-element-251490a7{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-end;--gap:16px 16px;--row-gap:16px;--column-gap:16px;}.elementor-17203 .elementor-element.elementor-element-7cd48a36{text-align:center;}.elementor-17203 .elementor-element.elementor-element-7cd48a36 img{width:100%;}.elementor-17203 .elementor-element.elementor-element-688d8953 > .elementor-widget-container{margin:0px 0px 8px 0px;}.elementor-17203 .elementor-element.elementor-element-688d8953{text-align:center;}.elementor-17203 .elementor-element.elementor-element-688d8953 img{width:100%;}.elementor-17203 .elementor-element.elementor-element-65e48a73{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:hidden;--padding-top:160px;--padding-bottom:160px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-65e48a73:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-65e48a73 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#030303;}.elementor-17203 .elementor-element.elementor-element-181adfd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-5127366{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-6f275876 > .elementor-widget-container{margin:0px 0px 20px 0px;}.elementor-17203 .elementor-element.elementor-element-6f275876{text-align:start;}.elementor-17203 .elementor-element.elementor-element-6f275876 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:3.6px;color:#71717A;}.elementor-17203 .elementor-element.elementor-element-58d9d48e > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-58d9d48e{text-align:start;}.elementor-17203 .elementor-element.elementor-element-58d9d48e .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:72px;font-weight:500;line-height:0.95em;letter-spacing:-1.2px;}.elementor-17203 .elementor-element.elementor-element-4a72b003 > .elementor-widget-container{margin:24px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-4a72b003{text-align:start;font-family:"Rubik", Sans-serif;font-size:18px;line-height:1.625em;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-49e8b3ca{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:32px 32px;--row-gap:32px;--column-gap:32px;}.elementor-17203 .elementor-element.elementor-element-3c97f84f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-43ca9405{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-2a5ee21{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-1540de3c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:hidden;--padding-top:160px;--padding-bottom:160px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-1540de3c:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-1540de3c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#050505;}.elementor-17203 .elementor-element.elementor-element-582c115e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:64px 64px;--row-gap:64px;--column-gap:64px;}.elementor-17203 .elementor-element.elementor-element-3167beec{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-6a9b76cb > .elementor-widget-container{margin:0px 0px 20px 0px;}.elementor-17203 .elementor-element.elementor-element-6a9b76cb{text-align:start;}.elementor-17203 .elementor-element.elementor-element-6a9b76cb .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:3.6px;color:#71717A;}.elementor-17203 .elementor-element.elementor-element-275a97b6 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-275a97b6{text-align:start;}.elementor-17203 .elementor-element.elementor-element-275a97b6 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:60px;font-weight:500;line-height:0.95em;letter-spacing:-1.2px;}.elementor-17203 .elementor-element.elementor-element-1f23c98e > .elementor-widget-container{margin:24px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-1f23c98e{text-align:start;font-family:"Rubik", Sans-serif;font-size:18px;line-height:1.625em;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-77cba270{text-align:center;}.elementor-17203 .elementor-element.elementor-element-77cba270 img{width:100%;}.elementor-17203 .elementor-element.elementor-element-54ac11da{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-4d5bca3d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:hidden;--padding-top:160px;--padding-bottom:160px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-4d5bca3d:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-4d5bca3d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#030303;}.elementor-17203 .elementor-element.elementor-element-39484b1f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-7e86ea68{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-377cf87f > .elementor-widget-container{margin:0px 0px 20px 0px;}.elementor-17203 .elementor-element.elementor-element-377cf87f{text-align:start;}.elementor-17203 .elementor-element.elementor-element-377cf87f .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:3.6px;color:#71717A;}.elementor-17203 .elementor-element.elementor-element-5204c787 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-5204c787{text-align:start;}.elementor-17203 .elementor-element.elementor-element-5204c787 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:60px;font-weight:500;line-height:1em;letter-spacing:-1.2px;}.elementor-17203 .elementor-element.elementor-element-3218ea3e > .elementor-widget-container{margin:24px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-3218ea3e{text-align:start;font-family:"Rubik", Sans-serif;font-size:18px;line-height:1.625em;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-14151ebf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:64px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-33036f6b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-11c9807c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-4f0487a5 .elementor-button{background-color:rgba(255,255,255,0);font-family:"Rubik", Sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:3px;fill:#FFFFFF;color:#FFFFFF;}.elementor-17203 .elementor-element.elementor-element-4f0487a5 > .elementor-widget-container{margin:48px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-d425d5a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:hidden;--padding-top:160px;--padding-bottom:160px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-d425d5a:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-d425d5a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#050505;}.elementor-17203 .elementor-element.elementor-element-703e67ca{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:80px 80px;--row-gap:80px;--column-gap:80px;}.elementor-17203 .elementor-element.elementor-element-4805c18e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-a560a4c{text-align:center;}.elementor-17203 .elementor-element.elementor-element-a560a4c img{width:100%;}.elementor-17203 .elementor-element.elementor-element-47ae0247{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-1b8bc949 > .elementor-widget-container{margin:0px 0px 16px 0px;}.elementor-17203 .elementor-element.elementor-element-1b8bc949{text-align:start;}.elementor-17203 .elementor-element.elementor-element-1b8bc949 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:3.6px;color:#71717A;}.elementor-17203 .elementor-element.elementor-element-f1fa824 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-f1fa824{text-align:start;}.elementor-17203 .elementor-element.elementor-element-f1fa824 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:60px;font-weight:500;line-height:0.98em;letter-spacing:-1.2px;}.elementor-17203 .elementor-element.elementor-element-56f41de > .elementor-widget-container{margin:24px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-56f41de{text-align:start;font-family:"Rubik", Sans-serif;font-size:18px;line-height:1.625em;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-3ca76ef2 .elementor-button{background-color:rgba(255,255,255,0);font-family:"Rubik", Sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:3px;fill:#FFFFFF;color:#FFFFFF;}.elementor-17203 .elementor-element.elementor-element-3ca76ef2 > .elementor-widget-container{margin:40px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-3c937df3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:hidden;--padding-top:160px;--padding-bottom:160px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-3c937df3:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-3c937df3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#030303;}.elementor-17203 .elementor-element.elementor-element-1abc1b4e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:80px 80px;--row-gap:80px;--column-gap:80px;}.elementor-17203 .elementor-element.elementor-element-71d096bd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-6f945ba2 > .elementor-widget-container{margin:0px 0px 16px 0px;}.elementor-17203 .elementor-element.elementor-element-6f945ba2{text-align:start;}.elementor-17203 .elementor-element.elementor-element-6f945ba2 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:3.6px;color:#71717A;}.elementor-17203 .elementor-element.elementor-element-3330cca7 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-3330cca7{text-align:start;}.elementor-17203 .elementor-element.elementor-element-3330cca7 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:60px;font-weight:500;line-height:0.98em;letter-spacing:-1.2px;}.elementor-17203 .elementor-element.elementor-element-3fe81c2d > .elementor-widget-container{margin:24px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-3fe81c2d{text-align:start;font-family:"Rubik", Sans-serif;font-size:18px;line-height:1.625em;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-3c8a1aa7 .elementor-button{background-color:rgba(255,255,255,0);font-family:"Rubik", Sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:3px;fill:#FFFFFF;color:#FFFFFF;}.elementor-17203 .elementor-element.elementor-element-3c8a1aa7 > .elementor-widget-container{margin:40px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-2d0a6986{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-287e4af8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:hidden;--padding-top:160px;--padding-bottom:160px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-287e4af8:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-287e4af8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#050505;}.elementor-17203 .elementor-element.elementor-element-7b068dd8{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:80px 80px;--row-gap:80px;--column-gap:80px;}.elementor-17203 .elementor-element.elementor-element-66603276{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-69f18c02{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-76bf84a7 > .elementor-widget-container{margin:0px 0px 24px 0px;}.elementor-17203 .elementor-element.elementor-element-76bf84a7{text-align:start;}.elementor-17203 .elementor-element.elementor-element-76bf84a7 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:3.6px;color:#71717A;}.elementor-17203 .elementor-element.elementor-element-4fc6880c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-4fc6880c{text-align:start;}.elementor-17203 .elementor-element.elementor-element-4fc6880c .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:48px;font-weight:500;line-height:1.08em;}.elementor-17203 .elementor-element.elementor-element-7f0462ec > .elementor-widget-container{margin:24px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-7f0462ec{text-align:start;}.elementor-17203 .elementor-element.elementor-element-7f0462ec .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:2.1px;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-7c3df310 > .elementor-widget-container{margin:32px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-7c3df310{text-align:start;font-family:"Rubik", Sans-serif;font-size:18px;line-height:1.625em;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-3fb41332 .elementor-button{background-color:rgba(255,255,255,0);font-family:"Rubik", Sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:3px;fill:#FFFFFF;color:#FFFFFF;}.elementor-17203 .elementor-element.elementor-element-3fb41332 > .elementor-widget-container{margin:40px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-7442a4c7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:hidden;--padding-top:160px;--padding-bottom:160px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-7442a4c7:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-7442a4c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#030303;}.elementor-17203 .elementor-element.elementor-element-218156af{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:80px 80px;--row-gap:80px;--column-gap:80px;}.elementor-17203 .elementor-element.elementor-element-52d5c3f1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-35df0c07{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-3c0e18de > .elementor-widget-container{margin:0px 0px 20px 0px;}.elementor-17203 .elementor-element.elementor-element-3c0e18de{text-align:start;}.elementor-17203 .elementor-element.elementor-element-3c0e18de .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:3.6px;color:#71717A;}.elementor-17203 .elementor-element.elementor-element-1adc1129 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-1adc1129{text-align:start;}.elementor-17203 .elementor-element.elementor-element-1adc1129 .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:60px;font-weight:500;line-height:0.95em;letter-spacing:-1.2px;}.elementor-17203 .elementor-element.elementor-element-403e162a > .elementor-widget-container{margin:24px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-403e162a{text-align:start;font-family:"Rubik", Sans-serif;font-size:18px;line-height:1.625em;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-1cc32c4c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-1cc32c4c{text-align:start;font-family:"Rubik", Sans-serif;font-size:16px;line-height:1.625em;color:#71717A;}.elementor-17203 .elementor-element.elementor-element-74a33800 .elementor-button{background-color:rgba(255,255,255,0);font-family:"Rubik", Sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:3px;fill:#FFFFFF;color:#FFFFFF;}.elementor-17203 .elementor-element.elementor-element-74a33800 > .elementor-widget-container{margin:40px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-8361f9f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-17203 .elementor-element.elementor-element-32d2c5c > .elementor-widget-container{margin:0px 0px 40px 0px;}.elementor-17203 .elementor-element.elementor-element-32d2c5c{text-align:start;}.elementor-17203 .elementor-element.elementor-element-32d2c5c .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:60px;font-weight:500;line-height:0.95em;letter-spacing:-1.2px;}.elementor-17203 .elementor-element.elementor-element-bc2630e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:hidden;--padding-top:192px;--padding-bottom:192px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-bc2630e:not(.elementor-motion-effects-element-type-background), .elementor-17203 .elementor-element.elementor-element-bc2630e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#030303;}.elementor-17203 .elementor-element.elementor-element-677bd3b6{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:32px 32px;--row-gap:32px;--column-gap:32px;}.elementor-17203 .elementor-element.elementor-element-a69b7d5{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-33bc567e > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-33bc567e{text-align:center;}.elementor-17203 .elementor-element.elementor-element-33bc567e .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:128px;font-weight:500;line-height:0.92em;letter-spacing:-1.2px;}.elementor-17203 .elementor-element.elementor-element-7ae4e9f4 > .elementor-widget-container{margin:32px 0px 0px 0px;}.elementor-17203 .elementor-element.elementor-element-7ae4e9f4{text-align:center;font-family:"Rubik", Sans-serif;font-size:18px;line-height:1.625em;color:#A1A1AA;}.elementor-17203 .elementor-element.elementor-element-d4199d3 .elementor-button{background-color:rgba(255,255,255,0);font-family:"Rubik", Sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:3px;fill:#FFFFFF;color:#FFFFFF;}.elementor-17203 .elementor-element.elementor-element-d4199d3 > .elementor-widget-container{margin:48px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-17203 .elementor-element.elementor-element-62a43572 .elementor-heading-title{font-size:9vw;}.elementor-17203 .elementor-element.elementor-element-58d9d48e .elementor-heading-title{font-size:52px;}.elementor-17203 .elementor-element.elementor-element-275a97b6 .elementor-heading-title{font-size:44px;}.elementor-17203 .elementor-element.elementor-element-5204c787 .elementor-heading-title{font-size:42px;}.elementor-17203 .elementor-element.elementor-element-f1fa824 .elementor-heading-title{font-size:44px;}.elementor-17203 .elementor-element.elementor-element-3330cca7 .elementor-heading-title{font-size:44px;}.elementor-17203 .elementor-element.elementor-element-4fc6880c .elementor-heading-title{font-size:36px;}.elementor-17203 .elementor-element.elementor-element-1adc1129 .elementor-heading-title{font-size:44px;}.elementor-17203 .elementor-element.elementor-element-32d2c5c .elementor-heading-title{font-size:44px;}.elementor-17203 .elementor-element.elementor-element-33bc567e .elementor-heading-title{font-size:80px;}}@media(min-width:768px){.elementor-17203 .elementor-element.elementor-element-969e43c{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-660a08e6{--width:55%;}.elementor-17203 .elementor-element.elementor-element-b4bcc46{--width:100%;}.elementor-17203 .elementor-element.elementor-element-251490a7{--width:45%;}.elementor-17203 .elementor-element.elementor-element-65e48a73{--width:100%;}.elementor-17203 .elementor-element.elementor-element-181adfd{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-5127366{--width:100%;}.elementor-17203 .elementor-element.elementor-element-49e8b3ca{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-3c97f84f{--width:33.33%;}.elementor-17203 .elementor-element.elementor-element-43ca9405{--width:33.33%;}.elementor-17203 .elementor-element.elementor-element-2a5ee21{--width:33.33%;}.elementor-17203 .elementor-element.elementor-element-1540de3c{--width:100%;}.elementor-17203 .elementor-element.elementor-element-582c115e{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-3167beec{--width:42%;}.elementor-17203 .elementor-element.elementor-element-54ac11da{--width:58%;}.elementor-17203 .elementor-element.elementor-element-4d5bca3d{--width:100%;}.elementor-17203 .elementor-element.elementor-element-39484b1f{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-7e86ea68{--width:100%;}.elementor-17203 .elementor-element.elementor-element-14151ebf{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-33036f6b{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-11c9807c{--width:100%;}.elementor-17203 .elementor-element.elementor-element-d425d5a{--width:100%;}.elementor-17203 .elementor-element.elementor-element-703e67ca{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-4805c18e{--width:50%;}.elementor-17203 .elementor-element.elementor-element-47ae0247{--width:50%;}.elementor-17203 .elementor-element.elementor-element-3c937df3{--width:100%;}.elementor-17203 .elementor-element.elementor-element-1abc1b4e{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-71d096bd{--width:50%;}.elementor-17203 .elementor-element.elementor-element-2d0a6986{--width:50%;}.elementor-17203 .elementor-element.elementor-element-287e4af8{--width:100%;}.elementor-17203 .elementor-element.elementor-element-7b068dd8{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-66603276{--width:50%;}.elementor-17203 .elementor-element.elementor-element-69f18c02{--width:50%;}.elementor-17203 .elementor-element.elementor-element-7442a4c7{--width:100%;}.elementor-17203 .elementor-element.elementor-element-218156af{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-52d5c3f1{--width:50%;}.elementor-17203 .elementor-element.elementor-element-35df0c07{--width:50%;}.elementor-17203 .elementor-element.elementor-element-bc2630e{--width:100%;}.elementor-17203 .elementor-element.elementor-element-677bd3b6{--content-width:1400px;}.elementor-17203 .elementor-element.elementor-element-a69b7d5{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-17203 .elementor-element.elementor-element-660a08e6{--width:100%;}.elementor-17203 .elementor-element.elementor-element-251490a7{--width:100%;}.elementor-17203 .elementor-element.elementor-element-5127366{--width:100%;}.elementor-17203 .elementor-element.elementor-element-3c97f84f{--width:100%;}.elementor-17203 .elementor-element.elementor-element-43ca9405{--width:100%;}.elementor-17203 .elementor-element.elementor-element-2a5ee21{--width:100%;}.elementor-17203 .elementor-element.elementor-element-3167beec{--width:100%;}.elementor-17203 .elementor-element.elementor-element-54ac11da{--width:100%;}.elementor-17203 .elementor-element.elementor-element-7e86ea68{--width:100%;}.elementor-17203 .elementor-element.elementor-element-11c9807c{--width:100%;}.elementor-17203 .elementor-element.elementor-element-4805c18e{--width:100%;}.elementor-17203 .elementor-element.elementor-element-47ae0247{--width:100%;}.elementor-17203 .elementor-element.elementor-element-71d096bd{--width:100%;}.elementor-17203 .elementor-element.elementor-element-2d0a6986{--width:100%;}.elementor-17203 .elementor-element.elementor-element-66603276{--width:100%;}.elementor-17203 .elementor-element.elementor-element-69f18c02{--width:100%;}.elementor-17203 .elementor-element.elementor-element-52d5c3f1{--width:100%;}.elementor-17203 .elementor-element.elementor-element-35df0c07{--width:100%;}.elementor-17203 .elementor-element.elementor-element-a69b7d5{--width:100%;}}@media(max-width:767px){.elementor-17203 .elementor-element.elementor-element-2315d2b2{--padding-top:110px;--padding-bottom:64px;--padding-left:0px;--padding-right:0px;}.elementor-17203 .elementor-element.elementor-element-969e43c{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-17203 .elementor-element.elementor-element-590089b3 .elementor-heading-title{font-size:11px;letter-spacing:3.5px;}.elementor-17203 .elementor-element.elementor-element-62a43572 .elementor-heading-title{font-size:12vw;}.elementor-17203 .elementor-element.elementor-element-b4bcc46{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;}.elementor-17203 .elementor-element.elementor-element-7651fc77{font-size:16px;}.elementor-17203 .elementor-element.elementor-element-65e48a73{--padding-top:112px;--padding-bottom:112px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-58d9d48e .elementor-heading-title{font-size:38px;}.elementor-17203 .elementor-element.elementor-element-4a72b003{font-size:16px;}.elementor-17203 .elementor-element.elementor-element-1540de3c{--padding-top:112px;--padding-bottom:112px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-275a97b6 .elementor-heading-title{font-size:34px;}.elementor-17203 .elementor-element.elementor-element-1f23c98e{font-size:16px;}.elementor-17203 .elementor-element.elementor-element-4d5bca3d{--padding-top:112px;--padding-bottom:112px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-5204c787 .elementor-heading-title{font-size:32px;}.elementor-17203 .elementor-element.elementor-element-3218ea3e{font-size:16px;}.elementor-17203 .elementor-element.elementor-element-d425d5a{--padding-top:112px;--padding-bottom:112px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-703e67ca{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-17203 .elementor-element.elementor-element-f1fa824 .elementor-heading-title{font-size:34px;}.elementor-17203 .elementor-element.elementor-element-56f41de{font-size:16px;}.elementor-17203 .elementor-element.elementor-element-3c937df3{--padding-top:112px;--padding-bottom:112px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-1abc1b4e{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-17203 .elementor-element.elementor-element-3330cca7 .elementor-heading-title{font-size:34px;}.elementor-17203 .elementor-element.elementor-element-3fe81c2d{font-size:16px;}.elementor-17203 .elementor-element.elementor-element-287e4af8{--padding-top:112px;--padding-bottom:112px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-7b068dd8{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-17203 .elementor-element.elementor-element-4fc6880c .elementor-heading-title{font-size:28px;}.elementor-17203 .elementor-element.elementor-element-7c3df310{font-size:16px;}.elementor-17203 .elementor-element.elementor-element-7442a4c7{--padding-top:112px;--padding-bottom:112px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-218156af{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-17203 .elementor-element.elementor-element-1adc1129 .elementor-heading-title{font-size:34px;}.elementor-17203 .elementor-element.elementor-element-403e162a{font-size:16px;}.elementor-17203 .elementor-element.elementor-element-1cc32c4c{font-size:15px;}.elementor-17203 .elementor-element.elementor-element-32d2c5c .elementor-heading-title{font-size:34px;}.elementor-17203 .elementor-element.elementor-element-bc2630e{--padding-top:112px;--padding-bottom:112px;--padding-left:20px;--padding-right:20px;}.elementor-17203 .elementor-element.elementor-element-33bc567e .elementor-heading-title{font-size:52px;}.elementor-17203 .elementor-element.elementor-element-7ae4e9f4{font-size:16px;}}/* Start custom CSS *//* ==========================================================================
   IMMORTAL HEALTH — GLOBAL CSS
   Ported from the Emergent React build (src/index.css) for Elementor / Astra.

   Paste into: Elementor > Site Settings > Custom CSS
   (or Appearance > Customize > Additional CSS)

   Replace the ENTIRE contents of that panel with this file — do not append.

   Contents
     1.  Design tokens
     2.  Base
     3.  Metallic + outlined text
     4.  Film-grain overlay
     5.  Glass card
     6.  Spotlight backdrop
     7.  Pill buttons  (over-qualified — beats Astra inline CSS)
     8.  Scroll reveal
     9.  Header
     10. Hero
     11. Marquee
     12. Responsive (hero + header)
     13. Shared section furniture
     14. Product cards
     15. Manifesto
     16. Manufacturing steps
     17. Flagship point list
     18. Honey visual
     19. Founder + Wholesale
     20. Reviews
     21. Stockists
     22. Brand statement
     23. Footer
     24. Responsive (sections)
     25. Corrections
     26. Reviews navigation
     27. Stockists band
     28. Footer wordmark
     29. Reviews nav — Astra override
     30. Text rhythm
     31. Widget gap reset
     32. Manifesto corrections
     33. Flagship corrections
     34. Mobile
     35. Product page (PDP)
     36. PDP responsive
     37. Honey product page
     38. Wiser reviews
     39. WooCommerce shop / category archive
     40. Live Google reviews
   ========================================================================== */


/* ==========================================================================
   1. DESIGN TOKENS
   ========================================================================== */
:root {
  --ih-bg:            #030303;
  --ih-bg-alt:        #050505;
  --ih-fg:            #f2f2f2;
  --ih-zinc-100:      #f4f4f5;
  --ih-zinc-200:      #e4e4e7;
  --ih-zinc-300:      #d4d4d8;
  --ih-zinc-400:      #a1a1aa;
  --ih-zinc-500:      #71717a;
  --ih-zinc-700:      #3f3f46;
  --ih-border:        rgba(255, 255, 255, 0.08);
  --ih-border-strong: rgba(255, 255, 255, 0.25);
  --ih-ease:          cubic-bezier(0.16, 1, 0.3, 1);
  --ih-max:           1400px;
}


/* ==========================================================================
   2. BASE
   ========================================================================== */
body {
  background-color: var(--ih-bg);
  color: var(--ih-fg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

::selection { background: #d6d6d6; color: #060606; }

/* Smooth anchor scrolling — replaces the Lenis SmoothScroll component. */
html {
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #2a2a2a #050505;
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

::-webkit-scrollbar { width: 9px; }
::-webkit-scrollbar-track { background: #050505; }
::-webkit-scrollbar-thumb {
  background: linear-gradient(#3a3a3a, #1a1a1a);
  border-radius: 20px;
}


/* ==========================================================================
   3. METALLIC + OUTLINED TEXT
   Applied via .ih-silver on any Elementor widget. Targets the inner text
   node because Elementor puts custom classes on the outer wrapper.
   ========================================================================== */
body .ih-silver .elementor-heading-title,
body .ih-silver .elementor-widget-container > p,
body .ih-silver.ih-inline {
  background-image: linear-gradient(180deg, #ffffff 0%, #cfcfcf 38%, #8f9295 66%, #e9e9e9 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

/* Animated variant — sweeping highlight */
.ih-silver-shine .elementor-heading-title {
  background: linear-gradient(110deg, #6b6e70 0%, #e8e8e8 25%, #ffffff 40%, #9a9d9f 55%, #d7d7d7 75%, #6b6e70 100%);
  background-size: 220% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: ih-shine 7s linear infinite;
}
@keyframes ih-shine {
  to { background-position: -220% center; }
}

/* Outlined text (used by the marquee) */
.ih-stroke .elementor-heading-title,
.ih-stroke-inline {
  color: transparent;
  -webkit-text-stroke: 1px rgba(180, 182, 185, 0.28);
}


/* ==========================================================================
   4. FILM-GRAIN OVERLAY
   Replaces <NoiseOverlay />. Sits above content, never intercepts clicks.
   The .ih-noise class is added to <body> by the JS snippet.
   ========================================================================== */
body.ih-noise::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9999;
  pointer-events: none;
  opacity: 0.045;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}


/* ==========================================================================
   5. GLASS CARD
   ========================================================================== */
.ih-glass {
  background: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border: 1px solid var(--ih-border);
}

.ih-lift {
  transition: transform 0.6s var(--ih-ease),
              border-color 0.6s ease,
              box-shadow 0.6s ease;
}
.ih-lift:hover {
  border-color: var(--ih-border-strong);
  box-shadow: 0 40px 120px -40px rgba(200, 202, 205, 0.25);
}


/* ==========================================================================
   6. SPOTLIGHT BACKDROP
   ========================================================================== */
.ih-spotlight > .e-con-inner::before,
.ih-spotlight::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 60% 55% at 50% 45%, rgba(217, 119, 37, 0.10), transparent 70%),
    radial-gradient(ellipse 40% 45% at 50% 50%, rgba(200, 202, 205, 0.07), transparent 72%);
}


/* ==========================================================================
   7. PILL BUTTONS
   .ih-btn      — pill with a circular arrow disc ("Shop the Collection")
   .ih-btn-pill — flat pill, no arrow (header "Shop Now")

   NOTE ON SPECIFICITY
   Astra ships inline CSS at `body .elementor-button.elementor-size-md`
   (0,2,1) setting padding: 20px 36px and border-radius: 6px. A plain
   `.ih-btn .elementor-button` (0,2,0) loses to it, which is why the button
   rendered as a rounded rectangle. The body.elementor-page-17203s below are deliberately
   over-qualified, with !important on the properties Astra also sets.
   ========================================================================== */
body .elementor .ih-btn .elementor-button,
body .ih-btn .elementor-button.elementor-size-md,
body .ih-btn .elementor-button {
  display: inline-flex !important;
  align-items: center;
  white-space: nowrap;
  gap: 16px;
  border-radius: 9999px !important;
  border: 1px solid var(--ih-border-strong) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  padding: 12px 12px 12px 32px !important;
  color: #ffffff;
  font-size: 12px !important;
  letter-spacing: 3px !important;
  line-height: 1;
  text-transform: uppercase;
  transition: background-color 0.5s ease, color 0.5s ease, border-color 0.5s ease;
}
body .elementor .ih-btn .elementor-button:hover,
body .ih-btn .elementor-button:hover {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: #000000;
}

/* Arrow disc — points right, matching the React (<ArrowDown -rotate-90 />) */
body .ih-btn .elementor-button::after {
  content: "";
  display: flex;
  height: 36px;
  width: 36px;
  flex: 0 0 auto;
  border-radius: 9999px;
  background-color: #ffffff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px 16px;
  transition: transform 0.5s var(--ih-ease), background-color 0.5s ease;
}
body .ih-btn .elementor-button:hover::after {
  transform: translateX(4px);
  background-color: #000000;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E");
}

/* Don't stretch to fill the flex parent */
.ih-btn {
  width: auto;
  flex: 0 0 auto;
}
.ih-btn .elementor-button-wrapper { display: inline-flex; }

/* .ih-btn-down is retained as a no-op so the class can stay on the widget.
   The original design points the arrow right in every instance. */

/* Flat pill, no arrow (header "Shop Now") */
body .elementor .ih-btn-pill .elementor-button,
body .ih-btn-pill .elementor-button {
  display: inline-flex !important;
  align-items: center;
  white-space: nowrap;
  border-radius: 9999px !important;
  border: 1px solid var(--ih-border-strong) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  padding: 10px 24px !important;
  color: var(--ih-zinc-100);
  font-size: 11px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase;
  transition: background-color 0.5s ease, color 0.5s ease, border-color 0.5s ease;
}
body .ih-btn-pill .elementor-button:hover {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: #000000;
}


/* ==========================================================================
   8. SCROLL REVEAL
   Replaces the framer-motion <Reveal> wrapper. Needs the JS snippet;
   degrades to permanently visible if JS is off.
   ========================================================================== */
.ih-reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.9s var(--ih-ease), transform 0.9s var(--ih-ease);
}
.ih-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.no-js .ih-reveal,
.elementor-editor-active .ih-reveal {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .ih-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .ih-silver-shine .elementor-heading-title,
  .ih-marquee-track { animation: none; }
}


/* ==========================================================================
   9. HEADER
   Transparent over the hero, glass panel once scrolled past 40px.
   Needs .ih-header on the outermost header container + the JS snippet.
   ========================================================================== */
.ih-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: transparent;
  border-bottom: 1px solid transparent;
  transition: background-color 0.5s ease,
              backdrop-filter 0.5s ease,
              border-color 0.5s ease;
}
.ih-header.ih-scrolled {
  background: rgba(0, 0, 0, 0.60);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom-color: rgba(255, 255, 255, 0.05);
}

/* Keep it in flow inside the editor so it doesn't cover the canvas */
.elementor-editor-active .ih-header,
body.elementor-editor-active .ih-header { position: relative; }

/* Logo */
.ih-header-logo img {
  height: 76px;
  width: auto;
  object-fit: contain;
  transition: transform 0.5s var(--ih-ease);
}
.ih-header-logo:hover img { transform: scale(1.05); }

/* Nav items */
.ih-nav .elementor-item {
  font-size: 11px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--ih-zinc-400);
  white-space: nowrap;
  padding-left: 10px;
  padding-right: 10px;
  transition: color 0.3s ease;
}
.ih-nav .elementor-item:hover,
.ih-nav .elementor-item.elementor-item-active,
.ih-nav .elementor-item.highlighted {
  color: #ffffff;
}

/* Kill the default underline / pointer animation */
.ih-nav .elementor-item:before,
.ih-nav .elementor-item:after { display: none !important; }

/* Dropdown panel */
.ih-nav .elementor-nav-menu--dropdown {
  background-color: rgba(5, 5, 5, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--ih-border);
}
.ih-nav .elementor-nav-menu--dropdown a {
  font-size: 12px;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--ih-zinc-300);
}
.ih-nav .elementor-nav-menu--dropdown a:hover {
  background-color: rgba(255, 255, 255, 0.04);
  color: #ffffff;
}

/* Burger toggle */
.ih-nav div.elementor-menu-toggle {
  color: var(--ih-zinc-200);
  background: transparent;
}

/* Login link */
.ih-header-login a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--ih-zinc-400);
  transition: color 0.3s ease;
}
.ih-header-login a:hover { color: #ffffff; }


/* ==========================================================================
   10. HERO
   ========================================================================== */
.ih-hero { position: relative; }

/* Eyebrow — short rule before the text */
.ih-eyebrow .elementor-heading-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ih-eyebrow .elementor-heading-title::before {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  background: rgba(255, 255, 255, 0.40);
  flex: 0 0 auto;
}

/* Background overlay — reproduces the two stacked gradients from the React:
     bg-gradient-to-t from-[#030303] via-[#030303]/40 to-[#030303]/70
     radial-gradient(ellipse at center, transparent 35%, rgba(3,3,3,0.65) 100%)
   Elementor's overlay control only supports two stops, so we override the
   whole background-image with both layers here. */
/* Elementor's overlay control only supports two stops, and its overlay
   element is unreliable to target. Instead we disable it and layer both
   gradients directly onto the container background, above the photo. */
.ih-hero > .elementor-background-overlay {
  display: none !important;
}

.ih-hero {
  background-image:
    radial-gradient(ellipse at center, transparent 35%, rgba(3, 3, 3, 0.65) 100%),
    linear-gradient(to top, #030303 0%, rgba(3, 3, 3, 0.40) 50%, rgba(3, 3, 3, 0.70) 100%),
    url("https://immortalhealthaustralia.com/wp-content/uploads/IH/hero-mountain.webp") !important;
  background-size: cover, cover, cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Scroll cue — the "SCROLL" label and bobbing arrow at the foot of the hero.
   Add as an HTML widget dropped directly into the hero root container. */
/* Position the WIDGET WRAPPER, not the div inside it — Elementor's widget
   wrapper becomes the containing block, so absolute rules on the inner div
   resolve against the widget rather than the hero section. */
.ih-hero > .elementor-widget-html {
  position: absolute !important;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  width: auto;
  margin: 0;
}
.ih-scroll-cue {
  position: static;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  pointer-events: none;
}
.ih-scroll-cue span {
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
  line-height: 1;
}
.ih-scroll-cue svg {
  color: var(--ih-zinc-400);
  animation: ih-bob 1.8s ease-in-out infinite;
}
@keyframes ih-bob {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(8px); }
}
@media (prefers-reduced-motion: reduce) {
  .ih-scroll-cue svg { animation: none; }
}

/* Headline — Astra applies uppercase to h1 by default; design is sentence case */
.ih-h1 .elementor-heading-title {
  line-height: 0.95;
  letter-spacing: -0.025em;
  text-transform: none;
}

/* Copy column — clearance from the product group */
.ih-hero-copy { padding-right: 64px; }
.ih-hero-copy > .elementor-element:last-child { max-width: 660px; }

/* Product group */
.ih-product-glow {
  position: relative;
  padding-left: 24px;
}
.ih-product-glow::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 85%;
  height: 72%;
  border-radius: 9999px;
  background: radial-gradient(circle, rgba(200, 202, 205, 0.14), transparent 70%);
  filter: blur(40px);
  pointer-events: none;
}

/* Bottles are sized by height (h-[56vh] / h-[42vh] in the original) so the
   pair stays in proportion to the viewport rather than the column width. */
.ih-bottle img {
  filter: drop-shadow(0 40px 80px rgba(0, 0, 0, 0.7));
  object-fit: contain;
  width: auto;
  max-width: none;
}
.ih-product-glow > .elementor-element {
  width: auto;
  flex: 0 0 auto;
}
/* Counted from the END so an extra widget in this container can't shift them */
.ih-product-glow > .elementor-element:nth-last-child(2) img { height: 56vh; }
.ih-product-glow > .elementor-element:nth-last-child(1) img { height: 42vh; margin-bottom: 8px; }


/* ==========================================================================
   11. MARQUEE
   ========================================================================== */
.ih-marquee {
  overflow: hidden;
  border-top: 1px solid var(--ih-border);
  border-bottom: 1px solid var(--ih-border);
  background: var(--ih-bg-alt);
}
.ih-marquee-track {
  display: inline-flex;
  white-space: nowrap;
  will-change: transform;
  animation: ih-marquee 34s linear infinite;
}
.ih-marquee-track.reverse { animation-direction: reverse; }
@keyframes ih-marquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.ih-marquee-item {
  display: inline-flex;
  align-items: center;
  gap: 56px;
  margin: 0 56px;
  font-size: clamp(2.25rem, 5vw, 4.5rem);
  font-weight: 300;
  letter-spacing: -0.01em;
}


/* ==========================================================================
   12. RESPONSIVE
   ========================================================================== */
@media (max-width: 1024px) {
  .ih-header-logo img { height: 56px; }
  .ih-hero-copy { padding-right: 0; }
  .ih-hero-copy > .elementor-element:last-child { max-width: none; }
  .ih-product-glow { padding-left: 0; }
  .ih-marquee-item { gap: 32px; margin: 0 32px; }
}

@media (max-width: 767px) {
  .ih-eyebrow .elementor-heading-title::before { width: 24px; }

  body .ih-btn .elementor-button {
    padding: 10px 10px 10px 24px !important;
    font-size: 11px !important;
    letter-spacing: 2.5px !important;
  }
  body .ih-btn .elementor-button::after {
    height: 32px;
    width: 32px;
    background-size: 14px 14px;
  }

  .ih-product-glow > .elementor-element:nth-last-child(2) img { height: 38vh; }
  .ih-product-glow > .elementor-element:nth-last-child(1) img { height: 28vh; }
}

/* ==========================================================================
   13. SHARED SECTION FURNITURE
   ========================================================================== */
.ih-section { position: relative; }
.ih-sec-head { max-width: 860px; margin-bottom: 80px; }
.ih-h2 .elementor-heading-title { letter-spacing: -0.02em; text-transform: none; }
.ih-h3 .elementor-heading-title { text-transform: none; }

/* Rounded, bordered media frame with a bottom-up scrim */
.ih-media,
.ih-media .elementor-widget-container {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid var(--ih-border);
}
.ih-media img { display: block; width: 100%; height: auto; }
.ih-media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.40), transparent);
}

/* Softer spotlight for the Flagship band */
.ih-spotlight-soft::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.6;
  background:
    radial-gradient(ellipse 60% 55% at 50% 45%, rgba(217, 119, 37, 0.10), transparent 70%),
    radial-gradient(ellipse 40% 45% at 50% 50%, rgba(200, 202, 205, 0.07), transparent 72%);
}
.ih-glow-top::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 60% 50% at 50% 0%, rgba(200, 202, 205, 0.06), transparent 70%);
}
.ih-glow-honey::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 50% 60% at 80% 50%, rgba(184, 134, 60, 0.14), transparent 70%);
}


/* ==========================================================================
   14. PRODUCT CARDS
   ========================================================================== */
.ih-card-grid { align-items: stretch; }
.ih-card {
  border-radius: 24px;
  overflow: hidden;
  padding: 0 !important;
}
.ih-card-media {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 360px;
  padding: 56px 32px 32px;
  text-decoration: none;
}
.ih-card-media::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.7s ease;
  background: radial-gradient(ellipse at center, rgba(217, 119, 37, 0.10), transparent 65%);
}
.ih-card:hover .ih-card-media::before { opacity: 1; }
.ih-card-media img {
  position: relative;
  z-index: 1;
  height: 280px;
  width: auto;
  object-fit: contain;
  filter: drop-shadow(0 30px 60px rgba(0, 0, 0, 0.6));
  transition: transform 0.7s var(--ih-ease);
}
.ih-card:hover .ih-card-media img { transform: translateY(-8px) scale(1.05); }
.ih-card-num {
  position: absolute;
  top: 32px;
  left: 32px;
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  letter-spacing: 1.5px;
  color: var(--ih-zinc-500);
}
.ih-card-size {
  position: absolute;
  top: 32px;
  right: 32px;
  font-size: 24px;
  background: linear-gradient(180deg, #ffffff 0%, #cfcfcf 38%, #8f9295 66%, #e9e9e9 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.ih-card-foot {
  margin-top: auto;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  border-top: 1px solid var(--ih-border);
  padding: 28px 32px;
  text-decoration: none;
}
.ih-card-brow {
  display: block;
  font-size: 11px;
  letter-spacing: 2.2px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
  margin-bottom: 4px;
}
.ih-card-name {
  display: block;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.05;
  color: var(--ih-zinc-100);
}
.ih-card-arrow {
  display: flex;
  height: 48px;
  width: 48px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: var(--ih-zinc-200);
  transition: background-color 0.5s ease, color 0.5s ease;
}
.ih-card:hover .ih-card-arrow { background: #ffffff; color: #000000; }


/* ==========================================================================
   15. MANIFESTO
   ========================================================================== */
.ih-manifesto-left { position: sticky; top: 112px; align-self: flex-start; }
.ih-manifesto-img { margin-top: 40px; }
.ih-manifesto-img img { height: 256px; object-fit: cover; }

.ih-std {
  position: relative;
  border-top: 1px solid var(--ih-border);
  padding: 44px 0;
}
.ih-std-ghost {
  position: absolute;
  top: -8px;
  right: 0;
  font-size: 128px;
  font-weight: 300;
  line-height: 1;
  user-select: none;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.12), transparent);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.ih-std-body { position: relative; max-width: 576px; }
.ih-std-head { display: flex; align-items: center; gap: 16px; margin-bottom: 12px; }
.ih-std-n {
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  letter-spacing: 1.5px;
  color: var(--ih-zinc-500);
}
.ih-std-title {
  font-size: 36px;
  font-weight: 500;
  color: var(--ih-zinc-100);
  margin: 0;
  text-transform: none;
}
.ih-std-text {
  font-size: 16px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
  margin: 0;
}
.ih-std-rule {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 40%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0.4), transparent);
}


/* ==========================================================================
   16. MANUFACTURING STEPS
   ========================================================================== */
.ih-steps {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 40px 8px;
  border-top: 1px solid var(--ih-border);
  border-bottom: 1px solid var(--ih-border);
  padding: 56px 0;
}
.ih-step {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 0 8px;
}
.ih-step-icon {
  display: flex;
  height: 56px;
  width: 56px;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: var(--ih-zinc-200);
}
.ih-step-label {
  margin-top: 20px;
  font-size: 12px;
  letter-spacing: 2.4px;
  text-transform: uppercase;
  color: var(--ih-zinc-200);
}
.ih-step-sub {
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.625;
  color: var(--ih-zinc-500);
  max-width: 130px;
}
.ih-step-chev {
  position: absolute;
  right: -8px;
  top: 16px;
  color: var(--ih-zinc-700);
}


/* ==========================================================================
   17. FLAGSHIP POINT LIST
   ========================================================================== */
.ih-points { list-style: none; margin: 40px 0 0; padding: 0; }
.ih-point { border-top: 1px solid var(--ih-border); padding-top: 16px; margin-bottom: 16px; }
.ih-point-row { display: flex; align-items: center; gap: 16px; }
.ih-point-icon {
  display: flex;
  height: 36px;
  width: 36px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: var(--ih-zinc-200);
}
.ih-point-label { font-size: 24px; font-weight: 500; color: var(--ih-zinc-100); }
.ih-point-note {
  display: block;
  margin-top: 8px;
  padding-left: 52px;
  font-size: 12px;
  letter-spacing: 2.4px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
}


/* ==========================================================================
   18. HONEY VISUAL
   ========================================================================== */
.ih-honey-visual { position: relative; }
.ih-honey-inset {
  position: absolute;
  bottom: -32px;
  left: -24px;
  width: 176px;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 30px 80px -20px rgba(0, 0, 0, 0.8);
  transform: rotate(-4deg);
}
.ih-honey-inset img { display: block; width: 100%; height: auto; }
.ih-honey-badge {
  position: absolute;
  top: 24px;
  right: 24px;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(8px);
  padding: 6px 16px;
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--ih-zinc-200);
}


/* ==========================================================================
   19. FOUNDER + WHOLESALE
   ========================================================================== */
.ih-founder-img { aspect-ratio: 4 / 5; }
.ih-founder-img img { height: 100%; width: 100%; object-fit: cover; filter: grayscale(1); }
.ih-quote .elementor-heading-title { text-transform: none; }

.ih-whole-img img { height: 440px; width: 100%; object-fit: cover; }
.ih-whole-cap {
  position: absolute;
  bottom: 32px;
  left: 32px;
  z-index: 1;
  font-size: 12px;
  letter-spacing: 3.6px;
  text-transform: uppercase;
  color: var(--ih-zinc-300);
}


/* ==========================================================================
   20. REVIEWS
   ========================================================================== */
.ih-reviews-head {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  max-width: 1400px;
  margin: 0 auto 80px;
  padding: 0 40px;
}
.ih-reviews-brow {
  font-size: 12px;
  letter-spacing: 3.6px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
  margin: 0 0 20px;
}
.ih-reviews-title {
  font-size: 72px;
  font-weight: 500;
  line-height: 0.95;
  letter-spacing: -0.02em;
  margin: 0;
}
.ih-reviews-score { display: flex; align-items: center; gap: 16px; flex: 0 0 auto; }
.ih-reviews-score span { font-size: 14px; color: var(--ih-zinc-400); }
.ih-reviews-score strong { color: var(--ih-zinc-100); font-weight: 500; }
.ih-stars { display: inline-flex; gap: 4px; color: var(--ih-zinc-200); }

.ih-reviews-scroller {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  padding: 0 40px 24px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.ih-reviews-scroller::-webkit-scrollbar { display: none; }
.ih-review {
  scroll-snap-align: start;
  width: 420px;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  padding: 40px;
  margin: 0;
}
.ih-review-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; }
.ih-review-src {
  font-family: "JetBrains Mono", monospace;
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #52525b;
}
.ih-review-text {
  font-size: 24px;
  font-weight: 300;
  line-height: 1.375;
  color: var(--ih-zinc-200);
  flex: 1;
  margin: 0;
}
.ih-review-by { display: flex; align-items: center; gap: 12px; margin-top: 32px; }
.ih-review-avatar {
  display: flex;
  height: 40px;
  width: 40px;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  font-size: 14px;
}
.ih-review-by span:last-child { font-size: 14px; color: var(--ih-zinc-300); }


/* ==========================================================================
   21. STOCKISTS
   ========================================================================== */
.ih-stockists-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 48px;
}
.ih-stockists-intro { max-width: 672px; }
.ih-stockists-brow {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  letter-spacing: 3.6px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
  margin: 0 0 16px;
}
.ih-stockists-title {
  font-size: 60px;
  font-weight: 500;
  line-height: 0.98;
  letter-spacing: -0.02em;
  margin: 0;
}
.ih-stockists-lede {
  margin: 20px 0 0;
  font-size: 18px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
  max-width: 576px;
}
.ih-stockists-panel { border-radius: 24px; padding: 32px; }

.ih-search {
  display: flex;
  align-items: center;
  gap: 12px;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
  padding: 12px 20px;
  color: var(--ih-zinc-500);
}
.ih-search input {
  width: 100%;
  background: transparent;
  border: 0;
  outline: none;
  color: var(--ih-zinc-100);
  font-family: inherit;
  font-size: 15px;
}
.ih-search input::placeholder { color: #52525b; }

.ih-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.ih-chip {
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: transparent;
  padding: 6px 16px;
  font-family: inherit;
  font-size: 11px;
  letter-spacing: 1.65px;
  text-transform: uppercase;
  color: var(--ih-zinc-400);
  cursor: pointer;
  transition: all 0.3s ease;
}
.ih-chip:hover { border-color: rgba(255, 255, 255, 0.4); color: #ffffff; }
.ih-chip.is-active { border-color: #ffffff; background: #ffffff; color: #000000; }

.ih-stockist-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 28px;
}
.ih-stockist {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  border-radius: 16px;
  border: 1px solid var(--ih-border);
  background: rgba(255, 255, 255, 0.02);
  padding: 20px;
  transition: border-color 0.3s ease;
}
.ih-stockist:hover { border-color: rgba(255, 255, 255, 0.2); }
.ih-stockist-pin {
  margin-top: 2px;
  display: flex;
  height: 32px;
  width: 32px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: var(--ih-zinc-300);
}
.ih-stockist-name { margin: 0; color: var(--ih-zinc-100); line-height: 1.2; }
.ih-stockist-loc {
  margin: 4px 0 0;
  font-size: 12px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
}
.ih-stockist-empty {
  grid-column: 1 / -1;
  padding: 32px 0;
  text-align: center;
  font-size: 14px;
  color: var(--ih-zinc-500);
}
.ih-stockist-count { margin: 24px 0 0; font-size: 11px; color: #52525b; }

/* Plain <a> styled as the pill button (used outside Elementor button widgets) */
.ih-plain-btn {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  flex: 0 0 auto;
  white-space: nowrap;
  border-radius: 9999px;
  border: 1px solid var(--ih-border-strong);
  background: rgba(255, 255, 255, 0.05);
  padding: 12px 12px 12px 32px;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #ffffff;
  text-decoration: none;
  transition: background-color 0.5s ease, color 0.5s ease;
}
.ih-plain-btn:hover { background: #ffffff; color: #000000; }
.ih-plain-btn-arrow {
  display: flex;
  height: 36px;
  width: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background: #ffffff;
  color: #000000;
  transition: transform 0.5s var(--ih-ease), background-color 0.5s ease, color 0.5s ease;
}
.ih-plain-btn:hover .ih-plain-btn-arrow {
  transform: translateX(4px);
  background: #000000;
  color: #ffffff;
}


/* ==========================================================================
   22. BRAND STATEMENT
   ========================================================================== */
.ih-brand-statement {
  background-image:
    linear-gradient(to bottom, #030303 0%, rgba(3, 3, 3, 0.70) 50%, #030303 100%),
    url("https://immortalhealthaustralia.com/wp-content/uploads/IH/glacier.webp") !important;
  background-size: cover, cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.ih-bs { text-align: center; align-items: center; }

/* Inverted pill — white by default, transparent on hover */
body .ih-btn-invert .elementor-button {
  background: #ffffff !important;
  color: #000000;
}
body .ih-btn-invert .elementor-button:hover {
  background: rgba(255, 255, 255, 0.05) !important;
  color: #ffffff;
}
body .ih-btn-invert .elementor-button::after {
  background-color: #000000;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E");
}


/* ==========================================================================
   23. FOOTER
   ========================================================================== */
.ih-footer { position: relative; }
.ih-foot-top { padding-bottom: 80px; border-bottom: 1px solid var(--ih-border); }
.ih-foot-logo { height: 80px; width: auto; object-fit: contain; margin-bottom: 24px; }
.ih-foot-blurb {
  max-width: 384px;
  font-size: 14px;
  line-height: 1.625;
  color: var(--ih-zinc-500);
  margin: 0;
}
.ih-foot-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 32px; }
.ih-foot-tags span {
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 4px 12px;
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
}
.ih-foot-links { display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; }
.ih-foot-head {
  font-size: 12px;
  letter-spacing: 2.4px;
  text-transform: uppercase;
  color: #52525b;
  margin: 0 0 20px;
}
.ih-foot-col ul { list-style: none; margin: 0; padding: 0; }
.ih-foot-col li { margin-bottom: 12px; }
.ih-foot-col a {
  font-size: 14px;
  color: var(--ih-zinc-400);
  text-decoration: none;
  transition: color 0.3s ease;
}
.ih-foot-col a:hover { color: #ffffff; }
.ih-foot-legal {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 32px 0;
}
.ih-foot-legal p { margin: 0; font-size: 12px; color: #52525b; }
.ih-foot-legal-tag { letter-spacing: 1.8px; text-transform: uppercase; }
.ih-foot-wordmark {
  overflow: hidden;
  margin-bottom: -32px;
  pointer-events: none;
  user-select: none;
}
.ih-foot-wordmark span {
  display: block;
  text-align: center;
  white-space: nowrap;
  font-size: 19vw;
  font-weight: 300;
  line-height: 1;
}


/* ==========================================================================
   24. RESPONSIVE — SECTIONS
   ========================================================================== */
@media (max-width: 1024px) {
  .ih-sec-head { margin-bottom: 56px; }
  .ih-manifesto-left { position: static; }
  .ih-card-grid { flex-wrap: wrap; }
  .ih-steps { grid-template-columns: repeat(3, 1fr); }
  .ih-step-chev { display: none; }
  .ih-std-ghost { font-size: 88px; }
  .ih-std-title { font-size: 28px; }
  .ih-reviews-head { padding: 0 20px; flex-direction: column; align-items: flex-start; }
  .ih-reviews-title { font-size: 44px; }
  .ih-reviews-scroller { padding: 0 20px 24px; }
  .ih-stockists-head { flex-direction: column; align-items: flex-start; }
  .ih-stockists-title { font-size: 44px; }
  .ih-stockist-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
  .ih-card-media { min-height: 300px; padding: 40px 24px 24px; }
  .ih-card-media img { height: 220px; }
  .ih-card-foot { padding: 24px; }
  .ih-card-name { font-size: 22px; }
  .ih-steps { grid-template-columns: repeat(2, 1fr); padding: 40px 0; }
  .ih-std { padding: 32px 0; }
  .ih-std-ghost { font-size: 64px; }
  .ih-std-title { font-size: 24px; }
  .ih-point-label { font-size: 20px; }
  .ih-honey-inset { width: 128px; left: -12px; bottom: -20px; }
  .ih-review { width: 85vw; padding: 28px; }
  .ih-review-text { font-size: 20px; }
  .ih-reviews-title { font-size: 34px; }
  .ih-stockists-panel { padding: 20px; }
  .ih-stockist-grid { grid-template-columns: 1fr; }
  .ih-stockists-title { font-size: 34px; }
  .ih-foot-links { grid-template-columns: 1fr; }
  .ih-foot-legal { flex-direction: column; text-align: center; }
  .ih-plain-btn { padding-left: 24px; font-size: 11px; }
}


/* ==========================================================================
   25. CORRECTIONS
   Fixes applied after first render against the reference build.
   ========================================================================== */

/* ---- Astra uppercases headings globally. The design is sentence case, and
        headings inside HTML widgets aren't covered by the .ih-h2 rules. ---- */
.ih-reviews h2,
.ih-stockists h2,
.ih-footer h2,
.ih-reviews-title,
.ih-stockists-title,
.ih-std-title,
.ih-bs .elementor-heading-title {
  text-transform: none !important;
}

/* ---- Footer logo. Astra's `img { height: auto }` was overriding the height,
        so the full 900px asset rendered at natural size. ---- */
.ih-foot-logo {
  height: 80px !important;
  width: auto !important;
  max-width: none !important;
  object-fit: contain;
}

/* ---- Reviews and Stockists are boxed, not full-bleed. Both sit inside the
        same 1400px measure as every other section. ---- */
.ih-reviews,
.ih-stockists {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
.ih-reviews-head {
  padding-left: 0;
  padding-right: 0;
  margin-bottom: 56px;
}
.ih-reviews-scroller {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 24px;
}

@media (max-width: 1440px) {
  .ih-reviews,
  .ih-stockists { padding-left: 20px; padding-right: 20px; }
}

@media (max-width: 1024px) {
  .ih-reviews-head { padding-left: 0; padding-right: 0; }
  .ih-reviews-scroller { padding-left: 0; padding-right: 0; }
  .ih-foot-logo { height: 64px !important; }
}


/* ==========================================================================
   26. REVIEWS NAVIGATION
   ========================================================================== */
.ih-reviews-meta {
  display: flex;
  align-items: center;
  gap: 24px;
  flex: 0 0 auto;
}
.ih-reviews-nav { display: flex; gap: 8px; }
.ih-rev-nav {
  display: flex;
  height: 44px;
  width: 44px;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid var(--ih-border-strong);
  background: rgba(255, 255, 255, 0.05);
  color: var(--ih-zinc-200);
  cursor: pointer;
  transition: background-color 0.4s ease, color 0.4s ease,
              border-color 0.4s ease, opacity 0.3s ease;
}
.ih-rev-nav:hover:not(:disabled) {
  background: #ffffff;
  border-color: #ffffff;
  color: #000000;
}
.ih-rev-nav:disabled {
  opacity: 0.3;
  cursor: default;
}

/* Scroll snapping fights programmatic scrollBy in some browsers; proximity
   keeps the tidy alignment without hijacking the arrows. */
.ih-reviews-scroller { scroll-snap-type: x proximity; }


/* ==========================================================================
   27. STOCKISTS BAND
   Add the class "ih-stockists-band" to the Stockists CONTAINER in Elementor
   (Advanced > CSS Classes) to get the hairline rules above and below.
   ========================================================================== */
.ih-stockists-band {
  border-top: 1px solid var(--ih-border);
  border-bottom: 1px solid var(--ih-border);
}


/* ==========================================================================
   28. FOOTER WORDMARK
   "IMMORTAL" is wider than the 1400px measure at 19vw, so it was being
   clipped by the boxed container. Break it out to full viewport width.
   ========================================================================== */
.ih-foot-wordmark-wrap {
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.ih-foot-wordmark {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-bottom: -2vw;
  overflow: hidden;
}
.ih-foot-wordmark span {
  display: block;
  width: 100%;
  text-align: center;
  white-space: nowrap;
  font-size: 17vw;
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.01em;
}

@media (max-width: 1024px) {
  .ih-reviews-meta { flex-wrap: wrap; gap: 16px; }
  .ih-foot-wordmark span { font-size: 18vw; }
}
@media (max-width: 767px) {
  .ih-rev-nav { height: 38px; width: 38px; }
}


/* ==========================================================================
   29. REVIEWS NAV — ASTRA OVERRIDE
   Astra styles every <button> globally (padding, radius, colour) and was
   beating section 26, turning the circles into pills and rendering the
   arrow strokes in a dark inherited colour.
   ========================================================================== */
body .ih-reviews .ih-rev-nav,
body .elementor .ih-reviews .ih-rev-nav {
  display: inline-flex !important;
  height: 44px !important;
  width: 44px !important;
  min-width: 44px !important;
  padding: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 9999px !important;
  border: 1px solid var(--ih-border-strong) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  background-color: rgba(255, 255, 255, 0.05) !important;
  color: #e4e4e7 !important;
  box-shadow: none !important;
  cursor: pointer;
}
body .ih-reviews .ih-rev-nav:hover:not(:disabled) {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-color: #ffffff !important;
}
body .ih-reviews .ih-rev-nav:disabled { opacity: 0.3 !important; cursor: default; }

/* Arrow glyph — set explicitly rather than via currentColor */
body .ih-reviews .ih-rev-nav svg {
  display: block;
  width: 18px;
  height: 18px;
  stroke: #e4e4e7 !important;
  fill: none !important;
}
body .ih-reviews .ih-rev-nav:hover:not(:disabled) svg { stroke: #000000 !important; }

@media (max-width: 767px) {
  body .ih-reviews .ih-rev-nav {
    height: 38px !important;
    width: 38px !important;
    min-width: 38px !important;
  }
}


/* ==========================================================================
   30. TEXT RHYTHM
   Astra puts a ~1.6em bottom margin on every <p> and heading. Widget spacing
   is already set per-widget in the templates, so the theme margin was being
   added on top and roughly doubling every gap. Zero it out and let the
   widget margins do the work.

   Reference spacing from the source build:
     eyebrow -> h2      20px   (mb-5)
     h2 -> body         24px   (mt-6)
     body -> body       16px   (mt-4)
     body -> button     40px   (mt-10)
   ========================================================================== */
.ih-section .elementor-widget-text-editor p,
.ih-footer .elementor-widget-text-editor p {
  margin: 0 !important;
}
.ih-section .elementor-heading-title,
.ih-footer .elementor-heading-title {
  margin: 0 !important;
}

/* The text-editor wrapper itself can also pick up theme margins */
.ih-section .elementor-widget-text-editor .elementor-widget-container,
.ih-section .elementor-widget-heading .elementor-widget-container {
  margin: 0;
}

/* Blockquote (Founder) has its own theme margin */
.ih-quote blockquote,
.ih-section blockquote {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}


/* ==========================================================================
   31. WIDGET GAP RESET
   Elementor sets --widgets-spacing: 20px on every container, applied as a
   flex gap between child widgets. The section templates set exact margins
   per widget, so that 20px was being added on top of every gap.

   Zero the gap on the copy columns and let the per-widget margins define
   the rhythm. The hero is deliberately excluded — its spacing is already
   correct and tuned against the reference.
   ========================================================================== */
.ih-copy-col,
.ih-sec-head,
.ih-bs,
.ih-manifesto-left,
.ih-std-list {
  --widgets-spacing: 0px 0px;
  --widgets-spacing-row: 0px;
  --widgets-spacing-column: 0px;
  gap: 0 !important;
  row-gap: 0 !important;
}

/* Manifesto rows carry their own padding, so keep them flush */
.ih-std-list > .elementor-element { margin: 0 !important; }


/* ==========================================================================
   32. MANIFESTO — CORRECTIONS
   ========================================================================== */

/* ---- Sticky left column ----
   position: sticky is cancelled by overflow:hidden on ANY ancestor, and the
   section template sets it. Clear it on this section only, then pin. */
#manifesto,
#manifesto > .e-con-inner,
#manifesto .e-con-inner {
  overflow: visible !important;
}
.ih-manifesto-left {
  position: sticky !important;
  top: 112px;
  align-self: flex-start !important;
  height: -moz-fit-content;
  height: fit-content;
}

/* ---- Row separators ----
   Drop the full-width top rule; the short gradient rule is the divider. */
.ih-std {
  border-top: 0 !important;
  /* matches py-9 / md:py-11 in the source build */
  padding: 44px 0;
}
.ih-std-rule {
  bottom: 0;
  height: 1px;
  width: 38%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0.45), transparent);
}

/* ---- Tighter vertical rhythm ---- */
.ih-std-head { margin-bottom: 12px; }
.ih-std-title { font-size: 32px; }
.ih-std-text { font-size: 16px; }
.ih-std-ghost { font-size: 104px; top: -8px; }

#manifesto {
  padding-top: 144px !important;
  padding-bottom: 144px !important;
}

@media (max-width: 1024px) {
  .ih-manifesto-left { position: static !important; }
  .ih-std { padding: 36px 0; }
  .ih-std-title { font-size: 28px; }
  .ih-std-ghost { font-size: 80px; }
  #manifesto {
    padding-top: 96px !important;
    padding-bottom: 96px !important;
  }
}


/* ==========================================================================
   33. FLAGSHIP — CORRECTIONS
   ========================================================================== */

/* Bolder point labels */
.ih-point-label {
  font-weight: 600;
  font-size: 23px;
  letter-spacing: -0.01em;
}

/* Tighter list rhythm — the reference sits ~46px per row, ours was ~52px */
.ih-points { margin-top: 32px; }
.ih-point {
  padding-top: 13px;
  margin-bottom: 10px;
}
.ih-point:last-child { margin-bottom: 0; }
.ih-point-icon { height: 34px; width: 34px; }
.ih-point-row { gap: 14px; }
.ih-point-note {
  margin-top: 6px;
  padding-left: 48px;
  font-size: 11px;
}

/* Section padding down from 160px */
#tq {
  padding-top: 128px !important;
  padding-bottom: 128px !important;
}

@media (max-width: 1024px) {
  .ih-point-label { font-size: 20px; }
  .ih-point-icon { height: 30px; width: 30px; }
  .ih-point-note { padding-left: 44px; }
  #tq {
    padding-top: 96px !important;
    padding-bottom: 96px !important;
  }
}


/* ==========================================================================
   34. MOBILE
   ========================================================================== */

/* ---- Marquee padding (missing entirely — source uses py-10 md:py-14) ---- */
.ih-marquee { padding: 56px 0; }
@media (max-width: 767px) {
  .ih-marquee { padding: 40px 0; }
  .ih-marquee-item {
    gap: 24px;
    margin: 0 24px;
    font-size: 2.25rem;
  }
}

/* ---- Header ----
   Logo left, burger right. Login hides below desktop, Shop Now below 640px,
   matching `hidden xl:inline-flex` and `hidden sm:inline-flex` in the source. */
@media (max-width: 1024px) {
  .ih-header .e-con-inner {
    flex-wrap: nowrap !important;
    align-items: center !important;
  }
  .ih-header .e-con-inner > .e-con:nth-child(1) {
    width: auto !important;
    flex: 1 1 auto !important;
  }
  .ih-header .e-con-inner > .e-con:nth-child(2) {
    width: auto !important;
    flex: 0 0 auto !important;
    order: 3;
  }
  .ih-header .e-con-inner > .e-con:nth-child(3) {
    width: auto !important;
    flex: 0 0 auto !important;
  }
  .ih-header-login { display: none !important; }
  .ih-nav .elementor-menu-toggle { margin-left: auto; }
}
@media (max-width: 639px) {
  .ih-header .ih-btn-pill { display: none !important; }
}

/* ---- Hero product group ----
   Elementor containers default to flex-wrap: wrap, which was stacking the
   two bottles vertically instead of sitting them side by side. */
.ih-product-glow {
  flex-wrap: nowrap !important;
}
@media (max-width: 767px) {
  .ih-product-glow > .elementor-element:nth-last-child(2) img { height: 30vh; }
  .ih-product-glow > .elementor-element:nth-last-child(1) img { height: 22vh; }
  .ih-hero > .elementor-widget-html { bottom: 16px; }
}

/* ---- Section padding ---- */
@media (max-width: 767px) {
  .ih-section {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
  #manifesto,
  #tq {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
  .ih-sec-head { margin-bottom: 40px; }
}

/* ---- Manufacturing steps ---- */
@media (max-width: 767px) {
  .ih-steps { gap: 32px 12px; padding: 36px 0; }
  .ih-step-icon { height: 46px; width: 46px; }
  .ih-step-label { margin-top: 14px; font-size: 11px; letter-spacing: 1.8px; }
  .ih-step-sub { font-size: 11px; max-width: 120px; }
}

/* ---- Stockists ----
   The nested paddings (section + block + panel) were squeezing the cards to
   about half the screen width. Collapse them on small screens. */
@media (max-width: 767px) {
  .ih-stockists { padding-left: 0; padding-right: 0; }
  .ih-stockists-panel { padding: 16px; border-radius: 18px; }
  .ih-stockists-head { gap: 24px; margin-bottom: 32px; }
  .ih-stockist {
    width: 100%;
    padding: 16px;
    align-items: center;
  }
  .ih-stockist-name { font-size: 15px; }
  .ih-stockist-loc { font-size: 11px; }
  .ih-chips { gap: 6px; }
  .ih-chip { padding: 5px 12px; font-size: 10px; }
  .ih-plain-btn { width: 100%; justify-content: space-between; }
}

/* ---- Footer ---- */
@media (max-width: 767px) {
  .ih-foot-top { padding-bottom: 48px; }
  .ih-foot-links { gap: 32px; }
  .ih-foot-legal { gap: 8px; }
  .ih-foot-wordmark span { font-size: 22vw; }
}

/* ---- Product cards ---- */
@media (max-width: 767px) {
  .ih-card-grid { gap: 20px; }
}


/* ==========================================================================
   35. PRODUCT PAGE (PDP)
   Used by the Black Seed Oil 100ml and 200ml pages.
   ========================================================================== */

.ih-pdp,
.ih-pdp-sec {
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
}

.ih-pdp-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 40px;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
  text-decoration: none;
  transition: color 0.3s ease;
}
.ih-pdp-back:hover { color: #ffffff; }

.ih-pdp-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: start;
}

/* ---- Gallery ---- */
.ih-pdp-gallery { display: flex; gap: 16px; }
.ih-pdp-thumbs {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 0 0 auto;
}
.ih-pdp-thumb {
  height: 64px;
  width: 64px;
  flex: 0 0 auto;
  overflow: hidden;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: transparent;
  padding: 0;
  cursor: pointer;
  transition: border-color 0.3s ease;
}
.ih-pdp-thumb:hover { border-color: rgba(255, 255, 255, 0.4); }
.ih-pdp-thumb.is-active { border-color: #ffffff; }
.ih-pdp-thumb img { height: 100%; width: 100%; display: block; }
.ih-fit-contain { object-fit: contain; padding: 6px; }
.ih-fit-cover { object-fit: cover; }

.ih-pdp-stage {
  position: relative;
  flex: 1 1 auto;
  min-height: 440px;
  border-radius: 24px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ih-pdp-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.7;
  pointer-events: none;
  background:
    radial-gradient(ellipse 60% 55% at 50% 45%, rgba(217, 119, 37, 0.10), transparent 70%),
    radial-gradient(ellipse 40% 45% at 50% 50%, rgba(200, 202, 205, 0.07), transparent 72%);
}
.ih-pdp-stage-img {
  display: none;
  position: relative;
  z-index: 1;
  animation: ih-fade-in 0.6s var(--ih-ease);
}
.ih-pdp-stage-img.is-active { display: block; }
.ih-pdp-stage-img.ih-fit-contain {
  height: 380px;
  width: auto;
  padding: 0;
  filter: drop-shadow(0 40px 80px rgba(0, 0, 0, 0.7));
}
.ih-pdp-stage-img.ih-fit-cover {
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
}
@keyframes ih-fade-in {
  from { opacity: 0; transform: scale(0.98); }
  to   { opacity: 1; transform: scale(1); }
}

/* ---- Info column ---- */
.ih-pdp-brow {
  font-size: 12px;
  letter-spacing: 3.6px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
  margin: 0 0 12px;
}
.ih-pdp-title {
  font-size: 48px;
  font-weight: 500;
  line-height: 0.98;
  letter-spacing: -0.02em;
  margin: 0;
  text-transform: none;
}
.ih-pdp-rating {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}
.ih-pdp-rating span { font-size: 14px; color: var(--ih-zinc-400); }
.ih-pdp-lede {
  margin: 20px 0 0;
  font-size: 18px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
  max-width: 576px;
}

/* ---- Feature badges ---- */
.ih-pdp-badges {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
  margin-top: 32px;
  padding: 24px 0;
  border-top: 1px solid var(--ih-border);
  border-bottom: 1px solid var(--ih-border);
}
.ih-pdp-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
}
.ih-pdp-badge img {
  height: 64px;
  width: 64px;
  object-fit: contain;
  filter: drop-shadow(0 6px 16px rgba(0, 0, 0, 0.5));
}
.ih-pdp-badge span {
  font-size: 10px;
  line-height: 1.25;
  color: var(--ih-zinc-400);
}

/* ---- Size body.elementor-page-17203 ---- */
.ih-sizes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 32px;
}
.ih-size {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.02);
  padding: 16px;
  text-decoration: none;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}
.ih-size:hover { border-color: rgba(255, 255, 255, 0.3); }
.ih-size.is-active {
  border-color: #ffffff;
  background: rgba(255, 255, 255, 0.10);
}
.ih-size-radio {
  position: absolute;
  top: 12px;
  right: 12px;
  height: 16px;
  width: 16px;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.3);
}
.ih-size.is-active .ih-size-radio {
  border-color: #ffffff;
  background: #ffffff;
  box-shadow: inset 0 0 0 5px #ffffff, inset 0 0 0 6px #000000;
}
.ih-size img { height: 56px; width: auto; object-fit: contain; flex: 0 0 auto; }
.ih-size-name {
  display: block;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  color: var(--ih-zinc-100);
}
.ih-size-price {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  color: var(--ih-zinc-300);
}
.ih-size-note {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.25;
  color: var(--ih-zinc-500);
  max-width: 110px;
}

/* ---- Quantity + cart ---- */
.ih-pdp-buy { display: flex; gap: 12px; margin-top: 24px; }
.ih-qty {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 8px;
  width: 144px;
  flex: 0 0 auto;
}
body .ih-qty .ih-qty-btn {
  display: flex;
  height: 36px;
  width: 36px;
  min-width: 36px;
  padding: 0 !important;
  align-items: center;
  justify-content: center;
  border-radius: 9999px !important;
  border: 0 !important;
  background: transparent !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
body .ih-qty .ih-qty-btn:hover { background: rgba(255, 255, 255, 0.1) !important; }
.ih-qty-val { font-size: 15px; color: var(--ih-zinc-100); }

.ih-cart-btn {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  gap: 12px;
  border-radius: 9999px;
  background: #ffffff;
  padding: 14px 32px;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #000000;
  text-decoration: none;
  transition: background-color 0.5s ease;
}
.ih-cart-btn:hover { background: var(--ih-zinc-200); color: #000000; }
.ih-cart-btn svg { transition: transform 0.5s var(--ih-ease); }
.ih-cart-btn:hover svg { transform: translateX(4px); }

/* ---- Trust row ---- */
.ih-pdp-trust {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 32px;
}
.ih-trust { display: flex; align-items: flex-start; gap: 8px; }
.ih-trust svg { margin-top: 2px; flex: 0 0 auto; }
.ih-trust strong {
  display: block;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.25;
  color: var(--ih-zinc-200);
}
.ih-trust em {
  display: block;
  font-size: 10px;
  font-style: normal;
  color: #52525b;
}

/* ---- Shared PDP headings ---- */
.ih-pdp-h2 {
  font-size: 60px;
  font-weight: 500;
  line-height: 0.98;
  letter-spacing: -0.02em;
  margin: 0;
  text-transform: none !important;
}
.ih-center { text-align: center; }

/* ---- Value strip ---- */
.ih-values {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  max-width: 1400px;
  margin: 0 auto;
}
.ih-val { display: flex; flex-direction: column; align-items: center; text-align: center; }
.ih-val-icon {
  display: flex;
  height: 48px;
  width: 48px;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
}
.ih-val-title {
  margin: 16px 0 0;
  font-size: 12px;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--ih-zinc-200);
}
.ih-val-body {
  margin: 8px 0 0;
  font-size: 12px;
  line-height: 1.625;
  color: var(--ih-zinc-500);
  max-width: 220px;
}

/* ---- Process ---- */
.ih-proc-grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 40px;
  margin-top: 64px;
}
.ih-proc-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.ih-proc { border-radius: 16px; padding: 28px; height: 100%; }
.ih-proc-n {
  display: flex;
  height: 36px;
  width: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  color: var(--ih-zinc-200);
}
.ih-proc-title {
  margin: 20px 0 0;
  font-size: 24px;
  font-weight: 500;
  color: var(--ih-zinc-100);
  text-transform: none;
}
.ih-proc-body {
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
}

.ih-sourcing {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.03);
  padding: 32px;
  height: 100%;
}
.ih-sourcing-brow {
  margin: 0 0 20px;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
}
.ih-sourcing-body p {
  margin: 0 0 16px;
  font-size: 14px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
}
.ih-sourcing-body p:last-child { margin-bottom: 0; }

.ih-text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 32px;
  font-size: 12px;
  letter-spacing: 2.4px;
  text-transform: uppercase;
  color: var(--ih-zinc-200);
  text-decoration: none;
  transition: color 0.3s ease;
}
.ih-text-link:hover { color: #ffffff; }
.ih-text-link svg { transition: transform 0.5s var(--ih-ease); }
.ih-text-link:hover svg { transform: translateX(4px); }

/* ---- Lab ---- */
.ih-lab-head { max-width: 672px; margin-bottom: 56px; }
.ih-lab-pts {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-top: 32px;
}
.ih-lab-pt { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.ih-lab-pt > span:last-child {
  font-size: 12px;
  line-height: 1.25;
  color: var(--ih-zinc-300);
}
.ih-lab-icon {
  display: flex;
  height: 40px;
  width: 40px;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
}
.ih-lab-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.ih-batch { border-radius: 24px; padding: 32px; }
.ih-batch-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 16px; }
.ih-batch-k {
  margin: 0;
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #52525b;
}
.ih-batch-v { margin: 4px 0 0; font-size: 14px; color: var(--ih-zinc-200); }
.ih-batch-v.ih-mono {
  font-family: "JetBrains Mono", monospace;
  font-size: 18px;
  color: var(--ih-zinc-100);
}
.ih-pill-sm {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 32px;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 10px 24px;
  font-size: 11px;
  letter-spacing: 2.2px;
  text-transform: uppercase;
  color: var(--ih-zinc-100);
  text-decoration: none;
  transition: background-color 0.5s ease, color 0.5s ease;
}
.ih-pill-sm:hover { background: #ffffff; color: #000000; }

.ih-tq {
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.03);
  padding: 32px;
}
.ih-tq-body {
  margin: 0;
  font-size: 16px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
}

/* ---- What to expect ---- */
.ih-exp-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
  margin-top: 56px;
}
.ih-exp { border-radius: 16px; padding: 24px; height: 100%; }
.ih-exp-n {
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  color: #52525b;
}
.ih-exp-title {
  margin: 12px 0 0;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.15;
  color: var(--ih-zinc-100);
  text-transform: none;
}
.ih-exp-body {
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
}

/* ---- Details + FAQ accordions ---- */
.ih-acc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; }
.ih-acc { border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
.ih-acc-q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 0;
  font-size: 20px;
  font-weight: 500;
  color: var(--ih-zinc-100);
  cursor: pointer;
  list-style: none;
  transition: color 0.3s ease;
}
.ih-acc-q::-webkit-details-marker { display: none; }
.ih-acc-q:hover { color: #ffffff; }
.ih-acc-i { flex: 0 0 auto; display: flex; transition: transform 0.4s var(--ih-ease); }
.ih-acc[open] .ih-acc-i { transform: rotate(180deg); }
.ih-acc-a {
  padding: 0 0 20px;
  font-size: 14px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
}

/* ---- PDP reviews ---- */
.ih-pdp-rev-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 48px;
}
.ih-pdp-rev-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.ih-pdp-rev-grid .ih-review {
  width: auto;
  border-radius: 24px;
  padding: 32px;
}
.ih-pdp-rev-grid .ih-review-text { font-size: 20px; margin-top: 20px; }

/* ---- Final CTA ---- */
.ih-final-cta {
  position: relative;
  overflow: hidden;
  background-image:
    linear-gradient(to bottom, #030303 0%, rgba(3, 3, 3, 0.70) 50%, #030303 100%),
    url("https://immortalhealthaustralia.com/wp-content/uploads/IH/mountain-mist.webp");
  background-size: cover, cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.ih-final-inner {
  position: relative;
  max-width: 900px;
  margin: 0 auto;
  padding: 160px 40px;
  text-align: center;
}
.ih-final-h2 {
  font-size: 72px;
  font-weight: 500;
  line-height: 0.95;
  letter-spacing: -0.02em;
  margin: 0;
  text-transform: none !important;
}
.ih-final-lede {
  max-width: 512px;
  margin: 24px auto 0;
  font-size: 18px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
}
.ih-final-sizes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  max-width: 448px;
  margin: 40px auto 0;
  text-align: left;
}

/* ==========================================================================
   36. PDP RESPONSIVE
   ========================================================================== */
@media (max-width: 1024px) {
  .ih-pdp-grid { grid-template-columns: 1fr; gap: 40px; }
  .ih-pdp-title { font-size: 38px; }
  .ih-pdp-h2 { font-size: 40px; }
  .ih-final-h2 { font-size: 48px; }
  .ih-proc-grid { grid-template-columns: 1fr; gap: 24px; }
  .ih-lab-grid { grid-template-columns: 1fr; }
  .ih-acc-grid { grid-template-columns: 1fr; gap: 48px; }
  .ih-exp-grid { grid-template-columns: repeat(2, 1fr); }
  .ih-pdp-rev-grid { grid-template-columns: 1fr; }
  .ih-pdp-rev-head { flex-direction: column; align-items: flex-start; }
  .ih-values { grid-template-columns: repeat(2, 1fr); gap: 32px 16px; }
  .ih-final-inner { padding: 112px 24px; }
}

@media (max-width: 767px) {
  .ih-pdp-back { margin-bottom: 24px; }
  .ih-pdp-gallery { flex-direction: column-reverse; gap: 12px; }
  .ih-pdp-thumbs { flex-direction: row; overflow-x: auto; scrollbar-width: none; }
  .ih-pdp-thumbs::-webkit-scrollbar { display: none; }
  .ih-pdp-thumb { height: 56px; width: 56px; }
  .ih-pdp-stage { min-height: 320px; }
  .ih-pdp-stage-img.ih-fit-contain { height: 260px; }

  .ih-pdp-title { font-size: 30px; }
  .ih-pdp-lede { font-size: 15px; }
  .ih-pdp-h2 { font-size: 30px; }
  .ih-final-h2 { font-size: 34px; }
  .ih-final-lede { font-size: 15px; }

  .ih-pdp-badges { grid-template-columns: repeat(5, 1fr); gap: 4px; padding: 16px 0; }
  .ih-pdp-badge img { height: 40px; width: 40px; }
  .ih-pdp-badge span { font-size: 8px; }

  .ih-sizes,
  .ih-final-sizes { grid-template-columns: 1fr; }
  .ih-size img { height: 48px; }
  .ih-pdp-buy { flex-direction: column; }
  .ih-qty { width: 100%; }
  .ih-cart-btn { padding: 14px 20px; font-size: 11px; letter-spacing: 2px; }

  .ih-pdp-trust { grid-template-columns: 1fr 1fr; gap: 12px; }
  .ih-lab-pts { grid-template-columns: 1fr 1fr; gap: 20px; }
  .ih-proc-cards { grid-template-columns: 1fr; gap: 16px; }
  .ih-exp-grid { grid-template-columns: 1fr; gap: 12px; }
  .ih-values { grid-template-columns: 1fr 1fr; }
  .ih-batch-grid { grid-template-columns: 1fr; gap: 16px; }
  .ih-batch, .ih-tq, .ih-sourcing { padding: 24px; }
  .ih-acc-q { font-size: 17px; padding: 16px 0; }
  .ih-final-inner { padding: 80px 20px; }
}


/* ==========================================================================
   37. HONEY PRODUCT PAGE
   Extends section 35 (PDP). Only the differences live here.
   ========================================================================== */

/* Warm spotlight behind the jar instead of the oil page's neutral one */
.ih-honey-stage::before {
  background:
    radial-gradient(ellipse 60% 55% at 50% 45%, rgba(184, 134, 60, 0.16), transparent 70%),
    radial-gradient(ellipse 40% 45% at 50% 50%, rgba(200, 202, 205, 0.06), transparent 72%) !important;
}

/* Four badges rather than five */
.ih-badges-4 { grid-template-columns: repeat(4, 1fr); }

/* Single size — don't stretch the card across the full width */
.ih-sizes-single { grid-template-columns: minmax(0, 320px); }
.ih-sizes-single .ih-size { cursor: default; }
.ih-sizes-single .ih-size:hover { border-color: #ffffff; }
.ih-sizes-single .ih-size-note { max-width: 180px; }

/* Second lede paragraph */
.ih-pdp-lede.ih-mt { margin-top: 16px; }

/* Differentiator grid — icon, title, body (the oil page's version is icon +
   label only, so these get an extra text row) */
.ih-diff-grid { margin-top: 0; gap: 32px 24px; }
.ih-diff-t {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.25;
  color: var(--ih-zinc-100);
}
.ih-diff-b {
  font-size: 13px;
  line-height: 1.6;
  color: var(--ih-zinc-500);
  margin-top: -4px;
}

/* Rich accordion bodies (lists, bold labels) */
.ih-acc-a p { margin: 0 0 12px; }
.ih-acc-a p:last-child { margin-bottom: 0; }
.ih-acc-a ul {
  margin: 0 0 12px;
  padding-left: 18px;
  list-style: disc;
}
.ih-acc-a li { margin-bottom: 4px; }
.ih-acc-a strong { color: var(--ih-zinc-200); font-weight: 500; }

/* Placeholder slots for the Wiser review shortcodes */
.ih-wiser-slot,
.ih-wiser-block {
  border: 1px dashed rgba(255, 255, 255, 0.18);
  border-radius: 12px;
  padding: 12px 16px;
}
.ih-wiser-block {
  border-radius: 24px;
  padding: 56px 24px;
  text-align: center;
}
.ih-wiser-note {
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #52525b;
}

/* Final CTA — honey variant uses the honeycomb backdrop */
.ih-final-honey {
  background-image:
    linear-gradient(to bottom, #030303 0%, rgba(3, 3, 3, 0.72) 50%, #030303 100%),
    url("https://immortalhealthaustralia.com/wp-content/uploads/IH/honeycomb.webp") !important;
}
.ih-final-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 32px;
}
.ih-final-tags span {
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 6px 16px;
  font-size: 10px;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--ih-zinc-400);
}
.ih-final-buy {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 40px;
}
.ih-final-size {
  display: flex;
  align-items: baseline;
  gap: 12px;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 12px 24px;
  flex: 0 0 auto;
}
.ih-final-buy .ih-cart-btn { flex: 0 0 auto; }

@media (max-width: 1024px) {
  .ih-diff-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
  .ih-badges-4 { grid-template-columns: repeat(4, 1fr); gap: 4px; }
  .ih-sizes-single { grid-template-columns: 1fr; }
  .ih-diff-grid { grid-template-columns: 1fr; gap: 24px; }
  .ih-final-buy { flex-direction: column; }
  .ih-final-size,
  .ih-final-buy .ih-cart-btn { width: 100%; justify-content: center; }
  .ih-wiser-block { padding: 40px 16px; }
}


/* ==========================================================================
   38. WISER REVIEWS
   Dark-theme overrides for the Wiser Reviews plugin output.

   The plugin ships light-theme defaults (white cards, dark text), which are
   invisible-to-wrong on this background. These rules are written broadly
   and defensively because the plugin's exact markup isn't known here — if
   something still renders light after this, inspect the element and add its
   class to the matching group below.
   ========================================================================== */

/* ---- Rating + count line (hero and section heading) ---- */
.ih-wiser-rating {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.ih-wiser-rating,
.ih-wiser-rating * {
  color: var(--ih-zinc-400) !important;
  font-size: 14px;
  line-height: 1.3;
}
.ih-wiser-rating strong,
.ih-wiser-rating b { color: var(--ih-zinc-100) !important; font-weight: 500; }

/* Star glyphs — the plugin may use SVG, a font icon, or an <img> sprite */
.ih-wiser-rating svg { fill: #e4e4e7 !important; }
.ih-wiser-rating svg path,
.ih-wiser-rating svg polygon { fill: #e4e4e7 !important; }
.ih-wiser-rating i,
.ih-wiser-rating [class*="star"] { color: #e4e4e7 !important; }
.ih-wiser-rating img { max-height: 16px; width: auto; }

/* ---- Review body ---- */
.ih-wiser-reviews { margin-top: 8px; }

/* Neutralise the plugin's own light panels */
.ih-wiser-reviews [class*="card"],
.ih-wiser-reviews [class*="review"],
.ih-wiser-reviews [class*="item"],
.ih-wiser-reviews [class*="wrapper"] {
  background: transparent !important;
  box-shadow: none !important;
}

/* Then give the actual review cards the site's glass treatment */
.ih-wiser-reviews [class*="review-item"],
.ih-wiser-reviews [class*="review_card"],
.ih-wiser-reviews [class*="review-card"] {
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid var(--ih-border) !important;
  border-radius: 24px !important;
  padding: 28px !important;
}

.ih-wiser-reviews p,
.ih-wiser-reviews span,
.ih-wiser-reviews div,
.ih-wiser-reviews li { color: var(--ih-zinc-400) !important; }

.ih-wiser-reviews h1,
.ih-wiser-reviews h2,
.ih-wiser-reviews h3,
.ih-wiser-reviews h4,
.ih-wiser-reviews strong { color: var(--ih-zinc-100) !important; }

.ih-wiser-reviews svg,
.ih-wiser-reviews svg path,
.ih-wiser-reviews svg polygon { fill: #e4e4e7 !important; }
.ih-wiser-reviews [class*="star"] { color: #e4e4e7 !important; }

/* Inputs and buttons the plugin renders (write-a-review forms, filters) */
.ih-wiser-reviews input,
.ih-wiser-reviews textarea,
.ih-wiser-reviews select {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: var(--ih-zinc-100) !important;
  border-radius: 12px !important;
}
.ih-wiser-reviews button:not([class*="star"]) {
  border-radius: 9999px !important;
  border: 1px solid var(--ih-border-strong) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  color: var(--ih-zinc-100) !important;
}
.ih-wiser-reviews button:not([class*="star"]):hover {
  background: #ffffff !important;
  color: #000000 !important;
}

/* Hairlines the plugin draws between reviews */
.ih-wiser-reviews hr,
.ih-wiser-reviews [class*="divider"] {
  border-color: var(--ih-border) !important;
  background: var(--ih-border) !important;
}

/* If the shortcode snippet isn't installed the raw text prints — make that
   obvious rather than letting it slip through as body copy. */
.ih-wiser-reviews:not(:has(*)),
.ih-wiser-rating:not(:has(*)) {
  font-family: monospace;
  color: #71717a !important;
}


/* ==========================================================================
   39. WOOCOMMERCE SHOP / CATEGORY ARCHIVE
   Dark treatment for the Astra WooCommerce product loop.

   NOTE ON PRODUCT IMAGES
   The 2024 product shots have baked-in white backgrounds, which read as
   white boxes on this page. CSS cannot remove those. The transparent
   versions already in the media library at /uploads/IH/ (bottle-100ml.webp,
   bottle-200ml.webp, honey-jar.webp) should be set as each product's
   featured image. Until then, .ih-shop-legacy-img below keeps the white
   shots looking deliberate rather than broken — see the note at the end.
   ========================================================================== */

/* ---- Page shell ---- */
.woocommerce .ast-woocommerce-container,
.woocommerce-page .ast-woocommerce-container {
  background: var(--ih-bg);
  padding-top: 48px;
  padding-bottom: 96px;
}

/* ---- Archive title ---- */
.woocommerce-products-header__title.page-title {
  font-size: 60px !important;
  font-weight: 500 !important;
  line-height: 0.98;
  letter-spacing: -0.02em;
  text-transform: none !important;
  margin-bottom: 40px;
  background-image: linear-gradient(180deg, #ffffff 0%, #cfcfcf 38%, #8f9295 66%, #e9e9e9 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.woocommerce-products-header {
  border-bottom: 1px solid var(--ih-border);
  padding-bottom: 8px;
  margin-bottom: 32px;
}

/* Category description, if one is set */
.woocommerce-products-header .term-description p {
  font-size: 18px;
  line-height: 1.625;
  color: var(--ih-zinc-400);
  max-width: 640px;
}

/* ---- Toolbar ---- */
.ast-shop-toolbar-container {
  border-bottom: 1px solid var(--ih-border);
  padding-bottom: 24px;
  margin-bottom: 40px;
}
.woocommerce-result-count {
  font-size: 12px !important;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--ih-zinc-500) !important;
  margin: 0;
}

/* Filter button — Astra renders this in the theme accent (currently gold) */
body .astra-shop-filter-button,
body .astra-shop-filter-button.ast-flyout-filter {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  border-radius: 9999px !important;
  border: 1px solid var(--ih-border-strong) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  padding: 10px 22px !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase;
  color: var(--ih-zinc-100) !important;
  box-shadow: none !important;
  transition: background-color 0.4s ease, color 0.4s ease, border-color 0.4s ease;
}
body .astra-shop-filter-button:hover {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: #000000 !important;
}
.astra-shop-filter-button svg { fill: currentColor; width: 15px; height: 15px; }
.astra-shop-filter-button:hover svg { fill: #000000; }

/* Sort dropdown */
.woocommerce-ordering select.orderby {
  border-radius: 9999px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background-color: rgba(255, 255, 255, 0.05) !important;
  padding: 9px 36px 9px 18px !important;
  font-size: 12px !important;
  letter-spacing: 1.2px;
  color: var(--ih-zinc-300) !important;
}
.woocommerce-ordering select.orderby option {
  background: #0a0a0a;
  color: var(--ih-zinc-200);
}

/* Grid / list view toggles */
.ast-products-view .ast-view-trigger svg { fill: var(--ih-zinc-500); transition: fill 0.3s ease; }
.ast-products-view .ast-view-trigger:hover svg,
.ast-products-view .ast-view-trigger.active svg { fill: var(--ih-zinc-100); }

/* ---- Product card ---- */
ul.products li.product {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--ih-border);
  border-radius: 24px;
  overflow: hidden;
  padding: 0 !important;
  transition: transform 0.6s var(--ih-ease),
              border-color 0.6s ease,
              box-shadow 0.6s ease;
}
ul.products li.product:hover {
  border-color: var(--ih-border-strong);
  box-shadow: 0 40px 120px -40px rgba(200, 202, 205, 0.25);
}

/* Thumbnail area */
.astra-shop-thumbnail-wrap {
  position: relative;
  display: block;
  background: rgba(255, 255, 255, 0.02);
  overflow: hidden;
}
.astra-shop-thumbnail-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.7s ease;
  background: radial-gradient(ellipse at center, rgba(217, 119, 37, 0.10), transparent 65%);
}
ul.products li.product:hover .astra-shop-thumbnail-wrap::before { opacity: 1; }

/* Force a consistent square regardless of the source ratio — the honey shot
   is 4:3 where the bottles are 1:1, which is why they looked mismatched. */
.astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link {
  display: flex !important;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  padding: 28px;
}
ul.products li.product img {
  position: relative;
  z-index: 1;
  width: auto !important;
  max-width: 100%;
  max-height: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 0;
  transition: transform 0.7s var(--ih-ease);
}
ul.products li.product:hover img { transform: translateY(-6px) scale(1.04); }

/* ---- Summary ---- */
.astra-shop-summary-wrap {
  padding: 24px 28px 28px !important;
  border-top: 1px solid var(--ih-border);
}
.ast-woo-product-category {
  display: block;
  font-size: 11px !important;
  letter-spacing: 2.2px;
  text-transform: uppercase;
  color: var(--ih-zinc-500) !important;
  margin-bottom: 8px;
}
ul.products li.product h2.woocommerce-loop-product__title,
ul.products li.product .woocommerce-loop-product__title {
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-transform: none !important;
  color: var(--ih-zinc-100) !important;
  padding: 0 !important;
  margin: 0 0 10px !important;
  transition: color 0.3s ease;
}
ul.products li.product a:hover h2.woocommerce-loop-product__title { color: #ffffff !important; }

ul.products li.product .price,
ul.products li.product .price .amount,
ul.products li.product .price bdi,
ul.products li.product .woocommerce-Price-currencySymbol {
  font-size: 18px !important;
  font-weight: 400 !important;
  color: var(--ih-zinc-200) !important;
}

/* Short description — key-feature lists get long, so cap and fade them */
.ast-woo-shop-product-description {
  margin-top: 14px;
  font-size: 13px;
  line-height: 1.6;
  color: var(--ih-zinc-400);
}
.ast-woo-shop-product-description h5 {
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--ih-zinc-500);
  margin: 0 0 8px;
}
.ast-woo-shop-product-description p,
.ast-woo-shop-product-description li { color: var(--ih-zinc-400); }
.ast-woo-shop-product-description ul {
  margin: 0;
  padding-left: 16px;
  list-style: disc;
}
.ast-woo-shop-product-description li { margin-bottom: 3px; }
.ast-woo-shop-product-description strong { color: var(--ih-zinc-200); font-weight: 500; }

/* Grid view: keep cards even by trimming long descriptions */
ul.products.columns-3 .ast-woo-shop-product-description,
ul.products.columns-4 .ast-woo-shop-product-description {
  max-height: 132px;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to bottom, #000 70%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 70%, transparent 100%);
}

/* ---- Quick view + add to cart ---- */
.ast-quick-view-text {
  border-radius: 9999px !important;
  background: rgba(0, 0, 0, 0.6) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: var(--ih-zinc-100) !important;
  font-size: 10px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase;
  padding: 8px 18px !important;
}
ul.products li.product .button,
ul.products li.product .added_to_cart {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin-top: 16px !important;
  border-radius: 9999px !important;
  border: 1px solid var(--ih-border-strong) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  padding: 10px 24px !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase;
  color: var(--ih-zinc-100) !important;
  transition: background-color 0.5s ease, color 0.5s ease, border-color 0.5s ease;
}
ul.products li.product .button:hover,
ul.products li.product .added_to_cart:hover {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: #000000 !important;
}

/* ---- Wiser star rating in the loop ----
   The plugin already outputs #B8BABD stars, which matches the brand silver.

   The rating sits BELOW the image in normal flow rather than overlaid on it
   — overlaying put the stars flush against the image edge with no gap, and
   on the white-background product shots they landed on top of the photo. */
.astra-shop-thumbnail-wrap .wiser_review {
  position: static;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 16px 16px 18px;
  pointer-events: none;
}
.astra-shop-thumbnail-wrap .Wsrspfapp-stars-list {
  display: flex;
  align-items: center;
  gap: 8px;
}
.Wsrspfapp-review-count {
  font-size: 11px !important;
  letter-spacing: 1px;
  line-height: 1;
  color: var(--ih-zinc-400) !important;
}

/* Trim the padding the image link carries at its foot, so the gap above the
   stars comes from the rating block itself and doesn't double up. */
.astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link { padding-bottom: 20px; }

/* ---- Sidebar / filter flyout ---- */
.astra-off-canvas-sidebar-wrapper,
#astra-mobile-popup .ast-off-canvas-sidebar-wrapper {
  background: #050505 !important;
  border-right: 1px solid var(--ih-border);
}
.astra-off-canvas-sidebar-wrapper .widget-title,
.astra-off-canvas-sidebar-wrapper h2 {
  font-size: 12px !important;
  letter-spacing: 2.4px;
  text-transform: uppercase;
  color: var(--ih-zinc-500) !important;
}
.astra-off-canvas-sidebar-wrapper a { color: var(--ih-zinc-300) !important; }
.astra-off-canvas-sidebar-wrapper a:hover { color: #ffffff !important; }

/* ---- Pagination ---- */
.woocommerce nav.woocommerce-pagination ul { border: 0; gap: 8px; display: flex; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  border-radius: 9999px;
  border: 1px solid var(--ih-border);
  min-width: 42px;
  height: 42px;
  line-height: 40px;
  font-size: 13px;
  color: var(--ih-zinc-300) !important;
  background: transparent !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
  background: #ffffff !important;
  border-color: #ffffff;
  color: #000000 !important;
}

/* ---- Notices ---- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  background: rgba(255, 255, 255, 0.04) !important;
  border-top-color: var(--ih-border-strong) !important;
  color: var(--ih-zinc-200) !important;
  border-radius: 12px;
}

/* ---- LEGACY WHITE-BACKGROUND IMAGES ----
   Remove this block once the featured images are swapped for the
   transparent versions in /uploads/IH/. Until then it puts the white
   shots on a soft light plate so they read as intentional product tiles
   rather than white rectangles floating on black. */
.ih-shop-legacy-img .astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link {
  background: linear-gradient(160deg, #f6f6f7 0%, #e7e8ea 100%);
  border-radius: 20px;
  margin: 14px 14px 0;
  padding: 20px;
}

/* ---- Responsive ---- */
@media (max-width: 1024px) {
  .woocommerce-products-header__title.page-title { font-size: 42px !important; }
  .astra-shop-summary-wrap { padding: 20px 22px 24px !important; }
  ul.products li.product h2.woocommerce-loop-product__title { font-size: 19px !important; }
}
@media (max-width: 767px) {
  .woocommerce-products-header__title.page-title { font-size: 32px !important; }
  .woocommerce .ast-woocommerce-container { padding-bottom: 64px; }
  .ast-shop-toolbar-container { padding-bottom: 16px; margin-bottom: 28px; }
  ul.products li.product { border-radius: 18px; }
  .astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link { padding: 18px; }
  ul.products.columns-3 .ast-woo-shop-product-description,
  ul.products.columns-4 .ast-woo-shop-product-description { max-height: 96px; }
}


/* ==========================================================================
   40. LIVE GOOGLE REVIEWS
   Output of the [ih_google_reviews] shortcode (ih-google-reviews.php).
   Reuses .ih-review / .ih-glass from section 20 and adds the grid, the
   avatar photo variant and the required Google attribution line.
   ========================================================================== */
.ih-greviews {
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
}

.ih-greviews-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 48px;
}

/* Google returns at most 5 reviews, so the grid has to look right at 1–5.
   auto-fit keeps them even at any count without a per-count rule. */
.ih-greviews-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  align-items: stretch;
}
.ih-greviews-grid .ih-review {
  width: auto;
  flex: 1 1 auto;
  border-radius: 24px;
  padding: 32px;
  scroll-snap-align: none;
}
.ih-greviews-grid .ih-review-text {
  font-size: 17px;
  font-weight: 400;
  line-height: 1.55;
}

/* Reviewer photo from Google */
.ih-review-avatar-img {
  height: 40px;
  width: 40px;
  flex: 0 0 auto;
  border-radius: 9999px;
  object-fit: cover;
  border: 1px solid rgba(255, 255, 255, 0.15);
}
.ih-greviews-grid .ih-review-by em {
  display: block;
  font-style: normal;
  font-size: 11px;
  letter-spacing: 1px;
  color: #52525b;
  margin-top: 2px;
}

/* Attribution — required by Google's terms, don't hide this */
.ih-greviews-attr {
  margin: 28px 0 0;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #52525b;
}
.ih-greviews-attr a {
  color: var(--ih-zinc-400);
  text-decoration: none;
  transition: color 0.3s ease;
}
.ih-greviews-attr a:hover { color: #ffffff; }

@media (max-width: 1024px) {
  .ih-greviews-head { flex-direction: column; align-items: flex-start; }
  .ih-greviews-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
}
@media (max-width: 767px) {
  .ih-greviews-head { margin-bottom: 32px; }
  .ih-greviews-grid { grid-template-columns: 1fr; gap: 12px; }
  .ih-greviews-grid .ih-review { padding: 24px; }
  .ih-greviews-grid .ih-review-text { font-size: 16px; }
}


/* ==========================================================================
   SHOP ARCHIVE — THUMBNAIL + RATING LAYOUT (supersedes the rules above)

   The Wiser rating markup sits INSIDE the product image link:
     .astra-shop-thumbnail-wrap > a > img
                                   > .wiser_review

   Making that link a fixed-aspect flex box put the stars and the image in
   the same square, so they overlapped. Instead: the link becomes a vertical
   stack, the image gets a fixed height, and the rating sits beneath it in
   its own row.

   Wiser draws its stars by filling one element via a --avg-per custom
   property. Overriding display/gap on .Wsrspfapp-stars-list interfered with
   that fill, so those internals are left alone here.
   ========================================================================== */
.astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link {
  display: flex !important;
  flex-direction: column !important;
  align-items: center;
  justify-content: flex-start;
  aspect-ratio: auto !important;
  height: auto !important;
  padding: 28px 24px 0 !important;
}

/* Fixed image band — keeps every card the same height whatever the source
   ratio (the honey shot is 4:3, the bottles 1:1). */
ul.products li.product img {
  display: block;
  height: 240px !important;
  width: auto !important;
  max-width: 100%;
  object-fit: contain;
  margin: 0 auto;
}

/* Rating row: own line, full width, clear of the image */
.astra-shop-thumbnail-wrap .wiser_review {
  position: static !important;
  display: block !important;
  width: 100%;
  margin-top: 20px;
  padding: 0 0 20px !important;
  text-align: center;
  pointer-events: none;
}

/* Leave Wiser's own star layout intact — only centre the row and space the
   count away from the stars. */
.astra-shop-thumbnail-wrap .Wsrspfapp-stars-list {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-wrap: nowrap;
}
.astra-shop-thumbnail-wrap .Wsrspfapp-stars-list-fullret {
  display: inline-block !important;
  vertical-align: middle;
}
.Wsrspfapp-review-count {
  display: inline-block !important;
  font-size: 11px !important;
  letter-spacing: 1px;
  line-height: 1;
  white-space: nowrap;
  color: var(--ih-zinc-400) !important;
}

/* The plugin injects this empty div next to the rating; it adds stray space */
.astra-shop-thumbnail-wrap #ask_ai_main_div { display: none !important; }

@media (max-width: 1024px) {
  ul.products li.product img { height: 210px !important; }
}
@media (max-width: 600px) {
  .astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link {
    padding: 24px 20px 0 !important;
  }
  ul.products li.product img { height: 200px !important; }
  .astra-shop-thumbnail-wrap .wiser_review {
    margin-top: 16px;
    padding-bottom: 16px !important;
  }
}/* End custom CSS */