#page{
    min-height:750px;
    margin-top:125px;
    background: #ffffff;
    padding-bottom: 25px;
}
#page :is(h1,h2,h3,h4,h5,h6) {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    color: #293366 ;
    margin-bottom: 0.5rem;
    line-height: 1.35;
    font-weight: bold;
}
#page h1 { font-size:2.25em; }
#page h2 { font-size:1.75em; margin-top: 35px; }
#page h3 { font-size:1.5em; }
#page h4 { font-size:1.25em; }
#page h5 { font-size:1.5em; }
#page .faq h2{ font-size: 1.5em; }
#page .faq h3{ font-weight: 600; }

#page table tr td{
    font-family: "Open Sans", sans-serif;
}

#page h3.step{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    color: #293366 ;
    font-weight: 600;
    line-height: 1.75;
}

#page b{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    color: #293366; 
    font-weight: 500;
    line-height: 1.75;
}

#page strong{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    color: #293366 ;
    font-weight: 700;
    line-height: 1.75;
}

#page p {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 1.25em;
    color: #827e7d;
    line-height: 1.75;
}
.justified {
    text-align: justify; text-justify: inter-word;
}

#page ul li{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-size: 1.25em;
    color: #827e7d;
    line-height: 1.75;
}

#page ol li{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-size: 1.1em;
    color: #827e7d;
    line-height: 1.75;
}

#page a{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-size: 1.1em;
    color: #0000FF;
    line-height: 1.75;
}
#page small{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
}


#recent-blogs h3{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-size:1.15em;
    font-weight: 600;
    color: #293366 ;
}

#recent-blogs h2{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-size:2em;
    font-weight: 600;
    color: #293366 ;
}

#recent-blogs .blog-item{
    box-shadow: 5px 5px 10px 2px rgba(0, 0, 0, 0.05);
}

#recent-blogs p{
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    color: #827e7d;
}

#recent-blogs .blog-description{
    line-height: 1.5em;
    height: 3em;
    overflow: hidden;
}

#recent-blogs .blog-title{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; /* Optional: adds "..." if text overflows */
}

#page input{
    font-family: "Open Sans", sans-serif !important;
    font-optical-sizing: auto !important;
}

.error{ 
    font-size: 1em; 
    color:red; 
    letter-spacing: 1px;
}
.blog-date{
    letter-spacing: 1.25px;
}
.quick-inq-mobile{
    font-family: "Open Sans", sans-serif;
    font-size: 1.25em;
    color: #293366; 
    font-weight: 500;
    letter-spacing: 4px;
}
.quick-inq-mobile:focus, .input-group .form-control:focus {
  outline: none !important;
  box-shadow: none !important;
  border-color: #ccc;
}
.btn-callback{
    font-family: "Open Sans", sans-serif;
    padding: 8px;
    border:none; 
    color: white; 
    letter-spacing: 2px;
    padding: 8px 16px;
    background: linear-gradient(45deg, #ee0979, #ff6a00) !important;
    border-radius: .25rem;
}
.btn-callback:hover{
    background: linear-gradient(45deg, #ff6a00, #ee0979) !important;
}


.advantages {
    margin: auto;
}

.advantages h2 {
    font-family: "Open Sans", sans-serif !important;
    font-optical-sizing: auto !important;
    text-align: center;
    font-size: 30px;
    margin-bottom: 40px;
    color: #2c3e50;
}

.adv-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 25px;
}

.adv-item {
    background: #ffffff;
    border-radius: 15px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
    padding: 25px;
    text-align: center;
    transition: 0.3s ease-in-out;
}

.adv-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}

.adv-item img {
    width: 60px;
    height: 60px;
    margin-bottom: 15px;
}

.adv-title {
    font-family: "Open Sans", sans-serif !important;
    font-optical-sizing: auto !important;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #28a745;
}

.adv-desc {
    font-family: "Open Sans", sans-serif !important;
    font-optical-sizing: auto !important;
    font-size: 15px;
    color: #555;
    line-height: 1.6;
}



