/* =========================================================
   INFINITY — The Lab page, matching
   new-theme/more-pages/WhatsApp Image 2026-09-08 at 1.02.20 AM (3).jpeg.
   Scoped under .inf-lab-v3 (applied to <main>) so nothing leaks
   into the shared nav/footer. Same pattern as apparel-v3 / cart-v3.
   Display type is Oswald, body Outfit, script Caveat Brush.
   ========================================================= */

@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@500;600;700&family=Outfit:wght@300;400;500;600&family=Caveat+Brush&display=swap");

/* Header: transparent over the hero photo, like the mockup. */
body.inf-lab .eg-header__transparent {
   position: absolute !important;
   top: 0 !important;
   left: 0;
   right: 0;
   z-index: 20;
}
body.inf-lab .eg-header__transparent:not(.header-sticky) {
   background: transparent !important;
   border-bottom: none !important;
}

.inf-lab-v3{
  --lb-bg:        #f4efe5;
  --lb-card:      #faf8f3;
  --lb-border:    #e6dfd0;
  --lb-dark:      #0d0b0a;
  --lb-text:      #1b1819;
  --lb-muted:     #6f6a63;
  --lb-amber:     #8a6134;
  --lb-amber-soft:#a98865;
  --lb-tan:       #c9a877;
  --lb-shadow:    0 3px 14px rgba(70,52,24,.09);
  --lb-font-display: 'Oswald', sans-serif;
  --lb-font-body:    'Outfit', sans-serif;
  --lb-font-script:  'Caveat Brush', 'Caveat', cursive;

  font-family: var(--lb-font-body);
  color: var(--lb-text);
  background: var(--lb-bg);
  overflow-x: hidden;
  display: block;
}

.inf-lab-v3 img{ max-width:100%; display:block; }
.inf-lab-v3 a{ text-decoration:none; color:inherit; }
.inf-lab-v3 ul{ list-style:none; margin:0; padding:0; }
.inf-lab-v3 h1,
.inf-lab-v3 h2,
.inf-lab-v3 h3{ color: var(--lb-text); margin: 0; }
.inf-lab-v3 p{ color: var(--lb-text); }

.inf-lab-v3 .lb-container{ width: 95%; margin: 0 auto; position: relative; z-index: 2; }
.inf-lab-v3 .lb-container--inset{ width: 88.4%; }
.inf-lab-v3 .lb-container--wide{ width: 92%; }

.inf-lab-v3 .lb-icon{
  width: 26px; height: 26px;
  fill: none; stroke: currentColor;
  stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round;
  flex-shrink: 0;
}
.inf-lab-v3 .lb-icon--sm{ width: 16px; height: 16px; stroke-width: 2; }

.inf-lab-v3 .lb-leaf{ position:absolute; pointer-events:none; user-select:none; z-index: 5; }

