:root{
    --navy: #3E4757;
    --navy-deep: #2A303B;
    --slate: #6B7684;
    --paper: #FAFAF8;
    --paper-line: #E7E5DF;
    --gold: #B08A4E;
    --ink: #232830;
  }

  *{ box-sizing:border-box; }

  html,body{
    margin:0;
    padding:0;
    background:var(--paper);
    color:var(--ink);
    font-family: 'Source Sans Pro', 'Segoe UI', Arial, sans-serif;
    -webkit-font-smoothing:antialiased;
  }

  @font-face{
    font-family:'Fraunces';
    src:local('Fraunces');
  }

  body{
    min-height:100vh;
    display:flex;
    flex-direction:column;
    align-items:center;
  }

  .rays{
    position:fixed;
    top:-10vw;
    right:-10vw;
    width:60vw;
    height:60vw;
    max-width:640px;
    max-height:640px;
    opacity:0.05;
    pointer-events:none;
    z-index:0;
  }

  header{
    width:100%;
    display:flex;
    justify-content:center;
    padding: 56px 24px 0;
    position:relative;
    z-index:1;
  }

  .logo{
    height:64px;
    width:auto;
  }

  main{
    width:100%;
    max-width:760px;
    padding: 40px 32px 80px;
    position:relative;
    z-index:1;
  }

  .eyebrow{
    text-align:center;
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:12px;
    font-weight:600;
    color:var(--gold);
    margin-bottom:18px;
  }

  h1{
    font-family: Georgia, 'Times New Roman', serif;
    font-weight:600;
    font-size:clamp(28px, 4.4vw, 42px);
    line-height:1.15;
    text-align:center;
    color:var(--navy-deep);
    margin: 0 0 22px;
    letter-spacing:-0.01em;
  }

  .lede{
    text-align:center;
    font-size:17px;
    line-height:1.65;
    color:var(--slate);
    max-width:560px;
    margin: 0 auto 48px;
  }

  .lede strong{
    color:var(--ink);
    font-weight:600;
  }

  .divider{
    width:56px;
    height:2px;
    background:var(--gold);
    margin: 0 auto 48px;
    border:none;
  }

  .section-label{
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.14em;
    font-weight:700;
    color:var(--navy);
    text-align:center;
    margin-bottom:28px;
  }

  .transfers{
    display:flex;
    flex-direction:column;
    gap:0;
    border-top:1px solid var(--paper-line);
  }

  .transfer{
    display:grid;
    grid-template-columns: 1fr;
    gap:6px;
    padding: 26px 8px;
    border-bottom:1px solid var(--paper-line);
  }

  .transfer .service{
    font-size:15px;
    color:var(--slate);
    line-height:1.5;
  }

  .transfer .firm{
    font-family: Georgia, 'Times New Roman', serif;
    font-size:22px;
    font-weight:600;
    color:var(--navy-deep);
    text-decoration:none;
    border-bottom:1px solid transparent;
    transition: border-color .15s ease, color .15s ease;
  }
  .transfer .firm:hover,
  .transfer .firm:focus-visible{
    color:var(--gold);
    border-bottom-color:var(--gold);
  }

  .transfer .firm-note{
    font-size:14px;
    color:var(--slate);
    font-style:italic;
  }

  @media (min-width:600px){
    .transfer{
      grid-template-columns: 1fr auto;
      align-items:center;
      gap:24px;
    }
    .transfer .service{ order:1; }
    .transfer .firm-wrap{ order:2; text-align:right; }
  }

  .closing-note{
    margin-top: 56px;
    text-align:center;
    font-size:14px;
    color:var(--slate);
    line-height:1.7;
  }

  .closing-note .date{
    display:inline-block;
    margin-top:4px;
    font-weight:600;
    color:var(--navy);
  }

  footer{
    width:100%;
    text-align:center;
    padding: 28px 24px 40px;
    font-size:12px;
    color:var(--slate);
    position:relative;
    z-index:1;
  }

  footer a{
    color:var(--navy);
    text-decoration:none;
    border-bottom:1px solid var(--paper-line);
  }
  footer a:hover{
    border-bottom-color:var(--navy);
  }

  @media (prefers-reduced-motion:no-preference){
    main{
      animation: rise .6s ease-out both;
    }
    @keyframes rise{
      from{ opacity:0; transform:translateY(10px); }
      to{ opacity:1; transform:translateY(0); }
    }
  }

  .transfer .contact-list{
    list-style:none;
    margin:6px 0 0;
    padding:0;
    font-size:13px;
    color:var(--slate);
    line-height:1.6;
  }

  .transfer .contact-list a{
    color:var(--slate);
    text-decoration:none;
    border-bottom:1px solid var(--paper-line);
  }
  .transfer .contact-list a:hover{
    color:var(--navy);
    border-bottom-color:var(--navy);
  }

  @media (min-width:600px){
    .transfer .contact-list{ text-align:right; }
  }

  .subsection{
    margin-top:56px;
  }

  .subsection-title{
    font-family: Georgia, 'Times New Roman', serif;
    font-size:20px;
    font-weight:600;
    color:var(--navy-deep);
    text-align:center;
    margin: 0 0 18px;
  }

  .subsection p{
    text-align:center;
    font-size:15px;
    line-height:1.7;
    color:var(--slate);
    max-width:560px;
    margin: 0 auto 16px;
  }

  .own-contact{
    text-align:center;
    font-size:15px;
    line-height:1.9;
    color:var(--ink);
    margin-top:8px;
  }

  .own-contact strong{
    color:var(--navy);
  }

  .own-contact a{
    color:var(--navy);
    text-decoration:none;
    border-bottom:1px solid var(--paper-line);
  }
  .own-contact a:hover{
    border-bottom-color:var(--navy);
  }

  .lang-section .lede + .lede{
    margin-top:-32px;
  }
