:root{--color-paper: #fdfcf7;--color-ink: #545454;--color-muted: #6f6a60;--color-gold: #c99853;--color-gold-dark: #93692f;--color-on-gold: #fff;--color-blush: #d9a18f;--color-line: rgba(84, 84, 84, .14);--shadow-soft: 0 18px 55px rgba(84, 84, 84, .12);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--color-ink);background:var(--color-paper)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--color-paper)}a{color:inherit}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;padding:14px clamp(18px,4vw,56px);border-bottom:1px solid var(--color-line);background:#fdfcf7eb;backdrop-filter:blur(16px)}.brand{display:inline-flex;align-items:center;min-width:128px}.brand img{display:block;width:clamp(128px,17vw,184px);height:auto}.header-actions{display:flex;align-items:center;gap:clamp(18px,4vw,40px)}.site-nav{display:flex;align-items:center;gap:clamp(14px,3vw,30px);color:var(--color-muted);font-size:.94rem}.site-nav a,.language-link{text-decoration:none}.site-nav a:hover{color:var(--color-ink)}.site-nav a:focus-visible,.language-link:focus-visible,.primary-action:focus-visible,.contact-link:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}.language-switcher{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--color-line);border-radius:999px;background:#ffffff6b}.language-link{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:28px;border-radius:999px;color:var(--color-muted);font-size:.78rem;font-weight:700}.language-link:hover,.language-link.is-active{background:var(--color-gold-dark);color:var(--color-on-gold)}.hero{display:grid;min-height:calc(100vh - 76px);place-items:center;padding:clamp(72px,12vw,132px) clamp(18px,4vw,56px);background-position:center;background-size:cover}.hero-inner{width:min(860px,100%);text-align:center}.eyebrow{margin:0 0 14px;color:var(--color-gold-dark);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{display:grid;gap:clamp(8px,1.6vw,16px);margin-bottom:22px;color:var(--color-ink);font-family:Georgia,Times New Roman,serif;font-size:clamp(3.5rem,12vw,8.5rem);font-weight:500;line-height:.94;letter-spacing:0}.hero-title-brand,.hero-title-separator,.hero-title-qualifier{display:block}.hero-title-separator{color:var(--color-gold-dark);font-size:clamp(1.35rem,3vw,2.2rem);line-height:.9}.hero-title-qualifier{width:min(760px,100%);margin:0 auto;color:var(--color-muted);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(1.18rem,2.4vw,2rem);font-weight:700;line-height:1.2}h2{margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,5vw,4.5rem);font-weight:500;line-height:1;letter-spacing:0}h3{margin-bottom:10px;font-size:1.05rem;line-height:1.25}p{color:var(--color-muted);line-height:1.65}.hero-copy{width:min(660px,100%);margin:0 auto 30px;font-size:clamp(1.1rem,2vw,1.35rem)}.primary-action,.contact-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border-radius:6px;font-weight:700;text-decoration:none}.primary-action{padding:0 22px;background:var(--color-gold-dark);color:var(--color-on-gold);box-shadow:var(--shadow-soft)}.primary-action:hover{background:#7f5728;color:#fff}.section{padding:clamp(72px,11vw,128px) clamp(18px,4vw,56px)}.section-heading{width:min(760px,100%);margin:0 auto clamp(34px,5vw,56px);text-align:center}.section-heading p:last-child{margin:18px auto 0;width:min(620px,100%)}.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:min(1120px,100%);margin:0 auto}.event-card{min-height:210px;padding:24px;border:1px solid var(--color-line);border-radius:8px;background:#ffffff70}.event-card svg{margin-bottom:24px;color:var(--color-gold-dark)}.event-card p{margin-bottom:0;font-size:.95rem}.section-band{background:linear-gradient(#f3f0e8f0,#f3f0e8f0),var(--section-pattern-url, none);background-position:center;background-size:cover}.space-subsection{width:min(1120px,100%);margin:clamp(46px,7vw,82px) auto 0}.subsection-heading{width:min(680px,100%);margin:0 auto clamp(24px,4vw,36px);text-align:center}.subsection-heading h3{margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,3vw,2.7rem);font-weight:500;line-height:1.05;letter-spacing:0}.subsection-heading p:last-child{width:min(560px,100%);margin:14px auto 0}.gallery-carousel{position:relative;width:min(1120px,100%);margin:0 auto}.gallery-carousel:before,.gallery-carousel:after{position:absolute;top:0;bottom:18px;z-index:1;width:clamp(34px,8vw,92px);pointer-events:none;content:""}.gallery-carousel:before{left:0;background:linear-gradient(90deg,var(--color-paper),rgba(253,252,247,0))}.gallery-carousel:after{right:0;background:linear-gradient(270deg,var(--color-paper),rgba(253,252,247,0))}.section-band .gallery-carousel:before{background:linear-gradient(90deg,#f3f0e8,#f3f0e800)}.section-band .gallery-carousel:after{background:linear-gradient(270deg,#f3f0e8,#f3f0e800)}.gallery-rail{display:flex;gap:12px;padding:4px 0 18px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-padding-inline:clamp(18px,4vw,56px);scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}.gallery-rail::-webkit-scrollbar{display:none}.gallery-rail figure{flex:0 0 clamp(230px,29vw,360px);margin:0;aspect-ratio:4 / 3;overflow:hidden;border-radius:8px;background:#f3f0e8;scroll-snap-align:start}.gallery-rail img{display:block;width:100%;height:100%;object-fit:cover}.gallery-item{display:block;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;color:inherit;cursor:zoom-in}.gallery-item:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}.gallery-item img{transition:transform .2s ease}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.03)}.gallery-rail-nav{position:absolute;top:calc(50% - 9px);z-index:2;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--color-line);border-radius:999px;background:#fdfcf7eb;color:var(--color-ink);box-shadow:0 12px 36px #54545429;cursor:pointer;font-size:2rem;line-height:1;transform:translateY(-50%)}.gallery-rail-prev{left:10px}.gallery-rail-next{right:10px}.gallery-rail-nav:hover{background:#fff}.gallery-rail-nav:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}.gallery-lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:clamp(16px,4vw,40px)}.gallery-lightbox[hidden]{display:none}.gallery-lightbox-backdrop{position:absolute;inset:0;background:#1c1812db;cursor:zoom-out}.gallery-lightbox-panel{position:relative;z-index:1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(10px,2vw,18px);width:min(1180px,100%)}.gallery-lightbox-figure{display:grid;gap:14px;margin:0}.gallery-lightbox-figure img{display:block;width:100%;max-height:min(78vh,840px);object-fit:contain;border-radius:8px;box-shadow:0 24px 80px #00000057}.gallery-lightbox-figure figcaption{display:flex;justify-content:space-between;gap:18px;color:#fff;font-size:.95rem;line-height:1.45}.gallery-lightbox-nav,.gallery-lightbox-close{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.24);background:#fdfcf7f0;color:var(--color-ink);cursor:pointer}.gallery-lightbox-nav{width:48px;height:48px;border-radius:999px;font-size:2.2rem;line-height:1}.gallery-lightbox-close{position:absolute;top:-56px;right:0;width:44px;height:44px;border-radius:999px;font-size:1.8rem;line-height:1}.gallery-lightbox-nav:hover,.gallery-lightbox-close:hover{background:#fff}.gallery-lightbox-nav:focus-visible,.gallery-lightbox-close:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}body.gallery-lightbox-open{overflow:hidden}.booking-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:min(960px,100%);margin:0 auto;padding:0;list-style:none}.booking-steps li{padding:24px;border:1px solid var(--color-line);border-radius:8px;background:#ffffffad}.booking-step-number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-bottom:16px;border-radius:999px;background:var(--color-gold);color:var(--color-on-gold);font-family:Georgia,Times New Roman,serif;font-size:1.1rem;font-weight:500}.booking-steps p{margin-bottom:0}.contact-booking-steps{margin-bottom:34px}.faq-list{width:min(820px,100%);margin:0 auto}.faq-list details{padding:18px 0;border-bottom:1px solid var(--color-line)}.faq-list summary{position:relative;padding-right:32px;color:var(--color-ink);cursor:pointer;font-weight:700;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{position:absolute;top:0;right:0;color:var(--color-gold-dark);content:"+";font-size:1.4rem;line-height:1}.faq-list details[open] summary:after{content:"-"}.faq-list details p{margin:12px 0 0}.faq-list a{color:var(--color-gold-dark);font-weight:700}.faq-list summary:focus-visible,.faq-list a:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}.contact-section{background:linear-gradient(90deg,rgba(217,161,143,.18),transparent 34%),var(--color-paper);padding-bottom:clamp(112px,14vw,156px)}.contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:min(720px,100%);margin:32px auto 0}.contact-link{gap:10px;padding:0 18px;border:1px solid var(--color-line);background:#fff}.contact-link-icon,.whatsapp-fab-icon{display:inline-block;flex:0 0 auto;background:currentColor;mask:var(--icon-url) center / contain no-repeat;-webkit-mask:var(--icon-url) center / contain no-repeat}.contact-link-icon{width:20px;height:20px}.contact-link:hover{border-color:#93692f73}.contact-link-primary{border-color:var(--color-gold-dark);background:var(--color-gold-dark);color:var(--color-on-gold);box-shadow:var(--shadow-soft)}.contact-link-primary:hover{border-color:#7f5728;background:#7f5728;color:#fff}.whatsapp-fab{position:fixed;right:clamp(16px,4vw,28px);bottom:clamp(16px,4vw,28px);z-index:50;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:999px;background:#25d366;color:#fff;box-shadow:0 8px 24px #0000002e;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}.whatsapp-fab:hover,.whatsapp-fab:focus-visible{transform:scale(1.05);box-shadow:0 10px 28px #0000003d}.whatsapp-fab-icon{width:28px;height:28px}.whatsapp-fab:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}.location-section{background:#fffaf0}.location-map{width:min(1120px,100%);margin:0 auto;overflow:hidden;border:1px solid var(--color-line);border-radius:8px;background:#fff;box-shadow:var(--shadow-soft)}.location-map iframe{display:block;width:100%;height:clamp(320px,48vw,420px);border:0}.location-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;width:min(920px,100%);margin:32px auto 0}.location-address,.location-contacts{padding:22px;border:1px solid var(--color-line);border-radius:8px;background:#ffffffad}.location-address{display:grid;gap:8px;color:var(--color-ink);font-style:normal}.location-detail-label{color:var(--color-gold-dark);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.location-details a{color:var(--color-gold-dark);font-weight:700}.location-contacts ul{display:grid;gap:10px;margin:8px 0 0;padding:0;list-style:none}.location-contacts li{display:flex;justify-content:space-between;gap:16px;color:var(--color-muted)}.location-contact-values{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 8px;text-align:right}.location-contact-values a{white-space:nowrap}.location-contact-separator{color:var(--color-muted);font-weight:400}.site-footer{padding:clamp(42px,7vw,72px) clamp(18px,4vw,56px);border-top:1px solid var(--color-line);background:#f3f0e8}.site-footer-inner{display:grid;grid-template-columns:minmax(180px,.8fr) repeat(2,minmax(0,1fr));gap:clamp(26px,5vw,56px);width:min(1120px,100%);margin:0 auto}.footer-brand{display:grid;align-content:start;gap:14px}.footer-logo{display:inline-flex;width:fit-content}.footer-logo img{display:block;width:148px;height:auto}.footer-business-name{margin-bottom:0;color:var(--color-ink);font-weight:700}.footer-address,.footer-contacts{color:var(--color-muted)}.footer-address{display:grid;gap:8px;font-style:normal}.footer-label{color:var(--color-gold-dark);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.footer-contacts ul{display:grid;gap:10px;margin:8px 0 0;padding:0;list-style:none}.footer-contacts li{display:grid;gap:4px}.footer-contact-values{display:inline-flex;flex-wrap:wrap;gap:4px 8px}.site-footer a{color:var(--color-gold-dark);font-weight:700}.site-footer a:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}.footer-contact-separator{color:var(--color-muted);font-weight:400}@media(max-width:880px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-rail figure{flex-basis:clamp(240px,52vw,340px)}.booking-steps{grid-template-columns:1fr}.event-card{min-height:auto}.site-footer-inner{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}}@media(max-width:560px){.event-grid{grid-template-columns:1fr}.gallery-carousel{width:calc(100% + 36px);margin-inline:-18px}.gallery-carousel:before,.gallery-carousel:after{width:54px}.gallery-rail{padding-inline:18px}.gallery-rail figure{flex-basis:min(82vw,320px)}.gallery-rail-prev{left:18px}.gallery-rail-next{right:18px}.gallery-lightbox{padding:72px 12px 20px}.gallery-lightbox-panel{grid-template-columns:1fr 1fr}.gallery-lightbox-figure{grid-column:1 / -1;grid-row:1}.gallery-lightbox-prev,.gallery-lightbox-next{grid-row:2;justify-self:center}.gallery-lightbox-close{top:-56px}.gallery-lightbox-figure figcaption{flex-direction:column;gap:6px;text-align:center}}@media(max-width:620px){.site-header{position:static;flex-direction:column;align-items:flex-start}.header-actions{width:100%;flex-direction:column;align-items:stretch;gap:14px}.site-nav{flex-wrap:wrap;justify-content:flex-start;gap:12px 18px}.language-switcher{width:fit-content}.hero{min-height:auto}.contact-links{flex-direction:column;align-items:stretch}.contact-link{width:100%}.location-details{grid-template-columns:1fr}.location-contacts li{flex-direction:column;gap:4px}.location-contact-values{justify-content:flex-start;text-align:left}.site-footer-inner{grid-template-columns:1fr}}
