:root{--sand:#f3ece3;--sand-2:#e8dccd;--clay:#cfb9a4;--ink:#2b3434;--ink-soft:#5b6564;--sea:#3e6a6e;--white:#fffdf9;--display:'Cormorant Garamond',Georgia,serif;--body:'Lato',system-ui,sans-serif;--wrap:1120px;--gutter:clamp(20px,5vw,48px)}
*,*::before,*::after{box-sizing:border-box}
:where(html,body,h1,h2,p,ul,figure){margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--sand);color:var(--ink);font-family:var(--body);font-weight:300;font-size:clamp(17px,1.1vw + 12px,19px);line-height:1.7;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.eyebrow{font-family:var(--body);font-weight:400;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--sea);margin-bottom:1rem}
.eyebrow--light{color:var(--sand-2)}
.hero{position:relative;min-height:100svh;display:flex;align-items:center;color:var(--white);background:linear-gradient(180deg,rgba(22,40,44,.22) 0%,rgba(22,40,44,.46) 50%,rgba(22,40,44,.64) 100%),var(--hero) 50% 50%/cover no-repeat,var(--sea)}
.hero__inner{text-shadow:0 1px 18px rgba(10,20,22,.25);text-align:center;padding-top:clamp(56px,8vh,96px);padding-bottom:clamp(56px,8vh,96px)}
.hero__kicker{font-family:var(--display);font-style:italic;font-size:clamp(1.1rem,1.4vw + .6rem,1.5rem);opacity:.9;margin-bottom:.4rem}
.hero__name{font-family:var(--display);font-weight:500;font-size:clamp(3rem,7vw + 1rem,6.5rem);line-height:.95;letter-spacing:-.01em}
.hero__lead{margin-top:1.1rem;font-weight:400;font-size:clamp(1.05rem,.8vw + .8rem,1.3rem)}
.hero__titles{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 0;margin:1.6rem 0 2.2rem;font-size:.68rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;opacity:.92}
.hero__titles li{white-space:nowrap}
.hero__titles li:not(:last-child)::after{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.7;margin:0 .9rem;vertical-align:middle}
.btn{display:inline-block;padding:.9rem 1.8rem;border:1px solid rgba(255,253,249,.85);border-radius:999px;text-decoration:none;font-size:.82rem;font-weight:400;letter-spacing:.16em;text-transform:uppercase;transition:background .3s,color .3s}
.btn:hover,.btn:focus-visible{background:var(--white);color:var(--ink)}
.about{padding:clamp(80px,12vw,160px) 0}
.about__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(40px,7vw,110px);align-items:center}
.about__photo{position:relative}
.about__photo::before{content:"";position:absolute;inset:-18px 18px 18px -18px;background:var(--sand-2);border-radius:10px;z-index:0}
.about__photo img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:10px}
.about__text h2{font-family:var(--display);font-weight:500;font-size:clamp(2.2rem,3vw + 1rem,3.4rem);line-height:1.05;margin-bottom:1.6rem}
.about__text p+p{margin-top:1.1rem}
.about__text{text-align:center}
.about__text p:not(.eyebrow){color:var(--ink-soft);max-width:46ch;margin-left:auto;margin-right:auto}
.contact{color:var(--white);text-align:center;padding:clamp(90px,14vw,180px) 0;background:linear-gradient(rgba(30,52,55,.55),rgba(30,52,55,.55)),var(--seaimg) center/cover no-repeat,var(--sea)}
.contact h2{font-family:var(--display);font-weight:500;font-size:clamp(2.4rem,4vw + 1rem,4rem);line-height:1.05;margin-bottom:1.4rem}
.contact__mail{font-size:clamp(1.05rem,1vw + .8rem,1.35rem);font-weight:400;letter-spacing:.02em;text-decoration:none;border-bottom:1px solid rgba(255,253,249,.6);padding-bottom:.2rem;word-break:break-word}
.contact__mail:hover{border-bottom-color:var(--white)}
.foot{background:var(--sand);font-size:.8rem;letter-spacing:.06em;color:var(--ink-soft);padding:28px 0}
.foot__inner{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.foot a{text-decoration:none}
.foot a:hover{text-decoration:underline}
@media (max-width:760px){.about__grid{grid-template-columns:1fr}.about__photo{width:calc(100% - 18px);max-width:380px;margin:18px auto 0;left:9px}.hero__titles{flex-direction:column;align-items:center}.hero__titles li:not(:last-child)::after{display:none}}
/* Portfolio */
.work{padding:0 0 clamp(80px,12vw,160px);text-align:center}
.work h2{font-family:var(--display);font-weight:500;font-size:clamp(2.2rem,3vw + 1rem,3.4rem);line-height:1.05;margin:0 0 clamp(40px,5vw,72px)}
.work .wp-block-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,4vw,64px);margin:0 0 clamp(40px,5vw,72px)}
.work .wp-block-column{min-width:0}
.work figure{margin:0 0 1.2rem}
.work figure a{border:0;padding:0;display:block}
.work figure a img{transition:transform .6s ease}
.work figure a:hover img{transform:scale(1.015)}
.work figure img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;border-radius:10px;background:var(--sand-2)}
.work h3{font-family:var(--display);font-weight:500;font-size:clamp(1.5rem,1vw + 1.1rem,1.9rem);line-height:1.1;margin:0 0 .4rem}
.work p{margin:0;color:var(--ink-soft)}
.work p+p{margin-top:.5rem}
.work a{color:var(--sea);text-decoration:none;font-weight:400;letter-spacing:.04em;border-bottom:1px solid rgba(62,106,110,.35);padding-bottom:1px}
.work a:hover{border-bottom-color:var(--sea)}
.work .has-small-font-size,.work .ew-clients{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}
.work hr{border:0;border-top:1px solid rgba(43,52,52,.12);max-width:120px;margin:0 auto clamp(32px,4vw,56px)}
@media (max-width:760px){.work .wp-block-columns{grid-template-columns:1fr}}
