*{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{font-family:'Montserrat',Arial,sans-serif;color:#16161a;background:#0b0b0d;-webkit-font-smoothing:antialiased;}
  img{display:block;max-width:100%;}
  a{text-decoration:none;color:inherit;}
  .fcs-navitem > .fcs-dd{opacity:0;visibility:hidden;transform:translateY(10px);pointer-events:none;transition:opacity .18s ease, transform .18s ease, visibility .18s;}
  .fcs-navitem:hover > .fcs-dd{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;}
  .fcs-navlink{position:relative;}
  .fcs-navlink::after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:2px;background:#c89a3c;transform:scaleX(0);transform-origin:left;transition:transform .22s ease;}
  .fcs-navitem:hover .fcs-navlink::after{transform:scaleX(1);}
  .fcs-dditem{transition:background .15s ease,color .15s ease,padding .15s ease;}
  .fcs-dditem:hover{background:#15151a;color:#e6c976;padding-left:26px;}
  .fcs-card{transition:transform .3s cubic-bezier(.2,.7,.3,1),box-shadow .3s ease;}
  .fcs-card:hover{transform:translateY(-6px);}
  .fcs-svc{transition:transform .25s ease,border-color .25s ease,background .25s ease;}
  .fcs-svc:hover{transform:translateY(-5px);border-color:#c89a3c;background:#fff;}
  .fcs-svc:hover .fcs-svc-go{color:#7d5f1f;letter-spacing:.16em;}
  .fcs-btn{transition:transform .2s ease,box-shadow .25s ease,background .25s ease,color .25s ease;}
  .fcs-btn-gold:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(200,154,60,.35);}
  .fcs-btn-ghost:hover{background:#fff !important;color:#111 !important;}
  .fcs-zoom{overflow:hidden;}
  .fcs-zoom img{transition:transform .6s cubic-bezier(.2,.7,.3,1);}
  .fcs-card:hover .fcs-zoom img{transform:scale(1.07);}
  .fcs-bur:hover{transform:scale(1.03);box-shadow:0 16px 32px rgba(0,0,0,.12);border-color:#c89a3c;}
  .fcs-bur:hover .fcs-bur-arrow{transform:translateX(4px);color:#e6c976;}
  .fcs-bur-arrow{transition:transform .2s ease,color .2s ease;}
  @keyframes fcsFade{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}
  .fcs-desktopnav{display:flex;}
  .fcs-burger{display:none;}
  .fcs-k9card{flex:0 0 calc(25% - 18px);max-width:calc(25% - 18px);}
  @media(max-width:1040px){
    .fcs-desktopnav{display:none;}
    .fcs-burger{display:flex;}
    .fcs-k9card{flex:0 0 calc(50% - 12px);max-width:calc(50% - 12px);}
  }
  @media(max-width:640px){
    .fcs-k9card{flex:0 0 100%;max-width:100%;}
  }
  @media(max-width:860px){
    .fcs-grid-2{grid-template-columns:1fr !important;gap:40px !important;}
    .fcs-grid-2 .fcs-portrait-wrap{max-width:420px;margin:0 auto;}
  }
  @media(max-width:980px){
    .fcs-footer-grid{grid-template-columns:1fr 1fr !important;gap:30px !important;}
  }
  @media(max-width:560px){
    .fcs-footer-grid{grid-template-columns:1fr !important;}
    .fcs-deputies{grid-template-columns:1fr !important;gap:16px !important;}
  }

  /* mobile menu panel */
  .fcs-mobile-panel{display:none;background:#0d0d10;border-top:1px solid rgba(200,154,60,.25);padding:4px 24px 22px;}
  .fcs-mobile-panel.open{display:block;}
  .fcs-mobile-panel .m-row{border-bottom:1px solid rgba(255,255,255,.07);}
  .fcs-mobile-panel .m-link{display:flex;align-items:center;gap:10px;padding:14px 4px;font-size:14px;font-weight:700;letter-spacing:.04em;color:#e9e7df;}
  .fcs-acc-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:transparent;border:none;padding:14px 4px;font-size:14px;font-weight:700;letter-spacing:.04em;color:#e9e7df;cursor:pointer;text-align:left;font-family:inherit;}
  .fcs-acc-sign{font-size:22px;font-weight:400;color:#c89a3c;line-height:1;width:18px;text-align:center;}
  .fcs-acc-body{display:none;flex-direction:column;padding:0 4px 14px;}
  .fcs-acc-group.open .fcs-acc-body{display:flex;}
  .fcs-acc-body a{display:block;padding:9px 14px;font-size:13.5px;font-weight:500;color:#c4c2b9;border-left:2px solid rgba(200,154,60,.4);margin-bottom:2px;}
  .fcs-report-mobile{display:block;text-align:center;margin-top:16px;background:#c08f2e linear-gradient(180deg,#d4a84a,#b9892f);color:#1a1408;font-size:13px;font-weight:800;letter-spacing:.05em;padding:14px;border-radius:3px;}

/* ===== interior pages ===== */
  .ip-hero{position:relative;background:#0b0b0d;overflow:hidden;border-bottom:2px solid #c89a3c;}
  .ip-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32;z-index:0;}
  .ip-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,10,.94) 0%,rgba(8,8,10,.84) 55%,rgba(8,8,10,.76) 100%);z-index:1;}
  .ip-hero-inner{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:64px 24px 52px;}
  .ip-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:12px;font-weight:700;letter-spacing:.04em;color:#bdbbb2;margin-bottom:18px;}
  .ip-crumb a{color:#bdbbb2;}
  .ip-crumb a:hover{color:#e6c976;}
  .ip-crumb .sep{color:#c89a3c;}
  .ip-crumb .cur{color:#e6c976;}
  .ip-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:12.5px;font-weight:800;letter-spacing:.24em;color:#d8b45a;}
  .ip-eyebrow .bar{height:2px;width:40px;background:#c89a3c;display:inline-block;}
  .ip-title{margin:0;font-size:clamp(34px,5.4vw,62px);line-height:1.02;font-weight:900;letter-spacing:-.02em;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.5);}
  .ip-sub{margin:20px 0 0;max-width:640px;font-size:18px;line-height:1.62;color:#e3e1d8;text-shadow:0 1px 10px rgba(0,0,0,.45);}

  .ip-section{padding:64px 0;}
  .ip-section.light{background:#f2f3f5;}
  .ip-section.white{background:#fff;}
  .ip-section.dark{background:#101013;}
  .ip-wrap{max-width:1000px;margin:0 auto;padding:0 24px;}
  .ip-wrap-wide{max-width:1180px;margin:0 auto;padding:0 24px;}
  .ip-shead{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:12.5px;font-weight:800;letter-spacing:.22em;color:#7d5f1f;}
  .ip-shead .bar{height:2px;width:40px;background:#c89a3c;display:inline-block;}
  .ip-section.dark .ip-shead{color:#d8b45a;}
  .ip-h2{margin:0 0 26px;font-size:clamp(26px,3.4vw,38px);line-height:1.12;font-weight:800;letter-spacing:-.01em;color:#16161a;}
  .ip-section.dark .ip-h2{color:#fff;}

  .prose{font-size:17px;line-height:1.75;color:#33322c;}
  .prose p{margin:0 0 18px;}
  .prose strong{color:#16161a;font-weight:800;}
  .prose a{color:#7d5f1f;font-weight:600;border-bottom:1px solid rgba(125,95,31,.4);}
  .prose a:hover{color:#5f4915;border-color:#5f4915;}
  .prose ul{margin:0 0 20px;padding-left:0;list-style:none;}
  .prose ul li{position:relative;margin:0 0 10px;padding-left:26px;}
  .prose ul li::before{content:"";position:absolute;left:2px;top:10px;width:8px;height:8px;background:#c89a3c;transform:rotate(45deg);}
  .prose ol{margin:0 0 20px;padding-left:22px;}
  .prose ol li{margin:0 0 10px;}
  .prose h3{margin:30px 0 14px;font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#16161a;}
  .prose h3::before{content:"";display:inline-block;width:22px;height:3px;background:#c89a3c;vertical-align:middle;margin-right:10px;transform:translateY(-3px);}
  .ip-section.dark .prose{color:#c8c6bd;}
  .ip-section.dark .prose strong{color:#fff;}
  .ip-section.dark .prose a{color:#e6c976;border-color:rgba(230,201,118,.4);}

  .ip-lead{font-size:20px;line-height:1.6;font-weight:600;color:#16161a;}

  .ip-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}
  .ip-infocard{background:#101013;border-top:3px solid #c89a3c;padding:26px 24px;}
  .ip-infocard .lbl{font-size:13px;font-weight:800;letter-spacing:.12em;color:#c89a3c;margin-bottom:12px;}
  .ip-infocard .val{font-size:18px;line-height:1.7;color:#e7e5dc;}
  .ip-infocard .val a[href^="mailto:"]{font-size:14px;word-break:break-word;}
  .ip-cards-3{grid-template-columns:repeat(3,1fr);}
  @media(max-width:1024px){.ip-cards-3{grid-template-columns:1fr;}}
  .ip-infocard .val a{color:#e7e5dc;border-bottom:1px solid rgba(200,154,60,.5);}
  .ip-infocard .val a:hover{color:#fff;}

  .ip-person{display:grid;grid-template-columns:300px 1fr;gap:44px;align-items:start;}
  .ip-portrait{position:relative;}
  .ip-portrait img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center 20%;position:relative;z-index:1;border:1px solid rgba(0,0,0,.1);}
  .ip-portrait::before{content:"";position:absolute;top:-14px;left:-14px;width:60%;height:60%;border:2px solid #c89a3c;z-index:0;}
  .ip-role{font-size:12px;font-weight:800;letter-spacing:.16em;color:#7d5f1f;margin-bottom:8px;}
  .ip-name{margin:0 0 18px;font-size:26px;font-weight:900;letter-spacing:-.01em;color:#16161a;}
  @media(max-width:760px){
    .ip-person{grid-template-columns:1fr;gap:26px;}
    .ip-portrait{max-width:320px;}
  }

  .ip-band{display:flex;align-items:center;gap:14px;background:#101013;border-left:4px solid #c89a3c;padding:16px 22px;margin:0 0 26px;}
  .ip-band h2{margin:0;font-size:19px;font-weight:800;letter-spacing:.02em;color:#fff;}

  .ip-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:8px;}
  .ip-gallery img{width:100%;height:100%;object-fit:cover;border:1px solid rgba(0,0,0,.12);}


/* ===== homepage bio links ===== */
  .fcs-biolink{color:inherit;display:block;}
  .fcs-biolink:hover .fcs-bn{color:#7d5f1f;}
  .fcs-bio-card{transition:transform .2s ease;}
  .fcs-bio-card:hover{transform:translateY(-2px);}
  .fcs-bio-card img{transition:border-color .2s ease;}
  .fcs-bio-card:hover img{border-color:#e6c976;}

/* ===== jobs + note ===== */
  .ip-note{font-size:14px;color:#57554d;border-left:3px solid #c89a3c;background:#fff;padding:18px 22px;}
  .ip-note p{margin:0;}
  .ip-jobs{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}
  @media(max-width:640px){.ip-jobs{grid-template-columns:1fr;}}
  .ip-jobcard{display:flex;flex-direction:column;background:#16161a;border:1px solid rgba(255,255,255,.08);border-top:3px solid #c89a3c;padding:24px 22px;transition:transform .25s ease,border-color .25s ease;}
  .ip-jobcard:hover{transform:translateY(-5px);border-top-color:#e6c976;}
  .ip-jobcard .jt{font-size:20px;font-weight:800;color:#fff;margin-bottom:10px;}
  .ip-jobcard .jm{font-size:12.5px;line-height:1.7;color:#c89a3c;font-weight:600;margin-bottom:14px;}
  .ip-jobcard .jd{font-size:13.5px;line-height:1.6;color:#a7a59c;margin-bottom:18px;flex:1;}
  .ip-jobcard .jgo{font-size:12px;font-weight:800;letter-spacing:.1em;color:#e6c976;}
  .ip-jobcard:hover .jgo{letter-spacing:.16em;}

/* ===== screen-reader utility ===== */
  .sr-only{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* ===== skip link ===== */
  .skip-link{position:absolute;left:-9999px;top:0;z-index:10000;background:#101013;color:#fff;padding:12px 18px;font-weight:700;border:2px solid #c89a3c;border-radius:0 0 4px 0;}
  .skip-link:focus{left:0;top:0;}