:root{--color-primary: #c9b38b;--color-primary-hover: #b8a07a;--color-bg: #f6f6f6;--color-text: #1f1f1f;--color-text-secondary: #666666;--color-white: #ffffff;--color-border: #e5e7eb;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem;--shadow-card: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-card-hover: 0 10px 25px rgba(0, 0, 0, .08), 0 4px 10px rgba(0, 0, 0, .05);--shadow-nav: 0 2px 20px rgba(0, 0, 0, .08);--transition-base: all .3s cubic-bezier(.4, 0, .2, 1)}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;color:var(--color-text);background-color:var(--color-white);line-height:1.6;overflow-x:hidden}::selection{background-color:var(--color-primary);color:var(--color-white)}#main-navbar.fixed{animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.nav-link{position:relative}.nav-link:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background-color:var(--color-primary);transition:all .3s ease;transform:translate(-50%)}.nav-link:hover:after,.nav-link.active:after{width:100%}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);transition:var(--transition-base)}.btn-primary:hover{background:linear-gradient(135deg,var(--color-primary-hover) 0%,#a08a5a 100%);box-shadow:0 4px 15px #c9b38b66;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}#mobile-menu{transition:opacity .3s ease,transform .3s ease,max-height .3s ease;opacity:0;transform:translateY(-10px);max-height:0;overflow:hidden}.banner-carousel{background-color:#111827}.banner-slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);animation:bannerFade 10s infinite}.banner-slide:nth-of-type(1){animation-delay:0s}.banner-slide:nth-of-type(2){animation-delay:5s}@keyframes bannerFade{0%{opacity:1;transform:scale(1.04)}40%{opacity:1}50%{opacity:0;transform:scale(1)}90%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1.04)}}.banner-overlay{background:linear-gradient(to bottom,#00000080,#0000004d 40%,#0009)}.banner-content{animation:fadeInUp .8s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.project-card{transition:var(--transition-base)}.project-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.project-card:hover .card-accent{width:60px}.card-accent{width:30px;height:3px;background-color:var(--color-primary);border-radius:2px;transition:width .4s ease}#testimonial-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1)}.testimonial-card{min-width:100%;flex-shrink:0}.star-rating{color:var(--color-primary);letter-spacing:2px}.faq-item{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background-color:var(--color-white);transition:var(--transition-base)}.faq-item:hover{box-shadow:var(--shadow-card)}.faq-header{cursor:pointer;padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;transition:color .3s ease;-webkit-user-select:none;user-select:none}.faq-header:hover{color:var(--color-primary)}.faq-icon{transition:transform .4s cubic-bezier(.4,0,.2,1);flex-shrink:0;color:var(--color-text-secondary)}.faq-content{padding:0 1.5rem;transition:max-height .4s cubic-bezier(.4,0,.2,1)}.faq-content-inner{padding-bottom:1.25rem;color:var(--color-text-secondary);line-height:1.7}body.modal-open{overflow:hidden}.modal-content::-webkit-scrollbar{width:4px}.modal-content::-webkit-scrollbar-track{background:transparent}.modal-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px #c9b38b26}.radio-card input[type=radio]:checked+span{color:var(--color-primary)}input.border-red-400,select.border-red-400{border-color:#f87171;box-shadow:0 0 0 3px #f871711a}.form-error{animation:shakeIn .3s ease-out}@keyframes shakeIn{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes ping{75%,to{transform:scale(1.5);opacity:0}}.animate-ping{animation:ping 2s cubic-bezier(0,0,.2,1) infinite}@keyframes bounceSlow{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-bounce-slow{animation:bounceSlow 3s ease-in-out infinite}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.4,0,.2,1)}.reveal.revealed{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}.timeline-line{position:absolute;left:24px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--color-primary),#e5e7eb)}@media(min-width:768px){.timeline-line{left:50%;transform:translate(-50%)}}.timeline-dot{position:absolute;left:16px;top:24px;width:18px;height:18px;border-radius:50%;background-color:var(--color-primary);border:3px solid var(--color-white);box-shadow:0 0 0 3px var(--color-primary);z-index:1}@media(min-width:768px){.timeline-dot{left:50%;transform:translate(-50%)}}.vip-icon-circle{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#faf8f4,#f0ebe0);display:flex;align-items:center;justify-content:center;transition:var(--transition-base)}.vip-card:hover .vip-icon-circle{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%)}.vip-card:hover .vip-icon-circle i{color:var(--color-white)!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}::-webkit-scrollbar-thumb{background:#c5c5c5;border-radius:3px;transition:background .3s}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}#image-preview-overlay{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}#preview-image{transition:transform .3s ease}.lang-dropdown{transform-origin:top right;animation:dropdownFadeIn .2s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:360px){body{font-size:14px}.container{padding-left:12px;padding-right:12px}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1rem}.faq-header{padding:1rem;font-size:.9rem}.faq-content{padding:0 1rem}}@media(min-width:768px)and (max-width:1199px){.banner-content h1{font-size:2.5rem}}@media(min-width:1200px){.banner-content h1{font-size:3.25rem}}@media print{#floating-whatsapp,#booking-modal,#image-preview-overlay,.lang-dropdown,#mobile-menu{display:none!important}body{font-size:12pt;color:#000}a{text-decoration:underline;color:#000}}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px}button:focus-visible,a:focus-visible{outline-offset:0}.skip-to-main{position:absolute;top:-100%;left:16px;background:var(--color-primary);color:#fff;padding:8px 16px;border-radius:0 0 8px 8px;z-index:100;transition:top .3s;font-size:14px;text-decoration:none}.skip-to-main:focus{top:0}.detail-heading{border-left:4px solid #c9b38b;color:#1f1f1f;font-size:1.5rem;font-weight:700;line-height:1.3;padding-left:.75rem}@media(prefers-reduced-motion:reduce){.banner-slide{animation:none!important;opacity:0;transform:none}.banner-slide:first-child{opacity:1}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
