/**
* ============================
*  3.Media Query
* ============================
*/
@font-face {
  font-family: "potro_sans";
  src: url("../../webfonts/potro_sans_bangla_regular-webfont.woff2") format("woff2"), url("../../webfonts/potro_sans_bangla_regular-webfont.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Noto+Sans+Bengali:wght@400;600&display=swap");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("../../webfonts/OpenSans-Italic.woff2") format("woff2"), url("../../webfonts/OpenSans-Italic.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,600;1,400&display=swap");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("../../webfonts/OpenSans-ExtraBold.woff2") format("woff2"), url("../../webfonts/OpenSans-ExtraBold.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@800&display=swap");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("../../webfonts/OpenSans-Bold.woff2") format("woff2"), url("../../webfonts/OpenSans-Bold.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@700&display=swap");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("../../webfonts/OpenSans-MediumItalic.woff2") format("woff2"), url("../../webfonts/OpenSans-MediumItalic.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@1,500&display=swap");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("../../webfonts/OpenSans-Regular.woff2") format("woff2"), url("../../webfonts/OpenSans-Regular.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400&display=swap");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("../../webfonts/OpenSans-Light.woff2") format("woff2"), url("../wdbfonts/OpenSans-Light.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300&display=swap");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("../../webfonts/OpenSans-SemiBold.woff2") format("woff2"), url("OpenSans-SemiBold.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@600&display=swap");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("../../webfonts/OpenSans-Medium.woff2") format("woff2"), url("../../webfonts/OpenSans-Medium.woff") format("woff"), url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@500&display=swap");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "certificate";
  src: url("../../webfonts/Certificate.woff2") format("woff2"), url("../../webfonts/Certificate.woff") format("woff"), local("Times New Roman");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "certificate";
  src: url("../../webfonts/CertificateBoldSWFTE.woff2") format("woff2"), url("../../webfonts/CertificateBoldSWFTE.woff") format("woff"), local("Times New Roman Bold");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "certificate";
  src: url("../../webfonts/CertificateRegularSWFTE.woff2") format("woff2"), url("../../webfonts/CertificateRegularSWFTE.woff") format("woff"), local("Times New Roman");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "certificate";
  src: url("../../webfonts/CertificateBoldItalicSWFTE.woff2") format("woff2"), url("../../webfonts/CertificateBoldItalicSWFTE.woff") format("woff"), local("Times New Roman Bold Italic");
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "certificate";
  src: url("../../webfonts/CertificateItalicSWFTE.woff2") format("woff2"), url("../../webfonts/CertificateItalicSWFTE.woff") format("woff"), local("Times New Roman Italic");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "italianno";
  src: url("../../webfonts/Italianno-Regular.woff2") format("woff2"), url("../../webfonts/Italianno-Regular.woff") format("woff"), url("../../webfonts/Italianno-Regular.ttf") format("truetype"), local("Brush Script MT");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Pinyon Script";
  src: url("../../webfonts/PinyonScript-Regular.woff2") format("woff2"), url("../../webfonts/PinyonScript-Regular.woff") format("woff"), local("Brush Script MT");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Luxurious Script";
  src: url("../../webfonts/LuxuriousScript-Regular.woff2") format("woff2"), url("../../webfonts/LuxuriousScript-Regular.woff") format("woff"), local("Brush Script MT");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "avenir";
  src: url("../../webfonts/AvenirNextLTPro-Regular.woff2") format("woff2"), url("../../webfonts/AvenirNextLTPro-Regular.woff") format("woff"), local("Arial");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "avenir";
  src: url("../../webfonts/AvenirNextLTPro-Demi.woff2") format("woff2"), url("../../webfonts/AvenirNextLTPro-Demi.woff") format("woff"), local("Arial");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "avenir";
  src: url("../../webfonts/AvenirNextLTPro-MediumCn.woff2") format("woff2"), url("../../webfonts/AvenirNextLTPro-MediumCn.woff") format("woff"), local("Arial");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "avenir";
  src: url("../../webfonts/AvenirNextLTPro-HeavyCn.woff2") format("woff2"), url("../../webfonts/AvenirNextLTPro-HeavyCn.woff") format("woff"), local("Arial Black");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "avenir";
  src: url("../../webfonts/AvenirNextLTPro-Bold.woff2") format("woff2"), url("../../webfonts/AvenirNextLTPro-Bold.woff") format("woff"), local("Arial Bold");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "MonteCarlo";
  src: url("../../webfonts/MonteCarlo-Regular.woff2") format("woff2"),
    url("../../webfonts/MonteCarlo-Regular.woff") format("woff"), local("Comic Sans MS");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'English111 Vivace BT';
  src: url('../../webfonts/English111VivaceBT-Regular.woff2') format('woff2'),
    url('../../webfonts/English111VivaceBT-Regular.woff') format('woff'), local("Brush Script MT");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'English111 Presto BT';
  src: url('../../webfonts/E111Psto.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/*************************** start common css **************************************/
html {
  font-size: 62.5%;
  overflow-x: hidden;
}

body {
  overflow-x: auto;
  font-family: "Open Sans", sans-serif;
  font-weight: normal;
  font-size: 1rem;
}

body a {
  text-decoration: none;
}

ol,
ul {
  list-style: none;
}

.pt9,
.py9 {
  padding-top: 90px !important;
}

.mt9,
.my9 {
  margin-top: 90px !important;
}

.pl-0 {
  padding-left: 0 !important;
}

.pb-6,
.site_map {
  padding-bottom: 60px;
}

.py9 {
  padding-bottom: 90px !important;
}

.pt45,
.py45 {
  padding-top: 45px !important;
}

.pb45,
.py45 {
  padding-bottom: 45px !important;
}

.mb9 {
  margin-bottom: 90px;
}

.my9 {
  margin-bottom: 90px !important;
}

.mt45,
.my45 {
  margin-top: 45px !important;
}

.mb45,
.my45 {
  margin-bottom: 45px !important;
}

/*************************** end common css **************************************/
body {
  margin: 0;
  padding: 0;
  overflow-x: auto;
}

.certificate {
  position: relative;
  width: 29.21cm;
  height: 21.5cm;
  z-index: 1;
  margin: 0 auto;
  overflow: visible;
  background: #fff;
  min-height: 21.5cm;
}

/* .certificate {
  position: relative;
  width: 11.693in;
  height: 8.2678in;
  z-index: 1;
  margin: 0 auto;
} */

.certificate::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-image: url("../img/certificate.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  z-index: -1;
}

.certificate__content {
  display: flex;
  height: 100%;
  min-height: 21.5cm;
  padding: 0 96px;
  padding-top: 29px;
}

.certificate__content .left {
  width: 20%;
  margin-top: 280px;
  margin-bottom: 50px;
  text-align: center;
  padding-left: 12px;
}

.certificate__content .left p {
  font-size: 10px;
  font-weight: bold;
  margin-bottom: 0;
  color: #342b27;
}

.certificate__content .left a {
  color: #342b27;
  font-size: 8px;
  letter-spacing: -0.4px;
}

.certificate__content .left .qr__code--img {
  width: 96px;
  height: auto;
  display: block;
  margin: 0 auto;
}

.certificate__content .right {
  width: 80%;
}

.certificate__content .right .table {
  margin-top: 278px;
  margin-left: 30px;
  font-size: 29px;
  font-weight: 600;
  display: flex;
  flex-direction: column;
  width: 95%;
  color: #342b27;
  gap: 9px;
  letter-spacing: 1.5px;
}

.certificate__content .right .table p {
  margin-bottom: 2px;
  margin-top: 0px;
}

.certificate__content .right .table .name {
  margin-left: 180px;
}

.certificate__content .right .table .father {
  margin-left: 150px;
}

.certificate__content .right .table .mother {
  margin-left: 100px;
  margin-top: -6px;
}

.certificate__content .right .table .course {
  margin-left: 210px;
  margin-top: -2px;
}

.certificate__content .right .table .ins__name {
  display: flex;
  justify-content: space-between;
  margin-left: 55px;
}

.certificate__content .right .table .ins__name .branch__code {
  margin-right: 30px;
}

.certificate__content .right .table .session__grade {
  display: flex;
  /* justify-content: space-between; */
  margin-left: 60px;
  margin-top: -5px;
}

.certificate__content .right .table .session__grade .grade {
  margin-right: -10px !important;
  font-size: 25px !important;
  margin-top: 4px !important;
}

.certificate__content .right .table .reg__issue__serial {
  display: flex;
  margin-left: 123px;
  margin-top: -3px;
}

.certificate__content .right .table .reg__issue__serial .issue__date {
  margin-left: 295px;
}

.certificate__content .right .table .reg__issue__serial .serial__no {
  margin-left: 140px;
}

.certificate__content .right .table .number {
  font-size: 31px;
}

.certificate__content .right .signature {
  display: flex;
  justify-content: space-between;
  padding: 0 47px;
  margin-top: 20px;
}

.certificate__content .right .signature img {
  height: 40px;
  width: auto;
}

/* New CSS - Final positioning adjustments */

.certificate__content .right .table {
  font-size: 25px !important;
  margin-top: 322px !important;
  gap: 7px;
  padding-left: 23px;
  position: relative;
  min-height: 250px;
}

.certificate__content .left {
  margin-left: 15px !important;
  padding-left: 0 !important;
  margin-top: 380px !important;
  width: 18%;
}

.certificate__content .right {
  width: 81%;
}

.certificate__content {
  padding: 0 77px !important;
}

.certificate__content .right .table .name {
  position: absolute;
  left: -40px;
  top: 5px;
}

.certificate__content .right .table .father {
  position: absolute;
  left: -45px;
  top: 48px;
}

.certificate__content .right .table .mother {
  position: absolute;
  left: -60px;
  top: 91px;
}

.certificate__content .right .table .course {
  position: absolute;
  left: -40px;
  top: 125px;
}

.certificate__content .right .table .ins__name {
  position: absolute;
  left: 10px;
  top: 160px;
  width: 100%;
}

.certificate__content .right .table .ins__name .branch__code {
  position: absolute;
  left: 605px;
  font-size: 25px;
  top: 10px;
}

.certificate__content .right .table .session__grade {
  position: absolute;
  left: -20px;
  top: 212px;
  width: 100%;
}

.certificate__content .right .table .session__grade .grade {
  position: absolute;
  left: 630px;
  top: 0;
  font-size: 25px !important;
}

.certificate__content .right .table .reg__issue__serial {
  position: absolute;
  left: -40px;
  top: 250px;
  width: 100%;
}

.certificate__content .right .table .reg__issue__serial .issue__date {
  position: absolute;
  left: 60px;
  top: 0;
}

.certificate__content .right .table .reg__issue__serial .serial__no {
  position: absolute;
  left: 60px;
  top: 0;
}

.certificate__content .right {
  width: 78%;
}

.certificate__content .right .signature img {
  width: 100px;
  max-height: 45px;
}

.certificate__content .right .signature {
  padding: 0 60px;
  margin-top: 36px;
}

.certificate__content .right .table .session__grade p {
  font-size: 25px !important;
}

.certificate__content .right .table .reg__issue__serial p {
  font-size: 25px !important;
}

.certificate__content .right .signature img:last-child {
  margin-left: 465px;
}

.certificate__content .right .signature img:first-child {
  margin-left: 0px;
}

.certificate__content .left * {
  margin-right: -25px;
}

@media print {
  @page {
    size: 29.21cm 21.5cm;
    margin-top: 0.5px;
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0.5px;
    padding: 0;
  }

  html, body {
    margin: 0 !important;
    padding: 0 !important;
    height: 100%;
    overflow: hidden;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .certificate__page {
    margin: 0 !important;
    padding: 0 !important;
    page-break-inside: avoid;
    overflow: hidden;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .certificate {
    margin: 0 !important;
    padding: 0 !important;
    width: 29.21cm !important;
    height: 21.5cm !important;
    page-break-inside: avoid;
    overflow: visible !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* Hide background image when printing */
  .certificate::after {
    display: none !important;
  }

  /* Show background when generating PDF */
  body.pdf-mode .certificate::after {
    display: block !important;
  }

  /* Hide action buttons when printing */
  body > div[style*="position: fixed"] {
    display: none !important;
  }
}

/* @media print {
  @page {
    size: 11.6929in 8.272in;
    margin-left: 0;
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
    padding: 0;
  }

  .certificate {
    margin: 0;
    padding: 0;
    width: 11.6929in;
    height: 8.2678in;
  }
} */

.certificate__content .right .table .session__grade .session {
  width: 589px;
}


/* added by hasan for certificate drage and drope */

.draggable {
  cursor: move;
  position: relative;
  z-index: 10;
}

.certificate__content>.left {
  position: relative;
}

.certificate__content>.left .draggable {
  position: relative;
  height: auto;
  width: auto;
  display: inline-block;
}

.name,
.father,
.mother,
.course {
  height: 33.1076px;
  position: relative;
}

.ins__name {
  height: 38.1076px;
  position: relative;
}

.session__grade {
  height: 37.1007px;
  position: relative;
}

.reg__issue__serial {
  height: 33.1076px;
  position: relative;
}

.session__grade .session {
  position: relative;
  left: auto;
}

.session__grade .grade {
  position: relative;
  right: auto;
  margin-right: 30px;
}

.ins_name .branch_name {
  position: relative !important;
  left: auto !important;
}

.ins_name .branch_code {
  position: relative !important;
  right: auto !important;
  margin-right: 30px !important;
}