
/* ==============================================================
   CLEAN PREMIUM REFINEMENT 3.5.0
   Only subtle watermark and dotted accents — no layout takeover
   ============================================================== */

:root{
    --bjs-dot-color:rgba(241,149,26,.34);
    --bjs-watermark-opacity:.06;
}

/* Primary-menu Deshatan marker */
.bjs-menu-deshatan-dot{
    display:inline-block;
    width:7px;
    height:7px;
    margin-right:7px;
    border-radius:50%;
    background:var(--bjs-saffron);
    box-shadow:0 0 0 4px rgba(241,149,26,.12);
}
.menu-item-deshatan>a{
    color:var(--bjs-indigo)!important;
    font-weight:900!important;
}

/* Reusable subtle elements */
.bjs-subtle-dot-pattern{
    position:absolute;
    right:0;
    top:0;
    width:180px;
    height:180px;
    pointer-events:none;
    opacity:.3;
    background-image:radial-gradient(var(--bjs-dot-color) 2px,transparent 2.5px);
    background-size:15px 15px;
    mask-image:linear-gradient(135deg,transparent 10%,#000 95%);
}
.bjs-subtle-logo-watermark{
    position:absolute;
    right:-35px;
    bottom:-65px;
    width:330px;
    height:330px;
    pointer-events:none;
    opacity:var(--bjs-watermark-opacity);
    background:url('../images/official-ballia-jaipuria-logo.png') center/contain no-repeat;
}

/* Small dotted corner accents across existing cards */
.quick-link-card,
.news-card,
.bjs-stage-explorer,
.bjs-managed-document,
.bjs-info-card,
.bjs-feature-card,
.bjs-facility-card,
.bjs-partner-card,
.bjs-policy-card,
.bjs-gallery-toolbar,
.contact-preview-grid{
    position:relative;
    isolation:isolate;
}
.quick-link-card::before,
.news-card::before,
.bjs-managed-document::before,
.bjs-info-card::before,
.bjs-feature-card::before,
.bjs-facility-card::before,
.bjs-partner-card::before,
.bjs-policy-card::before{
    content:"";
    position:absolute;
    z-index:-1;
    right:0;
    top:0;
    width:82px;
    height:82px;
    opacity:.14;
    pointer-events:none;
    background-image:radial-gradient(var(--bjs-saffron) 1.7px,transparent 2px);
    background-size:12px 12px;
    mask-image:linear-gradient(135deg,transparent,#000);
}

/* Very light emblem watermark in selected section containers */
.bjs-story-intro,
.bjs-journey-section,
.bjs-campus-experience,
.bjs-news-v3,
.bjs-curated-social,
.bjs-contact-v3,
.bjs-designed-page>.section{
    position:relative;
}
.bjs-story-intro::after,
.bjs-journey-section::after,
.bjs-campus-experience::after,
.bjs-news-v3::after,
.bjs-curated-social::after,
.bjs-designed-page>.section::after{
    content:"";
    position:absolute;
    right:2%;
    bottom:0;
    width:340px;
    height:340px;
    pointer-events:none;
    opacity:.042;
    background:url('../images/official-ballia-jaipuria-logo.png') center/contain no-repeat;
}

/* Homepage featured Deshatan */
.bjs-home-deshatan-section{
    background:linear-gradient(180deg,#fff,#fffaf2);
}
.bjs-home-deshatan-card{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    align-items:stretch;
    overflow:hidden;
    border:1px solid var(--bjs-border);
    border-bottom:4px solid var(--bjs-saffron);
    border-radius:28px;
    background:#fff;
    box-shadow:0 28px 75px rgba(20,0,57,.14);
}
.bjs-home-deshatan-image{
    position:relative;
    min-height:520px;
    overflow:hidden;
}
.bjs-home-deshatan-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(20,0,57,.72),transparent 55%);
}
.bjs-home-deshatan-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--bjs-ease);
}
.bjs-home-deshatan-card:hover .bjs-home-deshatan-image img{transform:scale(1.04)}
.bjs-home-deshatan-image-label{
    position:absolute;
    z-index:2;
    left:24px;
    bottom:22px;
    color:#fff;
    font-size:.57rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.bjs-home-deshatan-copy{
    position:relative;
    z-index:2;
    padding:52px;
}
.bjs-home-deshatan-copy h2{
    margin:9px 0 5px;
    color:var(--bjs-indigo);
    font-size:clamp(2.7rem,5vw,5.3rem);
    line-height:.9;
    letter-spacing:-.065em;
}
.bjs-home-deshatan-copy h3{
    margin:17px 0;
    color:var(--bjs-saffron);
    font-size:1.25rem;
    line-height:1.35;
}
.bjs-home-deshatan-copy p{
    color:var(--bjs-muted);
    line-height:1.75;
}
.bjs-home-deshatan-meta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:26px 0;
}
.bjs-home-deshatan-meta span{
    border:1px solid var(--bjs-border);
    border-radius:14px;
    padding:15px;
    background:var(--bjs-cream);
}
.bjs-home-deshatan-meta small,
.bjs-home-deshatan-meta strong{display:block}
.bjs-home-deshatan-meta small{
    color:#A34D00;
    font-size:.48rem;
    font-weight:900;
    text-transform:uppercase;
}
.bjs-home-deshatan-meta strong{
    margin-top:5px;
    color:var(--bjs-indigo);
    font-size:.67rem;
}

/* Homepage contact numbers */
.bjs-contact-phone-list{
    display:flex;
    flex-wrap:wrap;
    gap:6px 14px;
}
.bjs-contact-phone-list a{color:inherit}

