/* ==========================================================
   PUBLIC MANTHAN — NAVY, RED & WHITE DESIGN SYSTEM
   Base styles; portal.css is the final design layer.
   ========================================================== */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');

:root{
  --pm-teal:#E8710A;
  --pm-teal-dark:#5C2A07;
  --pm-teal-deep:#3A1A05;
  --pm-teal-light:#FFC27A;
  --pm-teal-tint:#FFF4E5;
  --pm-white:#FFFFFF;
  --pm-paper:#FFFFFF;--pm-paper-2:#FFFFFF;--pm-paper-3:#FFF4E5;
  --pm-ink:#2B1606;--pm-ink-soft:#4A2A12;--pm-muted:#7A5A43;--pm-rule:#F6DDBF;
  --pm-terracotta:#E8710A;--pm-terracotta-dark:#D45F00;
  --pm-forest:#5C2A07;--pm-gold:#FFC27A;
  --pm-shadow:0 10px 28px rgba(92,42,7,.12);
}

html{scroll-behavior:smooth}
body{
  margin:0;
  background:#FFFFFF;
  color:var(--pm-ink);
  font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
}

a{color:var(--pm-terracotta)}
a:hover{color:var(--pm-terracotta-dark)}

/* Masthead */
.navbar-custom{
  background:linear-gradient(90deg,var(--pm-teal-dark),var(--pm-teal))!important;
  border-bottom:3px solid var(--pm-teal-light)!important;
  box-shadow:0 8px 24px rgba(92,42,7,.25)!important;
}
.brand-logo{display:flex;align-items:center;gap:11px;font-family:'Playfair Display',Georgia,serif;font-size:1.35rem;font-weight:600;color:#fff!important}
.brand-logo-img{width:42px;height:42px;border-radius:10px;box-shadow:0 5px 16px rgba(0,0,0,.2);object-fit:cover}
.brand-logo span,.brand-logo span strong{color:#fff!important}
.brand-logo span strong{font-style:italic;color:#FFEBD0!important}
.navbar-custom .nav-link{color:#fff!important;font-weight:600;letter-spacing:.01em;padding:.7rem .8rem!important;position:relative}
.navbar-custom .nav-link:after{content:"";position:absolute;left:.8rem;right:.8rem;bottom:.35rem;height:2px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.navbar-custom .nav-link:hover:after,.navbar-custom .nav-link.active:after{transform:scaleX(1)}
.navbar-custom .nav-link:hover{color:#FFEBD0!important}
.admin-nav-link{border:1px solid #fff!important;border-radius:999px!important;color:var(--pm-teal-dark)!important;background:#fff!important}
.admin-nav-link:hover{background:var(--pm-teal-tint)!important;color:var(--pm-teal-deep)!important}
.admin-nav-link:after{display:none!important}
.navbar-toggler{border-color:rgba(255,255,255,.7)!important}
.navbar-toggler-icon{filter:invert(1) brightness(2)}

/* Global buttons/forms */
.btn-primary,.btn-mint,.btn-hero-solid{background:var(--pm-terracotta)!important;border-color:var(--pm-terracotta)!important;color:#FFFFFF!important}
.btn-primary:hover,.btn-mint:hover,.btn-hero-solid:hover{background:var(--pm-terracotta-dark)!important;border-color:var(--pm-terracotta-dark)!important}
.btn-outline-primary,.btn-outline-tan,.btn-hero-outline{color:var(--pm-terracotta)!important;border-color:var(--pm-terracotta)!important;background:transparent!important}
.btn-outline-primary:hover,.btn-outline-tan:hover,.btn-hero-outline:hover{background:var(--pm-terracotta)!important;color:#FFFFFF!important}
.form-control,.form-select{border-color:var(--pm-rule)!important;background:rgba(255,253,248,.82)!important;color:var(--pm-ink)!important;border-radius:10px}
.form-control:focus,.form-select:focus{border-color:var(--pm-terracotta)!important;box-shadow:0 0 0 .18rem rgba(232,113,10,.12)!important}

/* Editorial headings */
h1,h2,h3,.section-title{font-family:'Playfair Display',Georgia,'Times New Roman',serif;color:var(--pm-ink)}
.section-title{font-weight:700;border-left:4px solid var(--pm-terracotta);padding-left:13px;margin-bottom:24px}

/* Homepage hero */
.hero,.dynamic-hero{position:relative;overflow:hidden}
.dynamic-hero .carousel-item,.dynamic-hero .hero-image{height:590px}
.dynamic-hero .hero-image{object-fit:cover;object-position:center}
.dynamic-hero .hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(58,26,5,.78),rgba(58,26,5,.38) 52%,rgba(58,26,5,.12))!important}
.dynamic-hero .hero-content h1{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-1.5px;line-height:.98;text-shadow:0 4px 22px rgba(0,0,0,.28)}
.dynamic-hero .hero-content p{max-width:730px;color:#FFFFFF}
.dynamic-hero .hero-glass{background:rgba(255,255,255,.18)!important;border:1px solid rgba(255,255,255,.55)!important;border-radius:999px;padding:9px 15px;backdrop-filter:blur(12px)}
.dynamic-hero .btn-light{color:var(--pm-terracotta-dark)!important;background:#FFFFFF!important;border:0!important;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.dynamic-hero .btn-light:hover{background:#FFFFFF!important;transform:translateY(-2px)}
.hero{background:linear-gradient(120deg,var(--pm-terracotta-dark),var(--pm-terracotta),var(--pm-gold))!important;color:#FFFFFF}

/* Cards */
.magazine-card,.news-card,.stat-card,.admin-stat-card,.admin-panel,.hero-admin-card,.contact-card{
  background:var(--pm-paper-2)!important;
  border-color:var(--pm-rule)!important;
  box-shadow:var(--pm-shadow)!important;
}
.magazine-card{border-radius:14px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.magazine-card:hover{transform:translateY(-7px);box-shadow:0 20px 42px rgba(92,42,7,.13)!important}
.magazine-card .cover-wrap{background:var(--pm-paper-3)!important;border-bottom-color:var(--pm-rule)!important}
.type-tag,.year-badge{background:var(--pm-terracotta)!important;color:#FFFFFF!important}
.magazine-info{border-top-color:var(--pm-rule)!important}
.magazine-title,.news-title{color:var(--pm-ink)!important}
.magazine-meta,.news-meta{color:var(--pm-muted)!important}
.view-magazine,.news-read-more{color:var(--pm-terracotta)!important}
.news-sidebar-item:hover{background:var(--pm-paper-3)!important}
.news-sidebar-item:hover .news-title{color:var(--pm-terracotta)!important}
.news-card{border-left:5px solid var(--pm-forest)!important}
.pdf-placeholder,.pdf-fallback{color:var(--pm-terracotta)!important}
.pdf-preview-container{background:linear-gradient(135deg,#FFFFFF,#FFF4E5)!important}

/* Stats */
.stat-strip{margin-top:-55px;position:relative;z-index:3}
.stat-card{border-radius:16px;padding:22px;text-align:center}
.stat-card .num,.admin-stat-card .stat-value{color:var(--pm-terracotta-dark)!important;font-weight:800}
.stat-card .label,.admin-stat-card .stat-label{color:var(--pm-muted)!important}

/* Admin */
.admin-login-bg{min-height:100vh;background:radial-gradient(circle at 15% 15%,rgba(255,194,122,.15),transparent 32%),radial-gradient(circle at 88% 80%,rgba(92,42,7,.12),transparent 34%),var(--pm-paper)!important}
.admin-icon{background:var(--pm-terracotta)!important;box-shadow:0 12px 30px rgba(232,113,10,.22)!important}
.admin-panel .form-control,.admin-panel .form-select{border-color:var(--pm-rule)!important}
.admin-stat-card>i{color:var(--pm-forest)!important}
.hero-admin-preview{background:var(--pm-paper-3)!important}
.hero-upload-box{border:2px dashed var(--pm-teal)!important;background:var(--pm-teal-tint)!important}

/* Footer */
footer{background:linear-gradient(90deg,var(--pm-teal-dark),var(--pm-teal))!important;color:#fff!important;border-top:4px solid var(--pm-teal-light)!important;padding:34px 0;margin-top:60px}
footer p,footer span,footer strong{color:#fff!important}
footer small{color:#FFEBD0!important}
footer a{color:#fff!important;text-decoration:underline}

/* Generic blue utilities from older templates */
.text-primary{color:var(--pm-terracotta)!important}
.bg-primary{background:var(--pm-terracotta)!important}
.border-primary{border-color:var(--pm-terracotta)!important}

@media(max-width:767px){
  .dynamic-hero .carousel-item,.dynamic-hero .hero-image{height:470px}
  .dynamic-hero .hero-content h1{font-size:2.35rem}
  .stat-strip{margin-top:-40px}
}
@media(max-width:575.98px){
  .dynamic-hero .hero-content h1{font-size:2.05rem}
  .magazine-card .cover-wrap{height:250px}
}

/* ---------- Visitor counter (home page) ---------- */
.visitor-card{position:relative;overflow:hidden}
.visitor-card .num{display:flex;align-items:center;justify-content:center;gap:8px;font-variant-numeric:tabular-nums}
.visitor-card .num i{font-size:1.15rem;color:var(--pm-teal)}
.visitor-card .label{display:flex;align-items:center;justify-content:center;gap:6px}
.visitor-live-dot{width:8px;height:8px;border-radius:50%;background:var(--pm-teal);box-shadow:0 0 0 0 rgba(232,113,10,.6);animation:pmPulse 1.8s infinite}
@keyframes pmPulse{70%{box-shadow:0 0 0 8px rgba(232,113,10,0)}100%{box-shadow:0 0 0 0 rgba(232,113,10,0)}}
@media(max-width:767px){.stat-card{padding:16px 10px}.stat-card .num{font-size:1.4rem}.stat-card .label{font-size:.8rem}}

/* Bootstrap colour utilities */
.badge.bg-primary,.btn-primary{background-color:var(--pm-teal)!important}
.spinner-border.text-primary{color:var(--pm-teal)!important}
.page-item.active .page-link{background:var(--pm-teal)!important;border-color:var(--pm-teal)!important}
.page-link{color:var(--pm-teal-dark)}
.alert-success{background:var(--pm-teal-tint);border-color:var(--pm-rule);color:var(--pm-teal-deep)}
a.link-primary{color:var(--pm-teal)!important}


/* =====================================================
   NAVBAR — make Admin button clearly visible
   (higher specificity than .navbar-custom .nav-link)
   ===================================================== */
.navbar-custom .nav-link.admin-nav-link{
  color:var(--pm-teal-dark)!important;background:#fff!important;border:2px solid #fff!important;
  border-radius:999px!important;padding:.45rem 1.1rem!important;font-weight:700;
  display:inline-flex;align-items:center;gap:6px;box-shadow:0 4px 12px rgba(0,0,0,.18);
}
.navbar-custom .nav-link.admin-nav-link:hover{background:var(--pm-teal-tint)!important;color:var(--pm-teal-deep)!important}
.navbar-custom .nav-link.admin-nav-link:after{display:none!important}
@media(max-width:991.98px){
  .navbar-custom .navbar-collapse{padding:.5rem 0 .8rem}
  .navbar-custom .nav-link.admin-nav-link{margin-top:.5rem}
}

/* =====================================================
   SIMPLE CONTACT PAGE
   ===================================================== */
.contact-simple{padding:56px 0 20px}
.contact-box{max-width:640px;margin:0 auto;background:#fff;border:1px solid var(--pm-rule);border-radius:18px;padding:34px;box-shadow:var(--pm-shadow)}
.contact-box h1{font-size:2.2rem;font-weight:700;margin:0 0 6px;color:var(--pm-teal-dark)}
.contact-sub{color:var(--pm-muted);margin:0 0 20px}
.contact-item{display:flex;align-items:center;gap:14px;padding:15px 0;border-top:1px solid var(--pm-rule);text-decoration:none;color:var(--pm-ink)}
a.contact-item:hover strong{color:var(--pm-teal)}
.contact-ico{flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:var(--pm-teal);color:#fff;display:grid;place-items:center;font-size:1.1rem}
.contact-item small{display:block;color:var(--pm-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.contact-item strong{display:block;word-break:break-word}
.contact-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;padding-top:20px;border-top:1px solid var(--pm-rule)}
@media(max-width:575.98px){
  .contact-simple{padding:28px 0 0}
  .contact-box{padding:22px 18px}
  .contact-box h1{font-size:1.8rem}
  .contact-actions .btn{flex:1 1 100%}
}

/* =====================================================
   ADMIN AREA — base styles + responsive layout
   ===================================================== */
.bg-light{background:#FFFAF3!important}
.min-w-0{min-width:0}
img{max-width:100%}

.admin-panel,.hero-admin-card{border:1px solid var(--pm-rule)!important;border-radius:16px!important;overflow:hidden}
.admin-panel .card-header{background:#fff!important}
.admin-panel .list-group-item{border-color:var(--pm-rule)}

/* stat cards: icon on the left, number + label on the right, all equal height */
.admin-stat-card{
  display:grid;grid-template-columns:52px 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;
  height:100%;padding:18px 20px;background:#fff;border:1px solid var(--pm-rule);border-radius:16px;
}
.admin-stat-card>i{grid-row:1 / span 2;width:52px;height:52px;border-radius:14px;background:var(--pm-teal-tint);
  display:grid;place-items:center;font-size:1.5rem;color:var(--pm-teal)!important}
.admin-stat-card .stat-value{font-size:1.7rem;line-height:1.1;font-weight:800}
.admin-stat-card .stat-label{font-size:.9rem;font-weight:600}

.hero-upload-box{padding:18px;border-radius:14px}
.hero-admin-preview{display:block;width:100%;height:170px;object-fit:cover}

.admin-icon{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;color:#fff;font-size:1.6rem;margin:0 auto 14px}
.admin-login-card{border-radius:20px!important;border:1px solid var(--pm-rule)!important}

/* phones & small tablets */
@media(max-width:767.98px){
  .admin-panel .card-body,.hero-admin-card .card-body{padding:1rem!important}
  .admin-panel .card-header{padding:1rem 1rem .25rem!important}
  .admin-panel .list-group-item{padding-left:1rem!important;padding-right:1rem!important}
  .admin-stat-card{padding:14px 16px}
  main.container h1.display-6{font-size:1.7rem}
  .hero-admin-preview{height:150px}
}
@media(max-width:575.98px){
  main.container{padding-left:14px;padding-right:14px}
  .admin-panel .list-group-item .btn,.admin-panel .list-group-item form{flex:1 1 auto}
  .admin-panel .list-group-item form .btn{width:100%}
}
/* meet person*/
/* Team Section */

.pm-team {
    padding: 70px 0;
    background: #ffffff;
}

.pm-member {
    text-align: center;
    padding: 25px 15px;
    height: 100%;
}

/* Circle Photo with Shadow */

.team-photo-shadow {
    width: 180px !important;
    height: 180px !important;
    min-width: 180px;
    max-width: 180px;
    min-height: 180px;
    max-height: 180px;

    display: block;
    margin: 0 auto 22px;

    object-fit: cover;
    object-position: center;

    border-radius: 50%;
    border: 4px solid #ffffff;

    box-shadow: 0 8px 25px rgba(23, 59, 58, 0.18);

    box-sizing: border-box;
}

/* Member Name */

.pm-member h3 {
    color: #173B3A;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 7px;
}

/* Designation */

.pm-member .role {
    display: block;
    color: #27B7A8;
    font-size: 14px;
    font-weight: 600;
}

/* Responsive */

@media (max-width: 576px) {
    .team-photo-shadow {
        width: 160px !important;
        height: 160px !important;
        min-width: 160px;
        max-width: 160px;
        min-height: 160px;
        max-height: 160px;
    }

    .pm-team {
        padding: 50px 0;
    }
}
/* start of header section of stories */

/* ================= HERO HEADING STYLES ================= */

/* H1 - Main Hero Heading */
.pm-hero h1 {
    font-size: clamp(44px, 5.5vw, 68px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -1.5px;
    color: #173B3A;
    max-width: 850px;
    margin-bottom: 22px;
    font-style: normal;
}

/* H2 - Section Heading */
.pm-hero h2 {
    font-size: clamp(36px, 4.5vw, 54px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -1px;
    color: #173B3A;
    max-width: 820px;
    margin-bottom: 20px;
    font-style: normal;
}

/* H3 - Sub Heading */
.pm-hero h3 {
    font-size: clamp(28px, 3.5vw, 42px);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: -0.6px;
    color: #173B3A;
    max-width: 800px;
    margin-bottom: 18px;
    font-style: normal;
}

/* H4 - Small Heading */
.pm-hero h4 {
    font-size: clamp(22px, 2.5vw, 30px);
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: -0.3px;
    color: #173B3A;
    max-width: 750px;
    margin-bottom: 15px;
    font-style: normal;
}

/* Hero Description */
.pm-hero p {
    font-size: clamp(16px, 1.5vw, 18px);
    line-height: 1.8;
    font-weight: 400;
    color: #555F5E;
    max-width: 720px;
    margin-bottom: 30px;
    font-style: normal;
}

/* ================= END HERO HEADING STYLES ================= */

/* ================= Contact Us ================= */


/* =========================================
   PUBLIC MANTHAN - CONTACT PAGE
========================================= */

/* Main Contact Page */

.contact-page {
    background: #ffffff;
}

.contact-main-section {
    padding: 65px 0;
    background: #ffffff;
}


/* =========================================
   CONTACT INFORMATION CARD
========================================= */

.contact-box {
    height: 100%;
    padding: 38px;
    background: #ffffff;
    border: 1px solid #e5ecea;
    border-radius: 14px;
    box-shadow: 0 8px 28px rgba(23, 59, 58, 0.06);
}

.contact-heading {
    margin-bottom: 28px;
}

.contact-heading h2 {
    color: #173B3A;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 13px;
    font-style: normal;
}

.contact-sub {
    color: #555F5E;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    margin-bottom: 0;
}


/* =========================================
   CONTACT ITEMS
========================================= */

.contact-item {
    display: flex;
    align-items: center;
    gap: 17px;
    padding: 18px;
    margin-bottom: 14px;
    background: #f7faf9;
    border: 1px solid #e8efed;
    border-radius: 10px;
    text-decoration: none;
    transition: all 0.25s ease;
}

.contact-item:hover {
    background: #eef7f5;
    border-color: #27B7A8;
    transform: translateY(-2px);
}

.contact-ico {
    width: 48px;
    height: 48px;
    min-width: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e3f2ef;
    color: #173B3A;
    border-radius: 50%;
    font-size: 19px;
}

.contact-item-content {
    display: block;
    min-width: 0;
}

.contact-item small {
    display: block;
    color: #777f7e;
    font-size: 13px;
    margin-bottom: 5px;
}

.contact-item strong {
    display: block;
    color: #173B3A;
    font-size: 15px;
    font-weight: 600;
    overflow-wrap: anywhere;
}


/* =========================================
   CONTACT BUTTONS
========================================= */

.contact-actions {
    display: flex;
    align-items: center;
    gap: 13px;
    flex-wrap: wrap;
    margin-top: 24px;
}

.contact-actions .btn {
    padding: 11px 22px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.25s ease;
}

.contact-actions .btn-primary {
    background: #173B3A;
    border-color: #173B3A;
    color: #ffffff;
}

.contact-actions .btn-primary:hover {
    background: #27B7A8;
    border-color: #27B7A8;
    color: #ffffff;
}

.contact-actions .btn-outline-primary {
    background: transparent;
    color: #173B3A;
    border-color: #173B3A;
}

.contact-actions .btn-outline-primary:hover {
    background: #173B3A;
    color: #ffffff;
}


/* =========================================
   PAYMENT QR CARD
========================================= */

.payment-qr-card {
    height: 100%;
    padding: 35px 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #f8fbfa;
    border: 1px solid #e5ecea;
    border-radius: 14px;
    box-shadow: 0 8px 28px rgba(23, 59, 58, 0.06);
}

.payment-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e3f2ef;
    color: #173B3A;
    border-radius: 50%;
    font-size: 26px;
    margin-bottom: 17px;
}

.payment-qr-card h2 {
    color: #173B3A;
    font-size: 28px;
    font-weight: 700;
    margin: 5px 0 13px;
}

.payment-description {
    max-width: 330px;
    color: #555F5E;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 15px;
}


/* QR IMAGE */

.payment-qr-wrapper {
    padding: 12px;
    background: #ffffff;
    border: 1px solid #e5ecea;
    border-radius: 12px;
    display: inline-block;
    margin: 5px 0 15px;
}

.payment-qr-wrapper img {
    width: 190px;
    height: 190px;
    display: block;
    object-fit: contain;
}

.payment-caption {
    color: #173B3A;
    font-size: 13px;
    font-weight: 600;
}

.payment-caption i {
    color: #27B7A8;
    margin-right: 5px;
}

.payment-note {
    color: #777f7e;
    font-size: 11px;
    line-height: 1.6;
    margin-top: 12px;
    margin-bottom: 0;
}


/* =========================================
   GOOGLE MAP SECTION
========================================= */

.contact-map-section {
    padding: 70px 0 80px;
    background: #f7faf9;
}

.location-map-card {
    padding: 25px;
    background: #ffffff;
    border: 1px solid #e5ecea;
    border-radius: 14px;
    box-shadow: 0 8px 25px rgba(23, 59, 58, 0.06);
}

.map-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 20px;
}

.map-heading h3 {
    color: #173B3A;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 8px;
}

.map-heading p {
    color: #555F5E;
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 0;
}

.map-heading p i {
    color: #27B7A8;
    margin-right: 5px;
}

.map-heading > a {
    width: 43px;
    height: 43px;
    min-width: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e3f2ef;
    color: #173B3A;
    border-radius: 50%;
    text-decoration: none;
    font-size: 18px;
    transition: all 0.25s ease;
}

.map-heading > a:hover {
    background: #173B3A;
    color: #ffffff;
}


/* MAP FRAME */

.map-frame {
    width: 100%;
    height: 400px;
    overflow: hidden;
    border-radius: 10px;
}

.map-frame iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}


/* =========================================
   RESPONSIVE DESIGN
========================================= */

@media (max-width: 991px) {

    .contact-box,
    .payment-qr-card {
        min-height: auto;
    }

}

@media (max-width: 767px) {

    .contact-main-section {
        padding: 35px 0;
    }

    .contact-box {
        padding: 25px 18px;
    }

    .contact-heading h2 {
        font-size: 25px;
    }

    .contact-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .contact-actions .btn {
        width: 100%;
    }

    .payment-qr-card {
        padding: 28px 18px;
    }

    .payment-qr-card h2 {
        font-size: 25px;
    }

    .payment-qr-wrapper img {
        width: 180px;
        height: 180px;
    }

    .contact-map-section {
        padding: 45px 0;
    }

    .location-map-card {
        padding: 18px;
    }

    .map-heading h3 {
        font-size: 19px;
    }

    .map-frame {
        height: 300px;
    }

}

/* ================= ANIMATED INDIAN FLAG ================= */
/* Indian flag in topbar */
.pm-topbar-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
}

.india-flag-icon {
    width: 25px;
    height: 17px;
    display: block;
    flex-shrink: 0;
    border: 1px solid rgba(255,255,255,0.35);
    border-radius: 2px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12);
}