/* Original portfolio photography and documented project work. */
.hero-portrait{position:relative;margin:0;width:100%;max-width:440px;justify-self:end;overflow:hidden;border:1px solid #463a4c;border-radius:14px;background:#211a19;box-shadow:0 35px 100px -65px #8650c6}
.hero-portrait>img{display:block;width:100%;height:540px;object-fit:cover;object-position:center 47%}
.hero-portrait:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(9,7,12,.94));pointer-events:none}
.hero-portrait figcaption{position:absolute;bottom:26px;left:28px;right:20px;z-index:1;display:grid;gap:5px;font-size:12px;color:#ccc3d3}
.hero-portrait .eyebrow{margin:0 0 5px;font-size:9px;color:#d7bfff}
.hero-portrait strong{font:700 24px/1.2 var(--heading);letter-spacing:-.03em;color:white}
.proof-section{padding:52px 0;border-bottom:1px solid var(--line)}
.proof-section h2{font-size:30px}
.proof-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:27px 0 18px}
.proof-metrics>div{padding:20px 0;border-top:1px solid #493953;min-width:0}
.proof-metrics strong{display:block;font:700 48px/1.2 var(--heading);letter-spacing:-.04em;color:var(--light)}
.proof-metrics span{display:block;margin-top:7px;font-size:12px;color:var(--muted)}
.evidence-note,.source-note{font-size:12px;color:var(--muted);max-width:84ch;line-height:1.8}
.evidence-note a,.source-note a{color:var(--light);text-underline-offset:4px}
.featured-visual{display:flex;align-items:center;justify-content:center;min-width:0;padding:22px;background:radial-gradient(ellipse at center,#513c282b,transparent 80%),#151210}
.featured-visual img{display:block;width:100%;height:auto;border:1px solid #564338;border-radius:5px}
.home-projects{margin-top:28px}
.project-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);display:flex;flex-direction:column;min-width:0}
.project-cover{height:290px;padding:24px;display:flex;align-items:center;justify-content:center;min-width:0;background:radial-gradient(ellipse at center,#67379c24,transparent 90%),#16121c;border-bottom:1px solid var(--line);transition:background .2s}
.project-cover:hover{background-color:#21182b}
.project-cover img,.project-cover .project-image{width:100%;height:100%;object-fit:contain}
.project-cover.creative-cover{padding:0;overflow:hidden}
.creative-cover img{height:360px;width:auto;max-width:100%;object-fit:contain}
.project-body{padding:28px;flex:1}
.project-body h2,.project-body h3{font-size:27px;max-width:24ch}
.project-body p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:14px}
.project-body .eyebrow{font-size:10px;letter-spacing:.09em;margin-bottom:17px}
.project-body .text-link{margin-top:17px}
.project-body .tag{margin-bottom:5px}
.project-image{display:block;width:100%;height:auto;object-fit:contain}
.evidence-figure{margin:28px 0 0;border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden;align-self:start;min-width:0}
.two-col>.evidence-figure{margin-top:0}
.evidence-figure>a{display:block;padding:20px;transition:background .2s}
.evidence-figure>a:hover{background:#21182b}
.evidence-figure img{display:block;width:100%;height:auto}
.evidence-figure figcaption{padding:16px 20px;border-top:1px solid var(--line);font-size:12px;line-height:1.8;color:var(--muted)}
.creative-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}
.creative-gallery figure{margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);min-width:0}
.creative-gallery figure>a{display:block;background:#17141e;padding:12px}
.creative-gallery img{display:block;width:100%;height:auto;aspect-ratio:1/1.13;object-fit:contain}
.creative-gallery figcaption{padding:22px;color:var(--muted);font-size:13px;line-height:1.8}
.creative-gallery figcaption strong{display:block;color:var(--text);font-size:16px;margin-bottom:8px}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:9px;max-width:100%;margin:25px 0}
.table-wrap table{width:100%;min-width:660px;border-collapse:collapse;text-align:left;font-size:13px}
.table-wrap th,.table-wrap td{padding:16px;border-bottom:1px solid var(--line);white-space:nowrap}
.table-wrap th{background:#201729;color:var(--text);font-weight:500}
.table-wrap tr:last-child td{border-bottom:0}
.table-wrap caption{text-align:left;padding:18px;color:var(--muted);font-size:12px}
.portrait-card{margin:0;max-width:440px;width:100%;justify-self:end;overflow:hidden;background:var(--surface);border:1px solid #463a4c;border-radius:13px}
.portrait-image{display:block;width:100%;height:530px;object-fit:cover;object-position:center 44%}
.photo-caption{font-size:12px;color:var(--muted);padding:18px 24px}
.photo-caption strong{display:block;font-size:18px;color:var(--text)}
[data-page=about] .page-hero .split{align-items:center;gap:60px}
[data-page=about] .page-hero h1{font-size:clamp(43px,4.5vw,64px);max-width:14ch}
.experience-list{display:grid}
.experience-item{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:65px;border-top:1px solid var(--line);padding:29px 0;align-items:start}
.experience-item:last-child{padding-bottom:0}
.experience-item .eyebrow{font-size:10px;letter-spacing:.08em;margin:0 0 13px}
.experience-item h3{font-size:23px;max-width:27ch}
.experience-item p:not(.eyebrow){font-size:14px;color:var(--muted)}
.experience-item p.accent{color:var(--light);margin-top:9px}
.credential-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.credential{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:24px;min-width:0}
.credential h3{font-size:20px;line-height:1.25}
.credential .eyebrow{font-size:9px;letter-spacing:.08em;margin-bottom:13px}
.credential p:not(.eyebrow){font-size:13px;margin-top:12px}
#credentials-title~*{min-width:0}
[aria-labelledby=credentials-title] .panel h3:not(:first-of-type){margin-top:34px}
figure.image-feature{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;max-width:420px}
figure.image-feature img{display:block;width:100%;height:440px;object-fit:cover;object-position:center}
.contact-direct{display:grid;gap:9px;margin-top:32px}
.contact-direct .section-label{font-size:10px;margin:12px 0 0}
.contact-direct a{font:500 23px/1.6 var(--heading);text-decoration:none;overflow-wrap:anywhere;min-height:44px}
.contact-direct a:hover{color:var(--light)}
.contact-direct a span{font-size:16px}
.contact-hero-actions{margin-top:28px}
.booking-panel{align-self:start;padding:clamp(28px,4vw,46px);border:1px solid #493654;border-radius:16px;background:radial-gradient(circle at 95% 4%,#6f42a224,transparent 44%),var(--surface);box-shadow:0 30px 80px -60px #8650c6}
.booking-panel .eyebrow{margin-bottom:18px}
.booking-panel h2{font-size:clamp(31px,3vw,44px);line-height:1.14;max-width:15ch}
.booking-intro{max-width:55ch;margin-top:18px;color:var(--muted);font-size:16px;line-height:1.75}
.booking-preview{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:32px 0;color:var(--light);font:500 11px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.05em}
.booking-preview span:nth-child(odd){padding:10px 12px;border:1px solid #4a3a57;border-radius:7px;background:#21192b}
.booking-preview span:nth-child(even){color:#a977df;font-size:18px}
.booking-primary{display:inline-flex;min-height:52px}
.booking-note{max-width:52ch;margin-top:17px;color:var(--muted);font-size:12px;line-height:1.7}
.booking-secondary{margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}
.booking-secondary h3{font-size:20px}
.booking-secondary p{max-width:52ch;margin:10px 0 17px;color:var(--muted);font-size:14px;line-height:1.75}
.booking-secondary .text-link{font-size:13px}
.project-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
@media(max-width:1050px){.hero-portrait>img{height:510px}.hero-portrait strong{font-size:21px}[data-page=about] .page-hero .split{gap:30px}.credential-grid{grid-template-columns:1fr}.portrait-image{height:520px}}
@media(max-width:820px){.hero-portrait{justify-self:start;max-width:560px}.hero-portrait>img{height:570px;object-position:center 42%}.proof-metrics strong{font-size:39px}.project-cover{height:235px;padding:17px}.project-body{padding:24px}.project-body h3{font-size:25px}.portrait-image{height:510px}.experience-item{gap:35px}.creative-gallery{grid-template-columns:1fr}.creative-gallery figure{display:grid;grid-template-columns:1fr 1fr;align-items:center}.creative-gallery img{max-height:430px}.creative-gallery figcaption{padding:28px}figure.image-feature img{height:400px}}
@media(max-width:580px){.hero-portrait>img{height:450px}.hero-portrait figcaption{left:23px;bottom:24px}.hero-portrait strong{font-size:24px}.proof-section{padding:40px 0}.proof-section h2{font-size:27px}.proof-metrics{gap:13px}.proof-metrics strong{font-size:33px}.proof-metrics span{font-size:10px}.evidence-note{font-size:11px}.featured-visual{min-height:235px;padding:20px}.project-cover{height:255px;padding:22px}.project-body{padding:24px}.project-body h3{font-size:26px}.creative-gallery figure{display:block}.creative-gallery img{max-height:none}.creative-gallery figcaption{padding:23px}.evidence-figure>a{padding:10px}.evidence-figure figcaption{padding:15px;font-size:11px}.portrait-card{justify-self:start;max-width:none}.portrait-image{height:460px}[data-page=about] .page-hero .split{gap:35px}.experience-item{grid-template-columns:1fr;gap:16px;padding:26px 0}.credential-grid{grid-template-columns:1fr 1fr}.credential{padding:20px}.credential h3{font-size:18px}.credential .eyebrow{font-size:8px}.contact-direct a{font-size:22px}figure.image-feature{max-width:none}figure.image-feature img{height:440px}}
@media(max-width:360px){.hero-portrait>img{height:405px}.proof-metrics strong{font-size:28px}.proof-metrics{gap:10px}.proof-metrics span{font-size:9px}.credential-grid{grid-template-columns:1fr}.project-cover{height:225px}.portrait-image{height:410px}.contact-direct a{font-size:20px}}
@media(prefers-reduced-motion:reduce){.project-cover,.evidence-figure>a{transition:none}}
.forway-story>p:not(.eyebrow){font-size:15px;line-height:1.75}
.forway-story strong{color:var(--text)}
.campaign-path{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:23px 0 7px;color:var(--light);font-size:11px}
.campaign-path span:nth-child(odd){border:1px solid #57416c;border-radius:6px;background:#261834;padding:8px 10px;color:#e5d3f6}
.campaign-path span:nth-child(even){color:#ae83db}
.campaign-path-vertical{display:grid;justify-items:start;gap:7px;font-size:13px;margin-bottom:0}
.campaign-path-vertical span:nth-child(odd){min-width:220px}
.campaign-path-vertical span:nth-child(even){margin-left:14px}
@media(max-width:580px){.campaign-path{gap:7px;font-size:10px}.campaign-path span:nth-child(odd){padding:7px 8px}.campaign-path-vertical{font-size:12px}}
