/* Trade Science V8 layer. Loaded after style.css; replaces v6.css. */

/* ---------- Review markers: fill in, then delete each <mark class="todo"> before launch ---------- */
mark.todo{background:#ffe066;color:#071e38;padding:0 .3em;border-radius:2px;font-weight:600}
.review-banner{font:600 12px/1.4 'DM Sans',Arial,sans-serif;text-align:center;padding:7px 12px;background:#fff4c1;color:#513b03;letter-spacing:.02em;position:relative;z-index:9999}

/* ---------- Skip link ---------- */
.skip-link{position:absolute;left:12px;top:-80px;z-index:300;background:#fff;color:#0a203f;padding:10px 16px;font:700 13px/1.2 'DM Sans',Arial,sans-serif;border-radius:2px;box-shadow:0 6px 20px rgba(3,20,40,.25)}
.skip-link:focus{top:12px}
main:focus{outline:none}

/* ---------- Header ---------- */
.desktop-nav a,.mobile-nav a{text-transform:uppercase}
.desktop-nav a[aria-current="page"]{color:#087cfc}
.page-home .site-header:not(.is-scrolled) .desktop-nav a[aria-current="page"]{color:#9ed9ff}
@media(max-width:1120px){.desktop-nav a{font-size:10.5px;letter-spacing:.08em}}
.desktop-nav a.nav-cta,.mobile-nav a.nav-cta{border:1px solid currentColor;padding:.55em 1.1em;border-radius:2px;white-space:nowrap}
.desktop-nav a.nav-cta:hover,.desktop-nav a.nav-cta:focus-visible,.mobile-nav a.nav-cta:hover,.mobile-nav a.nav-cta:focus-visible{background:var(--blue,#0679f9);border-color:var(--blue,#0679f9);color:#fff;text-shadow:none}
.mobile-nav a.nav-cta{margin-top:12px;text-align:center;border-bottom:1px solid currentColor}

/* Logo: reversed artwork on the transparent home header, standard artwork elsewhere (no white plate) */
.brand img{width:200px;height:auto;max-height:none}
.brand .logo-reverse{display:none}
.page-home .brand{background:none;padding:0}
.page-home .site-header:not(.is-scrolled) .brand .logo-standard{display:none}
.page-home .site-header:not(.is-scrolled) .brand .logo-reverse{display:block}
.page-home .brand img{width:210px;max-height:none}
@media(max-width:860px){.brand img,.page-home .brand img{width:168px}}

/* ---------- Home hero ---------- */
.hero-pillars strong{font-size:11px}
.hero-scene-label{font-size:10.5px;color:rgba(235,246,255,.85)}
.photo-editorial-note{font-size:11px;color:rgba(247,250,255,.78);bottom:12px;margin:0}
.hero-controls .hero-pause{display:grid;place-items:center;padding:0}
.hero-controls .hero-pause svg{width:14px;height:14px}
.hero-pause .icon-play{display:none}
.hero-pause[aria-pressed="true"] .icon-play{display:block}
.hero-pause[aria-pressed="true"] .icon-pause{display:none}
.hero-pause[hidden]{display:none}
@media(max-width:600px){.hero-pillars strong{font-size:10px}.hero-pillars div>span:not(.pillar-icon){font-size:11.5px}}

/* ---------- Sections ---------- */
.section-side{gap:13px}
.section-category{color:#53677d;font-size:11px}
.section-dark .section-category{color:#b4d3ea}
.section-accent .section-category{color:#42586f}
.link-row{display:flex;flex-wrap:wrap;gap:12px 28px}
.link-row .text-link{margin-top:12px}
.business-summary article h3.kicker{margin:0 0 18px}
.business-summary article p:not(.kicker){margin:0 0 14px}
.prose .note-line{font-size:14px;line-height:1.7;color:#4c6176;border-left:2px solid #b9d3e8;padding-left:14px}
.inner-meta{font-size:11px}
.prose .eyebrow-list{color:#0566c0}
.section-dark .prose .eyebrow-list{color:#7acbff}
.text-link{color:#0566c0}
.section-dark .text-link{color:#7acbff}

/* Process steps (ordered list, readable by assistive technology) */
.steps{list-style:none;counter-reset:step;margin:30px 0 26px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));row-gap:24px;max-width:910px}
.steps li{counter-increment:step;position:relative;border-top:1px solid #b9d3e8;padding:20px 14px 0 0;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;line-height:1.45;color:#0b426f}
.steps li::before{content:counter(step,decimal-leading-zero);display:block;font-size:11px;letter-spacing:.14em;color:#0569c7;margin-bottom:8px}
.steps li::after{content:'';position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:#0679f9}
.section-dark .steps li{color:#f1f6ff;border-color:rgba(255,255,255,.3)}
.section-dark .steps li::before{color:#8fd0ff}
.section-dark .steps li::after{background:#7acbff}
@media(max-width:600px){
  .steps{grid-template-columns:1fr;row-gap:0;margin:24px 0}
  .steps li{border-top:0;border-left:1px solid #b9d3e8;padding:0 0 18px 22px}
  .steps li:last-child{padding-bottom:0}
  .steps li::before{display:inline;margin:0 12px 0 0}
  .steps li::after{top:3px;left:-5px}
  .section-dark .steps li{border-color:rgba(255,255,255,.3)}
}

/* Corporate film */
.film-frame{margin:24px 0;aspect-ratio:848/566;background:#071e38;width:100%;max-width:848px}
.film-frame video{width:100%;height:100%;display:block;object-fit:contain}

/* Letters */
.prose .signature{margin-top:28px;line-height:1.5}

/* Offices and label/value rows */
.office-row span a,.prose .two-line span a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.prose .two-line span{color:#5a7187}
.section-dark .prose .two-line span{color:#bcd5e8}

/* ---------- Inquiry form ---------- */
.form-fieldset{border:1px solid rgba(7,30,56,.18);border-radius:2px;padding:18px 18px 6px;margin:4px 0 0;min-width:0}
.form-fieldset legend{padding:0 8px;font-weight:600}
.form-fieldset .legend-note{font-weight:400;opacity:.75}
.form-fieldset>.form-grid{margin:0}
.form-fieldset[hidden]{display:none}
.form-disclaimer a{color:inherit;text-decoration:underline}
.form-field select:invalid:not(:focus){border-color:#bfcfe0}
.form-field input::placeholder,.form-field textarea::placeholder{color:#5f758b}
@media(max-width:640px){.film-frame{margin:16px 0}.form-fieldset{padding:14px 12px 4px}}

/* Status pages (thank you, 404) */
.status-page{min-height:56vh;display:grid;align-items:center}
.status-page h1{font-family:'Manrope',Arial,sans-serif;font-size:clamp(38px,5vw,66px);letter-spacing:-.03em;line-height:1.1;margin:0 0 18px}

/* ---------- Footer ---------- */
.footer-brand{display:inline-block}
.footer-brand img{display:block;width:216px;max-width:100%;height:auto}
.foot-top .foot-kicker{color:#8db6d4}
.foot-legal{padding-top:8px;padding-bottom:8px}
.foot-legal p{font-size:12px;line-height:1.6;color:#b3c8db;margin:0 0 6px;max-width:980px}
.foot-legal a{color:inherit;text-decoration:underline}
.foot-bottom{color:#9db6cc}
