body{margin:0;background:#F7F7F7}
html{scroll-behavior:smooth}
a{color:#8A6410}a:hover{color:#5F450A}
summary{cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
button{font-family:inherit;border:0;cursor:pointer}
.hd{font-family:'Stack Sans Headline','Google Sans Flex','Google Sans',system-ui,sans-serif;font-weight:500}
.btn{transition:transform .25s ease, box-shadow .25s ease}
.btn:hover{transform:translateY(-2px)}
.card{transition:transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s ease}
.card:hover{transform:translateY(-6px);box-shadow:0 30px 60px rgba(12,26,20,.16)}
.plus{transition:transform .25s ease}
details[open] .plus{transform:rotate(45deg)}
.anim .rv{opacity:0;transform:translateY(34px);transition:opacity .9s ease, transform .9s cubic-bezier(.2,.7,.2,1)}
.anim .rv.in{opacity:1;transform:none}
.d1{transition-delay:.12s}.d2{transition-delay:.24s}.d3{transition-delay:.36s}
@keyframes heroIn{from{opacity:0;transform:translateY(30px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes glow{0%,100%{box-shadow:0 0 0 0 rgba(245,223,152,.55)}50%{box-shadow:0 0 0 14px rgba(245,223,152,0)}}
.hi{animation:heroIn 1s cubic-bezier(.2,.7,.2,1) both}
.h2{animation-delay:.15s}.h3{animation-delay:.3s}.h4{animation-delay:.45s}.h5{animation-delay:.7s}
.fl{animation:floaty 7s ease-in-out infinite}
.fl2{animation:floaty 8s ease-in-out -3s infinite}
.pulse{animation:glow 2.4s ease-out infinite}
.hero{background-image:url(../img/hero-dentista-top.webp);background-size:cover;background-position:right top;background-repeat:no-repeat}
.cut{background-image:url(../img/hero-recorte-top.webp);background-size:100% 100%;background-repeat:no-repeat}
.ray{stroke-dasharray:5 9;animation:ray 2.6s linear infinite}
@keyframes ray{to{stroke-dashoffset:-56}}
.pop{animation:pop 1s cubic-bezier(.2,.8,.2,1) both}
@keyframes pop{from{opacity:0;transform:translate(var(--fx),var(--fy)) scale(.25)}to{opacity:1;transform:none}}
.anim .rise{opacity:0;transform:translateY(14px);transition:opacity .7s ease .35s, transform .7s cubic-bezier(.2,.7,.2,1) .35s}
.anim .in .rise{opacity:1;transform:none}
.mhero{display:none}
.inp{width:100%;box-sizing:border-box;height:54px;border-radius:12px;border:1px solid #D5DBD5;background:#FFFFFF;padding:0 16px;font-family:inherit;font-size:16px;color:#0C1A14}
.inp:focus{outline:2px solid #C8982E;outline-offset:1px;border-color:#C8982E}
dialog#lead{border:0;padding:0;border-radius:22px;width:min(92vw,440px);background:#FFFFFF;color:#0C1A14;box-shadow:0 40px 100px rgba(0,0,0,.45)}
dialog#lead::backdrop{background:rgba(5,15,11,.66);backdrop-filter:blur(4px)}
@media (max-width:860px){.anim .stp{transition-delay:0s !important;transform:translateY(46px) scale(.95)}.deco{display:none !important}.hero{background-image:radial-gradient(ellipse 120% 36% at -10% 27%,rgba(206,152,44,.62) 0%,rgba(150,110,34,.38) 38%,rgba(60,62,30,.16) 68%,rgba(10,26,18,0) 100%),linear-gradient(180deg,#0B1711 0%,#0A1912 45%,#0C1D15 100%) !important}.hh{padding:18px 0 6px !important;gap:7px !important}.lg{width:21px;height:21px}.lgt{font-size:16px !important}.ctas{flex-wrap:nowrap !important;gap:8px !important}.cta{flex:1 1 0 !important;min-width:0;padding:14px 4px !important;font-size:14px !important;min-height:52px !important;white-space:nowrap;text-align:center}.hc{padding-top:0 !important;padding-bottom:210px !important}.mhero{display:block;order:-1;position:relative;align-self:stretch;height:112vw;max-height:600px;margin:0 -24px -7vw}.mbg{position:absolute;inset:0;background-image:url(../img/hero-mobile.webp);background-size:100% auto;background-position:0 -30vw;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.2) 5%,rgba(0,0,0,.55) 11%,rgba(0,0,0,.85) 17%,#000 22%,#000 70%,rgba(0,0,0,.85) 77%,rgba(0,0,0,.55) 84%,rgba(0,0,0,.22) 91%,rgba(0,0,0,.06) 96%,rgba(0,0,0,0) 100%);mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.2) 5%,rgba(0,0,0,.55) 11%,rgba(0,0,0,.85) 17%,#000 22%,#000 70%,rgba(0,0,0,.85) 77%,rgba(0,0,0,.55) 84%,rgba(0,0,0,.22) 91%,rgba(0,0,0,.06) 96%,rgba(0,0,0,0) 100%)}.sec2 .rv{text-align:left !important;align-items:flex-start !important}}
@media (prefers-reduced-motion:reduce){.hi,.fl,.fl2,.pulse,.ray,.pop{animation:none}.anim .rv{opacity:1;transform:none;transition:none}}
.soc{display:flex;gap:12px}
.sb{position:relative;width:40px;height:40px;border-radius:10px;background:#EBEBE8;color:#140F0A;display:flex;align-items:center;justify-content:center;overflow:hidden;border:0;padding:0;cursor:pointer;text-decoration:none}
.sb .si{display:flex;align-items:center;justify-content:center}
.sb .si.g{position:absolute;inset:0}
.sb .si.g{display:none}
@media (hover:hover) and (min-width:861px){
.sb{transition:background .35s ease,transform .35s ease}
.sb .si{transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.sb .si.g{display:flex;transform:translateY(120%)}
.sb:hover{background:#F2C94C;transform:translateY(-2px)}
.sb:hover .si:not(.g){transform:translateY(-120%)}
.sb:hover .si.g{transform:translateY(0)}
}
dialog.legal{border:0;padding:0;border-radius:22px;width:min(92vw,680px);max-height:86vh;background:#FFFFFF;color:#0C1A14;box-shadow:0 40px 100px rgba(0,0,0,.45);overflow:hidden}
dialog.legal[open]{display:flex;flex-direction:column}
dialog.legal::backdrop{background:rgba(5,15,11,.66);backdrop-filter:blur(4px)}
.lg-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px 14px;border-bottom:1px solid #ECEAE5}
.lg-b{padding:8px 24px 12px;overflow-y:auto;-webkit-overflow-scrolling:touch;font-size:15px;line-height:1.55;color:#3D423F}
.lg-b h3{font-size:16px;font-weight:600;color:#0C1A14;margin:20px 0 6px}
.lg-b p{margin:0 0 8px}.lg-b ul{margin:0 0 8px;padding-left:20px}.lg-b li{margin:3px 0}
.lg-b .lk{background:none;padding:0;font:inherit;color:#8A6410;text-decoration:underline}
.lg-f{padding:14px 22px 18px;border-top:1px solid #ECEAE5;display:flex;justify-content:flex-end}
@media (max-width:860px){dialog.legal{width:100vw;max-width:100vw;max-height:90vh;margin:auto 0 0;border-radius:22px 22px 0 0}.lg-f .lg-x{width:100%}}
