*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:'Poppins',sans-serif;
}

body{
  color:#333;
  position: relative;
  font-family:'Poppins',sans-serif;
  background: transparent;
}

.bp-container {
  max-width: 1200px;
  margin: auto;
  padding: 0 20px;
}

/* ===== BREADCRUMB ===== */
.au-breadcrumb {
  background: #fffaf3;
  padding: 14px 20px;
  border-bottom: 1px solid rgba(255,122,24,0.15);
}

.breadcrumb-list {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #6d5b4b;
  flex-wrap: wrap;
}

.breadcrumb-list a {
  text-decoration: none;
  color: #ff7a18;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.breadcrumb-list a:hover {
  text-decoration: underline;
}

.breadcrumb-separator {
  color: #bfa48a;
  font-size: 12px;
}

.breadcrumb-current {
  color: #2c1d14;
  font-weight: 600;
}

/* MOBILE */
@media (max-width: 600px) {
  .breadcrumb-list {
    font-size: 13px;
    gap: 6px;
    /* row-gap: 6px; */
  }
}

/* Hero */
.bp-hero {
  padding: 90px 20px;
  text-align: center;
  background: linear-gradient(135deg, #fdebd2, #fff3e0);
}
.bp-hero h1 {
  font-size: 46px;
  margin-bottom: 12px;
}
.bp-hero p {
  max-width: 620px;
  margin: auto;
  font-size: 18px;
}

/* Sections */
.bp-section {
  padding: 80px 0;
}
.bp-light {
  background: #fff;
}
.bp-center {
  text-align: center;
  font-size: 34px;
  margin-bottom: 50px;
}

/* Steps */
.bp-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
  gap: 28px;
}
.bp-step {
  background: #fff;
  padding: 30px;
  border-radius: 20px;
  text-align: center;
  box-shadow: 0 15px 35px rgba(0,0,0,0.08);
}
.bp-step i {
  font-size: 30px;
  color: #ff7a18;
  margin-bottom: 14px;
}

/* Puja Cards */
.bp-puja-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px,1fr));
  gap: 28px;
}
.bp-puja-card {
  background: #fff;
  padding: 32px;
  border-radius: 22px;
  text-align: center;
  transition: 0.4s;
  box-shadow: 0 18px 45px rgba(0,0,0,0.08);
}
.bp-puja-card:hover {
  transform: translateY(-10px);
}
.bp-puja-card i {
  font-size: 34px;
  color: #ff7a18;
  margin-bottom: 12px;
}

/* Form */
.bp-form-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 50px;
}
.bp-form-box input,
.bp-form-box select {
  width: 100%;
  padding: 14px;
  margin-bottom: 14px;
  border-radius: 12px;
  border: 1px solid #ddd;
}
.bp-form-box button {
  width: 100%;
  padding: 14px;
  border-radius: 30px;
  border: none;
  background: #ff7a18;
  color: #fff;
  font-weight: 600;
}

/* Trust */
.bp-trust-box {
  background: #fffaf3;
  padding: 36px;
  border-radius: 22px;
}
.bp-trust-box ul {
  list-style: none;
  margin-top: 18px;
}
.bp-trust-box li {
  margin-bottom: 10px;
}

