.demo-hero {
	border-radius:0px!important;
	padding-top:60px;
}

.demo-hero .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
}

.demo-hero p {
	max-width:100%!important;
}

.btn{
     margin:0 auto;
}

@media (max-width: 767px) {
  .sec {
    padding-top: 70px!important; /* match your navbar height */
  }
}

@media (min-width: 768px) {
  .sec {
    padding-top: 80px; /* match your desktop navbar height */
  }
}


.prodfeat {
	border-radius:0px!important;
	padding-top:60px;
	padding-left:20px!important;
}

.prodfeat__img {
    overflow: hidden;
    position: relative;
}

.prodfeat__img img {
    /* width: 110%; */      /* scale beyond container */
	width: 130%;
    /*  max-width: 120%; */
    height: auto;
    transform: scale(1.0);
	/* margin-top: -58px; */
	display: block;
}

.toggle-panel__img{
	/*height:650px;*/

}

#funtones .toggle-panel__img{
	height:560px;
}

@media (max-width: 767px) {
	.toggle-panel__img{
		height:auto;
	}
	#funtones .toggle-panel__img{
		height:auto;
	}
	.prodfeat__img img {
		width: 110%;      /* scale beyond container */
		max-width: 120%;
		height: auto;
		transform: scale(1.1);
		margin-top: -28px;
	}
}

/*tourist sim*/
.promo-graphic--5g {
	position: relative;
}

.prebook-badge {
	position: absolute;
	left: -12rem;
	top: 35%;
	border-radius: 50%;
	width: 160px;
	height: 160px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #fff;
	/* box-shadow: 0 8px 24px rgba(0,0,0,0.15); */
}

/* ===== Promo List (Calls / SMS / Validity) ===== */
.promo-list {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	margin: 0 0 1.5rem 0;
	padding: 0;
	list-style: none;
}

.promo-list li {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	font-size: 1rem;
	line-height: 1.2;
}

.promo-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	min-width: 36px;
	border-radius: 50%;
	background: #e3e8fb;
	color: #2440d8;
}

.promo-icon svg {
	width: 18px;
	height: 18px;
}

/* ===== Secure / Fast / Pick-up line ===== */
.secure-line {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	color: #444;
	font-size: 0.85rem;
	margin-top: -20px;
}

@media (max-width: 767px) {
	.secure-line {
		margin-top: -1.25rem;
        margin-left: 10px;
	}
}

.promo-img {
    height: 400px!important;
    width: auto;
    max-width: auto;
    object-fit: contain;
    display: block;
}

.promo-travel-img {
    height: 470px!important;
    width: auto;
    max-width: auto;
    object-fit: contain;
    display: block;
}

/*travel features*/
.features-row {
  display: flex;
  gap: 32px;
  margin: 28px 0;
}

.feature {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 110px;
  flex-shrink: 0; /* prevents squishing on desktop */
}

.feature-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}

.feature-icon svg {
  width: 26px;
  height: 26px;
}

.feature-label {
  font-size: 14px;
  font-weight: 500;
  color: #000!important;
  line-height: 1.3;
  margin: 0;
}

/* ===== Mobile fix ===== */
@media (max-width: 600px) {
  .features-row {
    flex-wrap: wrap;          /* let items drop to a new line */
    justify-content: center;
    gap: 16px 12px;           /* smaller row/column gaps */
  }

  .feature {
    width: calc(50% - 12px);  /* 2 per row instead of 4 in a line */
    flex-shrink: 1;
  }

  .feature-icon {
    width: 48px;
    height: 48px;
  }

  .feature-icon svg {
    width: 22px;
    height: 22px;
  }

  .feature-label {
    font-size: 13px;
  }
}

.quickactionsicon-circle {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #ffffff;   /* white circle */
  display: flex;
  align-items: center;
  justify-content: center;
}

.feature {
    width: 139px!important;
}

.features-row {
    gap: 10px!important;
}


/*intro section*/

body{ background: var(--od-white); }

/* Shared container geometry — header and banner content sit on one left edge. */
.wrap{ max-width: var(--container); margin: 0 auto; padding: 0 20px; }

.page-head{ padding-top: 20px; }

/* ---------- Banner ---------- */
.databanner{
  /*background-color: var(--od-black); */
  background-image: var(--hero-art);   /* path is set on the section tag */
	background-repeat: no-repeat;
	background-position: center left;
	background-size: 110%;
	margin-top: 106px;
	padding-bottom: 60px;
}

.databanner__inner{
  display: flex;
  align-items: center;
  min-height: clamp(480px, 42vw, 640px);
}

/* Mobile-only art. Hidden on desktop, where the photo is the section
   background instead. */
.databanner__art{ display: none; }

/* Diagonal-cut panel: square on one diagonal, --r-xl on the other. */
.databanner__panel{
  background: var(--myt-blue);
  color: var(--od-white);
  border-radius: 0 var(--r-xl) 0 var(--r-xl);
  padding: clamp(36px, 3.4vw, 56px) clamp(30px, 3vw, 52px);
  /*width: min(52%, 580px); */
}

