/* ═══════════════════════════════════════════════
   Flavion Restaurant — Theme CSS v3.0
   Dark luxury amber/gold. Playfair + Inter.
   ═══════════════════════════════════════════════ */

:root {
  --fl-bg:         #0a0a0a;
  --fl-bg-alt:     #060606;
  --fl-card:       #141414;
  --fl-border:     rgba(184,134,11,0.18);
  --fl-gold:       #b8860b;
  --fl-gold-light: #d4a017;
  --fl-gold-pale:  #e8d5a3;
  --fl-text:       #e8dcc8;
  --fl-muted:      rgba(232,220,200,0.55);
  --fl-faint:      rgba(232,220,200,0.35);
  --fl-whatsapp:   #25D366;
  --fl-instagram:  #E1306C;
  --fl-facebook:   #1877F2;
  --fl-shadow:     0 8px 32px rgba(0,0,0,0.6);
  --max-w:         1280px;
  --pad:           clamp(1rem, 4vw, 2.5rem);
  --tr:            0.3s ease;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;background:var(--fl-bg);color:var(--fl-text);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{cursor:pointer;font-family:inherit;border:none;background:none}
input,select,textarea{font-family:inherit;font-size:inherit}
ul,ol{list-style:none}
h1,h2,h3,h4,h5,h6{font-family:'Playfair Display',Georgia,serif;line-height:1.2;font-weight:600;color:var(--fl-text)}

/* ── Layout ─────────────────────────────────── */
.fl-container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--pad)}
.fl-section{padding:7rem 0;background:var(--fl-bg);position:relative}
.fl-section--dark{background:var(--fl-bg-alt)}
.fl-section-header{text-align:center;margin-bottom:4rem}
.fl-label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.35em;text-transform:uppercase;color:var(--fl-gold);margin-bottom:1rem}
.fl-heading{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.2rem,5vw,3.5rem);color:var(--fl-text)}
.fl-divider{width:3.5rem;height:1px;background:var(--fl-gold);margin:1.5rem auto 0}
.fl-divider--subtle{border:none;height:1px;background:var(--fl-border);margin:1rem 0}
.fl-text--gold{color:var(--fl-gold)}
.fl-icon--gold{color:var(--fl-gold);stroke:var(--fl-gold)}
.fl-link--muted{color:var(--fl-muted);transition:color var(--tr)}
.fl-link--muted:hover{color:var(--fl-gold)}
.fl-icon{flex-shrink:0}

.fl-radial-glow{pointer-events:none;position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(ellipse,rgba(184,134,11,.07) 0%,transparent 70%);z-index:0}
.fl-radial-glow--top{top:-100px;left:50%;transform:translateX(-50%)}
.fl-radial-glow--bottom{bottom:-100px;left:50%;transform:translateX(-50%)}
.fl-radial-glow--center{top:50%;left:50%;transform:translate(-50%,-50%)}
.fl-radial-glow--top-right{top:-100px;right:-100px}
.fl-container,.fl-section-header{position:relative;z-index:1}

.fl-empty-state{text-align:center;color:var(--fl-muted);padding:3rem;border:1px dashed var(--fl-border);font-size:.95rem;line-height:2}
.fl-empty-state a{color:var(--fl-gold);text-decoration:underline}

