   :root {
       --black: #0f0f0f;
       --black-2: #1e1e1e;
       --black-3: #2a2a2a;
       --gold: #d4af37;
       --gold-light: #e8cb6a;
       --gold-dark: #a88a20;
       --white: #f5f5f5;
       --white-dim: rgba(245, 245, 245, 0.65);
       --white-faint: rgba(245, 245, 245, 0.1);

       --font-display: 'Playfair Display', Georgia, serif;
       --font-body: 'Poppins', sans-serif;

       --header-h: 80px;
       --transition: 0.45s cubic-bezier(0.16, 1, 0.3, 1);
       --transition-fast: 0.22s ease;
   }

   html {
       scroll-behavior: smooth;
   }

   body {
       background: var(--black);
       color: var(--white);
       font-family: var(--font-body);
       line-height: 1.7;
   }

   ::selection {
       background: var(--gold);
       color: var(--black);
   }

   header {
       transition: background var(--transition), box-shadow var(--transition);
   }

   /* ─── SCROLLBAR ─────────────────────────────────────────────── */
   ::-webkit-scrollbar {
       width: 6px;
   }

   ::-webkit-scrollbar-track {
       background: var(--black);
   }

   ::-webkit-scrollbar-thumb {
       background: var(--gold-dark);
       border-radius: 3px;
   }

   /* ─── TYPOGRAPHY ────────────────────────────────────────────── */
   h1,
   h2,
   h3,
   h4,
   h5 {
       font-family: var(--font-display);
       line-height: 1.15;
       font-weight: 700;
   }

   em {
       font-style: italic;
       color: var(--gold);
   }


   .totop {
       width: 40px;
       height: 40px;
       position: fixed;
       bottom: 5px;
       right: 0;
       z-index: 99;
       -webkit-border-radius: 100%;
       -moz-border-radius: 100%;
       border-radius: 100%;
       background-color: rgba(35, 35, 35, .4);
       -webkit-transition: all 250ms linear;
       -moz-transition: all 250ms linear;
       transition: all 250ms linear;
       text-align: center;
       line-height: 40px;
       font-size: 24px;
       color: #e8ff5b;
       z-index: 9999;
   }

   .totop i {
       pointer-events: none;
   }

   /* ─── HEADER ────────────────────────────────────────────────── */
   .header {
       transition: background var(--transition), box-shadow var(--transition);
   }

   .header.sticky {
       background: rgba(15, 15, 15, 0.96);
       backdrop-filter: blur(14px);
       -webkit-backdrop-filter: blur(14px);
       box-shadow: 0 1px 0 rgba(212, 175, 55, 0.15);
   }

   .header__inner {
       display: flex;
       align-items: center;
       justify-content: space-between;
       height: 100%;
       padding: 0 clamp(1.25rem, 5vw, 3rem);
       max-width: 1360px;
       margin: 0 auto;
   }


   /*============================================================*/
   .hero {
       position: relative;
       display: flex;
       align-items: center;
       justify-content: center;
       overflow: hidden;
       padding-top: 80px;
       padding-bottom: 80px;
       /* Fundo: gradiente dramático simulando ambiente de bar escuro */
       background:
           radial-gradient(ellipse 80% 60% at 50% 70%, rgba(201, 168, 76, 0.08) 0%, transparent 70%),
           radial-gradient(ellipse 120% 80% at 20% 20%, rgba(201, 168, 76, 0.04) 0%, transparent 60%),
           linear-gradient(180deg, #050505 0%, #0D0C0A 40%, #080706 100%);
       background-image: url(../images/hero.png);
       background-size: cover;
       background-position: center;
   }


   /* Textura de ruído sutil */
   .hero::before {
       content: '';
       position: absolute;
       inset: 0;
       background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
       opacity: 0.4;
       pointer-events: none;
   }

   .hero-overlay {
       position: absolute;
       inset: 0;
       background: radial-gradient(ellipse at center bottom, rgba(0, 0, 0, 0.768) 0%, #000000ba 65%);
       pointer-events: none;
       z-index: 1;
   }

   /* Ornamentos Art Deco */
   .hero-deco {
       position: absolute;
       left: 50%;
       transform: translateX(-50%);
       width: min(600px, 80vw);
       height: 1px;
       pointer-events: none;
   }

   .hero-deco--top {
       top: 5rem;
       background: linear-gradient(90deg, transparent 0%, rgba(201, 168, 76, 0.4) 30%, rgba(201, 168, 76, 0.8) 50%, rgba(201, 168, 76, 0.4) 70%, transparent 100%);
   }

   .hero-deco--bottom {
       bottom: 2rem;
       background: linear-gradient(90deg, transparent 0%, rgba(201, 168, 76, 0.3) 30%, rgba(201, 168, 76, 0.6) 50%, rgba(201, 168, 76, 0.3) 70%, transparent 100%);
   }

   .hero-content {
       position: relative;
       text-align: center;
       z-index: 2;
       padding: 2rem;
       max-width: 860px;
   }

   .hero-eyebrow {
       font-size: 0.72rem;
       font-weight: 500;
       letter-spacing: 0.26em;
       text-transform: uppercase;
       color: var(--gold);
       margin-bottom: 1.6rem;
   }

   .hero-title {
       font-family: var(--font-display);
       font-size: clamp(3rem, 8vw, 6.5rem);
       font-weight: 300;
       line-height: 1.05;
       color: var(--white);
       margin-bottom: 1.8rem;
   }

   .hero-title em {
       display: block;
       font-style: italic;
       font-size: clamp(1.6rem, 4vw, 3rem);
       color: var(--gold-light);
       font-weight: 300;
       margin-top: 0.4rem;
   }

   .hero-subtitle {
       font-size: clamp(0.9rem, 2vw, 1.1rem);
       font-weight: 300;
       color: var(--text-body);
       line-height: 1.2;
       margin-bottom: 3rem;
   }

   .hero-buttons {
       display: flex;
       gap: 1rem;
       justify-content: center;
       flex-wrap: wrap;
   }

   /* Scroll indicator */
   .hero-scroll {
       position: absolute;
       bottom: 0.5rem;
       left: 50%;
       transform: translateX(-50%);
       display: flex;
       flex-direction: column;
       align-items: center;
       gap: 0.6rem;
       color: var(--text-muted);
       font-size: 0.65rem;
       letter-spacing: 0.2em;
       text-transform: uppercase;
       z-index: 2;
       animation: floatScroll 2.4s ease-in-out infinite;
   }

   .hero-scroll-line {
       width: 1px;
       height: 36px;
       background: linear-gradient(180deg, var(--gold), transparent);
   }

   @keyframes floatScroll {

       0%,
       100% {
           transform: translateX(-50%) translateY(0);
       }

       50% {
           transform: translateX(-50%) translateY(6px);
       }
   }

   /*==========sobre===============*/
   .sobre {
       background: var(--black-mid);
   }

   .sobre-visual {
       position: relative;
   }

   .sobre {
       background: var(--black-mid);
   }

   .sobre-img-wrap {
       position: relative;
       aspect-ratio: 4/5;
       overflow: hidden;
       border-radius: 2px;
   }

   .sobre-img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: transform 0.8s ease;
   }

   .sobre-img-wrap:hover .sobre-img {
       transform: scale(1.04);
   }

   /* Placeholder quando não há imagem */
   .sobre-img-wrap.sobre-img--placeholder,
   .sobre-img-wrap:not(:has(img[src])) {
       background: var(--black-card);
       border: 1px solid rgba(201, 168, 76, 0.15);
       display: flex;
       align-items: center;
       justify-content: center;
   }

   .sobre-img-placeholder {
       position: absolute;
       inset: 0;
       display: flex;
       align-items: center;
       justify-content: center;
       background: var(--black-card);
       border: 1px solid rgba(201, 168, 76, 0.12);
   }

   .sobre-img-placeholder svg {
       width: 80px;
       opacity: 0.5;
   }

   /* Frame decorativo */
   .sobre-img-wrap::before {
       content: '';
       position: absolute;
       inset: -8px;
       border: 1px solid rgba(201, 168, 76, 0.2);
       border-radius: 2px;
       z-index: -1;
   }


   .logo__img {
       max-width: 90px;
   }


   .sobre-badge {
       position: absolute;
       bottom: -1.5rem;
       right: -1.5rem;
       background: var(--gold);
       color: var(--black);
       padding: 1.2rem 1.5rem;
       text-align: center;
       border-radius: var(--radius);
       z-index: 2;
   }

   .badge-number {
       display: block;
       font-family: var(--font-display);
       font-size: 2rem;
       font-weight: 700;
       line-height: 1;
   }

   .badge-label {
       display: block;
       font-size: 0.65rem;
       font-weight: 500;
       letter-spacing: 0.12em;
       text-transform: uppercase;
       margin-top: 0.3rem;
   }

   .sobre-text p {
       margin-bottom: 1rem;
       font-size: 1rem;
   }

   .sobre-text strong {
       color: var(--gold-light);
       font-weight: 500;
   }

   .sobre-eventos {
       display: flex;
       flex-wrap: wrap;
       gap: 0.7rem;
       margin-top: 2rem;
   }

   .sobre-eventos li {
       background: rgba(201, 168, 76, 0.08);
       border: 1px solid rgba(201, 168, 76, 0.2);
       color: var(--gold-light);
       padding: 0.4rem 1rem;
       border-radius: 2rem;
       font-size: 0.8rem;
       font-weight: 400;
       letter-spacing: 0.05em;
   }

   /* ─── nav ─────────────────────────────────────────────── */
   .navbar-collapse.show {
       background: rgba(15, 15, 15, 0.96);
   }

   .nav-link {
       font-size: 0.78rem;
       font-weight: 500;
       letter-spacing: 0.1em;
       text-transform: uppercase;
       color: var(--white-dim);
       text-decoration: none;
       transition: color var(--transition-fast);
       position: relative;
   }

   .nav-link::after {
       content: '';
       position: absolute;
       bottom: 0;
       left: 50%;
       transform: translateX(-50%) scaleX(0);
       width: 60%;
       height: 1px;
       background: var(--gold);
       transition: transform var(--transition-fast);
   }

   .nav-link--cta {
       background: var(--gold);
       color: var(--black) !important;
       padding: 0.45rem 1.1rem;
       border-radius: 2px;
       font-weight: 600;
   }

   .nav-link:hover {
       color: var(--white);
   }

   .nav-link:hover::after {
       transform: translateX(-50%) scaleX(1);
   }

   /* ─── UTILITIES ─────────────────────────────────────────────── */

   .section {
       padding: clamp(3rem, 7vw, 5rem) 0;
       position: relative;
   }

   .section-header {
       text-align: center;
       margin-bottom: clamp(3rem, 6vw, 5rem);
   }

   .section-label {
       display: inline-block;
       font-size: 0.7rem;
       font-weight: 600;
       letter-spacing: 0.25em;
       text-transform: uppercase;
       color: var(--gold);
       margin-bottom: 1rem;
       position: relative;
       padding: 0 1.5rem;
   }

   .section-label::before,
   .section-label::after {
       content: '';
       position: absolute;
       top: 50%;
       width: 2.5rem;
       height: 1px;
       background: var(--gold);
       opacity: 0.5;
   }

   .section-label::before {
       right: 100%;
       margin-right: -1.5rem;
   }

   .section-label::after {
       left: 100%;
       margin-left: -1.5rem;
   }

   .section-title {
       font-size: clamp(2rem, 5vw, 3.2rem);
       color: var(--white);
       margin-bottom: 1.25rem;
   }

   .section-desc {
       color: var(--white-dim);
       max-width: 520px;
       margin: 0 auto;
       font-size: 1rem;
   }



   /* ─── BUTTONS ───────────────────────────────────────────────── */
   .btn--gold {
       background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 50%, var(--gold) 100%);
       background-size: 200% auto;
       color: var(--black);
   }

   .btn--gold:hover {
       background-position: right center;
       box-shadow: 0 4px 24px rgba(201, 168, 76, 0.35);
       transform: translateY(-2px);
   }

   .btn--outline {
       background: transparent;
       color: var(--white);
       border: 1px solid rgba(255, 255, 255, 0.3);
   }

   .btn--outline:hover {
       border-color: var(--gold);
       color: var(--gold);
       transform: translateY(-2px);
   }



   /* ─── SERVIÇOS ───────────────────────────────────────────────── */
   .servicos {
       background: var(--black-2);
   }

   .servicos__grid {
       display: grid;
       grid-template-columns: repeat(3, 1fr);
       gap: 1.5rem;
   }

   .service-card {
       background: var(--black);
       padding: 2.5rem 2rem;
       border: 1px solid rgba(245, 245, 245, 0.06);
       position: relative;
       cursor: default;
       transition: border-color var(--transition), transform var(--transition), box-shadow var(--transition);
       overflow: hidden;
   }

   .service-card::before {
       content: '';
       position: absolute;
       inset: 0;
       background: linear-gradient(135deg, rgba(212, 175, 55, 0.06) 0%, transparent 60%);
       opacity: 0;
       transition: opacity var(--transition);
   }

   .service-card:hover {
       border-color: rgba(212, 175, 55, 0.4);
       transform: translateY(-6px);
       box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5), 0 0 30px rgba(212, 175, 55, 0.08);
   }

   .service-card:hover::before {
       opacity: 1;
   }

   .service-card__icon {
       width: 52px;
       height: 52px;
       margin-bottom: 1.5rem;
       transition: transform var(--transition);
   }

   .service-card:hover .service-card__icon {
       transform: scale(1.1);
   }

   .service-card__icon svg {
       width: 100%;
       height: 100%;
   }

   .service-card__title {
       font-size: 1.2rem;
       font-weight: 700;
       color: var(--white);
       margin-bottom: 0.75rem;
   }

   .service-card__text {
       font-size: 0.88rem;
       color: var(--white-dim);
       line-height: 1.7;
   }

   .service-card__line {
       position: absolute;
       bottom: 0;
       left: 0;
       height: 2px;
       width: 0;
       background: var(--gold);
       transition: width 0.5s cubic-bezier(0.16, 1, 0.3, 1);
   }

   .service-card:hover .service-card__line {
       width: 100%;
   }

   /* Mixologist */
   .mixologist {
       display: flex;
       gap: 1.25rem;
       align-items: flex-start;
       margin-top: 2rem;
       padding: 1.5rem;
       border: 1px solid rgba(212, 175, 55, 0.2);
       background: rgba(212, 175, 55, 0.03);
       transition: border-color var(--transition-fast);
   }

   .mixologist:hover {
       border-color: rgba(212, 175, 55, 0.5);
   }

   .mixologist__photo {
       flex-shrink: 0;
       width: 64px;
       height: 64px;
       border-radius: 50%;
       overflow: hidden;
       border: 1.5px solid var(--gold);
   }

   .mixologist__photo-inner {
       width: 100%;
       height: 100%;
   }

   .mixologist__photo-inner svg {
       width: 100%;
       height: 100%;
   }

   .mixologist__name {
       font-family: var(--font-display);
       font-size: 1.05rem;
       font-weight: 700;
       color: var(--white);
       margin-bottom: 0.15rem;
   }

   .mixologist__title {
       font-size: 0.7rem;
       font-weight: 600;
       letter-spacing: 0.12em;
       text-transform: uppercase;
       color: var(--gold);
       display: block;
       margin-bottom: 0.6rem;
   }

   .mixologist__bio {
       font-size: 0.85rem;
       color: var(--white-dim);
   }

   /* ─── CARDÁPIO ───────────────────────────────────────────────── */
   .cardapio {
       background: var(--black-2);
       overflow: hidden;
   }

   .cardapio__bg {
       position: absolute;
       inset: 0;
       background:
           radial-gradient(ellipse 70% 50% at 50% 0%, rgba(212, 175, 55, 0.05) 0%, transparent 60%),
           radial-gradient(ellipse 50% 40% at 50% 100%, rgba(212, 175, 55, 0.04) 0%, transparent 60%);
       pointer-events: none;
   }

   .cardapio__grid {
       background: rgba(212, 175, 55, 0.1);
       border: 1px solid rgba(212, 175, 55, 0.1);
       margin-bottom: 10px;
   }

   .drink-card {
       background: var(--black-2);
       padding: 1.75rem 2rem;
       position: relative;
       transition: background var(--transition-fast);
       cursor: default;
   }

   .drink-card:hover {
       background: rgba(212, 175, 55, 0.04);
   }

   .drink-card__header {
       display: flex;
       align-items: center;
       justify-content: space-between;
       gap: 0.75rem;
       margin-bottom: 0.6rem;
   }

   .drink-card__name {
       font-family: var(--font-display);
       font-size: 1.1rem;
       font-weight: 700;
       color: var(--white);
   }

   .drink-card__tag {
       font-size: 0.6rem;
       font-weight: 600;
       letter-spacing: 0.15em;
       text-transform: uppercase;
       color: var(--gold);
       border: 1px solid rgba(212, 175, 55, 0.4);
       padding: 0.2rem 0.55rem;
       border-radius: 2px;
       white-space: nowrap;
       flex-shrink: 0;
   }

   .drink-card__ingredients {
       font-size: 0.82rem;
       color: var(--white-dim);
       line-height: 1.6;
   }

   /* Featured drink (spans 2 cols if space available) */
   .drink-card--featured {
       background: rgba(212, 175, 55, 0.05);
       border-left: 2px solid var(--gold);
   }

   .drink-card--featured .drink-card__name {
       color: var(--gold);
   }

   .cardapio__note {
       text-align: center;
       margin-top: 2.5rem;
       color: var(--white-dim);
       font-style: italic;
       font-size: 0.88rem;
       display: flex;
       align-items: center;
       justify-content: center;
       gap: 1rem;
   }

   .cardapio__note span {
       color: var(--gold);
       font-style: normal;
   }

   /* ─── DIFERENCIAIS ───────────────────────────────────────────── */
   .diferenciais {
       background: var(--black);
       overflow: hidden;
   }

   .diferenciais__bg {
       position: absolute;
       inset: 0;
       background:
           radial-gradient(ellipse 60% 50% at 50% 50%, rgba(212, 175, 55, 0.04) 0%, transparent 70%);
       pointer-events: none;
   }

   .diferenciais__grid {
       display: grid;
       grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
       gap: 1.25rem;
   }

   .diferencial-item {
       display: flex;
       gap: 1.25rem;
       align-items: flex-start;
       padding: 1.5rem;
       border-left: 2px solid rgba(212, 175, 55, 0.25);
       transition: border-color var(--transition-fast), background var(--transition-fast);
   }

   .diferencial-item:hover {
       border-left-color: var(--gold);
       background: rgba(212, 175, 55, 0.03);
   }

   .diferencial-item__check {
       color: var(--gold);
       font-size: 1rem;
       flex-shrink: 0;
       margin-top: 0.15rem;
       transition: transform var(--transition);
   }

   .diferencial-item:hover .diferencial-item__check {
       transform: rotate(45deg) scale(1.2);
   }

   .diferencial-item__title {
       font-family: var(--font-display);
       font-size: 1rem;
       font-weight: 700;
       color: var(--white);
       margin-bottom: 0.3rem;
   }

   .diferencial-item__text {
       font-size: 0.85rem;
       color: var(--white-dim);
   }



   /* ─── GALERIA ────────────────────────────────────────────────── */
   .galeria {
       background: var(--black-2);
   }

   /* ── Slider de galeria ───────────────────────────────────────── */
   .galeria-slider {
       position: relative;
       overflow: hidden;
       border-radius: 4px;
   }

   .galeria-slider__track {
       display: flex;
       transition: transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
       will-change: transform;
   }

   .galeria-slider__slide {
       min-width: 100%;
       width: 100%;
       flex-shrink: 0;
   }

   /* Grid 4×2 por slide */
   .galeria-slide__grid {
       display: grid;
       grid-template-columns: repeat(4, minmax(0, 1fr));
       gap: 0.6rem;
   }

   .galeria-slide__item {
       aspect-ratio: 4/3;
       overflow: hidden;
       background: var(--black-3);
       border: 1px solid rgba(212, 175, 55, 0.08);
       transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
   }

   .galeria-slide__item:hover {
       border-color: rgba(212, 175, 55, 0.4);
       box-shadow: 0 0 20px rgba(212, 175, 55, 0.1);
   }

   .galeria-slide__item img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       display: block;
       transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
   }

   .galeria-slide__item:hover img {
       transform: scale(1.1);
   }


   /* Botões de navegação */
   .galeria-slider__btn {
       position: absolute;
       top: 50%;
       transform: translateY(-50%);
       z-index: 10;
       background: rgba(15, 15, 15, 0.75);
       border: 1px solid rgba(212, 175, 55, 0.35);
       color: var(--gold);
       width: 48px;
       height: 48px;
       border-radius: 50%;
       font-size: 1.25rem;
       display: flex;
       align-items: center;
       justify-content: center;
       cursor: pointer;
       backdrop-filter: blur(8px);
       -webkit-backdrop-filter: blur(8px);
       transition: background var(--transition-fast), border-color var(--transition-fast),
           transform var(--transition-fast), box-shadow var(--transition-fast);
   }

   .galeria-slider__btn:hover {
       background: var(--gold);
       color: var(--black);
       border-color: var(--gold);
       box-shadow: 0 0 22px rgba(212, 175, 55, 0.45);
       transform: translateY(-50%) scale(1.08);
   }

   .galeria-slider__btn--prev {
       left: 0.75rem;
   }

   .galeria-slider__btn--next {
       right: 0.75rem;
   }

   /* Dots */
   .galeria-slider__dots {
       display: flex;
       justify-content: center;
       gap: 0.55rem;
       margin-top: 1.5rem;
   }

   .galeria-slider__dot {
       width: 8px;
       height: 8px;
       border-radius: 50%;
       background: rgba(212, 175, 55, 0.25);
       border: 1px solid rgba(212, 175, 55, 0.4);
       cursor: pointer;
       transition: background var(--transition-fast), transform var(--transition-fast);
       padding: 0;
   }

   .galeria-slider__dot.active {
       background: var(--gold);
       transform: scale(1.3);
   }

   /* Responsivo */
   @media (max-width: 992px) {
       .galeria-slide__grid {
           grid-template-columns: repeat(2, minmax(0, 1fr));
       }
   }

   @media (max-width: 480px) {
       .galeria-slide__grid {
           grid-template-columns: repeat(2, minmax(0, 1fr));
           gap: 0.4rem;
       }

       .galeria-slider__btn {
           width: 38px;
           height: 38px;
           font-size: 1rem;
       }
   }



   /* ─── LIGHTBOX (GALERIA) ─────────────────────────────────────── */
   .lightbox {
       position: fixed;
       inset: 0;
       background: rgba(0, 0, 0, 0.92);
       z-index: 9999;
       display: flex;
       align-items: center;
       justify-content: center;
       opacity: 0;
       pointer-events: none;
       transition: opacity var(--transition-fast);
       backdrop-filter: blur(5px);
       -webkit-backdrop-filter: blur(5px);
   }

   .lightbox.active {
       opacity: 1;
       pointer-events: auto;
   }

   .lightbox__content {
       position: relative;
       max-width: 90vw;
       max-height: 90vh;
   }

   .lightbox__content img {
       max-width: 100%;
       max-height: 90vh;
       object-fit: contain;
       border-radius: 4px;
       box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
   }

   .lightbox__close {
       position: absolute;
       top: 1.5rem;
       right: 2rem;
       background: transparent;
       border: none;
       color: var(--white);
       font-size: 3rem;
       line-height: 1;
       cursor: pointer;
       z-index: 10000;
       transition: color var(--transition-fast);
   }

   .lightbox__close:hover {
       color: var(--gold);
   }

   .lightbox__btn {
       position: absolute;
       top: 50%;
       transform: translateY(-50%);
       background: rgba(15, 15, 15, 0.5);
       border: 1px solid rgba(212, 175, 55, 0.3);
       color: var(--gold);
       width: 54px;
       height: 54px;
       border-radius: 50%;
       font-size: 1.5rem;
       display: flex;
       align-items: center;
       justify-content: center;
       cursor: pointer;
       z-index: 10000;
       transition: background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);
   }

   .lightbox__btn:hover {
       background: var(--gold);
       color: var(--black);
       border-color: var(--gold);
       transform: translateY(-50%) scale(1.1);
   }

   .lightbox__btn--prev {
       left: 1.5rem;
   }

   .lightbox__btn--next {
       right: 1.5rem;
   }

   @media (max-width: 768px) {
       .lightbox__btn {
           width: 44px;
           height: 44px;
           font-size: 1.2rem;
       }

       .lightbox__btn--prev {
           left: 0.5rem;
       }

       .lightbox__btn--next {
           right: 0.5rem;
       }

       .lightbox__close {
           top: 0.5rem;
           right: 1rem;
           font-size: 2.5rem;
       }
   }

   /* ─── DEPOIMENTOS ────────────────────────────────────────────── */
   .depoimentos {
       background: var(--black);
       overflow: hidden;
   }

   .depoimentos__bg {
       position: absolute;
       inset: 0;
       background: radial-gradient(ellipse 50% 60% at 50% 100%, rgba(212, 175, 55, 0.05) 0%, transparent 70%);
       pointer-events: none;
   }

   .slider {
       position: relative;
       overflow: hidden;
   }

   .slider__track {
       display: flex;
       transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
   }

   .testimonial {
       min-width: 100%;
       padding: 0 clamp(1rem, 8vw, 10rem);
       text-align: center;
   }

   .testimonial__quote {
       font-family: var(--font-display);
       font-size: 5rem;
       line-height: 0.6;
       color: var(--gold);
       opacity: 0.5;
       margin-bottom: 1.5rem;
       display: block;
   }

   .testimonial__text {
       font-family: var(--font-display);
       font-style: italic;
       font-size: clamp(1.1rem, 2.5vw, 1.5rem);
       color: var(--white);
       max-width: 680px;
       margin: 0 auto 2rem;
       line-height: 1.6;
   }

   .testimonial__author {
       display: inline-flex;
       align-items: center;
       gap: 1rem;
       text-align: left;
   }

   .testimonial__avatar {
       width: 48px;
       height: 48px;
       border-radius: 50%;
       background: var(--gold);
       color: var(--black);
       font-weight: 700;
       font-family: var(--font-display);
       font-size: 1.1rem;
       display: flex;
       align-items: center;
       justify-content: center;
       flex-shrink: 0;
   }

   .testimonial__name {
       display: block;
       font-family: var(--font-display);
       font-size: 1rem;
       color: var(--white);
       margin-bottom: 0.1rem;
   }

   .testimonial__event {
       font-size: 0.72rem;
       letter-spacing: 0.12em;
       text-transform: uppercase;
       color: var(--gold);
   }

   .slider__controls {
       display: flex;
       align-items: center;
       justify-content: center;
       gap: 1.5rem;
       margin-top: 2.5rem;
   }

   .slider__btn {
       background: transparent;
       border: 1px solid rgba(212, 175, 55, 0.35);
       color: var(--gold);
       width: 44px;
       height: 44px;
       border-radius: 50%;
       cursor: pointer;
       font-size: 1.1rem;
       transition: all var(--transition-fast);
       display: flex;
       align-items: center;
       justify-content: center;
   }

   .slider__btn:hover {
       background: var(--gold);
       color: var(--black);
       border-color: var(--gold);
       box-shadow: 0 0 18px rgba(212, 175, 55, 0.35);
   }

   .slider__dots {
       display: flex;
       gap: 0.5rem;
   }

   .slider__dot {
       width: 6px;
       height: 6px;
       border-radius: 50%;
       background: rgba(245, 245, 245, 0.25);
       border: none;
       cursor: pointer;
       transition: all var(--transition-fast);
       padding: 0;
   }

   .slider__dot.active {
       background: var(--gold);
       width: 24px;
       border-radius: 3px;
       box-shadow: 0 0 8px rgba(212, 175, 55, 0.5);
   }




   /* ─── CONTATO ────────────────────────────────────────────────── */
   .contato {
       background: var(--black-2);
   }

   .contato__grid {
       align-items: start;
   }

   .contato__desc {
       color: var(--white-dim);
       margin: 1.5rem 0 2rem;
       font-size: 0.95rem;
       line-height: 1.8;
   }

   .contato__social {
       display: flex;
       flex-direction: column;
       gap: 1rem;
   }

   .social-link {
       display: flex;
       align-items: center;
       gap: 0.75rem;
       color: var(--white-dim);
       text-decoration: none;
       font-size: 0.88rem;
       transition: color var(--transition-fast);
   }

   .social-link svg {
       width: 20px;
       height: 20px;
       flex-shrink: 0;
       transition: stroke var(--transition-fast);
   }

   .social-link:hover {
       color: var(--gold);
   }

   .social-link:hover svg {
       stroke: var(--gold);
   }

   /* Form */
   .contato__form-wrap {
       position: relative;
   }

   .form {
       display: flex;
       flex-direction: column;
       gap: 1rem;
   }

   .form__row {
       display: grid;
       grid-template-columns: 1fr 1fr;
       gap: 1rem;
   }

   .form__group {
       display: flex;
       flex-direction: column;
       gap: 0.4rem;
   }

   .form__label {
       font-size: 0.72rem;
       font-weight: 600;
       letter-spacing: 0.1em;
       text-transform: uppercase;
       color: rgba(245, 245, 245, 0.5);
   }

   .form__input {
       background: rgba(245, 245, 245, 0.04);
       border: 1px solid rgba(245, 245, 245, 0.1);
       border-radius: 2px;
       padding: 0.8rem 1rem;
       color: var(--white);
       font-family: var(--font-body);
       font-size: 0.9rem;
       outline: none;
       transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
       appearance: none;
       -webkit-appearance: none;
   }

   .form__input:focus {
       border-color: var(--gold);
       box-shadow: 0 0 0 2px rgba(212, 175, 55, 0.12);
   }

   .form__input::placeholder {
       color: rgba(245, 245, 245, 0.25);
   }

   .form__select {
       cursor: pointer;
   }

   .form__select option {
       background: var(--black-2);
       color: var(--white);
   }

   .form__textarea {
       resize: vertical;
       min-height: 110px;
   }

   /* Success state */
   .form__success {
       display: none;
       text-align: center;
       padding: 3rem 2rem;
       background: rgba(212, 175, 55, 0.05);
       border: 1px solid rgba(212, 175, 55, 0.25);
       border-radius: 2px;
   }

   .form__success.visible {
       display: block;
       animation: fadeInUp 0.5s forwards;
   }

   .form__success-icon {
       font-size: 2.5rem;
       color: var(--gold);
       margin-bottom: 1rem;
       animation: spin 1s cubic-bezier(0.16, 1, 0.3, 1);
   }



   @keyframes spin {
       from {
           transform: rotate(0);
       }

       to {
           transform: rotate(360deg);
       }
   }

   .form__success h3 {
       font-family: var(--font-display);
       font-size: 1.5rem;
       color: var(--white);
       margin-bottom: 0.5rem;
   }

   .form__success p {
       color: var(--white-dim);
       font-size: 0.9rem;
   }


   /* ─── FOOTER ─────────────────────────────────────────────────── */
   .footer {
       background: var(--black);
       border-top: 1px solid rgba(212, 175, 55, 0.12);
       padding: 4rem 2rem 10px;
   }

   .footer .logo {
       max-width: 200px;
       width: 100%;
   }

   .footer__tagline {
       color: rgb(255 255 255 / 69%);
       margin-top: 0.75rem;
       line-height: 1;
       margin: 0.75rem 0 5px 0;
   }

   .footer__heading {
       font-size: 1rem;
       font-weight: 600;
       letter-spacing: 0.2em;
       text-transform: uppercase;
       color: var(--gold);
       margin-bottom: 1.25rem;
   }

   .footer__links ul {
       list-style: none;
       display: flex;
       flex-direction: column;
       gap: 0.6rem;
   }

   .footer__links a {
       color: rgba(245, 245, 245, 0.5);
       text-decoration: none;
       font-size: 0.88rem;
       transition: color var(--transition-fast);
   }

   .footer__links a:hover {
       color: var(--gold);
   }

   .footer__social-links {
       display: flex;
       gap: 1rem;
       flex-direction: column;
   }

   .footer__social-links a {
       display: flex;
       align-items: center;
       justify-content: center;
       width: 42px;
       height: 42px;
       border: 1px solid rgba(245, 245, 245, 0.1);
       border-radius: 50%;
       color: rgba(245, 245, 245, 0.5);
       text-decoration: none;
       transition: all var(--transition-fast);
   }

   .footer__social-links a svg {
       width: 18px;
       height: 18px;
   }

   .footer__social-links a:hover {
       border-color: var(--gold);
       color: var(--gold);
       box-shadow: 0 0 14px rgba(212, 175, 55, 0.25);
   }

   .footer__bottom {
       display: flex;
       justify-content: space-between;
       align-items: center;
       padding-top: 2rem;
       border-top: 1px solid rgba(245, 245, 245, 0.06);
       font-size: 0.78rem;
       color: rgba(245, 245, 245, 0.3);
   }

   .footer__craft {
       color: var(--gold-dark);
   }

   /* ─── FOOTER CONTACT ─────────────────────────────────────────── */
   .footer__contact-list {
       display: flex;
       flex-direction: column;
       gap: 0.85rem;
   }

   .footer__contact-item {
       display: flex;
       align-items: center;
       gap: 0.65rem;
       color: rgba(245, 245, 245, 0.5);
       text-decoration: none;
       font-size: 0.85rem;
       transition: color var(--transition-fast);
   }

   .footer__contact-item svg {
       width: 16px;
       height: 16px;
       flex-shrink: 0;
   }

   .footer__contact-item:hover {
       color: var(--gold);
   }

   .footer__tagline--sub {
       font-style: italic;
       font-size: 0.9rem;
       margin: 0 0 20px;
       color: rgb(253 210 3);
       line-height: 1;
   }

   /* ─── RESPONSIVE ─────────────────────────────────────────────── */
   @media (max-width: 1024px) {}

   @media (max-width: 768px) {


       .nav-link--cta {
           margin-top: 0.5rem;
       }

       /* Hero */
       .hero__actions {
           flex-direction: column;
           align-items: center;
       }




       .sobre__img-frame {
           max-width: 280px;
       }

       .sobre__badge {
           right: 0;
       }

       /* Serviços */

       /* Galeria */
       .galeria__grid {
           grid-template-columns: repeat(2, 1fr);
           grid-template-rows: auto;
       }

       .galeria__item--tall {
           grid-row: span 1;
           aspect-ratio: 1;
       }

       .galeria__item--wide {
           grid-column: span 2;
       }



       .form__row {
           grid-template-columns: 1fr;
       }


   }

   @media (max-width: 480px) {
       .galeria__grid {
           grid-template-columns: 1fr;
       }

       .galeria__item--wide {
           grid-column: span 1;
       }

       .galeria__label {
           opacity: 1;
           transform: translateY(0);
       }

       .footer__social-links {
           flex-wrap: wrap;
       }
   }