.databanner__panel h1{
  color: var(--myt-aqua);
  font-weight: var(--fw-bold);
  margin: 0 0 30px;
}

.databanner__q{
  font-size: var(--fs-h5);
  line-height: var(--lh-heading);
  color: var(--od-white);
  margin: 0 0 22px;
}

.databanner__body{
  font-size: var(--fs-bodysmall);
  line-height: var(--lh-body);
  color: rgba(255,255,255,.9);
  margin: 0 0 30px;
  /*max-width: 36ch;*/
}

.databanner .btn-dark{ font-weight: var(--fw-semibold); }
.databanner .btn-dark:hover{ background: var(--od-white); color: var(--od-black); }

/* ---------- Tablet + Mobile (stacked layout) ---------- */
@media (max-width: 1100px){
  :root .p-6{ padding: 1.9rem !important; }
  .wrap{ padding: 0 12px; }
  .page-head{ padding-top: 12px; }

  .databanner{
    background-image: none;             /* photo-as-bg off */
    background-color: var(--od-white);
    margin-top: 104px;
    padding-bottom: 0;                  /* kill extra space below image */
  }

  .databanner__inner{
    display: block;
    min-height: 0;
  }

  .databanner__panel{
    width: auto;                        /* full width */
    border-radius: 0 var(--r-sm) 0 var(--r-sm);
    padding: 32px 24px;
  }

  .databanner__panel h1{ margin-bottom: 24px; }
  .databanner__q{ margin-bottom: 18px; }
  .databanner .btn{ width: 100%; justify-content: center; }

  /* Photo, full-bleed, directly beneath the panel */
  .databanner__art{
    display: block;
    width: 100%;
    height: auto;
    border-radius: 90px;
    padding: 30px 30px 0 30px;          /* no bottom padding */
  }
}

/* ---------- Mobile ---------- */
@media (max-width: 760px){
  :root .p-6{ padding: 1.9rem !important; }

  .wrap{ padding: 0 12px; }
  .page-head{ padding-top: 12px; }

  .databanner{
    background-image: none;             /* desktop art off */
    background-color: var(--od-white);
    margin-top: 104px;
  }

  .databanner__inner{
    display: block;
    min-height: 0;
  }

  .databanner__panel{
    width: auto;
    border-radius: 0 var(--r-sm) 0 var(--r-sm);
    padding: 32px 24px;
  }
  .databanner__panel h1{ margin-bottom: 24px; }
  .databanner__q{ margin-bottom: 18px; }
  .databanner .btn{ width: 100%; justify-content: center; }

  /* Photo, full-bleed, directly beneath the panel. */
	.databanner__art {
	        display: block;
	        width: 100%;
	        height: auto;
	        /* margin-top: 18px; */
	        border-radius: 50px;
	        padding: 30px;
	    }
}

@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{ transition-duration: .001ms !important; }
}

.prodfeat { background: none !important;}


/* Card with a ribbon: anchor it, clip it to the card's rounded corners, make room for it */
.bundle-light.has-ribbon {
  position: relative;
  overflow: hidden;
  padding-top: 5.5rem !important;          /* overrides p-6 top so the ribbon doesn't cover "3-Month" */
}

