:root {
    --em-red:#e50914;
    --em-bg:#06070a;
    --em-panel:#12151b;
    --em-text:#f5f7fa;
    --em-muted:#aeb5c0;
}
* { box-sizing:border-box; }
html { background:var(--em-bg); }
body {
    margin:0;
    min-height:100vh;
    color:var(--em-text);
    background:radial-gradient(circle at 83% 8%,rgba(229,9,20,.12),transparent 30%),linear-gradient(180deg,#0b0d12,#060709 72%);
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
a { color:inherit; }
.public-header {
    position:fixed;inset:0 0 auto;z-index:100;
    display:flex;align-items:center;min-height:78px;padding:7px clamp(14px,4vw,60px);
    border-bottom:1px solid rgba(255,255,255,.05);
    background:rgba(4,5,8,.87);backdrop-filter:blur(16px);
}
.public-brand { width:76px;height:62px;flex:0 0 auto; }
.public-brand img { width:100%;height:100%;object-fit:contain; }
.public-nav { display:flex;align-items:center;gap:12px;margin-left:auto; }
.public-nav a { font-size:13px;font-weight:800;text-decoration:none; }
.back-link { padding:10px;color:#c8cdd5; }
.back-link:hover { color:white; }
.login-link { padding:11px 16px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.07); }
.login-link:hover { background:rgba(255,255,255,.14); }
.detail-page { min-height:calc(100vh - 80px);display:grid;place-items:center;padding:125px 5vw 70px; }
.product-detail {
    display:grid;grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);
    width:min(1450px,100%);overflow:hidden;
    border:1px solid rgba(255,255,255,.08);border-radius:22px;
    background:rgba(16,18,24,.94);box-shadow:0 28px 80px rgba(0,0,0,.56);
}
.product-media { min-width:0;min-height:650px;background:#030407; }
.product-video { position:relative;width:100%;height:100%;min-height:650px;overflow:hidden;background:#030407; }
.product-video>img { width:100%;height:100%;min-height:650px;display:block;object-fit:cover; }
.product-video iframe { width:100%;height:100%;min-height:650px;display:block;border:0; }
.poster-shade { position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,4,7,.55),transparent 50%); }
.preview-message {
    position:absolute;left:50%;bottom:30px;transform:translateX(-50%);
    padding:9px 13px;border-radius:999px;color:#e8ebf0;background:rgba(3,4,7,.75);
    backdrop-filter:blur(7px);font-size:11px;font-weight:800;white-space:nowrap;
}
.product-video.has-player .preview-message,.product-video.has-player .poster-shade { display:none; }
.product-video.preview-unavailable .preview-message::before { content:"Vista previa no disponible";font-size:11px; }
.product-video.preview-unavailable .preview-message { font-size:0; }
.product-information { display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,5vw,76px); }
.eyebrow { margin:0 0 13px;color:#ff3a43;font-size:11px;font-weight:900;letter-spacing:.22em; }
.product-information h1 { margin:0;font-size:clamp(40px,4.3vw,66px);line-height:.96;letter-spacing:-.045em; }
.subscription-label { align-self:flex-start;margin-top:21px;padding:7px 10px;border-radius:6px;color:white;background:var(--em-red);font-size:9px;font-weight:900;letter-spacing:.12em; }
.product-description { margin-top:25px;max-height:230px;overflow:auto;color:#cbd0d8;font-size:15px;line-height:1.67; }
.conversion-panel { margin-top:31px;padding-top:27px;border-top:1px solid rgba(255,255,255,.1); }
.conversion-title { margin:0 0 7px;color:white;font-size:16px;font-weight:900; }
.conversion-copy { margin:0;color:#aeb5c0;font-size:13px;line-height:1.55; }
.purchase-actions { display:flex;flex-wrap:wrap;gap:10px;margin-top:20px; }
.primary-action,.secondary-action {
    display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:13px 20px;
    border:1px solid transparent;border-radius:8px;color:white;font-size:14px;font-weight:850;text-decoration:none;
    transition:transform .2s ease,background .2s ease;
}
.primary-action { background:var(--em-red);box-shadow:0 12px 30px rgba(229,9,20,.26); }
.primary-action:hover { transform:translateY(-2px);background:#ff202b; }
.secondary-action { border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.08); }
.secondary-action:hover { transform:translateY(-2px);background:rgba(255,255,255,.15); }
.conversion-note { margin:14px 0 0;color:#7f8691;font-size:11px;line-height:1.5; }
.public-footer { display:flex;justify-content:space-between;gap:20px;padding:25px clamp(18px,5vw,70px);border-top:1px solid rgba(255,255,255,.07);color:#707782;background:#030407;font-size:11px; }
.public-footer p { margin:0; }
.public-footer a { color:#9aa1ac;text-decoration:none; }
.public-footer a:hover { color:white; }
@media (max-width:1050px) {
    .product-detail { grid-template-columns:1fr; }
    .product-media,.product-video,.product-video>img,.product-video iframe { min-height:min(58vw,620px); }
}
@media (max-width:680px) {
    .public-header { min-height:70px;padding:6px 12px; }
    .public-brand { width:64px;height:56px; }
    .back-link { font-size:0;padding:10px 6px; }
    .back-link::before { content:"← Catálogo";font-size:12px; }
    .login-link { padding:10px 12px;font-size:11px; }
    .detail-page { display:block;padding:94px 11px 38px; }
    .product-detail { border-radius:16px; }
    .product-media,.product-video,.product-video>img,.product-video iframe { min-height:56vw; }
    .product-information { padding:34px 22px 38px; }
    .product-information h1 { font-size:39px; }
    .product-description { max-height:none;font-size:14px; }
    .purchase-actions { display:grid;grid-template-columns:1fr; }
    .primary-action,.secondary-action { width:100%; }
    .public-footer { display:block;text-align:center; }
    .public-footer a { display:block;margin-top:8px; }
}
@media (prefers-reduced-motion:reduce) {
    *,*::before,*::after { transition-duration:.01ms!important; }
}
