@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Source+Serif+4:wght@400;500;600;700&display=swap');
:root{--green:#163c36;--deep:#102e29;--cream:#f5f3ed;--ink:#203b35;--gold:#c7ad77;--line:#d9ded6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);background:var(--cream);font-family:'Source Sans 3',Arial,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}a,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #b78d3e;outline-offset:6px}header{max-width:1440px;margin:auto;padding:24px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:15px;font-size:12px;letter-spacing:2px;font-weight:700;line-height:1.6}.brand small{display:block;font-size:8px;letter-spacing:1.7px;font-weight:500}.monogram{font-family:Georgia,serif;font-size:39px;letter-spacing:-5px;font-weight:400;border-right:1px solid var(--line);padding-right:23px}.monogram span{color:#ac8b50}nav{display:flex;align-items:center;gap:30px;font-size:12px}.nav-contact{border-bottom:1px solid #a1aaa3;padding:8px 0}.nav-contact span{margin-left:18px}.hero{background:var(--green);color:var(--cream);display:grid;grid-template-columns:1.18fr 1fr;min-height:650px;overflow:hidden}.hero-copy{padding:65px 5vw 45px 8vw}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;margin:0 0 23px}.hero .eyebrow{color:#dbd2b9}.eyebrow>span{display:inline-block;width:6px;height:6px;background:var(--gold);border-radius:100%;margin-right:8px}h1,h2,h3{font-family:'Source Serif 4',Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-1.5px;margin:0}h1{font-size:clamp(48px,5.2vw,80px)}em{font-weight:400;color:#b19a65}h1 em{color:#d2bd8f}.lead{color:#d2dcd6;max-width:420px;margin:25px 0 30px;font-size:14px;line-height:1.9}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;font-size:12px;font-weight:600;padding:17px 22px;transition:transform .2s}.button:hover{transform:translateY(-3px)}.light{background:#e8dfc9;color:var(--deep)}.hero-meta{border-top:1px solid #496059;margin-top:43px;padding-top:18px;display:flex;gap:35px;font-size:10px;letter-spacing:1px;color:#c3cdc6}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;background:#1c443b;isolation:isolate}.art-grid{position:absolute;inset:0;background:linear-gradient(90deg,transparent 99%,#aec0a611 99%),linear-gradient(transparent 99%,#aec0a611 99%);background-size:56px 56px}.art-label{position:absolute;top:44px;left:40px;font-size:9px;letter-spacing:2px;color:#9bb0a1;line-height:1.8}.arch{width:70%;height:74%;max-height:440px;border:1px solid #b4aa7d77;border-radius:200px 200px 0 0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 40%,#51634c55,transparent 70%);box-shadow:16px 14px 0 -1px #1c443b,16px 14px 0 0 #b4aa7d33}.arch svg{width:80%;fill:none;stroke:#d3bc87;stroke-width:1.2;max-height:370px}.arch svg .bowl{fill:#bba16a18}.art-note{position:absolute;bottom:38px;left:40px;right:35px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;color:#b7bda5}.specialty-strip{display:flex;align-items:center;justify-content:center;gap:28px;padding:22px 4%;border-bottom:1px solid var(--line);font-size:9px;font-weight:600;letter-spacing:1.2px}.specialty-strip i{font-size:18px;color:#99865f}.section{padding:90px 8vw;max-width:1600px;margin:auto}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:0 60px;margin-bottom:43px}.section-heading .eyebrow{grid-column:1/-1}h2{font-size:clamp(42px,4.3vw,63px)}.section-heading>p:last-child:not(.eyebrow){max-width:350px;margin:auto 0 4px;color:#64746b;font-size:14px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.service{padding:35px 39px;background:#ebece4;border:1px solid #dce0d5}.service.accent{background:#e1e7dc}.service-top{display:flex;justify-content:space-between;color:#7a876e;font-size:12px;margin-bottom:35px}.service-top span:last-child{font-family:Georgia,serif;font-size:35px;line-height:1}h3{font-size:42px}.service>p{font-size:14px;max-width:360px;color:#586b5e;margin:22px 0}.service ul{padding:0;list-style:none;margin:25px 0 32px}.service li{border-top:1px solid #cbd3c5;padding:10px 0;font-size:12px}.service li:before{content:'↗';color:#8c7954;margin-right:13px}.text-link{display:flex;justify-content:space-between;gap:25px;align-items:center;border-bottom:1px solid #9fab99;padding-bottom:10px;font-weight:600;font-size:12px}.text-link span{font-size:20px;font-weight:400}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#ece9df;max-width:none}.about h2{font-size:78px}.credential{font-size:10px;letter-spacing:1.3px;line-height:2.1;margin-top:28px}.about-copy{padding-top:27px;max-width:510px}.about-copy p{color:#5e6b61;font-size:14px}.about-copy .large-text{font-family:'Source Serif 4',Georgia,serif;font-size:34px;line-height:1.2;color:var(--ink);margin-top:0}.about-copy .text-link{margin-top:28px}.process .section-heading{display:block}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.steps article{border-top:1px solid #b5c0ae;padding-top:21px}.steps span{font-size:9px;letter-spacing:1.8px;color:#797e62}.steps h3{font-family:'Source Sans 3',Arial,sans-serif;font-size:17px;letter-spacing:-.3px;margin-top:22px;font-weight:500}.steps p{font-size:13px;color:#657268;line-height:1.9}.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;padding-top:35px}.faq details{border-bottom:1px solid #cdd4c8;padding:21px 0}.faq summary{cursor:pointer;list-style:none;font-size:13px;font-weight:500;padding-right:26px;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:0;font-size:20px;font-weight:400;top:-5px}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;color:#657268;max-width:500px;margin-bottom:0}.contact{background:var(--green);color:var(--cream);max-width:none;display:grid;grid-template-columns:1.1fr 1fr;gap:80px}.contact .eyebrow{color:#c9b785}.contact h2 em{color:#d2bd8f}.contact p{font-size:13px;color:#bfcfc3;max-width:330px}.contact-options{padding-top:25px}.contact-options>a{display:block;padding:23px 0;border-bottom:1px solid #5b7162}.contact-options small{display:block;letter-spacing:1.6px;font-size:9px;color:#c4ba93;margin-bottom:7px}.contact-options strong{display:flex;justify-content:space-between;font-size:19px;font-weight:400}.contact-options p{line-height:2.1;margin-top:28px}.contact-options a:hover,.text-link:hover{color:#b39a62}footer{padding:38px 8vw 30px}.footer-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:23px;gap:20px}.footer-top strong{font-family:'Source Serif 4',Georgia,serif;font-size:27px;font-weight:400}.footer-top span,.footer-top a,footer>p{font-size:10px}.fine{color:#738075;max-width:760px;line-height:1.7}.floating{position:fixed;bottom:22px;right:22px;background:#e7dec4;color:#163c36;padding:12px 20px;border:1px solid #b9ab86;border-radius:30px;font-size:12px;font-weight:600;box-shadow:0 4px 20px #0002;z-index:5}@media(min-width:1600px){.hero-copy{padding-left:max(8vw,calc((100vw - 1360px)/2))}}@media(max-width:850px){header{padding:19px 6%}nav>a:not(.nav-contact){display:none}.brand{font-size:10px;letter-spacing:1.2px}.brand small{font-size:7px;letter-spacing:1px}.monogram{font-size:32px;padding-right:17px}.hero-copy{padding:48px 7vw}.hero-art{min-width:0}.hero-meta{gap:17px}.specialty-strip{gap:14px;flex-wrap:wrap;font-size:8px}.section{padding:65px 7vw}.section-heading{gap:25px}.service{padding:26px}.about{gap:35px}.about h2{font-size:66px}.steps{gap:20px}.faq{gap:30px}.contact{gap:35px}h3{font-size:36px}}@media(max-width:600px){html{scroll-padding-top:15px}header{gap:10px}.brand{gap:10px}nav{font-size:10px}.nav-contact span{margin-left:7px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 7vw 35px}h1{font-size:54px}.lead{font-size:13px;max-width:330px}.hero-meta{margin-top:30px}.hero-art{height:260px}.arch{height:210px;width:205px}.arch svg{height:195px}.art-label{left:7vw;top:22px;font-size:7px;max-width:100px}.art-note{left:7vw;right:7vw;bottom:17px;font-size:7px}.specialty-strip{gap:8px 13px;padding:17px 5%}.specialty-strip i{display:none}.specialty-strip span{width:45%;text-align:center;font-size:7px}.section{padding:55px 7vw}.section-heading{display:block}.section-heading>p:last-child:not(.eyebrow){margin-top:22px}.service-grid{grid-template-columns:1fr;gap:17px}.service{padding:28px}.service-top{margin-bottom:25px}.service h3{font-size:40px}.about,.faq,.contact{grid-template-columns:1fr;gap:25px}.about h2{font-size:65px}.about-copy{padding-top:0}.about-copy .large-text{font-size:30px}.steps{grid-template-columns:1fr;gap:23px;margin-top:30px}.steps h3{margin-top:15px}.steps p{margin-bottom:0}.faq{padding-top:20px}.faq details{padding:20px 0}.contact-options{padding-top:0}.contact h2{font-size:45px}.footer-top{flex-wrap:wrap}.footer-top strong{width:100%}footer{padding:30px 7vw 75px}.floating{bottom:15px;right:15px;font-size:11px;padding:10px 16px}h2{font-size:43px}.eyebrow{font-size:9px;letter-spacing:1.5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Professional typography and accessible link icons. */
h1,h2,h3{font-weight:500;line-height:1.18;letter-spacing:-1.2px}em{font-style:normal;font-weight:700}h1{font-size:clamp(43px,4.3vw,66px)}h2{font-size:clamp(36px,3.7vw,54px)}.about h2{font-size:65px}.service h3{font-size:36px}.about-copy .large-text{font-size:30px}.link-icon{display:inline-block;flex-shrink:0;width:19px;height:19px;vertical-align:-4px;margin-right:9px;stroke:currentColor;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round}.link-icon.whatsapp{fill:currentColor;stroke:none}.button,.floating{display:inline-flex;align-items:center}.button{gap:10px}.button>span{margin-left:20px}.text-link{justify-content:flex-start}.text-link>span{margin-left:auto}.contact-options strong{justify-content:flex-start;align-items:center}.contact-options strong>span{margin-left:auto}nav a{display:inline-flex;align-items:center}nav .link-icon{width:15px;height:15px;margin-right:6px}.footer-top>a{display:inline-flex;align-items:center}.floating{gap:0}@media(max-width:850px){nav{gap:20px}.service h3{font-size:32px}}@media(max-width:600px){h1{font-size:42px}h2{font-size:36px}.contact h2{font-size:38px}.about h2{font-size:55px}.service h3{font-size:34px}.about-copy .large-text{font-size:27px}header nav .link-icon{display:none}.brand{letter-spacing:.8px}.brand small{letter-spacing:.7px}.hero-copy{padding-top:40px}.lead{font-size:15px}.service>p,.about-copy p{font-size:15px}.service li,.faq summary,.faq details p,.steps p{font-size:14px}}
/* Larger type for comfortable reading across screen sizes. */
body{font-size:17px}nav{font-size:14px}.brand{font-size:13px}.brand small{font-size:10px}.eyebrow{font-size:12px}.lead{font-size:17px;max-width:470px}.button,.text-link{font-size:15px}.hero-meta{font-size:12px;flex-wrap:wrap;gap:10px 30px}.specialty-strip{font-size:11px;flex-wrap:wrap}.section-heading>p:last-child:not(.eyebrow){font-size:17px}.service>p,.about-copy p{font-size:17px}.service li{font-size:15px}.credential{font-size:12px}.steps span{font-size:11px}.steps h3{font-size:20px;line-height:1.4}.steps p{font-size:16px}.faq summary,.faq details p{font-size:16px}.contact p{font-size:16px}.contact-options small{font-size:11px}.contact-options strong{font-size:21px}.footer-top span,.footer-top a,footer>p{font-size:13px}.floating{font-size:14px}.link-icon{width:21px;height:21px}h1{font-size:clamp(46px,4.6vw,70px)}h2{font-size:clamp(39px,4vw,58px)}.service h3{font-size:39px}.about-copy .large-text{font-size:33px}
@media(max-width:850px){header{flex-wrap:wrap}nav{gap:22px}.service h3{font-size:35px}.specialty-strip{gap:12px 20px}}
@media(max-width:600px){header{gap:14px}.brand{font-size:11px}.brand small{font-size:8px}nav{font-size:12px}.nav-contact{padding:5px 0}h1{font-size:44px}h2{font-size:39px}.contact h2{font-size:40px}.service h3{font-size:36px}.eyebrow{font-size:11px;letter-spacing:1.2px}.lead{font-size:17px}.specialty-strip span{font-size:10px;width:46%;letter-spacing:.5px}.service>p,.about-copy p{font-size:17px}.service li,.faq summary,.faq details p,.steps p{font-size:16px}.button{padding:16px 18px;gap:8px}.button>span{margin-left:10px}.text-link{font-size:15px}.contact-options strong{font-size:20px}.about-copy .large-text{font-size:30px}.floating{font-size:13px}.footer-top{align-items:flex-start}}

/* Profile photograph and personal introduction. */
.about{grid-template-columns:1fr 1.15fr;align-items:center;gap:65px}.profile{max-width:460px}.about h2{font-size:clamp(37px,3.5vw,54px);line-height:1.2}.credential{margin:18px 0 25px}.profile-photo{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:3px;border:1px solid #d1d2c4}.about-copy{padding-top:0;max-width:620px}.about-copy p{line-height:1.85}.about-copy .large-text{line-height:1.3}.personal-attention{border-left:3px solid var(--gold);padding-left:20px;margin:25px 0}.personal-attention strong{display:block;font-size:20px;color:var(--green);margin-bottom:6px}@media(max-width:850px){.about{gap:30px;align-items:start}.about-copy .large-text{font-size:29px}}@media(max-width:600px){.about{grid-template-columns:1fr;gap:30px}.profile{max-width:100%}.profile-photo{max-width:420px}.about h2{font-size:39px}.about-copy .large-text{font-size:29px}.personal-attention{padding-left:16px}.personal-attention strong{font-size:20px}}

.additional-links{margin-top:32px;border-top:1px solid #5b7162;padding-top:22px}.additional-links .additional-label{font-size:11px;letter-spacing:1.6px;color:#c4ba93;margin:0 0 15px}.resource-link{display:flex;align-items:center;gap:12px;padding:17px 18px;border:1px solid #6c7d69;border-radius:3px;margin-top:12px;transition:background .2s,border-color .2s}.resource-link:hover{background:#ffffff09;border-color:var(--gold)}.resource-link .link-icon{width:25px;height:25px;margin:0;color:#d2bd8f}.resource-link>span:not(.resource-arrow){min-width:0}.contact-options .resource-link strong{display:block;font-size:18px;line-height:1.4}.contact-options .resource-link small{font-size:13px;color:#bfcfc3;letter-spacing:0;line-height:1.5;margin:5px 0 0}.resource-arrow{margin-left:auto;color:#d2bd8f;font-size:22px}@media(max-width:600px){.resource-link{padding:15px 13px;gap:10px}.contact-options .resource-link strong{font-size:18px}.contact-options .resource-link small{font-size:13px}}@media(prefers-reduced-motion:reduce){.resource-link{transition:none}}
