/* ===== TJ Modern kit (design-wide): black / white / grey; blue and red only as thin lines, underlines, small eyebrows and hover states; sharp edges ===== */
:root{--tjm-radius:0;--tjm-shadow:0 8px 24px rgba(0,0,0,.07);--tjm-shadow-lg:0 18px 44px rgba(0,0,0,.14)}
body{font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,.display{font-family:var(--font-display);letter-spacing:-.02em;text-transform:none}

/* sharp edges on every platform part inside page sections */
.al-sec *,.al-sec *::before,.al-sec *::after,.al-strip a,.al-strip button{border-radius:0 !important}

/* footer: no rule above the links bar or the board disclaimer printed under the footer */
.foot-info,.foot-info *{border-top:0 !important;border-bottom:0 !important;box-shadow:none !important}
.foot-info hr,.tjm-foot ~ hr,.tjm-foot ~ * hr{display:none !important}
.tjm-foot ~ *:not(.homeEval-fs),.tjm-foot ~ *:not(.homeEval-fs) > *,.tjm-foot ~ *:not(.homeEval-fs)::before,.tjm-foot ~ *:not(.homeEval-fs) > *::before{border-top:0 !important;box-shadow:none !important}
[class*="legal"],[class*="disclaimer"],[class*="copyright"],[class*="foot"]:not([class*="tjm-"]),[id*="legal"],[id*="Legal"],[id*="foot"],[id*="Foot"]{border-top:0 !important}
[class*="legal"] > *,[class*="disclaimer"] > *,[class*="copyright"] > *,[class*="foot"]:not([class*="tjm-"]) > *:not([class*="tjm-"]){border-top:0 !important}

.tjm-wrap{max-width:1200px;margin:0 auto;padding:0 20px;box-sizing:border-box}
.tjm-eyebrow{display:inline-block;font-family:var(--font-body);font-size:12px;font-weight:700;line-height:1.3;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0 0 12px}
.tjm-h2{font-family:var(--font-display);font-weight:800 !important;font-size:clamp(28px,3.2vw,40px) !important;line-height:1.12 !important;letter-spacing:-.02em;color:var(--ink);margin:0 0 12px !important;text-transform:none}
.tjm-lead{font-size:18px;line-height:1.65;color:var(--Muted);margin:0 0 20px}
.tjm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 26px;border-radius:0;border:1px solid transparent;font-family:var(--font-body);font-size:15px;font-weight:600;line-height:1.2;text-decoration:none !important;text-transform:none;letter-spacing:0;cursor:pointer;transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease;box-sizing:border-box}
.tjm-btn:focus-visible{outline:1px solid var(--ink);outline-offset:3px}
.tjm-btn--primary,.tjm-btn--primary:visited,.tjm-btn--dark,.tjm-btn--dark:visited,.tjm-btn--accent,.tjm-btn--accent:visited,.tjm-btn--red,.tjm-btn--red:visited{background:var(--ink);border-color:var(--ink);color:var(--card) !important}
.tjm-btn--primary:hover,.tjm-btn--primary:focus,.tjm-btn--dark:hover,.tjm-btn--dark:focus,.tjm-btn--accent:hover,.tjm-btn--accent:focus,.tjm-btn--red:hover,.tjm-btn--red:focus{background:var(--InkDeep);border-color:var(--InkDeep);color:var(--card) !important;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.tjm-btn--secondary,.tjm-btn--secondary:visited{background:transparent;border-color:var(--ink);color:var(--ink) !important}
.tjm-btn--secondary:hover,.tjm-btn--secondary:focus{background:var(--ink);color:var(--card) !important}
.tjm-arrow,.tjm-arrow:visited{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--ink);text-decoration:none !important;border-bottom:1px solid var(--ink);padding-bottom:3px;transition:gap .3s ease,color .3s ease,border-color .3s ease}
.tjm-arrow::after{content:"→";font-weight:600}
.tjm-arrow:hover,.tjm-arrow:focus{gap:12px;color:var(--accent);border-bottom-color:var(--accent)}
.tjm-card{background:var(--card);border-radius:0;box-shadow:var(--tjm-shadow);overflow:hidden}
.tjm-red{color:inherit;text-decoration:underline;text-decoration-color:var(--Red);text-decoration-thickness:1px;text-underline-offset:4px}