/* ---------------- Script overlays ---------------- */
.inf-lab-v3 .lb-script{
  position:absolute; z-index: 4; margin: 0;
  font-family: var(--lb-font-script);
  text-transform: uppercase;
  line-height: 1.02;
  color: #fff;
  transform: rotate(-9deg);
  transform-origin: left top;
  text-shadow: 0 2px 12px rgba(0,0,0,.45);
}
.inf-lab-v3 .lb-stroke{
  display:block; width: 70%; height: 6px; margin-top: 10px; margin-left: auto;
  border-radius: 4px;
  background: linear-gradient(90deg, rgba(190,140,55,0) 0%, #b78a34 22%, #d6a94b 100%);
  transform: rotate(-6deg) skewX(-20deg);
}

/* ---------------- Torn-paper edges ---------------- */
.inf-lab-v3 .lb-edge{
  position:absolute; left:0; right:0; height: 56px; z-index: 4; pointer-events:none;
  background: var(--lb-bg);
  -webkit-mask-image: url('/assets/img/shape/footer-shape-01.png');
  mask-image: url('/assets/img/shape/footer-shape-01.png');
  -webkit-mask-size: 100% 100%; mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
}
.inf-lab-v3 .lb-edge--bottom{ bottom:-1px; transform: scaleY(-1); }
.inf-lab-v3 .lb-edge--top{ top:-1px; }

/* ---------------- Type + buttons ---------------- */
.inf-lab-v3 .lb-eyebrow{
  display:block;
  font-family: var(--lb-font-display); font-weight: 500;
  font-size: 18px; letter-spacing: .04em; text-transform: uppercase;
  color: var(--lb-amber-soft);
  margin-bottom: 4px;
}
.inf-lab-v3 .lb-eyebrow--gold{ font-family: var(--lb-font-body); font-size: 12.5px; font-weight: 500; letter-spacing: .06em; color: var(--lb-tan); margin-bottom: 14px; }
.inf-lab-v3 .lb-title{
  font-family: var(--lb-font-display); font-weight: 600; text-transform: uppercase;
  font-size: clamp(22px, 1.67vw, 24px); line-height: 1.1;
}
.inf-lab-v3 .lb-title--xl{ font-size: clamp(30px, 3.26vw, 47px); font-weight: 600; line-height: 1.02; letter-spacing: -.045em; }
.inf-lab-v3 .lb-title--light{ color: #fff; }
.inf-lab-v3 .lb-sub{ font-size: 15px; color: var(--lb-text); margin: 6px 0 0; }

.inf-lab-v3 .lb-btn{
  display:inline-flex; align-items:center; justify-content:center; gap: 12px;
  height: 48px; padding: 0 32px;
  border-radius: 999px; border: 0;
  background: var(--lb-dark); color:#fff;
  font-family: var(--lb-font-body); font-size: 15px; font-weight: 500;
  transition: transform .2s, background .2s;
}
.inf-lab-v3 .lb-btn:hover{ background:#000; color:#fff; transform: translateY(-2px); }
.inf-lab-v3 .lb-btn--tan{ background: var(--lb-tan); color: var(--lb-dark); }
.inf-lab-v3 .lb-btn--tan:hover{ background:#d6b98d; color: var(--lb-dark); }

.inf-lab-v3 .lb-link{
  display:inline-flex; align-items:center; gap: 10px;
  font-size: 14.5px; font-weight: 500; color: var(--lb-text);
  white-space: nowrap;
}
.inf-lab-v3 .lb-link:hover{ color: var(--lb-amber); }

.inf-lab-v3 .lb-section-head{
  display:flex; align-items:flex-start; justify-content:space-between; gap: 20px;
  margin-bottom: 16px;
}

/* ---------------- Hero ---------------- */
.inf-lab-v3 .lb-hero{
  position:relative; overflow:hidden;
  min-height: 528px; aspect-ratio: 2000 / 733;
  background: var(--lb-bg);
}
.inf-lab-v3 .lb-hero-bg{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit: cover; object-position: 70% 50%; max-width:none;
}
.inf-lab-v3 .lb-hero-scrim{
  position:absolute; inset:0; z-index:1;
  background: linear-gradient(90deg, var(--lb-bg) 0%, var(--lb-bg) 30%, rgba(244,239,229,.86) 40%, rgba(244,239,229,.45) 50%, rgba(244,239,229,0) 60%);
}
.inf-lab-v3 .lb-hero-inner{ padding: 112px 0 0 5.8%; width: 100%; margin: 0; }
.inf-lab-v3 .lb-hero-heading{
  font-family: var(--lb-font-display); font-weight: 700; text-transform: uppercase;
  font-size: clamp(42px, 5.2vw, 75px); line-height: 1; letter-spacing: -.055em;
  color: var(--lb-dark);
}
.inf-lab-v3 .lb-hero-heading .accent{
  background: linear-gradient(180deg, #a87a45 0%, #8a5f33 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: var(--lb-amber);
}
.inf-lab-v3 .lb-hero-copy{
  max-width: 505px; margin: 18px 0 0;
  font-size: 18px; line-height: 1.45; color: var(--lb-text);
}
.inf-lab-v3 .lb-trust{ display:flex; gap: 40px; margin-top: 44px; }
.inf-lab-v3 .lb-trust li{ display:flex; align-items:center; gap: 12px; }
.inf-lab-v3 .lb-trust .lb-icon{ width: 38px; height: 38px; stroke-width: 1.3; }
.inf-lab-v3 .lb-trust span{ font-size: 14px; line-height: 1.25; color: var(--lb-text); }

.inf-lab-v3 .lb-hero-script{ top: 34%; left: 85.6%; font-size: clamp(20px, 2.3vw, 33px); }
.inf-lab-v3 .lb-leaf--hero-tl{ top: -18px; left: -52px; width: 128px; }
.inf-lab-v3 .lb-leaf--hero-l{ top: 190px; left: -54px; width: 128px; }
.inf-lab-v3 .lb-leaf--hero-bl{ bottom: -34px; left: -46px; width: 122px; }
.inf-lab-v3 .lb-leaf--hero-tr{ top: 30px; right: -50px; width: 112px; }
.inf-lab-v3 .lb-leaf--hero-br{ bottom: -30px; right: -52px; width: 120px; }

/* ---------------- Tabs + Nature backed by science ---------------- */
.inf-lab-v3 .lb-overview{ position: relative; padding: 24px 0 26px; }
.inf-lab-v3 .lb-tabs{ display:grid; grid-template-columns: repeat(7, minmax(0,1fr)); gap: 20px; }
.inf-lab-v3 .lb-tab{
  display:flex; align-items:center; justify-content:center;
  height: 46px; border-radius: 999px;
  border: 1px solid var(--lb-border); background: rgba(255,255,255,.35);
  font-size: 14.5px; font-weight: 400; color: var(--lb-text);
  transition: background .2s, color .2s, border-color .2s;
}
.inf-lab-v3 .lb-tab:hover{ border-color: #cfc5b0; background:#fff; color: var(--lb-text); }
.inf-lab-v3 .lb-tab.is-active{ background: var(--lb-dark); border-color: var(--lb-dark); color:#fff; font-weight: 500; }

.inf-lab-v3 .lb-nature{
  display:grid; grid-template-columns: minmax(0,1fr) minmax(0,2.1fr) minmax(0,1.05fr);
  align-items:center; gap: 10px;
  margin-top: 26px;
}
.inf-lab-v3 .lb-nature-copy .lb-title{ white-space: nowrap; }
.inf-lab-v3 .lb-nature-copy p{ margin: 16px 0 26px; max-width: 300px; font-size: 16.5px; line-height: 1.45; }
.inf-lab-v3 .lb-nature-photo img{
  width: 100%; height: auto; border-radius: 6px;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 5%, #000 96%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 5%, #000 96%, transparent 100%);
}
.inf-lab-v3 .lb-points{ display:flex; flex-direction:column; gap: 14px; padding-left: 16px; }
.inf-lab-v3 .lb-points li{ display:flex; align-items:center; gap: 16px; }
.inf-lab-v3 .lb-point-icon{
  width: 50px; height: 50px; border-radius: 50%; flex-shrink: 0;
  display:flex; align-items:center; justify-content:center;
  border: 1px solid var(--lb-border); background: rgba(255,255,255,.55);
}
.inf-lab-v3 .lb-point-icon .lb-icon{ width: 24px; height: 24px; }
.inf-lab-v3 .lb-points strong{
  display:block; font-family: var(--lb-font-display); font-weight: 500;
  text-transform: uppercase; font-size: 16px; letter-spacing: .01em; line-height: 1.2;
}
.inf-lab-v3 .lb-points small{ display:block; margin-top: 3px; font-size: 13.5px; color: var(--lb-muted); line-height: 1.3; }

.inf-lab-v3 .lb-leaf--tabs-r{ top: -34px; right: -46px; width: 118px; }
.inf-lab-v3 .lb-leaf--nature-l{ top: 168px; left: -50px; width: 118px; }
.inf-lab-v3 .lb-leaf--nature-r{ bottom: -34px; right: -54px; width: 132px; }

/* ---------------- Formulation philosophy band ---------------- */
.inf-lab-v3 .lb-philosophy{ position: relative; background: #0d0c0b; min-height: 295px; }
.inf-lab-v3 .lb-philosophy-row{
  display:grid; grid-template-columns: 37.2% 33.6% 1fr;
  min-height: 295px;
}
.inf-lab-v3 .lb-philosophy-photo{ position:relative; overflow:hidden; }
.inf-lab-v3 .lb-philosophy-photo img{ width:100%; height:100%; object-fit: cover; object-position: 60% 40%; max-width:none; }
.inf-lab-v3 .lb-philosophy-panel{
  position:relative; z-index: 2;
  display:flex; flex-direction:column; justify-content:center; align-items:flex-start;
  padding: 52px 40px 44px 58px; background: #0b0c0e;
}
.inf-lab-v3 .lb-philosophy-panel p{ margin: 14px 0 22px; max-width: 400px; font-size: 16px; line-height: 1.45; color: rgba(255,255,255,.92); }
.inf-lab-v3 .lb-philosophy-side{
  background:
    radial-gradient(ellipse at 78% 92%, rgba(52,70,38,.55) 0%, rgba(52,70,38,0) 55%),
    radial-gradient(ellipse at 20% 30%, rgba(60,58,52,.35) 0%, rgba(60,58,52,0) 60%),
    #131413;
}
.inf-lab-v3 .lb-phil-script{ top: 16%; left: 84%; font-size: clamp(22px, 2.5vw, 36px); }
.inf-lab-v3 .lb-leaf--phil-l{ top: 34px; left: -44px; width: 118px; }
.inf-lab-v3 .lb-leaf--phil-bl{ bottom: -20px; left: -48px; width: 112px; }
.inf-lab-v3 .lb-leaf--phil-tr{ top: 6px; right: -42px; width: 104px; }

/* ---------------- Key ingredients ---------------- */
.inf-lab-v3 .lb-ingredients{ position: relative; padding: 24px 0 26px; }
.inf-lab-v3 .lb-ing-grid{ display:grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 17px; }
.inf-lab-v3 .lb-ing-card{
  display:block; background: var(--lb-card); border-radius: 8px; overflow:hidden;
  box-shadow: var(--lb-shadow); transition: transform .2s, box-shadow .2s;
}
.inf-lab-v3 .lb-ing-card:hover{ transform: translateY(-3px); box-shadow: 0 8px 22px rgba(70,52,24,.14); }
.inf-lab-v3 .lb-ing-card img{ width:100%; aspect-ratio: 2.25 / 1; object-fit: cover; }
.inf-lab-v3 .lb-ing-body{ padding: 16px 16px 14px; }
.inf-lab-v3 .lb-ing-body h3{ font-family: var(--lb-font-display); font-weight: 600; font-size: 17px; text-transform: uppercase; line-height: 1.15; }
.inf-lab-v3 .lb-ing-body p{ margin: 8px 0 12px; font-size: 14px; line-height: 1.35; min-height: 38px; }
.inf-lab-v3 .lb-ing-more{
  display:flex; align-items:center; gap: 10px;
  padding-top: 12px; border-top: 1px solid var(--lb-border);
  font-size: 14px; font-weight: 500;
}
.inf-lab-v3 .lb-leaf--ing-l{ top: -4px; left: -42px; width: 96px; }

/* ---------------- Latest articles ---------------- */
.inf-lab-v3 .lb-articles{ position: relative; padding: 20px 0 46px; }
.inf-lab-v3 .lb-art-grid{ display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 17px; }
.inf-lab-v3 .lb-art-card{
  display:block; background: var(--lb-card); border-radius: 8px; overflow:hidden;
  box-shadow: var(--lb-shadow); transition: transform .2s, box-shadow .2s;
}
.inf-lab-v3 .lb-art-card:hover{ transform: translateY(-3px); box-shadow: 0 8px 22px rgba(70,52,24,.14); }
.inf-lab-v3 .lb-art-card img{ width:100%; aspect-ratio: 2.12 / 1; object-fit: cover; }
.inf-lab-v3 .lb-art-body{ padding: 14px 16px 16px; }
.inf-lab-v3 .lb-art-body h3{ font-family: var(--lb-font-display); font-weight: 600; font-size: 16.5px; text-transform: uppercase; line-height: 1.22; min-height: 40px; }
.inf-lab-v3 .lb-art-body p{ margin: 8px 0 12px; font-size: 14px; line-height: 1.35; min-height: 38px; }
.inf-lab-v3 .lb-art-read{ display:flex; align-items:center; gap: 7px; font-size: 13px; color: var(--lb-text); }
.inf-lab-v3 .lb-art-read .lb-icon{ width: 14px; height: 14px; }
.inf-lab-v3 .lb-leaf--art-l{ top: 70px; left: -52px; width: 140px; }
.inf-lab-v3 .lb-leaf--art-r{ top: 8px; right: -52px; width: 128px; }

/* ---------------- Stay informed band ---------------- */
.inf-lab-v3 .lb-join{ position:relative; overflow:hidden; background:#14100d; min-height: 190px; }
.inf-lab-v3 .lb-join-bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position: 50% 62%; max-width:none; }
.inf-lab-v3 .lb-join-scrim{ position:absolute; inset:0; background: rgba(9,8,7,.66); }
.inf-lab-v3 .lb-join-inner{
  position:relative; z-index:3;
  display:grid; grid-template-columns: minmax(0,1fr) minmax(0,1.3fr) minmax(0,.7fr);
  align-items:center; gap: 34px;
  min-height: 190px; padding: 46px 0 26px;
}
.inf-lab-v3 .lb-join-copy{ padding-left: 3.4%; }
.inf-lab-v3 .lb-join-copy h2{
  font-family: var(--lb-font-display); font-weight: 600; text-transform: uppercase;
  font-size: clamp(24px, 2.1vw, 30px); color:#fff; margin: 0 0 8px; line-height: 1.1;
}
.inf-lab-v3 .lb-join-copy p{ margin:0; font-size: 14.5px; line-height: 1.45; color: rgba(255,255,255,.88); }
.inf-lab-v3 .lb-join-form{ display:flex; align-items:stretch; height: 52px; background:#fff; border-radius: 999px; overflow:hidden; }
.inf-lab-v3 .lb-join-form input{
  flex:1; min-width:0; border:0; outline:none; background:transparent;
  padding: 0 26px; font-family: var(--lb-font-body); font-size: 14.5px; color: var(--lb-text);
}
.inf-lab-v3 .lb-join-form button{
  flex: 0 0 auto; padding: 0 30px; border:0; cursor:pointer;
  background: var(--lb-tan); color: var(--lb-dark);
  display:flex; align-items:center; gap: 10px;
  font-family: var(--lb-font-body); font-size: 15px; font-weight: 500;
  transition: background .2s;
}
.inf-lab-v3 .lb-join-form button:hover{ background:#d6b98d; }
.inf-lab-v3 .lb-join-msg{ margin: 10px 0 0 22px; font-size: 14px; color:#fff; }
.inf-lab-v3 .lb-join-msg.is-ok{ margin:0; height: 52px; display:flex; align-items:center; padding: 0 26px; background: rgba(255,255,255,.12); border-radius: 999px; font-size: 15px; }
.inf-lab-v3 .lb-join-msg.is-error{ color:#ffb3a8; }
.inf-lab-v3 .lb-join-script{ top: 30%; left: 87%; font-size: clamp(16px, 2.2vw, 31px); }
.inf-lab-v3 .lb-leaf--join-l{ top: 14px; left: -46px; width: 104px; }
.inf-lab-v3 .lb-leaf--join-r{ top: 20px; right: -46px; width: 100px; }

/* ---------------- Responsive ---------------- */
@media (max-width: 1200px){
  .inf-lab-v3 .lb-ing-grid{ grid-template-columns: repeat(3, minmax(0,1fr)); }
  .inf-lab-v3 .lb-art-grid{ grid-template-columns: repeat(3, minmax(0,1fr)); }
  .inf-lab-v3 .lb-tabs{ gap: 12px; }
  .inf-lab-v3 .lb-tab{ font-size: 13.5px; }
}
@media (max-width: 1000px){
  .inf-lab-v3 .lb-nature{ grid-template-columns: 1fr; gap: 26px; }
  .inf-lab-v3 .lb-nature-copy .lb-title{ white-space: nowrap; }
.inf-lab-v3 .lb-nature-copy p{ max-width: 560px; }
  .inf-lab-v3 .lb-points{ padding-left: 0; display:grid; grid-template-columns: 1fr 1fr; }
  .inf-lab-v3 .lb-tabs{ grid-template-columns: repeat(4, minmax(0,1fr)); }
  .inf-lab-v3 .lb-philosophy-row{ grid-template-columns: 1fr; }
  .inf-lab-v3 .lb-philosophy-photo{ height: 300px; }
  .inf-lab-v3 .lb-philosophy-side,
  .inf-lab-v3 .lb-phil-script{ display:none; }
  .inf-lab-v3 .lb-philosophy-panel{ padding: 44px 6% 48px; }
  .inf-lab-v3 .lb-join-inner{ grid-template-columns: 1fr; gap: 18px; }
  .inf-lab-v3 .lb-join-script{ display:none; }
}
@media (max-width: 900px){
  .inf-lab-v3 .lb-hero{ aspect-ratio: auto; min-height: 0; padding-bottom: 300px; }
  .inf-lab-v3 .lb-hero-bg{ top:auto; bottom:0; height: 320px; object-position: 70% 40%; }
  .inf-lab-v3 .lb-hero-scrim{ background: linear-gradient(180deg, var(--lb-bg) 0%, var(--lb-bg) 62%, rgba(244,239,229,0) 86%); }
  .inf-lab-v3 .lb-hero-inner{ padding: 116px 6% 0; }
  .inf-lab-v3 .lb-hero-script,
  .inf-lab-v3 .lb-leaf--hero-l,
  .inf-lab-v3 .lb-leaf--hero-bl,
  .inf-lab-v3 .lb-leaf--hero-br{ display:none; }
  .inf-lab-v3 .lb-trust{ flex-wrap: wrap; gap: 18px 30px; }
}
@media (max-width: 700px){
  .inf-lab-v3 .lb-ing-grid,
  .inf-lab-v3 .lb-art-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
  .inf-lab-v3 .lb-tabs{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .inf-lab-v3 .lb-points{ grid-template-columns: 1fr; }
  .inf-lab-v3 .lb-section-head{ flex-direction: column; gap: 10px; }
}
@media (max-width: 560px){
  .inf-lab-v3 .lb-leaf{ display:none; }
  .inf-lab-v3 .lb-ing-grid,
  .inf-lab-v3 .lb-art-grid{ grid-template-columns: 1fr; }
  .inf-lab-v3 .lb-join-form button{ padding: 0 20px; }
  .inf-lab-v3 .lb-container--inset{ width: 92%; }
}
