@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,600&display=swap";:root{--color-primary:#090909;--color-off-white:#fffdf8;--color-stone:#efe8dd;--color-gold:#9b6b20;--color-gold-bright:#d8b35c;--color-text-primary:#151515;--color-text-secondary:#424242;--color-border:#d8ceba;--color-surface:#f4f0e8;--color-error:#c23b22;--color-success:#2d6a4f;--color-black:var(--color-primary);--color-offwhite:var(--color-off-white);--color-text:var(--color-text-primary);--black:var(--color-primary);--gold:var(--color-gold);--stone:var(--color-stone);--offwhite:var(--color-off-white);--font-heading:"Playfair Display", serif;--font-body:"Inter", sans-serif;--text-hero:4.5rem;--text-h1:3.5rem;--text-h2:2.5rem;--text-h3:1.75rem;--text-h4:1.25rem;--text-base:1rem;--text-lg:1.125rem;--text-sm:.875rem;--text-xs:.75rem;--tracking-heading:0;--tracking-caps:0;--tracking-normal:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--shadow-sm:0 1px 2px #1a1a1a0d;--shadow-md:0 4px 6px -1px #1a1a1a0d, 0 2px 4px -1px #1a1a1a08;--shadow-lg:0 10px 15px -3px #1a1a1a0d, 0 4px 6px -2px #1a1a1a08;--shadow-warm:0 20px 25px -5px #c4a2651a, 0 10px 10px -5px #c4a2650a;--radius-sm:2px;--radius-md:4px;--transition-fast:.15s ease-out;--transition-base:.3s ease-out;--transition-slow:.5s ease-out}*,:before,:after{box-sizing:border-box;margin:0;padding:0;letter-spacing:0!important}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-off-white);color:var(--color-text-primary);font-weight:400;line-height:1.6;overflow-x:hidden}.route-loading{background:var(--color-offwhite);min-height:60vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-off-white)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}::selection{background-color:var(--color-gold);color:var(--color-off-white)}h1,h2,h3,h4,h5,h6,.font-heading{font-family:var(--font-heading);letter-spacing:var(--tracking-heading);color:var(--color-primary);margin-bottom:var(--space-4);font-weight:500;line-height:1.2}.hero-title{font-size:var(--text-hero);margin-bottom:var(--space-6);font-weight:400}h1,.h1{font-size:var(--text-h1)}h2,.h2{font-size:var(--text-h2)}h3,.h3{font-size:var(--text-h3)}h4,.h4{font-size:var(--text-h4);font-weight:600}@media (width<=768px){:root{--text-hero:2.7rem;--text-h1:2.25rem;--text-h2:1.85rem;--text-h3:1.5rem;--text-h4:1.125rem}}a{color:inherit;transition:color var(--transition-base);text-decoration:none}a:hover{color:var(--color-gold)}.btn{font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:var(--tracking-caps);text-transform:uppercase;padding:var(--space-4) var(--space-8);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-weight:500;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--color-primary);color:var(--color-off-white)}.btn-primary:hover{background-color:var(--color-text-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-outline{color:var(--color-primary);border-color:var(--color-primary);background-color:#0000}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-off-white)}.btn-gold{background-color:var(--color-gold);color:var(--color-off-white)}.btn-gold:hover{box-shadow:var(--shadow-warm);background-color:#7a4f0f;transform:translateY(-2px)}input,textarea,select{width:100%;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-primary);border:none;border-bottom:1px solid var(--color-border);padding:var(--space-3) 0;transition:border-color var(--transition-base);background-color:#0000;border-radius:0}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);outline:none}input::placeholder,textarea::placeholder{color:var(--color-text-secondary)}.container{width:100%;max-width:1400px;padding:0 var(--space-8);margin:0 auto}@media (width<=768px){.container{padding:0 18px}}.section{padding:var(--space-20) 0}@media (width<=768px){.section{padding:56px 0}}.grid{gap:var(--space-8);display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (width<=768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.img-responsive{max-width:100%;height:auto;display:block}.img-cover{object-fit:cover;width:100%;height:100%}.text-center{text-align:center}.text-right{text-align:right}.text-uppercase{text-transform:uppercase;letter-spacing:var(--tracking-caps)}.text-gold{color:var(--color-gold)}.text-secondary{color:var(--color-text-secondary)}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.text-lg{font-size:var(--text-lg)}.subtitle{font-family:var(--font-body);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-text-secondary);margin-bottom:var(--space-4);font-weight:500;display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes kenBurns{0%{transform:scale(1)}to{transform:scale(1.05)}}.animate-fade-in{animation:1s ease-out forwards fadeIn}.animate-slide-up{animation:.8s ease-out forwards slideUp}.animate-fade-in-up{animation:1s ease-out forwards fadeInUp}.animate-ken-burns{animation:10s ease-out forwards kenBurns}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.section-tag{font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.2em;color:#8a5c19;margin-bottom:var(--space-3);font-weight:700;display:inline-block}.section-title{font-family:var(--font-heading);font-size:var(--text-h2);color:var(--color-primary);margin-bottom:var(--space-4);letter-spacing:var(--tracking-heading);font-weight:600}.page-hero{color:#fffdf8;text-align:center;background-color:#090909;background-position:50%;background-size:cover;justify-content:center;align-items:center;min-height:430px;padding:130px 20px 72px;display:flex;position:relative;overflow:hidden}@media (width<=768px){.btn{width:100%;min-height:48px;padding:14px 18px;font-size:.82rem}.page-hero{min-height:380px;padding:128px 18px 58px}.page-hero h1{font-size:clamp(2.05rem,10vw,2.65rem);line-height:1.08}.page-hero p{font-size:.98rem;line-height:1.65}}@media (width<=380px){.container{padding:0 14px}.page-hero{padding-left:14px;padding-right:14px}}.page-hero-overlay{pointer-events:none;background:radial-gradient(circle,#d8b35c38,#090909db 68%),#09090957;position:absolute;inset:0}.page-hero-content{z-index:1;max-width:860px;position:relative}.page-hero .section-tag{color:var(--color-gold-bright)}.page-hero h1{color:#fff;text-shadow:0 2px 18px #0000006b;margin-bottom:16px;font-size:clamp(2.45rem,6vw,4.1rem);font-weight:700}.page-hero p{color:#f2eadc;max-width:760px;margin:0 auto;font-size:clamp(1rem,2vw,1.18rem);line-height:1.7}.gallery-page-hero{background-image:linear-gradient(90deg,#090909e0,#0909099e),url(/images/group-suits.jpg)}.contact-page-hero{background-image:linear-gradient(90deg,#090909e6,#09090999),url(/images/arnold-founder.jpg)}.booking-page-hero{background-image:linear-gradient(90deg,#090909e6,#0909099e),url(/images/arnold-seated.jpg)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.form-row{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}@media (width<=600px){.form-row{gap:var(--space-4);grid-template-columns:1fr}}.form-group{margin-bottom:var(--space-5)}.form-group.full-width{grid-column:1/-1}.form-group label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);margin-bottom:var(--space-2);font-weight:600;display:block}.form-group input,.form-group textarea,.form-group select{width:100%;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);transition:border-color var(--transition-base), box-shadow var(--transition-base);background-color:#fff}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-gold);outline:none;box-shadow:0 0 0 3px #c4a2651f}.status-message{padding:var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:var(--space-5);line-height:1.5}.status-message.success{color:#2d6a4f;background-color:#f0f9f4;border:1px solid #2d6a4f}.status-message.error{color:#c23b22;background-color:#fef2f0;border:1px solid #c23b22}img{max-width:100%;height:auto}.navbar-wrapper{z-index:1000;width:100%;transition:transform .3s,box-shadow .3s;position:fixed;top:0;left:0;overflow:visible}.navbar-wrapper.scrolled{transform:translateY(-40px)}.utility-bar{color:#333;background-color:#e8e0d4;width:100%;height:40px;font-size:.875rem}.utility-container{justify-content:space-between;align-items:center;max-width:1200px;height:100%;margin:0 auto;padding:0 24px;display:flex}.phone-link{color:inherit;align-items:center;gap:8px;font-weight:500;text-decoration:none;transition:opacity .2s;display:flex}.phone-link:hover{opacity:.7}.slogan{font-family:Georgia,serif;font-size:.9rem;font-style:italic}.utility-right{gap:16px;display:flex}.utility-right a{color:inherit;align-items:center;transition:opacity .2s;display:flex}.utility-right a:hover{opacity:.7}.main-nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background-color:#fffffff2;border-bottom:1px solid #eaeaea;height:80px;transition:background-color .3s;overflow:visible}.navbar-wrapper.scrolled .main-nav{background-color:#fffffffa;box-shadow:0 4px 20px #0000000d}.nav-container{max-width:1200px;padding:0 max(24px, env(safe-area-inset-right)) 0 max(24px, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:18px;height:100%;margin:0 auto;display:flex;overflow:visible}.logo-link{align-items:center;min-width:0;display:flex}.logo{width:140px;height:auto;display:block}.desktop-menu{align-items:center;gap:24px;display:none}.nav-links{gap:18px;margin:0;padding:0;list-style:none;display:flex}.nav-link{color:#1a1a1a;text-transform:uppercase;letter-spacing:.5px;padding:8px 0;font-size:.86rem;font-weight:500;text-decoration:none;transition:color .2s;position:relative}.nav-link:after{content:"";background-color:#1a1a1a;width:0;height:2px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-link:hover:after,.nav-link.active:after{width:100%}.btn-book{color:#fff;text-transform:uppercase;letter-spacing:.5px;background-color:#1a1a1a;border:1px solid #1a1a1a;padding:12px 18px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .3s}.btn-book:hover{color:#1a1a1a;background-color:#0000}.mobile-toggle{cursor:pointer;color:#fffdf8;z-index:1002;background:#111;border:1px solid #11111114;border-radius:999px;flex:0 0 48px;justify-content:center;align-items:center;width:48px;height:48px;margin-left:auto;padding:0;transition:transform .2s,background-color .2s;display:inline-flex;position:relative;overflow:visible;box-shadow:0 12px 24px #09090929}.mobile-toggle:active{transform:scale(.96)}.mobile-menu-overlay{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:999;background:linear-gradient(#09090929,#09090957),#fffdf8b8;width:100%;height:calc(100vh - 120px);padding:14px;position:fixed;top:120px;left:0;overflow-y:auto}.navbar-wrapper.scrolled .mobile-menu-overlay{height:calc(100vh - 80px);top:80px}.mobile-menu-content{background:linear-gradient(135deg,#fffdf8fa,#f4f0e8f7);border:1px solid #d8cebae6;border-radius:8px;flex-direction:column;gap:22px;min-height:calc(100% - 28px);padding:24px;display:flex;box-shadow:0 26px 70px #09090938}.mobile-menu-heading{border-bottom:1px solid #d8cebae6;justify-content:space-between;align-items:flex-end;gap:14px;padding-bottom:16px;display:flex}.mobile-menu-heading span{color:#090909;font-family:var(--font-heading);font-size:1.35rem;font-weight:650;line-height:1}.mobile-menu-heading small{color:#7a4f0f;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:750}.mobile-nav-links{grid-template-columns:1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.mobile-nav-link{color:#1a1a1a;text-transform:uppercase;background:#ffffff8f;border:1px solid #d8ceba8c;border-radius:8px;align-items:center;min-height:46px;padding:12px 14px;font-size:1rem;font-weight:750;text-decoration:none;transition:background-color .2s,color .2s,transform .2s;display:flex}.mobile-nav-link:active{transform:translateY(1px)}.mobile-nav-link.active{color:#fffdf8;background:#090909;border-color:#090909}.btn-book-mobile{color:#fffdf8;text-align:center;text-transform:uppercase;background-color:#9b6b20;border-radius:8px;padding:16px;font-weight:750;text-decoration:none;box-shadow:0 16px 28px #9b6b203d}.mobile-socials{gap:24px;margin-top:auto;padding-top:10px;display:flex}.mobile-socials a{color:#1a1a1a;background:#fff;border:1px solid #d8cebae6;border-radius:999px;justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}@media (width<=768px){.navbar-wrapper.scrolled{transform:translateY(-34px)}.utility-bar{height:34px;font-size:.78rem}.utility-container{padding:0 16px}.utility-center{display:none}.utility-right{gap:12px}.main-nav{background-color:#fffdf8f5;height:68px}.nav-container{padding:0 max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left))}.logo{width:clamp(104px,34vw,126px)}.mobile-toggle{flex-basis:44px;width:44px;height:44px}.mobile-toggle svg{width:23px;height:23px}.mobile-menu-overlay{height:calc(100dvh - 102px);padding:10px;top:102px}.navbar-wrapper.scrolled .mobile-menu-overlay{height:calc(100dvh - 68px);top:68px}.mobile-menu-content{gap:16px;min-height:calc(100% - 20px);padding:18px}.mobile-menu-heading{flex-direction:column;align-items:flex-start;gap:6px;padding-bottom:12px}.mobile-menu-heading span{font-size:1.2rem}.mobile-nav-links{gap:6px}.mobile-nav-link{min-height:42px;padding:10px 12px;font-size:.9rem}.btn-book-mobile{padding:14px;font-size:.86rem}.mobile-socials a{width:42px;height:42px}}@media (width<=380px){.utility-right{display:none}.phone-link span{font-size:.74rem}.mobile-menu-content{padding:14px}}@media (width>=1120px){.desktop-menu{display:flex}.mobile-toggle{display:none}.mobile-menu-overlay{display:none!important}}.footer{color:#f5f5f5;background-color:#0a0a0a;padding-top:80px;font-family:Inter,system-ui,-apple-system,sans-serif;position:relative}.footer-container{max-width:1200px;margin:0 auto;padding:0 24px}.footer-grid{grid-template-columns:1fr;gap:48px;margin-bottom:60px;display:grid}.brand-col{max-width:320px}.footer-logo img{width:160px;height:auto;margin-bottom:16px}.footer-slogan{color:#e8e0d4;margin:0 0 16px;font-family:Georgia,serif;font-size:1.1rem;font-style:italic}.footer-desc{color:#a0a0a0;font-size:.9rem;line-height:1.6}.footer-heading{text-transform:uppercase;letter-spacing:1px;color:#fff;margin:0 0 24px;font-size:1.1rem;font-weight:600}.footer-links{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.footer-links a{color:#a0a0a0;font-size:.95rem;text-decoration:none;transition:color .2s,transform .2s;display:inline-block}.footer-links a:hover{color:#e8e0d4;transform:translate(4px)}.footer-contact{flex-direction:column;gap:16px;margin:0 0 24px;padding:0;list-style:none;display:flex}.footer-contact li{color:#a0a0a0;align-items:flex-start;gap:12px;font-size:.95rem;line-height:1.5;display:flex}.footer-contact a{color:inherit;text-decoration:none;transition:color .2s}.footer-contact a:hover{color:#e8e0d4}.contact-icon{color:#e8e0d4;flex-shrink:0;margin-top:2px}.footer-hours h5{color:#fff;margin:0 0 8px;font-size:.95rem}.footer-hours p{color:#a0a0a0;margin:0 0 4px;font-size:.9rem}.footer-bottom{border-top:1px solid #ffffff1a;flex-direction:column;align-items:center;gap:24px;padding:32px 0;display:flex}.social-links{gap:24px;display:flex}.social-links a{color:#fff;background-color:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:color .2s,transform .2s;display:flex}.social-links a:hover{color:#0a0a0a;background-color:#e8e0d4;transform:translateY(-2px)}.copyright p{color:gray;text-align:center;margin:0;font-size:.85rem}.whatsapp-float{color:#fff;z-index:1000;background-color:#25d366;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:transform .3s,box-shadow .3s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 12px #00000026}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 16px #0003}@media (width>=640px){.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-bottom{flex-direction:row;justify-content:space-between}}@media (width>=1024px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1.5fr}}