/* CTA */
.bp-cta {
  padding: 80px 20px;
  text-align: center;
  background: linear-gradient(135deg,#ff7a18,#ff9800);
  color: #fff;
}

/* Animation */
[data-animate] {
  opacity: 0;
  transform: translateY(30px);
  transition: 0.8s ease;
}
[data-animate].show {
  opacity: 1;
  transform: translateY(0);
}

/* Responsive */
@media (max-width: 768px) {
  .bp-form-grid {
    grid-template-columns: 1fr;
  }
  .bp-hero h1 {
    font-size: 34px;
  }
}


/* =====================================================
UNIVERSAL RESPONSIVE MASTER FIX
PASTE THIS AT THE VERY END OF CSS
===================================================== */

/* GLOBAL SAFETY */
html,
body{
    width:100%;
    overflow-x:hidden;
    scroll-behavior:smooth;
}

/* Better sizing */
*,
*::before,
*::after{
    box-sizing:border-box;
}

/* Responsive media */
img,
video,
iframe,
canvas{
    max-width:100%;
    height:auto;
    display:block;
}

/* Prevent layout breaking */
section,
div,
.container,
.bp-container{
    max-width:100%;
}

/* Typography responsive */
h1{
    font-size:clamp(30px,5vw,56px);
    line-height:1.2;
}

h2{
    font-size:clamp(24px,4vw,42px);
    line-height:1.3;
}

h3{
    font-size:clamp(20px,3vw,30px);
    line-height:1.4;
}

p,
span,
a,
button,
input,
select{
    font-size:clamp(14px,2vw,16px);
}

/* Long text safety */
p,
h1,
h2,
h3,
h4,
h5,
h6,
a,
span{
    overflow-wrap:break-word;
    word-wrap:break-word;
}

/* HEADER & FOOTER PROTECTION */
header,
footer{
    width:100%;
    max-width:100%;
    overflow:hidden;
}

/* Navbar wrap safety */
nav ul{
    flex-wrap:wrap;
}

/* BUTTON SAFETY */
button{
    cursor:pointer;
    transition:.3s ease;
}

/* INPUT SAFETY */
input,
textarea,
select{
    width:100%;
    max-width:100%;
}

/* =====================================================
HERO SECTION
===================================================== */

.bp-hero{
    width:100%;
    overflow:hidden;
}

.bp-hero h1{
    line-height:1.2;
}

.bp-hero p{
    line-height:1.7;
}

/* =====================================================
GRID RESPONSIVE SAFETY
===================================================== */

.bp-steps,
.bp-puja-grid{
    width:100%;
}

/* Card safety */
.bp-step,
.bp-puja-card,
.bp-trust-box{
    width:100%;
    overflow:hidden;
}

/* =====================================================
FORM SECTION SAFETY
===================================================== */

.bp-form-grid{
    width:100%;
    align-items:start;
}

.bp-form-box{
    width:100%;
}

.bp-form-box input,
.bp-form-box select{
    font-size:15px;
}

/* =====================================================
LARGE LAPTOP
===================================================== */

@media (max-width:1200px){

    .bp-container{
        padding:0 18px;
    }

}

/* =====================================================
TABLET VIEW
===================================================== */

@media (max-width:992px){

    .bp-section{
        padding:60px 0;
    }

    .bp-center{
        margin-bottom:40px;
    }

    .bp-form-grid{
        grid-template-columns:1fr;
        gap:30px;
    }

}

/* =====================================================
MOBILE VIEW
===================================================== */

@media (max-width:768px){

    body{
        font-size:14px;
    }

    .bp-container{
        padding:0 14px;
    }

    .bp-hero{
        padding:60px 14px;
    }

    .bp-hero h1{
        font-size:34px;
        line-height:1.3;
    }

    .bp-hero p{
        font-size:15px;
        line-height:1.7;
    }

    .bp-section{
        padding:50px 0;
    }

    .bp-center{
        font-size:28px;
        margin-bottom:35px;
    }

    .bp-steps,
    .bp-puja-grid{
        gap:20px;
    }

    .bp-step,
    .bp-puja-card{
        padding:24px 18px;
        border-radius:18px;
    }

    .bp-step i,
    .bp-puja-card i{
        font-size:28px;
    }

    .bp-form-grid{
        gap:24px;
    }

    .bp-form-box input,
    .bp-form-box select{
        padding:13px;
        border-radius:10px;
    }

    .bp-form-box button{
        padding:13px;
        border-radius:14px;
        font-size:15px;
    }

    .bp-trust-box{
        padding:24px 18px;
        border-radius:18px;
    }

    .bp-cta{
        padding:60px 14px;
    }

    .breadcrumb-list{
        gap:6px;
        font-size:12px;
    }

}

/* =====================================================
SMALL MOBILE DEVICES
===================================================== */

@media (max-width:480px){

    .bp-container{
        padding:0 10px;
    }

    .bp-hero{
        padding:50px 10px;
    }

    .bp-hero h1{
        font-size:26px;
    }

    .bp-hero p{
        font-size:14px;
    }

    .bp-center{
        font-size:24px;
    }

    .bp-step,
    .bp-puja-card{
        padding:20px 15px;
    }

    .bp-trust-box{
        padding:20px 15px;
    }

    .bp-form-box button{
        font-size:14px;
    }

}

/* =====================================================
ULTRA SMALL DEVICES
===================================================== */

@media (max-width:360px){

    .bp-hero h1{
        font-size:22px;
    }

    .bp-center{
        font-size:21px;
    }

    .bp-step,
    .bp-puja-card{
        padding:18px 12px;
    }

}

/* =====================================================
LARGE DESKTOP IMPROVEMENT
===================================================== */

@media (min-width:1600px){

    .bp-container{
        max-width:1400px;
    }

}