/* about (homepage): headshot with a thin offset frame */
.tjm-about{max-width:1200px;margin:0 auto;padding:0 20px;box-sizing:border-box;color:var(--ink)}
.tjm-about-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,6vw,80px);align-items:center}
.tjm-about-sub{margin:0 0 18px !important;font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1.35;color:var(--Muted)}
.tjm-about-listhead{margin:4px 0 12px !important;font-weight:700;font-size:16px;color:var(--ink)}
.tjm-check{list-style:none !important;margin:0 0 28px !important;padding:0 !important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.tjm-check li{position:relative;margin:0 !important;padding-left:22px;font-size:15.5px;line-height:1.45;color:var(--ink)}
.tjm-check li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:0;background:var(--ink)}
.tjm-btnrow{display:flex;flex-wrap:wrap;gap:12px}
.tjm-about-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:22px}
.tjm-about-media{position:relative;padding:26px 26px 0 0}
.tjm-about-media::before{content:"";position:absolute;top:0;right:0;bottom:26px;left:26px;border:1px solid var(--ink);border-radius:0;background:transparent;pointer-events:none;z-index:0;transition:transform .4s ease}
.tjm-about-frame{position:relative;z-index:1;display:block;min-width:0;border-radius:0;overflow:hidden;background:var(--Surface);box-shadow:none}
.tjm-about-frame::before{content:"";display:block;padding-top:125%}
.tjm-about-frame img{position:absolute !important;top:0;left:0;width:100% !important;height:100% !important;max-width:none !important;margin:0 !important;object-fit:cover;object-position:center top;display:block;border-radius:0 !important}
@media (hover:hover) and (pointer:fine){.tjm-about-media:hover::before{transform:translate(-12px,12px)}}
@media (max-width:860px){.tjm-about-grid{grid-template-columns:minmax(0,1fr)}.tjm-about-media{order:-1;max-width:420px;width:100%;margin:0 auto}}
@media (max-width:560px){.tjm-about{padding:0 16px}.tjm-check{grid-template-columns:1fr}.tjm-about-media{padding:18px 18px 0 0}.tjm-about-media::before{bottom:18px;left:18px}}
@media (prefers-reduced-motion:reduce){.tjm-about-media::before{transition:none}}

/* stats band (black) */
.tjm-stats{max-width:1200px;margin:0 auto;padding:0 20px;box-sizing:border-box;color:var(--card)}
.tjm-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.tjm-stat-item,.tjm-stat-item:visited{display:flex;flex-direction:column;gap:8px;min-width:0;padding:8px 28px;color:var(--card);text-decoration:none !important;border-left:1px solid rgba(255,255,255,.14)}
.tjm-stat-item:first-child{border-left:0;padding-left:0}
.tjm-stat-item::before{content:"";display:block;width:32px;height:1px;margin:0 0 12px;background:var(--accent);transition:width .4s ease}
.tjm-stat-item--red::before{background:var(--Red)}
.tjm-stat-item:hover::before,.tjm-stat-item:focus::before{width:56px}
.tjm-stat-fig{font-family:var(--font-display);font-size:clamp(30px,3.6vw,46px);font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--card);overflow-wrap:anywhere}
.tjm-stat-fig--word{font-size:clamp(22px,2.3vw,32px);line-height:1.15;padding-top:.15em}
.tjm-stat-fig--red{color:var(--card)}
.tjm-stat-txt{font-size:15px;line-height:1.45;color:rgba(255,255,255,.78)}
.tjm-stat-item:hover .tjm-stat-txt,.tjm-stat-item:focus .tjm-stat-txt{color:var(--card);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.tjm-stats-note{margin:26px 0 0 !important;font-size:12.5px;color:rgba(255,255,255,.6)}
@media (max-width:900px){.tjm-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 0}.tjm-stat-item:nth-child(3){border-left:0;padding-left:0}}
@media (max-width:480px){.tjm-stats{padding:0 16px}.tjm-stat-item{padding:6px 14px}.tjm-stat-fig--word{font-size:20px}}

