.elementor-2032 .elementor-element.elementor-element-acffd92{--display:flex;}/* Start custom CSS */header{
    position:relative; z-index:1;
    padding:56px 0 40px;
    border-bottom:1px solid var(--line-strong);
  }
  .eyebrow{
    font-size:12px;
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:var(--maroon);
    font-weight:600;
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
  }
  .eyebrow .dash{width:28px;height:1px;background:var(--maroon);display:inline-block;}
  h1{
    font-family:'Fraunces',serif;
    font-weight:500;
    font-size:clamp(34px,5vw,54px);
    line-height:1.05;
    margin:0 0 14px;
    letter-spacing:-0.01em;
  }
  h1 em{font-style:italic; color:var(--maroon); font-weight:500;}
  .subhead{
    max-width:640px;
    font-size:16.5px;
    line-height:1.65;
    color:rgba(28,43,69,0.78);
    margin:0 0 26px;
  }
  .crumb{
    font-size:13px;
    color:rgba(28,43,69,0.55);
  }
  .crumb a{color:var(--ink); text-decoration:none; border-bottom:1px solid var(--line-strong);}
  .crumb a:hover{border-color:var(--maroon); color:var(--maroon);}

  /* ===== stats strip ===== */
  .stats{
    position:relative; z-index:1;
    display:flex;
    flex-wrap:wrap;
    gap:0;
    border-bottom:1px solid var(--line-strong);
  }
  .stat{
    flex:1 1 160px;
    padding:22px 28px;
    border-right:1px solid var(--line);
  }
  .stat:last-child{border-right:none;}
  .stat .num{
    font-family:'Fraunces',serif;
    font-size:30px;
    font-weight:500;
    color:var(--ink);
  }
  .stat .lbl{
    font-size:11.5px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:rgba(28,43,69,0.6);
    margin-top:2px;
  }

  /* ===== Sections ===== */
  main{position:relative; z-index:1;}
  .region{
    padding:52px 0 8px;
    border-bottom:1px solid var(--line);
  }
  .region-head{
    display:flex;
    align-items:baseline;
    gap:18px;
    margin-bottom:8px;
  }
  .numeral{
    font-family:'Fraunces',serif;
    font-style:italic;
    font-size:20px;
    color:var(--accent, var(--maroon));
    min-width:34px;
  }
  .region h2{
    font-family:'Fraunces',serif;
    font-weight:500;
    font-size:28px;
    margin:0;
    letter-spacing:-0.01em;
  }
  .region .count{
    font-size:12.5px;
    color:rgba(28,43,69,0.55);
    margin-left:auto;
    white-space:nowrap;
  }
  .region-rule{
    height:2px;
    background:var(--accent, var(--maroon));
    width:56px;
    margin:14px 0 30px;
  }

  .grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:1px;
    background:var(--line-strong);
    border:1px solid var(--line-strong);
    margin-bottom:44px;
  }
  @media (max-width:820px){
    .grid{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:560px){
    .grid{grid-template-columns:1fr;}
  }

  .card{
    background:var(--paper);
    padding:26px 24px 22px;
    display:flex;
    flex-direction:column;
    gap:14px;
    transition:background 0.2s ease;
  }
  .card:hover{background:var(--paper-deep);}

  .seal{
    width:44px; height:44px;
    border-radius:50%;
    border:1.5px solid var(--accent, var(--maroon));
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:'Fraunces',serif;
    font-style:italic;
    font-size:17px;
    color:var(--accent, var(--maroon));
    flex-shrink:0;
    position:relative;
  }
  .seal::after{
    content:"";
    position:absolute;
    inset:4px;
    border-radius:50%;
    border:1px solid var(--accent, var(--maroon));
    opacity:0.4;
  }

  .card h3{
    font-family:'Fraunces',serif;
    font-weight:500;
    font-size:19px;
    margin:0;
    line-height:1.25;
  }
  .card .place{
    font-size:12.5px;
    color:rgba(28,43,69,0.6);
    margin-top:-8px;
  }
  .badge-row{display:flex; gap:6px; flex-wrap:wrap;}
  .badge{
    font-size:10.5px;
    letter-spacing:0.05em;
    text-transform:uppercase;
    font-weight:600;
    padding:3px 9px;
    border-radius:2px;
    color:var(--accent, var(--maroon));
    border:1px solid var(--accent, var(--maroon));
    background:transparent;
  }
  .visit{
    margin-top:auto;
    padding-top:10px;
    font-size:13.5px;
    font-weight:600;
    color:var(--ink);
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    gap:6px;
    border-top:1px solid var(--line);
    padding-top:14px;
  }
  .visit .arrow{
    display:inline-block;
    transition:transform 0.18s ease;
  }
  .card:hover .visit .arrow{transform:translate(3px,-3px);}
  .visit:hover{color:var(--accent, var(--maroon));}

  /* region accent color assignment */
  .region.karnataka{--accent:var(--maroon);}
  .region.kerala{--accent:var(--teal);}
  .region.andhra{--accent:var(--gold);}

  /* ===== About strip ===== */
  .about{
    padding:56px 0;
    display:grid;
    grid-template-columns:1fr 1.4fr;
    gap:48px;
    border-bottom:1px solid var(--line-strong);
  }
  @media (max-width:720px){ .about{grid-template-columns:1fr;} }
  .about .label{
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--maroon);
    font-weight:600;
  }
  .about p{
    font-size:15.5px;
    line-height:1.75;
    color:rgba(28,43,69,0.82);
    margin:14px 0 0;
  }/* End custom CSS */