*{box-sizing:border-box}html{background:#f4efec;color:#251f21;font-family:Arial,Helvetica,sans-serif;line-height:1.7}body{margin:0}main{max-width:1100px;margin:auto;background:white;padding:24px 32px}nav{display:flex;gap:22px;flex-wrap:wrap;border-bottom:1px solid #ddd;margin-bottom:40px}nav a{padding:12px 0;text-decoration:none}a{color:#245c50;text-underline-offset:4px}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.25}h1{font-size:38px}h2{font-size:28px}h3{font-size:20px}.file-header{margin:32px 0}.file-fact{font-weight:bold;color:#245c50}.file-intro{font-size:19px;max-width:700px}.file-group{margin:44px 0}.file-group-label{font-size:13px;color:#666;margin:0}.file-group-heading{margin-top:6px}.file-photos{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-start;margin:24px 0}.file-photos>div{flex:1;min-width:230px}.file-photos img{display:block;max-width:100%;width:auto;max-height:460px;border-radius:10px;object-fit:contain}.file-photos.is-single img{max-height:440px}.file-caption{font-size:12px;color:#666;max-width:760px}.file-p,.file-key{max-width:800px}.file-key,.file-callout{border-left:3px solid #79a897;padding:12px 18px}.file-callout{background:#f7f6f4;max-width:800px;margin:22px 0}.file-strong{font-weight:600}.file-row{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid #eee}.file-row-slot img{height:58px;width:58px;object-fit:cover;border-radius:6px}.file-row-detail{display:block;color:#555}.file-facts{max-width:800px}.file-facts>div{display:grid;grid-template-columns:minmax(100px,200px) 1fr;gap:18px;border-bottom:1px solid #eee;padding:14px 0}dt{color:#666}dd{margin:0;overflow-wrap:anywhere}.file-button{display:inline-block;border:1px solid #b3ccc3;padding:10px 17px;border-radius:5px;text-decoration:none;margin:16px 0}.file-closing{font-size:12px;color:#666;margin-top:55px;border-top:1px solid #ddd;padding-top:18px}.patient-video{width:100%;aspect-ratio:16/9;border:0;display:block;margin:24px 0}.preview-banner{background:#dfece7;color:#234e43;padding:10px 20px;text-align:center;font-size:13px}@media(max-width:600px){main{padding:20px}h1{font-size:30px}h2{font-size:24px}nav{gap:17px}nav a{min-height:44px}.file-photos{display:block}.file-photos>div{margin:12px 0;min-width:0}.file-photos img{width:100%;max-height:500px}.file-facts>div{grid-template-columns:110px 1fr;gap:12px}}
.file-callout > .file-strong{display:block;margin-bottom:6px}

.dental-motion { margin: 28px 0; max-width: 660px; }
.dental-motion svg { display:block; width:100%; max-width:560px; height:auto; margin:16px 0; }
.dental-motion .animation-controls { display:flex; gap:12px; flex-wrap:wrap; margin:12px 0; }
.dental-motion button { min-height:44px; }
.dental-motion .moving-crown { animation:fit-crown 10s ease-in-out infinite; }
.dental-motion .moving-abutment { animation:fit-abutment 10s ease-in-out infinite; }
.dental-motion .moving-implant-crown { animation:fit-implant-crown 10s ease-in-out infinite; }
@keyframes fit-crown { 0%,12%{transform:translateY(-106px)} 48%,85%{transform:translateY(0)} 100%{transform:translateY(-106px)} }
@keyframes fit-abutment { 0%,10%{transform:translateY(-65px)} 35%,88%{transform:translateY(0)} 100%{transform:translateY(-65px)} }
@keyframes fit-implant-crown { 0%,37%{transform:translateY(-112px)} 68%,88%{transform:translateY(0)} 100%{transform:translateY(-112px)} }
.dental-motion.is-paused svg * { animation-play-state:paused; }
@media(prefers-reduced-motion:reduce) { .dental-motion svg * {animation:none!important;transform:none!important;} .dental-motion .animation-controls {display:none;} }
