.header{position:fixed;top:0;left:0;right:0;z-index:1000;background-color:transparent;transition:all var(--transition-normal);padding:2rem 0}.header--scrolled{background-color:#010101f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md);padding:1.25rem 0}.header__content{display:flex;justify-content:space-between;align-items:center}.header__logo{z-index:1001}.logo-image{height:70px;width:auto;max-width:250px;transition:all var(--transition-normal);object-fit:contain}.header--scrolled .logo-image{height:70px;width:auto;max-width:250px}.header__nav{display:flex;gap:2rem;align-items:center}.nav-link{color:var(--color-white);font-weight:500;font-size:.95rem;text-transform:uppercase;letter-spacing:.5px;transition:color var(--transition-fast);position:relative}.nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background-color:var(--color-maroon);transition:width var(--transition-fast)}.nav-link:hover,.nav-link--active{color:var(--color-beige)}.nav-link:hover:after,.nav-link--active:after{width:100%}.header__actions{display:flex;align-items:center;gap:1rem}.language-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:transparent;border:1px solid var(--color-white);color:var(--color-white);border-radius:4px;transition:all var(--transition-fast);font-size:.9rem}.language-toggle:hover{background-color:var(--color-maroon);border-color:var(--color-maroon)}.mobile-menu-toggle{display:none;font-size:1.5rem;color:var(--color-white);z-index:1001}@media (max-width: 968px){.header__nav{position:fixed;top:0;right:-100%;width:80%;max-width:400px;height:100vh;background-color:var(--color-black);flex-direction:column;justify-content:center;align-items:center;gap:2rem;transition:right var(--transition-normal);padding:2rem}[dir=rtl] .header__nav{right:auto;left:-100%;transition:left var(--transition-normal)}.header__nav--open{right:0}[dir=rtl] .header__nav--open{left:0}.nav-link{font-size:1.2rem}.mobile-menu-toggle{display:block}.language-toggle{position:relative;z-index:1001}}@media (max-width: 640px){.header{padding:1.5rem 0}.header--scrolled{padding:1rem 0}.logo-image,.header--scrolled .logo-image{height:55px;width:auto;max-width:180px}}.footer{background-color:var(--color-black);color:var(--color-white);padding:calc(var(--spacing-lg) + 2rem) 0 calc(var(--spacing-md) + 1rem);margin-top:var(--spacing-xl)}.footer__content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.footer__section{display:flex;flex-direction:column;gap:1rem}.footer__logo{height:120px;width:auto;max-width:350px;margin-bottom:1.5rem;object-fit:contain}@media (max-width: 768px){.footer__logo{height:80px;max-width:250px}}.footer__description{color:#fffc;line-height:1.6}.footer__heading{font-size:1.1rem;font-weight:600;color:var(--color-beige);margin-bottom:.5rem}.footer__links{list-style:none;display:flex;flex-direction:column;gap:.75rem}.footer__links a{color:#fffc;transition:color var(--transition-fast)}.footer__links a:hover{color:var(--color-maroon)}.footer__contact{list-style:none;display:flex;flex-direction:column;gap:1rem}.footer__contact li{display:flex;align-items:center;gap:.75rem;color:#fffc}.footer__contact svg{color:var(--color-maroon);font-size:1.1rem}.footer__contact a{color:#fffc;transition:color var(--transition-fast)}.footer__contact a:hover{color:var(--color-beige)}.footer__social{display:flex;gap:1rem}.footer__social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:#ffffff1a;border-radius:50%;color:var(--color-white);transition:all var(--transition-fast)}.footer__social a:hover{background-color:var(--color-maroon);transform:translateY(-3px)}.footer__bottom{padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);text-align:center;color:#fff9;display:flex;flex-direction:column;gap:.75rem}.footer__credit{font-size:.9rem;color:#ffffff80}.brand-lab-link{color:var(--color-beige);font-weight:600;transition:color var(--transition-fast)}.brand-lab-link:hover{color:var(--color-white)}@media (max-width: 768px){.footer__content{grid-template-columns:1fr;gap:var(--spacing-md)}}.layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;width:100%;padding-top:120px}@media (max-width: 640px){.main-content{padding-top:90px}}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem}.spinner{width:50px;height:50px;border:4px solid var(--color-beige);border-top-color:var(--color-maroon);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner p{color:var(--color-maroon);font-weight:500}.persistent-ctas{position:fixed;bottom:2rem;right:2rem;z-index:900;display:flex;flex-direction:column;gap:1rem;opacity:0;transform:translateY(20px);transition:all var(--transition-normal)}[dir=rtl] .persistent-ctas{right:auto;left:2rem}.persistent-ctas--visible{opacity:1;transform:translateY(0)}.cta-button{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;box-shadow:var(--shadow-lg);transition:all var(--transition-normal);color:var(--color-white);font-size:1.5rem;cursor:pointer}.cta-button:hover{transform:scale(1.1);box-shadow:0 8px 24px #0000004d}.cta-button--call{background-color:var(--color-maroon)}.cta-button--call:hover{background-color:#8a0f0c}.cta-button--whatsapp{background:linear-gradient(135deg,#25d366,#128c7e)}.cta-button--whatsapp:hover{background:linear-gradient(135deg,#1ebea5,#0e6654)}@media (max-width: 768px){.persistent-ctas{bottom:1.5rem;right:1.5rem}[dir=rtl] .persistent-ctas{right:auto;left:1.5rem}.cta-button{width:50px;height:50px;font-size:1.3rem}}.chat-widget{position:fixed;bottom:2rem;left:2rem;z-index:900}[dir=rtl] .chat-widget{left:auto;right:2rem}.chat-widget__toggle{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--color-maroon) 0%,#8a0f0c 100%);color:var(--color-white);font-size:1.5rem;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all var(--transition-normal);cursor:pointer}.chat-widget__toggle:hover{transform:scale(1.1)}.chat-widget__window{position:absolute;bottom:80px;left:0;width:350px;background-color:var(--color-white);border-radius:8px;box-shadow:var(--shadow-lg);overflow:hidden;animation:slideUp .3s ease}[dir=rtl] .chat-widget__window{left:auto;right:0}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-widget__header{background-color:var(--color-maroon);color:var(--color-white);padding:1rem;display:flex;justify-content:space-between;align-items:center}.chat-widget__header h3{font-size:1.1rem;margin:0}.chat-widget__header button{color:var(--color-white);font-size:1.2rem;transition:opacity var(--transition-fast)}.chat-widget__header button:hover{opacity:.8}.chat-widget__body{padding:1.5rem}.chat-widget__message{background-color:var(--color-offwhite);padding:1rem;border-radius:8px;margin-bottom:1rem}.chat-widget__message p{font-size:.95rem;line-height:1.5;margin:0}.chat-widget__options{display:flex;flex-direction:column;gap:.75rem}.chat-option{padding:.75rem 1rem;background-color:var(--color-beige);color:var(--color-black);text-align:center;border-radius:4px;font-weight:500;transition:all var(--transition-fast)}.chat-option:hover{background-color:var(--color-maroon);color:var(--color-white);transform:translate(5px)}[dir=rtl] .chat-option:hover{transform:translate(-5px)}@media (max-width: 768px){.chat-widget{bottom:1.5rem;left:1.5rem}[dir=rtl] .chat-widget{left:auto;right:1.5rem}.chat-widget__toggle{width:50px;height:50px;font-size:1.3rem}.chat-widget__window{width:calc(100vw - 3rem);max-width:350px}}.splash-screen{position:fixed;top:0;left:0;width:100%;height:100vh;background:linear-gradient(135deg,var(--color-maroon) 0%,#8a0f0c 100%);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s ease,visibility .5s ease;touch-action:none;will-change:opacity,visibility;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.splash-screen--fade{opacity:0;visibility:hidden}.splash-content{text-align:center;max-width:400px;padding:2rem}.splash-logo{width:250px;height:auto;margin-bottom:3rem;animation:pulse 2s ease-in-out infinite;filter:brightness(0) invert(1);will-change:transform,opacity;-webkit-transform:translateZ(0);transform:translateZ(0);image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.splash-loader{width:100%}.splash-progress-bar{width:100%;height:6px;background-color:#fff3;border-radius:10px;overflow:hidden;margin-bottom:1rem}.splash-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-beige) 0%,var(--color-white) 100%);border-radius:10px;transition:width .3s ease;will-change:width;-webkit-transform:translateZ(0);transform:translateZ(0)}.splash-text{color:var(--color-white);font-size:1.2rem;font-weight:600;margin:0}@media (max-width: 640px){.splash-logo{width:200px}.splash-screen{height:-webkit-fill-available;height:100vh}.splash-content{padding:1rem}.splash-text{font-size:1rem}}@supports (-webkit-touch-callout: none){.splash-screen{height:-webkit-fill-available;position:-webkit-sticky;position:sticky}.splash-logo{animation:pulse-simple 2s ease-in-out infinite}}@keyframes pulse-simple{0%,to{transform:scale(1) translateZ(0);opacity:1}50%{transform:scale(1.02) translateZ(0);opacity:.9}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-black: #010101;--color-maroon: #680c09;--color-beige: #dacbb7;--color-offwhite: #f7f3ef;--color-white: #ffffff;--font-heading: "Playfair Display", serif;--font-body: "Inter", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--shadow-sm: 0 2px 8px rgba(1, 1, 1, .1);--shadow-md: 0 4px 16px rgba(1, 1, 1, .15);--shadow-lg: 0 8px 32px rgba(1, 1, 1, .2);--container-max: 1400px;--container-padding: 1.5rem}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--color-black);background-color:var(--color-offwhite);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[dir=rtl] body{font-family:var(--font-body);text-align:right}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2;margin-bottom:1rem}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:1rem}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-maroon)}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding);width:100%}.section{padding:var(--spacing-lg) 0}@media (max-width: 768px){.section{padding:var(--spacing-md) 0}}.btn{display:inline-block;padding:1rem 2rem;font-weight:500;text-align:center;transition:all var(--transition-normal);border-radius:2px;cursor:pointer}.btn-primary{background-color:var(--color-maroon);color:var(--color-white)}.btn-primary:hover{background-color:#8a0f0c;color:var(--color-white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--color-beige);color:var(--color-black)}.btn-secondary:hover{background-color:#cbb9a1;color:var(--color-black);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-outline{border:2px solid var(--color-maroon);color:var(--color-maroon);background-color:transparent}.btn-outline:hover{background-color:var(--color-maroon);color:var(--color-white)}.lazy-image-wrapper{position:relative;overflow:hidden;background-color:var(--color-beige)}.lazy-image{opacity:0;transition:opacity .5s ease-in}.lazy-image.loaded{opacity:1}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*:focus{outline:2px solid var(--color-maroon);outline-offset:2px}@keyframes spin{to{transform:rotate(360deg)}}
