:root{--forest:#14382d;--forestdeep:#0a2721;--cream:#f7f5ef;--sand:#eae6dc;--gold:#cdbb97;--ink:#26392e;--sub:#73796e;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}::selection{background:var(--gold);color:var(--forest)}.skip{position:absolute;top:-80px;left:16px;z-index:50;background:white;padding:12px}.skip:focus{top:10px}
.announcement{background:var(--forestdeep);color:#eeeade;text-align:center;font-size:9px;font-weight:600;letter-spacing:2.6px;padding:11px 10px}.ann-sep{color:var(--gold);margin:0 16px}.header{height:89px;display:flex;justify-content:space-between;align-items:center;padding:0 max(5vw,25px);background:var(--cream);position:relative;z-index:10}.brand{display:flex;flex-direction:column;align-items:center;color:var(--forest);line-height:1}.wordmark{font:600 47px/.86 var(--serif);letter-spacing:.19em;padding-left:.19em}.brand-small{font-size:8px;letter-spacing:2.7px;padding-top:12px}.navigation{display:flex;align-items:center;gap:39px;font-size:10px;font-weight:600;letter-spacing:1.15px;text-transform:uppercase}.navigation>a:not(.nav-cta){padding:16px 0}.navigation>a:hover,.text-link:hover{color:#8c825e}.nav-cta{background:var(--forest);color:white;padding:16px 19px;white-space:nowrap}.nav-cta span{margin-left:14px}.nav-toggle{display:none}
.hero{min-height:685px;position:relative;color:white;overflow:hidden;background:#234d48}.hero-image,.hero-scrim{position:absolute;inset:0}.hero-image{background:url('https://static.wixstatic.com/media/8d3fd4_bd46405870614294ba75720f250d7102~mv2.jpg') center 48%/cover no-repeat;transform:scale(1.018)}.hero-scrim{background:linear-gradient(90deg,rgba(4,25,23,.85) 0%,rgba(4,25,23,.54) 44%,rgba(4,25,23,.09) 100%),linear-gradient(0deg,rgba(4,25,23,.46),transparent 32%)}.hero-content{position:relative;z-index:1;padding:139px max(7.5vw,28px) 140px;max-width:1040px}.eyebrow,.micro{font-size:10px;letter-spacing:3px;font-weight:600}.eyebrow.light{color:#e5e1d8;display:flex;align-items:center;gap:15px}.eyebrow i{display:inline-block;width:25px;height:1px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,blockquote{font-family:var(--serif);font-weight:500}h1{font-size:clamp(66px,7.6vw,118px);line-height:.9;letter-spacing:-2px;margin:27px 0 31px}h1 em,h2 em,blockquote em{font-weight:400} .hero-content>p{max-width:410px;font-size:14px;line-height:2;color:#f0eee9;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;padding:19px 24px;min-width:210px;border:1px solid transparent;font-size:10px;letter-spacing:1.8px;text-transform:uppercase;font-weight:700;transition:all .2s}.button-light{background:var(--cream);color:var(--forest)}.button:hover{transform:translateY(-2px)}.button-light:hover{background:white}.hero-bottom{position:absolute;bottom:25px;left:7.5%;right:7.5%;z-index:1;display:flex;justify-content:space-between;letter-spacing:2.4px;font-size:9px;color:#e6e4d9}
.section{padding:112px 8.5%}.section-tag{display:flex;gap:26px;align-items:center;font-size:10px;letter-spacing:2.5px;color:#606e5e;font-weight:600}.section-tag span{font-size:10px;color:#9b8e72}.intro-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:10%;margin-top:35px}.intro h2,.services h2,.area h2,.contact h2,.exp-content h2{font-size:clamp(52px,6vw,83px);line-height:.96;letter-spacing:-1.2px;margin:0}.intro-aside{padding-top:6px;max-width:390px}.intro-aside p,.area p{font-size:13px;line-height:2.1;color:#6b7369}.intro-aside .lead{color:var(--forest);font-size:17px;line-height:1.7}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:1.8px;border-bottom:1px solid #a4a591;padding-bottom:10px;display:inline-block;margin-top:13px}.text-link span{margin-left:20px}
.image-interlude{height:420px;background:linear-gradient(90deg,rgba(12,35,31,.68),rgba(12,35,31,.07)),url('https://static.wixstatic.com/media/8d3fd4_bd277e472fab40229a6a21650184f6f9~mv2.jpg') center 51%/cover no-repeat;position:relative;color:#fff}.interlude-quote{position:absolute;top:50%;left:10%;transform:translateY(-50%)}.interlude-quote .micro{color:#e5dcc9}.interlude-quote p{font:400 clamp(49px,6vw,77px)/.98 var(--serif);margin:22px 0}
.services{background:#f0eee7}.section-heading{display:flex;justify-content:space-between;gap:8%;align-items:end;margin:35px 0 55px}.section-heading>p{max-width:350px;line-height:2.1;color:#6b7369;font-size:13px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c8cec4;border-left:1px solid #c8cec4}.service-card{min-height:300px;padding:25px 25px 31px;border-bottom:1px solid #c8cec4;border-right:1px solid #c8cec4;transition:background .25s}.service-card:hover{background:#e9e6db}.service-num{font-size:10px;letter-spacing:1.4px;color:#84907f}.service-symbol{height:79px;display:flex;align-items:center;color:#7f8677;font-size:35px}.service-card h3{font:500 31px/1 var(--serif);margin:9px 0 13px}.service-card p{font-size:12px;color:#777e72;line-height:1.9;margin:0}.service-note{font-size:11px;line-height:1.8;color:#777e72;margin:27px 0 0;max-width:830px}
.experience{display:grid;grid-template-columns:1fr 1fr;min-height:690px;background:var(--forest)}.exp-media{background:url('https://static.wixstatic.com/media/8d3fd4_d8bb3eccb5b34e61831c35fba2802666~mv2.jpg') center/cover no-repeat}.exp-content{padding:85px min(8vw,105px);color:#f3f0e9}.section-tag.pale{color:#dbd9d0}.exp-content h2{margin:32px 0 51px}.exp-step{display:flex;gap:30px;border-top:1px solid #527163;padding:18px 0}.exp-step>span{font-size:11px;color:var(--gold)}.exp-step h3{font:500 29px/1.05 var(--serif);margin:0 0 6px}.exp-step p{font-size:12px;line-height:1.8;color:#c1cec4;margin:0}.button-outline{margin-top:29px;border-color:#adb9aa;color:#fff;background:transparent}.button-outline:hover{background:#234b3e}
.quote-section{text-align:center;padding:118px 25px;background:var(--sand)}.quote-section>span{font-size:10px;letter-spacing:3px;color:#7c8171}.quote-section blockquote{margin:28px 0 23px;font-size:clamp(48px,6vw,85px);line-height:1;letter-spacing:-1px}.quote-section p{font-size:12px;color:#7e8378;letter-spacing:.3px}
.area-inner{display:grid;grid-template-columns:1fr .72fr;align-items:center;gap:14%;margin-top:40px}.area-inner p{max-width:410px}
.contact{background:var(--forestdeep);color:#efeee7}.contact-head{display:grid;grid-template-columns:1fr .4fr;gap:13%;align-items:end}.contact h2{margin-top:39px;font-size:clamp(60px,6vw,82px)}.contact-head>div>p{font-size:13px;line-height:2;max-width:460px;color:#c0cbc0;margin:28px 0 0}.contact-aside{padding-bottom:10px}.contact-aside .micro{color:var(--gold)}.contact-aside p{line-height:1.9;color:#c6d0c6}.contact-aside>span:last-child{font-size:10px;letter-spacing:1.5px;color:#a7b4a6}.contact-rule{height:1px;background:#476055;margin:22px 0}.form-shell{background:var(--cream);color:var(--forest);padding:39px 5%;margin-top:65px;max-width:1020px}.form-top{display:flex;justify-content:space-between;font-size:10px;font-weight:600;letter-spacing:2px;border-bottom:1px solid #d1d5c9;padding-bottom:25px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 27px;padding-top:25px}.form-field{min-width:0}.form-field.wide{grid-column:1/-1}.form-field label{display:block;font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:9px}.form-field label span{color:#9b7b54}.form-field input,.form-field textarea,.form-field select{display:block;background:#fff;border:1px solid #d6d9d0;border-radius:0;color:var(--forest);width:100%;padding:15px 14px;min-height:51px;outline:none;font-size:13px}.form-field textarea{min-height:130px;resize:vertical}.form-field input:focus,.form-field textarea:focus{border-color:#395e4b;box-shadow:0 0 0 2px #d8e3d7}.field-error,.form-error{color:#9e4231;font-size:11px;line-height:1.6}.form-error{margin:12px 0}.form-loading{grid-column:1/-1;color:#707b6e}.button-dark{background:var(--forest);color:#fff;margin-top:28px}.button-dark:disabled{opacity:.48;cursor:not-allowed;transform:none}.form-success{padding:35px 0;color:var(--forest);font:400 33px var(--serif)}.privacy-line{color:#868d7d;font-size:10px;line-height:1.8;max-width:720px;margin:20px 0 0}.footer{background:#0a211c;color:#f3f2e9;padding:67px 8.5% 24px}.footer-main{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:30px;padding-bottom:75px}.footer-logo{font:500 60px/.8 var(--serif);letter-spacing:.2em}.footer-brand-sub{display:block;font-size:9px;letter-spacing:2.8px;margin-top:12px}.footer-main p{font:400 29px/1.15 var(--serif);margin:0}.footer-main>a:last-child{border-bottom:1px solid #c1cabc;padding-bottom:11px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.footer-bottom{border-top:1px solid #42574b;padding-top:20px;display:flex;gap:16px;justify-content:space-between;color:#b0bbae;font-size:9px;letter-spacing:1.7px}
@media(max-width:1080px){.navigation{gap:18px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:250px}.exp-content{padding:72px 7%}}
@media(max-width:760px){.announcement{font-size:8px;letter-spacing:1px}.ann-sep{margin:0 7px}.header{height:77px;padding:0 24px}.wordmark{font-size:41px}.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:none;width:44px;height:44px}.nav-toggle span{height:1px;background:var(--forest);width:28px}.navigation{display:none;position:absolute;top:77px;left:0;right:0;background:var(--cream);padding:20px 25px 27px;align-items:stretch;flex-direction:column;gap:3px;box-shadow:0 15px 20px #0002}.navigation.open{display:flex}.navigation>a{padding:14px 0!important}.navigation .nav-cta{padding:17px!important;text-align:center}.hero{min-height:645px}.hero-content{padding:135px 29px 120px}.hero-image{background-position:57% center}.hero-scrim{background:linear-gradient(90deg,rgba(4,25,23,.84),rgba(4,25,23,.34))}.hero h1{font-size:clamp(64px,12vw,89px)}.hero-bottom{left:29px;right:29px;gap:15px;font-size:8px;letter-spacing:1px}.hero-bottom>span:last-child{display:none}.section{padding:80px 27px}.intro-grid,.area-inner{grid-template-columns:1fr;gap:29px}.intro-grid{margin-top:35px}.intro h2,.services h2,.area h2,.exp-content h2,.contact h2{font-size:62px}.intro-aside{max-width:100%}.image-interlude{height:350px}.interlude-quote{left:30px}.section-heading{display:block}.section-heading p{margin-top:26px}.experience{grid-template-columns:1fr}.exp-media{min-height:320px}.exp-content{padding:78px 27px 87px}.exp-content h2{margin-bottom:35px}.quote-section{padding:88px 25px}.contact-head{grid-template-columns:1fr;gap:34px}.contact h2{margin:25px 0 0}.contact-aside{max-width:470px}.form-shell{padding:24px 20px;margin-top:43px}.footer{padding:55px 27px 24px}.footer-main{grid-template-columns:1fr;gap:29px;padding-bottom:48px}.footer-bottom{flex-wrap:wrap}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:470px){.service-grid{grid-template-columns:1fr}.service-card{min-height:235px}.fields{grid-template-columns:1fr}.form-top{font-size:9px;letter-spacing:1px}.form-top span:last-child{display:none}.hero h1{font-size:65px}.intro h2,.services h2,.area h2,.exp-content h2,.contact h2{font-size:54px}.quote-section blockquote{font-size:56px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Visual direction adapted from the owner's earlier Wix site: golden header, ivory-gold canvas,
   cocoa typography, circular medallion logo and a personal portrait hero. */
:root { --forest:#3b251a; --forestdeep:#321e14; --cream:#faf0d8; --sand:#efd7a1; --gold:#b58b47; --ink:#302016; --sub:#776348; }
body { background:#f9f0dc; color:#302016; }
.announcement { background:#ad884a; color:#2f1d11; font:500 10px/1.1 var(--serif); letter-spacing:3.1px; }
.ann-sep { color:#443022; }
.header { min-height:203px; height:auto; padding:23px 6%; background:#bd9859; gap:4%; position:relative; isolation:isolate; }
.header::before { content:""; position:absolute; z-index:-1; inset:0; opacity:.09; pointer-events:none; background:radial-gradient(ellipse at 56% 85%,transparent 15%,#51361e 16%,transparent 18%), radial-gradient(ellipse at 56% 20%, transparent 12%, #51361e 13%, transparent 15%),repeating-radial-gradient(circle at 56% 50%,transparent 0 37px,#51361e 38px 40px,transparent 41px 69px); }
.brand { display:flex; flex:0 0 168px; width:168px; height:168px; border:3px double #3d2717; border-radius:100%; box-shadow:inset 0 0 0 7px #bd9859,inset 0 0 0 8.5px #3d2717,0 2px 0 #fff3; justify-content:center; align-items:center; padding:18px 10px; text-align:center; background:radial-gradient(circle at center,#f0d89d,#c59c5a 70%); transform:rotate(-4deg); color:#352015; }
.brand:hover { color:#352015; }
.brand::before { content:"✧"; display:block; position:absolute; top:18px; font-size:19px; }
.brand::after { content:"✧"; position:absolute; bottom:17px; font-size:15px; }
.wordmark { font:italic 600 45px/.9 var(--serif); letter-spacing:.01em; padding:8px 0 0; }
.brand-small { font:600 9px/1.2 var(--serif); letter-spacing:1.25px; padding-top:10px; }
.navigation { display:flex; width:100%; justify-content:center; gap:clamp(18px,4vw,68px); font-family:var(--serif); font-weight:500; font-size:21px; letter-spacing:1.45px; text-transform:uppercase; }
.navigation>a:not(.nav-cta) { padding:12px 0; text-decoration:underline; text-underline-offset:5px; }
.navigation>a:hover { color:#694521; }
.navigation .nav-cta { background:transparent; padding:12px 0; color:#2e1b12; text-decoration:underline; text-underline-offset:5px; border:0; white-space:nowrap; }
.navigation .nav-cta:hover { color:#694521; }
.navigation .nav-cta span { margin-left:4px; }
.hero { min-height:720px; background:#f0d595; color:#2c1a14; }
.hero-image { background:url('https://static.wixstatic.com/media/3576e1_4c1d88230f04488f8be241d177918eb3~mv2.jpg') center 22%/cover no-repeat; top:10%; right:7%; bottom:7%; left:auto; width:30.5%; transform:none; box-shadow:0 0 0 1px rgba(73,48,26,.09); }
.hero-scrim { display:none; }
.hero-content { padding:120px 3% 165px 10%; max-width:64.5%; }
.eyebrow.light { color:#856238; font:italic 500 17px/1.3 var(--serif); letter-spacing:1px; }
.eyebrow i { background:#996b37; }
.hero h1 { font-family:var(--serif); font-size:clamp(92px,8.3vw,151px); font-style:italic; font-weight:500; letter-spacing:-4.8px; line-height:.88; color:#311c13; margin:35px 0 35px; text-decoration:underline; text-underline-offset:10px; text-decoration-thickness:4px; }
.hero h1 em { font-weight:500; }
.hero-content>p { color:#916c37; max-width:510px; font:italic 26px/1.5 var(--serif); text-transform:uppercase; letter-spacing:.2px; margin:43px 0 36px; }
.hero .button { background:#3b281e; border-color:#3b281e; color:#fbefcf; }
.hero .button:hover { background:#63452d; }
.hero-bottom { color:#896a43; font:500 11px var(--serif); letter-spacing:2px; }
.section-tag { color:#8a6334; }
.section-tag span { color:#b58b47; }
.intro { background:#f9f0dc; }
.intro h2,.services h2,.area h2,.contact h2,.exp-content h2,.quote-section blockquote { color:inherit; font-style:italic; }
.intro-aside p,.area p { color:#74634f; }
.intro-aside .lead { color:#3a271b; }
.text-link { border-bottom-color:#a67b49; color:#3c291b; }
.image-interlude { background-image:linear-gradient(90deg,rgba(65,39,16,.62),rgba(65,39,16,.06)),url('https://static.wixstatic.com/media/8d3fd4_bd277e472fab40229a6a21650184f6f9~mv2.jpg'); }
.services { background:#efdfb9; }
.section-heading>p,.service-card p,.service-note { color:#725b43; }
.service-grid { border-color:#c0a178; }
.service-card { border-color:#c0a178; }
.service-card:hover { background:#e9d2a0; }
.service-num,.service-symbol { color:#956d38; }
.experience { background:#4a3021; }
.exp-content { color:#f7ebd0; }
.exp-step { border-top-color:#896b4e; }
.exp-step p { color:#e0cbae; }
.exp-content .section-tag { color:#e7d2a9; }
.quote-section { background:#e8ca90; }
.quote-section>span,.quote-section p { color:#785b34; }
.area { background:#f9f0dc; }
.contact { background:#342319; color:#f5e9ce; }
.contact-head>div>p,.contact-aside p { color:#e0ceb4; }
.contact-aside>span:last-child { color:#d6c29d; }
.contact-rule { background:#80684c; }
.form-shell { background:#fbf0d7; color:#39261c; }
.form-top { border-bottom-color:#d9bc89; }
.form-field input,.form-field textarea { border-color:#d8bf9b; background:#fffaf0; }
.form-field input:focus,.form-field textarea:focus { border-color:#a27841; box-shadow:0 0 0 2px #ead7b3; }
.button-dark { background:#442d1f; }
.footer { background:#2b1b13; color:#f6e9d0; }
.footer-bottom { border-top-color:#866846; color:#dfc9a8; }
.footer-main>a:last-child { border-color:#d9b97b; }
@media(max-width:1140px) {
 .header { padding:22px 3%; gap:2%; }
 .brand { flex-basis:139px; height:139px; width:139px; }
 .wordmark { font-size:39px; }
 .navigation { font-size:17px; gap:20px; }
 .hero-content { padding-left:7%; max-width:66%; }
 .hero h1 { font-size:clamp(76px,9vw,124px); }
 .hero-image { right:4%; width:30%; }
}
@media(max-width:760px) {
 .header { min-height:96px; height:96px; padding:8px 22px; }
 .header::before { opacity:.055; }
 .brand { flex:0 0 82px; width:82px; height:82px; border-width:1px; box-shadow:inset 0 0 0 3px #bd9859,inset 0 0 0 4px #3d2717; padding:5px; }
 .brand::before { top:6px; font-size:10px; }
 .brand::after { bottom:4px; font-size:10px; }
 .wordmark { font-size:25px; padding-top:3px; }
 .brand-small { font-size:5px; letter-spacing:.7px; padding-top:4px; }
 .nav-toggle span { background:#352216; }
 .navigation { top:96px; left:0; right:0; padding:22px 27px; background:#bd9859; gap:3px; font-size:21px; text-align:left; box-shadow:0 12px 20px #0002; }
 .navigation .nav-cta { text-align:left; }
 .hero { min-height:unset; padding-bottom:34px; display:flex; flex-direction:column; }
 .hero-image { position:relative; order:2; width:65%; right:auto; left:auto; top:auto; bottom:auto; min-height:430px; background-position:center 22%; margin:5px auto 34px; }
 .hero-content { order:1; max-width:100%; padding:70px 28px 35px; }
 .hero h1 { font-size:clamp(66px,14vw,108px); letter-spacing:-2px; margin:28px 0 25px; text-decoration-thickness:3px; }
 .hero-content>p { font-size:22px; max-width:90%; margin:29px 0; }
 .eyebrow.light { font-size:14px; }
 .hero-bottom { order:3; position:static; display:block; margin:0 auto; text-align:center; font-size:10px; }
 .hero-bottom>span:last-child { display:none; }
 .service-grid { border-color:#c0a178; }
}
@media(max-width:470px) {
 .hero-image { width:75%; min-height:370px; }
 .hero h1 { font-size:62px; letter-spacing:-2px; }
 .hero-content { padding:63px 25px 32px; }
 .hero-content>p { font-size:20px; }
 .header { padding:9px 20px; }
 .service-grid { grid-template-columns:1fr; }
}
