:root{--color-primary: #1F3A4D;--color-primary-rgb: 31, 58, 77;--color-primary-dark: #142733;--color-accent: #B85C34;--color-accent-rgb: 184, 92, 52;--color-accent-dark: #97492A;--color-success: #5B7A5E;--color-success-rgb: 91, 122, 94;--color-text-main: #221E19;--color-text-muted: #6C6255;--bg-primary: #FBF8F3;--bg-secondary: #F1EBE1;--bg-inverse: #14232E;--border-color: rgba(34, 30, 25, .1);--transition-base: all .35s cubic-bezier(.4, 0, .2, 1);--font-heading: "Fraunces", "Georgia", serif;--font-body: "Work Sans", "Helvetica Neue", sans-serif;--container-width: 1200px;--radius-sm: .5rem;--radius-md: 1.1rem;--radius-lg: 2rem}.reveal{opacity:0;transform:translateY(30px);transition:all .8s ease-out}.reveal.active{opacity:1;transform:translateY(0)}.text-gradient{font-family:var(--font-heading);font-style:italic;font-weight:500;color:var(--color-accent)}.delay-100{transition-delay:.1s}.delay-200{transition-delay:.2s}.delay-300{transition-delay:.3s}.delay-400{transition-delay:.4s}.text-center{text-align:center}.text-justify{text-align:justify}.section-padding{padding:5rem 0}.w-full{width:100%}.mt-0{margin-top:0}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mt-12{margin-top:3rem}.mb-0{margin-bottom:0}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.bg-primary{background-color:var(--bg-primary)}.bg-inverse{background-color:var(--bg-inverse)}.text-primary{color:var(--color-primary)}.text-accent{color:var(--color-accent)}.text-success{color:var(--color-success)}.text-muted{color:var(--color-text-muted)}.text-green{color:var(--color-success)}.bg-green{background-color:var(--color-success)}.icon-green{background:transparent;border:1.5px solid rgba(var(--color-success-rgb),.3);color:var(--color-success)}.text-gradient-green{font-family:var(--font-heading);font-style:italic;font-weight:500;color:var(--color-success)}.bg-white{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.grid-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.flex-row{display:flex;align-items:flex-start;gap:1.5rem;text-align:left;padding:2rem}.shrink-0{flex-shrink:0;margin:0}.container-sm{max-width:1000px;margin:0 auto}@keyframes pulse-accent{0%{transform:translateY(-50%) scale(.95);box-shadow:0 0 rgba(var(--color-accent-rgb),.6)}70%{transform:translateY(-50%) scale(1.1);box-shadow:0 0 0 10px rgba(var(--color-accent-rgb),0)}to{transform:translateY(-50%) scale(.95);box-shadow:0 0 rgba(var(--color-accent-rgb),0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}@keyframes scroll-carousel{0%{transform:translate(0)}to{transform:translate(-1500px)}}*{margin:0;padding:0;box-sizing:border-box}img{max-width:100%;height:auto}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--color-text-main);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;letter-spacing:-.01em}a{text-decoration:none;color:inherit}ul{list-style:none}.container{max-width:var(--container-width);margin:0 auto;padding:0 1.5rem}section{padding:5rem 0}.section-header{margin-bottom:5rem}.section-tag{font-family:var(--font-body);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3em;color:var(--color-primary);display:block;margin-bottom:1rem}.section-title{font-size:clamp(2rem,5vw,3rem);font-weight:500;letter-spacing:-.01em}.btn-main,.btn-nav,.btn-outline{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:600;text-transform:uppercase;letter-spacing:.06em;transition:var(--transition-base);cursor:pointer;text-decoration:none;border:1px solid transparent}.btn-main,.btn-outline{padding:1rem 2rem;font-size:.85rem}.btn-nav{padding:.6rem 1.25rem;font-size:.7rem}.btn-primary,.btn-nav{background:var(--color-primary);color:var(--bg-primary);box-shadow:0 8px 20px rgba(var(--color-primary-rgb),.22);border:1px solid transparent}.btn-primary:hover,.btn-nav:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 10px 24px rgba(var(--color-primary-rgb),.28);color:var(--bg-primary)}.btn-outline{background:transparent;border-color:#221e192e;color:var(--color-text-main)}.btn-outline:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.btn-icon-round{width:2.75rem;height:2.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:var(--bg-primary);border:1px solid transparent;box-shadow:0 4px 10px rgba(var(--color-primary-rgb),.3);transition:var(--transition-base);font-size:1.1rem;text-decoration:none;cursor:pointer}.btn-icon-round:hover{transform:translateY(-2px);background:transparent;color:var(--color-primary);border-color:var(--color-primary);box-shadow:none}button:disabled,.btn-main:disabled,.btn-primary:disabled,.btn-nav:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(1);transform:none!important;box-shadow:none!important}nav{position:fixed;top:0;width:100%;z-index:1000;padding:.8rem 0;background:#fbf8f3d9;backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);transition:padding .3s ease,background .3s ease}nav.scrolled{padding:.5rem 0;background:#fbf8f3fa;box-shadow:0 4px 6px -1px #221e190d}nav.scrolled .logo-img{height:45px}nav .container{display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.5rem;font-weight:800;letter-spacing:-.05em}.logo span{color:var(--color-accent)}.logo-img{height:65px;width:auto;display:block;transition:height .3s ease}.nav-menu{position:fixed;top:0;left:0;width:100%;height:100vh;background:var(--bg-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3rem;transform:translate(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);z-index:999}.nav-menu.active{transform:translate(0)}.nav-links{display:flex;flex-direction:column;align-items:center;gap:2rem}.burger-menu{display:block;font-size:1.5rem;cursor:pointer;z-index:1000;color:var(--color-text-main)}@media(min-width:1200px){.burger-menu{display:none}.nav-menu{position:static;height:auto;width:auto;background:transparent;flex-direction:row;transform:none;gap:1.5rem}.nav-links{flex-direction:row;gap:2rem;position:absolute;left:50%;transform:translate(-50%);width:max-content}}.nav-links a{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);transition:color .3s ease}.nav-links a:hover,.nav-links a.active{color:var(--color-primary)}.nav-buttons{display:flex;align-items:center;gap:.5rem}.hero{min-height:100vh;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;padding-top:120px;padding-bottom:80px}.hero-video-container{position:absolute;top:0;left:0;width:100%;height:100%}#hero-video{position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;transform:translate(-50%,-50%);object-fit:cover}.video-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#fbf8f326,#fbf8f3)}.hero-content{max-width:900px;padding:0 1.5rem;z-index:10}.badge-container{margin-bottom:2rem;display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.badge{font-family:var(--font-body);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;padding:.5rem 1.1rem;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--bg-primary)}.badge-primary{color:var(--color-primary);border-color:rgba(var(--color-primary-rgb),.3)}.badge-accent{color:var(--color-accent);border-color:rgba(var(--color-accent-rgb),.3);position:relative;padding-left:2.25rem}.badge-accent:before{content:"";position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--color-accent);border-radius:50%;animation:pulse-accent 2s infinite}.hero h1{font-size:clamp(2.5rem,8vw,5.25rem);font-weight:500;line-height:1.05;letter-spacing:-.01em;margin-bottom:2rem}.hero p{font-size:1.125rem;color:var(--color-text-muted);max-width:600px;margin:0 auto 2.5rem;font-weight:500}.hero-btns{display:flex;flex-direction:column;gap:1rem;justify-content:center}@media(min-width:640px){.hero-btns{flex-direction:row}}.scroll-indicator{position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%);opacity:.6;animation:bounce 2s infinite;z-index:20;color:var(--color-text-main);font-size:1.5rem;cursor:pointer;transition:opacity .3s ease}.scroll-indicator:hover{opacity:1}.hero-page{min-height:400px;height:60vh}.service-card{background:var(--bg-primary);padding:2.5rem;border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:0 2px 14px #221e190a;transition:var(--transition-base)}.service-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px #221e1914;border-color:#221e1929}.service-card h4{font-size:1.35rem;font-weight:600;letter-spacing:-.01em;margin-bottom:1rem}.service-card p{color:var(--color-text-muted);font-size:.95rem;margin-bottom:1.5rem}.card-icon{width:3.5rem;height:3.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:2rem;background:transparent;border:1.5px solid;transition:var(--transition-base)}.icon-primary{color:var(--color-primary);border-color:rgba(var(--color-primary-rgb),.3)}.icon-accent{color:var(--color-accent);border-color:rgba(var(--color-accent-rgb),.3)}.icon-dark{color:var(--color-text-main);border-color:#221e1933}.service-card:hover .icon-primary{background:var(--color-primary);color:var(--bg-primary);border-color:var(--color-primary)}.service-card:hover .icon-accent{background:var(--color-accent);color:var(--bg-primary);border-color:var(--color-accent)}.service-card:hover .icon-dark{background:var(--color-text-main);color:var(--bg-primary);border-color:var(--color-text-main)}.card-link{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);display:inline-flex;align-items:center;transition:transform .3s ease}.service-card-blue{background:var(--color-primary);color:var(--bg-primary)}.service-card-blue .card-icon{border-color:#fbf8f366;color:var(--bg-primary)}.service-card-blue:hover .card-icon{background:var(--bg-primary);color:var(--color-primary);border-color:var(--bg-primary)}.service-card:hover .card-link{transform:translate(5px)}.pro-card{background:#fbf8f30a;border:1px solid rgba(251,248,243,.08);padding:3rem;border-radius:var(--radius-md);transition:var(--transition-base)}.pro-card:hover{background:#fbf8f312;border-color:var(--color-accent)}.pro-card h4{font-size:1.5rem;margin-bottom:1.5rem;color:var(--color-accent)}.pro-card .service-list li{color:#fbf8f3bf}.pro-card .text-primary{color:var(--color-accent)}.pro-card p{color:#fbf8f3a6;margin-bottom:2rem}.testimonial-card{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);padding:3rem;border-radius:var(--radius-md);border:1px solid var(--border-color);position:relative}.testimonial-card:before{content:"";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;top:2rem;right:2rem;font-size:2rem;color:#221e190f}.card-transparent{text-align:center;border:none;box-shadow:none;background:transparent}.process-step{width:4rem;height:4rem;background:var(--color-accent);color:var(--bg-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:1.5rem;font-weight:600;margin:0 auto 1.5rem}.stat-card{background:var(--bg-secondary);padding:1.5rem;border-radius:var(--radius-sm);border:1px solid var(--border-color)}.stat-card h5{font-family:var(--font-body);font-size:.7rem;font-weight:700;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.5rem}.stat-card .value{font-size:1.2rem;font-weight:600}.portfolio-item{position:relative;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4/3;cursor:pointer}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.portfolio-item:hover img{transform:scale(1.06)}.portfolio-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(20,35,46,.85) 0%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;opacity:0;transition:opacity .4s ease}.portfolio-item:hover .portfolio-overlay{opacity:1}.portfolio-overlay h4{color:var(--bg-primary);font-size:1.25rem;font-weight:600}.portfolio-overlay p{color:#fbf8f3bf;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em}.portfolio-grid .portfolio-item:first-child{grid-row:span 1}@media(min-width:1024px){.portfolio-grid{grid-template-columns:1.3fr 1fr 1fr}}.testimonials-grid .testimonial-card:nth-child(2){transform:translateY(1.5rem)}@media(max-width:767px){.testimonials-grid .testimonial-card:nth-child(2){transform:none}}@media(max-width:768px){.portfolio-overlay{opacity:1;background:linear-gradient(to top,rgba(20,35,46,.9) 0%,rgba(20,35,46,.4) 50%,transparent 100%)}}.partners{padding:4rem 0;background:var(--bg-primary);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);overflow:hidden}.partners p{text-align:center;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3em;color:var(--color-text-muted);margin-bottom:3rem}.carousel-track{display:flex;width:4500px;animation:scroll-carousel 40s linear infinite}.logo-slide{width:250px;height:100px;display:flex;align-items:center;justify-content:center;filter:grayscale(1);opacity:.5;transition:var(--transition-base);padding:0 2rem}.logo-slide img{max-width:100%;max-height:100%;object-fit:contain}.logo-slide:hover{filter:grayscale(0);opacity:1}.services{background-color:var(--bg-secondary)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.service-list{margin-bottom:2rem}.service-list li{font-size:.85rem;font-weight:500;color:var(--color-text-muted);margin-bottom:.5rem;display:flex;align-items:center}.service-list i{margin-right:.5rem;font-size:.8rem}.pro-section{background:linear-gradient(180deg,var(--bg-inverse) 0%,#0c161e 100%);color:var(--bg-primary);border-top:1px solid rgba(251,248,243,.1);border-bottom:1px solid rgba(251,248,243,.05);position:relative;box-shadow:inset 0 10px 30px -10px #00000080}.pro-section .section-title{color:var(--bg-primary)}.pro-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.pro-grid{grid-template-columns:1fr 1fr}}.portfolio{background-color:var(--bg-primary)}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.testimonials{background-color:var(--bg-secondary)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.stars{color:var(--color-accent);margin-bottom:1.5rem;font-size:.8rem}.testimonial-text{font-family:var(--font-heading);font-size:1.1rem;color:var(--color-text-main);font-weight:400;margin-bottom:1rem;font-style:italic;line-height:1.5;display:-webkit-box;-webkit-line-clamp:10;-webkit-box-orient:vertical;overflow:hidden}.testimonial-text.expanded{-webkit-line-clamp:unset;overflow:visible}.testimonial-toggle{display:none;align-self:flex-start;background:none;border:none;padding:0;margin:0 0 1.5rem;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);cursor:pointer}.testimonial-toggle.visible{display:inline-block}.testimonial-author{display:flex;align-items:center;gap:1rem;margin-top:auto;padding-top:1.5rem}.author-avatar{width:3rem;height:3rem;border-radius:50%;background-color:var(--bg-secondary);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:600;color:var(--color-primary)}.author-info h5{font-size:.95rem;font-weight:700}.author-info p{font-size:.75rem;color:var(--color-text-muted);font-weight:600}.experience{background:var(--bg-primary);position:relative}.experience .container{display:grid;grid-template-columns:1fr;gap:5rem;align-items:center}@media(min-width:1024px){.experience .container{grid-template-columns:1fr 1fr}}.exp-image{position:relative;overflow:visible;border-radius:var(--radius-md)}.img-rounded-wrapper{overflow:hidden}.exp-image img{width:100%;height:auto;object-fit:cover;display:block;transition:transform .7s ease}.exp-badge{position:absolute;bottom:-1.5rem;left:0;background:var(--bg-inverse);color:var(--bg-primary);padding:1.5rem;border-radius:var(--radius-md);z-index:20;display:block;box-shadow:0 20px 30px #14232e33;max-width:200px}@media(min-width:768px){.exp-badge{bottom:-2.5rem;left:-2.5rem;padding:2rem;max-width:none}}.exp-stats{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:2.5rem 0}.contact-cta{background:var(--bg-primary)}.cta-card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:6rem 2rem;position:relative;overflow:hidden;text-align:center;border:1px solid var(--border-color);box-shadow:inset 0 0 100px rgba(var(--color-primary-rgb),.03)}.cta-card h2{font-size:clamp(2rem,5vw,3.5rem);font-weight:500;letter-spacing:-.01em;margin-bottom:1.5rem}.cta-card p{color:var(--color-text-muted);font-size:1.25rem;max-width:600px;margin:0 auto 3rem;font-weight:500}.cta-form{display:flex;flex-direction:column;gap:1rem;justify-content:center;max-width:600px;margin:0 auto}@media(min-width:640px){.cta-form{flex-direction:row}}.cta-input{flex-grow:1;padding:1rem 1.5rem;border-radius:var(--radius-sm);border:1.5px solid var(--border-color);background:var(--bg-primary);font-family:inherit;font-size:.95rem;outline:none;transition:var(--transition-base)}.cta-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb),.08)}.cta-footer{margin-top:3rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted)}.cta-footer strong{color:var(--color-text-main);margin-left:.5rem}.faq{padding:8rem 0;background-color:var(--bg-secondary)}.faq-list{max-width:800px;margin:0 auto}details{background:var(--bg-primary);border-radius:var(--radius-md);margin-bottom:1rem;border:1px solid var(--border-color);transition:var(--transition-base)}summary{padding:1.75rem 2rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-heading);font-weight:600;font-size:1.2rem}summary::-webkit-details-marker{display:none}.faq-icon{width:2rem;height:2rem;background:var(--bg-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:var(--transition-base)}details[open] .faq-icon{background:var(--color-primary);color:#fff;transform:rotate(180deg)}.faq-content{padding:0 2rem 2rem;color:var(--color-text-muted);font-weight:500;overflow:hidden;transition:all .2s ease-out}.installations-grid,.grid-reasons{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:640px){.installations-grid,.grid-reasons{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.installations-grid,.grid-reasons{grid-template-columns:repeat(3,1fr)}}footer{padding:6rem 0 3rem;background-color:var(--bg-primary);border-top:1px solid var(--border-color)}.footer-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:4rem;margin-bottom:5rem}@media(min-width:640px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.footer-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1280px){.footer-grid{grid-template-columns:1.3fr repeat(4,1fr)}}.footer-logo{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.footer-logo span{color:var(--color-accent)}.footer-desc{font-size:.9rem;color:var(--color-text-muted);margin-bottom:2rem;line-height:1.7}.footer-title{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em;margin-bottom:2.5rem;color:var(--color-text-main);position:relative}.footer-title:after{content:"";position:absolute;left:0;bottom:-.75rem;width:2rem;height:2px;background:var(--color-primary)}.footer-links li{margin-bottom:1rem}.footer-links a{color:var(--color-text-muted);font-size:.9rem;font-weight:600;transition:color .3s ease,transform .3s ease;display:inline-block}.footer-links a:hover{color:var(--color-primary);transform:translate(5px)}.contact-info{display:flex;flex-direction:column;gap:1.25rem}.contact-item{display:flex;gap:1rem;font-size:.9rem;color:var(--color-text-muted);font-weight:600}.contact-item i{color:var(--color-primary);width:1rem;margin-top:.25rem}.opening-hours{margin-top:2rem;padding:1.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm);font-size:.85rem}.opening-hours h6{font-weight:800;margin-bottom:.75rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.hours-row{display:flex;justify-content:space-between;gap:.75rem;margin-bottom:.5rem;color:var(--color-text-muted);white-space:nowrap}.hours-row.highlight{color:var(--color-accent);font-weight:700}.footer-social{display:flex;gap:1.25rem;margin-top:1rem}.social-btn{width:2.5rem;height:2.5rem;background:var(--bg-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);transition:var(--transition-base)}.social-btn:hover{background:var(--color-primary);color:#fff;transform:translateY(-3px)}.certifications-minimal{display:flex;gap:1.5rem;margin-top:3rem;opacity:.6}.cert-tag{font-size:.6rem;font-weight:700;padding:.25rem .5rem;border:1.5px solid var(--border-color);border-radius:4px;text-transform:uppercase}.copyright{padding-top:2.5rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:1.5rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted)}@media(min-width:768px){.copyright{flex-direction:row}}.legal-links{display:flex;gap:2rem}.booking-section{padding:2rem 0;background:var(--bg-secondary)}.booking-wizard{background:var(--bg-primary);border-radius:var(--radius-md);box-shadow:0 10px 30px #221e190f}.wizard-header{padding:2rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.progress-bar-container{display:flex;justify-content:space-between;position:relative;max-width:700px;margin:0 auto;width:100%}.progress-line{position:absolute;top:50%;left:0;width:100%;height:2px;background:var(--border-color);transform:translateY(-50%);z-index:0}.progress-line-fill{position:absolute;top:50%;left:0;width:0%;height:2px;background:var(--color-primary);transform:translateY(-50%);z-index:0;transition:width .3s ease}.step{position:relative;z-index:1;background:var(--bg-primary);padding:0 1rem;text-align:center;flex:1;display:flex;flex-direction:column;align-items:center}.step-circle{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--border-color);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;font-weight:700;margin:0 auto;transition:all .3s ease}.step.active .step-circle,.step.completed .step-circle{background:var(--color-primary);color:#fff}.step span{font-size:.875rem;font-weight:600;color:var(--color-text-muted);margin-top:.5rem;display:block}.step.active span{color:var(--color-primary)}.wizard-content{padding:1.5rem;height:450px;overflow-y:auto}.service-selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.service-option{cursor:pointer;height:100%;display:block}.option-card{border:2px solid var(--border-color);border-radius:1rem;padding:2rem;text-align:center;transition:all .3s ease;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.service-option input:checked+.option-card{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.06)}.calendar-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:1rem}.calendar-container{border:1px solid var(--border-color);border-radius:1rem;padding:1rem}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calendar-header button{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.5rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem;text-align:center}.calendar-day{padding:.25rem;cursor:pointer;border-radius:.5rem;font-size:.9rem}.calendar-day:hover:not(.prev-date){background:#f1f5f9}.slots-container h5{margin-bottom:1rem;font-weight:600}#time-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}#booking-form{max-width:600px;margin:0 auto;display:grid;gap:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:.6rem;border:1px solid var(--border-color);border-radius:.5rem;font-family:inherit}.wizard-footer{padding:1.5rem 3rem;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;background:transparent;border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);margin-top:2rem}@media(max-width:768px){.wizard-content{padding:1.5rem;height:auto;overflow-y:visible}.calendar-layout,.form-row{grid-template-columns:1fr}.wizard-footer{padding:1rem;gap:.5rem}.wizard-footer button,.wizard-footer .btn-wrapper{flex:1;width:100%}.wizard-footer button{padding:.8rem .5rem;font-size:.75rem;width:100%}.step span{display:none}.step.active span{display:block;font-size:.75rem}}.btn-wrapper{position:relative;display:inline-flex}.tooltip{visibility:hidden;background-color:var(--bg-inverse);color:#fff;text-align:center;border-radius:6px;padding:5px 10px;position:absolute;z-index:10;bottom:125%;left:50%;transform:translate(-50%);opacity:0;transition:opacity .3s;font-size:.75rem;white-space:normal;width:max-content;max-width:200px;pointer-events:none}.tooltip:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--bg-inverse) transparent transparent transparent}.btn-wrapper.show-tooltip .tooltip{visibility:visible;opacity:1}.stripe-field-group{margin-bottom:1rem}.stripe-field-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.9rem;color:var(--text-color)}.stripe-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stripe-input-wrapper{background:#fff;border:1px solid var(--border-color);border-radius:6px;padding:10px 12px;display:flex;align-items:center;box-shadow:0 1px 2px #0000000d;transition:all .2s}.stripe-input-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb),.1)}.input-icon{color:var(--color-text-muted);margin-right:.75rem;font-size:1rem}.stripe-input-container{flex:1}.stripe-input{border:none;outline:none;width:100%;font-size:1rem;color:var(--text-color);background:transparent}.stripe-input::placeholder{color:var(--color-text-muted)}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.blog-card{display:flex;flex-direction:column;background:var(--bg-primary);padding:2.5rem;border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:0 2px 14px #221e190a;transition:var(--transition-base)}.blog-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px #221e1914;border-color:#221e1929}.blog-card-tag{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--color-accent);margin-bottom:1rem}.blog-card h4{font-size:1.35rem;font-weight:600;letter-spacing:-.01em;margin-bottom:1rem}.blog-card p{color:var(--color-text-muted);font-size:.95rem;margin-bottom:1.5rem;flex-grow:1}.blog-card-date{font-size:.75rem;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.article-header{max-width:780px;margin:0 auto;text-align:center}.article-header h1{font-size:clamp(1.75rem,4vw,2.75rem);line-height:1.2}.article-meta{display:flex;justify-content:center;gap:1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-top:1.5rem}.article-meta .article-tag{color:var(--color-accent)}.article-content{max-width:720px;margin:0 auto;line-height:1.8;color:var(--color-text-main)}.article-content p{margin-bottom:1.5rem}.article-content h2{font-size:1.75rem;font-weight:600;margin:3rem 0 1.25rem}.article-content h3{font-size:1.3rem;font-weight:600;margin:2.5rem 0 1rem}.article-content ul,.article-content ol{margin:0 0 1.5rem 1.5rem}.article-content li{margin-bottom:.6rem;color:var(--color-text-muted)}.article-content strong{color:var(--color-text-main)}.article-content a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px}.article-content blockquote{font-family:var(--font-heading);font-style:italic;font-size:1.25rem;color:var(--color-text-main);background:var(--bg-secondary);border-radius:var(--radius-md);padding:1.75rem 2rem;margin:2.5rem 0}.article-content blockquote p:last-child{margin-bottom:0}.article-content table{width:100%;border-collapse:collapse;margin:0 0 2rem;font-size:.95rem}.article-content th,.article-content td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);text-align:left}.article-content th{font-family:var(--font-body);font-weight:700;text-transform:uppercase;font-size:.7rem;letter-spacing:.08em;color:var(--color-text-muted)}.article-back{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);margin-bottom:2rem}
