.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.language-control select {
  appearance: none;
  background: #0b1e38;
  color: #fff;
  border: 1px solid rgba(242, 200, 102, 0.55);
  padding: 11px 30px 11px 12px;
  font-weight: 800;
  font-size: 14px;
  background-image:
    linear-gradient(45deg, transparent 50%, #f2c866 50%),
    linear-gradient(135deg, #f2c866 50%, transparent 50%);
  background-position:
    calc(100% - 14px) 50%,
    calc(100% - 9px) 50%;
  background-size: 5px 5px;
  background-repeat: no-repeat;
}
.blog {
  padding: 110px 7vw;
  background: linear-gradient(180deg, #fff 0, #f4f1e9 100%);
  color: var(--ink);
}
.blog .section-tag {
  color: #a47716;
}
.blog-heading {
  max-width: 1250px;
  margin: 0 auto 50px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 50px;
}
.blog-heading-copy { max-width: 850px; }
.blog-heading h2 {
  font-family: "Playfair Display";
  font-size: clamp(44px, 5vw, 70px);
  line-height: 1.05;
  margin: 14px 0 18px;
}
.blog-heading-copy > p:last-child { max-width: 680px; font-size: 19px; line-height: 1.75; color: #5f6977; }
.editorial-mark { width: 118px; height: 118px; border: 1px solid #c9a145; border-radius: 50%; display: grid; place-content: center; text-align: center; color: #9a6d10; flex: 0 0 auto; }
.editorial-mark span { font-family: "Playfair Display"; font-size: 34px; line-height: 1; }
.editorial-mark small { font-size: 8px; letter-spacing: 2px; margin-top: 7px; }
.featured-story {
  max-width: 1250px;
  margin: 0 auto 22px;
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  min-height: 380px;
  color: #fff;
  background: linear-gradient(135deg, #06152b, #123760);
  overflow: hidden;
}
.featured-art { position: relative; display: flex; align-items: center; justify-content: center; gap: 95px; min-height: 340px; background: radial-gradient(circle at center, rgba(242,200,102,.18), transparent 42%); }
.featured-art:before, .featured-art:after { content:""; position:absolute; border:1px solid rgba(242,200,102,.32); border-radius:50%; width:250px; height:250px; }
.featured-art:after { width:180px; height:180px; }
.featured-art span { z-index:1; font-size:12px; font-weight:800; letter-spacing:2px; color:#f2c866; }
.featured-art i { width:11px; height:11px; background:#f2c866; border-radius:50%; box-shadow:0 0 22px #f2c866; z-index:1; }
.featured-copy { padding: 65px 65px 60px 25px; display:flex; flex-direction:column; align-items:flex-start; }
.featured-copy > span { color:#f2c866; font-size:12px; font-weight:800; letter-spacing:1.5px; }
.featured-copy h3 { font-family:"Playfair Display"; font-size:clamp(34px,3.3vw,48px); line-height:1.12; margin:20px 0; }
.featured-copy p { color:#c4cfdd; font-size:17px; line-height:1.7; margin:0 0 28px; }
.featured-copy a { color:#f2c866; font-weight:800; font-size:14px; }
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  max-width: 1250px;
  margin: auto;
}
.blog-grid article {
  border-top: 3px solid var(--gold);
  background: #fff;
  padding: 36px;
  min-height: 350px;
  display: flex;
  flex-direction: column;
}
.blog-grid span {
  font-size: 13px;
  letter-spacing: 1.5px;
  font-weight: 800;
  color: #9a6d10;
}
.blog-grid h3 {
  font-family: "Playfair Display";
  font-size: 28px;
  line-height: 1.25;
  margin: 24px 0 15px;
}
.blog-grid p {
  font-size: 17px;
  line-height: 1.7;
  color: #5f6977;
}
.blog-grid a {
  margin-top: auto;
  font-size: 15px;
  font-weight: 800;
  color: #8a620e;
}
.blog-action {
  max-width: 1250px;
  margin: 30px auto 0;
  text-align: right;
}
.newsletter { max-width:1250px; margin:90px auto 0; display:grid; grid-template-columns:.88fr 1.12fr; background:#fff; box-shadow:0 28px 80px rgba(7,23,46,.13); }
.newsletter-visual { padding:64px 58px; color:#fff; background:linear-gradient(145deg,#07172e,#123b68); position:relative; overflow:hidden; min-height:650px; }
.newsletter-visual h2 { font-family:"Playfair Display"; font-size:clamp(39px,4vw,58px); line-height:1.05; margin:20px 0 25px; max-width:520px; }
.newsletter-visual > p:not(.section-tag) { color:#c5d0de; font-size:17px; line-height:1.7; max-width:510px; }
.newsletter-orbit { position:absolute; width:330px; height:330px; border:1px solid rgba(242,200,102,.38); border-radius:50%; right:-80px; bottom:-90px; display:grid; place-items:center; }
.newsletter-orbit:before,.newsletter-orbit:after { content:""; position:absolute; inset:16%; border:1px solid rgba(242,200,102,.2); border-radius:50%; transform:rotate(56deg); }
.newsletter-orbit:after { transform:rotate(-56deg); }
.newsletter-orbit span { font-size:10px; letter-spacing:3px; color:#f2c866; }
.newsletter-form { padding:55px; gap:20px; align-content:start; }
.newsletter-form-intro { grid-column:1/-1; margin-bottom:10px; }
.newsletter-form-intro > span { color:#9a6d10; font-size:11px; font-weight:800; letter-spacing:2px; }
.newsletter-form-intro h3 { font-family:"Playfair Display"; font-size:34px; margin:10px 0; }
.newsletter-form-intro p { color:#66717f; line-height:1.6; margin:0; }
.newsletter-form label { font-size:12px; }
.newsletter-form input,.newsletter-form select { padding:13px 0; }
.newsletter-consent { display:flex; align-items:flex-start; gap:12px; font-weight:500; line-height:1.55; letter-spacing:0; color:#55606e; }
.newsletter-consent input { width:20px; height:20px; flex:0 0 20px; margin:1px 0 0; }
.newsletter-consent a { color:#8a620e; text-decoration:underline; font-weight:700; }
.newsletter-form button { min-height:54px; font-size:14px; }
.footer-links { flex-wrap:wrap; }
.footer-social { display:flex; align-items:center; gap:9px; margin-left:auto; }
.footer-social > span { color:#8f9caf; font-size:10px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; margin-right:4px; }
.footer-social a { width:40px; height:40px; border:1px solid rgba(242,200,102,.32); border-radius:50%; display:grid; place-items:center; transition:.2s ease; }
.footer-social a svg { width:18px; height:18px; fill:#f2c866; }
.footer-social a b { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.footer-social a:hover,.footer-social a:focus-visible { background:#d8a83c; border-color:#d8a83c; transform:translateY(-3px); outline:none; }
.footer-social a:hover svg,.footer-social a:focus-visible svg { fill:#07172e; }
.footer-links { margin-left:0; }
.back-to-top { display:flex; align-items:center; gap:10px; color:#f2c866; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:1px; }
.back-to-top b { width:42px; height:42px; border:1px solid rgba(242,200,102,.65); border-radius:50%; display:grid; place-items:center; font-size:20px; transition:.2s; }
.back-to-top:hover b { background:#d8a83c; color:#07172e; transform:translateY(-3px); }
.cookie-banner { position:fixed; z-index:1000; left:24px; right:24px; bottom:24px; max-width:1100px; margin:auto; padding:24px 26px; display:grid; grid-template-columns:1fr auto; gap:28px; align-items:center; background:#fff; color:#101d31; border-top:4px solid #d8a83c; box-shadow:0 18px 55px rgba(0,0,0,.28); }
.cookie-banner[hidden] { display:none; }
.cookie-banner strong { font-family:"Playfair Display"; font-size:21px; }
.cookie-banner p { margin:7px 0 4px; color:#5f6977; font-size:13px; line-height:1.55; }
.cookie-banner a { color:#8a620e; font-size:12px; font-weight:800; text-decoration:underline; }
.cookie-actions { display:flex; gap:10px; }
.cookie-actions button { border:1px solid #07172e; background:#fff; color:#07172e; padding:13px 16px; font-weight:800; cursor:pointer; white-space:nowrap; }
.cookie-actions .accept { background:#07172e; color:#fff; }
.button.dark {
  display: inline-block;
  background: var(--navy);
  color: #fff;
}
.contact {
  grid-template-columns: 0.65fr 1.35fr;
  align-items: start;
}
.contact form {
  background: rgba(255, 255, 255, 0.26);
  padding: 34px;
}
.contact fieldset {
  border: 0;
  padding: 0;
  margin: 0 0 28px;
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.contact legend {
  font-family: "Playfair Display";
  font-size: 25px;
  font-weight: 700;
  margin-bottom: 18px;
}
.contact .consent {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14px;
  line-height: 1.5;
}
.contact .consent input {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin: 1px 0;
}
.form-status {
  grid-column: 1/-1;
  margin: 0;
  font-weight: 700;
}
.form-status.success {
  color: #0c572e;
}
.form-status.error {
  color: #7a1616;
}
@media (max-width: 1120px) {
  .nav {
    gap: 18px;
  }
  .nav nav {
    gap: 16px;
  }
  .nav-cta {
    display: none;
  }
  .brand img {
    width: 180px;
  }
}
@media (max-width: 900px) {
  .language-control {
    margin-left: auto;
  }
  .blog-grid {
    grid-template-columns: 1fr;
  }
  .blog-grid article {
    min-height: 280px;
  }
  .contact form {
    padding: 26px;
  }
  .featured-story,.newsletter { grid-template-columns:1fr; }
  .newsletter-visual { min-height:480px; }
  footer { flex-wrap:wrap; }
  .footer-social { order:3; margin-left:0; }
  .footer-links { order:4; width:100%; }
  .back-to-top { margin-left:auto; }
  .cookie-banner { grid-template-columns:1fr; gap:18px; }
}
@media (max-width: 560px) {
  .language-control select {
    font-size: 13px;
    padding: 9px 28px 9px 10px;
  }
  .blog {
    padding: 75px 22px;
  }
  .blog-heading { display:block; }
  .editorial-mark { display:none; }
  .featured-art { min-height:270px; }
  .featured-copy { padding:38px 26px; }
  .newsletter { margin-top:60px; }
  .newsletter-visual,.newsletter-form { padding:38px 24px; }
  .newsletter-visual { min-height:440px; }
  .newsletter-form { grid-template-columns:1fr; }
  .newsletter-form > * { grid-column:1 !important; }
  .footer-social { flex-wrap:wrap; }
  .footer-social > span { width:100%; }
  .back-to-top { margin-left:0; }
  .cookie-banner { left:12px; right:12px; bottom:12px; padding:20px 18px; }
  .cookie-actions { flex-direction:column; }
  .blog-grid h3 {
    font-size: 26px;
  }
  .contact fieldset {
    grid-template-columns: 1fr;
  }
  .contact fieldset .wide {
    grid-column: 1;
  }
  .contact form {
    padding: 22px 18px;
  }
  .contact legend {
    font-size: 23px;
  }
  .brand img {
    width: 165px;
  }
}

.brand-portfolio {
  padding: 110px 7vw;
  background: #ede9df;
  color: var(--ink);
}
.brand-portfolio .section-tag {
  color: #8b6415;
}
.portfolio-head {
  max-width: 1250px;
  margin: 0 auto 52px;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 70px;
  align-items: end;
}
.portfolio-head h2 {
  font-family: "Playfair Display";
  font-size: clamp(40px, 4.6vw, 64px);
  line-height: 1.08;
  margin: 14px 0 0;
  max-width: 850px;
}
.portfolio-head > p {
  font-size: 18px;
  line-height: 1.75;
  color: #596574;
  margin: 0;
}
.portfolio-grid {
  max-width: 1250px;
  margin: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}
.portfolio-card {
  display: grid;
  grid-template-columns: 44% 56%;
  min-height: 440px;
  background: #fff;
  overflow: hidden;
  border: 1px solid rgba(16, 29, 49, 0.1);
}
.portfolio-visual {
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 38px;
  background: linear-gradient(145deg, #f9f6ec, #ddd7c9);
}
.portfolio-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 280px;
  object-fit: contain;
}
.portfolio-visual.image {
  padding: 0;
  background: #10253c;
}
.portfolio-visual.image img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  object-position: center;
}
.treat .portfolio-visual {
  background:
    radial-gradient(
      circle at 25% 20%,
      rgba(230, 133, 36, 0.16),
      transparent 38%
    ),
    linear-gradient(145deg, #fffdf8, #eee8dc);
}
.treat .portfolio-visual img {
  width: min(78%, 300px);
  max-height: 300px;
  object-fit: contain;
}
.wine .portfolio-visual {
  background:
    radial-gradient(
      circle at 78% 18%,
      rgba(183, 132, 35, 0.14),
      transparent 34%
    ),
    linear-gradient(145deg, #fffdf7, #e8e1d3);
}
.wine .portfolio-visual img {
  width: min(90%, 420px);
  max-height: 260px;
  object-fit: contain;
}
.portfolio-copy {
  padding: 38px 34px;
  display: flex;
  flex-direction: column;
}
.portfolio-type {
  font-size: 12px !important;
  line-height: 1.4 !important;
  letter-spacing: 1.5px;
  font-weight: 800;
  color: #8b6415 !important;
  margin: 0;
}
.portfolio-copy h3 {
  font-family: "Playfair Display";
  font-size: 32px;
  line-height: 1.12;
  margin: 16px 0;
}
.portfolio-copy > p:not(.portfolio-type) {
  font-size: 16px;
  line-height: 1.65;
  color: #5d6875;
  margin: 0;
}
.portfolio-copy ul {
  list-style: none;
  padding: 0;
  margin: 22px 0;
  display: grid;
  gap: 8px;
}
.portfolio-copy li {
  font-size: 14px;
  font-weight: 700;
  color: #26364a;
  padding-left: 16px;
  position: relative;
}
.portfolio-copy li:before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  left: 0;
  top: 0.55em;
  background: var(--gold);
}
.portfolio-copy a {
  margin-top: auto;
  font-size: 15px;
  font-weight: 800;
  color: #805b0e;
  border-bottom: 1px solid rgba(128, 91, 14, 0.35);
  padding-bottom: 5px;
  align-self: flex-start;
}
.treasures .portfolio-visual {
  background:
    radial-gradient(
      circle at 78% 15%,
      rgba(194, 154, 75, 0.2),
      transparent 35%
    ),
    linear-gradient(145deg, #fffdf6, #e9e4d8);
}
.treasures .portfolio-visual img {
  width: min(88%, 330px);
  max-height: 330px;
  object-fit: contain;
}
.portfolio-visual.typographic span {
  font-family: "Playfair Display";
  font-size: 31px;
  line-height: 1;
}
.portfolio-visual.typographic strong {
  font-family: "Playfair Display";
  font-size: 42px;
  line-height: 1.05;
  margin: 5px 0 28px;
}
.portfolio-visual.typographic small {
  font-size: 11px;
  letter-spacing: 2.5px;
  color: #b8d3c2;
}
.coffee {
  grid-column: 1/-1;
  grid-template-columns: 42% 58%;
  min-height: 370px;
}
.coffee .portfolio-visual {
  background:
    radial-gradient(
      circle at 20% 15%,
      rgba(191, 126, 45, 0.18),
      transparent 35%
    ),
    linear-gradient(145deg, #fffaf0, #e8dfcf);
}
.coffee .portfolio-visual img {
  max-height: 210px;
}
.coffee .portfolio-copy {
  padding-right: 70px;
}
.portfolio-cta {
  max-width: 1250px;
  margin: 24px auto 0;
  padding: 38px 42px;
  background: var(--navy);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 35px;
}
.portfolio-cta h3 {
  font-family: "Playfair Display";
  font-size: 30px;
  line-height: 1.2;
  margin: 8px 0 0;
  max-width: 780px;
}
.portfolio-cta .button {
  white-space: nowrap;
}

.wine-program {
  padding: 110px 7vw;
  background: #07172e;
  color: #fff;
}
.wine-program .section-tag {
  color: #f2c866;
}
.wine-program-hero {
  max-width: 1250px;
  margin: auto;
  display: grid;
  grid-template-columns: 1.35fr 0.65fr;
  gap: 70px;
  align-items: end;
}
.wine-program h2 {
  font-family: "Playfair Display";
  font-size: clamp(42px, 5vw, 70px);
  line-height: 1.04;
  margin: 16px 0 24px;
  letter-spacing: -1px;
}
.wine-program h2 em {
  font-style: normal;
  color: #d8a83c;
}
.wine-program-lead {
  font-size: 20px;
  line-height: 1.7;
  color: #c7d1df;
  max-width: 780px;
}
.wine-program-actions {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 34px;
}
.wine-program-actions > span {
  font-size: 13px;
  line-height: 1.5;
  color: #93a4ba;
}
.wine-program-hero aside {
  border-left: 2px solid #d8a83c;
  padding: 28px 0 28px 30px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  background: linear-gradient(90deg, rgba(216, 168, 60, 0.08), transparent);
}
.wine-program-hero aside p {
  font-size: 12px;
  letter-spacing: 2px;
  font-weight: 800;
  color: #f2c866;
  margin: 0;
}
.wine-program-hero aside strong {
  font-family: "Playfair Display";
  font-size: 28px;
  line-height: 1.25;
}
.wine-program-hero aside span {
  font-size: 15px;
  line-height: 1.65;
  color: #aebaca;
}
.wine-program-body {
  max-width: 1250px;
  margin: 78px auto 0;
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 58px;
}
.program-intro h3 {
  font-family: "Playfair Display";
  font-size: 38px;
  line-height: 1.15;
  margin: 14px 0 20px;
}
.program-intro > p:last-child {
  font-size: 16px;
  line-height: 1.75;
  color: #aab7c7;
}
.program-services {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  border-left: 1px solid rgba(255, 255, 255, 0.16);
}
.program-services article {
  padding: 26px;
  border-right: 1px solid rgba(255, 255, 255, 0.16);
  border-bottom: 1px solid rgba(255, 255, 255, 0.16);
  min-height: 220px;
}
.program-services b {
  font-size: 12px;
  color: #d8a83c;
}
.program-services h4 {
  font-size: 20px;
  line-height: 1.3;
  margin: 18px 0 10px;
}
.program-services p {
  font-size: 15px;
  line-height: 1.65;
  color: #aebaca;
  margin: 0;
}
.program-route {
  max-width: 1250px;
  margin: 58px auto 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid rgba(216, 168, 60, 0.55);
}
.program-route div {
  padding: 22px 22px 0 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.program-route span {
  font-size: 11px;
  letter-spacing: 1.5px;
  color: #d8a83c;
  font-weight: 800;
}
.program-route strong {
  font-size: 16px;
  line-height: 1.4;
}
.program-note {
  max-width: 1250px;
  margin: 42px auto 0;
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  font-size: 13px;
  line-height: 1.7;
  color: #8494a9;
}

@media (max-width: 1050px) {
  .portfolio-card {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .portfolio-visual {
    height: 290px;
  }
  .portfolio-grid {
    gap: 18px;
  }
}
@media (max-width: 900px) {
  .wine-program-hero,
  .wine-program-body {
    grid-template-columns: 1fr;
  }
  .wine-program-hero {
    gap: 38px;
  }
  .wine-program-body {
    gap: 28px;
  }
  .program-route {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
}
@media (max-width: 760px) {
  .brand-portfolio,
  .wine-program {
    padding: 78px 22px;
  }
  .portfolio-head {
    grid-template-columns: 1fr;
    gap: 22px;
    margin-bottom: 38px;
  }
  .portfolio-head > p {
    font-size: 17px;
  }
  .portfolio-grid {
    grid-template-columns: 1fr;
  }
  .portfolio-card,
  .coffee {
    grid-template-columns: 42% 58%;
  }
  .portfolio-visual {
    height: auto;
    min-height: 430px;
  }
  .portfolio-copy,
  .coffee .portfolio-copy {
    padding: 32px 28px;
  }
  .portfolio-cta {
    padding: 32px 26px;
    align-items: flex-start;
    flex-direction: column;
  }
  .portfolio-cta h3 {
    font-size: 27px;
  }
  .wine-program-actions {
    align-items: flex-start;
    flex-direction: column;
  }
  .program-services {
    grid-template-columns: 1fr;
  }
  .program-services article {
    min-height: 0;
  }
  .program-route {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 560px) {
  .portfolio-card,
  .coffee {
    grid-template-columns: 1fr;
  }
  .portfolio-visual {
    height: 250px;
    min-height: 250px;
  }
  .coffee .portfolio-visual {
    min-height: 220px;
  }
  .coffee .portfolio-visual img {
    max-height: 150px;
  }
  .portfolio-copy {
    min-height: 390px;
  }
  .portfolio-head h2 {
    font-size: 39px;
  }
  .portfolio-copy h3 {
    font-size: 30px;
  }
  .portfolio-visual.typographic strong {
    font-size: 38px;
  }
  .portfolio-cta .button {
    width: 100%;
    text-align: center;
  }
  .wine-program h2 {
    font-size: 41px;
  }
  .wine-program-lead {
    font-size: 18px;
  }
  .wine-program-hero aside strong {
    font-size: 25px;
  }
  .program-intro h3 {
    font-size: 32px;
  }
  .program-route {
    grid-template-columns: 1fr;
  }
  .program-services article {
    padding: 24px 20px;
  }
}

/* Navegação institucional organizada */
.china-credit { padding: 110px 7vw; background: #eef2f5; color: var(--ink); }
.credit-hero { max-width: 1250px; margin: 0 auto; display: grid; grid-template-columns: 1.25fr .75fr; gap: 70px; align-items: center; }
.credit-body { max-width: 1100px; margin: 0 auto; }
.credit-hero .section-tag, .credit-body .section-tag { color: #9a6d10; }
.credit-hero h2 { font-family: 'Playfair Display'; font-size: clamp(42px, 5vw, 68px); line-height: 1.08; margin: 16px 0 22px; }
.credit-lead { max-width: 760px; color: #536171; font-size: 19px; line-height: 1.75; margin-bottom: 34px; }
.credit-hero aside { background: #07172e; color: #fff; padding: 38px; border-top: 4px solid var(--gold); }
.credit-hero aside span { color: var(--gold2); font-size: 11px; font-weight: 800; letter-spacing: 2px; }
.credit-hero aside strong { display: block; font-family: 'Playfair Display'; font-size: 29px; line-height: 1.25; margin: 20px 0; }
.credit-hero aside p { color: #b8c5d4; font-size: 15px; line-height: 1.7; }
.credit-flow { max-width: 1250px; margin: 65px auto 80px; display: grid; grid-template-columns: repeat(5,1fr); border-top: 1px solid #cbd3da; border-bottom: 1px solid #cbd3da; }
.credit-flow article { padding: 27px 20px 30px; border-right: 1px solid #cbd3da; }
.credit-flow article:last-child { border-right: 0; }
.credit-flow b { color: #9a6d10; font-size: 12px; }
.credit-flow h3 { font-size: 18px; margin: 20px 0 10px; }
.credit-flow p { color: #637181; font-size: 13px; line-height: 1.65; }
.credit-scope { max-width: 960px; margin: 0 auto; text-align: center; }
.credit-scope h3, .credit-form h3 { font-family: 'Playfair Display'; font-size: 36px; line-height: 1.2; margin: 13px 0 25px; }
.credit-scope ul { list-style: none; padding: 0; margin: 34px auto; display: grid; grid-template-columns: 1fr 1fr; gap: 15px 30px; max-width: 850px; text-align: left; }
.credit-scope li { position: relative; padding: 15px 18px 15px 46px; color: #465667; font-size: 15px; background: rgba(255,255,255,.72); }
.credit-scope li:before { content: '✓'; position: absolute; left: 18px; color: #9a6d10; font-weight: 900; }
.credit-notice { max-width: 900px; margin: 35px auto 0; padding: 24px 28px; border-top: 4px solid var(--gold); background: #fff; text-align: left; }
.credit-notice strong { font-size: 14px; }
.credit-notice p { color: #667383; font-size: 12px; line-height: 1.7; margin-bottom: 0; }
.credit-form { max-width: 900px; margin: 58px auto 0; background: #fff; padding: 44px 48px; display: grid; grid-template-columns: 1fr 1fr; gap: 17px 26px; box-shadow: 0 16px 45px rgba(15,35,57,.09); }
.credit-form .form-heading { grid-column: 1/-1; }
.credit-form .form-heading { text-align: center; max-width: 650px; margin: 0 auto 18px; }
.credit-form .form-heading p:last-child { color: #657282; font-size: 14px; line-height: 1.6; }
.credit-form input, .credit-form select, .credit-form textarea { border-bottom-color: #b9c4cd; }
.credit-form .consent { display: flex; align-items: flex-start; gap: 10px; font-size: 12px; line-height: 1.5; }
.credit-form .consent input { width: 18px; height: 18px; flex: 0 0 18px; margin: 0; }
.credit-form button { background: #07172e; color: #fff; border: 0; padding: 16px; font-weight: 800; cursor: pointer; }

.nav { gap: 24px; padding-left: 4vw; padding-right: 4vw; }
.nav .brand { flex: 0 0 auto; }
.nav #main-navigation { display: flex; align-items: center; gap: 5px; margin-left: auto; }
.nav-item { position: relative; }
.nav-trigger, .nav-link { appearance: none; border: 0; background: transparent; color: #dbe4ef; font: 700 13px/1 Manrope, Arial, sans-serif; padding: 15px 11px; cursor: pointer; white-space: nowrap; }
.nav-trigger span { display: inline-block; margin-left: 4px; color: var(--gold2); transition: transform .2s ease; }
.nav-item.open .nav-trigger span, .nav-item:focus-within .nav-trigger span { transform: rotate(180deg); }
.nav-trigger:hover, .nav-trigger:focus-visible, .nav-link:hover, .nav-link:focus-visible { color: #fff; outline: none; }
.submenu { position: absolute; top: calc(100% + 8px); left: 0; width: 310px; padding: 10px; background: #fff; color: var(--ink); border-top: 3px solid var(--gold); box-shadow: 0 18px 45px rgba(0,0,0,.24); opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease; }
.submenu a { display: block; padding: 11px 13px; color: #25364a; font-size: 13px; line-height: 1.35; border-radius: 5px; }
.submenu a:hover, .submenu a:focus-visible { background: #f4f1e9; color: #07172e; outline: none; }
.submenu strong { display: block; color: #07172e; font-size: 14px; }
.submenu small { display: block; margin-top: 3px; color: #74808c; font-size: 11px; font-weight: 500; }
.nav-item:hover > .submenu, .nav-item:focus-within > .submenu, .nav-item.open > .submenu { opacity: 1; visibility: visible; transform: translateY(0); }
.menu-toggle, .nav-contact-mobile { display: none; }
[id] { scroll-margin-top: 90px; }

@media (max-width: 1080px) {
  .credit-hero { grid-template-columns: 1fr; gap: 35px; }
  .credit-flow { grid-template-columns: repeat(2,1fr); }
  .credit-flow article { border-bottom: 1px solid #cbd3da; }
  .credit-form { padding: 38px 32px; }
  .nav { height: 76px; gap: 14px; background: rgba(7,23,46,.97); }
  .nav .brand img { width: min(185px, 42vw); }
  .nav .language-control { margin-left: auto; }
  .nav .nav-cta { display: none; }
  .menu-toggle { display: flex; width: 42px; height: 42px; padding: 10px; border: 1px solid rgba(242,200,102,.45); background: transparent; flex-direction: column; justify-content: center; gap: 5px; order: 4; cursor: pointer; }
  .menu-toggle span { display: block; width: 100%; height: 2px; background: #fff; transition: transform .2s ease, opacity .2s ease; }
  .nav.menu-open .menu-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .nav.menu-open .menu-toggle span:nth-child(2) { opacity: 0; }
  .nav.menu-open .menu-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .nav #main-navigation { display: none; position: absolute; top: 76px; left: 0; width: 100%; max-height: calc(100vh - 76px); overflow: auto; margin: 0; padding: 16px 20px 28px; background: #07172e; border-top: 1px solid rgba(255,255,255,.12); flex-direction: column; align-items: stretch; gap: 2px; }
  .nav.menu-open #main-navigation { display: flex; }
  .nav-item { border-bottom: 1px solid rgba(255,255,255,.1); }
  .nav-trigger, .nav-link { width: 100%; display: flex; align-items: center; justify-content: space-between; padding: 17px 4px; text-align: left; font-size: 15px; }
  .submenu { position: static; width: 100%; max-height: 0; overflow: hidden; padding: 0 8px; background: #0d2342; border: 0; box-shadow: none; opacity: 1; visibility: visible; transform: none; transition: max-height .3s ease, padding .3s ease; }
  .nav-item:hover > .submenu, .nav-item:focus-within > .submenu { max-height: 0; padding-top: 0; padding-bottom: 0; }
  .nav-item.open > .submenu { max-height: 520px; padding-top: 8px; padding-bottom: 8px; }
  .submenu a { color: #d9e4ee; padding: 12px 13px; }
  .submenu strong { color: #fff; }
  .submenu small { color: #9fb0c1; }
  .submenu a:hover, .submenu a:focus-visible { background: #173756; color: #fff; }
  .nav-contact-mobile { display: block; margin-top: 16px; padding: 15px 18px !important; background: var(--gold); color: #07172e !important; text-align: center; font-weight: 800; }
}

@media (max-width: 560px) {
  .china-credit { padding: 75px 22px; }
  .credit-hero h2 { font-size: 40px; }
  .credit-lead { font-size: 17px; }
  .credit-hero aside { padding: 28px 24px; }
  .credit-flow { grid-template-columns: 1fr; margin: 45px auto 60px; }
  .credit-flow article { border-right: 0; }
  .credit-scope ul { grid-template-columns: 1fr; }
  .credit-form { grid-template-columns: 1fr; padding: 25px 19px; }
  .credit-form .wide, .credit-form .form-heading { grid-column: 1; }
}
