:root{color-scheme:dark;--bg:#121311;--surface:#1c1d1a;--line:#36372f;--ink:#f0ede5;--muted:#aaa99e;--accent:#c0c7d1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.header{padding:25px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{font-size:23px;letter-spacing:3px;font-weight:700;white-space:nowrap}.brand small{font-size:10px;letter-spacing:4px;font-weight:400}.brand-mark{color:var(--accent);font-size:36px;vertical-align:middle;margin-right:8px}nav{display:flex;align-items:center;gap:32px;font-size:13px}.outline,.chip{border:1px solid var(--line);background:transparent;color:var(--ink);padding:12px 18px;border-radius:4px}.outline:hover,.chip:hover{border-color:var(--accent)}#count{background:var(--accent);color:var(--bg);padding:2px 7px;border-radius:50%;margin-left:8px}.hero{padding:75px 5% 65px;display:grid;grid-template-columns:1.1fr 1fr;gap:5%;align-items:center;min-height:690px}.eyebrow{font-size:10px;letter-spacing:2.7px;color:var(--accent);font-weight:700}.hero h1{font-family:Georgia,serif;font-size:clamp(52px,6vw,90px);font-weight:400;line-height:1.04;letter-spacing:-3px;margin:27px 0}.hero em{color:var(--accent);font-weight:400}.lead{max-width:400px;color:var(--muted);font-size:16px}.actions{display:flex;gap:23px;align-items:center;margin:32px 0 18px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:15px 23px;background:var(--accent);color:#191712;border:0;border-radius:3px;font-weight:700;font-size:13px}.button:hover{background:#eff2f6}.text-button{background:none;border:0;color:var(--ink);padding:10px 0;font-size:12px}.muted{color:var(--muted);font-size:12px}.hero-art{height:490px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 70% 30%,#5d3c2940,transparent 55%),#191a16;border:1px solid var(--line);border-radius:180px 180px 6px 6px}.orbit{position:absolute;width:370px;height:370px;border:1px solid #6d554044;border-radius:50%}.plaque{transform:rotate(-12deg);background:repeating-linear-gradient(0deg,#815633 0px,#815633 2px,#8e623d 3px,#9b714a 5px);width:265px;height:310px;border-radius:100px 100px 8px 8px;box-shadow:12px 15px 0 #382717,30px 40px 70px #0009;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:#322515;text-shadow:0 1px #c29664}.plaque span{letter-spacing:4px;font-size:10px}.plaque b{font:italic 36px Georgia,serif}.plaque:before{content:'✳';font-size:55px}.laser{position:absolute;width:1px;height:220px;background:linear-gradient(transparent,#c3cbd7);top:0;left:56%;transform:rotate(15deg);box-shadow:0 0 14px #c3cbd7}.laser:after{content:'';position:absolute;bottom:0;width:7px;height:7px;background:#fff;border-radius:100%;box-shadow:0 0 20px 6px #e8ecf2}.art-note{position:absolute;bottom:14px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;color:var(--muted)}.ribbon{border-block:1px solid var(--line);display:flex;justify-content:space-around;align-items:center;padding:23px 5%;font-size:12px;letter-spacing:4px}.ribbon b{color:var(--accent);font-size:23px}.section{padding:80px 5%}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}h2{font:400 39px/1.15 Georgia,serif;margin:15px 0 20px}.section-head>p{font-size:13px;color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:32px 0}.chip{border-radius:30px;font-size:12px}.chip.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.empty{grid-column:1/-1;background:var(--surface);border:1px dashed var(--line);padding:48px;text-align:center}.empty-star{color:var(--accent);font-size:45px}.empty p{color:var(--muted);max-width:530px;margin:15px auto 25px}.product{border:1px solid var(--line);background:var(--surface);overflow:hidden;border-radius:5px}.product img{width:100%;aspect-ratio:1.15;object-fit:cover;display:block}.product-body{padding:22px}.product-body p{color:var(--muted);white-space:pre-line}.product-body .eyebrow{color:var(--accent);font-size:9px}.product h3{font-size:21px;font-weight:400;margin:10px 0}.product button{width:100%;margin-top:12px}.process{background:#191a16;border-block:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:45px}.steps span{color:var(--accent);font-family:Georgia,serif;font-size:30px}.steps h3{font-size:17px;font-weight:400}.steps p{color:var(--muted);font-size:13px}.cta{text-align:center;padding:85px 5%}.cta h2{font-size:45px}footer{border-top:1px solid var(--line);padding:30px 5%;display:flex;justify-content:space-between;gap:20px;align-items:center}footer p,footer>a:last-child{font-size:11px;color:var(--muted)}dialog{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:28px;width:min(630px,95vw);max-height:90vh}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.dialog-head{display:flex;align-items:center;justify-content:space-between}.dialog-head h2{font-size:30px}.dialog-head button{border:0;background:transparent;color:var(--ink);font-size:30px}label{display:block;font-size:12px;color:var(--muted);margin:18px 0}input,textarea,select{display:block;width:100%;padding:12px;margin-top:7px;background:#141512;border:1px solid #48493e;border-radius:4px;color:var(--ink)}textarea{min-height:105px;resize:vertical}.cart-row{display:flex;align-items:center;gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}.cart-row>div{flex:1}.cart-row small{display:block;color:var(--muted)}.cart-row input{width:70px}.cart-row strong{font-size:14px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:14px 24px;background:var(--ink);color:var(--bg);border-radius:5px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:10}#toast.show{opacity:1}.admin h1{font:42px Georgia,serif;letter-spacing:-1px}.panel{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:6px;margin:22px 0}.panel h2{font-size:28px}.narrow{max-width:480px}.admin-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:25px}.area-row{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);font-size:12px}.area-row button{color:var(--accent)}hr{border:0;border-top:1px solid var(--line);margin:30px 0}.admin-thumb{max-width:150px}.alert,.success{padding:15px;border:1px solid #c57b65;border-radius:4px}.success{border-color:#7d9d71}.logout{display:flex;justify-content:end}summary{cursor:pointer}#quote-status{color:var(--accent)}@media(min-width:1500px){.hero,.section,.header,.cta,footer{padding-inline:max(5%,calc((100% - 1350px)/2))}}@media(max-width:800px){nav{gap:15px}nav>a{display:none}.hero{grid-template-columns:1fr;padding-top:42px;gap:35px}.hero h1{font-size:65px}.hero-art{height:360px;max-width:500px;width:100%;justify-self:center}.plaque{height:250px;width:220px}.section{padding-block:50px}.section-head{display:block}.grid{grid-template-columns:repeat(2,1fr)}.steps{gap:25px}.admin-grid{grid-template-columns:1fr;gap:0}footer{flex-wrap:wrap}.ribbon{font-size:8px;letter-spacing:1px}.ribbon b{font-size:16px}}@media(max-width:500px){.brand{font-size:18px}.brand small{font-size:8px}.header{padding-block:18px;gap:8px}.header .outline{font-size:11px;padding:10px}.hero h1{font-size:53px}.actions{gap:18px}.actions .button{padding:14px}.hero-art{height:340px}.grid,.steps{grid-template-columns:1fr}.steps{gap:15px}.section h2,.cta h2{font-size:34px}.empty{padding:28px 18px}.panel{padding:20px}.cart-row{gap:10px}dialog{padding:20px}.ribbon span{font-size:8px}.brand-mark{font-size:25px;margin:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* MOJY CUT — negro, grafito y metal cepillado */
:root{--bg:#08090b;--surface:#14161a;--line:#30343b;--ink:#f1f3f5;--muted:#a7adb7;--accent:#c0c7d1}
body{font-family:Arial,Helvetica,sans-serif}.header{min-height:95px}.brand{font-size:28px;letter-spacing:-1.6px;font-weight:900;font-style:italic;display:inline-flex;align-items:center;gap:7px}.brand small{font:900 28px Arial,sans-serif;font-style:italic;letter-spacing:-1.6px;background:linear-gradient(140deg,#fafbff,#7a828f 48%,#e1e4eb);color:transparent;background-clip:text}.brand-mark{font-size:39px;font-weight:400;line-height:1;margin-right:8px}.hero{padding-top:65px;padding-bottom:65px;grid-template-columns:1.13fr 1fr;min-height:730px}.hero h1{font:900 clamp(44px,5.9vw,88px)/.96 Arial,Helvetica,sans-serif;letter-spacing:-4px}.hero em{font-style:normal;background:linear-gradient(110deg,#fff 5%,#969da8 48%,#d8dde5 80%);color:transparent;background-clip:text}.hero .lead{margin-top:27px;line-height:1.8}.eyebrow{font-family:monospace;font-weight:400;font-size:11px;letter-spacing:1.8px}.button{border-radius:0;background:linear-gradient(120deg,#eef1f5,#adb4bf);color:#08090b;border:1px solid #e1e5ed;padding:16px 24px}.button:hover{background:#fff}.outline{border-radius:0}.hero-art{height:520px;border-radius:0;background:linear-gradient(145deg,#1e222a,#090a0d 65%);isolation:isolate;overflow:hidden}.hero-art:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#fff04 1px,transparent 1px),linear-gradient(90deg,#fff04 1px,transparent 1px);background-size:38px 38px;opacity:.45}.technical-label{position:absolute;top:24px;left:25px;right:25px;font:10px monospace;color:#bcc3ce;display:flex;justify-content:space-between}.technical-label span{font-size:8px;color:#818995}.metal-object{position:relative;width:290px;height:330px;transform:rotate(-12deg);filter:drop-shadow(22px 35px 15px #0009)}.metal-outline{position:absolute;inset:0;border:1px solid #9ba5b4;transform:translate(25px,-20px);clip-path:polygon(0 0,85% 0,100% 15%,100% 100%,0 100%)}.metal-face{position:absolute;inset:0;background:repeating-linear-gradient(100deg,#ffffff03 0px,#ffffff03 1px,#00000006 2px,#00000006 3px),linear-gradient(120deg,#e0e4eb 0%,#929aa6 24%,#d4dae1 45%,#747d89 76%,#b0b7c0 100%);clip-path:polygon(0 0,80% 0,100% 18%,100% 100%,0 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#222832;border-bottom:7px solid #555f6c}.metal-monogram{font:900 100px/.95 Arial,sans-serif;letter-spacing:-14px;position:relative;padding-right:18px}.metal-monogram>span{font-size:57px;position:absolute;right:-19px;top:-17px;color:#4b5461}.metal-face strong{font:900 italic 32px/.85 Arial,sans-serif;letter-spacing:-2px;margin-top:22px}.metal-face strong>span{display:block;letter-spacing:10px;font-size:29px;margin-top:6px}.metal-face small{font:7px monospace;letter-spacing:2px;margin-top:28px}.crosshair{position:absolute;color:#a6afbd;font:25px monospace}.c1{top:75px;left:23px}.c2{bottom:65px;right:25px}.art-note{font:8px monospace;color:#a7adb7;line-height:1.5;gap:15px;bottom:18px}.ribbon{background:#111318;font-family:monospace;font-size:11px;letter-spacing:3px}.ribbon b{color:#929aa7}h2{font:800 40px/1.04 Arial,Helvetica,sans-serif;letter-spacing:-1.6px}.section-head>p{max-width:360px;line-height:1.8}.section{padding-block:85px}.filters{gap:8px}.chip{border-radius:0;font-size:11px;padding:11px 17px;letter-spacing:.3px}.chip.active{background:linear-gradient(120deg,#e6eaf0,#a9b1be);border-color:#c3cbd7;color:#08090b}.empty{background:linear-gradient(135deg,#191c22,#0e1014);padding:55px 25px;border-style:solid}.empty-star{font-size:52px}.empty h3{font-size:25px;letter-spacing:-.7px}.process{background:#111318}.steps article{border-top:1px solid #4b525f;padding-top:25px}.steps span{font:12px monospace;color:#c7cdd7}.steps h3{font-weight:700;font-size:19px}.steps p{line-height:1.8}.cta{padding-block:95px;background:radial-gradient(ellipse at 50% 100%,#262c36,transparent 65%)}.cta h2{font:900 clamp(35px,5vw,64px)/1 Arial,sans-serif;letter-spacing:-2px}.product,.panel{border-radius:0}.product h3{font-weight:700}.product img{filter:saturate(.85)}.product img:hover{filter:none}.admin h1{font:900 43px Arial,sans-serif}.panel h2{font:700 27px Arial,sans-serif;letter-spacing:-.6px}input,textarea,select{background:#0d0f13;border-color:#414852;border-radius:0}#count{background:#cbd1db}footer .brand{font-size:22px}footer .brand small{font-size:22px}.success{border-color:#9daabf}.alert{border-color:#d3a3a3}#toast{border-radius:0}dialog{border-radius:0}
@media(max-width:1000px){.hero h1{font-size:62px}.hero-art{height:470px}.metal-object{width:240px;height:290px}.technical-label{flex-direction:column;gap:5px}}
@media(max-width:800px){.hero{grid-template-columns:1fr;padding-top:45px;min-height:0}.hero h1{font-size:clamp(45px,9vw,75px);letter-spacing:-3px}.hero-art{max-width:none;height:430px}.technical-label{flex-direction:row}.metal-object{width:245px;height:290px}.section{padding-block:55px}.brand,.brand small{font-size:25px}.brand-mark{font-size:30px}.section h2{font-size:35px}.cta h2{font-size:48px}}
@media(max-width:500px){.header{min-height:80px}.brand,.brand small{font-size:23px}.brand-mark{display:none}.header .outline{font-size:10px;padding:10px 8px}.hero h1{font-size:49px;letter-spacing:-2.6px}.hero-art{height:380px}.hero .eyebrow{font-size:9px}.technical-label{font-size:9px}.technical-label span{font-size:7px}.metal-object{width:220px;height:260px}.metal-monogram{font-size:85px}.metal-face strong{font-size:28px}.metal-face small{font-size:6px}.ribbon{letter-spacing:1px}.cta h2{font-size:39px}.actions{gap:15px}.actions .button{font-size:12px}.art-note{font-size:7px}.section-head>p br{display:none}}

/* Intro de grabado: únicamente en la página pública. */
.laser-intro{position:fixed;inset:0;z-index:1000;background:radial-gradient(ellipse at 50% 50%,#181d25 0,#080a0e 48%,#020305 100%);display:flex;align-items:center;justify-content:center;transition:opacity .6s ease,visibility .6s ease;animation:intro-failsafe 0s 8s forwards;color:#c5cdd8;overflow:hidden}.laser-intro:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#b8c9e907 1px,transparent 1px),linear-gradient(90deg,#b8c9e907 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(ellipse,#000,transparent 80%);pointer-events:none}.intro-top{position:absolute;top:30px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;gap:20px;font:9px monospace;letter-spacing:1.5px}.intro-top button{border:1px solid #4d5664;color:#dce3ed;background:#131820;padding:10px 16px;font:11px monospace;letter-spacing:0}.intro-center{width:min(900px,92vw);text-align:center}.intro-caption,.intro-bottom{font:9px monospace;letter-spacing:3px;color:#8a94a3}.intro-caption{margin-bottom:30px}#laser-svg{display:block;width:100%;height:auto;overflow:visible}.engraving-paths path{stroke:#e1e8f2;stroke-width:4;filter:drop-shadow(0 1px 0 #656e7c);transition:filter .6s}.intro-ready .engraving-paths path{filter:drop-shadow(0 0 4px #d2e3ff70)}#laser-ray{stroke:#e3edff;stroke-width:1;filter:drop-shadow(0 0 4px #b9d6ff)}.intro-progress{width:70%;margin:32px auto 12px;display:flex;justify-content:space-between;font:9px monospace;letter-spacing:2px;color:#a8b5c7}.intro-track{height:1px;width:70%;margin:auto;background:#333c49}.intro-track>span{display:block;height:1px;width:0;background:#eef5ff;box-shadow:0 0 9px #b6d1ff}.intro-bottom{margin-top:24px;font-size:8px;color:#66717f}.intro-coordinate{position:absolute;bottom:30px;left:5%;font:8px monospace;letter-spacing:1px;color:#687483}.laser-intro.intro-finished{opacity:0;visibility:hidden;pointer-events:none}.engraving-complete .engraving-paths path{filter:drop-shadow(0 0 8px #e5eeff80)}@keyframes intro-failsafe{to{opacity:0;visibility:hidden;pointer-events:none}}@media(max-width:500px){.intro-top{top:22px;font-size:7px;letter-spacing:.6px}.intro-top button{padding:10px;font-size:10px}.intro-caption{font-size:7px;letter-spacing:1.5px}.intro-progress,.intro-track{width:88%}.intro-coordinate{font-size:7px}.engraving-paths path{stroke-width:5}}@media(prefers-reduced-motion:reduce){.laser-intro{display:none}}
