/* Isolated project styling. Brand colors are from the original brand kit. */
:root{--blush:#e7bda6;--amber:#9b6c36;--champagne:#ded4b9;--noir:#242421;--ivory:#f7f2e9;--chocolate:#39271e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ivory);color:var(--chocolate);font-family:Arial,sans-serif;background-image:radial-gradient(#5237250b .65px,transparent .65px);background-size:4px 4px}a{color:inherit;text-underline-offset:5px}button{font:inherit}figure{margin:0}img{display:block;width:100%;height:auto}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}em{font-weight:400}h1{font-size:clamp(60px,8.8vw,155px);line-height:.95;letter-spacing:-.065em;margin:26px 0 38px}h2{font-size:clamp(38px,4.8vw,78px);line-height:1.08;letter-spacing:-.05em;margin:18px 0 26px}h3{font-size:clamp(30px,3.4vw,54px);line-height:1.15;margin:20px 0}.eyebrow{font-size:13px;letter-spacing:.2em;text-transform:uppercase;line-height:1.8}.project-nav{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px 5%;border-bottom:1px solid #39271e25}.portfolio-name{font:22px Georgia,serif;text-decoration:none}.portfolio-name span{font:10px Arial,sans-serif;letter-spacing:.08em;margin-left:8px}.project-nav nav{display:flex;gap:30px;font-size:13px}.project-nav nav a{text-decoration:none}.hero-heading{width:min(90%,1480px);margin:auto;padding:60px 0 45px}.hero-meta{display:flex;align-items:center;justify-content:space-between;font-size:13px;letter-spacing:.05em}.scroll-link{text-decoration:none}.scroll-link span{display:inline-block;margin-left:20px}.hero-image{width:100%;max-height:850px;aspect-ratio:1.85}.hero-image img{height:100%;object-fit:cover}.section{width:min(88%,1380px);margin:auto;padding:110px 0}.concept{display:grid;grid-template-columns:1fr .85fr;gap:11%;align-items:center}.body-copy{font-size:15px;line-height:1.9;max-width:470px}.small-note,figcaption{font-size:13px;line-height:1.8;letter-spacing:.025em;color:#39271eb3}.small-note{margin-top:26px}figcaption{margin-top:14px}.gallery-image{display:block;width:100%;position:relative;border:0;padding:0;background:transparent;cursor:zoom-in;overflow:hidden;text-align:left}.gallery-image img{transition:transform .65s ease}.gallery-image:hover img{transform:scale(1.025)}.zoom-hint{position:absolute;bottom:14px;right:14px;background:#f7f2e9e8;color:var(--chocolate);padding:9px 13px;font-size:13px;opacity:0;transform:translateY(5px);transition:opacity .25s,transform .25s}.gallery-image:hover .zoom-hint,.gallery-image:focus-visible .zoom-hint{opacity:1;transform:none}.section-heading{margin-bottom:50px}.identity{border-top:1px solid #39271e25}.identity-pair{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}.identity-pair .gallery-image{aspect-ratio:1.15;background:#fff}.identity-pair img{height:100%;object-fit:contain}.identity-pair figure:nth-child(2) .gallery-image{background:var(--noir)}.identity-pair figure:nth-child(2) img{object-fit:cover}.palette{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:60px 0 85px}.palette span{display:block;height:110px;background:var(--swatch);border:1px solid #39271e20}.palette h3{font-size:23px;margin:16px 0 6px}.palette p{font-size:13px;letter-spacing:.1em}.type-study{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:10%}.kit{max-width:500px;justify-self:end}.applications{width:100%;padding-inline:6%;background:var(--champagne)}.applications>.section-heading,.application-grid{max-width:1380px;margin-inline:auto}.application-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:start}.app-wide{grid-column:1/-1;width:88%}.app-collection{grid-column:1/-1;width:79%;margin:20px 0 0 auto}.photography{padding-bottom:60px}.photo-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;align-items:start}.photo-crop{overflow:hidden;aspect-ratio:.8}.photo-crop img{position:absolute;max-width:none;width:auto;height:auto;transition:filter .5s}.photo-crop:hover img{transform:none;filter:brightness(1.04)}.wine{grid-column:1/3;aspect-ratio:1.12}.wine img{width:215%;left:0;top:0}.couple{aspect-ratio:1.25;margin-top:90px}.couple img{width:188%;right:0;top:0}.detail{aspect-ratio:1.28}.detail img{width:195%;left:0;bottom:0}.walk{aspect-ratio:1.28;margin-top:65px}.walk img{width:202%;right:0;bottom:0}.photo-treatment{margin-top:0}.digital{display:grid;grid-template-columns:.85fr 1fr;gap:10%;align-items:center;padding-top:110px}.digital-image{max-width:650px}.closing{padding-bottom:45px}.closing-image{width:100%;max-height:800px;aspect-ratio:1.8}.closing-image img{height:100%;object-fit:cover;object-position:50% 30%}.closing-nav{display:flex;justify-content:space-between;align-items:center;margin-top:40px;font:clamp(22px,2.5vw,36px) Georgia,serif}.closing-nav a{text-decoration:none}.next-project{text-align:right;color:#39271e80}.next-project small{display:block;font:10px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;margin-top:9px}footer{display:flex;justify-content:space-between;gap:25px;padding:35px 6%;font-size:13px;border-top:1px solid #39271e25}footer a{text-decoration:none}.skip{position:absolute;top:-100px;left:20px;z-index:10}.skip:focus{top:10px;padding:10px;background:var(--ivory)}:focus-visible{outline:2px solid var(--amber);outline-offset:5px}.js-reveals .reveal{opacity:0;transform:translateY(22px);transition:opacity .85s ease,transform .85s ease}.js-reveals .reveal.visible{opacity:1;transform:none}dialog{width:min(96vw,1500px);max-height:96svh;background:var(--ivory);border:0;padding:18px;color:var(--chocolate)}dialog::backdrop{background:#18120eee;backdrop-filter:blur(7px)}.lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.lightbox-bar p{font-size:13px;line-height:1.5;margin:0;max-width:80%}.lightbox-bar button,.lightbox-controls button{border:1px solid #39271e40;background:transparent;padding:10px 14px;cursor:pointer;white-space:nowrap}#lightbox-image{width:100%;height:70svh;object-fit:contain}.lightbox-controls{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:13px}body.lightbox-open{overflow:hidden}
@media(min-width:1800px){.hero-heading{padding-top:90px}.section{padding-block:150px}}
@media(max-width:900px){.section{padding:75px 0}.applications{padding:75px 6%}.concept{gap:7%}.photo-grid{gap:15px}.couple{margin-top:40px}.digital{gap:7%}.palette{gap:15px}.palette h3{font-size:20px}}
@media(max-width:600px){.project-nav{padding:20px 6%;align-items:start}.portfolio-name span{display:block;margin:6px 0 0}.project-nav nav{gap:16px;font-size:13px}.hero-heading{padding:44px 0 30px}.hero-meta{align-items:start;gap:20px;line-height:1.7}.hero-meta>span{max-width:52%}.hero-image{aspect-ratio:1.1}.section{width:88%;padding:65px 0}.concept,.type-study,.digital{grid-template-columns:1fr;gap:32px}.section-heading{margin-bottom:30px}.identity-pair{grid-template-columns:1fr;gap:30px}.palette{grid-template-columns:1fr 1fr;margin:40px 0 50px;gap:22px}.palette span{height:85px}.kit{max-width:100%}.applications{width:100%;padding:65px 6%}.application-grid{display:block}.app-wide,.app-collection{width:100%;margin:0 0 28px}.photo-grid{grid-template-columns:1fr 1fr;gap:14px}.wine{grid-column:1/-1;aspect-ratio:1.12}.couple,.walk,.photo-treatment{margin:0}.photo-treatment{grid-column:1/-1;width:75%;margin:15px auto 0}.closing-image{aspect-ratio:.9;max-height:none}.closing-image img{object-fit:contain}.closing-nav{font-size:22px;gap:20px}footer{flex-direction:column}.lightbox-bar p{font-size:13px}#lightbox-image{height:65svh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.js-reveals .reveal{opacity:1;transform:none}}

/* A restrained portfolio signature inspired by Charis’s reference. */
.signature-link { display:flex; align-items:center; gap:16px; }
.charis-signature { width:180px; height:64px; overflow:visible; color:var(--chocolate); }
.signature-text { fill:currentColor; font-family:Georgia,'Times New Roman',serif; font-size:36px; font-weight:700; font-style:italic; letter-spacing:-2px; }
.signature-swoosh { fill:none; stroke:currentColor; stroke-width:3; stroke-linecap:round; }
.signature-spark { fill:currentColor; }
.signature-link>span { margin-left:0; }
@media(max-width:600px) { .signature-link { flex-direction:column; align-items:flex-start; gap:2px; }.charis-signature { width:135px; height:48px; }.signature-link>span { margin:0 0 0 8px; } }

.portfolio-logo { width:76px; height:76px; object-fit:contain; }
@media(max-width:600px) { .portfolio-logo { width:58px; height:58px; } }
