
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;-webkit-font-smoothing:antialiased;font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}a:hover{text-decoration:underline;text-underline-offset:5px}p{margin:0 0 1.2em}p:last-child{margin-bottom:0}h1,h2,h3{margin:0;font-weight:400;line-height:1.05}figure{margin:0}img{max-width:100%;display:block}::selection{background:var(--accent);color:var(--paper)}.wrap{width:min(1320px,calc(100% - 112px));margin:auto}.masthead{display:flex;justify-content:space-between;align-items:center;padding:30px 0;border-bottom:1px solid var(--line);gap:28px}.identity{font-size:26px;font-weight:600;letter-spacing:-1px;line-height:1.1}.identity span{display:block;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;margin-top:10px;font-weight:400}nav{display:flex;gap:30px;font-size:13px}nav a:last-child{border-bottom:1px solid;padding-bottom:3px}.hero{position:relative;display:grid;grid-template-columns:1.5fr 1fr;gap:44px 70px;padding:65px 0 100px}h1{grid-column:1/-1;font-size:clamp(70px,10.8vw,158px);letter-spacing:-.065em}h1 em{font-weight:400}.intro{grid-column:1;grid-row:2;max-width:630px}.hero-portrait{grid-column:2;grid-row:2;width:100%;}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.contact-actions{display:flex;gap:14px;margin-top:30px}.contact-actions a{padding:12px 25px;border:1px solid var(--ink);font-size:14px;display:inline-flex;align-items:center;gap:24px;transition:background .2s,color .2s}.button-arrow{display:block;width:20px;height:33px;flex:0 0 20px}.text-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.1em}.contact-link{background:var(--ink);color:var(--paper)}.contact-actions a:hover{background:var(--accent);color:var(--paper);border-color:var(--accent);text-decoration:none}.section-label{font-size:13px;text-transform:uppercase;letter-spacing:2px;margin-bottom:32px}.services{padding:65px 0 90px;border-top:1px solid var(--ink)}.service{display:grid;grid-template-columns:1fr 1.25fr;gap:70px;border-top:1px solid var(--line);padding:40px 0;counter-increment:service}.service h2{font-size:clamp(28px,3.5vw,47px);max-width:440px}.service h2:before{content:'0' counter(service);display:block;font:12px Arial;letter-spacing:2px;margin-bottom:24px;color:var(--accent)}.service-copy{max-width:610px}.examples-label{font-size:12px;text-transform:uppercase;letter-spacing:1px;margin:26px 0 10px}.examples{padding:0;list-style:none;margin:0}.examples li{border-top:1px solid var(--line);padding:8px 0;font-size:15px}.examples li:before{content:'↗';margin-right:15px;color:var(--accent)}.work-band{padding:80px 0 100px}.section-intro h2{font-size:clamp(44px,6vw,80px);letter-spacing:-.045em;margin-bottom:50px}.work-list{display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.work-item{padding:32px 0;border-top:1px solid var(--line)}.work-item h3{font-size:32px;letter-spacing:-1px;margin-bottom:18px}.contribution{font-size:14px;font-weight:600;line-height:1.5;max-width:350px}.work-item p:last-child{font-size:16px;line-height:1.75}.about-band{padding:100px 0}.story-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:90px}.about-layout h2,.markets h2{font-size:44px;letter-spacing:-1.5px;margin-bottom:35px}.about-copy p:first-child{font-size:23px;line-height:1.5}.markets{padding:30px;align-self:start}.markets h2{font-size:32px}.markets-copy{font-size:15px}.contact{padding:90px 0 100px;border-top:1px solid var(--line)}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;margin-bottom:30px}.contact-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.contact h2{font-size:clamp(45px,6vw,80px);letter-spacing:-.045em}.contact-layout>div{max-width:490px}footer{padding:25px 0 100px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.concept-nav{position:fixed;bottom:15px;left:50%;transform:translateX(-50%);z-index:20;display:flex;align-items:center;gap:25px;background:#fff;color:#171717;box-shadow:0 4px 28px #0002;border:1px solid #ccc;border-radius:50px;padding:10px 20px;font:12px Arial;white-space:nowrap}.concept-nav span{color:#666}.skip-link{position:absolute;top:-100px;left:20px;z-index:30;background:#fff;color:#000;padding:10px}.skip-link:focus{top:10px}@media(max-width:850px){.wrap{width:calc(100% - 48px)}nav{gap:15px}.hero{gap:30px}.service{gap:35px}.story-layout{gap:35px}.work-list{gap:0 35px}.contact-layout{gap:35px}}@media(max-width:600px){body{font-size:16px}.wrap{width:calc(100% - 40px)}.masthead{align-items:flex-start;flex-direction:column;padding:24px 0;gap:22px}nav{width:100%;justify-content:space-between;font-size:11px;gap:10px}.identity{font-size:24px}.hero{display:flex;flex-direction:column;padding:40px 0 60px;gap:30px}h1{font-size:clamp(42px,10.4vw,65px);letter-spacing:-.065em}.hero-portrait{width:75%;height:300px;align-self:flex-end}.intro{order:3}.services{padding:40px 0}.service{grid-template-columns:1fr;gap:25px;padding:30px 0}.service h2{font-size:34px;max-width:100%}.service h2:before{margin-bottom:16px}.work-band{padding:50px 0}.work-list,.story-layout,.contact-layout{grid-template-columns:1fr}.work-item h3{font-size:29px}.section-intro h2{margin-bottom:30px}.about-band{padding:55px 0}.about-layout h2{font-size:40px}.about-copy p:first-child{font-size:21px}.markets{padding:25px}.contact{padding:50px 0 70px}.concept-nav{gap:12px;padding:12px 16px;font-size:10px;max-width:calc(100% - 20px)}.contact-layout{gap:30px}.contact h2{font-size:52px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

:root{--paper:#f5f1e8;--ink:#243c30;--accent:#b53c29;--line:#b9c1b5}.editorial h1,.editorial h2{font-family:Georgia,'Times New Roman',serif}.editorial h1 em{color:var(--accent);font-style:italic}.editorial .hero{column-gap:100px}.editorial .hero-portrait{height:390px;width:90%;justify-self:end;position:relative;transform:rotate(3deg);border:10px solid #fff;box-shadow:0 12px 30px #263b301a}.editorial .hero-portrait:before{content:'';position:absolute;z-index:-1;inset:18px -28px -22px 18px;border:1px solid var(--accent)}.editorial .intro>p:first-child{font-family:Georgia,serif;font-size:25px;line-height:1.5;letter-spacing:-.3px}.editorial .work-band{background:var(--ink);color:var(--paper);--line:#627468}.editorial .work-item h3{font-family:Georgia,serif;font-size:36px}.editorial .contribution{color:#e4bc87}.editorial .markets{background:#e4e8db;border-top:3px solid var(--ink)}.editorial .markets:before{content:'↗';display:block;font-size:65px;line-height:1;margin-bottom:30px;color:var(--accent)}.editorial .contact h2{font-style:italic;color:var(--accent)}@media(max-width:600px){.editorial .hero-portrait{height:290px;width:76%;margin-right:15px}.editorial .intro>p:first-child{font-size:22px}.editorial .hero{gap:35px}.editorial .work-item h3{font-size:30px}}

/* Review revision: consistent prose and unambiguous decoration. */
.service h2:before,.examples li:before,.editorial .markets:before{content:none;display:none}
.editorial .intro>p:first-child,.editorial .intro>p,.signal .intro>p:first-child,.signal .intro>p{font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.65;letter-spacing:normal}
.about-copy,.about-copy p:first-child,.markets-copy{font-size:17px;line-height:1.65}
.examples{list-style:disc;padding-left:19px}.examples li{padding-left:3px}.examples li::marker{color:currentColor}
.editorial .service{align-items:start}.editorial .service h2{padding-top:3px}

/* Review 3: cooler ground, compact horizontal examples, tighter closing rhythm. */
body.editorial{--paper:#e4ebef;--line:#acbbc2}
.editorial .markets{background:#d4dfe3}
.editorial .section-label{font-family:Georgia,'Times New Roman',serif;font-size:38px;line-height:1.15;text-transform:none;letter-spacing:-1px;margin-bottom:28px}
.editorial .service-copy{display:contents}
.editorial .service{column-gap:50px;row-gap:0;padding:30px 0}
.editorial .service h2{grid-column:1;grid-row:1}
.editorial .service-copy>p:first-child{grid-column:2;grid-row:1;margin:0}
.editorial .examples-label{grid-column:1/-1;margin:22px 0 10px}
.editorial .examples{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;gap:24px}
.editorial .examples li{padding:10px 0 0;font-size:15px;line-height:1.5}
.editorial .about-band{padding-bottom:40px}
.editorial .contact{padding-top:40px;padding-bottom:60px}
@media(max-width:600px){.editorial .section-label{font-size:32px}.editorial .service{display:block}.editorial .service h2{margin-bottom:20px}.editorial .examples{gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.editorial .examples li{font-size:14px}.editorial .about-band{padding-bottom:30px}.editorial .contact{padding-top:30px}}
@media(max-width:360px){.editorial .examples{grid-template-columns:1fr}}
.editorial .hero-portrait{margin-right:16px}
.editorial .hero-portrait:before{right:-16px}

/* Review 4: restore quiet, vertical service examples. */
.editorial .service-copy{display:block;grid-column:2;grid-row:1}
.editorial .service{row-gap:20px}
.editorial .service-copy>p:first-child{margin-bottom:0}
.editorial .examples{display:block;list-style:disc;padding-left:20px;margin:0}
.editorial .examples li{border:0;padding:3px 0 3px 2px;font-size:15px;line-height:1.6}
.editorial .examples-label{margin:22px 0 8px}
.editorial .whatsapp-link{background:#b53c29;border-color:#b53c29;color:#fff}
.editorial .whatsapp-link:hover{background:#8d2e20;border-color:#8d2e20;color:#fff}

/* Review 5: consistent section heading size. */
.editorial .section-intro h2{font-size:38px;line-height:1.15;letter-spacing:-1px}
@media(max-width:600px){.editorial .section-intro h2{font-size:32px}}

/* Review 6: shared subordinate heading scale and square accents. */
.editorial .service h2,.editorial .work-item h3{font-size:clamp(28px,3.5vw,34px);line-height:1.05;font-weight:400;letter-spacing:-1px}
.editorial .examples{list-style:square}
.editorial .examples li::marker{color:var(--accent);font-size:1.15em}
@media(max-width:600px){.editorial .service h2,.editorial .work-item h3{font-size:28px}}
/* Review 7: three aligned service columns on a distinct sage band. */
.editorial .services{width:100%;max-width:none;background:#d8e1d5;border-top:0;padding:60px max(56px,calc((100% - 1320px)/2)) 65px;--line:#a7b6a5}
.editorial .service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(6,auto);column-gap:35px;row-gap:0}
.editorial .service{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-row:span 6;gap:0;min-width:0;padding:30px 0 0}
.editorial .service h2{grid-column:1;grid-row:1;min-height:0;padding:0 0 25px;margin:0}
.editorial .service-copy{display:contents}
.editorial .service-copy>p:first-child{grid-column:1;grid-row:2;margin:0;padding-bottom:25px;font-size:16px}
.editorial .examples-label{grid-column:1;grid-row:3;margin:0;padding-bottom:10px;align-self:end}
.editorial .examples{grid-column:1;grid-row:4/span 3;display:grid;grid-template-rows:subgrid;list-style:square;padding-left:19px;margin:0}
.editorial .examples li{font-size:14px;line-height:1.6;padding:9px 0 9px 2px;border:0}
@media(max-width:1000px) and (min-width:601px){.editorial .service h2{font-size:25px}.editorial .work-item h3{font-size:25px}.editorial .service-grid{column-gap:24px}}
@media(max-width:850px){.editorial .services{padding:50px 24px}}
@media(max-width:600px){.editorial .services{padding:45px 20px}.editorial .service-grid{display:block}.editorial .service{display:block;padding:30px 0}.editorial .service h2{font-size:28px;margin-bottom:22px;padding:0}.editorial .service-copy{display:block}.editorial .service-copy>p:first-child{padding:0;margin-bottom:22px}.editorial .examples{display:block}.editorial .examples-label{padding-bottom:10px}.editorial .work-item h3{font-size:28px}}
@media(min-width:601px){.editorial .examples{grid-template-columns:minmax(0,1fr);gap:0}}
/* Review 8: distinct full-width header and contact bands. */
.editorial .masthead{width:100%;max-width:none;padding-inline:max(56px,calc((100% - 1320px)/2));background:#243c30;color:#e4ebef;border-bottom:0}
.editorial .masthead a:focus-visible{outline-color:#f0ad98}
.editorial .contact{width:100%;max-width:none;padding-inline:max(56px,calc((100% - 1320px)/2));background:#e3c8bd;border-top:0}
.editorial .contact h2{color:#963421}
@media(max-width:850px){.editorial .masthead,.editorial .contact{padding-inline:24px}}
@media(max-width:600px){.editorial .masthead,.editorial .contact{padding-inline:20px}}

/* Review 9: cool slate contact band. */
.editorial .contact{background:#364f60;color:#f0f4f6}
.editorial .contact h2{color:#f0f4f6}
.editorial .contact .contact-link{background:#e4ebef;border-color:#e4ebef;color:#243c30}
.editorial .contact .contact-link:hover{background:#cbd8df;border-color:#cbd8df;color:#243c30}
.editorial .contact a:focus-visible{outline-color:#f0f4f6}

/* Review 10: contact integrated into the dark-green site footer. */
.editorial .site-footer{display:block;background:#243c30;color:#e4ebef;border:0;padding:0;font-size:17px}
.editorial .site-footer .contact{background:transparent;color:inherit;padding-top:48px;padding-bottom:42px}
.editorial .site-footer .contact h2{color:#e4ebef}
.editorial .footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #627468;padding:18px 0;font-size:12px}
.editorial .site-footer a:focus-visible{outline-color:#f0ad98}
@media(max-width:600px){.editorial .site-footer .contact{padding-top:36px;padding-bottom:32px}}

/* Stage portrait: the personal story and performance share the opening. */
.story-layout{grid-template-columns:minmax(0,1fr);gap:45px}
.about-layout{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.5fr);column-gap:60px;row-gap:30px;align-items:start}
.about-layout>h2{grid-column:1/-1;margin-bottom:0}
.about-portrait{grid-column:1;grid-row:2;margin:0}
.about-portrait img{width:100%;height:auto;display:block}
.about-copy{grid-column:2;grid-row:2}
.markets{display:grid;grid-template-columns:minmax(200px,.85fr) minmax(0,1.5fr);gap:60px;width:100%}
.markets h2{margin:0}
.markets-copy{columns:2;column-gap:30px}
.markets-copy p{break-inside:avoid}
.editorial .about-portrait{padding:8px;background:#f0f4f5;box-shadow:0 8px 24px #243c3015}
@media(max-width:1000px){.about-layout{grid-template-columns:minmax(220px,.9fr) minmax(0,1.4fr);column-gap:32px}.markets{grid-template-columns:1fr;gap:22px}.markets-copy{columns:2}}
@media(max-width:600px){.about-layout{grid-template-columns:1fr;gap:26px}.about-layout>h2{grid-column:1}.about-portrait{grid-column:1;grid-row:2;width:min(100%,360px)}.about-copy{grid-column:1;grid-row:3}.markets{display:block}.markets h2{margin-bottom:22px}.markets-copy{columns:auto}.story-layout{gap:32px}}

/* Align the portrait with the biography without distorting the image. */
@media(min-width:601px){
.about-layout{align-items:stretch}
.about-portrait{position:relative;align-self:stretch;min-height:0}
.about-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:56% 0%}
.editorial .about-portrait{padding:0;border:8px solid #f0f4f5}
}
.editorial .about-portrait{position:relative;isolation:isolate}
.editorial .about-portrait:before{content:'';position:absolute;inset:12px -16px -16px 12px;border:1px solid var(--accent);z-index:-1;pointer-events:none}
.editorial .markets{border-top:0}
@media(max-width:600px){.editorial .about-portrait{width:min(calc(100% - 16px),360px)}.about-portrait img{position:static;width:100%;height:auto}}
/* Editorial refinement: restrained framing, display scale and readable lists. */
.editorial .hero-portrait,.editorial .about-portrait{transform:none;box-shadow:none;border:8px solid #fff;padding:0;isolation:isolate}
.editorial .hero-portrait:before,.editorial .about-portrait:before{content:'';position:absolute;inset:0;border:1px solid var(--accent);transform:translate(14px,14px);z-index:-1;pointer-events:none}
.editorial .hero-portrait img,.editorial .about-portrait img{filter:none;mix-blend-mode:normal}
.editorial h1{font-size:clamp(61.6px,9.504vw,139.04px)}
.editorial .examples li{font-size:16px;line-height:1.55;padding:6px 0 6px 2px}
.editorial .examples-label{font-size:13px;line-height:1.45;letter-spacing:.65px;margin:0;padding-bottom:6px}
.editorial .service-copy>p:first-child{padding-bottom:28px}
@media(max-width:600px){.editorial h1{font-size:clamp(36.96px,9.152vw,57.2px)}.editorial .service-copy>p:first-child{padding-bottom:0;margin-bottom:26px}.editorial .examples-label{margin:0;padding-bottom:6px}.editorial .examples li{font-size:16px;line-height:1.55;padding-block:5px}}

/* Natural hero portrait proportions: retain the full original composition. */
.editorial .hero-portrait{height:auto;align-self:start}
.editorial .hero-portrait img{width:100%;height:auto;object-fit:contain;object-position:center;filter:none;mix-blend-mode:normal}
@media(max-width:600px){.editorial .hero-portrait{align-self:flex-end}}

/* Keep the natural portrait from dominating wider hero layouts. */
.editorial .hero-portrait{max-width:300px}

/* Keep the hero copy and portrait grouped on wider screens. */
@media(min-width:1001px){
.editorial .hero{grid-template-columns:minmax(0,1fr) 330px;column-gap:clamp(64px,7vw,112px);justify-content:stretch}
.editorial .hero-portrait{width:100%;justify-self:start;margin-right:0}
}

.identity span{line-height:1.5;max-width:100%}
@media(min-width:601px) and (max-width:1000px){.masthead{flex-wrap:wrap;row-gap:20px}.masthead nav{margin-left:auto}}
@media(max-width:600px){.identity span{font-size:10px;letter-spacing:.7px}}

/* Anchor the portrait at the content edge, allowing for its rust outline. */
.editorial .hero-portrait{max-width:330px}
@media(min-width:1001px){.editorial .hero-portrait{justify-self:end;width:calc(100% - 6px);margin-right:6px}}

/* Mobile-only: smaller centered portraits. */
@media(max-width:600px){
.editorial .hero-portrait{width:57%;max-width:247.5px;height:auto;align-self:center;margin-inline:auto}



}

/* Mobile navigation: readable labels and generous tap height. */
@media(max-width:600px){
.masthead nav{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;width:100%;gap:4px;font-size:14px;line-height:20px}
.masthead nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 0;white-space:nowrap;flex:0 0 auto}
.masthead nav a:last-child{padding:12px 0;border-bottom:0}
.masthead nav a span{display:none}
}

/* Compact persistent navigation appears after the full header leaves view. */
html{scroll-padding-top:76px}
.editorial section{scroll-margin-top:0}
.editorial .compact-header{position:fixed;inset:0 0 auto;z-index:50;background:#243c30;color:#e4ebef;border-bottom:1px solid #627468}
.editorial .compact-header[hidden]{display:none}
.compact-header-inner{width:min(1320px,calc(100% - 112px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:60px}
.compact-name{font-size:22px;font-weight:600;letter-spacing:-.7px;white-space:nowrap}
.compact-header nav{display:flex;align-items:center;gap:28px;font-size:14px;line-height:20px}
.compact-header nav a{display:inline-flex;align-items:center;min-height:44px;padding:12px 0;white-space:nowrap;border:0}
.compact-header nav a span{display:none}
.compact-header a:focus-visible{outline-color:#f0ad98}
.editorial .concept-nav{position:static;transform:none;width:fit-content;margin:18px auto;box-shadow:none}
@media(max-width:850px){.compact-header-inner{width:calc(100% - 48px)}.compact-header nav{gap:16px}}
@media(max-width:600px){html{scroll-padding-top:60px}.compact-header-inner{width:calc(100% - 40px);min-height:48px;display:block}.compact-name{display:none}.compact-header nav{width:100%;justify-content:space-between;flex-wrap:nowrap;gap:4px;font-size:14px}.compact-header nav a{min-height:48px;padding:14px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Allow the additional contact option to wrap comfortably. */
.editorial #contact .contact-actions{flex-wrap:wrap}
.editorial #contact .contact-heading{max-width:none}
.editorial #contact .linkedin-link{display:inline-flex;align-items:center;min-height:44px;margin-top:14px;color:inherit;font-size:15px;text-decoration:underline;text-underline-offset:4px}
.editorial #contact .linkedin-link:hover{text-decoration-thickness:2px}

/* Align the secondary contact link with the primary actions. */
.editorial #contact .contact-layout{grid-template-areas:"heading copy" "linkedin buttons";row-gap:30px;align-items:start}
.editorial #contact .contact-heading,.editorial #contact .contact-layout>div:not(.contact-heading){display:contents}
.editorial #contact h2{grid-area:heading}
.editorial #contact .contact-layout>div>p{grid-area:copy;margin:0}
.editorial #contact .contact-actions{grid-area:buttons;margin-top:0}
.editorial #contact .linkedin-link{grid-area:linkedin;align-self:end;justify-self:start;margin-top:0;align-items:flex-end}
@media(max-width:600px){
.editorial #contact .contact-layout{grid-template-areas:"heading" "copy" "buttons" "linkedin";row-gap:24px}
}
