
  :root{
    --ivory:#F8F3E9;--ivory-2:#F2EADB;--bordeaux:#5A1A2A;--bordeaux-2:#6d2536;
    --brass:#AE8A4C;--brass-deep:#876733;--ink:#2B2118;--text:#4a3f31;--muted:#867a68;
    --rule:rgba(174,138,76,.40);--rule-soft:rgba(174,138,76,.22);
    --didone:"Bodoni Moda",Didot,"Times New Roman",serif;--gara:"EB Garamond",Georgia,serif;--maxw:1120px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--gara);color:var(--text);background:var(--ivory);font-size:19px;line-height:1.7;-webkit-font-smoothing:antialiased;border-top:3px solid var(--bordeaux)}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 36px}
  .wrap-narrow{max-width:760px;margin:0 auto;padding:0 36px}
  h1,h2,h3{font-family:var(--didone);font-weight:500;line-height:1.08;color:var(--ink)}
  a{color:inherit;text-decoration:none}
  .sc{font-family:var(--gara);text-transform:uppercase;letter-spacing:.28em;font-size:.72rem;color:var(--brass-deep);font-weight:500}
  .orn{display:flex;align-items:center;justify-content:center;gap:14px;margin:26px auto}
  .orn .ln{height:1px;width:60px;background:var(--brass)}
  .orn .dia{width:7px;height:7px;background:var(--brass);transform:rotate(45deg)}
  .crest{width:60px;height:60px;color:var(--bordeaux)}
  .crest .ring{fill:none;stroke:var(--brass);stroke-width:1.1}
  .crest .ring2{fill:none;stroke:var(--brass);stroke-width:.5}
  .crest .a{font-family:var(--didone);font-weight:600;font-size:42px;fill:var(--bordeaux)}
  .crest .dia{fill:var(--brass)}

  header{background:var(--ivory)}
  .masthead{display:flex;flex-direction:column;align-items:center;padding:30px 0 18px}
  .masthead .word{font-family:var(--didone);font-weight:500;font-size:1.7rem;letter-spacing:.42em;margin:14px 0 4px;padding-left:.42em;color:var(--ink)}
  .masthead .estd{font-family:var(--gara);text-transform:uppercase;letter-spacing:.3em;font-size:.62rem;color:var(--muted)}
  .navbar{position:sticky;top:0;z-index:50}
  nav.links{position:relative;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--ivory)}
  nav.links .inner{display:flex;justify-content:center;gap:42px;padding:15px 0}
  nav.links a{font-family:var(--gara);text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;color:var(--ink);padding-bottom:2px;border-bottom:1px solid transparent;cursor:pointer;transition:color .2s,border-color .2s}
  nav.links a:hover{color:var(--bordeaux);border-color:var(--brass)}
  nav.links a.current{color:var(--bordeaux);border-color:var(--brass)}
  .langsw{position:absolute;right:36px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:7px}
  .langsw button{background:none;border:0;cursor:pointer;font-family:var(--gara);text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--muted);padding:2px;transition:color .2s}
  .langsw button:hover{color:var(--bordeaux)}
  .langsw button.on{color:var(--bordeaux);font-weight:600}
  .langsw .sep{color:var(--rule);font-size:.72rem}

  .view{display:block}
  .view{animation:fade .35s ease}
  @keyframes fade{from{opacity:0}to{opacity:1}}

  .hero{min-height:86vh;display:flex;flex-direction:column;justify-content:center;padding:54px 0 84px;text-align:center}
  .crest-stage{position:relative;width:210px;height:250px;margin:0 auto 26px}
  .glow{position:absolute;left:50%;top:52%;width:320px;height:320px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(174,138,76,.5),rgba(174,138,76,0) 62%);filter:blur(7px);opacity:1;pointer-events:none}
  .crest-pulse{width:210px;height:250px;transform-origin:50% 52%;animation:crestIntro 1.1s ease both}
  .bigcrest{width:210px;height:250px;display:block}
  .crest-pulse.idle{animation:crestIdle 4.5s ease-in-out infinite}
  @keyframes crestIntro{0%{opacity:0}100%{opacity:1}}
  @keyframes crestIdle{0%,100%{transform:scale(1)}50%{transform:scale(1.018)}}
  @media (prefers-reduced-motion: reduce){.crest-pulse{animation:none!important}}
  .hero .eyebrow{display:block;margin-bottom:26px}
  .hero h1{font-size:clamp(2.8rem,6.6vw,5.4rem);font-weight:500}
  .hero h1 em{font-style:italic}
  .hero .stand{font-family:var(--gara);font-size:1.32rem;color:var(--text);max-width:48ch;margin:30px auto 0;line-height:1.6}
  .go{display:inline-block;font-family:var(--gara);text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;color:var(--bordeaux);border-bottom:1px solid var(--brass);padding-bottom:6px;cursor:pointer;transition:color .2s}
  .go:hover{color:var(--brass-deep)}
  .hero .go{margin-top:34px}

  .page-head{text-align:center;padding:74px 0 8px}
  .page-head h1{font-size:clamp(2.4rem,5vw,3.6rem);font-weight:500;margin-top:14px}

  section{padding:74px 0}
  .sec-head{text-align:center;max-width:680px;margin:0 auto 54px}
  .sec-head h2{font-size:clamp(2rem,4.4vw,3rem)}
  .sec-head .lead{font-family:var(--gara);font-size:1.15rem;color:var(--muted);margin-top:18px;font-style:italic}

  .about-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:64px;align-items:center;max-width:980px;margin:0 auto}
  .about-grid p{font-family:var(--gara);font-size:1.14rem;color:var(--text);margin-bottom:18px}
  .about-grid p.lead-cap::first-letter{font-family:var(--didone);font-size:4.2rem;float:left;line-height:.74;padding:8px 14px 0 0;color:var(--bordeaux)}
  .about-aside{border-left:1px solid var(--rule);padding-left:40px}
  .about-aside .q{font-family:var(--didone);font-style:italic;font-size:1.7rem;line-height:1.4;color:var(--ink)}

  .credo{background:var(--bordeaux);color:var(--ivory);text-align:center}
  .credo .wrap{padding:58px 36px}
  .credo p{font-family:var(--didone);font-style:italic;font-weight:400;font-size:clamp(1.5rem,3.4vw,2.2rem);line-height:1.35;max-width:30ch;margin:0 auto;color:var(--ivory)}
  .credo .orn .ln{background:var(--brass)}

  .services{background:var(--ivory-2)}
  .svc{display:grid;grid-template-columns:1fr 1fr;max-width:980px;margin:0 auto;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
  .svc > div{padding:42px 44px;border-bottom:1px solid var(--rule);border-right:1px solid var(--rule)}
  .svc .rn{font-family:var(--didone);font-style:italic;font-size:1.3rem;color:var(--brass-deep)}
  .svc h3{font-size:1.6rem;margin:8px 0 14px;font-weight:500}
  .svc p{font-family:var(--gara);color:var(--text);font-size:1.04rem}

  .approach{background:var(--ivory)}
  .approach .steps{max-width:820px;margin:0 auto;border-top:1px solid var(--rule)}
  .approach .step{display:grid;grid-template-columns:90px 1fr;gap:30px;padding:30px 0;border-bottom:1px solid var(--rule);align-items:baseline}
  .approach .rn{font-family:var(--didone);font-size:2.1rem;color:var(--brass-deep);line-height:1}
  .approach h3{font-size:1.45rem;font-weight:500;margin-bottom:6px}
  .approach p{font-family:var(--gara);color:var(--text);font-size:1.05rem}

  .gov-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1000px;margin:0 auto}
  .gov-grid > div{padding:0 34px;text-align:center;border-right:1px solid var(--rule)}
  .gov-grid > div:last-child{border-right:0}
  .gov-grid .rn{font-family:var(--didone);font-style:italic;font-size:1.6rem;color:var(--brass);display:block;margin-bottom:14px}
  .gov-grid h3{font-size:1.3rem;font-weight:500;margin-bottom:12px}
  .gov-grid p{font-family:var(--gara);color:var(--text);font-size:1rem}

  .entity{background:var(--ivory-2)}
  .entity table{width:100%;max-width:780px;margin:0 auto;border-collapse:collapse;border-top:2px solid var(--brass)}
  .entity tr{border-bottom:1px solid var(--rule)}
  .entity th{text-align:left;width:34%;padding:20px 0;font-family:var(--gara);text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:var(--muted);font-weight:500;vertical-align:middle}
  .entity td{padding:20px 0;font-family:var(--didone);font-size:1.2rem;color:var(--ink);font-weight:500}

  .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--rule)}
  details{border-bottom:1px solid var(--rule);padding:24px 0}
  summary{font-family:var(--didone);font-size:1.35rem;color:var(--ink);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:500}
  summary::-webkit-details-marker{display:none}
  summary .pm{font-family:var(--gara);color:var(--brass-deep);font-size:1.4rem;flex:none;line-height:1}
  details p{font-family:var(--gara);color:var(--text);margin-top:14px;max-width:66ch;font-size:1.06rem}

  .teaser{max-width:820px;margin:0 auto;border-top:1px solid var(--rule)}
  .teaser a{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid var(--rule);cursor:pointer;transition:color .2s}
  .teaser a:hover{color:var(--bordeaux)}
  .teaser a .t{font-family:var(--didone);font-size:1.55rem;font-weight:500}
  .teaser a .go-min{font-family:var(--gara);font-size:1rem;color:var(--brass-deep)}
  .teaser-cta{text-align:center;margin-top:44px}

  .contact{background:var(--bordeaux);color:var(--ivory);text-align:center;min-height:70vh;display:flex;align-items:center}
  .contact .sc{color:var(--brass)}
  .contact h2{color:var(--ivory);font-size:clamp(2.2rem,5vw,3.4rem);font-weight:500}
  .contact h2 em{font-style:italic}
  .contact .mail{display:inline-block;margin-top:14px;font-family:var(--didone);font-style:italic;font-size:1.9rem;color:var(--ivory);border-bottom:1px solid var(--brass);padding-bottom:6px;transition:color .2s}
  .contact .mail:hover{color:var(--brass)}
  .contact .note{font-family:var(--gara);color:#e6d8c2;margin-top:26px;font-size:1rem}
  .contact .orn .ln{background:var(--brass)}

  .legal .page-head{padding:66px 0 4px;text-align:center}
  .legal h1{font-size:clamp(2.2rem,5vw,3rem)}
  .legal h2{font-size:1.4rem;margin:34px 0 8px;font-weight:500}
  .legal p{margin-bottom:14px;color:var(--text)}
  .legal a{color:var(--bordeaux)}
  .legal .upd{font-family:var(--gara);font-style:italic;color:var(--muted);font-size:.95rem;margin-top:8px}
  .legal .note{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:16px 0;color:var(--muted);font-style:italic;font-size:.95rem;margin:24px 0}
  .legal-main{padding:10px 0 76px}

  footer{background:var(--ivory);padding:60px 0 38px;text-align:center}
  footer .word{font-family:var(--didone);letter-spacing:.4em;font-size:1.2rem;padding-left:.4em;color:var(--ink);margin-top:14px;display:inline-block}
  .foot-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:30px;margin:24px 0}
  .foot-nav a{font-family:var(--gara);text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;color:var(--ink);cursor:pointer}
  .foot-nav a:hover{color:var(--bordeaux)}
  .foot-addr{font-family:var(--gara);color:var(--muted);font-size:.92rem;line-height:1.7}
  .foot-bottom{font-family:var(--gara);text-transform:uppercase;letter-spacing:.2em;font-size:.62rem;color:var(--muted);margin-top:24px;padding-top:20px;border-top:1px solid var(--rule-soft)}

  @media(max-width:860px){
    nav.links .inner{gap:20px;flex-wrap:wrap;padding:12px 0 40px}
    .langsw{position:static;transform:none;justify-content:center;width:100%;padding:10px 0 0}
    .about-grid{grid-template-columns:1fr;gap:36px}
    .about-aside{border-left:0;border-top:1px solid var(--rule);padding-left:0;padding-top:28px}
    .svc{grid-template-columns:1fr}
    .gov-grid{grid-template-columns:1fr}
    .gov-grid > div{border-right:0;border-bottom:1px solid var(--rule);padding:28px 0}
    .gov-grid > div:last-child{border-bottom:0}
  }
  @media(max-width:540px){.approach .step{grid-template-columns:60px 1fr;gap:18px}}
