:root{--ink:#263b39;--paper:#fbf9f5;--sage:#dfe7df;--clay:#d98363;--soft:#f1eee8;--line:#d7d4cc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.65}.site-header{max-width:1180px;margin:auto;padding:28px 28px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:22px;letter-spacing:.03em;text-decoration:none;color:var(--ink)}.brand strong{font-family:'Playfair Display',serif;font-size:27px}nav{display:flex;gap:30px}nav a{color:var(--ink);text-decoration:none;font-size:15px}.menu-button{display:none;border:0;background:none;font:inherit;color:var(--ink)}.hero{max-width:1180px;margin:34px auto 88px;padding:38px 28px 0;display:grid;grid-template-columns:1.15fr .85fr;gap:54px;align-items:center}.eyebrow{color:#817266;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700;margin:0 0 18px}h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.12;font-weight:600;margin:0}h1{font-size:clamp(47px,6vw,76px);letter-spacing:-.035em}h1 em{color:var(--clay);font-weight:600}.intro{max-width:585px;font-size:19px;margin:29px 0}.button{display:inline-block;background:var(--ink);color:white;border-radius:30px;padding:13px 23px;text-decoration:none;font-weight:600;font-size:15px}.hero-shape{height:455px;border-radius:50% 50% 8px 8px;background:var(--sage);position:relative;overflow:hidden}.hero-shape p{position:absolute;bottom:40px;right:40px;text-align:right;font-family:'Playfair Display',serif;font-size:25px;line-height:1.2}.sun{width:112px;height:112px;background:#e9ad7e;border-radius:50%;position:absolute;top:90px;right:90px}.line{border:2px solid #78948b;border-left:0;border-bottom:0;border-radius:0 210px 0 0;position:absolute;transform:rotate(-18deg)}.line-one{height:240px;width:310px;bottom:0;left:-44px}.line-two{height:190px;width:250px;bottom:-20px;left:34px}.quote-section{background:#fff;padding:48px 28px;text-align:center}.quote-section p{font-family:'Playfair Display',serif;font-size:clamp(23px,3vw,35px);line-height:1.3;max-width:720px;margin:auto}.section{max-width:1180px;margin:auto;padding:100px 28px}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:110px}.section h2{font-size:clamp(34px,4vw,52px);letter-spacing:-.025em}.body-copy{padding-top:36px}.body-copy p:first-child{margin-top:0}.soft{max-width:none;background:var(--soft);padding-left:max(28px,calc((100vw - 1124px)/2));padding-right:max(28px,calc((100vw - 1124px)/2))}.soft h2{max-width:630px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}.cards article{background:var(--paper);padding:32px;min-height:245px}.cards span{color:var(--clay);font-size:13px;font-weight:700}.cards h3{font-size:28px;margin:38px 0 12px}.cards p{font-size:15px;line-height:1.6}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.approach ul{padding:0;margin:5px 0;list-style:none;border-top:1px solid var(--line)}.approach li{padding:17px 0;border-bottom:1px solid var(--line)}.approach li::before{content:'+';color:var(--clay);font-weight:bold;margin-right:12px}.contact{background:var(--ink);color:white;text-align:center;padding:102px 28px}.contact .eyebrow{color:#b7c8bf}.contact h2{font-size:clamp(39px,5vw,60px)}.contact>p:not(.eyebrow):not(.contact-note){max-width:560px;margin:25px auto 28px}.button-light{background:#f5e3d5;color:var(--ink)}.contact-note{font-size:13px;opacity:.7;margin:28px 0 0}footer{display:flex;justify-content:space-between;gap:20px;max-width:1180px;margin:auto;padding:25px 28px;color:#65716d;font-size:13px}@media(max-width:720px){.site-header{padding:21px}.menu-button{display:block}nav{display:none;position:absolute;left:0;right:0;top:75px;background:var(--paper);padding:18px 28px;z-index:2;border-bottom:1px solid var(--line);flex-direction:column;gap:10px}nav.open{display:flex}.hero{grid-template-columns:1fr;padding:18px 22px 0;margin-bottom:55px;gap:35px}.hero-shape{height:330px}.sun{top:50px;right:42px}.hero-shape p{font-size:21px;bottom:30px;right:25px}.section{padding:70px 23px}.two-column,.approach-grid{grid-template-columns:1fr;gap:28px}.body-copy{padding-top:0}.cards{grid-template-columns:1fr;margin-top:34px}.cards article{min-height:0}.cards h3{margin-top:21px}.contact{padding:75px 23px}footer{flex-direction:column;padding:22px;gap:3px}}
.contact-actions{display:flex;justify-content:center;align-items:center;gap:22px;flex-wrap:wrap}.contact-phone{color:white;font-weight:600;text-decoration:none}@media(max-width:720px){.contact-actions{flex-direction:column;gap:14px}}
.pricing{background:#fff}.price-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:46px}.price-cards article{border:1px solid var(--line);padding:32px;min-height:270px}.price-cards h3{font-size:28px}.price{font-family:'Playfair Display',serif;font-size:33px;line-height:1.1;color:var(--clay);margin:32px 0 18px}.price small{font-family:'DM Sans',sans-serif;font-size:14px;color:var(--ink)}.price-cards p:not(.price){font-size:15px;line-height:1.6}.pricing-note{max-width:740px;margin:28px 0 0;font-size:14px;color:#586663}@media(max-width:720px){.price-cards{grid-template-columns:1fr;margin-top:32px}.price-cards article{min-height:0}}
.image-break{max-width:1180px;margin:0 auto;padding:0 28px 55px}.image-break img{display:block;width:100%;height:390px;object-fit:cover;border-radius:3px}@media(max-width:720px){.image-break{padding:0 23px 36px}.image-break img{height:235px}}
.portrait-break img{object-fit:cover;object-position:center 28%}
