/* O mnie: personal introduction, full width photography and the Ricor palette. */
.ws-about { color:#111; background:#fef9ed; }
.ws-about-section { padding-inline:24px; }
.ws-about-shell { width:100%; max-width:var(--_sizes---container--max-width); height:auto; margin-inline:auto; border-inline:1px dashed #d8d5cb; }
.ws-about-hero, .ws-about-contact { color:#fef9ed; background:#0f0f10; }
.ws-about-hero .ws-about-shell, .ws-about-contact .ws-about-shell { border-color:#41413b; }
.ws-about h1, .ws-about h2, .ws-about h3 { color:inherit; font-family:Archivo,Arial,sans-serif; font-weight:500; margin:0; }
.ws-about-eyebrow { margin:0; font:400 12px/1.5 'Geist Mono',monospace; text-transform:uppercase; letter-spacing:.025em; color:#67675f; }
.ws-about-eyebrow-light { color:#b9b8ad; }
.ws-about-hero-heading { display:grid; grid-template-columns:minmax(0,.42fr) minmax(0,1fr); align-items:start; gap:48px; padding:176px 40px 64px; }
.ws-about-hero-heading > .ws-about-eyebrow { color:#e5f34b; margin-top:10px; }
.ws-about h1 { font-size:clamp(56px,6.5vw,112px); line-height:1.02; letter-spacing:-.05em; max-width:15ch; }
.ws-about-hero-bottom { display:grid; grid-template-columns:minmax(0,.42fr) minmax(0,1fr); align-items:start; gap:48px; padding:0 40px 64px; }
.ws-about-intro { min-width:0; grid-column:2; }
.ws-about-lead { margin:0; max-width:40rem; font:400 20px/1.6 Archivo,Arial,sans-serif; color:#e2dfd6; }
.ws-about-intro-note { margin:20px 0 0; max-width:38rem; font:400 16px/1.65 Archivo,Arial,sans-serif; color:#b9b8ad; }
.ws-about-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 28px; margin-top:32px; }
.ws-about-button { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; min-height:60px; padding:18px 24px; border:1px solid #e5f34b; background:#e5f34b; color:#111; font:500 15px/1.45 Archivo,Arial,sans-serif; text-decoration:none; }
.ws-about-button:hover { background:#fef9ed; border-color:#fef9ed; }
.ws-about-button > span { font-size:22px; line-height:1; }
.ws-about-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:8px 0; border-bottom:1px solid currentColor; color:inherit; font:400 15px/1.5 Archivo,Arial,sans-serif; text-decoration:none; }
.ws-about-text-link:hover { color:#e5f34b; }
.ws-about-banner { display:block; width:100%; margin:0; padding:0; background:#deded3; }
.ws-about-banner-image { display:block; width:100%; height:92svh; object-fit:cover; object-position:50% 22%; }
.ws-about-content-grid { display:grid; grid-template-columns:minmax(0,.42fr) minmax(0,1fr); gap:48px; padding:88px 40px; }
.ws-about h2 { max-width:23ch; font-size:clamp(36px,3.5vw,58px); line-height:1.08; letter-spacing:-.04em; }
.ws-about-bio { margin-top:32px; max-width:46rem; }
.ws-about-bio p { margin:0; font:400 18px/1.7 Archivo,Arial,sans-serif; color:#55564d; }
.ws-about-bio p + p { margin-top:24px; }
.ws-about-bio a { color:inherit; text-decoration:underline; text-underline-offset:4px; }
.ws-about-bio a:hover { color:#707b00; }
.ws-about-contact .ws-about-content-grid { border-bottom:1px dashed #41413b; }
.ws-about-contact-content > p { max-width:36rem; margin:26px 0 0; color:#b9b8ad; font:400 17px/1.65 Archivo,Arial,sans-serif; }
.ws-about-contact-links { display:flex; flex-direction:column; align-items:flex-start; gap:16px; margin:28px 0; }
.ws-about-contact-links a { display:inline-flex; gap:30px; justify-content:space-between; align-items:center; max-width:100%; color:#fef9ed; font:400 clamp(20px,2.4vw,31px)/1.3 Archivo,Arial,sans-serif; text-decoration:none; letter-spacing:-.025em; border-bottom:1px solid #66665b; padding-bottom:7px; }
.ws-about-contact-links a:hover { color:#e5f34b; }
.ws-about-contact-links a span { font-size:20px; }
@media(max-width:1100px) {
 .ws-about-hero-heading { padding:144px 28px 48px; gap:32px; grid-template-columns:minmax(0,.34fr) minmax(0,1fr); }
 .ws-about-hero-bottom { padding:0 28px 56px; gap:32px; grid-template-columns:minmax(0,.34fr) minmax(0,1fr); }
 .ws-about-content-grid { padding:72px 28px; gap:32px; grid-template-columns:minmax(0,.34fr) minmax(0,1fr); }
 .ws-about-lead { font-size:18px; }
 .ws-about-actions { gap:18px; }
 .ws-about-banner-image { height:70svh; }
}
@media(max-width:767px) {
 .ws-about-section { padding-inline:20px; }
 .ws-about-hero-heading { grid-template-columns:1fr; padding:120px 24px 32px; gap:28px; }
 .ws-about-hero-heading > .ws-about-eyebrow { margin-top:0; }
 .ws-about h1 { max-width:15ch; font-size:clamp(48px,8.8vw,64px); }
 .ws-about-hero-bottom { grid-template-columns:1fr; padding:0 24px 44px; gap:24px; }
 .ws-about-intro { grid-column:1; }
 .ws-about-lead { font-size:17px; }
 .ws-about-intro-note { font-size:15px; }
 .ws-about-banner-image { height:auto; aspect-ratio:4032/2687; object-fit:contain; }
 .ws-about-content-grid { grid-template-columns:1fr; padding:56px 24px; gap:28px; }
 .ws-about h2 { max-width:24ch; font-size:38px; }
 .ws-about-bio { margin-top:24px; }
 .ws-about-bio p { font-size:17px; }
 .ws-about-contact-content > p { font-size:16px; }
 .ws-about-contact-links a { font-size:26px; }
}
@media(max-width:479px) {
 .ws-about-section { padding-inline:16px; }
 .ws-about-hero-heading { padding:112px 16px 28px; gap:24px; }
 .ws-about-hero-heading > .ws-about-eyebrow { font-size:11px; }
 .ws-about h1 { font-size:48px; }
 .ws-about-hero-bottom { padding:0 16px 36px; gap:22px; }
 .ws-about-actions { flex-direction:column; align-items:flex-start; }
 .ws-about-button { width:100%; padding-inline:20px; }
 .ws-about-content-grid { padding:44px 16px; gap:24px; }
 .ws-about h2 { font-size:34px; }
 .ws-about-bio p { font-size:16px; }
 .ws-about-contact-links a { font-size:22px; gap:18px; }
}
