@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/barlow-semi-condensed-600.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/barlow-semi-condensed-700.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/inter-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/inter-500.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/inter-600.ttf) format('truetype');
}
/* Finishing layer: typography and detail only; existing grids and media sizes stay in their original stylesheets. */
:root{--font-text:'Inter',Arial,sans-serif;--font-heading:'Barlow Semi Condensed','Arial Narrow',Arial,sans-serif;--accent:#1976b9}
body{font-family:var(--font-text);font-weight:400}
button,input,textarea,select{font-family:var(--font-text)}
h1,h2,h3,.header-dock .brand{font-family:var(--font-heading);font-style:normal;letter-spacing:-.01em;font-weight:600}
.home-hero h1{font-family:var(--font-heading);letter-spacing:-.015em;font-weight:600}
.header-dock .brand{font-weight:700;letter-spacing:.035em}
.header-dock .top nav{font-weight:500;letter-spacing:.035em}
.eyebrow,.section-kicker{font-family:var(--font-text);font-weight:600;letter-spacing:.12em}
.number,.gallery-count,.stop-year,.step-label small{font-variant-numeric:tabular-nums;font-family:var(--font-text);letter-spacing:.03em}
.action-button,.case-tabs button,.gallery-controls button,.header-dock .top nav>a[href="contact.html"]{border-radius:2px;box-shadow:none;font-family:var(--font-text);font-weight:600}
.action-secondary{border-color:#9eb7ca;background:transparent}
.action-button,.case-tabs button,.gallery-controls button,.project-link,.header-dock a{transition:color 160ms ease,background-color 160ms ease,border-color 160ms ease}
.action-button:hover{background:#125e95;border-color:#125e95;color:#fff}
.action-secondary:hover{background:#eef6fc;border-color:#1976b9;color:#125e95}
.project-link,.project h3 a{text-underline-offset:5px;text-decoration-thickness:1px}
.project h3 a:hover{color:#1976b9}
.link-forward:after{transition:transform 160ms ease}
.link-forward:hover:after{transform:translate(2px,-2px)}
.section-head{position:relative}
.section-head:after{content:'';position:absolute;left:0;bottom:-1px;width:36px;height:2px;background:#1976b9}
.project-brief{background:transparent;border-left-width:2px}
.case-copy .project-brief h3{font-weight:600}
.project-detail{border-top-color:#d5dee5}
.project-detail>summary{font-weight:600}
.interest-tags li{background:transparent;border-color:#d5dee5;border-radius:2px}
@media(prefers-reduced-motion:reduce){.action-button,.case-tabs button,.gallery-controls button,.project-link,.header-dock a,.link-forward:after{transition:none}.link-forward:hover:after{transform:none}}

/* Education: show all four stages together, without duplicate city controls. */
@media(min-width:900px){
 main.about-page{max-width:1480px}
 body:has(main.about-page) .header-dock .shell{max-width:1480px}
 .about-page .education-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px}
 .about-page .education-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;align-items:stretch}
 .education-list>.eyebrow,.education-list>.hint{grid-column:1/-1}
 .about-page .education-list>.hint{margin:0 0 2px}
 .about-page .education-stop{margin:0;padding:15px 16px;min-width:0;height:100%}
 .about-page .stop-meta{letter-spacing:0;line-height:1.5}
 .about-page .education-stop strong{margin:7px 0;font-family:var(--font-heading)}
 .about-page .stop-sub{line-height:1.5}
 .about-page .globe-panel{align-self:start;max-width:560px}
}

.skill-overview .skill-tools{margin-top:12px;font-size:14px;line-height:1.5;color:#1976B9;font-weight:500}
.skills-training{border-top:1px solid #d6e2eb;padding-top:20px;margin-top:24px;max-width:1000px}
.skills-training strong{font-size:16px;color:#1976B9}
.skills-training p{font-size:16px;line-height:1.7;margin:8px 0 0}

.skill-overview .skill-tools{margin-top:12px;font-size:14px;line-height:1.5;color:#1976B9;font-weight:500}
.skills-training{border-top:1px solid #d6e2eb;padding-top:20px;margin-top:24px;max-width:1000px}
.skills-training strong{font-size:16px;color:#1976B9}
.skills-training p{font-size:16px;line-height:1.7;margin:8px 0 0}

.about-page .section-nav .top-cv-download{margin-left:auto;background:#1976B9;color:#fff;border:1px solid #1976B9;border-radius:2px;padding:10px 16px;min-height:44px;align-self:center;white-space:nowrap}.about-page .section-nav .top-cv-download:hover{background:#14649e;color:#fff}@media(max-width:600px){.about-page .section-nav .top-cv-download{margin-left:0;padding:9px 12px}}

@media(min-width:600px) and (max-width:899px){.about-page .education-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.education-list>.eyebrow,.education-list>.hint{grid-column:1/-1}.about-page .education-stop{margin:0;height:100%;min-width:0}}

/* Project overview: three columns on desktop. */
@media(min-width:1100px){.projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 26px}.projects .project .visual{height:240px}.projects .project h3{font-size:26px;line-height:1.2}}
@media(min-width:701px) and (max-width:1099px){.projects{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.projects{grid-template-columns:minmax(0,1fr)}}