/* Contact page clean design */
.bjs-contact-page-clean{
    background:linear-gradient(180deg,#fff,#fffaf2);
}
.bjs-contact-overview-card{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:45px;
    border:1px solid var(--bjs-border);
    border-bottom:4px solid var(--bjs-saffron);
    border-radius:26px;
    padding:44px;
    background:#fff;
    box-shadow:0 25px 70px rgba(20,0,57,.12);
}
.bjs-contact-overview-intro{
    border-right:1px solid var(--bjs-border);
    padding-right:35px;
}
.bjs-contact-overview-intro h2{
    margin:10px 0 8px;
    color:var(--bjs-indigo);
    font-size:2.5rem;
    letter-spacing:-.05em;
}
.bjs-contact-overview-intro p{
    color:var(--bjs-saffron);
    font-weight:800;
}
.bjs-contact-overview-list{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 25px;
}
.bjs-contact-overview-list article{
    display:grid;
    grid-template-columns:43px 1fr;
    gap:12px;
    align-items:center;
    border-bottom:1px solid var(--bjs-border);
    padding:13px 0;
}
.bjs-contact-overview-list article:nth-last-child(-n+2){border-bottom:0}
.bjs-contact-icon{
    display:grid;
    width:40px;
    height:40px;
    place-items:center;
    border:1px solid rgba(241,149,26,.45);
    border-radius:12px;
    background:var(--bjs-cream);
    color:var(--bjs-indigo);
    font-size:1rem;
}
.bjs-contact-overview-list small,
.bjs-contact-overview-list strong{display:block}
.bjs-contact-overview-list small{
    margin-bottom:4px;
    color:#A34D00;
    font-size:.48rem;
    font-weight:900;
    text-transform:uppercase;
}
.bjs-contact-overview-list strong,
.bjs-contact-overview-list a{
    color:var(--bjs-indigo);
    font-size:.68rem;
    font-weight:750;
}
.bjs-contact-number-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5px 13px;
}
.bjs-contact-overview-actions{
    grid-column:1/-1;
    display:flex;
    gap:9px;
    margin-top:22px;
}
.bjs-contact-map-grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:18px;
}
.bjs-contact-map-card,
.bjs-contact-form-card{
    position:relative;
    overflow:hidden;
    border:1px solid var(--bjs-border);
    border-bottom:4px solid var(--bjs-saffron);
    border-radius:23px;
    background:#fff;
    box-shadow:0 22px 60px rgba(20,0,57,.1);
}
.bjs-contact-card-head{padding:30px 30px 22px}
.bjs-contact-card-head h2{
    margin:9px 0;
    color:var(--bjs-indigo);
    font-size:2rem;
}
.bjs-contact-card-head p{color:var(--bjs-muted)}
.bjs-contact-map-card iframe{width:100%;height:470px;border:0}
.bjs-contact-form-body{padding:0 30px 30px}
.bjs-contact-direct-list{
    position:relative;
    z-index:2;
    display:grid;
    padding:0 30px 30px;
}
.bjs-contact-direct-list a{
    display:flex;
    justify-content:space-between;
    gap:14px;
    border-bottom:1px solid var(--bjs-border);
    padding:13px 0;
}
.bjs-contact-direct-list strong{color:var(--bjs-indigo);font-size:.68rem}
.bjs-contact-direct-list span{color:#A34D00;font-size:.58rem;font-weight:900}

/* Footer: subtle watermark and dots only */
.bjs-footer-subtle{
    position:relative;
    overflow:hidden;
}
.bjs-footer-dot-pattern{
    position:absolute;
    right:0;
    top:0;
    width:230px;
    height:230px;
    opacity:.12;
    pointer-events:none;
    background-image:radial-gradient(var(--bjs-gold) 2px,transparent 2.5px);
    background-size:16px 16px;
    mask-image:linear-gradient(135deg,transparent,#000);
}
.bjs-footer-logo-watermark{
    position:absolute;
    left:2%;
    bottom:-80px;
    width:380px;
    height:380px;
    opacity:.05;
    pointer-events:none;
    background:url('../images/official-ballia-jaipuria-logo.png') center/contain no-repeat;
}

/* Deshatan remains visually intact; only add subtle watermark/dots to light cards */
.bjs-tour-timeline article,
.bjs-packing-card,
.bjs-guideline-grid article,
.bjs-tour-qr-card,
.bjs-consent-sheet{
    position:relative;
}
.bjs-tour-timeline article::after,
.bjs-packing-card::after,
.bjs-tour-qr-card::after{
    content:"";
    position:absolute;
    right:0;
    top:0;
    width:78px;
    height:78px;
    opacity:.12;
    pointer-events:none;
    background-image:radial-gradient(var(--bjs-saffron) 1.8px,transparent 2.2px);
    background-size:12px 12px;
    mask-image:linear-gradient(135deg,transparent,#000);
}

@media(max-width:900px){
    .bjs-home-deshatan-card{grid-template-columns:1fr}
    .bjs-home-deshatan-image{min-height:390px}
    .bjs-contact-overview-card{grid-template-columns:1fr}
    .bjs-contact-overview-intro{
        border-right:0;
        border-bottom:1px solid var(--bjs-border);
        padding:0 0 28px;
    }
    .bjs-contact-map-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
    .bjs-home-deshatan-copy{padding:30px 25px}
    .bjs-home-deshatan-image{min-height:310px}
    .bjs-home-deshatan-meta{grid-template-columns:1fr}
    .bjs-contact-overview-card{padding:28px}
    .bjs-contact-overview-list{grid-template-columns:1fr}
    .bjs-contact-overview-list article:nth-last-child(-n+2){border-bottom:1px solid var(--bjs-border)}
    .bjs-contact-overview-list article:last-child{border-bottom:0}
    .bjs-contact-number-grid{grid-template-columns:1fr}
    .bjs-contact-overview-actions{display:grid}
}
