:root{--font-serif:"Cormorant Garamond",serif;--font-sans:"Inter",sans-serif;--color-background:#f9f6f2;--color-text:#4a4238;--color-primary:#c5a57e;--color-primary-dark:#a2845e;--color-border:#e6e0d8;--hero-bg:#f5f1eb}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9f6f2;background-color:var(--color-background);color:#4a4238;color:var(--color-text);font-family:Inter,sans-serif;font-family:var(--font-sans);overscroll-behavior:none}.testimonial-carousel{margin:0 auto;max-width:800px;overflow:hidden;position:relative;width:100%}.testimonial-carousel-inner{display:flex;transition:transform .5s ease}.testimonial-slide{flex:0 0 100%;padding:2rem;text-align:center}.testimonial-quote{font-size:1.5rem}.testimonial-author{font-weight:700}.testimonial-carousel-controls{display:flex;justify-content:space-between;position:absolute;top:50%;transform:translateY(-50%);width:100%}.testimonial-carousel-button{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:2rem}.expanding-gallery{display:flex;margin:0 auto;padding:4rem 0;width:100%}.expanding-gallery-item{border-radius:10px;box-shadow:0 10px 20px #0000001a;flex:1 1;height:500px;margin:0 10px;overflow:hidden;position:relative;transition:flex .8s ease-in-out}.expanding-gallery-item:hover{flex:5 1}.expanding-gallery-item img{filter:grayscale(1);height:100%;object-fit:cover;transition:filter .8s ease,transform .8s ease-in-out;width:100%}.expanding-gallery-item:hover img{filter:grayscale(0);transform:scale(1.05)}.expanding-gallery-item .content{background:linear-gradient(0deg,#000c,#0000);bottom:0;color:#fff;left:0;padding:2rem;position:absolute;transform:translateY(100%);transition:transform .8s ease-in-out;width:100%}.expanding-gallery-item:hover .content{transform:translateY(0)}.expanding-gallery-item .content h2{font-size:1.5rem;margin:0}.expanding-gallery-item .content p{font-size:1rem;margin:.5rem 0 0}@media (max-width:768px){.expanding-gallery{flex-direction:column}.expanding-gallery-item{flex:1 1;margin:10px 0}.expanding-gallery-item:hover{flex:1 1}.expanding-gallery-item:hover img{transform:none}.expanding-gallery-item .content{background:linear-gradient(0deg,#0009,#0000);transform:translateY(0)}}.password-protect-container{align-items:center;background-color:var(--color-background);display:flex;justify-content:center;min-height:100vh;text-align:center}.password-protect-card{background-color:var(--color-white);border-radius:8px;box-shadow:0 10px 30px #0000001a;max-width:400px;padding:3rem;width:90%}.password-protect-logo{height:100px;margin-bottom:1.5rem}.password-protect-card h2{color:var(--color-primary);font-size:2rem;margin-bottom:1rem}.password-protect-card p{color:var(--color-text);margin-bottom:2rem}.password-protect-card input[type=password]{border:1px solid var(--color-border);border-radius:4px;font-size:1rem;margin-bottom:1.5rem;padding:1rem;width:calc(100% - 2rem)}.password-protect-card .cta-button{font-size:1.1rem;padding:1rem;width:100%}.password-protect-card .error-message{color:#e74c3c;font-size:.9rem;margin-top:1rem}.story-hero{background-color:var(--hero-bg);margin-bottom:4rem;padding:6rem 2rem;text-align:center}.story-hero h1{font-family:var(--font-serif);font-size:clamp(3rem,6vw,5rem);line-height:1.1;margin-bottom:1rem}.story-hero p{color:var(--color-text);font-size:1.25rem;margin:0 auto;max-width:700px;opacity:.8}.story-section{border-bottom:1px solid var(--color-border);padding:4rem 0}.story-intro{font-size:1.1rem;line-height:1.8;margin:0 auto 4rem;max-width:800px;text-align:center}.generation-split{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr;margin-bottom:4rem}.generation-split:last-of-type{margin-bottom:0}.generation-split:nth-child(2n) .image-placeholder{order:2}.generation-text h2{color:var(--color-primary);font-family:var(--font-serif);font-size:2.5rem;margin-bottom:1.5rem}.generation-text p{line-height:1.8;margin-bottom:1rem}.legacy-conclusion{background-color:var(--color-background);padding:6rem 2rem;text-align:center}.legacy-conclusion h2{font-family:var(--font-serif);font-size:2.8rem;margin-bottom:1.5rem}@media (max-width:768px){.generation-split{grid-template-columns:1fr}.generation-split:nth-child(2n) .image-placeholder{order:0}}.craft-hero{background-color:var(--hero-bg);margin-bottom:4rem;padding:6rem 2rem;text-align:center}.craft-hero h1{font-family:var(--font-serif);font-size:clamp(3rem,6vw,5rem);line-height:1.1;margin-bottom:1rem}.craft-hero p{color:var(--color-text);font-size:1.25rem;margin:0 auto;max-width:700px;opacity:.8}.craft-section{border-bottom:1px solid var(--color-border);padding:4rem 0}.craft-section.craft-content-split{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr;margin-bottom:4rem}.craft-section.craft-content-split:nth-child(2n) .image-placeholder{order:2}.craft-section .text-content h2{color:var(--color-primary);font-family:var(--font-serif);font-size:2.5rem;margin-bottom:1.5rem}.craft-section .text-content p{line-height:1.8;margin-bottom:1rem}.method-section{border-bottom:1px solid var(--color-border);padding:4rem 0}.method-section h2{font-family:var(--font-serif);font-size:2.8rem;margin-bottom:3rem;text-align:center}.method-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.method-item{background-color:var(--color-background-light);border:1px solid var(--color-border);border-radius:8px;padding:2rem}.method-item h3{color:var(--color-primary-dark);font-family:var(--font-serif);font-size:1.8rem;margin-bottom:1rem}.method-item p{line-height:1.7}.pull-quote{background-color:var(--color-primary-light);margin:4rem 0;padding:4rem 2rem;text-align:center}.pull-quote blockquote{color:var(--color-primary-dark);font-family:var(--font-serif);font-size:2rem;font-style:italic;line-height:1.4;margin:0 auto;max-width:900px}.final-word{background-color:var(--color-background);padding:6rem 2rem;text-align:center}.final-word h2{font-family:var(--font-serif);font-size:2.8rem;margin-bottom:1.5rem}@media (max-width:768px){.craft-section.craft-content-split{grid-template-columns:1fr}.craft-section.craft-content-split:nth-child(2n) .image-placeholder{order:0}}.gallery-hero{background-color:var(--hero-bg);margin-bottom:4rem;padding:6rem 2rem;text-align:center}.gallery-hero h1{font-family:var(--font-serif);font-size:clamp(3rem,6vw,5rem);line-height:1.1;margin-bottom:1rem}.gallery-hero p{color:var(--color-text);font-size:1.25rem;margin:0 auto;max-width:700px;opacity:.8}.gallery-grid{gap:1rem;padding:2rem 0}.gallery-item{border-radius:8px;box-shadow:0 4px 8px #0000001a;break-inside:avoid-column;margin-bottom:1rem;overflow:hidden}.gallery-item img{display:block;height:auto;object-fit:cover;transition:all .3s ease-in-out;width:100%}@media (min-width:769px){.gallery-grid{column-count:4}.gallery-item img{filter:grayscale(1)}.gallery-item:hover img{filter:grayscale(0);transform:scale(1.05)}}@media (max-width:1200px){.gallery-grid{column-count:3}}@media (max-width:768px){.gallery-grid{column-count:2}}@media (max-width:480px){.gallery-grid{column-count:1}}.contact-header{margin-bottom:4rem;text-align:center}.contact-header h1{font-family:var(--font-serif);font-size:clamp(3rem,6vw,5rem);margin-bottom:1rem}.contact-header p{color:var(--color-text-light);font-size:1.2rem;margin:0 auto;max-width:600px}.contact-form-container{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:8px;margin:0 auto;max-width:800px;padding:3rem}.contact-form .form-group{margin-bottom:1.5rem}.contact-form label{color:var(--color-primary-dark);display:block;font-weight:500;margin-bottom:.5rem}.contact-form input,.contact-form textarea{background-color:#fff;border:1px solid var(--color-border);border-color:var(--color-primary);border-radius:4px;box-shadow:0 0 0 3px #b9976e33;font-family:var(--font-sans);font-size:1rem;outline:none;padding:1rem;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.contact-form textarea{min-height:150px;resize:vertical}.success-message{padding:4rem 2rem;text-align:center}.success-message h2{font-family:var(--font-serif);font-size:2.5rem;margin-bottom:1rem}.sticky-cta-container{box-shadow:0 4px 10px #0000000d;left:0;opacity:0;position:fixed;transform:translateY(-100%);visibility:hidden;width:100%;z-index:9}.sticky-cta-container .cta-button{border:none;border-radius:0;box-shadow:none;font-size:1rem;font-weight:500;letter-spacing:1.5px;margin:0;padding:1.2rem 1rem;text-transform:uppercase;width:100%}@media (max-width:768px){.sticky-cta-container .cta-button{font-size:.9rem;letter-spacing:1.2px;padding:1rem}}.container{margin:0 auto;max-width:1800px;padding:0 1rem;width:90%}.content-page{padding:4rem 2rem}@media (max-width:768px){.container{padding:0 1rem}}.app-header{background-color:var(--color-background);border-bottom:1px solid var(--color-border);padding:1.5rem 0;position:sticky;top:0;z-index:10}.header-container{width:100%}.header-container,.logo-container{align-items:center;display:flex;flex-direction:column}.logo-container{margin-bottom:1rem}.logo-link{align-items:center;display:flex;flex-direction:column;text-decoration:none}.logo-img{height:88px}.logo-tagline-img{height:20px;margin-top:.25rem}.main-nav{align-items:center;display:flex}.main-nav a{border-right:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-sans);font-size:.85rem;font-weight:400;letter-spacing:1.2px;padding:.25rem 1.5rem;position:relative;text-decoration:none;text-transform:uppercase;transition:color .4s ease}.main-nav a:last-child{border-right:none}.main-nav a:after{background-color:var(--color-primary);bottom:-2px;content:"";height:1px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.19,1,.22,1);width:100%}.main-nav a:hover{color:var(--color-primary)}.main-nav a:hover:after{transform:scaleX(1)}.mobile-menu-button{display:none}.sticky-header-cta{bottom:0;font-size:1rem;left:50%;max-width:400px;padding:1rem 2rem;position:absolute;transform:translateX(-50%);width:90%;z-index:11}.hero{background-color:var(--hero-bg);display:grid;grid-template-columns:repeat(2,1fr);height:90vh}.hero-content{align-items:center;display:flex;justify-content:center;padding:2rem 4rem}.hero-text{max-width:550px}.hero-headline{font-size:clamp(3rem,6vw,4.5rem);line-height:1.15;margin-bottom:2rem}.hero-subheadline{font-size:clamp(1.1rem,2vw,1.25rem);line-height:1.7;margin-bottom:3rem;max-width:500px}.hero-image-container{height:100%;overflow:hidden}.hero-image{background-position:50%;background-size:cover;height:100%;width:100%}.cta-button{background:linear-gradient(145deg,var(--color-primary),var(--color-primary-dark));border:none;border-radius:4px;box-shadow:0 4px 15px #0003;color:#fff;cursor:pointer;font-family:var(--font-sans);font-size:1.1rem;font-weight:500;letter-spacing:1.5px;padding:1.2rem 3.5rem;text-transform:uppercase;transform:translateY(0);transition:all .4s ease}.cta-button:hover{background:linear-gradient(145deg,var(--color-primary-dark),var(--color-primary));box-shadow:0 8px 25px #0000004d;transform:translateY(-3px)}.cta-button:disabled{background:#999;box-shadow:none;cursor:not-allowed;transform:translateY(0)}.craft-section{background-color:var(--color-background);overflow:hidden;padding:10rem 0}.craft-section .section-title{color:var(--color-primary);font-size:clamp(4rem,10vw,8rem);font-weight:700;line-height:1;margin-bottom:8rem;text-align:center}.craft-steps{display:flex;flex-direction:column;gap:12rem}.step{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:repeat(2,1fr)}.step:nth-child(2n) .step-image-container{order:2}.step-image-container{aspect-ratio:4/3;border-radius:8px;overflow:hidden}.step-image-placeholder{border-radius:8px;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.19,1,.22,1);width:100%}.step:hover .step-image-placeholder{transform:scale(1.05)}.step-content{text-align:left}.step-number{color:var(--color-primary);font-size:1.5rem;font-weight:700;margin-bottom:1rem}.step h3{font-family:var(--font-serif);font-size:3.5rem;margin-bottom:2rem}.step p{font-size:1.2rem;line-height:1.8;max-width:500px}.testimonials-section{background-color:var(--hero-bg);left:50%;margin-left:-50vw;margin-right:-50vw;padding:6rem 0;position:relative;right:50%;text-align:center;width:100vw}.testimonials-grid{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));width:100%}.testimonial-card{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:8px;padding:2.5rem;transition:transform .4s cubic-bezier(.19,1,.22,1),box-shadow .4s cubic-bezier(.19,1,.22,1)}.testimonial-card:hover{box-shadow:0 15px 35px #0000001a;transform:translateY(-10px)}.testimonial-image-container{border:5px solid var(--color-background);border-radius:50%;box-shadow:0 5px 15px #0000001a;height:120px;margin:-6rem auto 1.5rem;overflow:hidden;position:relative;width:120px;z-index:2}.testimonial-image{height:100%;object-fit:cover;width:100%}.testimonial-quote{color:var(--color-text);font-family:var(--font-serif);font-size:1.2rem;font-style:italic;line-height:1.6;margin-bottom:1.5rem}.testimonial-name{color:var(--color-primary);font-weight:700;margin-bottom:.25rem}.testimonial-location{color:#777;font-size:.9rem}.gallery-section{background-color:var(--color-background);padding:10rem 0}.gallery-section .section-title{margin-bottom:1rem;text-align:center}.gallery-section .section-subtitle{margin-bottom:6rem;text-align:center}.gallery-collage{height:90vh;max-height:800px;position:relative;width:100%}.app-footer{background-color:var(--hero-bg);border-top:1px solid var(--color-border);left:50%;margin-left:-50vw;margin-right:-50vw;padding:4rem 0;position:relative;right:50%;text-align:center;width:100vw}.footer-links{margin-bottom:1.5rem}.footer-links span{color:var(--color-text);cursor:pointer;font-family:var(--font-sans);font-size:.9rem;letter-spacing:1px;margin:0 1.5rem;text-decoration:none;text-transform:uppercase;transition:color .3s ease}.footer-links span:hover{color:var(--color-primary)}.app-footer p{color:var(--color-text);font-size:.9rem;opacity:.7}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#0009;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{background:var(--color-background);border-radius:8px;box-shadow:0 15px 40px #0003;max-width:650px;padding:4rem;position:relative;text-align:center;width:90%}.close-button{background:none;border:none;color:#aaa;cursor:pointer;font-size:2.5rem;position:absolute;right:1.5rem;top:1.5rem;transition:color .3s ease,transform .3s ease}.close-button:hover{color:var(--color-primary);transform:rotate(90deg)}.modal-content h2{color:var(--color-text);font-family:var(--font-serif);font-size:2.5rem;margin-bottom:1rem}.modal-content p{color:#666;font-size:1.1rem;margin-bottom:3rem}.consultation-options,.location-options{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.option-card{border:1px solid var(--color-border);border-radius:6px;cursor:pointer;padding:2.5rem 2rem;transition:all .4s cubic-bezier(.19,1,.22,1)}.option-card:hover{border-color:var(--color-primary);box-shadow:0 10px 30px #00000014;transform:translateY(-8px) scale(1.03)}.option-card h3{color:var(--color-primary);font-family:var(--font-serif);font-size:1.5rem;font-weight:700;margin-bottom:.8rem}.modal-form{display:flex;flex-direction:column;gap:1.2rem;text-align:left}.modal-form .form-row{display:flex;gap:.5rem}.modal-form .form-row select{flex:1 1}.modal-form .form-row input{flex:2 1}.modal-form input,.modal-form select,.modal-form textarea{background-color:#fff;border:1px solid var(--color-border);border-radius:4px;font-family:var(--font-sans);font-size:1rem;padding:1rem;transition:border-color .3s ease,box-shadow .3s ease}.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #b9976e33;outline:none}.modal-form textarea{min-height:120px;resize:vertical}.modal-form .error-text{color:#c0392b;margin-bottom:0;margin-top:.5rem;text-align:center}.success-message{animation:fadeIn .5s ease}.success-message .cta-button{margin-top:1.5rem}.date-picker{margin-bottom:2rem}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.calendar-header button{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:1.5rem}.calendar-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(7,1fr)}.calendar-day,.calendar-day-name{padding:.75rem 0;text-align:center}.calendar-day{border-radius:4px;cursor:pointer;transition:background-color .3s ease,color .3s ease}.calendar-day:not(.past):hover{background-color:var(--color-border)}.calendar-day.selected{background-color:var(--color-primary);color:#fff}.calendar-day.past{color:#ccc;cursor:not-allowed}.time-picker{margin-bottom:2rem}.time-picker h4{font-size:1.2rem;margin-bottom:1rem}.time-slots{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.time-slot{background-color:var(--color-border);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;padding:.75rem;transition:background-color .3s ease,color .3s ease}.time-slot.selected,.time-slot:hover{background-color:var(--color-primary);color:#fff}@media (max-width:900px){.hero{grid-template-columns:1fr;height:auto}.hero-content{padding:4rem 2rem;text-align:center}.hero-image-container{height:60vh;order:-1}.header-container{align-items:center;flex-direction:row;justify-content:center;position:relative}.logo-container{margin-bottom:0}.logo-img{height:60px}.logo-tagline,.main-nav{display:none}.main-nav{align-items:center;background-color:var(--color-background);border-bottom:1px solid var(--color-border);flex-direction:column;left:0;padding:2rem 0;position:absolute;top:100%;width:100%}.main-nav.is-open{display:flex}.main-nav a{margin:1rem 0}.mobile-menu-button{background:none;border:none;color:var(--color-text);cursor:pointer;display:block;font-size:1.5rem;left:0;position:absolute}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{transform:scale(.95)}to{transform:scale(1)}}.modal-overlay.modal-enter{animation:fadeIn .3s ease-out}.modal-content.modal-enter{animation:scaleUp .3s ease-out,fadeIn .3s ease-out}.modal-steps{position:relative;transition:height .5s ease-in-out}.modal-step{left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .5s ease-in-out;visibility:hidden}.modal-step.active{opacity:1;position:static;visibility:visible}@media (max-width:768px){.step{grid-template-columns:1fr}.step:nth-child(2n) .step-image-container{order:0}.step:hover .step-image-placeholder{transform:none}}
/*# sourceMappingURL=main.ef950756.css.map*/