@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&display=swap');
:root{--kw-green:#344536;--kw-charcoal:#191B18;--kw-gold:#A58B50;--kw-white:#F7F4ED}
.kw-site-header{position:relative;z-index:99;background:#fbf9f4;border-bottom:1px solid rgba(52,69,54,.12);font-family:'DM Sans',Arial,sans-serif}
.kw-header-inner{max-width:1240px;width:calc(100% - 48px);min-height:78px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px}
.kw-brand{display:flex;align-items:center;gap:11px;color:#252820;text-decoration:none;font-weight:700;font-size:12px;letter-spacing:.15em;line-height:1.2}
.kw-brand small{display:block;font-size:8px;letter-spacing:.2em;color:#8d7845;margin-top:5px}
.kw-brand-mark{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--kw-green);border:1px solid var(--kw-gold);color:#e4d4a7;font:20px 'Playfair Display',serif}
.kw-nav{display:flex;align-items:center;gap:clamp(10px,1.5vw,22px)}
.kw-nav a{font-size:11px;color:#5f6058;text-decoration:none;white-space:nowrap}
.kw-nav a:hover{color:var(--kw-gold)}
.kw-header-cta{padding:11px 18px;border-radius:30px;background:var(--kw-green);color:#fff;text-decoration:none;font-size:11px;white-space:nowrap}
.kw-menu-toggle{display:none;border:1px solid #d7d1c4;border-radius:30px;background:transparent;padding:8px 13px;color:var(--kw-green)}
.kw-portfolio{font-family:'DM Sans',Arial,sans-serif;color:#292a25;background:#f7f4ed;line-height:1.7}
.kw-portfolio *{box-sizing:border-box}
.kw-portfolio .container{width:min(1160px,calc(100% - 48px));margin:auto}
.kw-portfolio .hero{width:100%;max-width:1240px;margin:auto;padding:64px clamp(24px,5vw,70px);min-height:520px;display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:5vw;background:#faf8f2;border-radius:0 0 26px 26px}
.kw-portfolio .hero h1,.kw-portfolio .page-intro h1{font:500 clamp(2.7rem,5.8vw,5.4rem)/1.06 'Playfair Display',Georgia,serif;color:#252720;margin:15px 0}
.kw-portfolio h1 em,.kw-portfolio h2 em{color:var(--kw-green)}
.kw-portfolio .eyebrow,.kw-portfolio .card-no,.kw-portfolio .meta{color:#8c7845;text-transform:uppercase;letter-spacing:.16em;font-size:10px}
.kw-portfolio .lead{color:#68695f;font-size:15px;line-height:1.85;max-width:720px}
.kw-portfolio .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0}
.kw-portfolio .button{display:inline-flex;padding:11px 20px;border-radius:30px;background:var(--kw-green);border:1px solid var(--kw-green);color:#fff;text-decoration:none;font-size:11px}
.kw-portfolio .button.secondary{background:transparent;color:var(--kw-green)}
.kw-portfolio .tag-list{display:flex;flex-wrap:wrap;gap:8px}
.kw-portfolio .tag{border:1px solid rgba(52,69,54,.18);border-radius:30px;padding:6px 12px;color:#555b50;font-size:11px}
.kw-portfolio .portrait-frame{position:relative;overflow:hidden;max-width:470px;aspect-ratio:4/4.7;border-radius:48% 48% 20px 20px;background:#d9d2c2;box-shadow:0 20px 45px #292a2518}
.kw-portfolio .portrait-photo{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.kw-portfolio .portrait-caption{position:absolute;left:18px;right:18px;bottom:18px;padding:14px 16px;border-radius:14px;background:#1c221be8;color:#fff}
.kw-portfolio .portrait-caption small{display:block;color:#d8c28b;font-size:9px;letter-spacing:.15em;text-transform:uppercase}
.kw-portfolio .portrait-caption strong{display:block;font:500 20px 'Playfair Display',serif}
.kw-portfolio .portrait-caption span{font-size:10px;color:#e5e2d9}
.kw-portfolio .statement{max-width:1240px;margin:22px auto;padding:55px clamp(24px,5vw,70px);background:#89866b;color:#fff;border-radius:22px}
.kw-portfolio .statement blockquote{font:500 clamp(1.7rem,3.4vw,3rem)/1.25 'Playfair Display',serif;color:#fff;margin:18px 0}
.kw-portfolio .statement blockquote span{color:#f1dfad}
.kw-portfolio .section{padding:65px 0;border-top:1px solid rgba(48,61,48,.1)}
.kw-portfolio .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}
.kw-portfolio .section-head h2,.kw-portfolio h2{font:500 clamp(2rem,3.8vw,3.2rem)/1.15 'Playfair Display',Georgia,serif;color:#292a25;margin:8px 0 15px}
.kw-portfolio .section-head p{max-width:430px;color:#74756b;font-size:13px}
.kw-portfolio .grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.kw-portfolio .feature-card{position:relative;display:block;min-height:220px;padding:25px;border:1px solid rgba(57,65,50,.12);border-radius:17px;background:#fbf9f4;box-shadow:0 10px 30px #322d230a;color:#30332c;text-decoration:none}
.kw-portfolio .feature-card h3{font:500 23px 'Playfair Display',serif;color:#30352d;margin:14px 0 8px}
.kw-portfolio .feature-card p,.kw-portfolio .prose,.kw-portfolio .timeline-item p{color:#65675e;font-size:13px}
.kw-portfolio .text-link{color:#806c40;font-size:11px;text-decoration:none}
.kw-portfolio .content-grid{display:grid;grid-template-columns:1.5fr .8fr;gap:48px;align-items:start}
.kw-portfolio .side-panel,.kw-portfolio .quote-panel{padding:28px;border-radius:18px;background:#eeeadf;border:1px solid rgba(57,65,50,.12)}
.kw-portfolio .quote-panel{background:#303d31;color:#f8f5ed}
.kw-portfolio .quote-panel p{color:#f8f5ed;font:500 23px/1.45 'Playfair Display',serif}
.kw-portfolio .quote-panel small{color:#d6c18c}
.kw-portfolio .list-clean{list-style:none;padding:0;margin:15px 0}
.kw-portfolio .list-clean li{padding:11px 0;border-bottom:1px solid rgba(57,65,50,.12);color:#62645b;font-size:13px}
.kw-portfolio .timeline{border-left:1px solid #b69d65;padding-left:25px;margin:30px 0}
.kw-portfolio .timeline-item{position:relative;padding:0 0 25px}
.kw-portfolio .timeline-item:before{content:"";position:absolute;left:-31px;top:6px;width:11px;height:11px;border-radius:50%;background:var(--kw-gold);box-shadow:0 0 0 5px #a58b5020}
.kw-portfolio .timeline-item h3{font:500 22px 'Playfair Display',serif;color:#30352d;margin:7px 0}
.kw-portfolio .skill-group{padding:22px 0;border-top:1px solid rgba(57,65,50,.15)}
.kw-portfolio .skill-group h3{font:500 23px 'Playfair Display',serif;color:#30352d}
.kw-portfolio .profile-photo-inline{width:100%;max-height:460px;object-fit:cover;object-position:center 25%;border:1px solid #a58b5080;border-radius:18px;padding:7px;background:#fbf9f4}
.kw-portfolio .contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:50px}
.kw-portfolio .form label{display:block;margin:14px 0;color:#4e534a;font-size:12px}
.kw-portfolio .form input,.kw-portfolio .form textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #cfcabd;border-radius:9px;background:#faf8f2;color:#292a25}
.kw-portfolio .form textarea{min-height:120px}
.kw-portfolio .form-note{color:#77786e;font-size:11px}
.kw-portfolio .gold-rule{height:1px;background:linear-gradient(90deg,var(--kw-gold),transparent);margin:22px 0}
.kw-site-footer{margin:35px auto 15px;width:min(1240px,calc(100% - 32px));border-radius:20px;background:#191b18;color:#e9e5da;font:12px 'DM Sans',Arial,sans-serif;overflow:hidden}
.kw-footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;padding:35px}
.kw-footer-main>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.kw-footer-main a{color:#dedbd1;text-decoration:none}
.kw-footer-main strong{color:#d6c18c;letter-spacing:.12em;text-transform:uppercase;font-size:9px}
.kw-footer-main p{color:#c2c0b5}
.kw-footer-bottom{border-top:1px solid #ffffff20;padding:16px 35px;color:#aaa99f;font-size:10px}
@media(max-width:900px){.kw-nav{gap:9px}.kw-nav a{font-size:10px}.kw-header-cta{display:none}.kw-portfolio .hero{gap:25px}.kw-portfolio .grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.kw-header-inner{width:calc(100% - 30px);min-height:68px}.kw-menu-toggle{display:block}.kw-nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fbf9f4;padding:15px 22px 20px;box-shadow:0 15px 25px #00000012;flex-direction:column;align-items:flex-start}.kw-nav.kw-open{display:flex}.kw-portfolio .hero{grid-template-columns:1fr;padding:42px 22px}.kw-portfolio .portrait-frame{max-width:340px;margin:auto}.kw-portfolio .grid-3{grid-template-columns:1fr}.kw-portfolio .content-grid,.kw-portfolio .contact-grid{grid-template-columns:1fr;gap:25px}.kw-portfolio .section{padding:45px 0}.kw-portfolio .section-head{display:block}.kw-footer-main{grid-template-columns:1fr 1fr;padding:25px}.kw-footer-main>div:first-child{grid-column:1/-1}}
