/* Theme control reused from style.css; remaining styles are scoped to the price header. */
.theme-toggle{
  position:relative;
  flex:0 0 auto;
  width:54px;
  min-width:54px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.13);
  border-radius:16px;
  background:
    radial-gradient(circle at 26% 28%, rgba(101,199,255,.25), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.025)),
    rgba(255,255,255,.035);
  color:var(--text);
  box-shadow:0 14px 34px rgba(0,0,0,.22);
  cursor:pointer;
  overflow:hidden;
  isolation:isolate;
  transition:transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.theme-toggle:hover{
  transform:translateY(-1px);
  border-color:rgba(101,199,255,.45);
  box-shadow:0 18px 42px rgba(63,169,245,.18), 0 12px 34px rgba(0,0,0,.30);
}
.theme-toggle::before{
  content:"";
  position:absolute;
  inset:-40%;
  z-index:0;
  background:linear-gradient(105deg, transparent 34%, rgba(255,255,255,.42) 48%, transparent 62%);
  opacity:0;
  transform:translateX(-45%) rotate(10deg);
  transition:opacity .2s ease, transform .42s ease;
}
.theme-toggle:hover::before,
.theme-toggle.is-animating::before{
  opacity:.72;
  transform:translateX(45%) rotate(10deg);
}
.theme-toggle__halo{
  position:absolute;
  inset:7px;
  z-index:0;
  border-radius:14px;
  background:radial-gradient(circle at 50% 50%, rgba(101,199,255,.26), transparent 64%);
  filter:blur(8px);
  opacity:.76;
  transition:background .32s ease, opacity .32s ease, transform .32s ease;
}
.theme-toggle__icon{
  position:relative;
  z-index:1;
  width:26px;
  height:26px;
  border-radius:50%;
  transform:translateX(-4px) rotate(-24deg);
  background:linear-gradient(135deg, #d6f0ff, #65c7ff);
  box-shadow:0 0 18px rgba(101,199,255,.55), inset -5px -5px 10px rgba(7,21,33,.18);
  transition:transform .42s cubic-bezier(.2,.8,.2,1), background .32s ease, box-shadow .32s ease;
}
.theme-toggle__sun,
.theme-toggle__moon{
  position:absolute;
  inset:0;
  border-radius:50%;
  transition:opacity .28s ease, transform .42s cubic-bezier(.2,.8,.2,1);
}
.theme-toggle__sun{
  opacity:0;
  transform:scale(.58) rotate(-24deg);
  background:
    conic-gradient(from 0deg, transparent 0 8%, rgba(255,216,112,.95) 8% 12%, transparent 12% 20%, rgba(255,216,112,.95) 20% 24%, transparent 24% 32%, rgba(255,216,112,.95) 32% 36%, transparent 36% 44%, rgba(255,216,112,.95) 44% 48%, transparent 48% 56%, rgba(255,216,112,.95) 56% 60%, transparent 60% 68%, rgba(255,216,112,.95) 68% 72%, transparent 72% 80%, rgba(255,216,112,.95) 80% 84%, transparent 84% 100%),
    radial-gradient(circle, #fff7b0 0 36%, #ffca4d 38% 54%, transparent 56%);
  filter:drop-shadow(0 0 12px rgba(255,202,77,.66));
}
.theme-toggle__moon{
  opacity:1;
  background:
    radial-gradient(circle at 64% 34%, rgba(7,21,33,.82) 0 35%, transparent 36%),
    radial-gradient(circle at 38% 42%, #e9f8ff 0 54%, #65c7ff 58% 100%);
}
html[data-theme="light"] .theme-toggle{
  border-color:rgba(7,21,33,.12);
  background:
    radial-gradient(circle at 70% 22%, rgba(255,202,77,.30), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(231,241,247,.74));
  box-shadow:0 14px 30px rgba(42,81,104,.14);
}
html[data-theme="light"] .theme-toggle__halo{
  background:radial-gradient(circle at 50% 50%, rgba(255,202,77,.36), transparent 64%);
}
html[data-theme="light"] .theme-toggle__icon{
  transform:translateX(4px) rotate(18deg);
  background:linear-gradient(135deg, #fff7b0, #ffca4d);
  box-shadow:0 0 20px rgba(255,202,77,.48), inset -4px -4px 10px rgba(150,87,0,.12);
}
html[data-theme="light"] .theme-toggle__sun{
  opacity:1;
  transform:scale(1) rotate(0);
}
html[data-theme="light"] .theme-toggle__moon{
  opacity:0;
  transform:scale(.56) rotate(24deg);
}
.theme-toggle.is-animating{
  transform:translateY(-1px);
}

.site-header { --text:#eef3f7; --muted:#b6c6d3; --ink:#eef3f7; position:sticky; top:0; z-index:50; backdrop-filter:blur(10px); background:rgba(14,31,44,.90); border-bottom:1px solid rgba(255,255,255,.1); }
[data-theme="light"] .site-header { --text:#0b1d2a; --ink:#0b1d2a; --muted:#486171; background:rgba(248,252,254,.94); box-shadow:0 10px 34px #2a516814; }
.site-header .header-inner { width:min(1120px,92%); max-width:none; padding:10px 0; min-height:0; gap:12px; flex-wrap:wrap; justify-content:space-between; }
.site-header .brand { gap:12px; font-size:1rem; font-weight:400; }
.site-header .brand strong { font-weight:700; }
.site-header .brand-logo { position:relative; width:48px; height:48px; border-radius:16px; overflow:hidden; background:#ffffff0f; border:1px solid #ffffff1f; box-shadow:0 20px 60px #0007; }
[data-theme="light"] .site-header .brand-logo { background:#ffffffd1; border-color:#0715211a; box-shadow:0 14px 32px #244a5e29; }
.site-header .brand small { font-size:.75rem; margin-top:2px; }
.site-header .site-nav { gap:12px; flex:0 1 auto; margin-inline-start:auto; }
.site-header .site-nav a { padding:10px; font-size:1rem; font-weight:900; border-radius:12px; }
.site-header .site-nav a[aria-current="page"] { border:0; color:var(--ink); background:#65c7ff18; }
.site-header .header-actions { align-items:center; gap:8px; margin:0; }
.header-language { position:relative; border-radius:16px; background:linear-gradient(#ffffff13,#ffffff06); border:1px solid #ffffff21; box-shadow:0 14px 34px #0003; }
.header-language-face { display:flex; align-items:center; gap:8px; min-height:44px; padding:8px 12px; color:var(--text); font-weight:950; }
.header-language-face svg { fill:none; stroke:#65c7ff; stroke-width:1.7; flex:none; }
#header-language-code { background:linear-gradient(135deg,#65c7ff,#d6f0ff); color:#06101f; border-radius:11px; padding:5px 8px; font-size:.75rem; line-height:1; }
#header-language-name { color:var(--muted); font-size:.8125rem; max-width:82px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.header-language .language-picker { position:absolute; inset:0; opacity:0; width:100%; height:100%; max-width:none; cursor:pointer; }
.header-language:focus-within { outline:3px solid var(--focus); outline-offset:3px; }
[data-theme="light"] .header-language { border-color:#0715211f; background:linear-gradient(#fffffff0,#e7f1f7bd); box-shadow:0 14px 30px #2a516824; }
.header-whatsapp { display:inline-flex; align-items:center; gap:8px; min-height:48px; padding:0 18px; border-radius:16px; background:linear-gradient(135deg,#35d765,#94e35f); color:#06101f; font-size:.875rem; font-weight:820; text-decoration:none; box-shadow:0 18px 42px #35d7653d; }
.header-whatsapp::before { content:''; width:20px; height:20px; background:url('/assets/logos/whatsapp.png') center/contain no-repeat; filter:brightness(0) saturate(100%); }
#price-configurator, .tree-column, #catalog { scroll-margin-top:110px; }
.skip { z-index:100; }
@media(max-width:1100px) { .site-header .site-nav { gap:0; } .site-header .site-nav a { font-size:.875rem; padding-inline:8px; } #header-language-name { display:none; } }
@media(max-width:900px) { .site-header .header-inner { padding:8px 0; gap:8px; } .site-header .site-nav { flex:1 0 100%; margin:0; } .site-header .brand { flex:1; } .site-header .brand-logo { width:44px; height:44px; border-radius:14px; } .site-header .brand strong { font-size:.9375rem; } .site-header .brand small { font-size:.6875rem; } .header-whatsapp { display:none; } }
@media(max-width:560px) { .site-header .header-inner { width:94%; gap:6px; } .site-header .brand { gap:6px; } .site-header .brand-logo { width:32px; height:32px; border-radius:10px; } .site-header .brand strong { font-size:.8125rem; } .site-header .brand small { font-size:.5625rem; } .header-language-face { padding:6px; gap:4px; } .header-language-face svg { display:none; } .site-header .header-actions { gap:4px; } .site-header .theme-toggle { width:40px; min-width:40px; } .site-header .menu-toggle { width:36px; } }
@media(prefers-reduced-motion:reduce) { .site-header *, .site-header *::before { transition:none !important; } }
@media print { .site-header { position:static; } }
