.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);font-family:var(--font-serif);font-size:var(--fs-button);cursor:pointer;transition:background-color var(--ease), color var(--ease), border-color var(--ease);border:1.5px solid #0000;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.btn--primary{background:var(--primary);color:var(--white)}.btn--primary:hover{background:var(--primary-dark)}.btn--secondary{background:var(--ink);color:var(--white)}.btn--secondary:hover{background:var(--body)}.btn--inverse{background:var(--white);color:var(--primary)}.btn--inverse:hover{background:var(--primary-light);color:var(--primary-dark)}.btn--outline{border-color:var(--primary);color:var(--primary);background:0 0}.btn--outline:hover{background:var(--primary-light)}.site-header{z-index:50;background:var(--primary);transition:box-shadow var(--ease);position:sticky;top:0}.site-header.is-scrolled{box-shadow:var(--shadow-header)}.site-header__bar{justify-content:space-between;align-items:center;gap:var(--space-5);height:var(--header-height);display:flex}.logo{color:var(--white);font-family:var(--font-serif);font-size:var(--fs-h3);font-weight:700;line-height:1;text-decoration:none}.nav-links{gap:var(--space-5);margin:0;padding:0;list-style:none;display:flex}.nav-links a,.lang-switch a{min-height:var(--tap-min);color:var(--white);font-size:var(--fs-nav);align-items:center;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.nav-links a:hover,.nav-links a[aria-current=page]{text-underline-offset:6px;font-weight:600;text-decoration:underline}.lang-switch{align-items:center;gap:var(--space-2);color:var(--white);display:flex}.lang-switch a{min-width:var(--tap-min);opacity:.75;justify-content:center}.lang-switch a[aria-current=true]{opacity:1;font-weight:600}.site-header__desktop{display:none}.site-header__actions{align-items:center;gap:var(--space-4);display:flex}.mobile-menu>summary{width:var(--tap-min);height:var(--tap-min);color:var(--white);cursor:pointer;justify-content:center;align-items:center;list-style:none;display:inline-flex}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu .icon-close,.mobile-menu[open] .icon-open{display:none}.mobile-menu[open] .icon-close{display:block}.mobile-menu__panel{inset:var(--header-height) 0 0 0;gap:var(--space-6);padding:var(--space-6) var(--container-pad);background:var(--primary);flex-direction:column;display:flex;position:fixed;overflow-y:auto}.mobile-menu__panel .nav-links{gap:var(--space-2);flex-direction:column}.mobile-menu__panel .nav-links a{font-family:var(--font-serif);font-size:var(--fs-h2);font-weight:700}@media (width>=1024px){.site-header__desktop{justify-content:space-between;align-items:center;gap:var(--space-5);flex:1;display:flex}.site-header__desktop .nav-links{flex:1;justify-content:center}.mobile-menu{display:none}}.site-footer{padding-block:var(--space-8) var(--space-6);background:var(--primary);text-align:center}.site-footer .logo{margin-bottom:var(--space-4);display:inline-block}.site-footer__tagline{max-width:48ch;margin-inline:auto}.footer-links{margin:var(--space-5) 0;flex-wrap:wrap;justify-content:center;padding:0;list-style:none;display:flex}.footer-links li+li{border-left:1px solid var(--white)}.footer-links a{min-height:var(--tap-min);padding-inline:var(--space-4);color:var(--white);font-size:var(--fs-nav);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.footer-links a:hover{text-decoration:underline}.site-footer__copy{margin:0;font-size:12px}.whatsapp-fab{right:var(--space-5);bottom:var(--space-5);z-index:40;border-radius:var(--radius-full);background:var(--whatsapp);width:56px;height:56px;color:var(--ink);box-shadow:var(--shadow-card-hover);transition:transform var(--ease);justify-content:center;align-items:center;display:flex;position:fixed}.whatsapp-fab:hover{transform:translateY(-4px)}.section-title{max-width:720px;margin:0 auto var(--space-7);text-align:center}.section-title .lead{margin:0}.caption{color:var(--muted);font-size:var(--fs-caption);margin:0;line-height:1.5}.empty{text-align:center;color:var(--muted)}.card-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}@media (width>=640px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.card-grid{grid-template-columns:repeat(3,1fr)}}.card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-card);transition:transform var(--ease), box-shadow var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden}.card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.card__photo{aspect-ratio:16/10;background:var(--sand)}.card__body{gap:var(--space-2);padding:var(--space-5);flex-direction:column;flex:1;display:flex}.card__body h3,.card__body h4{margin:0}.card__action{margin-top:auto}.tag{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:var(--white);font-family:var(--font-serif);font-weight:700}.tag--popular{top:var(--space-3);left:var(--space-3);background:var(--saffron);position:absolute}.chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--primary-light);color:var(--primary-dark);font-size:var(--fs-caption);font-weight:500;display:inline-flex}.chip--removable,.chip--filter{min-height:var(--tap-min);text-decoration:none}.chip--filter{padding-inline:var(--space-4);border:1px solid var(--border);background:var(--white);color:var(--ink)}.chip--filter[aria-current=page]{border-color:var(--primary);background:var(--primary-light);color:var(--primary-dark);font-weight:600}.filters{margin-bottom:var(--space-6);justify-content:center}.selections{margin-bottom:var(--space-5)}.price{margin:var(--space-2) 0 0;color:var(--primary);font-family:var(--font-serif);font-size:var(--fs-h3);font-weight:700;line-height:1.2}.price__unit{font-size:var(--fs-body)}.price--small{font-size:var(--fs-h4);white-space:nowrap;margin:0}.inclusions{gap:var(--space-2);margin:var(--space-2) 0 var(--space-4);padding:0;list-style:none;display:grid}.inclusions li{gap:var(--space-2);align-items:flex-start;display:flex}.inclusions svg{color:var(--primary);flex:none}.menu-card__head{justify-content:space-between;gap:var(--space-3);align-items:baseline;display:flex}.menu-card__desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.category-card__photo{aspect-ratio:4/3;border-radius:var(--radius-md);background:var(--sand)}.category-card__tag{width:fit-content;margin:calc(var(--space-5) * -1) auto 0;padding:var(--space-2) var(--space-5);border-radius:var(--radius-sm);color:var(--white);font-size:var(--fs-h4);position:relative}.category-card__tag--crimson{background:var(--primary)}.category-card__tag--ink{background:var(--ink)}.category-card__body{padding:var(--space-4) var(--space-2) 0;text-align:center}.cta-band{background:var(--ink);text-align:center}.stepper{max-width:560px;margin:0 auto var(--space-6);justify-content:center;padding:0;list-style:none;display:flex}.stepper__step{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--fs-label);flex-direction:column;flex:1;font-weight:500;display:flex;position:relative}.stepper__step+.stepper__step:before{content:"";background:var(--border);width:100%;height:2px;position:absolute;top:16px;right:50%}.stepper__step--done+.stepper__step:before{background:var(--primary)}.stepper__dot{z-index:1;border:2px solid var(--muted);border-radius:var(--radius-full);background:var(--white);justify-content:center;align-items:center;width:32px;height:32px;font-weight:600;display:flex;position:relative}.stepper__step--active{color:var(--ink)}.stepper__step--active .stepper__dot{border-color:var(--primary);background:var(--primary);color:var(--white)}.stepper__step--done .stepper__dot{border-color:var(--primary);color:var(--primary)}.selector fieldset{border:0;margin:0;padding:0}.selector legend{width:100%;padding:0}.selector h2{text-align:center}.option-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.option-card{gap:var(--space-2);padding:var(--space-3);border:2px solid var(--border);border-radius:var(--radius-md);background:var(--white);cursor:pointer;transition:border-color var(--ease), background-color var(--ease);flex-direction:column;display:flex;position:relative}.option-card:hover{border-color:var(--primary-light)}.option-card:has(:checked){border-color:var(--primary);background:var(--primary-light)}.option-card:has(:focus-visible){outline:2px solid var(--focus-color);outline-offset:2px}.option-card__photo{aspect-ratio:16/10;border-radius:var(--radius-sm);background:var(--sand)}.option-card__name{color:var(--ink);font-family:var(--font-serif);font-size:var(--fs-h3);font-weight:700}.option-card__check{top:var(--space-4);right:var(--space-4);padding:var(--space-1);border-radius:var(--radius-full);background:var(--primary);color:var(--white);display:none;position:absolute}.option-card:has(:checked) .option-card__check{display:flex}.selector__actions{justify-content:center;gap:var(--space-3);margin-top:var(--space-6);display:flex}@media (width<=639px){.selector__actions{z-index:10;margin-inline:calc(var(--container-pad) * -1);padding:var(--space-3) var(--container-pad);border-top:1px solid var(--border);background:var(--white);position:sticky;bottom:0}.selector__actions .btn{flex:1}}.contact{max-width:800px}.form,.form__grid{gap:var(--space-5);display:grid}@media (width>=640px){.form__grid{grid-template-columns:repeat(2,1fr)}}.form .btn[type=submit]{justify-self:start}.field{gap:var(--space-2);display:grid}.field label{color:var(--ink);font-size:var(--fs-label);font-weight:500;line-height:1.4}.input{width:100%;min-height:48px;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);font:inherit;font-size:15px}textarea.input{resize:vertical}.input:focus-visible{outline:2px solid var(--primary);outline-offset:0;border-color:var(--primary)}.field--error .input{border-color:var(--error)}.field__error{color:var(--error);font-size:var(--fs-caption);margin:0}.notice{padding:var(--space-4);border-left:4px solid var(--info);border-radius:var(--radius-sm);background:var(--grey-50);color:var(--ink);margin:0}.notice--success{border-left-color:var(--success)}.notice--error{border-left-color:var(--error)}@media (prefers-reduced-motion:reduce){.card:hover,.whatsapp-fab:hover{transform:none}}
