@media (max-width: 768px) {
    /*cards*/
    .grid-container {
        grid-template-columns: 1fr; /* Stack cards vertically */
        gap: 16px;
        margin: 12px;
      }
    
      .card {
        border-radius: 8px;
      }
    
      .card h3 {
        font-size: 14px;
        margin: 8px;
      }
    
      .price-container {
        flex-direction: column; /* Stack price elements */
        gap: 6px;
      }

    /*layout*/
    .container {
        padding: 0 12px;
      }
    
      .page-main {
        margin: 10px;
        padding: 20px;
        border-radius: 10px;
      }
    
      .center-wrapper {
        margin-top: 30px;
        margin-bottom: 25px;
      }
    
      #category h2,
      #customize h2 {
        font-size: 20px;
        line-height: 1.3;
        margin-bottom: 15px;
      }
    
      #category a,
      #customize a,
      #app a {
        font-size: 16px;
      }
    
      .hero-video {
        height: 240px; /* Reduce height for mobile */
      }

      /*reset*/
      html, body {
        font-size: 15px; /* Slightly smaller base font */
        line-height: 1.5;
        grid-template-rows: auto 1fr auto; /* Retain layout but allow flexibility */
        overflow-x: hidden; /* Prevent horizontal scroll */
      }
    
      body {
        padding: 0 10px; /* Add horizontal breathing room */
      }

      /*navigation*/
      nav ul {
        flex-direction: column;      /* Stack items vertically */
        align-items: center;
        gap: 12px;
        padding: 10px 0;
      }
    
      nav ul li a {
        font-size: 15px;             /* Slightly smaller text */
        padding: 8px 12px;
      }
    
      .bag-link a {
        font-size: 15px;
        gap: 4px;
      }

      /*controls*/
      .controls {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 0 12px;
      }
    
      .controls input {
        width: 100%;
        font-size: 15px;
        padding: 8px 10px;
      }
    
      .controls select {
        width: 100%;
        font-size: 15px;
        padding: 8px 10px;
      }

      .top-header {
        flex-direction: column;
        align-items: stretch;
        padding: 15px;
        gap: 10px;
      }
    
      .header-left,
      .header-center,
      .header-right {
        justify-content: center;
        width: 100%;
      }
    
      .header-left img {
        height: 60px;
      }
    
      #searchInput {
        max-width: 100%;
        width: 90%;
      }
    
      .header-right {
        justify-content: center;
        gap: 15px;
      }
    
      .bag-link,
      .offers-link {
        font-size: 18px;
      }
    
      .bag-badge {
        top: -4px;
        right: -8px;
        font-size: 9px;
        padding: 1px 5px;
      }

      /*bag*/
      main {
        padding: 20px 10px;
      }
    
      main h1 {
        font-size: 24px;
        margin-bottom: 20px;
      }
    
      #bagContainer {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
        gap: 15px;
      }
    
      .bag-item {
        padding: 15px;
      }
    
      .bag-item img {
        height: 180px;
        margin-bottom: 10px;
      }
    
      .bag-item h3 {
        font-size: 16px;
      }
    
      .bag-item p {
        font-size: 13px;
      }
    
      .bag-item button {
        padding: 6px 12px;
        font-size: 13px;
      }
    
      #totalAmount {
        font-size: 18px;
        margin-bottom: 15px;
      }
    
      #checkoutBtn {
        padding: 10px 20px;
        font-size: 14px;
      }

      /*categories*/
      .categories {
        width: 100%;
        padding: 0 20px;
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
      }
    
      .category-card {
        width: 100%;
      }
    
      .category-card img {
        height: 200px;
      }
    
      .category-card h2 {
        font-size: 18px;
        padding: 12px;
      }
    
      .collections-container {
        padding: 30px 20px;
        grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
        gap: 15px;
      }
    
      .collections-card img {
        height: 160px;
      }
    
      .collections-card h2 {
        font-size: 16px;
        margin: 12px 0;
      }
    
      /*checkout*/
      main {
        padding: 10px;
      }
    
      h1 {
        font-size: 22px;
        margin-bottom: 20px;
      }
    
      #orderSummary,
      #checkoutForm,
      .coupon-section,
      .order-total {
        padding: 15px;
      }
    
      #checkoutForm input,
      .coupon-input-group input {
        font-size: 16px;
      }
    
      .coupon-input-group {
        flex-direction: column;
      }
    
      .coupon-input-group button {
        width: 100%;
      }
    
      .applied-coupon {
        flex-direction: column;
        gap: 10px;
        text-align: center;
      }
    
      .subtotal,
      .discount,
      .total {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
      }
    
      .rzp-button {
        width: 100%;
        justify-content: center;
        padding: 14px;
        font-size: 15px;
      }
    
      .rzp-label {
        font-size: 15px;
      }
    
      .rzp-subtext {
        font-size: 11px;
      }

      /*header-footer*/
      header {
        padding: 8px 0;
      }
    
      header .logo img {
        height: 60px;
      }
    
      .top-header {
        flex-direction: column;
        align-items: center;
        gap: 10px;
        padding: 10px 15px;
      }
    
      /*footer {
        padding: 15px;
      }
    
      footer a {
        font-size: 13px;
        display: inline-block;
        margin: 5px 8px;
      }
    
      footer p {
        font-size: 14px;
        margin-bottom: 8px;
      }*/

      /*offers*/
      .offers-container {
        padding: 10px;
      }
    
      .offers-header {
        padding: 30px 20px;
        border-radius: 10px;
      }
    
      .offers-header h1 {
        font-size: 28px;
      }
    
      .offers-subtitle {
        font-size: 16px;
      }
    
      .featured-offers h2,
      .all-coupons h2,
      .how-to-use h2 {
        font-size: 20px;
        margin-bottom: 20px;
      }
    
      .offers-grid,
      .coupons-grid,
      .steps-grid {
        grid-template-columns: 1fr;
        gap: 20px;
      }
    
      .offer-card,
      .coupon-card {
        padding: 20px;
      }
    
      .offer-content h3 {
        font-size: 22px;
      }
    
      .offer-content p,
      .coupon-description {
        font-size: 14px;
      }
    
      .coupon-header h3 {
        font-size: 16px;
      }
    
      .coupon-value {
        font-size: 18px;
      }
    
      .coupon-terms span {
        font-size: 11px;
      }
    
      .coupon-code-section,
      .offer-code {
        flex-direction: column;
        gap: 10px;
      }
    
      .copy-btn {
        width: 100%;
        justify-content: center;
      }
    
      .step-item {
        padding: 15px;
      }
    
      .step-number {
        width: 40px;
        height: 40px;
        font-size: 18px;
      }
    
      .step-content h3 {
        font-size: 16px;
      }
    
      .step-content p {
        font-size: 14px;
      }

      /*policies*/
      header {
        padding: 15px 0;
      }
    
      header .logo img {
        width: 200px;
      }
    
      nav ul {
        flex-direction: column;
        gap: 10px;
        padding: 10px 0;
      }
    
      .container {
        max-width: 100%;
        padding: 20px;
        border-radius: 8px;
      }
    
      .container h2 {
        font-size: 22px;
      }
    
      .container h3 {
        font-size: 18px;
      }
    
      .container p,
      .list ul li,
      .olist li {
        font-size: 15px;
      }
    
      .list ul,
      .olist {
        margin-left: 20px;
      }
    
      .team-container {
        padding: 20px;
        grid-template-columns: 1fr;
      }
    
      .team-card {
        width: 100%;
        padding: 15px;
        display: flex;
        align-items: center;
      }
    
      .card-header {
        flex-direction: column;
        align-items: center;
        text-align: center;
      }
    
      .card-header img {
        width: 140px;
        height: 140px;
        margin-right: 0;
        margin-bottom: 10px;
      }
    
      .card-header .info p {
        font-size: 13px;
      }
    
      .card-header .info .name {
        font-size: 16px;
      }
    
      .card-body {
        font-size: 13px;
      }
    
      /*footer {
        padding: 15px;
      }
    
      footer a {
        font-size: 13px;
        display: inline-block;
        margin: 5px 8px;
      }
    
      footer p {
        font-size: 14px;
      }*/
    
}

iframe {
  max-width: 100%;
  width: 640px;
}