:root{font-family:Noto Sans KR,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";line-height:1.6;font-weight:400;--primary-green: #11966e;--light-green: #6bb879;--bright-green: #79c777;--dark-green: #0d7a5a;--very-light-green: #6bb87933;--very-light-bright-green: #79c77733;--very-light-blue: #b6e4ff99;--white: #ffffff;--off-white: #f9fafb;--text-dark: #3f3937;--text-gray: #6b7280;--border-color: #e5e7eb;--footer-bg: #282423;color:var(--text-dark);background-color:var(--white);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(5px)}50%{transform:translateY(-5px)}}@keyframes bubble{0%{transform:translateY(100vh) scale(.6)}to{transform:translateY(-100px) scale(1)}}@keyframes bubble-wave{0%{transform:translate(-50px)}to{transform:translate(50px)}}.fade-in{animation:fadeIn 1s ease-out}.nav{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 5%;max-width:1400px;margin:0 auto;width:100%;animation:slideInLeft .6s ease-out}.logo-container{display:flex;align-items:center;gap:.75rem;transition:transform .3s ease;animation:float 5s ease-in-out infinite}.logo-container:hover{transform:scale(1.05)}.logo{height:50px;width:auto}.brand-name{font-size:1.5rem;font-weight:700;color:var(--primary-green)}.nav-links{display:flex;gap:2rem}.nav-links a{color:var(--text-dark);text-decoration:none;font-weight:500;transition:all .3s ease;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:var(--primary-green);transition:width .3s ease}.nav-links a:hover:after{width:100%}.nav-links a:hover{color:var(--primary-green)}.hero{background:linear-gradient(135deg,var(--very-light-green) 0%,var(--very-light-bright-green) 100%);padding:2rem 5% 6rem;min-height:90vh;display:flex;flex-direction:column;position:relative;overflow:hidden}.floating-bubbles{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0;pointer-events:none}.bubble-container{position:absolute;animation:bubble 10s ease}.bubble{animation:bubble-wave 2s ease-in-out infinite alternate;background:var(--very-light-blue);border-radius:50%;position:absolute}.hero-content{max-width:1400px;margin:auto;text-align:center;padding:4rem 2rem;position:relative;z-index:1}.hero-title{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1.1;margin-bottom:1.5rem;color:var(--text-dark)}.highlight{color:var(--primary-green);position:relative;display:inline-block}.hero-subtitle{font-size:clamp(1.1rem,2vw,1.3rem);color:var(--text-gray);max-width:700px;margin:0 auto 2.5rem;line-height:1.8}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{padding:1rem 2rem;font-size:1rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;transition:all .3s ease;font-family:inherit}.btn-large{padding:1.2rem 2.5rem;font-size:1.1rem}.btn-primary{background:linear-gradient(135deg,var(--dark-green) 0%,var(--primary-green) 100%);color:var(--white);box-shadow:0 4px 15px #11966e4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #11966e66}.btn-secondary{background:var(--white);color:var(--dark-green);border:2px solid var(--dark-green)}.btn-secondary:hover{background:var(--very-light-green);transform:translateY(-2px)}.btn-secondary-light{background:#fff3;color:var(--white);border:2px solid var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary-light:hover{background:#ffffff4d;transform:translateY(-2px)}.btn-outline{background:transparent;color:var(--dark-green);border:2px solid var(--dark-green)}.btn-outline:hover{background:var(--dark-green);color:var(--white)}.services{padding:6rem 5%;background:var(--off-white)}.section-title{text-align:center;font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:1rem;color:var(--text-dark)}.section-subtitle{text-align:center;font-size:1.2rem;color:var(--text-gray);margin-bottom:3rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.service-card{background:var(--white);padding:2rem;border-radius:20px;border:2px solid var(--border-color);transition:all .3s ease;position:relative;overflow:hidden}.service-card.featured{border-color:var(--primary-green);box-shadow:0 10px 30px #11966e26}.service-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px #0000001a}.popular-badge{position:absolute;top:20px;right:20px;background:var(--dark-green);color:var(--white);padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;z-index:2}.service-image{margin-bottom:1.5rem;border-radius:15px;overflow:hidden}.service-placeholder{width:100%;height:350px;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.service-card h3{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-dark)}.service-card>p{color:var(--text-gray);line-height:1.7;margin-bottom:1.5rem}.service-features{list-style:none;margin-bottom:1.5rem}.service-features li{padding:.5rem 0;color:var(--text-gray)}.features{padding:6rem 5%;background:var(--white)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-card{background:var(--white);padding:2.5rem;border-radius:20px;border:2px solid var(--border-color);transition:all .3s ease;text-align:center}.feature-card:hover{border-color:var(--primary-green);transform:translateY(-5px);box-shadow:0 10px 30px #11966e26}.feature-icon{font-size:3rem;margin-bottom:1rem;display:inline-block;transition:transform .3s ease}.feature-card:hover .feature-icon{transform:scale(1.2) rotate(5deg)}.feature-card h3{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--primary-green)}.feature-card p{color:var(--text-gray);line-height:1.7}.before-after{padding:6rem 5%;background:var(--off-white)}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;max-width:1200px;margin:0 auto}.gallery-item{transition:transform .3s ease}.gallery-item:hover{transform:scale(1.02)}.image-comparison{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.comparison-side{flex:1}.comparison-divider{font-size:2rem;color:var(--primary-green);font-weight:700}.image-placeholder{border-radius:15px;padding:3rem 2rem;text-align:center;position:relative;overflow:hidden;transition:all .3s ease}.image-placeholder span{position:absolute;top:10px;left:10px;background:#000000b3;color:#fff;padding:.3rem .8rem;border-radius:8px;font-size:.85rem;font-weight:600}.before{background:linear-gradient(135deg,#f3f4f6,#e5e7eb)}.after{background:linear-gradient(135deg,var(--very-light-green) 0%,#d4f1e8 100%)}.messy-room,.clean-room{font-size:4rem;margin-top:1rem}.gallery-caption{text-align:center;font-weight:600;color:var(--text-dark);margin-top:1rem}.testimonials{padding:6rem 5%;background:var(--white)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.testimonial-card{background:var(--off-white);padding:2rem;border-radius:20px;transition:all .3s ease;border:2px solid transparent}.testimonial-card:hover{transform:translateY(-5px);border-color:var(--primary-green);box-shadow:0 10px 30px #11966e1a}.stars{font-size:1.2rem;margin-bottom:1rem;color:#fbbf24}.testimonial-text{color:var(--text-gray);line-height:1.8;margin-bottom:1.5rem;font-style:italic}.testimonial-author{display:flex;align-items:center;gap:1rem}.author-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--primary-green) 0%,var(--light-green) 100%);display:flex;align-items:center;justify-content:center;color:var(--white);font-weight:700;font-size:1.2rem}.author-name{font-weight:600;color:var(--text-dark)}.author-title{font-size:.9rem;color:var(--text-gray)}.cta-section{background:linear-gradient(135deg,var(--primary-green) 0%,var(--light-green) 100%);padding:5rem 5%;color:var(--white);text-align:center}.cta-content h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem}.cta-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.95}.email-input{flex:1;min-width:250px;padding:1rem 1.5rem;border-radius:12px;border:none;font-size:1rem;font-family:inherit;transition:all .3s ease}.email-input:focus{outline:3px solid rgba(255,255,255,.5);transform:translateY(-2px)}.footer{background:var(--footer-bg);color:var(--white);padding:3rem 5% 1rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:3rem;max-width:1200px;margin:0 auto 2rem}.footer-section{display:flex;flex-direction:column;gap:.75rem;justify-content:center}.footer-section h4{color:var(--bright-green);font-size:1.1rem;margin-bottom:.5rem}.footer-section a{color:#ffffffb3;text-decoration:none;transition:color .3s ease}.footer-section a:hover{color:var(--bright-green)}.footer-section p{color:#ffffffb3;line-height:1.6}.footer-logo{height:40px;width:auto;margin-bottom:.5rem;filter:brightness(0) invert(1)}.footer-bottom{text-align:center;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1);color:#ffffff80;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-links{display:flex;gap:2rem}.footer-links a{color:#ffffff80;text-decoration:none}.footer-links a:hover{color:var(--bright-green)}@media(max-width:768px){.nav{flex-direction:column;gap:1rem}.nav-links{gap:1.5rem;font-size:.9rem}.hero-content{padding:2rem 1rem}.cta-buttons{flex-direction:column;align-items:stretch}.services-grid,.features-grid{grid-template-columns:1fr}.image-comparison{flex-direction:column;gap:1.5rem}.comparison-divider{transform:rotate(90deg)}.email-input{min-width:100%}.footer-bottom{flex-direction:column;text-align:center}.footer-links{justify-content:center}}html{scroll-behavior:smooth}.before-after-slider{position:relative;width:100%;height:400px;overflow:hidden;border-radius:20px;cursor:ew-resize;-webkit-user-select:none;user-select:none;box-shadow:0 10px 30px #0000001a;border:3px solid #e5e7eb;transition:border-color .3s ease;margin:auto}.before-after-slider:hover{border-color:#11966e}.slider-image{position:absolute;top:0;left:0;width:100%;height:100%}.slider-image img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.before-image{z-index:2}.after-image{z-index:1}.image-label{position:absolute;top:20px;padding:.5rem 1rem;background:#000000bf;color:#fff;font-weight:600;font-size:.9rem;border-radius:8px;z-index:10;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.before-label{left:20px}.after-label{right:20px}.slider-handle{position:absolute;top:0;bottom:0;width:4px;background:#fff;z-index:3;transform:translate(-50%);pointer-events:none}.slider-line{position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);width:4px;background:#11966e;box-shadow:0 0 10px #11966e80}.slider-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;background:#11966e;border:4px solid #ffffff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #0003;pointer-events:none;transition:transform .2s ease}.before-after-slider:active .slider-button{transform:translate(-50%,-50%) scale(1.1)}.slider-button svg{width:24px;height:24px}@media(max-width:768px){.before-after-slider{height:300px}.image-label{font-size:.8rem;padding:.4rem .8rem;top:15px}.before-label{left:15px}.after-label{right:15px}.slider-button{width:40px;height:40px}.slider-button svg{width:20px;height:20px}}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:20px;max-width:600px;width:100%;display:flex;flex-flow:column nowrap;max-height:90vh;position:relative;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:1.5rem;right:1.5rem;background:transparent;border:none;cursor:pointer;padding:.5rem;color:#6b7280;transition:all .2s ease;border-radius:8px;z-index:10}.modal-close:hover{background:#f3f4f6;color:#1f2937;transform:rotate(90deg)}.modal-header{padding:2.5rem 2.5rem 1.5rem}.modal-header h2{font-size:1.875rem;font-weight:700;color:#11966e;margin-bottom:.5rem}.modal-header p{color:#6b7280;font-size:1rem}.form-body{overflow:auto}.booking-form{padding:0 2.5rem 2.5rem;display:flex;flex-flow:column nowrap;overflow:auto}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:#1f2937;margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;font-family:inherit;transition:all .2s ease;background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#11966e;box-shadow:0 0 0 3px #11966e1a}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group textarea{resize:vertical;min-height:100px}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.form-group input[type=date]{cursor:pointer}.form-group input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(50%);transition:filter .2s ease}.form-group input[type=date]:hover::-webkit-calendar-picker-indicator{filter:invert(30%)}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.5rem}.form-actions .btn{min-width:120px}@media(max-width:768px){.modal-content{max-height:95vh;margin:0;border-radius:20px}.modal-header{padding:2rem 1.5rem 1rem}.modal-header h2{font-size:1.5rem}.booking-form{padding:1.5rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}.modal-close{top:1rem;right:1rem}}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#f3f4f6;border-radius:10px}.modal-content::-webkit-scrollbar-thumb{background:#11966e;border-radius:10px}.modal-content::-webkit-scrollbar-thumb:hover{background:#0d7a5a}body.modal-open{overflow:hidden}