.pkg__ribbon {
  position: absolute;
  top: 0; left: 0; right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 13px 16px;
  background: linear-gradient(135deg, var(--myt-blue, #153ED9), var(--myt-aqua, #00B4C8));
  color: var(--od-white, #fff);
  font-family: 'Poppins', Arial, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  border-radius: 0;                         /* the card's overflow:hidden rounds the top corners */
}

.opt-packs-svg {
  display: inline-block;
  width: 26px;
  height: 26px;
  flex: 0 0 auto;
  background-color: currentColor;           /* white, follows the ribbon text */
  -webkit-mask: var(--glow-icon-mask) center / contain no-repeat;
          mask: var(--glow-icon-mask) center / contain no-repeat;
}

@media (max-width: 760px) {
  .bundle-light.has-ribbon { padding-top: 4.5rem !important; }
  .pkg__ribbon { font-size: 17px; padding: 11px 14px; }
}

.boldtxt {font-weight: 700;}


/* data packs - buy */
.mbuy{
  /* every value below resolves from ds.css; the fallbacks are only
     there in case the block is previewed without the design system */
  --mbuy-panel:   var(--od-grey-50,  #F4F6FB);
  --mbuy-line:    var(--od-grey-200, #E3E7F0);
  --mbuy-muted:   var(--od-grey-600, #5E6488);
  --mbuy-chev:    var(--od-grey-600, #5E6488);   /* grey-400 is too faint for a 3:1 affordance */
  --mbuy-ink:     var(--od-black,    #14151b);
  --mbuy-accent:  var(--myt-blue,    #153ED9);
  --mbuy-tile:    var(--od-lavender, #DEE4FA);
  /* myt money row — tints of the DS green (--mint-green / --success-green).
     The text green is darkened to clear 4.5:1 on its own background. */
  --mbuy-mm-bg:   #EFFAF4;
  --mbuy-mm-bg2:  #E4F6EC;
  --mbuy-mm-line: #C3E6D4;
  --mbuy-mm-tile: #D6F1E3;
  --mbuy-mm-ink:  #1C7C45;

  font-family: var(--font, 'Poppins', system-ui, sans-serif);


  border-radius: var(--r-sm, 30px);
  padding: 0px;
  color: var(--mbuy-ink);
}

.mbuy__label{
  margin: 0 0 14px;
  font-size: 13px;
  font-weight:  500;


  color: var(--mbuy-muted);
}

.mbuy__list{ display: grid; gap: 10px; }

.mbuy__opt{
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid var(--mbuy-line);
  border-radius: 18px;
  text-decoration: none;
  color: inherit;
  transition: border-color .18s, box-shadow .18s, transform .18s;
}
.mbuy__opt:hover,
.mbuy__opt:focus-visible{
  color: inherit;
  border-color: var(--mbuy-accent);
  box-shadow: 0 6px 18px rgba(21, 62, 217, .12);
  transform: translateY(-1px);
}
.mbuy__opt:focus-visible{
  outline: 2px solid var(--mbuy-accent);
  outline-offset: 2px;
}

.mbuy__ic{
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  background: var(--mbuy-tile);
  color: var(--mbuy-accent);
}
.mbuy__ic svg{ width: 20px; height: 20px; }

.mbuy__txt{
  flex: 1 1 auto;
  min-width: 0;                /* lets long lines wrap instead of overflowing */
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.mbuy__kicker{
  font-size: 12.5px;
  font-weight: var(--fw-medium, 500);
  color: var(--mbuy-muted);
  line-height: 1.3;
}
.mbuy__main{
  font-size: 15px;
  font-weight: var(--fw-semibold, 600);
  line-height: 1.35;
  overflow-wrap: anywhere;     /* never pushes the card wider than the screen */
}

/* the SMS keyword chip and the short code */
.mbuy__key{
  display: inline-block;
  background: var(--mbuy-accent);
  color: #fff;
  font-weight: var(--fw-bold, 700);
  border-radius: 7px;
  padding: 1px 7px;
  letter-spacing: .03em;
}
.mbuy__num{ color: var(--mbuy-accent); font-weight: var(--fw-bold, 700); }

.mbuy__go{
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  color: var(--mbuy-chev);
  transition: transform .18s, color .18s;
}
.mbuy__opt:hover .mbuy__go,
.mbuy__opt:focus-visible .mbuy__go{
  color: var(--mbuy-accent);
  transform: translateX(3px);
}

/* ---- myt money row ---- */
.mbuy__opt--money{
  background: linear-gradient(135deg, var(--mbuy-mm-bg), var(--mbuy-mm-bg2));
  border-color: var(--mbuy-mm-line);
}
.mbuy__opt--money:hover,
.mbuy__opt--money:focus-visible{
  border-color: var(--mbuy-mm-ink);
  box-shadow: 0 6px 18px rgba(28, 124, 69, .16);
}
.mbuy__opt--money:focus-visible{ outline-color: var(--mbuy-mm-ink); }
.mbuy__opt--money .mbuy__ic{
  background: var(--mbuy-mm-tile);
  color: var(--mbuy-mm-ink);
}
.mbuy__opt--money:hover .mbuy__go,
.mbuy__opt--money:focus-visible .mbuy__go{ color: var(--mbuy-mm-ink); }
.mbuy__cash{ color: var(--mbuy-mm-ink); font-weight: var(--fw-bold, 700); }

/* ---- mobile ---- */
@media (max-width: 575.98px){
  .mbuy{  border-radius: var(--r-sm, 24px); }
  .mbuy__label{ font-size: 11.5px; margin-bottom: 12px; }
  .mbuy__list{ gap: 9px; }
  .mbuy__opt{ gap: 12px; padding: 11px 12px; border-radius: 16px; }
  .mbuy__ic{ width: 36px; height: 36px; border-radius: 12px; }
  .mbuy__ic svg{ width: 18px; height: 18px; }
  .mbuy__kicker{ font-size: 11.5px; }
  .mbuy__main{ font-size: 14px; }
}
@media (max-width: 359.98px){
  .mbuy{ padding: 16px 13px; }
  .mbuy__opt{ gap: 10px; padding: 10px; }
  .mbuy__ic{ width: 32px; height: 32px; border-radius: 10px; }
  .mbuy__ic svg{ width: 16px; height: 16px; }
  .mbuy__main{ font-size: 13.5px; }
}

/* respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .mbuy__opt, .mbuy__go{ transition: none; }
  .mbuy__opt:hover, .mbuy__opt:focus-visible{ transform: none; }
  .mbuy__opt:hover .mbuy__go, .mbuy__opt:focus-visible .mbuy__go{ transform: none; }
}
