/* Recruiter-focused refinement. Preserve supplied artwork and natural scrolling. */
:root { --paper:#faf9f6; --cream:#f4f2ec; }
html { scroll-padding-top:82px; scroll-behavior:smooth; }
body { overflow-x:clip; }
body:before,.hero:before,.hero:after,.work-section:before,.fpp-stars,.contact-orbit { display:none!important; }
section[id] { scroll-margin-top:0; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #b78c38; outline-offset:6px; }
.site-nav,.page-scrolled .site-nav { padding-inline:5vw; height:82px; }
.wordmark strong { text-transform:none; letter-spacing:.01em; font-size:16px; }
.nav-links { font-size:14px; gap:28px; }
.nav-links a { min-height:44px; display:inline-flex; align-items:center; }
.hero { min-height:650px; height:auto; padding:155px 7vw 78px; gap:6vw; background:#08163a; grid-template-columns:1.2fr .8fr; }
.hero-copy { transform:none!important; }
.eyebrow { font-size:13px; letter-spacing:.11em; line-height:1.5; }
.hero .eyebrow { max-width:540px; color:#d8b66c; }
.hero h1 { font-family:Georgia,serif; font-weight:400; font-size:clamp(54px,5.8vw,88px); line-height:1.04; letter-spacing:-.04em; }
.hero-description { font-size:18px; line-height:1.75; max-width:565px; color:#e3e7ef; }
.hero-art { height:auto; min-height:0; display:flex; align-items:center; justify-content:center; perspective:none; }
.hero-portrait { position:relative!important; inset:auto!important; width:100%; max-width:365px; height:auto!important; aspect-ratio:4/5; transform:none!important; border:0; box-shadow:none; margin:0; }
.hero-portrait img { width:100%;height:100%;object-fit:cover;object-position:76% center;transform:none!important; }
.primary-button,.secondary-button,.hero-resume-link { font-size:14px; letter-spacing:.015em; text-transform:none; min-height:50px; padding:0 22px; }
.hero-resume-link { padding-inline:12px; }
.proof-strip { padding:0 7vw; }
.proof-strip span { font-size:13px; text-transform:none; letter-spacing:0; max-width:210px; }
.proof-strip strong { font-family:Georgia,serif; font-size:36px; }
.proof-strip div { align-items:flex-start; }
.work-section,.concept-section,.process-section,.about-section,.experience-section { padding:88px 7vw; }
.section-heading h2,.work-heading h2,.process-heading h2,.experience-heading h2,.about-copy h2 { font-family:Georgia,serif; font-weight:400; font-size:clamp(36px,4vw,56px); line-height:1.12; letter-spacing:-.025em; }
.section-heading>p,.experience-heading>p,.about-columns p { font-size:16px; line-height:1.8; }
.section-heading { gap:50px; margin-bottom:44px; }
.project-list { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.project-card { min-width:0; text-align:left; }
.project-visual,.verified-work-layout { height:auto!important; min-height:0!important; padding:40px 30px; display:flex; flex-direction:column; justify-content:center; gap:0; background:#e9e9e2; box-shadow:none; overflow:hidden; }
.fpp-visual { background:#e9e5ee; }
.visual-caption,.verified-work-layout .visual-caption,.fpp-visual .visual-caption,.borrelli-visual .visual-caption { position:static; max-width:100%; }
.visual-caption p { color:#465062; font-size:13px; margin:0 0 10px; }
.visual-caption strong,.borrelli-visual .visual-caption strong,.fpp-visual .visual-caption strong { color:#101d38; font-family:Georgia,serif; font-weight:400; font-size:28px; min-height:68px; line-height:1.18; }
.verified-post,.fpp-visual .verified-post { position:relative!important; inset:auto!important; width:100%!important; max-width:320px; aspect-ratio:4/5; height:auto!important; margin:0 auto; transform:none!important; box-shadow:0 10px 26px #101d3817; border:0; }
.verified-post img { width:100%;height:100%;object-fit:contain; transform:none!important; }
.project-footer { gap:16px; align-items:flex-start; }
.project-footer h3 { font-size:23px; font-weight:500; letter-spacing:-.02em; }
.project-footer p { font-size:14px; line-height:1.55; }
.project-cta { font-size:13px; padding:0; border:0; border-bottom:1px solid currentColor; min-height:36px; white-space:nowrap; }
.project-card:hover .project-cta { background:none; color:var(--navy); }
.project-card:hover .project-visual { transform:none; }
.concept-list { gap:70px; }
.concept-feature { grid-template-columns:.8fr 1fr; gap:8vw; padding:28px 0 0; border:0; border-top:1px solid #d8d6ce; background:transparent; box-shadow:none; }
.concept-feature-reverse { grid-template-columns:1fr .8fr; }
.concept-feature figure { max-width:420px; box-shadow:none; transform:none!important; }
.concept-feature h3 { font-family:Georgia,serif;font-size:36px;font-weight:400;line-height:1.2; }
.concept-rationale { font-size:17px!important;line-height:1.8!important; }
.concept-feature span { font-size:13px!important;line-height:1.6; }
.process-list { gap:30px; }
.process-list li,.process-list li:hover { background:transparent; border:0; border-top:1px solid #b7ae96; padding:24px 0 0; box-shadow:none; transform:none; }
.process-list li>span,.process-list li>div { transform:none; }
.process-list h3 { font-size:23px; }
.process-list p { font-size:16px; }
.process-list li>span { font-size:14px; }
.timeline article:first-child { border-left:3px solid #b58b3a; padding-left:24px; background:#f1eee5; }
.timeline p,.timeline .timeline-detail { font-size:16px; line-height:1.75; }
.timeline span { font-size:14px; }
.entry-type { font-size:12px!important; }
.timeline h3 { font-size:25px; }
.certification-list li { font-size:15px;line-height:1.6; }
.about-section { background:#faf9f6; }
.recruiter-snapshot { box-shadow:none; border:1px solid #bcb59f; }
.recruiter-snapshot dt { font-size:13px; }
.recruiter-snapshot dd { font-size:16px;line-height:1.65; }
.profile-contact { padding:80px 7vw 35px; gap:6vw; }
.profile-collage { min-height:0;display:flex;align-items:center;justify-content:center; }
.profile-photo-main { position:relative!important;inset:auto!important;width:100%;max-width:365px;aspect-ratio:4/5;transform:none!important; margin:0; border:0;box-shadow:none; }
.profile-photo-main img { width:100%;height:100%;object-fit:cover;transform:none!important; }
.profile-photo-main figcaption { font-size:13px; }
.profile-contact .availability { font-size:16px;line-height:1.7; }
.contact-footer p,.contact-footer a { font-size:14px;line-height:1.7; }
.case-modal { width:min(1120px,calc(100% - 32px)); }
.case-header,.case-modal-fpp .case-header { background:#f4f2ec; color:#101d38; }
.case-header:before { display:none; }
.case-facts { grid-template-columns:1.25fr 1fr .8fr 1fr; }
.case-brand-panel span { display:none; }
.case-brand-panel,.case-modal-fpp .case-brand-panel { border:0; background:transparent; }
.case-overview { background:#f4f2ec; gap:36px; }
.case-overview article { background:transparent; padding:0; }
.case-overview h3 { font-family:Georgia,serif; font-weight:400; }
.gallery-heading { grid-template-columns:1fr; }
.gallery-heading>p:empty { display:none; }
.gallery-thumbs button { flex-shrink:0; }
.gallery-controls button { min-width:44px; min-height:44px; }
.case-gallery { border-bottom:1px solid #d8d6ce; }
.case-intro,.case-modal-fpp .case-intro { color:#4c5260; }
.case-header h2 { font-family:Georgia,serif; font-weight:400;line-height:1.1; }
.case-intro,.case-modal-fpp .case-intro,.case-overview article>p:not(.eyebrow),.approach-list p,.copy-evidence p,.result-section>p { font-size:16px;line-height:1.75; }
.case-facts strong,.case-brief-meta p,.case-brand-panel p,.case-modal-fpp .case-brand-panel p { font-size:14px;line-height:1.6; }
.case-facts span,.case-brief-meta span,.case-overview .eyebrow,.case-gallery .eyebrow,.approach-section .eyebrow,.copy-evidence .eyebrow,.result-section .eyebrow { font-size:12px; }
.modal-close { font-size:14px;min-height:44px;z-index:10; }
.case-logo-frame { overflow:hidden; }
.case-modal-fpp .case-logo-frame img { transform:scale(1.4); }
.case-image-wrap img { object-fit:contain; }
.gallery-heading>p,.copy-evidence summary { font-size:15px;line-height:1.6; }
.approach-list { grid-template-columns:1fr 1fr; }
.modal-footer p { font-size:13px;line-height:1.6; }
[data-reveal] { transition:opacity .35s ease,transform .35s ease; }
@media(max-width:1000px){.project-footer{display:grid}.hero{gap:4vw}.nav-links{gap:16px}.wordmark strong{font-size:14px}.process-list{grid-template-columns:1fr 1fr}.concept-feature{gap:40px}}
@media(max-width:800px){.hero{grid-template-columns:1fr;padding:125px 6vw 60px}.hero-art{margin:30px 0 0}.hero-portrait{max-width:365px}.nav-links{top:82px}.nav-links a{font-size:20px}.proof-strip{padding-inline:6vw}.work-section,.concept-section,.process-section,.about-section,.experience-section{padding:64px 6vw}.project-list{grid-template-columns:1fr;gap:42px}.visual-caption strong{min-height:0!important}.project-visual{padding:25px}.concept-feature,.concept-feature-reverse{grid-template-columns:1fr;gap:28px}.concept-feature figure{width:100%}.profile-contact{padding-inline:6vw}.profile-collage{margin-top:24px}.case-facts{grid-template-columns:1fr 1fr}.case-header{gap:24px}.timeline article:first-child{padding-left:18px}}
@media(max-width:520px){.hero h1{font-size:52px}.hero-description{font-size:17px}.wordmark strong{font-size:13px}.menu-toggle{font-size:14px;min-height:44px}.proof-strip div{padding:20px 12px!important}.proof-strip span{font-size:12px}.section-heading{gap:20px}.process-list,.case-facts,.approach-list{grid-template-columns:1fr}.hero-actions{gap:12px}.primary-button,.secondary-button,.hero-resume-link{padding-inline:16px}.case-header h2{font-size:36px}.case-overview{padding:20px 12px}.case-modal{width:calc(100% - 12px)}.profile-contact h2{font-size:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{opacity:1!important;transform:none!important}*{animation:none!important;transition:none!important}}
