.cerec-page{--cerec-gold:#917b4c}.cerec-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;padding:70px 7% 95px;align-items:center}.back-link{display:block;font-size:12px;color:var(--muted);margin-bottom:48px}.cerec-intro>p:not(.eyebrow){max-width:530px;color:var(--muted);margin:28px 0}.cerec-intro h1{font-size:clamp(38px,3.6vw,58px)}.cerec-diagram{background:#f6f5f2;padding:35px 35px 40px;min-height:570px;display:flex;flex-direction:column;justify-content:space-between}.diagram-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;color:var(--muted);font-size:12px}.diagram-heading>span:first-child{font-size:28px;letter-spacing:.08em;color:var(--cerec-gold);font-weight:300}.diagram-flow{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;gap:25px 5px;margin:40px 0}.diagram-flow>div{display:flex;flex-direction:column;align-items:center;gap:15px;font-size:14px}.diagram-flow svg{width:48px;height:48px;stroke:var(--cerec-gold);fill:none;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.diagram-flow i{height:1px;background:#c8bda5}.diagram-flow i:nth-of-type(2){display:none}.diagram-foot{border-top:1px solid #dedbd5;padding-top:24px;display:flex;justify-content:space-between;gap:20px;align-items:end}.diagram-foot strong{font-size:20px;font-weight:300;line-height:1.6}.diagram-foot>span{font-size:12px;color:var(--muted)}.cerec-definition{display:grid;grid-template-columns:1fr 2fr;gap:8%;padding:80px 10%;border-top:1px solid var(--line)}.cerec-definition p:not(.eyebrow){max-width:740px;color:var(--muted)}.cerec-process{padding:90px 7%;background:var(--dark);color:white}.cerec-process em{color:#cbbd9f}.cerec-process .eyebrow,.cerec-process .section-heading>p{color:#c6c9c7}.process-buttons{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #60635d;margin-top:45px}.process-buttons button{color:#c6c9c7;background:none;border:0;border-bottom:2px solid transparent;padding:20px 8px;font-size:16px;cursor:pointer}.process-buttons button[aria-pressed=true]{color:#e2d4b4;border-color:#cbbd9f}.process-buttons button:hover{background:#ffffff08}.process-detail{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;min-height:260px;padding:45px 3% 15px}.process-word{font-size:clamp(34px,5vw,74px);font-weight:300;letter-spacing:-.035em;color:#cbbd9f}.process-detail h3{font-size:23px;font-weight:400}.process-detail p{color:#d1d3cf;margin-bottom:0;max-width:530px}.cerec-benefits{padding:100px 7%}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.benefit-grid article{border-top:1px solid var(--gold);padding-top:20px}.benefit-grid h3{font-size:21px;font-weight:400}.benefit-grid p{color:var(--muted)}.cerec-questions{background:var(--paper);padding:90px 7%;display:grid;grid-template-columns:1fr 1.2fr;gap:8%}.question-list details{border-top:1px solid var(--line);padding:21px 0}.question-list details:last-child{border-bottom:1px solid var(--line)}.question-list summary{cursor:pointer;font-size:17px;padding-right:10px}.question-list p{color:var(--muted);font-size:15px;margin:20px 0 0}.cerec-video{padding:90px 7%;display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:7%}.cerec-video h2{font-size:34px}.cerec-video p{color:var(--muted)}.video-link{display:flex;align-items:center;gap:22px;border:1px solid var(--line);padding:36px 25px;min-height:150px}.video-link:hover{background:var(--paper)}.video-link svg{width:48px;height:48px;flex-shrink:0;fill:none;stroke:var(--cerec-gold);stroke-width:1.3}.video-link small{display:block;font-size:12px;color:var(--muted);margin-top:8px}.cerec-cta{text-align:center;padding:70px 7%;background:#ece8de}.cerec-cta .button{margin-top:5px}@media(max-width:900px){.cerec-hero{gap:5%;padding:45px 5% 65px}.cerec-diagram{padding:25px;min-height:540px}.diagram-heading{flex-direction:column;align-items:start}.diagram-foot{display:block}.diagram-foot>span{display:block;margin-top:15px}.cerec-definition{padding:65px 7%;grid-template-columns:1fr;gap:5px}.benefit-grid{gap:24px}.cerec-questions{grid-template-columns:1fr;gap:20px}.cerec-video{grid-template-columns:1fr;gap:20px}}@media(max-width:600px){.cerec-hero{grid-template-columns:1fr;padding:30px 7% 55px;gap:40px}.back-link{margin-bottom:30px}.cerec-intro h1{font-size:38px}.cerec-diagram{min-height:480px}.diagram-heading{flex-direction:row;align-items:center}.diagram-heading>span:last-child{max-width:125px}.diagram-foot strong{font-size:18px}.cerec-process,.cerec-benefits,.cerec-questions,.cerec-video{padding:60px 7%}.process-buttons{grid-template-columns:1fr 1fr;margin-top:20px}.process-buttons button{font-size:14px;padding:18px 6px}.process-detail{grid-template-columns:1fr;gap:0;min-height:330px;padding:30px 0 0}.process-word{font-size:44px}.process-detail h3{font-size:20px}.benefit-grid{grid-template-columns:1fr;gap:15px;margin-top:30px}.cerec-video h2{font-size:30px}.video-link{padding:24px 18px;gap:15px}}

.digital-title{font-size:clamp(22px,2.1vw,32px);line-height:1.4;font-weight:400;margin:0 0 32px!important;color:var(--ink)!important}.digital-title strong{display:block;color:#917b4c;font-size:1.15em;font-weight:400;letter-spacing:.1em}.cerec-intro h1{font-size:clamp(34px,3.2vw,53px)}.cerec-diagram{padding:30px 20px;min-height:620px}.digital-cycle{position:relative;width:100%;max-width:480px;aspect-ratio:1;margin:20px auto 28px}.cycle-route{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-linecap:round}.route-base{stroke:#dcd5c5;stroke-width:1.5}.route-progress{stroke:#917b4c;stroke-width:3;stroke-dasharray:100;stroke-dashoffset:100;animation:route-fill 16s linear infinite}.cycle-step{position:absolute;width:112px;min-height:106px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#f6f5f2;border-radius:15px;color:#8b8a86;padding:8px 4px;font-size:14px;line-height:1.4}.cycle-step svg{width:82px;height:74px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.cycle-step-1{left:23.5%;top:76.5%;color:#917b4c}.cycle-step-2{left:23.5%;top:23.5%;animation:stage-two 16s linear infinite}.cycle-step-3{left:76.5%;top:23.5%;animation:stage-three 16s linear infinite}.cycle-step-4{left:76.5%;top:76.5%;animation:stage-four 16s linear infinite}.cycle-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;color:#8b8069;font-size:14px;line-height:1.6}
@keyframes route-fill{0%,8%{stroke-dashoffset:100;opacity:1}32%{stroke-dashoffset:66.667}56%{stroke-dashoffset:33.333}80%,94%{stroke-dashoffset:0;opacity:1}98%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes stage-two{0%,30%,100%{color:#8b8a86}32%,94%{color:#917b4c}98%{color:#8b8a86}}
@keyframes stage-three{0%,54%,100%{color:#8b8a86}56%,94%{color:#917b4c}98%{color:#8b8a86}}
@keyframes stage-four{0%,78%,100%{color:#8b8a86}80%,94%{color:#917b4c}98%{color:#8b8a86}}
@media(min-width:601px) and (max-width:1050px){.cerec-hero{grid-template-columns:1fr}.cerec-diagram{max-width:620px;width:100%;margin:auto}.cerec-intro{max-width:720px}}
@media(max-width:600px){.cerec-diagram{padding:25px 10px;min-height:0}.digital-cycle{margin:26px auto}.cycle-step{width:86px;min-height:88px;font-size:12px;gap:3px}.cycle-step svg{width:66px;height:60px}.cycle-center{font-size:12px}.diagram-heading,.diagram-foot{margin:0 10px}.digital-title{font-size:24px}.cerec-intro h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){.route-progress{animation:none;stroke-dashoffset:0}.cycle-step{animation:none;color:#917b4c}}

/* Photographic CEREC stages */
.cerec-diagram{background:radial-gradient(ellipse at center,#fff 0%,#f5f3ee 74%);border:1px solid #e9e4da;border-radius:4px;box-shadow:0 22px 70px -45px #50401f55}
.digital-cycle{max-width:520px;margin:30px auto 34px}
.cycle-step{width:142px;background:transparent;padding:0;gap:10px;font-size:14px;font-weight:400;min-height:0}
.cycle-photo{display:block;width:132px;height:132px;border-radius:50%;overflow:hidden;border:3px solid currentColor;box-shadow:0 9px 26px #3c332521,0 0 0 7px #f6f4ef;transition:transform .4s ease}
.cycle-photo img{display:block;width:100%;height:100%;object-fit:cover}
.cycle-step:hover .cycle-photo{transform:scale(1.06)}
.cycle-step>span:last-child{background:#f6f4ef;padding:2px 12px;border-radius:20px}
.cycle-center{font-size:13px;letter-spacing:.02em}.route-progress{stroke-width:3.5}
@media(max-width:600px){.cycle-step{width:100px;font-size:12px;gap:7px}.cycle-photo{width:86px;height:86px;border-width:2px;box-shadow:0 6px 18px #3c33251c,0 0 0 4px #f6f4ef}.digital-cycle{margin:32px auto 38px}.cycle-center{font-size:11px}.cycle-step>span:last-child{padding:2px 7px}}
@media(prefers-reduced-motion:reduce){.cycle-photo{transition:none}}

/* Five timed stages; all progress resets together after ten seconds. */
.five-stage-cycle{aspect-ratio:1;max-width:560px;margin:45px auto 12px}
.five-stage-cycle .cycle-step{width:120px;gap:7px;animation:none;color:#8b8a86}
.five-stage-cycle .cycle-photo{width:104px;height:104px;border:0;padding:3px;background:conic-gradient(#917b4c calc(var(--stage-progress,0)*1turn),#ded9cf 0);box-shadow:0 8px 22px #3c33251c,0 0 0 5px #f6f4ef}
.five-stage-cycle .cycle-photo img{border-radius:50%}
.five-stage-cycle .is-complete{color:#917b4c}
.five-stage-cycle .route-progress{animation:none;opacity:1}
.stage-caption{text-align:center;white-space:nowrap;font-size:13px}.stage-caption strong{display:block;font-size:15px;color:#917b4c;font-weight:500;margin-top:2px}
.cycle-center strong{display:block;font-size:20px;color:#917b4c;font-weight:400;margin-top:4px}
.cycle-note{text-align:center;font-size:11px;line-height:1.8;color:var(--muted);margin:0 0 24px}
.process-buttons{grid-template-columns:repeat(5,1fr)}.process-buttons small{display:block;font-size:13px;margin-top:7px;color:#cbbd9f}
@media(max-width:600px){.five-stage-cycle{margin:40px auto 10px}.five-stage-cycle .cycle-step{width:84px;gap:5px}.five-stage-cycle .cycle-photo{width:64px;height:64px;padding:2px}.stage-caption{font-size:10px;padding:2px 3px!important}.stage-caption strong{font-size:12px}.cycle-center strong{font-size:15px}.cycle-note{font-size:10px}.process-buttons{grid-template-columns:repeat(2,1fr)}.process-buttons button:last-child{grid-column:1/-1}.process-word{font-size:36px}}

.five-stage-cycle .cycle-step{min-height:158px;justify-content:flex-start}.five-stage-cycle .stage-caption{line-height:1.3}.process-word{overflow-wrap:anywhere}@media(max-width:600px){.five-stage-cycle .cycle-step{min-height:117px}.five-stage-cycle .stage-caption{font-size:10px}}