/* ── Buttons ─────────────────────────────────── */
.fl-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 2rem;font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transition:all var(--tr);white-space:nowrap;cursor:pointer}
.fl-btn--primary{background:var(--fl-gold);color:#0a0a0a;border:2px solid var(--fl-gold)}
.fl-btn--primary:hover{background:var(--fl-gold-light);border-color:var(--fl-gold-light)}
.fl-btn--outline{background:transparent;color:var(--fl-text);border:1px solid var(--fl-faint)}
.fl-btn--outline:hover{border-color:var(--fl-gold);color:var(--fl-gold)}
.fl-btn--ghost{background:transparent;color:var(--fl-muted);border:none;padding-left:0}
.fl-btn--ghost:hover{color:var(--fl-text)}
.fl-btn--full{width:100%;height:3.2rem}

/* ── Navbar ──────────────────────────────────── */
.fl-nav{position:fixed;top:0;left:0;right:0;z-index:1000;transition:background var(--tr),padding var(--tr),box-shadow var(--tr);padding:1.4rem 0}
.fl-nav.is-scrolled{background:rgba(10,10,10,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--fl-border);padding:.8rem 0}
.fl-nav__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.fl-nav__logo{display:flex;align-items:center}
.fl-nav__logo-img{height:2.4rem;width:auto;filter:brightness(0) invert(1)}
.fl-nav__logo-text{font-family:'Playfair Display',Georgia,serif;font-size:1.4rem;color:var(--fl-gold)}
.fl-nav__links{display:none;gap:2rem}
@media(min-width:900px){.fl-nav__links{display:flex}}
.fl-nav__link{font-size:.8rem;font-weight:500;letter-spacing:.05em;color:rgba(232,220,200,.75);transition:color var(--tr)}
.fl-nav__link:hover{color:var(--fl-gold)}
.fl-nav__actions{display:flex;align-items:center;gap:1rem}
.fl-nav__actions .fl-btn{display:none}
@media(min-width:900px){.fl-nav__actions .fl-btn{display:inline-flex}}
.fl-nav__burger{display:flex;flex-direction:column;gap:5px;width:2rem;height:2rem;justify-content:center;align-items:flex-end}
@media(min-width:900px){.fl-nav__burger{display:none}}
.fl-nav__burger span{display:block;height:1.5px;background:var(--fl-text);transition:all .3s;transform-origin:right}
.fl-nav__burger span:nth-child(1){width:100%}
.fl-nav__burger span:nth-child(2){width:70%}
.fl-nav__burger span:nth-child(3){width:100%}
.fl-nav__burger.is-open span:nth-child(1){transform:rotate(-45deg)}
.fl-nav__burger.is-open span:nth-child(2){opacity:0}
.fl-nav__burger.is-open span:nth-child(3){transform:rotate(45deg)}
.fl-nav__mobile{display:flex;flex-direction:column;background:rgba(10,10,10,.97);backdrop-filter:blur(12px);border-top:1px solid var(--fl-border);max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s;padding:0 var(--pad)}
.fl-nav__mobile.is-open{max-height:600px;padding-top:1rem;padding-bottom:1.5rem}
.fl-nav__mobile-link{font-size:1.05rem;font-weight:500;color:var(--fl-text);padding:.8rem 0;border-bottom:1px solid rgba(184,134,11,.1);transition:color var(--tr)}
.fl-nav__mobile-link:hover{color:var(--fl-gold)}
.fl-nav__mobile-cta{margin-top:1rem}

/* ── Hero ────────────────────────────────────── */
.fl-hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;background-color:#111;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;overflow:hidden}
.fl-hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.55) 0%,rgba(0,0,0,.4) 40%,rgba(0,0,0,.75) 100%)}
.fl-hero__inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:8rem var(--pad) 6rem}
.fl-hero__logo img{height:7rem;width:auto;margin:0 auto .5rem;filter:drop-shadow(0 4px 24px rgba(0,0,0,.6))}
.fl-hero__badges{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}
.fl-badge{font-size:.65rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;padding:.35rem .9rem;border:1px solid var(--fl-gold);color:var(--fl-gold);background:rgba(184,134,11,.08)}
.fl-hero__headline{font-size:clamp(3rem,9vw,7rem);font-weight:700;line-height:1.08;letter-spacing:-.02em;color:var(--fl-text);text-shadow:0 4px 32px rgba(0,0,0,.5)}
.fl-hero__sub{max-width:560px;font-size:1rem;color:rgba(232,220,200,.72);font-weight:300;line-height:1.7}
.fl-hero__actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.fl-hero__scroll{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.6rem;color:rgba(232,220,200,.4);font-size:.6rem;letter-spacing:.3em;z-index:2;animation:fl-float 3s ease-in-out infinite}
.fl-hero__scroll-line{width:1px;height:3rem;background:linear-gradient(to bottom,rgba(184,134,11,.6),transparent)}
@keyframes fl-float{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}
.fl-fade-in{animation:fl-fadeUp 1s ease both}
.fl-fade-in:nth-child(1){animation-delay:.2s}
.fl-fade-in:nth-child(2){animation-delay:.4s}
.fl-fade-in:nth-child(3){animation-delay:.6s}
.fl-fade-in:nth-child(4){animation-delay:.8s}
.fl-fade-in:nth-child(5){animation-delay:1s}
@keyframes fl-fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.fl-reveal{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform .8s ease}
.fl-reveal.is-visible{opacity:1;transform:translateY(0)}

