:root{--ivory:#f7f5f0;--stone:#e5ded2;--emerald:#123f36;--emerald-2:#0d2f28;--gold:#c6a15b;--gold-2:#b08d45;--ink:#1f1f1f;--muted:#6f6a60;--line:#123f3624;--ease:cubic-bezier(.22, 1, .36, 1);--serif:"Playfair Display", Georgia, serif;--sans:"Montserrat", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.webgl{z-index:0;position:fixed;inset:0}#root{z-index:1;position:relative}.brand{color:var(--emerald);flex-direction:column;align-items:center;line-height:1;display:inline-flex}.brand__over{font-family:var(--serif);letter-spacing:.42em;text-indent:.42em;font-size:.62em;font-weight:500;display:inline-flex;position:relative}.brand__o{display:inline-block;position:relative}.brand__dia{width:1.1em;height:1.1em;position:absolute;top:-1.15em;left:50%;transform:translate(-50%)}.brand__ring{fill:none;stroke:var(--gold);stroke-width:1.6px}.brand__gem{fill:var(--gold)}.brand__facet{stroke:#ffffff80;stroke-width:.5px;fill:none}.brand__main{font-family:var(--serif);letter-spacing:.06em;color:var(--gold);margin-top:.12em;font-size:1.9em;font-weight:600}.brand--dark{color:var(--ivory)}.brand--dark .brand__main{color:var(--gold)}.hd{z-index:30;transition:background .5s var(--ease), box-shadow .5s var(--ease), padding .5s var(--ease);justify-content:space-between;align-items:center;padding:1.1rem clamp(1.2rem,4vw,3.4rem);font-size:15px;display:flex;position:fixed;top:0;left:0;right:0}.hd--solid{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line);background:#f7f5f0e6;padding-top:.7rem;padding-bottom:.7rem}.hd__brand{flex:none}.hd__brand .brand{font-size:14px}.hd__nav{gap:clamp(1rem,2vw,2rem);display:flex}.hd__nav a{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);opacity:.8;padding:.3rem 0;font-size:.74rem;transition:opacity .3s,color .3s;position:relative}.hd__nav a:hover,.hd__nav a.is-active{opacity:1;color:var(--emerald)}.hd__nav a.is-active:after{content:"";background:var(--gold);height:1px;position:absolute;bottom:-2px;left:0;right:0}.hd__cta{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--emerald);color:var(--emerald);border-radius:2px;padding:.6rem 1.2rem;font-size:.72rem;transition:background .3s,color .3s}.hd__cta:hover{background:var(--emerald);color:var(--ivory)}.hd__burger{cursor:pointer;background:0 0;border:0;flex-direction:column;gap:5px;padding:4px;display:none}.hd__burger span{background:var(--emerald);width:24px;height:2px;transition:all .3s}.hd__mobile{display:none}.btn{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:transform .4s var(--ease), background .4s, color .4s, border-color .4s;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;padding:.95rem 1.8rem;font-size:.76rem;display:inline-flex}.btn--emerald{background:var(--emerald);color:var(--ivory)}.btn--emerald:hover{background:var(--emerald-2);transform:translateY(-2px)}.btn--gold{background:var(--gold);color:#241c0a}.btn--gold:hover{background:var(--gold-2);transform:translateY(-2px)}.btn--line{border-color:var(--emerald);color:var(--emerald)}.btn--line:hover{background:var(--emerald);color:var(--ivory)}.wa{z-index:40;background:var(--emerald);border-radius:50%;place-items:center;width:56px;height:56px;transition:transform .3s;display:grid;position:fixed;bottom:1.4rem;right:1.4rem;box-shadow:0 12px 30px -10px #123f3699}.wa:hover{transform:scale(1.08)}.wa svg{width:30px;height:30px;fill:var(--ivory)}.page{z-index:1;position:relative}.band{z-index:2;background:var(--ivory);position:relative}.band--stone{background:var(--stone)}.band--emerald{background:var(--emerald);color:var(--ivory)}.wrap{max-width:1180px;margin:0 auto;padding:clamp(4.5rem,9vw,8rem) clamp(1.2rem,5vw,3rem)}.wrap--tight{max-width:900px}.stage{z-index:1;align-items:center;min-height:100vh;padding:7rem clamp(1.2rem,6vw,6rem);display:flex;position:relative}.stage__text{max-width:560px;position:relative}.stage__text:before{content:"";z-index:-1;background:radial-gradient(78% 72% at 34%,#f7f5f0f7 0%,#f7f5f0c7 48%,#f7f5f033 78%,#0000 100%);position:absolute;inset:-14% -22% -14% -40%}.stage--center,.stage--right{text-align:left;justify-content:flex-start}.stage--center .actions,.stage--right .actions{justify-content:flex-start}.display{font-family:var(--serif);letter-spacing:-.01em;color:var(--emerald);font-size:clamp(2.8rem,6.5vw,5.4rem);font-weight:500;line-height:1.02}.display em{color:var(--gold-2);font-style:italic}.h2{font-family:var(--serif);color:var(--emerald);letter-spacing:-.01em;font-size:clamp(2rem,4.2vw,3.2rem);font-weight:500;line-height:1.08}.h3{font-family:var(--serif);color:var(--emerald);font-size:1.5rem;font-weight:500}.lead{font-family:var(--sans);color:var(--muted);font-size:clamp(1.05rem,1.6vw,1.25rem);font-weight:300;line-height:1.7}.body{font-family:var(--sans);color:var(--muted);font-size:1.02rem;font-weight:300;line-height:1.8}.band--emerald .display,.band--emerald .h2,.band--emerald .h3{color:var(--ivory)}.band--emerald .lead,.band--emerald .body{color:#f7f5f0d1}.rule{background:var(--gold);width:46px;height:1px;margin:1.6rem 0}.stage--center .rule,.stage--right .rule{margin-left:auto}.stage--right .rule{margin-right:0}.mt{margin-top:1.6rem}.actions{flex-wrap:wrap;gap:.9rem;margin-top:2.2rem;display:flex}.stage--center .actions{justify-content:center}.stage--right .actions{justify-content:flex-end}.grid{gap:clamp(1.4rem,3vw,2.6rem);display:grid}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--2{grid-template-columns:repeat(2,1fr)}.section-head{max-width:640px;margin-bottom:clamp(2.4rem,5vw,4rem)}.section-head .h2{margin-bottom:1.1rem}.card{border-top:1px solid var(--line);padding-top:1.6rem}.card .h3{margin-bottom:.7rem}.card__more{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-2);margin-top:1rem;font-size:.72rem;display:inline-block}.card__more:after{content:" →"}.process{grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,2.5vw,2.2rem);display:grid}.step{border-top:1px solid var(--line);padding-top:1.4rem}.step__k{font-family:var(--serif);color:var(--gold-2);margin-bottom:.8rem;font-size:1.35rem;font-style:italic;display:block}.step__d{color:var(--muted);font-size:.95rem;font-weight:300;line-height:1.7}.gallery{columns:3;column-gap:1.1rem}.gallery figure{break-inside:avoid;border-radius:3px;margin-bottom:1.1rem;position:relative;overflow:hidden}.gallery img{width:100%;transition:transform .8s var(--ease)}.gallery figure:hover img{transform:scale(1.05)}.gallery figcaption{letter-spacing:.06em;color:#fff;opacity:0;background:linear-gradient(#0000,#0d2f28bf);padding:1.4rem 1rem .9rem;font-size:.78rem;transition:opacity .4s;position:absolute;bottom:0;left:0;right:0}.gallery figure:hover figcaption{opacity:1}.faq{border-top:1px solid var(--line)}.faq__item{border-bottom:1px solid var(--line)}.faq__q{text-align:left;cursor:pointer;width:100%;font-family:var(--serif);color:var(--emerald);background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 0;font-size:1.15rem;display:flex}.faq__q span{color:var(--gold);font-family:var(--sans);font-weight:300;transition:transform .3s}.faq__item.open .faq__q span{transform:rotate(45deg)}.faq__a{max-height:0;transition:max-height .5s var(--ease);overflow:hidden}.faq__a p{color:var(--muted);max-width:66ch;padding-bottom:1.4rem;font-weight:300;line-height:1.75}.quote{font-family:var(--serif);color:var(--emerald);font-size:clamp(1.2rem,2vw,1.5rem);font-style:italic;line-height:1.5}.band--emerald .quote{color:var(--ivory)}.quote__by{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:1.2rem;font-size:.74rem;font-style:normal;display:block}.split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,5vw,4.5rem);display:grid}.split--rev .split__img{order:2}.split__img{aspect-ratio:4/5;border-radius:3px;overflow:hidden}.split__img img{object-fit:cover;width:100%;height:100%}.contact{grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);display:grid}.field{flex-direction:column;gap:.9rem;display:flex}.field input,.field textarea{font-family:var(--sans);border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:2px;padding:.95rem 1.1rem;font-size:1rem;font-weight:300}.field input:focus,.field textarea:focus{border-color:var(--gold);outline:none}.info-row{border-bottom:1px solid var(--line);flex-direction:column;gap:.3rem;padding:1.1rem 0;display:flex}.info-row b{font-family:var(--serif);color:var(--emerald);font-weight:500}.info-row a,.info-row span{color:var(--muted);font-weight:300}.map{aspect-ratio:16/9;filter:grayscale(.2)contrast(1.05);border:0;border-radius:3px;width:100%;margin-top:1.5rem}.ft{z-index:2;background:var(--emerald);color:#f7f5f0cc;position:relative}.ft__grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2.5rem;max-width:1180px;margin:0 auto;padding:clamp(3.5rem,7vw,5.5rem) clamp(1.2rem,5vw,3rem) 3rem;display:grid}.ft__logo.brand,.ft .brand{color:var(--ivory);align-items:flex-start;font-size:13px}.ft__claim{font-family:var(--serif);color:var(--ivory);margin:1.4rem 0 .6rem;font-size:1.15rem;font-style:italic}.ft__since{font-size:.85rem;font-weight:300}.ft__col h4{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:1.1rem;font-size:.72rem;font-weight:500}.ft__col p,.ft__col a{color:#f7f5f0cc;font-size:.9rem;font-weight:300;line-height:1.9;display:block}.ft__col a:hover{color:var(--gold)}.ft__hours{justify-content:space-between;gap:1rem;display:flex}.ft__hours span:last-child{color:var(--ivory)}.ft__social{gap:1.2rem;margin-top:1rem;display:flex}.ft__bar{border-top:1px solid #f7f5f024;flex-wrap:wrap;justify-content:space-between;gap:.8rem;max-width:1180px;margin:0 auto;padding:1.4rem clamp(1.2rem,5vw,3rem);font-size:.78rem;font-weight:300;display:flex}.ft__legal{gap:1.4rem;display:flex}.ft__legal a:hover{color:var(--gold)}.reveal{opacity:0;transition:opacity 1s var(--ease), transform 1s var(--ease);transform:translateY(26px)}.reveal.in{opacity:1;transform:none}.legal h1{font-family:var(--serif);color:var(--emerald);margin-bottom:1.5rem}.legal h2{font-family:var(--serif);color:var(--emerald);margin:2rem 0 .6rem;font-size:1.3rem}.legal p{color:var(--muted);max-width:72ch;margin-bottom:.8rem;font-weight:300;line-height:1.8}@media (width<=940px){.hd__nav,.hd__cta{display:none}.hd__burger{display:flex}.hd__mobile{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .5s var(--ease);z-index:-1;background:#f7f5f0fa;flex-direction:column;justify-content:center;align-items:center;gap:1.6rem;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.hd--open .hd__mobile{transform:none}.hd--open .hd__burger span:first-child{transform:translateY(7px)rotate(45deg)}.hd--open .hd__burger span:nth-child(2){opacity:0}.hd--open .hd__burger span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.hd__mobile a{font-family:var(--serif);color:var(--emerald);font-size:1.5rem}.hd__mobile-cta{letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--emerald);margin-top:1rem;padding:.8rem 1.6rem;font-family:var(--sans)!important;font-size:.8rem!important}.grid--3,.process{grid-template-columns:1fr 1fr}.split,.contact{grid-template-columns:1fr}.split--rev .split__img{order:0}.gallery{columns:2}.ft__grid{grid-template-columns:1fr 1fr}.stage--right{text-align:left;justify-content:flex-start}}@media (width<=560px){.grid--3,.grid--2,.process{grid-template-columns:1fr}.gallery{columns:1}.ft__grid{grid-template-columns:1fr}.display{font-size:clamp(2.4rem,12vw,3.4rem)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto;animation:none!important}.reveal{opacity:1;transform:none}}

/* WordPress / Elementor integration */
html,body.je-plugin-page{margin:0!important;width:100%;max-width:none;min-height:100%;}
body.je-plugin-page #je-plugin-shell,body.je-plugin-page .elementor,body.je-plugin-page .elementor-element,body.je-plugin-page .elementor-widget-container{width:100%;max-width:none;margin:0;padding:0;}
body.je-plugin-page .elementor-widget-joyeria_esmeralda_global{width:100%;}
body.je-plugin-page #root{width:100%;min-height:100vh;}
body.admin-bar.je-plugin-page .hd{top:32px;}
.brand.je-has-image{display:inline-flex;line-height:1;}
.brand.je-has-image img{display:block;width:var(--je-logo-width,170px);height:auto;max-height:82px;object-fit:contain;}
.je-form-status{margin-top:1rem;font-family:var(--sans);font-size:.95rem;line-height:1.6;}
.je-form-status--error{color:#8a1f1f;}
@media(max-width:782px){body.admin-bar.je-plugin-page .hd{top:46px}.brand.je-has-image img{max-height:64px}}