#page .faq .faq-title{ font-size: clamp(1.35em, 3vw, 1.75em) !important; }
#page .faq .faq-subtitle{ font-weight: 400; }
#page .faq ul{list-style-type: disc;}
#page .faq ul li{list-style: none; margin: 0px 0px 10px !important; padding: 0px 0px 5px 34px !important; position: relative; border-bottom: 1px solid #E8E8E8;} 
#page .faq ul li .question.collapsed:before{color: #293366;content: "+"; position: absolute; left: -0px; top: -3px; font-size: 28px; font-weight: 400; color:#827e7d; } 
#page .faq ul li .question:before{color: #293366;content: "-"; position: absolute; left: -0px; top: -15px; font-size: 45px; font-weight: 100;}
#page .faq ul li .question{ font-size:clamp(1.1em, 3vw, 1.20em) !important; cursor: pointer; }
#page .faq ul li .ans{ font-size: clamp(1em, 3vw, 1.05em) !important; line-height: 1.75; margin:0px 0px 10px !important; }

table.diff-table {  border-collapse: collapse;  }
table.diff-table thead{ font-family: "Open Sans", sans-serif !important;  }
table.diff-table thead tr th{ color: #555; font-family: "Open Sans", sans-serif !important; padding:8px; border: 1px solid black; }
table.diff-table tr td{ font-family: "Open Sans", sans-serif !important; color: #555; padding:8px; border: 1px solid black; }

/* Contact US */

.contact-us {
    position: relative;
    overflow: hidden;
    background-image: url('https://shashwatpublication.com/assets/site/landing/img/stair_on_spotlight.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
/* Blurred layer */
.contact-us::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    background-image: inherit;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    filter: blur(12px);                      /* blur strength */
    transform: scale(1.1);                   /* prevents blur edges */
    z-index: 1;

    /* Fade blur → clear */
    mask-image: linear-gradient(to right, black 20%, transparent 70%);
    -webkit-mask-image: linear-gradient(to right, black 20%, transparent 70%);
}

 /* Actual content goes above both layers */
.contact-us > * { position: relative !important; z-index: 3 !important; }
.contact-us h2{ color: black !important; font-size: clamp(1.8em, 3vw, 3em) !important; margin-top: 50px; font-weight: 700; }
.contact-us h3{ color: black !important; font-size: clamp(1.5em, 3vw, 2em) !important; margin-top: 50px; font-weight: 600; }
.contact-us p.address{ font-size: 1.25em !important; }
.contact-us p.address strong{ font-weight: 500 !important; color: black; margin-right: 25px; }
.contact-us p { color: black !important; font-size: clamp(1.25em, 3vw, 1.5em) !important; margin-top: 50px; }
.contact-us p sup { color: black !important; }
.contact-us p a { color: black !important; text-decoration: none; }
.contact-us p a:hover { font-weight: 600; text-decoration: none; }
.contact-us ul li { color: black !important; font-size: clamp(1.25em, 3vw, 1.5em) !important; }

.inquiry-form { background: linear-gradient( to bottom, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.08) 60%, rgba(0, 0, 0, 0) 100% ); padding: 25px; border-radius: 12px; }
.inquiry-form .form-group label{ font-weight: 400 !important; color: black !important; font-family: "Open Sans", sans-serif !important; }
.input-label{ font-family: "Open Sans", sans-serif !important; color: black !important; }
#robo_label{ color: black; font-family: "Open Sans", sans-serif !important; }
.error{ color: red !important;  font-weight: 400; }
.inquiry-form .form-control:focus { outline: none; border-color: black !important; /* Bootstrap green */ box-shadow: none !important; }
.inquiry-form .form-control { border-radius: 0.35rem !important; }

 .blog-highlight {
    background-image: url('https://shashwatpublication.com/assets/site/blog/indipendent_author.webp');
    background-repeat: no-repeat;        /* only one image */
    background-position: center bottom;     /* align properly */
    background-size: cover;              /* fill entire area without stretch */
    background-color: #f4f4f4;           /* fallback color */
    box-shadow: 0 12px 30px rgba(0,0,0,.10);
}
.blog-highlight h2{ color: black; font-size: clamp(1.6em, 3vw, 3.2em); margin-top: 50px; font-weight: 500; }
.blog-highlight p{ color: black; font-size: clamp(1.25em, 3vw, 1.75em); font-weight: 400; }
.blog-highlight ul li{ color: black;  font-size: clamp(1.25em, 3vw, 1.75em); margin-top: 25px; font-weight: 400; }