/* =========================================================
   B N Subramanya & Co — website stylesheet (final, approved)
   Generated from the approved design. Do not change values.
   ========================================================= */
:root{
  --p:#132241; --p2:#1d335f; --pf:#0a1429;
  --bg:#ffffff; --alt:#f2f4f6; --card:#f7f8fa; --slot:#e3e7eb;
  --t1:#1e2a3b; --t2:#33435a; --t3:#3f5067; --t4:#4b5c73; --t5:#63748b; --t6:#72829a;
  --on1:#e8edf5; --on2:#cbd5e4; --on3:#a7b5cb; --on4:#8b9cb8; --on5:#8191ab;
  --a:#2c4f8f; --al:#ffffff; --alRgb:255,255,255;
  --lineRgb:19,34,65; --onRgb:232,237,245; --ovRgb:6,10,22; --cardRgb:247,248,250; --pRgb:19,34,65;
  --fh:'Playfair Display',serif; --fb:'Inter',sans-serif;
  /* White page background: fine paper grain + faint honeycomb */
  --bgTex:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'240'%20height%3D'240'%3E%3Cfilter%20id%3D'n'%3E%3CfeTurbulence%20type%3D'fractalNoise'%20baseFrequency%3D'.85'%20numOctaves%3D'3'%20stitchTiles%3D'stitch'%2F%3E%3CfeColorMatrix%20values%3D'0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20.055%200'%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D'100%25'%20height%3D'100%25'%20filter%3D'url(%23n)'%2F%3E%3C%2Fsvg%3E") 0 0/240px 240px repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'56'%20height%3D'100'%3E%3Cg%20fill%3D'none'%20stroke%3D'rgba(19%2C34%2C65%2C.055)'%20stroke-width%3D'1'%3E%3Cpath%20d%3D'M28%2066L0%2050L0%2016L28%200L56%2016L56%2050L28%2066L28%20100'%2F%3E%3Cpath%20d%3D'M28%200L28%2034L0%2050L0%2084L28%20100L56%2084L56%2050L28%2034'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 0 0/56px 100px repeat, linear-gradient(#ffffff, #ffffff);
  /* Alternate band (light grey) with the same texture */
  --altTex:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'240'%20height%3D'240'%3E%3Cfilter%20id%3D'n'%3E%3CfeTurbulence%20type%3D'fractalNoise'%20baseFrequency%3D'.85'%20numOctaves%3D'3'%20stitchTiles%3D'stitch'%2F%3E%3CfeColorMatrix%20values%3D'0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20.055%200'%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D'100%25'%20height%3D'100%25'%20filter%3D'url(%23n)'%2F%3E%3C%2Fsvg%3E") 0 0/240px 240px repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'56'%20height%3D'100'%3E%3Cg%20fill%3D'none'%20stroke%3D'rgba(19%2C34%2C65%2C.055)'%20stroke-width%3D'1'%3E%3Cpath%20d%3D'M28%2066L0%2050L0%2016L28%200L56%2016L56%2050L28%2066L28%20100'%2F%3E%3Cpath%20d%3D'M28%200L28%2034L0%2050L0%2084L28%20100L56%2084L56%2050L28%2034'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 0 0/56px 100px repeat, linear-gradient(#f2f4f6, #f2f4f6);
  /* Midnight blue "faded" background with paper grain + honeycomb */
  --pGrad:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'240'%20height%3D'240'%3E%3Cfilter%20id%3D'n'%3E%3CfeTurbulence%20type%3D'fractalNoise'%20baseFrequency%3D'.85'%20numOctaves%3D'3'%20stitchTiles%3D'stitch'%2F%3E%3CfeColorMatrix%20values%3D'0%200%200%200%201%200%200%200%200%201%200%200%200%200%201%200%200%200%20.11%200'%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D'100%25'%20height%3D'100%25'%20filter%3D'url(%23n)'%2F%3E%3C%2Fsvg%3E") 0 0/240px 240px repeat, url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'56'%20height%3D'100'%3E%3Cg%20fill%3D'none'%20stroke%3D'rgba(255%2C255%2C255%2C0.05)'%20stroke-width%3D'1'%3E%3Cpath%20d%3D'M28%2066L0%2050L0%2016L28%200L56%2016L56%2050L28%2066L28%20100'%2F%3E%3Cpath%20d%3D'M28%200L28%2034L0%2050L0%2084L28%20100L56%2084L56%2050L28%2034'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 0 0/56px 100px repeat, radial-gradient(85% 110% at 92% -8%, rgba(92,108,140,.62) 0%, rgba(92,108,140,.18) 38%, rgba(92,108,140,0) 68%), radial-gradient(70% 80% at 0% 110%, rgba(10,20,41,.85) 0%, rgba(10,20,41,0) 70%), linear-gradient(160deg, #1d335f 0%, #132241 52%, #0a1429 100%);
}
html,body{margin:0;padding:0;}
*{box-sizing:border-box;}
body{font-family:var(--fb);color:var(--t1);background:var(--bgTex);min-height:100vh;-webkit-font-smoothing:antialiased;}
a{color:#1d3c5e;}
a:hover{color:#a9844f;}
::selection{background:#1d3c5e;color:#edf0f3;}
input,textarea,button{font-family:inherit;}

/* ---------- layout: fixed left sidebar ---------- */
.bns-sidebar{position:fixed;top:0;left:0;bottom:0;width:272px;z-index:70;background:#ffffff;border-right:1px solid rgba(var(--lineRgb),.12);display:flex;flex-direction:column;overflow-y:auto;transition:transform .35s cubic-bezier(.22,1,.36,1);transform:translateX(0);}
.bns-shift{margin-left:272px;transition:margin-left .35s cubic-bezier(.22,1,.36,1);min-width:0;}
.bns-topbar,.bns-overlay,.bns-show-tab{display:none;}
.bns-hide-tab{display:flex;}
html.bns-collapsed .bns-sidebar{transform:translateX(-100%);}
html.bns-collapsed .bns-shift{margin-left:0;}
html.bns-collapsed .bns-hide-tab{display:none;}
html.bns-collapsed .bns-show-tab{display:flex;}
@media (max-width:1023.98px){
  .bns-sidebar{width:300px;transform:translateX(-100%);}
  html.bns-menu-open .bns-sidebar{transform:translateX(0);box-shadow:20px 0 60px -20px rgba(var(--ovRgb),.5);}
  .bns-shift{margin-left:0 !important;}
  #bns-main{padding-top:64px;}
  .bns-topbar{display:flex;}
  html.bns-menu-open .bns-overlay{display:block;}
  .bns-hide-tab,.bns-show-tab{display:none !important;}
}

/* ---------- sidebar navigation states ---------- */
.bns-nav a.is-active{color:var(--p) !important;font-weight:600 !important;border-left-color:var(--a) !important;}
.bns-subnav{display:none;}
.bns-subnav a.is-active{color:var(--a) !important;font-weight:600 !important;border-left-color:transparent !important;}

/* ---------- hover / focus states ---------- */
.h-light:hover{background:var(--al) !important;}
.h-outline:hover{border-color:var(--al) !important;color:var(--al) !important;}
.h-solid:hover{background:var(--p) !important;}
.h-cta:hover{background:var(--card) !important;}
.h-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -24px rgba(var(--pRgb),.45);border-color:var(--a) !important;}
.h-showtab:hover{border-color:var(--a) !important;}
.h-hidetab:hover{background:var(--p) !important;color:var(--al) !important;transform:translateX(-2px);box-shadow:0 10px 22px -8px rgba(var(--ovRgb),.6), inset 0 0 0 3px var(--p), inset 0 0 0 4px var(--al) !important;}
.bns-input:focus{border-color:var(--a) !important;}
.bns-lifetab.is-active{font-weight:600 !important;color:var(--p) !important;border-bottom-color:var(--a) !important;}

/* ---------- photo placeholders (replace with <img>) ---------- */
.bns-slot{display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;background:var(--slot);color:var(--t5);font-size:13px;line-height:1.4;}
.bns-slot img,.bns-photo{width:100%;height:100%;object-fit:cover;display:block;}

/* ---------- loading screen + disclaimer ---------- */
#bns-loader{display:none;}
html.bns-loading #bns-loader{display:flex;}
#bns-loader.is-fading{opacity:0;visibility:hidden;}
#bns-disclaimer{display:none;}
html.bns-disc #bns-disclaimer{display:flex;}
@keyframes ldMark{0%{opacity:0;transform:scale(.86)}100%{opacity:1;transform:scale(1)}}
@keyframes ldMarkDraw{0%{clip-path:inset(100% 0 0 0)}100%{clip-path:inset(0 0 0 0)}}
@keyframes ldLogo{0%{clip-path:inset(0 100% 0 0);opacity:0}14%{opacity:1}100%{clip-path:inset(0 0 0 0);opacity:1}}
@keyframes ldRule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ldWord{0%{opacity:0;transform:translateY(10px);filter:blur(3px)}100%{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes ldTick{0%{opacity:0;transform:rotate(45deg) scale(1.9)}60%{opacity:1;transform:rotate(45deg) scale(.92)}100%{opacity:1;transform:rotate(45deg) scale(1)}}
@keyframes ldFade{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes ldBar{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}