/* ── About ───────────────────────────────────── */
.fl-about__grid{display:grid;grid-template-columns:1fr;gap:4rem;align-items:center}
@media(min-width:900px){.fl-about__grid{grid-template-columns:1fr 1fr}}
.fl-about__img-wrap{position:relative}
.fl-about__img-frame{position:relative;aspect-ratio:4/5;overflow:hidden}
.fl-about__img-overlay{position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.15);transition:background var(--tr)}
.fl-about__img-frame:hover .fl-about__img-overlay{background:rgba(0,0,0,0)}
.fl-about__img{width:100%;height:100%;object-fit:cover;transition:transform 1s ease}
.fl-about__img-frame:hover .fl-about__img{transform:scale(1.05)}
.fl-about__badge{position:absolute;bottom:-2.5rem;right:-2rem;background:var(--fl-card);border:1px solid var(--fl-border);padding:1.8rem 2rem;display:none;flex-direction:column;box-shadow:var(--fl-shadow)}
@media(min-width:700px){.fl-about__badge{display:flex}}
.fl-about__badge-num{font-family:'Playfair Display',serif;font-size:2.5rem}
.fl-about__badge-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:var(--fl-muted);margin-top:.4rem}
.fl-about__content{display:flex;flex-direction:column;gap:1.5rem}
.fl-about__body{display:flex;flex-direction:column;gap:1rem;color:var(--fl-muted);font-weight:300;line-height:1.8}
.fl-about__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-top:1.5rem;border-top:1px solid var(--fl-border)}
.fl-about__stat{display:flex;flex-direction:column;gap:.3rem}
.fl-about__stat strong{font-family:'Playfair Display',serif;font-size:1.2rem}
.fl-about__stat small{font-size:.65rem;text-transform:uppercase;letter-spacing:.18em;color:var(--fl-faint)}
.fl-about__quote{font-family:'Playfair Display',serif;font-style:italic;font-size:1.7rem;border:none;margin:0;padding:0}

/* ── Menu ────────────────────────────────────── */
.fl-menu__tabs{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-bottom:3rem}
.fl-menu__tab{padding:.6rem 1.2rem;font-size:.7rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;border:1px solid rgba(184,134,11,.25);color:var(--fl-muted);background:transparent;transition:all var(--tr);cursor:pointer}
.fl-menu__tab:hover,.fl-menu__tab.is-active{background:var(--fl-gold);border-color:var(--fl-gold);color:#0a0a0a}
.fl-menu__panel{display:none}
.fl-menu__panel.is-active{display:block;animation:fl-fadeUp .35s ease}
.fl-menu__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}
.fl-dish-card{background:var(--fl-card);border:1px solid var(--fl-border);position:relative;overflow:hidden;transition:border-color var(--tr)}
.fl-dish-card:hover{border-color:rgba(184,134,11,.5)}
.fl-dish-card__img-wrap{position:relative;aspect-ratio:4/3;overflow:hidden}
.fl-dish-card__img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.fl-dish-card:hover .fl-dish-card__img{transform:scale(1.1)}
.fl-dish-card__img-placeholder{width:100%;height:100%;background:#1a1a1a;display:flex;align-items:center;justify-content:center}
.fl-dish-card__badge{position:absolute;top:.75rem;right:.75rem;background:var(--fl-gold);color:#0a0a0a;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .6rem;display:flex;align-items:center;gap:.3rem}
.fl-dish-card__gradient{position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(to top,var(--fl-card),transparent)}
.fl-dish-card__body{padding:1.1rem 1.2rem 1.3rem}
.fl-dish-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}
.fl-dish-card__name{font-family:'Playfair Display',serif;font-size:1rem;line-height:1.3}
.fl-dish-card__price{font-size:.82rem;font-weight:600;flex-shrink:0;margin-top:2px}
.fl-dish-card__desc{font-size:.75rem;color:var(--fl-muted);line-height:1.6}
.fl-dish-card__line{position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--fl-gold);transition:width .5s ease}
.fl-dish-card:hover .fl-dish-card__line{width:100%}
.fl-menu__note{text-align:center;margin-top:3.5rem;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fl-faint)}

