/* Stage 5: quiet, task-oriented pages in the accepted Vyray design language. */
.service-page{--ink:#233142;--muted:#5c6c7e;max-width:1600px;margin:auto;padding-bottom:70px;overflow:visible}
.service-page h1{font-size:clamp(44px,4.8vw,70px);font-weight:500;line-height:1.06;letter-spacing:-.055em}
.service-page h2{font-size:clamp(32px,3.4vw,48px);font-weight:500;line-height:1.12;letter-spacing:-.04em}
.service-page h3{font-size:23px;font-weight:500;line-height:1.3;letter-spacing:-.025em}
.service-page p{font-size:17px;line-height:1.7;color:var(--muted)}
.service-hero{padding:65px 6.5% 40px;position:relative}
.service-hero.with-art{display:grid;grid-template-columns:1fr 1.08fr;gap:35px;align-items:center;padding-right:0}
.service-intro{min-width:0}.service-intro .service-lead{font-size:20px;line-height:1.65;max-width:620px;margin-top:25px}
.service-page .eyebrow{font-size:11px;line-height:1.5;margin-bottom:22px;color:var(--product-blue)}
.service-art .scene-art{aspect-ratio:var(--scene-ratio);mask-image:url('../product-preview/scene-edge.svg');-webkit-mask-image:url('../product-preview/scene-edge.svg');mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}
.service-art .scene-art img{height:100%;width:100%;object-fit:cover;aspect-ratio:auto}
.service-art figcaption{font-size:11px;max-width:440px;padding:0 24px;line-height:1.6}
.service-page>.product-actions{margin:25px 6.5%}.service-page .button{border:0;cursor:pointer;font:inherit;font-size:15px;color:#fff;padding:16px 24px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.service-page .button:active{transform:scale(.97)}
.service-page .text-button{border:0;background:transparent;color:var(--product-blue);padding:12px 0;min-height:44px;font:inherit;font-size:14px;cursor:pointer;text-underline-offset:5px}
.service-page .text-button:hover{text-decoration:underline}
.service-section{margin:55px 6.5%;scroll-margin-top:110px}
.section-heading{margin-bottom:38px;max-width:700px}
.service-rows article{display:grid;grid-template-columns:.9fr 1.4fr;gap:70px;padding:30px 0;border-bottom:1px solid #e4eaf0}
.service-rows article:first-child{padding-top:0}.service-rows article:last-child{border:0;padding-bottom:0}
.service-rows p{max-width:680px}.service-rows .product-link{margin-top:8px}
.service-note{margin:20px 6.5% 45px;padding:24px 0 24px 24px;border-left:2px solid #d09c68;max-width:950px}
.service-note h2{font-size:23px;letter-spacing:-.025em;margin-bottom:10px}.service-note p{font-size:16px}
.service-faq{max-width:950px}.service-faq details{border-bottom:1px solid #e1e8ed}
.service-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:19px;line-height:1.5;padding:22px 0}
.service-faq summary::-webkit-details-marker{display:none}.service-faq summary:after{content:'+';color:var(--product-blue)}.service-faq details[open] summary:after{content:'−'}
.service-faq details>div{padding:0 25px 24px 0}.service-page .prose{max-width:750px}.prose p+p{margin-top:20px}
.service-page p a,.prose a:not(.button):not(.product-link){color:var(--product-blue);text-decoration:underline;text-underline-offset:4px}
.service-page .fine{font-size:13px;line-height:1.7}.service-page .inline-status{font-size:14px;line-height:1.65;margin-top:14px;max-width:640px;min-height:1.65em}
.service-page .contact-email{font-size:18px;margin-top:20px;color:var(--ink)}
.company-details{margin:65px 6.5% 0}.company-details h2{font-size:23px;margin-bottom:18px}.company-details .fine{margin-top:20px}
.service-page .byline{margin-top:25px;font-size:17px;color:var(--ink)}.byline span{display:block;font-size:13px;color:var(--muted)}
.founder-section{display:grid;grid-template-columns:.8fr 1.1fr;gap:70px;align-items:center;margin:65px 6.5%}.founder-section .service-art{max-width:420px}.founder-section h2{margin-bottom:25px}
.download-picker{max-width:1000px}.download-picker fieldset{border:0;padding:0;margin:0}.download-picker legend{font-size:14px;color:var(--muted);margin-bottom:18px}
.platform-options{display:flex;gap:12px;flex-wrap:wrap}.platform-options label{display:flex;align-items:center;gap:12px;position:relative;cursor:pointer;border:1px solid #d7e1e9;border-radius:8px;padding:17px 24px;min-height:62px;min-width:180px;font-size:18px}
.platform-options input{accent-color:#245d96;width:16px;height:16px;margin:0}.platform-options label:has(:checked){border-color:#245d96;background:#f3f8fc}.platform-options label:has(:focus-visible){outline:3px solid #2865eb;outline-offset:4px}
.package-detail{margin-top:35px}.package-detail h2{font-size:27px;margin-bottom:12px}.package-meta{display:flex;gap:55px;margin:25px 0}.package-meta dt{font-size:12px;color:var(--muted)}.package-meta dd{margin:5px 0 0;font-size:20px;font-variant-numeric:tabular-nums}
.feedback-layout{display:grid;grid-template-columns:.8fr 1.15fr;gap:70px;align-items:start}
#support-form{min-width:0}#support-form label{display:block;font-size:14px;line-height:1.5;color:var(--ink);margin-bottom:20px}
#support-form input,#support-form textarea,#support-form select{box-sizing:border-box;display:block;width:100%;min-width:0;border:1px solid #becbd6;border-radius:6px;padding:12px 14px;margin-top:8px;background:#fff;color:var(--ink);font:inherit;font-size:16px;line-height:1.6}
#support-form textarea{resize:vertical;min-height:120px}#support-form input:focus-visible,#support-form textarea:focus-visible,#support-form select:focus-visible{outline:3px solid #2865eb;outline-offset:3px}
#support-form .product-actions{margin-top:10px}#prepared-message{margin-top:20px}#prepared-message .fine{margin:8px 0 18px}
/* Search is local. A plain list of links remains the keyboard interaction model. */
.doc-search{position:relative;margin-top:30px;max-width:620px}.search-field{display:flex;gap:12px;align-items:center;border:1px solid #b9c8d6;border-radius:8px;padding:14px 18px;background:#fff}
.search-field svg{width:22px;height:22px;stroke:#54718d;fill:none;stroke-width:1.5;flex-shrink:0}.search-field input{width:100%;min-width:0;border:0;background:transparent;outline:none;font:inherit;font-size:16px;color:#233142}.search-field:focus-within{outline:3px solid #2865eb;outline-offset:3px}.search-field kbd{font-size:12px;color:#718196}
.search-results{position:absolute;z-index:9;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #d6e0e9;border-radius:8px;box-shadow:0 12px 35px #23314210;max-height:420px;overflow:auto;padding:12px}
.search-results[hidden]{display:none}.search-results .search-status{font-size:12px;color:#5c6c7e;margin:3px 8px 9px}.search-results ul{list-style:none;margin:0;padding:0}.search-results a{display:block;padding:12px 8px;border-radius:4px}.search-results a:hover,.search-results a:focus-visible{background:#eef5fa}.search-results strong{display:block;font-size:15px;font-weight:500}.search-results small{display:block;font-size:12px;color:#5c6c7e;line-height:1.6;margin-top:4px}
.service-page :is(a,button,summary):focus-visible{outline:3px solid #2865eb;outline-offset:4px}
@media(min-width:901px) and (max-width:1100px){.service-page h1{font-size:48px}.service-hero.with-art{gap:16px}.service-intro .service-lead{font-size:18px}.feedback-layout{gap:35px}}
@media(max-width:900px){.service-hero{padding:45px 24px 25px}.service-hero.with-art{display:block;padding:35px 24px 25px}.service-hero .service-art{margin:24px -24px 0;max-width:750px}.service-intro .service-lead{font-size:19px}.service-section{margin:45px 24px}.service-note{margin:25px 24px;padding-left:18px}.service-rows article{gap:32px}.service-page>.product-actions{margin:25px 24px}.founder-section{margin:50px 24px;gap:35px}.feedback-layout{grid-template-columns:1fr;gap:35px}.company-details{margin:45px 24px 0}}
@media(max-width:600px){.service-page h1{font-size:44px}.service-page h2{font-size:34px}.service-page h3{font-size:22px}.service-page .service-note h2{font-size:22px}.service-page .service-lead{font-size:18px}.service-rows article{grid-template-columns:1fr;gap:12px;padding:25px 0}.service-section .section-heading{margin-bottom:30px}.service-page p{font-size:16px}.service-faq summary{font-size:17px}.founder-section{grid-template-columns:1fr;gap:30px}.founder-section .service-art{max-width:330px;margin:auto}.platform-options{display:grid;grid-template-columns:1fr;gap:10px}.platform-options label{padding:14px 18px;min-width:0;min-height:58px}.package-detail h2{font-size:25px}.service-page .button{padding:15px 20px}.service-page .product-actions{gap:16px 24px}.company-details h2{font-size:23px}.service-page{padding-bottom:40px}.search-results{max-height:340px}.service-hero .service-art{margin-top:30px}}
@media(max-width:360px){.service-page h1{font-size:38px}.service-page h2{font-size:31px}.service-page .eyebrow{font-size:10px}.service-page .service-note h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.service-page *, .service-page *:before,.service-page *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Downloads puts the package action in the first screen. */
.download-page .service-hero{padding-top:35px;align-items:center}
.download-page h1{font-size:clamp(38px,3.7vw,55px)}
.download-page .service-lead{font-size:17px;line-height:1.6;margin-top:18px}
.download-page .download-picker{margin-top:24px}
.download-page .platform-options{gap:8px;flex-wrap:nowrap}
.download-page .platform-options label{min-width:0;padding:12px;gap:8px;font-size:15px;min-height:52px;flex:1}
.download-page .platform-options .platform-mark{width:22px;height:24px;flex-basis:22px}
.download-page .platform-options input{width:14px;height:14px;flex-shrink:0}
.download-page .package-detail{margin-top:20px}
.download-page .package-detail h2{font-size:21px}
.download-page .package-meta{gap:30px;margin:15px 0}
.download-page .package-meta div{display:flex;align-items:baseline;gap:12px}
.download-page .package-meta dd{font-size:17px;margin:0}
.download-page .inline-status{font-size:12px;max-width:420px}
@media(max-width:1100px) and (min-width:901px){.download-page .platform-options label{padding:10px 8px;gap:5px;font-size:13px}.download-page .platform-options .platform-mark{width:20px;flex-basis:20px}}
@media(max-width:600px){.download-page .platform-options{display:grid;grid-template-columns:1fr}.download-page .platform-options label{font-size:16px;gap:13px;padding:12px 16px}.download-page .service-hero .service-art{margin-top:30px}.download-page h1{font-size:42px}}
@media(max-width:360px){.download-page h1{font-size:37px}}
.service-page .contact-company{margin-top:6px;font-size:14px;line-height:1.6;color:var(--muted)}
.company-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 56px;margin:0;padding-top:32px;border-top:1px solid #e4eaf0}
.company-facts dt{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.company-facts dd{margin:0;font-size:17px;line-height:1.55;color:var(--ink);font-variant-numeric:tabular-nums}
.company-section .fine{margin-top:40px}
@media(max-width:900px){.company-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 32px}}
@media(max-width:600px){.company-facts{grid-template-columns:1fr;gap:20px}.company-facts dd{font-size:16px}}
.company-facts dd a,.company-section .fine a{color:var(--product-blue);text-decoration:underline;text-underline-offset:4px}
