.elementor-351 .elementor-element.elementor-element-2a80ce7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-2a80ce7:not(.elementor-motion-effects-element-type-background), .elementor-351 .elementor-element.elementor-element-2a80ce7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0F2A4A;}.elementor-351 .elementor-element.elementor-element-8feda81{font-family:"Inter", Sans-serif;font-size:13px;font-weight:400;line-height:1.5;color:#D7E0EA;}.elementor-351 .elementor-element.elementor-element-25f0f1e .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;line-height:1.4;letter-spacing:0.08em;color:#D4A73A;}.elementor-351 .elementor-element.elementor-element-85d8889 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:34px;font-weight:500;line-height:1.18;letter-spacing:-0.015em;color:#FFFFFF;}.elementor-351 .elementor-element.elementor-element-721333b{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.6;color:#D7E0EA;}.elementor-351 .elementor-element.elementor-element-bff0cba{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-bff0cba:not(.elementor-motion-effects-element-type-background), .elementor-351 .elementor-element.elementor-element-bff0cba > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAFAF8;}.elementor-351 .elementor-element.elementor-element-06d2da9{--grid-columns:2;--grid-row-gap:24px;--grid-column-gap:24px;}.elementor-351 .elementor-element.elementor-element-a9f79a0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-a9f79a0:not(.elementor-motion-effects-element-type-background), .elementor-351 .elementor-element.elementor-element-a9f79a0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-351 .elementor-element.elementor-element-74804c9{text-align:center;font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.6;color:#1A1D23;}.elementor-351 .elementor-element.elementor-element-c986048{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-c986048:not(.elementor-motion-effects-element-type-background), .elementor-351 .elementor-element.elementor-element-c986048 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4F2EC;}.elementor-351 .elementor-element.elementor-element-8ff6ea4 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:34px;font-weight:500;line-height:1.2;letter-spacing:-0.015em;color:#0F2A4A;}.elementor-351 .elementor-element.elementor-element-0150d5f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-4a263d9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-477b49c{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-cfb77db .elementor-icon-wrapper{text-align:center;}.elementor-351 .elementor-element.elementor-element-3009508 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:20px;font-weight:500;line-height:1.3;color:#0F2A4A;}.elementor-351 .elementor-element.elementor-element-671823e{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.65;color:#6B7280;}.elementor-351 .elementor-element.elementor-element-f83a8f5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-a05367e{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-bc92f6c .elementor-icon-wrapper{text-align:center;}.elementor-351 .elementor-element.elementor-element-cca4915 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:20px;font-weight:500;line-height:1.3;color:#0F2A4A;}.elementor-351 .elementor-element.elementor-element-adbec23{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.65;color:#6B7280;}.elementor-351 .elementor-element.elementor-element-fa803d5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-414a3e1{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-175ddc2 .elementor-icon-wrapper{text-align:center;}.elementor-351 .elementor-element.elementor-element-b658de2 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:20px;font-weight:500;line-height:1.3;color:#0F2A4A;}.elementor-351 .elementor-element.elementor-element-10ba067{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.65;color:#6B7280;}.elementor-351 .elementor-element.elementor-element-3b855a4{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-3b855a4:not(.elementor-motion-effects-element-type-background), .elementor-351 .elementor-element.elementor-element-3b855a4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#081A30;}.elementor-351 .elementor-element.elementor-element-af5fbf8{text-align:center;font-family:"Inter", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;line-height:1.4;letter-spacing:0.08em;color:#D4A73A;}.elementor-351 .elementor-element.elementor-element-8fec564{text-align:center;}.elementor-351 .elementor-element.elementor-element-8fec564 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:34px;font-weight:500;line-height:1.18;letter-spacing:-0.015em;color:#FFFFFF;}.elementor-351 .elementor-element.elementor-element-1d51f43{text-align:center;font-family:"Inter", Sans-serif;font-size:18px;font-weight:400;line-height:1.65;color:rgba(255,255,255,0.82);}@media(max-width:1023px){.elementor-351 .elementor-element.elementor-element-2a80ce7{--padding-top:64px;--padding-bottom:64px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-85d8889 .elementor-heading-title{font-size:30px;}.elementor-351 .elementor-element.elementor-element-bff0cba{--padding-top:64px;--padding-bottom:64px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-06d2da9{--grid-columns:1;}.elementor-351 .elementor-element.elementor-element-c986048{--padding-top:64px;--padding-bottom:64px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-8ff6ea4 .elementor-heading-title{font-size:30px;}.elementor-351 .elementor-element.elementor-element-3b855a4{--padding-top:64px;--padding-bottom:64px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-8fec564 .elementor-heading-title{font-size:30px;}}@media(max-width:767px){.elementor-351 .elementor-element.elementor-element-2a80ce7{--padding-top:48px;--padding-bottom:48px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-85d8889 .elementor-heading-title{font-size:26px;line-height:1.22;}.elementor-351 .elementor-element.elementor-element-bff0cba{--padding-top:48px;--padding-bottom:48px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-06d2da9{--grid-columns:1;}.elementor-351 .elementor-element.elementor-element-c986048{--padding-top:48px;--padding-bottom:48px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-8ff6ea4 .elementor-heading-title{font-size:26px;}.elementor-351 .elementor-element.elementor-element-0150d5f{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-351 .elementor-element.elementor-element-3b855a4{--padding-top:48px;--padding-bottom:48px;--padding-left:0px;--padding-right:0px;}.elementor-351 .elementor-element.elementor-element-8fec564 .elementor-heading-title{font-size:26px;line-height:1.22;}}@media(max-width:479px){.elementor-351 .elementor-element.elementor-element-06d2da9{--grid-columns:1;}.elementor-351 .elementor-element.elementor-element-0150d5f{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}/* Start custom CSS for container, class: .elementor-element-2a80ce7 */.elementor-351 .elementor-element.elementor-element-2a80ce7{position:relative; overflow:hidden;}
.elementor-351 .elementor-element.elementor-element-2a80ce7::before{content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
 background-image:radial-gradient(ellipse at 20% 0%, rgba(212,167,58,.10), transparent 55%);}
.elementor-351 .elementor-element.elementor-element-2a80ce7 > .e-con-inner{position:relative; z-index:1;}
.elementor-351 .elementor-element.elementor-element-2a80ce7 .prog-breadcrumb{margin:0 0 20px 0;}
.elementor-351 .elementor-element.elementor-element-2a80ce7 .prog-breadcrumb a{color:#D7E0EA; text-decoration:none;}
.elementor-351 .elementor-element.elementor-element-2a80ce7 .prog-breadcrumb a:hover{color:#D4A73A; text-decoration:underline;}
.elementor-351 .elementor-element.elementor-element-2a80ce7 .prog-breadcrumb a:focus-visible{outline:none; box-shadow:0 0 0 3px rgba(212,167,58,.45); border-radius:4px;}
.elementor-351 .elementor-element.elementor-element-2a80ce7 .eyebrow{margin:0 0 12px 0;}
.elementor-351 .elementor-element.elementor-element-2a80ce7 .branches-archive-h1{margin:0 0 16px 0; max-width:20ch;}
.elementor-351 .elementor-element.elementor-element-2a80ce7 .branches-archive-sub{margin:0; max-width:60ch;}
.elementor-351 .elementor-element.elementor-element-2a80ce7 .branches-archive-sub p{margin:0;}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bff0cba *//* D9: 1 col below 1024px, 2 cols at >=1024px. With one branch today, the card
   must render at normal width rather than stretching (spec 4 partial state). */
.elementor-351 .elementor-element.elementor-element-bff0cba .elementor-loop-container{justify-content:start; align-items:stretch;}
.elementor-351 .elementor-element.elementor-element-bff0cba .elementor-loop-container > *{min-width:0;}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a9f79a0 *//* D10 + spec 5: ships HIDDEN until the client confirms a factual service-area
   list. Only Whitefield, Kadugodi, Budigere Cross and Om City/Konadasapura are
   confirmed anywhere in the project sources; every other Bengaluru locality is
   unconfirmed and must not appear. Writing a plausible catchment list is the
   exact Hard Rule 2 failure mode this section guards against.

   The unconditional rule below is the REAL hide mechanism — gotcha 38: this
   install's elementor-hidden-desktop media query is (min-width:1440px) and
   (max-width:1439px), an impossible range that never matches, so the
   responsive flags alone would leave this VISIBLE on every desktop. */
.elementor-351 .elementor-element.elementor-element-a9f79a0.is-hidden-pending-copy{display:none !important;}

.elementor-351 .elementor-element.elementor-element-a9f79a0 .areas-text{margin:0; max-width:70ch; margin-left:auto; margin-right:auto;}
.elementor-351 .elementor-element.elementor-element-a9f79a0 .areas-text p{margin:0;}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c986048 *//* Reuses the approved condensed differentiator row (Programs Archive 6 pattern).
   Measured values from the live homepage #why-chakravyuh: chip 40x40 #EDF1F6
   radius 8, svg 20x20 fill #0F2A4A. */
.elementor-351 .elementor-element.elementor-element-c986048 .visit-h2{margin:0;}
.elementor-351 .elementor-element.elementor-element-c986048 .visit-row{width:100%;}
.elementor-351 .elementor-element.elementor-element-c986048 .visit-item{flex:1 1 0; min-width:0;}

/* Gotchas 17 + 33: a Container used as a fixed-size chip inherits --padding:10px,
   and its native width/height controls are inert unless content_width:'full'.
   Size it in CSS with !important and zero the padding explicitly. */
.elementor-351 .elementor-element.elementor-element-c986048 .visit-chip{width:40px !important; height:40px !important;
 flex-shrink:0 !important; padding:0 !important;
 background:#EDF1F6; border-radius:8px;}

/* Gotcha 20: Icon widgets render as inline <svg class="e-font-icon-svg">, not <i>.
   Style the svg directly — width/height/fill, never font-size/color. */
.elementor-351 .elementor-element.elementor-element-c986048 .visit-ic svg{width:20px; height:20px; fill:#0F2A4A;}

.elementor-351 .elementor-element.elementor-element-c986048 .visit-title{margin:0;}
.elementor-351 .elementor-element.elementor-element-c986048 .visit-body{margin:0;}
.elementor-351 .elementor-element.elementor-element-c986048 .visit-body p{margin:0;}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-96948cf */.elementor-351 .elementor-element.elementor-element-96948cf .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:56px;padding:0 32px;font-family:Inter,sans-serif;font-size:16px;font-weight:600;line-height:1;background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55);border-radius:8px;text-decoration:none;transition:background .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1);}
.elementor-351 .elementor-element.elementor-element-96948cf .elementor-button:hover{background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.85);}
.elementor-351 .elementor-element.elementor-element-96948cf .elementor-button:focus,
.elementor-351 .elementor-element.elementor-element-96948cf .elementor-button:active{background:transparent!important;color:#fff!important;}
.elementor-351 .elementor-element.elementor-element-96948cf .elementor-button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(212,167,58,.45);}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3b855a4 *//* Gotcha 15 — 5th top-level container. Flat background-color above; the gradient
   MUST be a ::before pseudo-element or Elementor's lazy-load CSS strips it. */
.elementor-351 .elementor-element.elementor-element-3b855a4{position:relative; overflow:hidden;}
.elementor-351 .elementor-element.elementor-element-3b855a4::before{content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
 background-image:linear-gradient(150deg, #081A30, #0F2A4A 70%);}
.elementor-351 .elementor-element.elementor-element-3b855a4 > .e-con-inner{position:relative; z-index:1;}

.elementor-351 .elementor-element.elementor-element-3b855a4 .bcta-eyebrow{margin:0;} .elementor-351 .elementor-element.elementor-element-3b855a4 .bcta-eyebrow p{margin:0;}
/* Gotcha 44 — a ch-based max-width on the WRAPPER resolves against the wrapper's
   inherited 16px body font, not the 34px Fraunces heading inside it. 24ch gave 207px
   and stacked this H2 over 6 lines. Scope font-relative widths to the text element. */
.elementor-351 .elementor-element.elementor-element-3b855a4 .bcta-h2{margin:0; max-width:none;}
.elementor-351 .elementor-element.elementor-element-3b855a4 .bcta-h2 .elementor-heading-title{max-width:24ch; margin-left:auto; margin-right:auto;}
.elementor-351 .elementor-element.elementor-element-3b855a4 .bcta-sub{margin:0; max-width:56ch;} .elementor-351 .elementor-element.elementor-element-3b855a4 .bcta-sub p{margin:0;}
.elementor-351 .elementor-element.elementor-element-3b855a4 .bcta-pending{margin:0;} .elementor-351 .elementor-element.elementor-element-3b855a4 .bcta-pending p{margin:0;}

/* UPDATED 2026-09-29: a real "Book Free Counselling" button now links to /admissions/
   (not a "#" placeholder, so the rule below still holds). Original note:
   NO branch-specific buttons in this band. Unlike the Single Branch CTA, an ARCHIVE
   has no branch in context, so there is no branch_phone / branch_whatsapp to bind
   to — and the client instruction forbids "#" placeholders (the frozen homepage
   band uses "#" on all three buttons; that pattern is NOT copied here).
   Each branch card in Section 2 already carries its own Directions/Call/WhatsApp
   controls, which is where a branch-specific action belongs. When real numbers
   land, add bound buttons here or rely on the per-card CTAs. *//* End custom CSS */