/* Shared official identity: compact flex pair, responsive sizing, black/gold glass shine. */
.sougvare-brand-logos{
  --sougvare-brand-size:clamp(54px,6.2vw,80px);
  display:flex;align-items:center;justify-content:center;gap:clamp(7px,1.1vw,12px);
  flex:0 0 auto;width:max-content;max-width:100%;margin:0;direction:ltr;line-height:0;isolation:isolate
}
.sougvare-brand-logo{
  position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;
  flex:0 0 var(--sougvare-brand-size);width:var(--sougvare-brand-size);aspect-ratio:1;min-width:0;
  padding:clamp(5px,.7vw,8px);box-sizing:border-box;overflow:hidden;border:1px solid rgba(230,189,102,.38);
  border-radius:clamp(12px,1.5vw,17px);
  background:linear-gradient(145deg,rgba(230,189,102,.11),rgba(13,12,10,.88) 54%,rgba(0,0,0,.94));
  box-shadow:inset 0 1px rgba(255,245,214,.10),0 6px 18px rgba(0,0,0,.28),0 0 16px rgba(230,189,102,.055);
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease
}
.sougvare-brand-logo img{position:relative;z-index:1;display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;pointer-events:none;filter:drop-shadow(0 0 3px rgba(230,189,102,.12))}
.sougvare-brand-logo::before,.sougvare-brand-logo::after{
  content:"";position:absolute;z-index:2;top:-18%;bottom:-18%;left:-70%;width:32%;border-radius:40%;
  pointer-events:none;transform:skewX(-18deg);mix-blend-mode:screen;
  background:linear-gradient(90deg,transparent 0%,rgba(230,189,102,.10) 28%,rgba(255,249,225,.94) 50%,rgba(238,199,112,.42) 64%,transparent 100%);
  opacity:0;animation:sougvareBrandGoldSweep 3s ease-in-out infinite alternate
}
.sougvare-brand-logo::after{width:14%;background:linear-gradient(90deg,transparent,rgba(247,218,143,.16) 28%,rgba(255,255,245,.98) 50%,rgba(230,189,102,.65) 64%,transparent);animation-delay:-1.5s;animation-duration:3s}
@keyframes sougvareBrandGoldSweep{0%,8%{left:-70%;opacity:0}24%{opacity:.92}100%{left:140%;opacity:0}}
.sougvare-brand-logo:hover,.sougvare-brand-logo:focus-visible{border-color:rgba(248,220,150,.86);box-shadow:inset 0 1px rgba(255,245,214,.18),0 8px 24px rgba(0,0,0,.4),0 0 24px rgba(230,189,102,.23);transform:translateY(-1px)}
.sougvare-brand-logo:hover::before,.sougvare-brand-logo:hover::after,.sougvare-brand-logo:focus-visible::before,.sougvare-brand-logo:focus-visible::after{animation-duration:.46s;animation-iteration-count:2;animation-direction:alternate;opacity:1}
.sougvare-heading-brand{display:flex;align-items:center;justify-content:flex-start;gap:clamp(10px,1.5vw,18px);min-width:0;max-width:100%;flex:0 1 auto}
.sougvare-heading-brand>.sougvare-brand-logos{--sougvare-brand-size:clamp(48px,5.4vw,68px)}
.sougvare-heading-brand h1{min-width:0;margin:0;line-height:1.55}
.sougvare-brand-centered{display:flex;align-items:center;justify-content:center;width:100%;margin:0 auto 14px}
.sougvare-brand-centered .sougvare-brand-logos{--sougvare-brand-size:clamp(56px,7vw,78px)}
/* Reservation welcome overlay and page header */
.welcome-content>.sougvare-brand-logos{--sougvare-brand-size:clamp(62px,8vw,88px);margin:0 auto clamp(13px,2vh,20px)}
.page-header>.sougvare-brand-logos{--sougvare-brand-size:clamp(48px,6vw,68px);margin:0 auto 8px}
/* Survey page: the pair takes the place of the former single logo card. */
.survey-header>.sougvare-brand-logos{--sougvare-brand-size:clamp(58px,7vw,76px);margin:0 auto 10px}
/* Auth and utility pages */
.card>.sougvare-brand-logos,.sms-test-card>.sougvare-brand-logos{--sougvare-brand-size:clamp(58px,7vw,78px);margin:0 auto 18px}
/* Review panel header can keep the logos and title aligned without overlaying its controls. */
.review-header .sougvare-heading-brand>.sougvare-brand-logos{--sougvare-brand-size:clamp(48px,5.3vw,66px)}
/* Small thermal-ticket lockup remains intentionally modest and print-safe. */
.ticket-header .sougvare-brand-logos{--sougvare-brand-size:clamp(27px,8vw,35px);gap:5px;margin:0 auto 2px}
.ticket-header .sougvare-brand-logo{padding:3px;border-radius:6px;box-shadow:none;background:#fff;border-color:#c8c8c8}
.ticket-header .sougvare-brand-logo::before,.ticket-header .sougvare-brand-logo::after{display:none}
@media(max-width:760px){
  .sougvare-heading-brand{flex-wrap:wrap;justify-content:center;width:100%;gap:8px 12px;text-align:center}
  .sougvare-heading-brand>.sougvare-brand-logos{--sougvare-brand-size:clamp(50px,15vw,66px)}
  body>header .sougvare-heading-brand h1{width:auto!important;flex:1 1 100%;text-align:center!important}
  .review-header .sougvare-heading-brand{justify-content:center}
  .review-header .sougvare-heading-brand h1{flex-basis:100%;text-align:center}
  .welcome-content>.sougvare-brand-logos{--sougvare-brand-size:clamp(60px,17vw,76px)}
  .page-header>.sougvare-brand-logos{--sougvare-brand-size:clamp(48px,14vw,60px)}
}
@media(max-width:380px){.sougvare-brand-logos{gap:6px}.sougvare-brand-logo{border-radius:11px}.card>.sougvare-brand-logos,.sms-test-card>.sougvare-brand-logos{--sougvare-brand-size:54px}}
@media(prefers-reduced-motion:reduce){.sougvare-brand-logo,.sougvare-brand-logo::before,.sougvare-brand-logo::after{animation:none!important;transition:none!important}.sougvare-brand-logo::before,.sougvare-brand-logo::after{opacity:0!important}}
@media print{
  .sougvare-brand-logo{background:#fff!important;border:0!important;box-shadow:none!important;transform:none!important}
  .sougvare-brand-logo img{filter:grayscale(1) brightness(.35)!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .sougvare-brand-logo::before,.sougvare-brand-logo::after{display:none!important}
}
/* Medium admin widths already use stacked headers; keep the brand/title group in that same flow. */
@media(max-width:1024px){
  body>header .sougvare-heading-brand{flex:1 1 100%;width:100%;flex-wrap:wrap;justify-content:center;text-align:center}
  body>header .sougvare-heading-brand h1{flex:1 1 100%;width:100%!important;text-align:center!important}
}

.report-brand-top .sougvare-brand-logos{--sougvare-brand-size:clamp(36px,4vw,46px);margin:0 auto 8px}