/* two image cards (selling / buying) */
.tjm-duo{max-width:1200px;margin:0 auto;padding:0 20px;box-sizing:border-box;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;color:var(--ink)}
.tjm-duo-card{min-width:0;display:flex;flex-direction:column;background:var(--card);border-radius:0;overflow:hidden;box-shadow:none;border:1px solid var(--Line)}
.tjm-duo-media{position:relative;display:block;min-width:0;overflow:hidden;background:var(--Surface)}
.tjm-duo-media::before{content:"";display:block;padding-top:62.5%}
.tjm-duo-media img{position:absolute !important;top:0;left:0;width:100% !important;height:100% !important;max-width:none !important;object-fit:cover;display:block;margin:0 !important;border-radius:0 !important;transition:transform 1.4s cubic-bezier(.2,.6,.2,1)}
@media (hover:hover) and (pointer:fine){.tjm-duo-card:hover .tjm-duo-media img{transform:scale(1.04)}}
.tjm-duo-body{display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex:1 1 auto;padding:28px 30px 30px}
.tjm-duo-title{margin:0 !important;font-family:var(--font-display);font-size:clamp(22px,2.4vw,28px) !important;font-weight:800 !important;line-height:1.2 !important;letter-spacing:-.02em;text-transform:none;color:var(--ink)}
.tjm-duo-copy{margin:0 0 6px !important;font-size:16px;line-height:1.65;color:var(--Muted)}
.tjm-duo-body .tjm-btn{margin-top:auto}
@media (max-width:760px){.tjm-duo{grid-template-columns:minmax(0,1fr);padding:0 16px}.tjm-duo-body{padding:22px 20px 24px}}

/* team grid */
.tjm-team{max-width:1200px;margin:0 auto;padding:0 20px;box-sizing:border-box;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.tjm-member,.tjm-member:visited{min-width:0;display:flex;flex-direction:column;background:var(--card);border-radius:0;overflow:hidden;box-shadow:var(--tjm-shadow);color:var(--ink);text-decoration:none !important;transition:transform .25s ease,box-shadow .25s ease}
@media (hover:hover) and (pointer:fine){.tjm-member:hover,.tjm-member:focus-visible{transform:translateY(-4px);box-shadow:var(--tjm-shadow-lg);color:var(--ink)}}
.tjm-member-photo{position:relative;display:block;min-width:0;overflow:hidden;background:var(--Surface)}
.tjm-member-photo::before{content:"";display:block;padding-top:100%}
.tjm-member-photo img{position:absolute !important;top:0;left:0;width:100% !important;height:100% !important;max-width:none !important;object-fit:cover;object-position:center top;display:block;margin:0 !important;border-radius:0 !important}
.tjm-member-info{padding:16px 18px 18px;border-top:1px solid var(--Line)}
.tjm-member-info h3{margin:0 !important;font-family:var(--font-display);font-size:18px !important;font-weight:700 !important;line-height:1.25;color:var(--ink)}
.tjm-member-role{margin:4px 0 0 !important;font-size:14px;line-height:1.4;color:var(--Muted)}
.tjm-member-mail{display:inline-block;margin-top:10px;font-size:13px;font-weight:600;color:var(--Muted);word-break:break-all;transition:color .3s ease}
.tjm-member:hover .tjm-member-mail,.tjm-member:focus-visible .tjm-member-mail{color:var(--accent)}
@media (max-width:1000px){.tjm-team{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.tjm-team{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0 16px}.tjm-member-info{padding:12px 12px 14px}.tjm-member-info h3{font-size:16px !important}.tjm-member-mail{font-size:12px}}

/* refined type: Plus Jakarta Sans headings at 700 with -0.02em tracking */
.al-sec h1,.al-sec h2,.tjm-sx-num,.tjm-stat-fig,.tjm-sx-legnum{font-weight:700 !important}
.al-sec h1,.al-sec h2{letter-spacing:-.02em !important}

/* homepage sections fade up once on scroll (classes added by the design's body script; content stays visible without JS) */
html.tjm-anim .tjm-fade{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
html.tjm-anim .tjm-fade.tjm-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html.tjm-anim .tjm-fade{opacity:1;transform:none;transition:none}}