/* ── Gallery ─────────────────────────────────── */
.fl-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
@media(min-width:640px){.fl-gallery__grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:900px){.fl-gallery__grid{grid-template-columns:repeat(4,1fr)}}
.fl-gallery__item{position:relative;overflow:hidden;cursor:pointer;background:var(--fl-card);aspect-ratio:1}
.fl-gallery__item--wide{grid-column:span 2;aspect-ratio:2/1}
.fl-gallery__img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.fl-gallery__item:hover .fl-gallery__img{transform:scale(1.08)}
.fl-gallery__overlay{position:absolute;inset:0;background:rgba(0,0,0,0);display:flex;align-items:center;justify-content:center;transition:background var(--tr)}
.fl-gallery__item:hover .fl-gallery__overlay{background:rgba(0,0,0,.45)}
.fl-gallery__caption{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,0);transition:color var(--tr),transform var(--tr);transform:translateY(6px)}
.fl-gallery__item:hover .fl-gallery__caption{color:rgba(255,255,255,.88);transform:translateY(0)}

/* ── Lightbox ────────────────────────────────── */
.fl-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.95);display:flex;align-items:center;justify-content:center;padding:2rem;opacity:0;transition:opacity .3s}
.fl-lightbox:not([hidden]){opacity:1}
.fl-lightbox__close{position:absolute;top:1.5rem;right:1.5rem;font-size:2.5rem;color:rgba(255,255,255,.7);line-height:1;transition:color var(--tr)}
.fl-lightbox__close:hover{color:#fff}
.fl-lightbox__img{max-width:100%;max-height:90vh;object-fit:contain;transform:scale(.95);transition:transform .3s}
.fl-lightbox:not([hidden]) .fl-lightbox__img{transform:scale(1)}

/* ── Reviews ─────────────────────────────────── */
.fl-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;padding:2.5rem 0;border-top:1px solid var(--fl-border);border-bottom:1px solid var(--fl-border);margin-bottom:4rem;text-align:center}
@media(min-width:640px){.fl-stats{grid-template-columns:repeat(4,1fr)}}
.fl-stat__num{display:block;font-family:'Playfair Display',serif;font-size:clamp(2rem,5vw,3rem)}
.fl-stat__label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:var(--fl-faint);margin-top:.3rem}
.fl-reviews__grid{display:grid;grid-template-columns:1fr;gap:1.25rem}
@media(min-width:640px){.fl-reviews__grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.fl-reviews__grid{grid-template-columns:repeat(3,1fr)}}
.fl-review-card{background:var(--fl-card);border:1px solid var(--fl-border);padding:1.8rem;position:relative;transition:border-color var(--tr);display:flex;flex-direction:column;gap:1rem}
.fl-review-card:hover{border-color:rgba(184,134,11,.35)}
.fl-review-card__top-bar{position:absolute;top:0;left:1.8rem;width:2.5rem;height:2px;background:var(--fl-gold)}
.fl-stars{display:flex;gap:2px}
.fl-review-card__text{font-size:.88rem;line-height:1.8;color:var(--fl-muted);font-weight:300;flex:1}
.fl-review-card__author{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid rgba(184,134,11,.12)}
.fl-review-card__name{display:block;font-family:'Playfair Display',serif;font-size:1rem}
.fl-review-card__location{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.18em;color:var(--fl-faint);margin-top:.25rem}
.fl-review-card__avatar{width:2.2rem;height:2.2rem;border-radius:50%;background:rgba(184,134,11,.1);border:1px solid rgba(184,134,11,.2);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:.9rem;color:var(--fl-gold);flex-shrink:0}

