.brand-with-logo{display:flex;align-items:center;gap:10px}
.brand-logo-only{gap:0}
.brand-logo{display:block;width:auto;height:auto;max-width:min(100%,280px);max-height:84px;object-fit:contain;background:transparent;padding:0;border-radius:0}
.site-logo{display:block;width:auto;height:auto;max-width:min(100%,520px);max-height:220px;object-fit:contain;background:transparent;padding:0;border-radius:0}
.hero-brand{display:flex;align-items:center;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.hero-brand-with-logo{align-items:flex-start}
.hero-copy{flex:1 1 260px;min-width:0}

.public-screen-body{
  --public-primary-surface:linear-gradient(160deg, color-mix(in srgb, var(--theme-accent) 96%, white 4%), color-mix(in srgb, var(--theme-accent) 82%, black 18%));
  --public-secondary-surface:linear-gradient(160deg, color-mix(in srgb, var(--theme-brand) 94%, white 6%), color-mix(in srgb, var(--theme-brand) 82%, black 18%));
  --public-primary-text:var(--text-main, #1f2933);
  --public-secondary-text:var(--text-main, #1f2933);
  --public-shell-shadow:0 16px 28px rgba(15,23,42,0.12), 0 34px 76px rgba(15,23,42,0.22), inset 0 1px 0 rgba(255,255,255,0.16);
  --public-border-primary:color-mix(in srgb, var(--public-primary-text) 14%, transparent);
  --public-border-secondary:color-mix(in srgb, var(--public-secondary-text) 16%, transparent);
  --public-muted-primary:var(--text-soft, rgba(31,41,51,0.72));
  --public-muted-secondary:var(--text-soft, rgba(31,41,51,0.72));
}

.public-screen-body .container{width:min(1200px, calc(100% - 40px))}
.public-screen-body main.container{padding-top:16px;padding-bottom:64px}
.public-screen-body .site-header{
  padding:16px 0;
  background:var(--public-primary-surface);
  backdrop-filter:none !important;
  border-bottom:var(--theme-border-width, 1px) var(--theme-border-style, solid) var(--public-border-primary);
  box-shadow:0 18px 40px rgba(15,23,42,0.18);
}
.public-screen-body .storefront-nav-wrap{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:center;
  gap:20px;
}
.public-screen-body .storefront-brand{color:var(--public-primary-text)}
.public-screen-body .storefront-top-nav{justify-content:center;gap:10px}
.public-screen-body .site-header .nav a,
.public-screen-body .storefront-auth-links a{
  min-height:44px;
  padding:11px 16px;
  border-radius:var(--button-radius, 999px);
  border:var(--theme-border-width, 1px) var(--theme-border-style, solid) color-mix(in srgb, var(--button-text, #ffffff) 12%, transparent);
  background:var(--button-bg, var(--theme-accent));
  color:var(--button-text, #ffffff);
  box-shadow:0 14px 28px rgba(31,41,51,0.16);
}
.public-screen-body .storefront-auth-links{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:10px;
}
.public-screen-body .storefront-auth-links a{
  text-decoration:none;
  font-weight:800;
}
.public-screen-body .site-header .nav a:hover,
.public-screen-body .site-header .nav a:focus-visible,
.public-screen-body .site-header .nav a.is-active,
.public-screen-body .storefront-auth-links a:hover,
.public-screen-body .storefront-auth-links a:focus-visible{
  transform:translateY(-1px);
  background:var(--button-bg, var(--theme-accent));
  color:var(--button-text, #ffffff);
  box-shadow:0 18px 34px rgba(31,41,51,0.18), 0 0 0 2px color-mix(in srgb, var(--button-text, #ffffff) 18%, transparent);
}
.public-screen-body main.container > .glass,
.public-screen-body .site-footer{
  background:var(--public-primary-surface);
  color:var(--public-primary-text);
  border:var(--theme-border-width, 1px) var(--theme-border-style, solid) var(--public-border-primary);
  border-radius:var(--card-radius, 28px);
  backdrop-filter:none;
  box-shadow:var(--public-shell-shadow);
}
.public-screen-body main.container > .glass{
  border-radius:var(--card-radius, 28px);
  padding:30px;
}
.public-screen-body main.container > .glass > :is(h1,h2,h3,h4,strong,label,legend,.eyebrow),
.public-screen-body .site-footer :is(h1,h2,h3,h4,strong){
  color:var(--public-primary-text);
}
.public-screen-body main.container > .glass :is(p,.muted,.muted-copy,.section-headline p,.hero-copy p,.product-description,.catalog-results-copy,.site-footer-note),
.public-screen-body .site-footer .site-footer-note{
  color:var(--public-muted-primary);
}
.public-screen-body main.container > .glass :is(.glass,.card,.list-row,.product-detail-stack,.checkout-summary-panel,.checkout-payment-panel,.agreement-modal-card,.thumb-wrap,.product-image,.edit-preview){
  background:var(--public-secondary-surface);
  color:var(--public-secondary-text);
  border:var(--theme-border-width, 1px) var(--theme-border-style, solid) var(--public-border-secondary);
  border-radius:var(--card-radius, 22px);
  backdrop-filter:none;
  box-shadow:var(--nested-card-shadow, 0 12px 22px rgba(15,23,42,0.12), 0 24px 54px rgba(15,23,42,0.18), inset 0 1px 0 rgba(255,255,255,0.18));
}
.public-screen-body main.container > .glass :is(.glass,.card,.list-row,.product-detail-stack,.checkout-summary-panel,.checkout-payment-panel,.agreement-modal-card) :is(h1,h2,h3,h4,strong,label,legend,.price),
.public-screen-body .site-footer .site-footer-note strong{
  color:var(--public-secondary-text);
}
.public-screen-body main.container > .glass :is(.glass,.card,.list-row,.product-detail-stack,.checkout-summary-panel,.checkout-payment-panel,.agreement-modal-card) :is(p,.muted,.muted-copy,.product-description,.catalog-results-copy,.feature-card p,.product-card p){
  color:var(--public-muted-secondary);
}
.public-screen-body .hero-upgraded{padding:38px}
.public-screen-body .hero-grid{gap:26px}
.public-screen-body .hero-brand{
  margin-bottom:0;
  padding:0;
  background:transparent;
  border:0;
}
.public-screen-body .hero-copy h1{font-size:clamp(42px, 5vw, 68px);line-height:0.98}
.public-screen-body .hero-copy p{max-width:760px;font-size:18px}
.public-screen-body .hero-actions{margin-top:4px}
.public-screen-body .trust-row span,
.public-screen-body .hero-checklist li,
.public-screen-body .product-badge,
.public-screen-body .status-pill{
  background:color-mix(in srgb, var(--theme-brand) 90%, white 10%);
  color:var(--public-secondary-text);
  border:1px solid var(--public-border-secondary);
}
.public-screen-body .feature-card-grid,
.public-screen-body .catalog-grid{gap:22px}
.public-screen-body .feature-card,
.public-screen-body .product-card{
  min-height:100%;
  transform:none;
}
.public-screen-body .product-card:hover,
.public-screen-body .product-card:focus-within{
  transform:translateY(-6px);
  box-shadow:var(--nested-card-shadow, 0 16px 30px rgba(15,23,42,0.14), 0 34px 76px rgba(15,23,42,0.22), inset 0 1px 0 rgba(255,255,255,0.2));
}
.public-screen-body .thumb-wrap::after{background:linear-gradient(180deg, transparent 48%, rgba(0,0,0,0.10))}
.public-screen-body .button{
  border-radius:var(--button-radius, 14px);
  box-shadow:0 14px 28px rgba(0,0,0,0.18);
}
.public-screen-body .button-secondary{
  border-radius:var(--button-radius, 14px);
}
.public-screen-body .button:hover,
.public-screen-body .button:focus-visible{
  box-shadow:0 18px 34px rgba(0,0,0,0.22);
}
.public-screen-body .catalog-page-link{
  border:var(--theme-border-width, 1px) var(--theme-border-style, solid) var(--public-border-primary);
  color:var(--public-primary-text);
  background:transparent;
}
.public-screen-body .catalog-page-link.is-active{
  background:color-mix(in srgb, var(--theme-brand) 90%, white 10%);
  color:var(--public-secondary-text);
  border-color:var(--public-border-secondary);
}
.public-screen-body .product{
  gap:32px;
  align-items:stretch;
}
.public-screen-body .product-detail-panel form .button{margin-top:0}
.public-screen-body input:not([type="color"]):not([type="checkbox"]):not([type="radio"]),
.public-screen-body select,
.public-screen-body textarea{
  background:rgba(255,255,255,0.96);
  color:var(--text-main, #1f2933);
  border:1px solid rgba(15,23,42,0.12);
  border-radius:14px;
}
.public-screen-body .admin-table th,
.public-screen-body .admin-table td{
  color:inherit;
  border-bottom:1px solid color-mix(in srgb, var(--public-primary-text) 14%, transparent);
}
.public-screen-body .site-footer{
  margin-top:30px;
  border-radius:var(--card-radius, 28px);
  padding:12px;
}
.public-screen-body .site-footer-inner{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
}
.public-screen-body .site-footer-note{
  padding:20px 22px;
  border-radius:var(--card-radius, 22px);
  background:var(--public-secondary-surface);
  border:var(--theme-border-width, 1px) var(--theme-border-style, solid) var(--public-border-secondary);
  box-shadow:var(--nested-card-shadow, 0 16px 36px rgba(15,23,42,0.18));
}
.public-screen-body .alert{
  border-radius:18px;
  box-shadow:0 12px 28px rgba(15,23,42,0.12);
}
.public-screen-body .agreement-modal{
  padding:24px;
  background:rgba(3,7,18,0.48);
}
.public-screen-body .agreement-modal-card{
  max-width:760px;
}
@media (max-width: 980px){
  .public-screen-body .storefront-nav-wrap{
    grid-template-columns:1fr;
    justify-items:start;
  }
  .public-screen-body .storefront-top-nav{justify-content:flex-start}
  .public-screen-body .storefront-auth-links{justify-content:flex-start}
  .public-screen-body .hero-grid{grid-template-columns:1fr}
}
@media (max-width: 768px){
  .brand-logo{max-height:64px;max-width:220px}
  .site-logo{max-height:160px;max-width:100%}
  .public-screen-body .container{width:calc(100% - 24px)}
  .public-screen-body main.container > .glass{padding:22px}
  .public-screen-body .site-footer-inner{grid-template-columns:1fr}
  .public-screen-body .hero-copy h1{font-size:clamp(34px, 11vw, 50px)}
}
