/*
Theme Name: Hunter Jacobs Editorial
Version: 3.0.0
Description: Work, projects, family, and farm life. A personal website for Hunter Jacobs.
Author: Hunter Jacobs
Text Domain: hunter-jacobs-editorial
*/
:root{--paper:#faf8f2;--ink:#263c32;--muted:#586159;--green:#37634d;--orange:#af4c2b;--line:#d8ddd1;--soft:#edf1e7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}a:hover{text-decoration:underline;text-underline-offset:5px}.wrap{width:min(1080px,calc(100% - 80px));margin-inline:auto}.skip-link{position:absolute;left:15px;top:-100px;padding:10px;background:var(--ink);color:white;z-index:10}.skip-link:focus{top:10px}.site-header{min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-weight:800;font-size:22px;letter-spacing:-1px}.brand span{color:var(--orange)}nav{display:flex;gap:27px;font-size:13px;font-weight:550}nav a{padding-block:10px}.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:center;padding-top:50px;padding-bottom:68px}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:750;color:var(--green)}.little-sun{font-size:25px;vertical-align:middle;color:var(--orange);margin-right:8px}.hero h1{font-size:clamp(46px,5.3vw,70px);line-height:1.07;letter-spacing:-3.5px;font-weight:750;margin:22px 0}.hero h1>span{color:var(--green);position:relative}.hero h1>span:after{content:'';display:block;position:absolute;bottom:-6px;left:0;right:0;height:5px;background:#e6be72;border-radius:50%;transform:rotate(-1deg)}.intro{font-size:20px;line-height:1.5;max-width:470px;margin-top:29px}.hero-description{font-size:15px;color:var(--muted);max-width:470px;margin-top:16px}.actions{display:flex;gap:24px;align-items:center;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--green);color:white;font-size:13px;font-weight:650;border-radius:8px;padding:14px 20px}.button:hover{background:#254b39;text-decoration:none}.text-link{font-size:13px;font-weight:600}.hero-photo-wrap{position:relative;padding:5px 15px 30px 0}.portrait{background:white;padding:11px 11px 0;box-shadow:0 5px 23px #263c3214;transform:rotate(3deg);border:1px solid #e1e1d7}.portrait img{height:405px;object-fit:cover;object-position:center 58%;border-radius:2px}.portrait figcaption{text-align:center;font-size:11px;color:var(--muted);padding:16px 1px}.farm-sticker{position:absolute;right:-16px;bottom:0;background:#f0d791;transform:rotate(-7deg);border:1px solid #d6b968;border-radius:50%;width:155px;height:125px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;line-height:1.5;text-align:center;box-shadow:0 4px 8px #263c320a}.farm-sticker>span{font-size:23px}.farm-sticker strong{font-size:16px}.hello-strip{display:flex;justify-content:space-between;gap:20px;border-block:1px solid var(--line);padding-block:21px;font-size:13px;color:var(--muted)}.hello-strip span:before{content:'✳';color:var(--orange);margin-right:12px}.section{padding-block:76px}h2{font-size:36px;line-height:1.2;letter-spacing:-1.3px;font-weight:700;margin-top:13px}h3{font-size:19px;line-height:1.35;letter-spacing:-.35px}.about-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:85px;align-items:center}.about-layout p:not(.eyebrow){font-size:15px;color:var(--muted);margin-top:20px}.about-layout .text-link{display:inline-block;margin-top:22px}.quick-facts{position:relative;background:#f2eedf;border:1px solid #e3dfcf;border-radius:12px;padding:28px 30px;transform:rotate(1deg)}.note-pin{position:absolute;right:22px;top:13px;font-size:28px;color:var(--orange)}.quick-facts h3{font-size:18px}.quick-facts dl{margin:20px 0 0}.quick-facts dl>div{border-top:1px solid #dbd7c8;padding:11px 0}.quick-facts dl>div:last-child{padding-bottom:0}.quick-facts dt{font-size:10px;color:var(--muted)}.quick-facts dd{margin:3px 0 0;font-size:14px;font-weight:550}.quick-facts small{font-size:11px;font-weight:400;color:var(--muted)}.work-section{background:var(--soft);border-block:1px solid #e0e5d9}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-heading>p{font-size:13px;max-width:280px;color:var(--muted)}.capabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:35px}.tile-icon{width:39px;height:39px;border-radius:11px;background:#dbe7d5;display:grid;place-items:center;font-size:22px;line-height:1;margin-bottom:17px}.tile-icon.orange{background:#f0dfc9;color:#874322}.tile-icon.purple{background:#e2def0;color:#614b7b;font-size:16px}.capabilities p{font-size:14px;color:var(--muted);margin-top:12px}.tool-note{display:block;font-size:10px;margin-top:18px;color:#476044}.projects-heading{border-top:1px solid #ccd5c4;margin-top:38px;padding-top:30px;display:flex;gap:20px;justify-content:space-between;align-items:center}.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}.project{display:flex;flex-direction:column;background:var(--paper);border:1px solid #d7decf;border-radius:12px;padding:22px;transition:transform .15s,box-shadow .15s}.project:hover{transform:translateY(-3px);box-shadow:0 8px 15px #263c320c;text-decoration:none}.project-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.project-category{font-size:9px;letter-spacing:1px;font-weight:650;color:var(--green)}.project p{font-size:13px;color:var(--muted);margin-top:12px}.project-link{font-size:12px;font-weight:600;margin-top:auto;padding-top:22px}.project:hover .project-link{text-decoration:underline}.farm-section h2{font-size:48px;margin-top:9px}.orange-dot{color:var(--orange)}.farm-intro{font-size:19px;margin-top:10px}.farm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.farm-photo{padding:9px 9px 0;background:white;border:1px solid #e0dfd6;box-shadow:0 4px 9px #263c3209;border-radius:5px}.farm-photo img{height:300px;object-fit:cover;border-radius:2px;transition:filter .2s}.photo-link{display:block;cursor:zoom-in}.photo-link:hover img{filter:brightness(1.06)}.farm-photo figcaption{font-size:11px;color:#46534a;line-height:1.5;padding:14px 6px 16px;min-height:63px}.farm-photo figcaption span{font-size:9px;color:var(--orange);margin-right:7px}.goat{transform:rotate(-2deg)}.sunset{transform:rotate(1.5deg);margin-top:15px}.duck{transform:rotate(-1deg);margin-top:3px}.duck img{object-position:49% center}.yard{transform:rotate(1deg)}.family{transform:rotate(-1deg);margin-top:7px}.family img{object-position:center 62%}.farm-note{align-self:center;text-align:center;padding:30px 10px;transform:rotate(3deg)}.farm-note>span{font-size:60px;color:var(--orange);line-height:1.3}.farm-note p{font-size:26px;line-height:1.3;font-weight:650;letter-spacing:-.8px}.farm-note small{display:block;font-size:12px;color:var(--muted);margin-top:15px}.contact{background:#e8eddf;border:1px solid #d9dfce;border-radius:16px;padding:40px 45px;display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:30px}.contact h2{font-size:34px}.contact p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:16px}.contact-actions{display:flex;flex-direction:column;gap:13px;align-items:flex-start}.contact-actions .button{min-width:225px}.contact-email{font-size:12px}.socials{display:flex;gap:22px;font-size:12px}.socials a{padding-block:5px}footer{display:flex;justify-content:space-between;gap:20px;padding-block:22px 32px;font-size:11px;color:var(--muted)}dialog{border:0;border-radius:12px;padding:15px;background:var(--paper);max-width:min(1000px,95vw);max-height:95vh;color:var(--ink)}dialog::backdrop{background:#12251fe6}dialog img{height:auto;max-height:76vh;width:auto;max-width:100%;object-fit:contain;margin:auto}dialog p{font-size:13px;text-align:center;padding:12px 5px 0}.close-photo{display:block;margin:0 0 12px auto;background:var(--green);color:white;border:0;border-radius:6px;padding:6px 15px;cursor:pointer}body:has(dialog[open]){overflow:hidden}
@media(max-width:1000px){.hero{gap:40px}.hero h1{font-size:58px}.portrait img{height:365px}.about-layout{gap:45px}.actions{flex-wrap:wrap;gap:15px}.farm-photo img{height:260px}.capabilities{gap:22px}.projects{gap:12px}.project{padding:17px}.hero-photo-wrap{padding-right:10px}.farm-sticker{right:-7px;width:135px;height:110px}.hello-strip{font-size:11px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{padding-block:22px;flex-direction:column;align-items:flex-start;gap:10px;min-height:0}.brand{font-size:23px}nav{width:100%;justify-content:space-between;gap:10px;font-size:11px}.hero{grid-template-columns:1fr;padding-top:26px;padding-bottom:36px;gap:35px}.hero h1{font-size:55px;letter-spacing:-2.5px}.intro{font-size:19px}.hero-description{font-size:14px}.hero-photo-wrap{width:min(340px,90%);justify-self:center;padding-right:0}.portrait img{height:360px}.farm-sticker{right:-20px;bottom:5px}.hello-strip{flex-wrap:wrap;justify-content:flex-start;gap:9px 15px;font-size:11px}.hello-strip span:before{margin-right:6px}.section{padding-block:50px}.about-layout{grid-template-columns:1fr;gap:30px}h2{font-size:30px}.quick-facts{transform:none;padding:23px}.quick-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.section-heading{display:block;margin-bottom:23px}.section-heading>p{margin-top:15px;max-width:none}.capabilities{grid-template-columns:1fr;gap:24px;margin-top:26px}.capabilities article{padding-left:54px;position:relative}.tile-icon{position:absolute;left:0;top:0}.capabilities p{margin-top:8px}.tool-note{margin-top:10px}.projects-heading{align-items:flex-start;flex-direction:column;gap:12px;margin-top:28px;padding-top:24px}.projects{grid-template-columns:1fr}.project{padding:22px}.project-top{margin-bottom:10px}.project-link{padding-top:16px}.farm-section h2{font-size:43px}.farm-intro{font-size:18px}.farm-grid{grid-template-columns:1fr 1fr;gap:20px 12px}.farm-photo{padding:6px 6px 0}.farm-photo img{height:235px}.farm-photo figcaption{padding:11px 3px;font-size:10px;min-height:68px}.farm-photo figcaption span{display:none}.duck{grid-column:1/-1;margin-top:0;transform:none}.duck img{height:auto;aspect-ratio:16/9}.duck figcaption{min-height:0}.family{margin-top:0}.farm-note{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:22px;padding:8px;transform:none}.farm-note>span{font-size:44px}.farm-note p{font-size:20px;text-align:left}.farm-note small{display:none}.contact{padding:28px 24px;flex-direction:column;align-items:flex-start;gap:24px}.contact h2{font-size:30px}.contact-actions .button{min-width:210px}.contact p:not(.eyebrow){font-size:13px}footer{align-items:center;font-size:10px}.footer-aside{display:block}dialog{max-width:96vw;padding:10px}dialog img{max-height:72vh}}
@media(max-width:360px){.hero h1{font-size:48px}.farm-photo img{height:200px}.portrait img{height:325px}.farm-sticker{right:-14px}.quick-facts dd{font-size:12px}.button{gap:20px}.hero .actions{gap:18px}.contact-email{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Keep the playful note clear of the portrait caption. */
.farm-sticker{top:-18px;bottom:auto}

/* Portfolio first, with a compact personal gallery. */
.hero h1{font-size:clamp(44px,4.7vw,64px)}
.portrait{transform:rotate(1deg)}
.farm-section{padding-block:54px}
.farm-section h2{font-size:36px}
.farm-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}
.farm-photo{padding:6px 6px 0;margin-top:0}
.farm-photo img{height:205px}
.farm-photo figcaption{font-size:10px;padding:12px 4px;min-height:76px}
.farm-photo figcaption span{display:none}
@media(max-width:1000px) and (min-width:701px){.farm-grid{gap:10px}.farm-photo img{height:180px}.farm-photo figcaption{font-size:9px}.hero h1{font-size:49px}}
@media(max-width:700px){.hero h1{font-size:48px}.hero .eyebrow{font-size:9px;letter-spacing:1px}.farm-section{padding-block:40px}.farm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 12px}.farm-photo img{height:190px}.farm-photo figcaption{min-height:60px}.duck{grid-column:auto;transform:rotate(-1deg)}.duck img{height:190px;aspect-ratio:auto}.family{grid-column:1/-1;width:65%;justify-self:center}.family img{height:215px}.family figcaption{min-height:0}}
@media(max-width:360px){.hero h1{font-size:42px}.hero .eyebrow{font-size:8px}}