/* ── Reservations ────────────────────────────── */
.fl-res__grid{display:grid;grid-template-columns:1fr;gap:4rem;align-items:start}
@media(min-width:900px){.fl-res__grid{grid-template-columns:1fr 1fr}}
.fl-res__info{display:flex;flex-direction:column;gap:2rem}
.fl-res__desc{color:var(--fl-muted);font-weight:300;line-height:1.8}
.fl-res__contact-cards{display:flex;flex-direction:column;gap:.75rem}
.fl-contact-card{display:flex;align-items:flex-start;gap:1.2rem;padding:1.2rem 1.4rem;border:1px solid var(--fl-border);background:var(--fl-card);transition:all var(--tr)}
.fl-contact-card>div{display:flex;flex-direction:column;gap:.2rem}
.fl-contact-card strong{font-family:'Playfair Display',serif;font-size:1rem}
.fl-contact-card span{font-size:.8rem;color:var(--fl-muted)}
.fl-contact-card--whatsapp{border-color:rgba(37,211,102,.2)}
.fl-contact-card--whatsapp:hover{background:rgba(37,211,102,.07)}
.fl-contact-card--phone{border-color:rgba(184,134,11,.2)}
.fl-contact-card--phone:hover{background:rgba(184,134,11,.07)}
.fl-res__form-card{background:var(--fl-card);border:1px solid var(--fl-border);padding:2.5rem}
.fl-res__form-header{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}
.fl-res__form-header h3{font-family:'Playfair Display',serif;font-size:1.25rem}
.fl-form{display:flex;flex-direction:column;gap:1rem}
.fl-form__row{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:480px){.fl-form__row{grid-template-columns:1fr 1fr}}
.fl-form__group{display:flex;flex-direction:column;gap:.4rem}
.fl-form__group label{font-size:.65rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--fl-muted)}
.fl-form__group input,.fl-form__group select,.fl-form__group textarea{background:rgba(0,0,0,.4);border:1px solid var(--fl-border);color:var(--fl-text);padding:.75rem 1rem;width:100%;outline:none;transition:border-color var(--tr);-webkit-appearance:none}
.fl-form__group input:focus,.fl-form__group select:focus,.fl-form__group textarea:focus{border-color:var(--fl-gold)}
.fl-form__group textarea{resize:vertical;min-height:80px}
.fl-form__group select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23b8860b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}
.fl-form__group input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(.6) sepia(1) saturate(3) hue-rotate(0deg);cursor:pointer}

