:root{--primary-typeface: "Crimson Text", serif;--secondary-typeface: "Source Sans Pro", sans-serif;--accent-typeface: "Playfair Display", serif;--color-deep-charcoal: #2C2C2C;--color-warm-cream: #F7F5F0;--color-rich-brown: #8B4513;--color-soft-gray: #A8A8A8;--color-muted-gold: #B8860B;--color-deep-navy: #1E3A5F;--color-off-white: #FAFAFA;--color-light-gray: #E5E5E5;font-family:var(--secondary-typeface),system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:var(--color-deep-charcoal);background-color:var(--color-warm-cream);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:var(--color-rich-brown);text-decoration:inherit}a:hover{color:var(--color-muted-gold)}h1{font-size:3.2em;line-height:1.1;font-family:var(--primary-typeface)}h2,h3,h4,h5,h6{font-family:var(--primary-typeface);color:var(--color-deep-charcoal)}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:var(--secondary-typeface),inherit;background-color:var(--color-rich-brown);color:var(--color-warm-cream);cursor:pointer;transition:border-color .25s,background-color .25s,color .25s,opacity .25s}button:hover{background-color:var(--color-deep-navy)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.header{color:var(--color-deep-charcoal);display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 20px;font-family:var(--primary-typeface)}.header-container{background-color:var(--color-warm-cream);width:100%;height:100px;display:flex;justify-content:center;align-items:center;color:var(--color-deep-charcoal);text-align:center}.header-element-container{display:flex;justify-content:center;align-items:center}.logo{height:50px;background-color:unset;cursor:pointer}.logo:hover{opacity:.7}.find-us-button{background-color:var(--color-rich-brown);color:var(--color-warm-cream);border-radius:8px;padding:10px 20px;cursor:pointer;font-size:16px;font-family:var(--secondary-typeface)}.find-us-button:hover{background-color:var(--color-deep-navy)}.footer{background-color:var(--color-deep-charcoal);color:var(--color-warm-cream);padding:10px 20px;text-align:center;font-family:var(--secondary-typeface),Arial,sans-serif;position:relative;bottom:0;width:100%}.footer-content{display:flex;justify-content:space-between;align-items:center}.footer-links{list-style:none;padding:0;margin:0;display:flex;gap:15px}.footer-links li{display:inline}.footer-links a{color:var(--color-warm-cream);text-decoration:none}.footer-links a:hover{text-decoration:underline;color:var(--color-muted-gold)}.footer a{color:var(--color-soft-gray);text-decoration:none}.footer a:hover{color:var(--color-warm-cream)}.footer p{margin:0}html{height:100%;width:100%;margin:0;padding:0;box-sizing:border-box;overflow-x:hidden}*,*:before,*:after{box-sizing:inherit}body{height:100%;width:100%;margin:0;padding:0;font-family:var(--secondary-typeface),Helvetica,serif}.app{display:flex;flex-direction:column;min-height:100vh;width:100%}.landing-page{flex-direction:column;display:flex;justify-content:center;align-items:center;width:100%}.content{flex:1;display:flex;width:100%;flex-direction:column;align-items:center;justify-content:center;font-family:var(--secondary-typeface),Helvetica,serif}h2{font-size:1.8em;font-family:var(--primary-typeface);padding:10px 0 20px;text-align:center}section{padding:20px;text-align:center}p{font-size:1.1em;font-family:var(--secondary-typeface);line-height:1.7}.content-image-container{margin:10px -20px 0;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative;box-shadow:0 4px 8px #0003;width:calc(100% + 40px);aspect-ratio:16 / 9}.slideshow{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.slide-in{transform:translate(100%)}@keyframes slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@media only screen and (max-width: 820px){.content-image-container{margin-top:10px;margin-bottom:10px}}@media only screen and (max-width: 600px){.content-image-container{margin-top:5px;margin-bottom:5px}}.content{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px;width:100%;box-sizing:border-box}@media (min-width: 768px){.content{padding:10px}.content-image-container{margin-left:-40px;margin-right:-40px;width:calc(100% + 80px)}}.slider{position:relative;height:100%;width:100%;display:flex;justify-content:center;align-items:center;overflow:hidden}.slide{width:100%;height:100%;position:absolute;top:0;left:0;opacity:0;transition:opacity 1s ease-in-out}.slide.active{opacity:1}.image{width:100%;height:100%;object-fit:cover}.hero-section-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-warm-cream);text-align:center;padding:20px;background-color:#00000080;border-radius:8px;z-index:10}.hero-section-overlay h1{font-family:var(--primary-typeface);font-size:2.5em;margin:0;color:var(--color-warm-cream)}.services-overview-section{background-color:var(--color-warm-cream)}.story-section{background-color:var(--color-off-white);font-family:var(--secondary-typeface);color:var(--color-deep-charcoal)}.testimonials-section{padding:20px;background-color:var(--color-off-white)}.testimonials-section h2{text-align:center;font-size:1.8em}.testimonial-section p{background-color:var(--color-off-white);padding:20px;margin-bottom:20px;border-left:5px solid var(--color-rich-brown);border-radius:0 8px 8px 0}.testimonial-item blockquote{margin:0 0 10px;font-family:var(--secondary-typeface);font-style:italic;font-size:1.1em}.testimonial-item cite{font-family:var(--secondary-typeface);font-weight:700;color:var(--color-deep-charcoal);font-style:normal}.location-contact-section{background-color:var(--color-warm-cream)}.location-content{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;align-items:flex-start}.map-container{flex:1 1 400px;min-height:300px;background-color:var(--color-light-gray);border-radius:8px}.contact-details{flex:1 1 300px;text-align:left;font-family:var(--secondary-typeface)}.contact-details h3{font-size:1.5em;font-family:var(--primary-typeface);color:var(--color-rich-brown);padding:5px 0}.contact-details p{margin-bottom:10px;line-height:1.7}
