/* Prototype and mechanical engraving pages. Keep the offer readable without JS. */
body:has(.project-program) main{background:#f2f6f5;padding-top:118px}
.project-program{color:#244651;padding-bottom:70px}
.project-program h1,.project-program h2,.project-program h3{color:#102e37;letter-spacing:-.035em}
.project-program p,.project-program li{font-size:17px;line-height:1.75}
.project-program p{max-width:80ch}
.pp-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:13px;margin:18px 0 40px}
.pp-breadcrumb a,.pp-related a{color:#075f66;text-underline-offset:4px}
.pp-hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,.75fr);gap:clamp(28px,5vw,70px);align-items:center;margin-bottom:68px}
.pp-eyebrow{font-size:12px!important;letter-spacing:.12em;font-weight:650;color:#087b84;margin:0 0 18px}
.pp-hero h1{font-size:clamp(36px,4.2vw,66px);line-height:1.08;max-width:20ch;margin:0 0 25px}
.pp-lead{font-size:19px!important;line-height:1.65!important;margin-bottom:28px}
.pp-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:#087d85;color:white!important;border:1px solid #087d85;padding:16px 23px;font-size:15px;font-weight:650;text-decoration:none;line-height:1.4;text-align:center;transition:background .18s}
.pp-button:hover{background:#08636a}
.pp-button:focus-visible,.pp-related a:focus-visible,.pp-breadcrumb a:focus-visible,.pp-faq summary:focus-visible{outline:3px solid #1558cc;outline-offset:5px}
.pp-secondary{background:transparent;color:#075f66!important}
.pp-secondary:hover{background:#e0eeee}
.pp-note{font-size:13px!important;line-height:1.65!important;color:#516a73;margin-top:16px}
.pp-summary{border:1px solid #bacfcf;border-top:4px solid #087d85;background:white;padding:32px;box-shadow:0 16px 40px #122c3510}
.pp-summary>span{display:block;font-size:12px;letter-spacing:.14em;color:#087b84;margin-bottom:28px}
.pp-summary h2{font-size:26px;line-height:1.25;margin:0 0 16px}
.pp-summary p{font-size:16px;margin:0}
.pp-section{margin:52px 0}
.pp-section>h2,.pp-related>h2{font-size:clamp(26px,3vw,38px);line-height:1.2;margin:0 0 22px;max-width:36ch}
.pp-section>p{margin:0 0 18px}
.pp-examples{list-style:none;padding:0;margin:25px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pp-examples li{border:1px solid #c6d8d5;background:white;padding:24px;font-size:16px}
.pp-steps{counter-reset:step;list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.pp-steps li{counter-increment:step;border-top:1px solid #9fbeb8;padding-top:24px}
.pp-steps li:before{content:'0' counter(step);display:block;font-size:13px;color:#087b84;margin-bottom:18px}
.pp-steps h3{font-size:22px;line-height:1.3;margin:0 0 14px}
.pp-steps p{font-size:16px;margin:0}
.pp-pair{display:grid;grid-template-columns:1fr 1fr;gap:42px;padding-top:8px;border-top:1px solid #c6d8d5}
.pp-pair .pp-section{margin:32px 0}
.pp-pair h2{font-size:29px}
.pp-alternative{background:#e1eeeb;border-left:4px solid #087d85;padding:34px 38px}
.pp-alternative .pp-button{margin-top:8px}
.pp-faq{max-width:920px}
.pp-faq details{padding:20px 0;border-bottom:1px solid #bfcecb}
.pp-faq summary{font-size:18px;font-weight:650;line-height:1.5;color:#163943;cursor:pointer}
.pp-faq details p{font-size:16px;margin:16px 0 0}
.pp-final{padding:32px 0 42px;display:flex;align-items:center;gap:30px;border-bottom:1px solid #c6d8d5}
.pp-final .pp-button{flex-shrink:0}
.pp-final p{font-size:14px;margin:0;max-width:54ch}
.pp-related{margin-top:40px;display:flex;flex-wrap:wrap;gap:18px 28px}
.pp-related h2{width:100%;font-size:24px;margin:0}
.pp-related a{font-size:15px}
@media(max-width:950px){.pp-hero{grid-template-columns:1.35fr 1fr;gap:30px}.pp-hero h1{font-size:43px}.pp-summary{padding:25px}.pp-examples,.pp-steps{gap:18px}.pp-pair{gap:30px}.pp-final{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){body:has(.project-program) main{padding-top:84px}.pp-breadcrumb{margin-bottom:30px;font-size:12px}.pp-hero{grid-template-columns:1fr;margin-bottom:42px}.pp-hero h1{font-size:38px}.pp-lead{font-size:17px!important}.pp-summary{padding:24px}.pp-summary>span{margin-bottom:16px}.pp-summary h2{font-size:24px}.pp-examples,.pp-steps,.pp-pair{grid-template-columns:1fr}.pp-examples li{padding:22px}.pp-section{margin:36px 0}.pp-pair{gap:0}.pp-pair .pp-section{margin:26px 0}.pp-alternative{padding:26px 22px}.pp-button{width:100%;box-sizing:border-box}.pp-final{gap:18px}.pp-related{gap:18px}.project-program p,.project-program li{font-size:16px}}
@media(prefers-reduced-motion:reduce){.pp-button{transition:none}}
