/*
Theme Name: I Am Steve Spritzer
Theme URI: https://iamstevespritzer.com/
Author: Steve Spritzer
Description: Understated executive portfolio site for Steve Spritzer. Custom WordPress classic theme with a single-page front page.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: i-am-steve-spritzer
*/

:root {
      --paper:#f8f7f3; --white:#fffefa; --ink:#23292b; --grey:#59636a; --line:#deded8;
      --blue:#3e5b6b; --pale:#eeefeb; --accent:#b88a70;
      --serif:Georgia,'Times New Roman',serif; --sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}
    a{color:inherit;text-decoration:none}
    a:hover{text-decoration:underline;text-underline-offset:5px}
    a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
    button{font:inherit}
    .shell{width:min(1090px,calc(100% - 104px));margin-inline:auto}
    .tiny{font-size:11px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
    .header{border-bottom:1px solid var(--line)}
    .header .shell{height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px}
    .wordmark{font-weight:650;font-size:17px;letter-spacing:-.04em;white-space:nowrap}
    .nav{display:flex;align-items:center;gap:38px;font-size:13px;color:#4f5b60}
    .nav a:last-child{color:var(--blue);border-bottom:1px solid currentColor;padding-bottom:5px}
    .nav a:hover{text-decoration:none;color:var(--ink)}
    .hero{min-height:610px;display:flex;align-items:center}
    .hero-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:center;padding:92px 0 96px}
    .hero h1{font:400 clamp(76px,9.2vw,137px)/.9 var(--serif);letter-spacing:-.09em;margin:25px 0 0}
    .hero h1 span{color:var(--accent)}
    .hero-copy{border-left:1px solid #c4c5bd;padding:7px 0 4px 33px;max-width:450px}
    .hero-portrait{display:block;width:190px;height:229px;object-fit:cover;object-position:center 38%;margin:0 0 27px;border:1px solid var(--line);border-radius:2px}
    .hero-copy p{font:400 clamp(20px,2vw,25px)/1.56 var(--serif);letter-spacing:-.02em;margin:0 0 28px}
    .hero-copy .caption{font:400 13px/1.8 var(--sans);color:var(--grey);margin:0 0 31px;letter-spacing:0}
    .link{font-size:13px;font-weight:600;color:var(--blue);display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid var(--blue);padding-bottom:5px}
    .link:hover{text-decoration:none;gap:16px}
    .meta-row{display:flex;align-items:center;justify-content:space-between;padding:26px 0 27px;border-top:1px solid var(--line);color:#6b7374;gap:20px}
    .meta-row span{font-size:11px;letter-spacing:.09em;text-transform:uppercase}
    .meta-row .rule{height:1px;flex:1;max-width:90px;background:#a8b2b1}
    .section{padding:111px 0 117px}
    .section-grid{display:grid;grid-template-columns:260px 1fr;gap:100px}
    .section-label{padding-top:10px}
    .section-label::before{content:"";display:block;width:28px;height:1px;background:var(--accent);margin-bottom:18px}
    h2{font:400 clamp(36px,4.4vw,57px)/1.13 var(--serif);letter-spacing:-.06em;margin:0 0 34px}
    .body-copy{color:#4c5559;line-height:1.9;font-size:16px;max-width:680px}
    .body-copy p{margin:0 0 24px}
    .body-copy p:last-child{margin-bottom:0}
    .about{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .about .intro{font:400 26px/1.53 var(--serif);color:var(--ink);letter-spacing:-.025em;margin:0 0 27px}
    .experience{background:var(--paper)}
    .roles{border-top:1px solid var(--line)}
    .role{display:grid;grid-template-columns:135px 1fr;gap:24px;padding:35px 0 39px;border-bottom:1px solid var(--line)}
    .when{font-size:12px;line-height:1.7;color:#69767b}
    .role h3{font:400 30px/1.2 var(--serif);letter-spacing:-.04em;margin:0 0 8px}
    .job-title{font-size:13px;font-weight:600;color:var(--blue);margin:0 0 15px}
    .role p:last-child{font-size:14px;line-height:1.85;max-width:600px;color:var(--grey);margin:0}
    .background{border-top:1px solid var(--line);background:var(--pale)}
    .background h2{margin-bottom:21px}
    .topics{display:flex;flex-wrap:wrap;gap:10px;margin-top:27px;max-width:730px}
    .topics span{border:1px solid #cbd0ca;color:#4a5a60;font-size:12px;padding:11px 14px;border-radius:2px}
    .footer{background:#e6e8e4;border-top:1px solid #d3d9d2;padding:77px 0 30px}
    .footer-main{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;padding-bottom:82px}
    .footer h2{font-size:47px;margin:14px 0 17px}
    .footer p{font-size:14px;line-height:1.8;color:var(--grey);max-width:500px;margin:0}
    .footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #c9d0ca;padding-top:25px;font-size:12px;color:#606e71;gap:15px}
    @media(max-width:950px){.hero-layout{gap:40px}.section-grid{grid-template-columns:180px 1fr;gap:55px}.shell{width:min(100% - 64px,1090px)}.hero h1{font-size:clamp(76px,10vw,110px)}}
    @media(max-width:700px){.shell{width:calc(100% - 42px)}.header .shell{height:70px}.wordmark{font-size:15px}.nav{gap:18px;font-size:12px}.nav a:nth-child(2){display:none}.hero{min-height:0}.hero-layout{display:block;padding:70px 0 76px}.hero h1{font-size:clamp(70px,17.8vw,114px);margin:18px 0 43px}.hero-copy{border-left:0;border-top:1px solid #c4c5bd;padding:26px 0 0;max-width:100%}.hero-portrait{width:150px;height:181px;margin-bottom:25px}.hero-copy p{font-size:23px;line-height:1.45}.hero-copy .caption{font-size:13px;margin-bottom:25px}.meta-row{padding:20px 0}.meta-row .rule{max-width:28px}.meta-row span{font-size:10px}.section{padding:74px 0 79px}.section-grid{display:block}.section-label{padding:0 0 32px}.about .intro{font-size:24px}.body-copy{font-size:15px}.role{display:block;padding:28px 0 31px}.when{margin-bottom:12px}.role h3{font-size:28px}.footer{padding:65px 0 25px}.footer-main{display:block;padding-bottom:65px}.footer h2{font-size:40px}.footer-main .link{margin-top:27px}.footer-bottom{font-size:11px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* WordPress compatibility for existing pages and posts. */
.wp-page {min-height:60vh;padding-top:84px;padding-bottom:100px}
.wp-page .entry-content {max-width:740px;font-size:17px;line-height:1.85;color:var(--grey)}
.wp-page .entry-content a {color:var(--blue);text-decoration:underline}
.wp-page h1 {font:400 clamp(44px,6vw,78px)/1.08 var(--serif);letter-spacing:-.06em;margin:0 0 35px}
.wp-page h2 {font-size:36px;letter-spacing:-.03em}
.wp-page img{max-width:100%;height:auto}
.wp-page article + article{margin-top:50px;border-top:1px solid var(--line);padding-top:50px}
@media(max-width:700px){.wp-page{padding-top:58px;padding-bottom:70px}}
