/* ===== POS HERO (exact screenshot-style layout) ===== */

:root{
  --pos-font-h: "Moderniz", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --pos-font-b: "SK-Modernist", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

*{ box-sizing: border-box; }
html, body{ height: 100%; }

.pos-body{
  margin: 0;
  font-family: var(--pos-font-b);
  background: #05070b;
  color: #fff;
}

/* HERO */
.pos-hero{
  /* put your bg here via inline style var --pos-hero-bg */
  background-image: var(--pos-hero-bg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; /* IMPORTANT */
  background-attachment: scroll;

  position: relative;
  width: 100%;
  min-height: 100vh;

  display: grid;
  align-items: center;
  overflow: hidden;
  margin-top: -4.5%;

  /* keeps it visually like your reference */
  padding: clamp(18px, 3vw, 42px) 0;
}

.pos-hero__overlay{
  position: absolute;
  inset: 0;
  pointer-events: none;

  /* teal/dark + warm orange glow near bottom center (like screenshot) */
  background:
    radial-gradient(760px 420px at 46% 92%, rgba(255, 156, 0, 0.55), transparent 60%),
    radial-gradient(820px 520px at 18% 45%, rgba(0, 128, 120, 0.18), transparent 62%),
    linear-gradient(to right, rgba(0,0,0,0.55), rgba(0,0,0,0.18) 42%, rgba(0,0,0,0.55));
}

/* Layout container */
.pos-hero__inner{
  position: relative;
  width: min(1520px, calc(100% - 96px));
  margin: 0 auto;

  display: grid;
  grid-template-columns: 1.05fr 1.35fr;
  gap: clamp(18px, 3vw, 44px);
  align-items: center;
}

/* LEFT COPY */
.pos-hero__copy{
  padding-left: clamp(0px, 1vw, 10px);
}

.pos-hero__title{
  font-family: var(--pos-font-h);
  font-weight: 800;          /* if Moderniz supports it */
  text-transform: uppercase;
  line-height: 1.5;

  margin: 0 0 18px;
  font-size: clamp(25px, 2.5vw, 60px);
}

.pos-hero__sub{
  margin: 0 0 14px;
  font-family: var(--pos-font-b);
  font-weight: 700;
  font-size: clamp(18px, 1.55vw, 28px);
  line-height: 1.25;
}

.pos-hero__desc{
  margin: 0;
  font-family: var(--pos-font-b);
  font-weight: 500;
  font-size: clamp(12px, 1.05vw, 16px);
  line-height: 1.7;
  color: rgba(255,255,255,0.85);
}

/* RIGHT VISUAL AREA */
.pos-hero__visual{
  position: relative;
  width: 100%;
  height: 100%;
  margin-top: 40%;
}

/* Shared machine styling */
.pos-machine{
  position: absolute;
  bottom: 0;
  height: auto;
  user-select: none;

  filter: drop-shadow(0 22px 40px rgba(0,0,0,0.55));
  transform-origin: bottom center;
}

/* Orange machine (center-right, slightly left of the black one) */
.pos-machine--orange{
  width: 45%;
  right: 50%;
}

/* Black machine (right-most, slightly larger) */
.pos-machine--black{
  margin-bottom: -5%;
  width: 45%;
  right: 0;
}

/* ===== NEXT-GEN CONVENIENCE (Heading + single image) ===== */
.pos-nextgen{
  position: relative;
  width: 100%;
  height: 80vh;
  padding: clamp(40px, 5vw, 70px) 0 clamp(46px, 6vw, 86px);
  background-color: #132024; /* same dark base */
  overflow: hidden;
}

.pos-nextgen__inner{
  width: min(1520px, calc(100% - 96px));
  margin: 0 auto;
  text-align: center;
}

.pos-nextgen__title{
  margin: 0 0 clamp(22px, 3.2vw, 38px);
  font-family: var(--pos-font-h);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.05;
  color: #ffffff;

  font-size: clamp(22px, 2.2vw, 60px);
}

/* Single image containing all 3 squares */
.pos-nextgen__img{
  display: block;
  width: 80%;
  height: auto;
  margin: 0 auto;
}


/* ===== SMART RETAIL VENDING (3 glass cards) ===== */
.pos-smartretail{
  position: relative;
  width: 100%;
  height: 90vh;
  padding: clamp(36px, 5vw, 70px) 0 clamp(44px, 6vw, 86px);

  /* same kind of background feel as your screenshot */
  background-image: var(--pos-smart-bg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; /* IMPORTANT */
  overflow: hidden;
}

.pos-smartretail__overlay{
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.pos-smartretail__inner{
  position: relative;
  width: min(1520px, calc(100% - 96px));
  margin: 0 auto;
  text-align: center;
}

.pos-smartretail__title{
  margin: 0 0 clamp(18px, 3vw, 34px);
  font-family: var(--pos-font-h);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.05;

  /* As you requested */
  font-size: clamp(22px, 2.2vw, 60px);
}

/* 3 cards */
.pos-smartretail__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(14px, 2.2vw, 34px);
  align-items: stretch;
}

/* Glass card */
.pos-glasscard{
  position: relative;
  border-radius: 26px;
  overflow: hidden;

  /* glass effect */
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  /* subtle depth */
  box-shadow:
    0 18px 55px rgba(0,0,0,0.45),
    inset 0 1px 0 rgba(255,255,255,0.12);

  /* big square-ish tiles like screenshot */
  min-height: clamp(280px, 28vw, 520px);
  display: grid;
  place-items: center;
}

.pos-glasscard::before{
  content:"";
  position:absolute;
  border-radius: 20px;
  pointer-events:none;

  /* soft inner glow like the reference */
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.08),
    0 0 0 1px rgba(0,0,0,0.18);
  opacity: 0.9;
}

.pos-glasscard__img{
  width: 45%;
  height: auto;
  display: block;
  filter: drop-shadow(0 18px 30px rgba(0,0,0,0.55));
  transform: translateY(4px);
}

.pos-fullvh{
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.pos-fullvh__img{
  width: 100%;
  height: 100%;
  object-fit: cover;        /* fills without stretching */
  object-position: center;  /* adjust if needed: center top, etc. */
  display: block;
}


/* ===== BENEFITS FULLSCREEN SECTIONS (positioned text like screenshots) ===== */
/* ================================
   BENEFITS (ONE SECTION / 2 SCREENS)
   Alternating alignment: Right, Left, Right, Left
================================ */

.pos-benefitsOne{
  position: relative;
  width: 100%;
  min-height: 200vh;                 /* one section containing 2 “screens” */
  overflow: hidden;

  background-image: var(--pos-benefits-bg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;

  /* keeps the same bg feeling while you scroll inside the 200vh */
  background-attachment: fixed;
}

@media (max-width: 980px){
  .pos-benefitsOne{ background-attachment: scroll; }
}

.pos-benefitsOne__overlay{
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(900px 520px at 50% 95%, rgba(255,156,0,0.55), transparent 62%),
    radial-gradient(980px 620px at 18% 45%, rgba(0,128,120,0.18), transparent 62%),
    linear-gradient(to right, rgba(0,0,0,0.55), rgba(0,0,0,0.16) 45%, rgba(0,0,0,0.55));
}

/* This is your single screen wrapper holding all blocks */
.pos-benefitsOne__screen{
  position: relative;
  height: 200vh;                     /* IMPORTANT: 2 screens in one wrapper */
  width: min(1520px, calc(100% - 96px));
  margin: 0 auto;

  /* Make left/right alignment consistent */
  --edge: clamp(18px, 5vw, 90px);
  padding: 0 var(--edge);
}

/* Base positioning */
.pos-benefit{
  position: absolute;
  max-width: min(980px, 92%);
}

/* Typography */
.pos-benefit__h{
  margin: 0;
  font-family: var(--pos-font-h);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.02;
  color: #fff;

  font-size: clamp(22px, 2.35vw, 60px);
}

.pos-benefit__p{
  margin: 12px 0 0;
  font-family: var(--pos-font-b);
  font-weight: 500;
  color: rgba(255,255,255,0.88);
  line-height: 1.6;

  font-size: clamp(14px, 1.2vw, 22px);
}

/* =========================
   SCREEN 1 (0vh to 100vh)
   Right -> Left -> Right
========================= */

/* HIGHER OPERATIONAL EFFICIENCY (RIGHT) */
.pos-b1-topcenter{
  top: 14vh;
  right: 0;
  left: auto;
  text-align: right;
}

/* Subtext for efficiency (RIGHT, below heading) */
.pos-b1-toprightsub{
  top: 22vh;
  right: 0;
  left: auto;
  text-align: right;
  max-width: min(620px, 92%);
}

/* FAST SCALABILITY (LEFT) */
.pos-b1-leftmid{
  top: 48vh;
  left: 0;
  right: auto;
  transform: translateY(-50%);
  text-align: left;
  max-width: min(720px, 92%);
}

/* REAL-TIME ANALYTICS (RIGHT) */
.pos-b1-bottomright{
  top: 80vh;
  right: 0;
  left: auto;
  transform: translateY(-50%);
  text-align: right;
  max-width: min(820px, 92%);
}

/* =========================
   SCREEN 2 (100vh to 200vh)
   Left -> Right
========================= */

/* STRONGER BRAND VISIBILITY (LEFT) */
.pos-b2-leftmid{
  top: calc(100vh + 32vh);
  left: 0;
  right: auto;
  transform: translateY(-50%);
  text-align: left;
  max-width: min(920px, 92%);
}

/* 24X7 REVENUE GENERATION (RIGHT) */
.pos-b2-bottomcenter{
  top: calc(100vh + 70vh);
  right: 0;
  left: auto;
  transform: translateY(-50%);
  text-align: right;
  max-width: min(1100px, 92%);
}

/* with no downtime (RIGHT, below 24x7 line) */
.pos-b2-bottomrightsub{
  top: calc(100vh + 80vh);
  right: 0;
  left: auto;
  text-align: right;
  max-width: min(520px, 92%);
}


/* ===== OUR OFFERINGS (2 glass cards) ===== */
.pos-offerings{
  position: relative;
  width: 100%;
  padding: clamp(54px, 6vw, 90px) 0 clamp(56px, 7vw, 110px);
  overflow: hidden;

  background-image: var(--pos-offerings-bg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}


.pos-offerings__overlay{
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(900px 520px at 50% 95%, rgba(255,156,0,0.55), transparent 62%),
    radial-gradient(980px 620px at 18% 45%, rgba(0,128,120,0.18), transparent 62%),
    linear-gradient(to right, rgba(0,0,0,0.58), rgba(0,0,0,0.20) 45%, rgba(0,0,0,0.58));
}

.pos-offerings__inner{
  position: relative;
  width: min(1520px, calc(100% - 96px));
  margin: 0 auto;
  text-align: center;
}

.pos-offerings__title{
  margin: 0 0 clamp(24px, 3vw, 40px);
  font-family: var(--pos-font-h);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.05;
  color: #fff;

  font-size: clamp(30px, 3.2vw, 74px);
}

/* Two cards centered */
.pos-offerings__grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3.2vw, 44px);
  align-items: stretch;

  width: min(1050px, 100%);
  margin: 0 auto;
}

/* Glass card */
.pos-offerCard{
  border-radius: 28px;
  overflow: hidden;

  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  box-shadow:
    0 18px 55px rgba(0,0,0,0.45),
    inset 0 1px 0 rgba(255,255,255,0.12);

  padding: clamp(22px, 2.4vw, 34px) clamp(18px, 2.2vw, 30px) clamp(18px, 2.2vw, 28px);
}

/* subtle inner border like screenshot */
.pos-offerCard::before{
  content:"";
  position:absolute;
  inset: 12px;
  border-radius: 20px;
  pointer-events:none;
  opacity: 0.95;
}

/* image block */
.pos-offerCard__imgWrap{
  height: clamp(320px, 28vw, 520px);
  display: grid;
  place-items: center;
}

.pos-offerCard__img{
  width: 50%;
  height: auto;
  display: block;
  filter: drop-shadow(0 18px 30px rgba(0,0,0,0.55));
  transform: translateY(8px);
}

/* text */
.pos-offerCard__h{
  margin: 14px 0 0;
  font-family: var(--pos-font-b);
  font-weight: 500;
  color: rgba(255,255,255,0.92);
  line-height: 1.35;

  font-size: clamp(18px, 1.55vw, 26px);
}

.pos-offerCard__p{
  margin: 18px 0 0;
  font-family: var(--pos-font-b);
  font-weight: 500;
  color: rgba(255,255,255,0.82);
  line-height: 1.6;

  font-size: clamp(14px, 1.05vw, 18px);
}






/* =========================
   MARKET DECK (Exact layout)
   Background: #132024
========================= */

.pos-marketDeck{
  background: #132024;
  padding: clamp(34px, 4vw, 60px) 0 clamp(60px, 6vw, 90px);
}

.pos-marketDeck__inner{
  width: min(1860px, calc(100% - 120px));
  margin: 0 auto;
  display: grid;
  gap: clamp(22px, 2.4vw, 34px);
}

/* ===== Card border style (same as screenshot) ===== */
.pos-marketDeckCard{
  position: relative;
  border-radius: 36px;
  overflow: hidden;

  /* the panel fill */
  background: rgba(15, 29, 33, 0.92);

  padding: clamp(26px, 2.4vw, 40px);

  box-shadow:
    0 24px 70px rgba(0,0,0,0.55);
}

/* Outer rim glow + inner highlight */
.pos-marketDeckCard::before{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events:none;

  box-shadow:
    inset 0 0 0 2px rgba(255,255,255,0.14),   /* crisp inner rim */
    inset 0 0 45px rgba(255,255,255,0.06),    /* inner glow */
    0 0 0 1px rgba(255,255,255,0.05),         /* faint outer rim */
    0 0 42px rgba(255,255,255,0.10);          /* outer glow */
}

/* Soft top sheen like your screenshot card edges */
.pos-marketDeckCard::after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events:none;
  background: linear-gradient(
    to bottom,
    rgba(255,255,255,0.16),
    rgba(255,255,255,0.06) 22%,
    rgba(255,255,255,0.00) 52%
  );
  opacity: 0.35;
}

/* ===== Titles (Moderniz) ===== */
.pos-marketDeckCard__title{
  position: relative;
  z-index: 1;
  margin: 0;
  text-align: center;

  font-family: var(--pos-font-h); /* Moderniz */
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.05;
  color: #fff;

  font-size: clamp(22px, 2.7vw, 62px);
}

/* spacing between title and content (like screenshot) */
.pos-marketDeckCard__row,
.pos-marketDeckCard__center{
  position: relative;
  z-index: 1;
  margin-top: clamp(18px, 2vw, 28px);
}

/* ===== Layout rows ===== */
.pos-marketDeckCard__row{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(26px, 4vw, 90px);
}

/* Card 1: keep the pair centered and not too wide */
.pos-marketDeckCard__row--two{
  width: min(1480px, 100%);
  margin-left: auto;
  margin-right: auto;
  padding-top: clamp(6px, 1vw, 14px);
}

/* Card 4: split pair wider (like screenshot) */
.pos-marketDeckCard__row--split{
  width: min(1650px, 100%);
  margin-left: auto;
  margin-right: auto;
  padding-top: clamp(10px, 1.2vw, 18px);
  padding-bottom: clamp(6px, 1vw, 14px);
}

/* Single image card center */
.pos-marketDeckCard__center{
  display: grid;
  place-items: center;
  min-height: clamp(420px, 32vw, 560px); /* creates the same “breathing space” */
}

/* ===== Images ===== */
.pos-marketDeckCard__img{
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  user-select: none;
}

/* Global card sizing (left tall + right wide) */
.pos-marketDeckCard__img--tall{
  max-height: clamp(320px, 26vw, 470px);
}

.pos-marketDeckCard__img--wide{
  max-height: clamp(300px, 25vw, 450px);
}

/* Single centered images */
.pos-marketDeckCard__img--center{
  max-height: clamp(320px, 24vw, 460px);
}

.pos-marketDeckCard__img--centerTall{
  max-height: clamp(360px, 28vw, 520px);
}

/* Split images (card 4) */
.pos-marketDeckCard__img--split{
  max-height: clamp(280px, 22vw, 420px);
}

/* Card height feel similar to screenshots */
.pos-marketDeckCard--global{ min-height: clamp(560px, 40vw, 820px); }
.pos-marketDeckCard--single{ min-height: clamp(520px, 36vw, 780px); }
.pos-marketDeckCard--split{  min-height: clamp(440px, 30vw, 660px); }





/* =========================================================
   POS RESPONSIVE (matches your mobile screenshots)
   Tablet + Mobile media queries only
   ========================================================= */

/* -----------------------------
   TABLET (<= 1024px)
------------------------------ */
@media (max-width: 1024px) {
  /* HERO */
  .pos-hero{
    margin-top: 0;
    min-height: 92vh;
    padding: 92px 0 28px; /* pushes content below fixed header */
  }

  .pos-hero__inner{
    width: calc(100% - 48px);
    grid-template-columns: 1fr;
    gap: 18px;
    text-align: left;
  }

  .pos-hero__visual{
    margin-top: 0;
    height: 360px;
  }

  .pos-machine--orange{ width: 46%; right: 50%; }
  .pos-machine--black{  width: 46%; right: 2%;  margin-bottom: -2%; }

  /* NEXTGEN (image section) */
  .pos-nextgen{
    height: auto;
    padding: 44px 0 56px;
  }
  .pos-nextgen__inner{ width: calc(100% - 48px); }
  .pos-nextgen__img{ width: 92%; }

  /* SMART RETAIL (3 cards -> 1 column on tab) */
  .pos-smartretail{
    height: auto;
    padding: 44px 0 62px;
  }
  .pos-smartretail__inner{ width: calc(100% - 48px); }
  .pos-smartretail__grid{ grid-template-columns: 1fr; }
  .pos-glasscard{ min-height: 420px; }
  .pos-glasscard__img{ width: 40%; }

  /* FULL IMAGE: show complete image (no crop) */
  .pos-fullvh{
    height: auto !important;
    overflow: visible !important;
  }
  .pos-fullvh__img{
    width: 100%;
    height: auto !important;
    object-fit: contain !important;
    display: block;
  }

  /* BENEFITS: convert 200vh -> 100vh layout like your screenshot */
  .pos-benefitsOne{
    min-height: 100vh;
    background-attachment: scroll;
  }
  .pos-benefitsOne__screen{
    width: calc(100% - 48px);
    height: 100vh;
    margin: 0 auto;
    --edge: 18px;
    padding: 0 var(--edge);
  }

  /* OFFERINGS: keep 2 cards side-by-side (like screenshot) */
  .pos-offerings{
    background-attachment: scroll;
    padding: 46px 0 74px;
  }
  .pos-offerings__inner{ width: calc(100% - 48px); }
  .pos-offerings__grid{
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  .pos-offerCard__imgWrap{ height: 320px; }
  .pos-offerCard__img{ width: 52%; }

  /* MARKET DECK */
  .pos-marketDeck__inner{
    width: calc(100% - 48px);
    gap: 18px;
  }
  .pos-marketDeckCard{
    border-radius: 28px;
    padding: 20px;
  }
  .pos-marketDeckCard__title{ font-size: 26px; }
  .pos-marketDeckCard__center{ min-height: 320px; }

  /* Keep 2 visuals side-by-side where required */
  .pos-marketDeckCard__row--two,
  .pos-marketDeckCard__row--split{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    width: 100%;
  }

  .pos-marketDeckCard__img--tall,
  .pos-marketDeckCard__img--wide,
  .pos-marketDeckCard__img--split{
    max-height: 260px;
  }
  .pos-marketDeckCard__img--center,
  .pos-marketDeckCard__img--centerTall{
    max-height: 360px;
  }

  .pos-marketDeckCard--global,
  .pos-marketDeckCard--single,
  .pos-marketDeckCard--split{
    min-height: auto;
  }
}


/* -----------------------------
   MOBILE (<= 768px)
------------------------------ */
@media (max-width: 768px) {
  /* HERO */
  .pos-hero{
    margin-top: 0;
    min-height: 92vh;
    padding: 88px 0 24px;
  }

  .pos-hero__inner{
    width: calc(100% - 32px);
    grid-template-columns: 1fr;
    gap: 14px;
    text-align: left;
  }

  .pos-hero__title{ font-size: 34px; line-height: 1.05; margin: 0 0 12px; }
  .pos-hero__sub{ font-size: 18px; margin: 0 0 10px; }
  .pos-hero__desc{ font-size: 14px; line-height: 1.6; }

  .pos-hero__visual{
    margin-top: 4px;
    height: 320px;
  }

  .pos-machine--orange{ width: 52%; right: 50%; }
  .pos-machine--black{  width: 52%; right: 0;   margin-bottom: -3%; }

  /* NEXTGEN (image section) */
  .pos-nextgen{
    height: auto;
    padding: 38px 0 48px;
  }
  .pos-nextgen__inner{ width: calc(100% - 32px); }
  .pos-nextgen__title{ font-size: 24px; }
  .pos-nextgen__img{ width: 100%; }

  /* SMART RETAIL */
  .pos-smartretail{
    height: auto;
    padding: 38px 0 54px;
  }
  .pos-smartretail__inner{ width: calc(100% - 32px); }
  .pos-smartretail__grid{ grid-template-columns: 1fr; }
  .pos-glasscard{ min-height: 380px; border-radius: 22px; }
  .pos-glasscard__img{ width: 46%; }

  /* FULL IMAGE: show complete image (no crop) */
  .pos-fullvh{
    height: auto !important;
    overflow: visible !important;
  }
  .pos-fullvh__img{
    width: 100%;
    height: auto !important;
    object-fit: contain !important;
    display: block;
  }

  /* BENEFITS: one-screen placements like your screenshot */
  .pos-benefitsOne{
    min-height: 100vh;
    background-attachment: scroll;
  }
  .pos-benefitsOne__screen{
    width: calc(100% - 32px);
    height: 100vh;
    margin: 0 auto;
    --edge: 16px;
    padding: 0 var(--edge);
  }

  .pos-benefit{ max-width: 92%; }
  .pos-benefit__h{ font-size: 26px; }
  .pos-benefit__p{ font-size: 16px; margin-top: 8px; }

  /* Re-map your blocks into ONE screen (0–100vh) */
  .pos-b1-topcenter{
    top: 10vh; right: 0; left: auto; text-align: left;  /* mobile screenshot looks left-aligned */
  }
  .pos-b1-toprightsub{
    top: 17vh; right: 0; left: auto; text-align: left;
    max-width: 92%;
  }
  .pos-b1-leftmid{
    top: 34vh; left: 0; right: auto; transform: translateY(-50%); text-align: left;
  }
  .pos-b1-bottomright{
    top: 50vh; right: 0; left: auto; transform: translateY(-50%); text-align: left;
  }
  .pos-b2-leftmid{
    top: 68vh; left: 0; right: auto; transform: translateY(-50%); text-align: left;
  }
  .pos-b2-bottomcenter{
    top: 86vh; right: 0; left: auto; transform: translateY(-50%); text-align: left;
  }
  .pos-b2-bottomrightsub{
    top: 92vh; right: 0; left: auto; text-align: left; max-width: 92%;
  }

  /* OFFERINGS: 2 cards side-by-side (like your screenshot) */
  .pos-offerings{
    background-attachment: scroll;
    padding: 42px 0 68px;
  }
  .pos-offerings__inner{ width: calc(100% - 32px); }
  .pos-offerings__title{ font-size: 30px; }
  .pos-offerings__grid{
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
  .pos-offerCard{ padding: 16px 14px 16px; border-radius: 22px; }
  .pos-offerCard__imgWrap{ height: 240px; }
  .pos-offerCard__img{ width: 66%; }
  .pos-offerCard__h{ font-size: 14px; line-height: 1.25; }
  .pos-offerCard__p{ font-size: 12.5px; margin-top: 10px; }

  /* MARKET DECK (matches your screenshot: first card has 2 visuals side-by-side) */
  .pos-marketDeck{ padding: 34px 0 70px; }
  .pos-marketDeck__inner{
    width: calc(100% - 32px);
    gap: 16px;
  }
  .pos-marketDeckCard{
    border-radius: 24px;
    padding: 18px;
  }
  .pos-marketDeckCard__title{ font-size: 22px; }
  .pos-marketDeckCard__center{ min-height: 260px; }

  .pos-marketDeckCard__row--two,
  .pos-marketDeckCard__row--split{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    width: 100%;
  }

  .pos-marketDeckCard__img--tall,
  .pos-marketDeckCard__img--wide,
  .pos-marketDeckCard__img--split{
    max-height: 190px;
  }

  .pos-marketDeckCard__img--center,
  .pos-marketDeckCard__img--centerTall{
    max-height: 320px;
  }

  .pos-marketDeckCard--global,
  .pos-marketDeckCard--single,
  .pos-marketDeckCard--split{
    min-height: auto;
  }
}


/* -----------------------------
   SMALL PHONES (<= 420px)
------------------------------ */
@media (max-width: 420px) {
  .pos-hero__title{ font-size: 30px; }
  .pos-hero__visual{ height: 300px; }

  .pos-offerings__grid{ gap: 12px; }
  .pos-offerCard__imgWrap{ height: 220px; }
  .pos-offerCard__h{ font-size: 13px; }

  .pos-marketDeckCard__title{ font-size: 20px; }
  .pos-marketDeckCard__img--tall,
  .pos-marketDeckCard__img--wide,
  .pos-marketDeckCard__img--split{
    max-height: 170px;
  }
}





/* =========================================================
   POS BENEFITS ONE — Mobile/Tablet layout (match screenshot)
   Paste at END of POS.css
   ========================================================= */

/* Tablet + Mobile base */
@media (max-width: 1024px) {
  .pos-benefitsOne{
    min-height: 100vh;
    background-attachment: scroll;
  }

  .pos-benefitsOne__screen{
    width: calc(100% - 48px);
    height: 100vh;
    margin: 0 auto;
    --edge: 16px;
    padding: 0 var(--edge);
  }

  /* Keep absolute layout (but single-screen) */
  .pos-benefit{
    position: absolute;
    transform: none !important;
    max-width: 92%;
  }

  /* Screenshot-style typography (not ALL CAPS) */
  .pos-benefit__h{
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 700;
    font-size: clamp(22px, 3.2vw, 34px);
    line-height: 1.05;
  }

  .pos-benefit__p{
    font-size: clamp(13px, 1.9vw, 16px);
    margin-top: 6px;
    line-height: 1.35;
    color: rgba(255,255,255,0.78);
  }

  /* 1) Top: centered heading */
  .pos-b1-topcenter{
    top: 8vh;
    left: 50%;
    right: auto;
    text-align: center;
    transform: translateX(-50%) !important;
    width: 100%;
    max-width: 100%;
  }

  /* 1b) Top subtext: right aligned */
  .pos-b1-toprightsub{
    top: 14.5vh;
    right: 0;
    left: auto;
    text-align: right;
    max-width: 70%;
  }

  /* 2) Fast scalability: left */
  .pos-b1-leftmid{
    top: 31vh;
    left: 0;
    right: auto;
    text-align: left;
    max-width: 78%;
  }

  /* 3) Real-time analytics: centered */
  .pos-b1-bottomright{
    top: 52vh;
    left: 50%;
    right: auto;
    text-align: center;
    transform: translateX(-50%) !important;
    max-width: 86%;
  }

  /* 4) Stronger brand visibility: left */
  .pos-b2-leftmid{
    top: 72vh;
    left: 0;
    right: auto;
    text-align: left;
    max-width: 86%;
  }

  /* 5) Bottom heading: centered */
  .pos-b2-bottomcenter{
    top: 88vh;
    left: 50%;
    right: auto;
    text-align: center;
    transform: translateX(-50%) !important;
    width: 100%;
    max-width: 100%;
  }

  /* 5b) Bottom subtext: right aligned */
  .pos-b2-bottomrightsub{
    top: 93vh;
    right: 0;
    left: auto;
    text-align: right;
    max-width: 70%;
  }
}

/* Mobile tighten */
@media (max-width: 768px) {
  .pos-benefitsOne__screen{
    width: calc(100% - 32px);
    --edge: 14px;
  }

  .pos-benefit__h{
    font-size: 22px;
  }

  .pos-benefit__p{
    font-size: 13.5px;
  }

  .pos-b1-toprightsub,
  .pos-b2-bottomrightsub{
    max-width: 78%;
  }

  .pos-b1-leftmid{ max-width: 82%; }
  .pos-b2-leftmid{ max-width: 90%; }
}

/* Small phones */
@media (max-width: 420px) {
  .pos-benefit__h{ font-size: 20px; }
  .pos-benefit__p{ font-size: 13px; }

  .pos-b1-toprightsub,
  .pos-b2-bottomrightsub{
    max-width: 86%;
  }
}
