#root{width:100%;min-height:100vh}body{margin:0;padding:0;min-width:320px;min-height:100vh;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.booking-widget-overlay{position:fixed;inset:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .3s ease}.booking-widget-container{background-color:var(--white);border-radius:12px;width:100%;max-width:1000px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 50px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.booking-widget-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid var(--background-light);background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);border-radius:12px 12px 0 0}.booking-widget-header h2{margin:0;color:var(--white);font-size:1.75rem}.booking-widget-close{background:none;border:none;font-size:3rem;line-height:1;color:var(--white);cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,opacity .2s ease;border-radius:50%}.booking-widget-close:hover{transform:scale(1.1);background-color:#fff3}.booking-widget-content{padding:3rem 2rem;overflow-y:auto;max-height:calc(90vh - 80px)}.booking-iframe-content{padding:0;overflow:hidden;flex:1;display:flex}.booking-widget-iframe{max-height:90vh}.booking-iframe{width:100%;height:calc(90vh - 80px);border:none;display:block}.booking-info{text-align:center;max-width:600px;margin:0 auto}.booking-icon{color:var(--primary-color);margin-bottom:var(--spacing-md);display:flex;justify-content:center}.booking-info h3{color:var(--primary-color);font-size:1.75rem;margin-bottom:var(--spacing-md)}.booking-info p{font-size:1.125rem;color:var(--text-dark);margin-bottom:var(--spacing-md);line-height:1.6}.booking-features{list-style:none;padding:0;margin:var(--spacing-lg) 0;text-align:left}.booking-features li{padding:.75rem 0 .75rem 2rem;position:relative;color:var(--text-dark);font-size:1.0625rem;line-height:1.5}.booking-features li:before{content:"✓";position:absolute;left:0;color:var(--secondary-color);font-weight:700;font-size:1.25rem}.booking-actions{display:flex;gap:1rem;justify-content:center;margin-top:var(--spacing-lg);flex-wrap:wrap}.btn-large{padding:1rem 2.5rem;font-size:1.125rem;min-width:200px}@media (max-width: 768px){.booking-widget-overlay{padding:0}.booking-widget-container{max-width:100%;max-height:100vh;border-radius:0;height:auto}.booking-widget-header{padding:1rem 1.5rem;border-radius:0}.booking-widget-header h2{font-size:1.375rem}.booking-widget-close{font-size:2.5rem;width:36px;height:36px}.booking-widget-content{padding:2rem 1.5rem}.booking-info h3{font-size:1.5rem}.booking-info p{font-size:1rem}.booking-actions{flex-direction:column}.btn-large{width:100%}}@media (max-width: 480px){.booking-widget-header h2{font-size:1.125rem}.booking-widget-header{padding:1rem}.booking-widget-content{padding:1.5rem 1rem}.booking-info h3{font-size:1.25rem}.booking-features li{font-size:.95rem;padding-left:1.5rem}}.header{position:fixed;top:0;left:0;right:0;background-color:#fbf5ec;box-shadow:0 2px 10px #0000001a;z-index:1000;transition:all .3s ease}.header-content{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0}.logo-container{display:flex;align-items:center;gap:1rem;cursor:pointer}.logo{height:70px;width:auto;object-fit:contain}.logo-text{font-family:var(--font-heading);font-size:1.5rem;color:var(--primary-color);font-weight:500}.nav-list{display:flex;list-style:none;gap:2.5rem;align-items:center}.nav-list li a{color:var(--text-dark);font-weight:500;font-size:1rem;cursor:pointer;position:relative;transition:color .3s ease}.nav-list li a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background-color:var(--primary-color);transition:width .3s ease}.nav-list li a:hover{color:var(--primary-color)}.nav-list li a:hover:after{width:100%}.btn-book-now{background-color:var(--primary-color);color:var(--white);padding:.625rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:var(--font-main)}.btn-book-now:hover{background-color:var(--secondary-color);transform:translateY(-2px);box-shadow:0 4px 10px #2c5f6f33}.book-now-item{margin-left:.5rem}.menu-toggle{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:.5rem}.menu-toggle span{width:25px;height:3px;background-color:var(--primary-color);transition:all .3s ease;border-radius:2px}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}@media (max-width: 768px){.menu-toggle{display:flex}.nav{position:absolute;top:100%;left:0;right:0;background-color:#fbf5ec;box-shadow:0 4px 10px #0000001a;max-height:0;overflow:hidden;transition:max-height .3s ease}.nav.active{max-height:400px}.nav-list{flex-direction:column;gap:0;padding:1rem 0}.nav-list li{width:100%;text-align:center;padding:1rem 0;border-bottom:1px solid var(--background-light)}.nav-list li:last-child{border-bottom:none}.nav-list li a:after{display:none}.book-now-item{margin-left:0;padding:1rem}.btn-book-now{width:80%;max-width:200px}.logo{height:60px}.logo-text{font-size:1.25rem}}@media (max-width: 480px){.logo-text{display:none}}.hero{position:relative;height:100vh;min-height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-top:70px}.hero-image-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#2c5f6fb3,#84a9ac80)}.hero-content{position:relative;z-index:1;text-align:center;color:var(--white);padding:0 var(--spacing-md);animation:fadeIn 1s ease-out}.hero-title{color:var(--white);font-size:clamp(2.5rem,6vw,4.5rem);margin-bottom:var(--spacing-md);text-shadow:2px 2px 4px rgba(0,0,0,.3);font-weight:400;letter-spacing:1px}.hero-subtitle{font-size:clamp(1.125rem,2vw,1.5rem);margin-bottom:var(--spacing-lg);max-width:700px;margin-left:auto;margin-right:auto;color:#fffffff2;text-shadow:1px 1px 2px rgba(0,0,0,.3);line-height:1.6}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero .btn{min-width:180px;font-size:1.125rem;padding:1rem 2.5rem;box-shadow:0 4px 15px #0003}.hero .btn-outline{border-color:var(--white);color:var(--white);background-color:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero .btn-outline:hover{background-color:var(--white);color:var(--primary-color)}@media (max-width: 768px){.hero{min-height:500px;margin-top:60px}.hero-buttons{flex-direction:column;align-items:center}.hero .btn{width:100%;max-width:280px}}@media (max-width: 480px){.hero{min-height:450px}.hero-title{margin-bottom:var(--spacing-sm)}.hero-subtitle{margin-bottom:var(--spacing-md)}}.about{background-color:var(--background-light);padding:var(--spacing-xl) 0}.about-content{max-width:900px;margin:0 auto}.about-text h2{text-align:center;margin-bottom:var(--spacing-md)}.about-intro{font-size:1.375rem;text-align:center;color:var(--primary-color);font-weight:500;margin-bottom:var(--spacing-md);line-height:1.6}.about-text p{font-size:1.125rem;line-height:1.8;margin-bottom:var(--spacing-md);text-align:left}.about-quote{background-color:var(--white);border-left:4px solid var(--primary-color);padding:var(--spacing-md);margin:var(--spacing-md) 0;border-radius:4px;box-shadow:0 2px 10px #0000000d}.about-quote p{font-size:1.25rem;font-style:italic;color:var(--primary-color);margin-bottom:0;text-align:center;font-weight:500}.about-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}.value-item{background-color:var(--white);padding:var(--spacing-md);border-radius:8px;box-shadow:0 2px 10px #0000000d;transition:transform .3s ease,box-shadow .3s ease}.value-item:hover{transform:translateY(-5px);box-shadow:0 4px 20px #0000001a}.value-item h3{font-size:1.375rem;margin-bottom:var(--spacing-sm);color:var(--primary-color)}.value-item p{font-size:1rem;color:var(--text-light);line-height:1.6;margin-bottom:0}@media (max-width: 768px){.about{padding:var(--spacing-lg) 0}.about-values{grid-template-columns:1fr;gap:var(--spacing-sm)}.about-intro{font-size:1.25rem}.about-text p{font-size:1rem}}.team{background-color:var(--white);padding:var(--spacing-xl) 0}.team-header{text-align:center;max-width:800px;margin:0 auto var(--spacing-lg)}.team-header h2{margin-bottom:var(--spacing-sm)}.team-intro{font-size:1.25rem;color:var(--text-light);line-height:1.6}.team-founder-section{display:flex;justify-content:center;margin-bottom:var(--spacing-lg);max-width:1200px;margin-left:auto;margin-right:auto}.team-founder{max-width:500px;width:100%}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);max-width:1200px;margin:0 auto}.team-member{background-color:var(--background-light);border-radius:8px;padding:var(--spacing-md);box-shadow:0 2px 10px #0000000d;transition:transform .3s ease,box-shadow .3s ease;text-align:center;display:flex;flex-direction:column;align-items:center}.team-member:hover{transform:translateY(-5px);box-shadow:0 4px 20px #0000001a}.member-image-wrapper{width:180px;height:180px;margin-bottom:var(--spacing-md);border-radius:50%;overflow:hidden;border:4px solid var(--primary-color);box-shadow:0 4px 12px #2c5f6f33}.member-image{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.member-info{flex:1}.member-info h3{font-size:1.5rem;margin-bottom:var(--spacing-xs);color:var(--primary-color)}.member-title{font-size:1.125rem;font-weight:600;color:var(--secondary-color);margin-bottom:var(--spacing-xs)}.member-credentials{font-size:.9rem;color:var(--text-light);font-style:italic;margin-bottom:var(--spacing-xs)}.member-supervisor{font-size:.85rem;color:var(--text-light);font-style:italic;margin-bottom:var(--spacing-sm);line-height:1.4}.member-bio{font-size:1rem;line-height:1.6;color:var(--text-light);text-align:left;margin-bottom:var(--spacing-sm)}.btn-read-more{background-color:var(--primary-color);color:var(--white);border:none;padding:.625rem 1.25rem;font-size:.9rem;font-weight:500;border-radius:4px;cursor:pointer;transition:all .3s ease;font-family:var(--font-main)}.btn-read-more:hover{background-color:var(--secondary-color);transform:translateY(-2px)}.bio-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);overflow-y:auto}.bio-modal{background-color:var(--white);border-radius:12px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 10px 40px #0000004d;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:var(--text-light);cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;z-index:10}.modal-close:hover{background-color:var(--background-light);color:var(--primary-color)}.modal-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);border-bottom:1px solid var(--background-light)}.modal-image-wrapper{width:120px;height:120px;border-radius:50%;overflow:hidden;border:4px solid var(--primary-color);flex-shrink:0}.modal-image{width:100%;height:100%;object-fit:cover;display:block}.modal-title-section{flex:1}.modal-title-section h2{font-size:1.75rem;margin-bottom:var(--spacing-xs);color:var(--primary-color)}.modal-member-title{font-size:1.125rem;font-weight:600;color:var(--secondary-color);margin-bottom:var(--spacing-xs)}.modal-credentials{font-size:.9rem;color:var(--text-light);font-style:italic;margin-bottom:var(--spacing-xs)}.modal-supervisor{font-size:.85rem;color:var(--text-light);font-style:italic;line-height:1.4}.modal-body{padding:var(--spacing-lg)}.modal-bio{font-size:1rem;line-height:1.8;color:var(--text-dark);white-space:pre-line}@media (max-width: 768px){.team{padding:var(--spacing-lg) 0}.team-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.team-founder{max-width:100%}.member-image-wrapper{width:150px;height:150px}.team-intro{font-size:1.125rem}.member-info h3{font-size:1.375rem}.member-title{font-size:1rem}.member-bio{font-size:.9375rem}.modal-header{flex-direction:column;text-align:center;padding:var(--spacing-md)}.modal-image-wrapper{width:100px;height:100px}.modal-title-section h2{font-size:1.5rem}.modal-body{padding:var(--spacing-md)}.bio-modal{max-height:85vh}}@media (max-width: 480px){.member-image-wrapper{width:120px;height:120px}.modal-close{width:36px;height:36px;font-size:1.75rem}.btn-read-more{font-size:.85rem;padding:.5rem 1rem}}.services{padding:var(--spacing-xl) 0;background-color:var(--white)}.services-header{text-align:center;max-width:700px;margin:0 auto var(--spacing-lg)}.services-header h2{margin-bottom:var(--spacing-sm)}.services-intro{font-size:1.25rem;color:var(--text-light);line-height:1.6}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-top:var(--spacing-lg);max-width:1400px;margin-left:auto;margin-right:auto}.service-card{background-color:var(--background-light);padding:var(--spacing-md);border-radius:8px;border-left:4px solid var(--primary-color);transition:all .3s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #2c5f6f26;border-left-width:6px}.service-card h3{font-size:1.5rem;margin-bottom:var(--spacing-sm);color:var(--primary-color)}.service-description{font-size:1rem;line-height:1.7;margin-bottom:var(--spacing-md);color:var(--text-light)}.service-features{list-style:none;padding:0}.service-features li{padding:.5rem 0 .5rem 1.5rem;position:relative;color:var(--text-dark);font-size:.95rem}.service-features li:before{content:"✓";position:absolute;left:0;color:var(--secondary-color);font-weight:700;font-size:1.1rem}@media (max-width: 1200px){.services-grid{grid-template-columns:repeat(2,1fr);max-width:1100px}}@media (max-width: 768px){.services{padding:var(--spacing-lg) 0}.services-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.services-intro{font-size:1.125rem}}.contact{padding:var(--spacing-xl) 0;background-color:var(--background-light)}.contact-header{text-align:center;max-width:700px;margin:0 auto var(--spacing-lg)}.contact-header h2{margin-bottom:var(--spacing-sm)}.contact-intro{font-size:1.25rem;color:var(--text-light);line-height:1.6}.booking-callout{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);padding:var(--spacing-lg);border-radius:12px;text-align:center;max-width:800px;margin:0 auto var(--spacing-lg);box-shadow:0 4px 20px #2c5f6f33}.booking-callout h3{color:var(--white);font-size:2rem;margin-bottom:var(--spacing-sm)}.booking-callout p{color:#fffffff2;font-size:1.125rem;margin-bottom:var(--spacing-md)}.btn-booking{background-color:var(--white);color:var(--primary-color);font-size:1.25rem;padding:1rem 2.5rem;box-shadow:0 4px 15px #0003}.btn-booking:hover{background-color:var(--accent-color);color:var(--primary-color);transform:translateY(-3px);box-shadow:0 6px 20px #00000040}.form-title{margin-bottom:var(--spacing-md);color:var(--primary-color);font-size:1.5rem}.form-message{padding:1rem;border-radius:6px;margin-bottom:var(--spacing-md);font-weight:500;text-align:center}.success-message{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.error-message{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.form-group input:disabled,.form-group textarea:disabled,.btn:disabled{opacity:.6;cursor:not-allowed}.contact-form-container{background-color:var(--white);padding:var(--spacing-md);border-radius:8px;box-shadow:0 2px 10px #0000000d;max-width:700px;margin:0 auto}.contact-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:500;color:var(--text-dark);margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group textarea{padding:.875rem;border:2px solid #e1e8ed;border-radius:4px;font-size:1rem;font-family:var(--font-main);transition:border-color .3s ease,box-shadow .3s ease;background-color:var(--background-light)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #84a9ac1a;background-color:var(--white)}.form-group textarea{resize:vertical;min-height:120px}.contact-form .btn{margin-top:var(--spacing-sm);width:100%;font-size:1.125rem;padding:1rem}@media (max-width: 640px){.contact{padding:var(--spacing-lg) 0}.contact-intro{font-size:1.125rem}.booking-callout{padding:var(--spacing-md)}.booking-callout h3{font-size:1.5rem}.booking-callout p{font-size:1rem}.btn-booking{font-size:1.125rem;padding:.875rem 2rem;width:100%}.form-group input,.form-group textarea{font-size:16px}}.footer{background-color:var(--primary-color);color:var(--white);padding:var(--spacing-lg) 0 var(--spacing-md);margin-top:var(--spacing-xl)}.footer-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.footer-info h3{color:var(--white);font-size:1.75rem;margin-bottom:var(--spacing-md)}.footer-contact{display:flex;flex-direction:column;gap:1.25rem}.contact-item{display:flex;align-items:center;gap:1rem}.contact-item svg{flex-shrink:0;color:var(--accent-color)}.contact-item a{color:#fffffff2;font-size:1.0625rem;transition:color .3s ease;cursor:pointer;text-decoration:none}.contact-item a:hover{color:var(--accent-color);text-decoration:underline}.footer-map{border-radius:8px;overflow:hidden;box-shadow:0 4px 15px #0003}.footer-map iframe{display:block}.footer-bottom{border-top:1px solid rgba(255,255,255,.2);padding-top:var(--spacing-md);text-align:center}.footer-bottom p{margin:0;color:#fffc;font-size:.95rem}@media (max-width: 768px){.footer{padding:var(--spacing-md) 0}.footer-content{grid-template-columns:1fr;gap:var(--spacing-md)}.footer-info h3{font-size:1.5rem}.contact-item a{font-size:1rem}}@media (max-width: 480px){.footer-map iframe{height:200px}.footer-info h3{font-size:1.25rem}.contact-item{gap:.75rem}.contact-item a{font-size:.95rem}}:root{--primary-color: #2c5f6f;--secondary-color: #84a9ac;--accent-color: #c9b89a;--text-dark: #2d3436;--text-light: #636e72;--background-light: #f8f9fa;--white: #ffffff;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--font-main: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: "Playfair Display", Georgia, serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-main);color:var(--text-dark);line-height:1.6;background-color:var(--white);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400;line-height:1.2;margin-bottom:var(--spacing-sm);color:var(--primary-color)}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}p{margin-bottom:var(--spacing-sm);color:var(--text-light);font-size:1.125rem}a{color:var(--primary-color);text-decoration:none;transition:color .3s ease}a:hover{color:var(--secondary-color)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}section{padding:var(--spacing-xl) 0}.btn{display:inline-block;padding:.875rem 2rem;font-size:1rem;font-weight:500;text-align:center;border:none;border-radius:4px;cursor:pointer;transition:all .3s ease;font-family:var(--font-main)}.btn-primary{background-color:var(--primary-color);color:var(--white)}.btn-primary:hover{background-color:var(--secondary-color);transform:translateY(-2px)}.btn-outline{background-color:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background-color:var(--primary-color);color:var(--white)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.fade-in-up{animation:fadeInUp .8s ease-out forwards}.fade-in{animation:fadeIn .6s ease-out forwards}.slide-in-left{animation:slideInLeft .8s ease-out forwards}.slide-in-right{animation:slideInRight .8s ease-out forwards}.scale-in{animation:scaleIn .7s ease-out forwards}.scroll-animate{opacity:0}.scroll-animate.is-visible{animation-play-state:running}.stagger-1{animation-delay:.1s;opacity:0}.stagger-2{animation-delay:.2s;opacity:0}.stagger-3{animation-delay:.3s;opacity:0}.stagger-4{animation-delay:.4s;opacity:0}.text-center{text-align:center}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}@media (max-width: 768px){section{padding:var(--spacing-lg) 0}.container{padding:0 var(--spacing-sm)}}
