*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:"Lato",-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;line-height:1.7;color:#3D3D3D;background-color:#FDF6E9;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",Georgia,serif;font-weight:600;line-height:1.3;color:#5A4A3A;margin-bottom:1rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:16px}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}p{margin-bottom:1rem}a{color:#A8864D;text-decoration:none;transition:color 0.15s ease}a:hover{color:#C9A66B}ul,ol{padding-left:1.5rem;margin-bottom:1rem}li{margin-bottom:.5rem}img{max-width:100%;height:auto;display:block}strong,b{font-weight:700}blockquote{border-left:4px solid #C9A66B;padding-left:1.5rem;margin:2rem 0;font-style:italic;color:#7A6A5A}::selection{background-color:#C9A66B;color:#fff}:focus-visible{outline:2px solid #C9A66B;outline-offset:2px}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}@media (max-width: 768px){.container{padding:0 1rem}}.container-narrow{max-width:800px}.section{padding:6rem 0}@media (max-width: 768px){.section{padding:4rem 0}}.section-alt{background-color:#F5ECD8}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{position:relative;display:inline-block}.section-header h2::after{content:'';position:absolute;bottom:-0.5rem;left:50%;transform:translateX(-50%);width:60px;height:3px;background-color:#C9A66B;border-radius:4px}.section-header p{color:#7A6A5A;max-width:600px;margin:1.5rem auto 0}.grid{display:grid;gap:2rem}.grid-2{grid-template-columns:repeat(2, 1fr)}@media (max-width: 768px){.grid-2{grid-template-columns:1fr}}.grid-3{grid-template-columns:repeat(3, 1fr)}@media (max-width: 992px){.grid-3{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 576px){.grid-3{grid-template-columns:1fr}}.grid-4{grid-template-columns:repeat(4, 1fr)}@media (max-width: 992px){.grid-4{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 576px){.grid-4{grid-template-columns:1fr}}.flex{display:flex}.flex-center{align-items:center;justify-content:center}.flex-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}.gap-sm{gap:1rem}.gap-md{gap:1.5rem}.gap-lg{gap:2rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-sm{margin-top:1rem}.mt-md{margin-top:1.5rem}.mt-lg{margin-top:2rem}.mt-xl{margin-top:3rem}.mb-sm{margin-bottom:1rem}.mb-md{margin-bottom:1.5rem}.mb-lg{margin-bottom:2rem}.mb-xl{margin-bottom:3rem}.site-header{position:sticky;top:0;z-index:100;background-color:#FDF6E9;border-bottom:1px solid #E8DCC8;padding:1rem 0}.site-header .container{display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:1rem;text-decoration:none;color:#5A4A3A}.logo .logo-img{transition:transform 0.3s ease}.logo:hover .logo-img{transform:scale(1.05)}.logo-text{display:flex;flex-direction:column;line-height:1.2}.logo-title{font-family:"Playfair Display",Georgia,serif;font-size:1.125rem;font-weight:600;color:#5A4A3A}.logo-name{font-size:.875rem;color:#7A6A5A}.main-nav ul{display:flex;align-items:center;gap:1.5rem;list-style:none;padding:0;margin:0}.main-nav a{display:block;padding:.5rem 1rem;color:#5A4A3A;font-weight:500;transition:color 0.15s ease}.main-nav a:hover,.main-nav a.active{color:#A8864D}.main-nav a.active{position:relative}.main-nav a.active::after{content:'';position:absolute;bottom:0;left:1rem;right:1rem;height:2px;background-color:#C9A66B;border-radius:4px}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem;z-index:101}@media (max-width: 992px){.menu-toggle{display:block}}.hamburger{display:block;width:28px;height:3px;background-color:#5A4A3A;border-radius:4px;position:relative;transition:background-color 0.15s ease}.hamburger::before,.hamburger::after{content:'';position:absolute;left:0;width:100%;height:3px;background-color:#5A4A3A;border-radius:4px;transition:transform 0.3s ease}.hamburger::before{top:-8px}.hamburger::after{bottom:-8px}.menu-toggle[aria-expanded="true"] .hamburger{background-color:transparent}.menu-toggle[aria-expanded="true"] .hamburger::before{transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .hamburger::after{transform:translateY(-8px) rotate(-45deg)}@media (max-width: 992px){.main-nav{position:fixed;top:0;right:0;bottom:0;width:80%;max-width:350px;background-color:#FDF6E9;padding:6rem 2rem 2rem;transform:translateX(100%);transition:transform 0.3s ease;box-shadow:0 8px 24px rgba(0,0,0,0.1);overflow-y:auto}.main-nav.is-open{transform:translateX(0)}.main-nav ul{flex-direction:column;align-items:flex-start;gap:0}.main-nav li{width:100%}.main-nav a{padding:1rem 0;border-bottom:1px solid #E8DCC8}.main-nav a.active::after{display:none}.main-nav .btn-nav{margin-top:1.5rem;text-align:center;border-bottom:none}.nav-overlay{position:fixed;inset:0;background-color:rgba(0,0,0,0.5);opacity:0;visibility:hidden;transition:opacity 0.3s ease,visibility 0.3s ease;z-index:99}.nav-overlay.is-visible{opacity:1;visibility:visible}}.site-footer{background-color:#5A4A3A;color:#FDF6E9;margin-top:auto}.footer-top{padding:4rem 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem}@media (max-width: 992px){.footer-grid{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 576px){.footer-grid{grid-template-columns:1fr;text-align:center}}.footer-brand{display:flex;align-items:flex-start;gap:1.5rem}@media (max-width: 576px){.footer-brand{flex-direction:column;align-items:center}}.footer-brand .enso{color:#C9A66B;flex-shrink:0}.footer-brand strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.125rem;margin-bottom:.5rem}.footer-brand p{font-size:.875rem;opacity:0.8;margin:0}.footer-contact h4,.footer-hours h4,.footer-cta h4{font-family:"Playfair Display",Georgia,serif;font-size:1.125rem;color:#C9A66B;margin-bottom:1.5rem}.footer-contact ul{list-style:none;padding:0;margin:0}.footer-contact li{margin-bottom:1rem}.footer-contact a{color:#FDF6E9;opacity:0.9}.footer-contact a:hover{opacity:1;color:#C9A66B}.footer-hours p{margin-bottom:.5rem;opacity:0.9}.footer-hours .price{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(253,246,233,0.2);font-weight:600}.footer-cta .btn{width:100%;margin-bottom:1.5rem}.footer-cta .social{display:flex;gap:1rem}@media (max-width: 576px){.footer-cta .social{justify-content:center}}.footer-cta .social a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background-color:rgba(253,246,233,0.1);border-radius:50%;color:#FDF6E9;transition:background-color 0.15s ease,color 0.15s ease}.footer-cta .social a:hover{background-color:#C9A66B;color:#fff}.footer-bottom{padding:1.5rem 0;border-top:1px solid rgba(253,246,233,0.1);text-align:center}.footer-bottom p{margin:0;font-size:.875rem;opacity:0.7}.btn{display:inline-block;padding:1rem 2rem;font-family:"Lato",-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;text-align:center;text-decoration:none;border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all 0.3s ease}.btn:focus-visible{outline-offset:4px}.btn-primary{background-color:#C9A66B;color:#fff;border-color:#C9A66B}.btn-primary:hover{background-color:#A8864D;border-color:#A8864D;color:#fff}.btn-secondary{background-color:transparent;color:#A8864D;border-color:#C9A66B}.btn-secondary:hover{background-color:#C9A66B;color:#fff}.btn-nav{padding:.5rem 1.5rem;background-color:#C9A66B;color:#fff;border-radius:8px}.btn-nav:hover{background-color:#A8864D;color:#fff}.card{background-color:#fff;border-radius:16px;padding:2rem;box-shadow:0 2px 4px rgba(0,0,0,0.05);transition:box-shadow 0.3s ease,transform 0.3s ease}.card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.08);transform:translateY(-2px)}.card-icon{width:60px;height:60px;margin-bottom:1.5rem;color:#C9A66B}.card-title{font-size:1.25rem;margin-bottom:.5rem}.blog-card{background-color:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,0.05);transition:box-shadow 0.3s ease,transform 0.3s ease}.blog-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.08);transform:translateY(-4px)}.blog-card a{text-decoration:none;color:inherit}.blog-card-content{padding:1.5rem}.blog-card-date{font-size:.875rem;color:#7A6A5A;margin-bottom:.5rem}.blog-card-title{font-size:1.125rem;color:#5A4A3A;margin-bottom:.5rem;transition:color 0.15s ease}.blog-card:hover .blog-card-title{color:#A8864D}.blog-card-excerpt{font-size:.875rem;color:#666;line-height:1.6}.service-list{list-style:none;padding:0;columns:2;column-gap:2rem}@media (max-width: 768px){.service-list{columns:1}}.service-list li{position:relative;padding-left:1.5rem;margin-bottom:1rem;break-inside:avoid}.service-list li::before{content:'';position:absolute;left:0;top:0.5em;width:8px;height:8px;background-color:#C9A66B;border-radius:50%}.contact-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.contact-item svg{flex-shrink:0;width:24px;height:24px;color:#C9A66B;margin-top:2px}.booking-container{background-color:#fff;border-radius:16px;padding:1rem;box-shadow:0 4px 12px rgba(0,0,0,0.08);overflow:hidden}.booking-container iframe{width:100%;min-height:600px;border:none;border-radius:8px}@media (max-width: 768px){.booking-container iframe{min-height:500px}}.credentials-list{list-style:none;padding:0}.credentials-list li{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid #E8DCC8}.credentials-list li:last-child{border-bottom:none}.credentials-list .year{font-weight:700;color:#A8864D;min-width:60px}.enso-decoration{position:absolute;opacity:0.1;pointer-events:none;z-index:0}.enso-decoration svg{width:200px;height:200px;color:#C9A66B}.cactus-deco{pointer-events:none;user-select:none}.cactus-deco img{display:block;max-width:100%;height:auto}.cactus-inline{display:inline-block;vertical-align:middle}.cactus-inline img{width:80px;height:auto}.cactus-float-right{float:right;margin-left:2rem;margin-bottom:1.5rem}.cactus-float-right img{width:120px;height:auto;opacity:0.9}@media (max-width: 576px){.cactus-float-right{float:none;text-align:center;margin:0 auto 1.5rem}}.cactus-float-left{float:left;margin-right:2rem;margin-bottom:1.5rem}.cactus-float-left img{width:120px;height:auto;opacity:0.9}@media (max-width: 576px){.cactus-float-left{float:none;text-align:center;margin:0 auto 1.5rem}}.cactus-center{text-align:center;margin:2rem auto}.cactus-center img{width:100px;height:auto;opacity:0.85}.cactus-small img{width:60px !important}.cactus-medium img{width:100px !important}.cactus-large img{width:140px !important}.hero{position:relative;padding:6rem 0;background:linear-gradient(135deg, #FDF6E9 0%, #F5ECD8 100%);overflow:hidden}@media (max-width: 768px){.hero{padding:4rem 0}}.hero-cactus-mobile{display:none;width:110px;height:auto;margin:1rem auto 0}@media (max-width: 992px){.hero-cactus-mobile{display:block}}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}@media (max-width: 992px){.hero-content{grid-template-columns:1fr;text-align:center}}.hero-text h1{font-size:3rem;margin-bottom:1.5rem}@media (max-width: 768px){.hero-text h1{font-size:2rem}}.hero-text p{font-size:1.125rem;color:#7A6A5A;margin-bottom:2rem}.hero-text .hero-cta{display:flex;gap:1.5rem}@media (max-width: 992px){.hero-text .hero-cta{justify-content:center}}@media (max-width: 576px){.hero-text .hero-cta{flex-direction:column}}.hero-visual{position:relative;display:flex;justify-content:center;align-items:center}@media (max-width: 992px){.hero-visual{display:none}}.hero-visual .hero-cactus{max-width:280px;height:auto;opacity:0.85}.page-header{position:relative;background:linear-gradient(135deg, #F5ECD8 0%, #E8DCC8 100%);padding:4rem 0;overflow:hidden}@media (max-width: 768px){.page-header{padding:3rem 0}}.page-header-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}@media (max-width: 992px){.page-header-content{grid-template-columns:1fr;text-align:center}}.page-header-text h1{margin-bottom:.5rem;font-size:2.5rem}@media (max-width: 768px){.page-header-text h1{font-size:2rem}}.page-header-text .subtitle{color:#7A6A5A;font-size:1.125rem;margin:0}.page-header-visual{display:flex;justify-content:center;align-items:center}@media (max-width: 992px){.page-header-visual{display:none}}.page-header-visual img{max-width:180px;height:auto;opacity:0.85}.page-header-cactus-mobile{display:none;width:90px;height:auto;margin:1.5rem auto 0}@media (max-width: 992px){.page-header-cactus-mobile{display:block}}.page-content{padding:4rem 0}.page-content .container{max-width:800px}.post-header{background:linear-gradient(135deg, #F5ECD8 0%, #E8DCC8 100%);padding:4rem 0;text-align:center}.post-header h1{margin-bottom:1.5rem;max-width:800px;margin-left:auto;margin-right:auto}.post-meta{font-size:.875rem;color:#7A6A5A}.post-meta time{font-weight:600}.post-meta .author{margin-left:1rem}.post-meta .author::before{content:'•';margin-right:1rem}.post-content{padding:4rem 0;max-width:800px}.post-content p{margin-bottom:1.5rem}.post-content h2,.post-content h3,.post-content h4{margin-top:3rem;margin-bottom:1.5rem}.post-content ul,.post-content ol{margin-bottom:1.5rem}.post-content img{border-radius:8px;margin:1.5rem 0;max-width:100%;height:auto}.post-content .img-small{max-width:200px}.post-content .img-medium{max-width:400px}.post-content .img-left{float:left;margin:0 1.5rem 1.5rem 0;max-width:250px}@media (max-width: 576px){.post-content .img-left{float:none;max-width:100%;margin:1.5rem 0}}.post-content .img-right{float:right;margin:0 0 1.5rem 1.5rem;max-width:250px}@media (max-width: 576px){.post-content .img-right{float:none;max-width:100%;margin:1.5rem 0}}.post-content .img-center{display:block;margin:2rem auto;max-width:500px}.post-content .clearfix::after{content:"";display:table;clear:both}.post-content iframe{width:100%;max-width:560px;height:315px;margin:2rem 0;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.05)}@media (max-width: 576px){.post-content iframe{height:250px}}.post-content .video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;margin:2rem 0;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.05)}.post-content .video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;border-radius:8px}.post-footer{background-color:#F5ECD8;padding:4rem 0}.post-cta{text-align:center;padding:3rem;background-color:#fff;border-radius:16px;margin-bottom:3rem}.post-cta h3{margin-bottom:.5rem}.post-cta p{color:#7A6A5A;margin-bottom:1.5rem}.post-nav{display:flex;justify-content:space-between;gap:1.5rem}.post-nav a{color:#5A4A3A;font-weight:500}.post-nav a:hover{color:#A8864D}.post-nav .prev{margin-right:auto}.post-nav .next{margin-left:auto;text-align:right}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(320px, 1fr));gap:2rem}.bio-section{display:grid;grid-template-columns:300px 1fr;gap:4rem;align-items:flex-start}@media (max-width: 768px){.bio-section{grid-template-columns:1fr}}.bio-photo{position:sticky;top:100px}@media (max-width: 768px){.bio-photo{position:static;max-width:250px;margin:0 auto}}.bio-photo img{border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,0.08)}.bio-content h2{margin-top:3rem}.bio-content h2:first-child{margin-top:0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem}@media (max-width: 768px){.contact-grid{grid-template-columns:1fr}}.contact-info h3{margin-bottom:1.5rem}.contact-map{border-radius:16px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,0.08)}.contact-map iframe{width:100%;height:350px;border:none}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));gap:2rem}.benefit-card{background-color:#fff;padding:2rem;border-radius:16px;box-shadow:0 2px 4px rgba(0,0,0,0.05)}.benefit-card h3{color:#A8864D;font-size:1.125rem;margin-bottom:1rem;display:flex;align-items:center;gap:1rem}.benefit-card h3::before{content:'';width:8px;height:8px;background-color:#C9A66B;border-radius:50%;flex-shrink:0}.benefit-card ul{list-style:none;padding:0;margin:0;font-size:.875rem;color:#666}.benefit-card ul li{padding:.5rem 0;border-bottom:1px solid #E8DCC8}.benefit-card ul li:last-child{border-bottom:none}
