*{box-sizing:border-box} :root{--forest:#073c2e;--deep:#052b21;--green:#08764f;--mint:#dce9dd;--cream:#f8f8f0;--ink:#14372c;--muted:#617269;--line:#dfe7df}html{scroll-behavior:smooth}body{margin:0;font-family:Georgia,'Times New Roman',serif;color:var(--ink);line-height:1.7}a{color:inherit}.wrap{width:min(1120px,calc(100% - 42px));margin:auto}header{position:sticky;top:0;z-index:5;background:#fffffff7;border-bottom:1px solid var(--line)}.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--forest);font-size:25px;line-height:1.1;white-space:nowrap}.brand small{display:block;font:8px Arial,sans-serif;letter-spacing:1.1px;color:var(--muted);margin-top:7px}.logo{width:65px;height:58px;border:1.5px dashed #16825a;border-radius:6px;background:#f4faf5;display:grid;place-content:center;text-align:center;color:#16825a;font:bold 10px/1.2 Arial;letter-spacing:1px;flex-shrink:0}.tiny{width:45px;height:42px;font-size:7px}nav{display:flex;align-items:center;gap:22px}nav a{font:bold 13px Arial,sans-serif;color:#40584d;text-decoration:none;white-space:nowrap}nav a:hover,footer a:hover{color:var(--green)}nav .navbtn{background:var(--forest);color:white;padding:11px 15px;border-radius:5px}.menu{display:none;border:0;background:none;font-size:25px;color:var(--forest)}.hero,.stories-hero{background:radial-gradient(ellipse at 90% 20%,#548b6759,transparent 38%),linear-gradient(120deg,var(--deep),#0b6044);color:white}.hero-grid{min-height:470px;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding-block:65px}.eyebrow{margin:0 0 13px;color:var(--green);font:bold 11px Arial,sans-serif;letter-spacing:2px}.hero .eyebrow,.stories-hero .eyebrow{color:#b5e5c7}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(38px,5vw,60px);line-height:1.08;letter-spacing:-1.5px;font-weight:600;margin-bottom:22px}h1 em{color:#bce3c7;font-weight:400}.lead{font-size:18px;max-width:670px}.hero .lead,.stories-hero .lead{color:#e2eee5}.btn{display:inline-block;padding:12px 18px;border-radius:5px;text-decoration:none;font:bold 13px Arial,sans-serif;margin:8px 8px 0 0}.light{background:#f8f8ef;color:var(--forest)}.outline{border:1px solid #ffffff99;color:white}.green{background:var(--forest);color:white}.note{font-size:13px;color:#c7dbce;font-style:italic;margin-top:22px}.hero-art{min-height:300px;display:grid;place-items:center;position:relative}.circle{width:260px;height:260px;border:1px solid #d6eedb80;border-radius:50%;box-shadow:0 0 0 25px #ffffff06,0 0 0 55px #ffffff04}.art-card{position:absolute;width:225px;padding:30px 24px;text-align:center;background:#f0f7ed;color:var(--forest);border-radius:45% 45% 14px 14px;box-shadow:0 20px 45px #0003;transform:rotate(3deg)}.art-card span{font-size:65px;color:var(--green);line-height:1.2}.art-card p{font-size:17px;font-style:italic;line-height:1.35;margin:5px 0 0}.section{padding:78px 0}.two{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}h2{font-size:clamp(29px,3.5vw,42px);line-height:1.18;letter-spacing:-.8px;color:var(--deep);margin-bottom:18px}.copy{color:var(--muted)}.link{display:inline-block;color:var(--green);font:bold 14px Arial;text-decoration:none;margin-top:8px}.services{background:var(--cream)}.heading{max-width:660px;margin-bottom:34px}.heading>p:last-child{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards article{padding:27px;background:white;border:1px solid #e6ece4;border-radius:9px;box-shadow:0 14px 38px #052b210d}.icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:19px;border-radius:50%;background:#e0eee2;color:var(--green);font:bold 17px Arial}.cards h3{color:var(--forest);font-size:21px;line-height:1.25;margin-bottom:10px}.cards p{color:var(--muted);font-size:15px;margin-bottom:0}.disclaimer{margin:22px 0 0;color:#728077;font:12px/1.6 Arial}.feature{background:#eaf0e7}.feature-inner{display:grid;grid-template-columns:1fr 150px;gap:40px;align-items:center}.feature p:not(.eyebrow){color:var(--muted)}.bigquote{font:bold 160px/.7 Georgia;color:var(--green);opacity:.75;text-align:center}.contact{background:var(--forest);color:white}.contact h2{color:white}.contact .eyebrow{color:#b5e5c7}.contact p{color:#d4e4d8}.contact-card{padding:25px 28px;border:1px solid #ffffff40;border-radius:8px}.contact-card p{margin-bottom:16px}.contact-card b{font:bold 12px Arial;text-transform:uppercase;letter-spacing:1px;color:white}.contact-card a{color:#c5efd0;font-size:20px;text-decoration:none;overflow-wrap:anywhere}.contact-card .availability{padding-top:13px;border-top:1px solid #ffffff40;font-style:italic;font-size:14px}.narrow{max-width:850px}.narrow p{color:#52665a}.small{padding:14px 16px;border-left:3px solid var(--green);background:#f0f8f0;font-size:13px}footer{padding:24px 0;border-top:1px solid var(--line)}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer a{font:12px Arial;text-decoration:none;color:var(--muted)}.footer .brand{font:18px Georgia;color:var(--forest)}.footer .brand small{font-size:6px}.footer p{font:11px Arial;color:var(--muted);margin:0}.stories-hero{padding:72px 0}.stories-hero h1{max-width:800px}.stories .notice,.notice{padding:16px 18px;border-left:4px solid #b78b39;background:#fff8e8;color:#645537;font:13px/1.6 Arial;margin-bottom:28px}.stories{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.stories article{padding:25px 28px;background:#e5ece1;border-radius:12px}.stories .quote{display:block;height:45px;color:var(--green);font:bold 75px/.9 Georgia}.stories blockquote{margin:0 0 17px;color:#31574a;font-size:18px;line-height:1.55}.author{font:bold italic 11px Arial;letter-spacing:2px;text-transform:uppercase;margin:0;color:var(--forest)}.stories .wide{grid-column:1/-1}.stories-cta{text-align:center;margin-top:60px}.stories-cta p{color:var(--muted)}@media(max-width:850px){.nav{position:relative;min-height:78px}.menu{display:block;margin-left:auto}nav{display:none;position:absolute;top:100%;left:-21px;right:-21px;padding:18px 22px 22px;background:white;box-shadow:0 14px 38px #052b2112;align-items:stretch;flex-direction:column;gap:18px}nav.open{display:flex}nav .navbtn{text-align:center}.hero-grid{grid-template-columns:1fr;padding-block:55px}.hero-art{min-height:250px}.two,.contact-grid{grid-template-columns:1fr;gap:25px}.cards{grid-template-columns:1fr}.section{padding:58px 0}}@media(max-width:560px){.wrap{width:calc(100% - 30px)}.logo{width:51px;height:48px;font-size:8px}.brand{font-size:21px}.brand small{font-size:6px;letter-spacing:.7px}.hero h1{font-size:39px}.hero .lead,.stories-hero .lead{font-size:16px}.feature-inner{grid-template-columns:1fr}.bigquote{display:none}.stories{grid-template-columns:1fr}.stories .wide{grid-column:auto}.stories blockquote{font-size:16px}.footer{align-items:flex-start;flex-direction:column}}

/* Emerald logo: same image in header and footer */
.brand { gap: 0; white-space: normal; }
.brand-logo { display:block; width:310px; max-width:100%; height:auto; object-fit:contain; }
.footer-brand { display:flex; align-items:center; }
.footer-logo { width:275px; }
@media (max-width:850px) { .brand-logo { width:250px; } .footer-logo { width:230px; } }
@media (max-width:560px) { .brand-logo { width:205px; } .footer-logo { width:210px; } }

/* Contact form */
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:start; }
.contact-info { margin-top:30px; }
.contact-info a { color:#c5efd0; text-decoration:none; overflow-wrap:anywhere; }
.contact-info strong { color:#fff; }
.contact-form { padding:30px; border-radius:10px; background:#fff; color:#14372c; box-shadow:0 14px 38px rgba(0,0,0,.12); }
.contact-form h3 { font-size:25px; margin:0 0 8px; color:#073c2e; }
.contact-form label { display:block; margin:17px 0 6px; font:700 13px Arial,sans-serif; }
.contact-form input,.contact-form textarea { display:block; width:100%; padding:12px; border:1px solid #ccd9ce; border-radius:5px; background:#fff; color:#14372c; font:15px Arial,sans-serif; }
.contact-form input:focus,.contact-form textarea:focus { outline:2px solid #08764f; outline-offset:2px; }
.contact-form textarea { resize:vertical; }
.contact-form .btn { border:0; cursor:pointer; margin-top:12px; }
.contact-form .form-intro,.contact-form .privacy-note { color:#617269; font:12px/1.6 Arial,sans-serif; }
.hidden-field { display:none; }
@media(max-width:850px) { .contact-grid { grid-template-columns:1fr; gap:28px; } }
@media(max-width:480px) { .contact-form { padding:20px; } }

/* Personal Stories: alternating conversational speech bubbles */
.stories-intro { max-width:700px; margin:0 auto 38px; text-align:center; }
.stories-intro p:last-child { color:#617269; }
.stories { display:grid; grid-template-columns:1fr 1fr; gap:38px 34px; padding:18px 0 10px; align-items:start; }
.stories article { position:relative; padding:28px 30px 24px; background:#e6eee3; border-radius:22px 22px 22px 5px; box-shadow:0 8px 25px rgba(5,43,33,.07); }
.stories article.story-right { background:#f0f2e9; border-radius:22px 22px 5px 22px; transform:translateY(24px); }
.stories article::after { content:""; position:absolute; bottom:-18px; left:30px; width:0; height:0; border-top:20px solid #e6eee3; border-right:24px solid transparent; }
.stories article.story-right::after { left:auto; right:30px; border-top-color:#f0f2e9; border-right:0; border-left:24px solid transparent; }
.stories .quote { display:block; height:43px; color:#08764f; font:bold 66px/.9 Georgia,serif; }
.stories blockquote { margin:0; color:#244d40; font-size:17px; line-height:1.6; }
.stories .author { margin:18px 0 0; color:#08764f; font:bold italic 11px Arial,sans-serif; letter-spacing:2px; text-transform:uppercase; }
.stories .wide { grid-column:1/-1; margin-top:10px; transform:none; }
.stories-cta { text-align:center; margin-top:65px; }
.stories-cta p { color:#617269; }
@media(max-width:700px) { .stories { grid-template-columns:1fr; gap:32px; } .stories article.story-right { transform:none; } .stories .wide { grid-column:auto; } .stories blockquote { font-size:16px; } .stories-cta { margin-top:45px; } }

.website-photo {
    width: 100%;
    max-width: 550px;
    height: 300px;
    object-fit: cover;
    border-radius: 14px;
    display: block;
    margin: 20px auto;
}
/* Vertically center the About section text */
.two {
    align-items: center;
}

.two .copy {
    align-self: center;
}