/* ── Contact ─────────────────────────────────── */
.fl-contact__grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:start}
@media(min-width:900px){.fl-contact__grid{grid-template-columns:1fr 1fr}}
.fl-contact__map-frame{aspect-ratio:16/10;overflow:hidden;border:1px solid var(--fl-border)}
.fl-contact__iframe{width:100%;height:100%;border:none;filter:grayscale(.6) brightness(.7);transition:filter .7s}
.fl-contact__map-frame:hover .fl-contact__iframe{filter:none}
.fl-contact__map-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:.75rem;font-size:.8rem;color:var(--fl-gold);opacity:.7;transition:opacity var(--tr)}
.fl-contact__map-link:hover{opacity:1}
.fl-contact__info{display:flex;flex-direction:column;gap:1rem}
.fl-contact__info-card{background:var(--fl-card);border:1px solid var(--fl-border);padding:1.8rem}
.fl-contact__info-row{display:flex;align-items:flex-start;gap:1.2rem;padding:.75rem 0}
.fl-contact__info-row h4{font-family:'Playfair Display',serif;font-size:1rem;margin-bottom:.3rem}
.fl-contact__info-row p,.fl-contact__info-row a{font-size:.85rem;color:var(--fl-muted);line-height:1.7}
.fl-contact__info-row a:hover{color:var(--fl-gold)}
.fl-contact__hours{display:flex;flex-direction:column;gap:.15rem;font-size:.85rem}
.fl-contact__hours span:first-child{color:var(--fl-muted)}
.fl-contact__action-btns{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.fl-action-btn{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:1rem;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border:1px solid;transition:all var(--tr)}
.fl-action-btn--whatsapp{border-color:rgba(37,211,102,.3);color:var(--fl-whatsapp);background:rgba(37,211,102,.06)}
.fl-action-btn--whatsapp:hover{background:rgba(37,211,102,.12)}
.fl-action-btn--phone{border-color:rgba(184,134,11,.3);color:var(--fl-gold);background:rgba(184,134,11,.06)}
.fl-action-btn--phone:hover{background:rgba(184,134,11,.12)}
.fl-contact__social-card{background:var(--fl-card);border:1px solid var(--fl-border);padding:1.5rem 1.8rem}
.fl-contact__social-card h4{font-family:'Playfair Display',serif;font-size:1rem;margin-bottom:1rem}
.fl-contact__social-links{display:flex;gap:.75rem;flex-direction:column}
@media(min-width:480px){.fl-contact__social-links{flex-direction:row}}
.fl-social-link{display:flex;align-items:center;gap:.75rem;flex:1;padding:.8rem 1rem;border:1px solid var(--fl-border);font-size:.8rem;font-weight:500;color:var(--fl-muted);transition:all var(--tr)}
.fl-social-link--ig:hover{border-color:rgba(225,48,108,.4);color:var(--fl-instagram)}
.fl-social-link--fb:hover{border-color:rgba(24,119,242,.4);color:var(--fl-facebook)}

/* ── Footer ──────────────────────────────────── */
.fl-footer{background:#030303;border-top:1px solid var(--fl-border)}
.fl-footer__grid{display:grid;grid-template-columns:1fr;gap:3rem;padding:4rem var(--pad)}
@media(min-width:768px){.fl-footer__grid{grid-template-columns:2fr 1fr 1fr}}
@media(min-width:1024px){.fl-footer__grid{grid-template-columns:2fr 1fr 1.5fr}}
.fl-footer__brand{display:flex;flex-direction:column;gap:1rem}
.fl-footer__logo{height:3rem;width:auto;filter:brightness(0) invert(1)}
.fl-footer__logo-text{font-family:'Playfair Display',serif;font-size:1.5rem;color:var(--fl-gold)}
.fl-footer__desc{font-size:.82rem;color:var(--fl-muted);line-height:1.8;max-width:300px;font-weight:300}
.fl-footer__tagline{font-family:'Playfair Display',serif;font-style:italic;font-size:1.1rem;color:var(--fl-gold);opacity:.75}
.fl-footer__social{display:flex;gap:.75rem}
.fl-footer__social-link{width:2.4rem;height:2.4rem;border:1px solid var(--fl-border);display:flex;align-items:center;justify-content:center;color:var(--fl-muted);transition:all var(--tr)}
.fl-footer__social-link:hover{color:var(--fl-gold);border-color:var(--fl-gold)}
.fl-footer__col-title{font-family:'Playfair Display',serif;font-size:1.1rem;margin-bottom:1.2rem}
.fl-footer__links{display:flex;flex-direction:column;gap:.7rem}
.fl-footer__link{font-size:.82rem;color:var(--fl-muted);transition:color var(--tr);display:flex;align-items:center;gap:.5rem}
.fl-footer__link:hover{color:var(--fl-gold)}
.fl-footer__info{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}
.fl-footer__info-item{display:flex;align-items:flex-start;gap:.75rem;font-size:.82rem;color:var(--fl-muted);line-height:1.6}
.fl-footer__info-item a{color:var(--fl-muted);transition:color var(--tr)}
.fl-footer__info-item a:hover{color:var(--fl-gold)}
.fl-footer__cta{display:inline-flex;margin-top:.5rem}
.fl-footer__bottom{border-top:1px solid rgba(184,134,11,.12)}
.fl-footer__bottom-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem var(--pad)}
.fl-footer__copy{font-size:.72rem;color:var(--fl-faint)}
.fl-footer__ratings{display:flex;align-items:center;gap:.75rem;font-size:.72rem;color:var(--fl-faint)}
.fl-scroll-top{width:2rem;height:2rem;border:1px solid var(--fl-border);display:flex;align-items:center;justify-content:center;color:var(--fl-faint);font-size:.9rem;transition:all var(--tr);margin-left:.5rem}
.fl-scroll-top:hover{color:var(--fl-gold);border-color:var(--fl-gold)}

/* ── WP Admin bar ────────────────────────────── */
body.admin-bar .fl-nav{top:32px}
@media screen and (max-width:782px){body.admin-bar .fl-nav{top:46px}}

/* ── Scrollbar ───────────────────────────────── */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--fl-bg-alt)}
::-webkit-scrollbar-thumb{background:var(--fl-border)}
::-webkit-scrollbar-thumb:hover{background:var(--fl-gold)}
