/* On-Site presentation follows the approved homepage; business/CMS selectors stay intact. */
body[data-page="onsite"] {
 --onsite-space:clamp(40px,5vw,64px);
 --onsite-title:clamp(30px,4vw,48px);
 --cyan:var(--brand-brand-blue); --blue:var(--brand-electric-blue);
 --text-1:var(--brand-deep-purple); --text-2:var(--brand-muted); --text-3:var(--brand-muted);
 --gradient-brand:var(--brand-cta-gradient);
 background:var(--brand-off-white); color:var(--brand-dark-text); font-family:"Outfit","Inter",sans-serif;
}
body[data-page="onsite"] :is(h1,h2,h3,h4,h5,p,li,label,input,select,textarea,button,.btn,.logo,.acc-title,.coverage-center,.onsite-pricing-price,.onsite-pricing-option>strong){font-family:"Outfit","Inter",sans-serif}
body[data-page="onsite"] .container{max-width:1240px;width:100%;padding-inline:24px}
body[data-page="onsite"] :is(.section,.final-cta){padding-block:var(--onsite-space)}
body[data-page="onsite"] .section{background:var(--brand-off-white)}
body[data-page="onsite"] .section-light{--text-1:var(--brand-deep-purple);--text-2:var(--brand-muted);--text-3:var(--brand-muted);background:var(--brand-light-gray)}
body[data-page="onsite"] :is(.section-title,.philosophy-quote,.final-cta h2){font-size:var(--onsite-title);line-height:1.08;letter-spacing:-.04em;font-weight:600;text-wrap:balance;color:var(--brand-deep-purple)}
body[data-page="onsite"] :is(.section-sub,.philosophy-text p){font-size:16px;line-height:1.65;color:var(--brand-muted);max-width:65ch}
body[data-page="onsite"] .section-head{margin-bottom:28px}
body[data-page="onsite"] .btn{min-height:48px;padding:12px 20px;font-size:14px;font-weight:500;line-height:1.4;border-radius:999px}
body[data-page="onsite"] .btn-primary{background:var(--brand-cta-gradient);color:var(--brand-white);box-shadow:0 8px 20px rgba(0,85,227,.16)}
body[data-page="onsite"] .btn-ghost{background:transparent;color:var(--brand-deep-purple);border-color:var(--brand-border)}
body[data-page="onsite"] :is(button,a):focus-visible{outline:3px solid var(--brand-electric-blue);outline-offset:4px}
body[data-page="onsite"] .nav{background:rgba(16,0,33,.88);border-color:rgba(255,255,255,.14)}
body[data-page="onsite"] .nav .btn-ghost{background:var(--brand-deep-purple);color:white;border-color:rgba(255,255,255,.22)}
body[data-page="onsite"] .logo-mark{background:var(--brand-cta-gradient)}
body[data-page="onsite"] .nav-links a[aria-current="page"]{color:white;text-decoration:underline;text-decoration-color:var(--brand-brand-blue);text-underline-offset:7px}
body[data-page="onsite"] .mobile-menu{background:var(--brand-deep-purple)}
/* Clean display hero and a moving photo ribbon, as on the homepage. */
body[data-page="onsite"] .onsite-orbit-hero{display:block;min-height:0;padding:140px 0 32px;background:var(--brand-off-white);overflow:hidden}
body[data-page="onsite"] :is(.onsite-orbit-hero-grid,.onsite-orbit-square){display:none}
body[data-page="onsite"] .onsite-orbit-hero-inner{max-width:950px;padding-inline:24px}
body[data-page="onsite"] .onsite-orbit-hero-proof{color:var(--brand-electric-blue);font-size:16px;font-weight:500;max-width:600px;margin-bottom:20px}
body[data-page="onsite"] .onsite-orbit-hero h1{max-width:900px;color:var(--brand-deep-purple);font-size:clamp(42px,5.3vw,72px);font-weight:600;line-height:1.03;letter-spacing:-.045em;text-wrap:balance}
body[data-page="onsite"] .onsite-heading-accent{color:var(--brand-brand-blue)}
body[data-page="onsite"] .onsite-orbit-hero-summary{max-width:660px;margin:24px auto;color:var(--brand-muted);font-size:16px;line-height:1.65}
body[data-page="onsite"] .onsite-orbit-hero-actions{gap:12px}
body[data-page="onsite"] .onsite-orbit-stat{position:static;display:inline-flex;gap:8px;align-items:center;min-width:0;margin:24px 8px 0;padding:10px 14px;background:white;border-color:var(--brand-border);border-radius:12px;box-shadow:none}
body[data-page="onsite"] .onsite-proof-row{display:flex;justify-content:center;flex-wrap:wrap;margin-bottom:24px}
body[data-page="onsite"] .onsite-orbit-stat b{color:var(--brand-deep-purple);font-weight:500}
body[data-page="onsite"] .onsite-orbit-stat span{color:var(--brand-muted);font-size:12px}
body[data-page="onsite"] .onsite-orbit-media-row{position:relative;inset:auto;display:block;max-width:none;margin:20px 0 0;padding-block:22px;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
body[data-page="onsite"] .onsite-photo-track{display:flex;width:max-content;animation:onsite-photo-slide 65s linear infinite}
body[data-page="onsite"] .onsite-photo-sequence{display:flex;gap:18px;padding-right:18px}
body[data-page="onsite"] .onsite-orbit-media-card{flex:0 0 clamp(200px,21vw,300px);width:clamp(200px,21vw,300px);height:340px;margin:0;border:0;border-radius:20px;overflow:hidden;transform:none;box-shadow:none}
body[data-page="onsite"] .onsite-orbit-media-card:nth-child(3n+1){transform:perspective(1000px) rotateY(8deg) translateY(10px)}
body[data-page="onsite"] .onsite-orbit-media-card:nth-child(3n+3){transform:perspective(1000px) rotateY(-8deg) translateY(10px)}
body[data-page="onsite"] .onsite-orbit-media-card::after{display:none}
body[data-page="onsite"] .onsite-orbit-media-card img{width:100%;height:100%;object-fit:cover}
body[data-page="onsite"] .onsite-orbit-media-card figcaption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
body[data-page="onsite"] .onsite-orbit-media-row:is(:hover,:focus-within) .onsite-photo-track{animation-play-state:paused}
@keyframes onsite-photo-slide{to{transform:translateX(-50%)}}
/* A dark brand gallery with the existing CMS-owned photos and captions. */
body[data-page="onsite"] .onsite-work{background:var(--brand-deep-purple)}
body[data-page="onsite"] .onsite-work .section-title{color:white}
body[data-page="onsite"] .onsite-work .section-sub{color:rgba(255,255,255,.78)}
body[data-page="onsite"] .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
body[data-page="onsite"] .featured-card{padding:10px;background:white;border:0;border-radius:24px;aspect-ratio:auto}
body[data-page="onsite"] .featured-card img{height:auto;aspect-ratio:16/10;border-radius:16px;object-fit:cover;transition:transform .35s ease}
body[data-page="onsite"] .featured-card span{display:block;position:static;padding:16px 10px 10px;background:none;color:var(--brand-deep-purple);text-align:left;font-size:16px;font-weight:500;border-radius:0}
body[data-page="onsite"] .onsite-intro .philosophy-inner{gap:clamp(28px,5vw,64px);padding:clamp(24px,4vw,44px);border-radius:24px;background:var(--brand-light-gray)}
body[data-page="onsite"] .philosophy-media-main{border-radius:20px;aspect-ratio:4/3;border:0}
body[data-page="onsite"] #included{background:var(--brand-white)}
body[data-page="onsite"] .onsite-pricing-detail{background:var(--brand-deep-purple);border-color:var(--brand-deep-purple);border-radius:24px;box-shadow:none}
body[data-page="onsite"] .onsite-pricing-detail :is(h3,.onsite-pricing-price){color:white}
body[data-page="onsite"] .onsite-pricing-detail :is(p,li,.onsite-pricing-price span){color:rgba(255,255,255,.8)}
body[data-page="onsite"] .onsite-pricing-detail .onsite-pricing-label{color:#86caff}
body[data-page="onsite"] .onsite-pricing-price{font-weight:600;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
body[data-page="onsite"] .onsite-pricing-check{color:#86caff;border-color:rgba(134,202,255,.5);border-radius:8px}
body[data-page="onsite"] .onsite-pricing-option{border-radius:20px;background:var(--brand-off-white);border-color:var(--brand-border);box-shadow:none}
body[data-page="onsite"] .onsite-pricing-option.is-active{background:rgba(0,85,227,.06);border-color:var(--brand-electric-blue)}
body[data-page="onsite"] .onsite-pricing-option-copy b{font-weight:500;color:var(--brand-deep-purple)}
body[data-page="onsite"] .onsite-pricing-option-copy small{white-space:normal;line-height:1.45;color:var(--brand-muted)}
body[data-page="onsite"] .onsite-pricing-option>strong{font-weight:600;color:var(--brand-deep-purple);font-variant-numeric:tabular-nums}
body[data-page="onsite"] .process-grid{gap:20px}
body[data-page="onsite"] .process-step{padding:24px;background:white;border:1px solid var(--brand-border);border-radius:20px}
body[data-page="onsite"] .process-index{display:flex;align-items:center;gap:12px;color:var(--brand-brand-blue);font-size:14px;font-weight:500;margin-bottom:20px}
body[data-page="onsite"] .onsite-step-icon{display:grid;place-items:center;background:var(--brand-deep-purple);color:white;width:48px;height:48px;border-radius:14px}
body[data-page="onsite"] .onsite-step-icon svg{width:23px;height:23px}
body[data-page="onsite"] .process-step h4{font-size:20px;font-weight:600;line-height:1.2;color:var(--brand-deep-purple);margin-bottom:12px;letter-spacing:-.02em}
body[data-page="onsite"] .process-step p{font-size:15px;line-height:1.65;color:var(--brand-muted)}
body[data-page="onsite"] .coverage-panel{padding:clamp(24px,4vw,44px);gap:40px;background:var(--brand-light-gray);border:0;border-radius:24px}
body[data-page="onsite"] .coverage-list :is(span,a){background:white;border:1px solid var(--brand-border);color:var(--brand-deep-purple)}
body[data-page="onsite"] .coverage-note{color:var(--brand-muted)}
body[data-page="onsite"] .coverage-visual{background:var(--brand-off-white);border-color:var(--brand-border);max-width:400px;width:100%;justify-self:center}
body[data-page="onsite"] .coverage-ring{border-color:rgba(0,136,216,.25)}
body[data-page="onsite"] .coverage-center{background:var(--brand-deep-purple);border-radius:22px;font-weight:500;text-transform:none;font-size:13px;letter-spacing:0;width:118px;height:118px}
body[data-page="onsite"] .onsite-faq{background:white}
body[data-page="onsite"] .acc-list{background:var(--brand-off-white);border:1px solid var(--brand-border);border-radius:24px;overflow:hidden}
body[data-page="onsite"] .acc-header{background:transparent;color:var(--brand-deep-purple);padding:22px 24px}
body[data-page="onsite"] .acc-title{font-weight:500;font-size:18px}
body[data-page="onsite"] .acc-chevron{background:white;color:var(--brand-electric-blue);border-color:var(--brand-border)}
body[data-page="onsite"] .acc-panel-inner{color:var(--brand-muted);font-size:16px;line-height:1.65}
body[data-page="onsite"] .final-cta{background:var(--brand-purple-gradient)}
body[data-page="onsite"] .final-cta :is(h2,.btn-ghost){color:white}
body[data-page="onsite"] .final-cta p{font-size:16px;color:rgba(255,255,255,.8)}
body[data-page="onsite"] .final-cta .btn-ghost{border-color:rgba(255,255,255,.3)}
body[data-page="onsite"] .final-cta .glow{display:none}
body[data-page="onsite"] .footer{background:var(--brand-deep-purple);color:white}
body[data-page="onsite"] .footer :is(p,a,.footer-bottom){color:rgba(255,255,255,.75)}
/* Existing project dialog remains a light, readable form on the dark overlay. */
body[data-page="onsite"] .project-modal :is(input,textarea,select){font-size:16px}
@media(max-width:1000px){body[data-page="onsite"] .onsite-pricing-detail-top{display:block}body[data-page="onsite"] .onsite-pricing-price{margin-top:20px;text-align:left}}
@media(max-width:760px){
 body[data-page="onsite"]{--onsite-title:clamp(28px,7.4vw,38px);--onsite-space:40px}
 body[data-page="onsite"] .container{padding-inline:20px}
 body[data-page="onsite"] .onsite-orbit-hero{padding-top:112px;padding-bottom:20px}
 body[data-page="onsite"] .onsite-orbit-hero h1{font-size:clamp(38px,8vw,54px)}
 body[data-page="onsite"] .onsite-orbit-hero-proof{font-size:14px}
 body[data-page="onsite"] .onsite-orbit-hero-summary{font-size:15px}
 body[data-page="onsite"] .onsite-proof-row{gap:8px;margin:20px 20px 0}
 body[data-page="onsite"] .onsite-orbit-stat{margin:0;padding:8px 10px;gap:6px}
 body[data-page="onsite"] .onsite-orbit-media-card{height:260px;border-radius:16px}
 body[data-page="onsite"] .onsite-orbit-media-row{margin-top:12px}
 body[data-page="onsite"] .featured-grid{gap:14px}
 body[data-page="onsite"] .featured-card{border-radius:18px;padding:8px}
 body[data-page="onsite"] .featured-card img{border-radius:12px}
 body[data-page="onsite"] .featured-card span{font-size:14px;padding:12px 6px 6px}
 body[data-page="onsite"] :is(.philosophy-inner,.coverage-panel){grid-template-columns:1fr}
 body[data-page="onsite"] .coverage-panel{gap:24px}
 body[data-page="onsite"] .coverage-visual{max-width:300px}
 body[data-page="onsite"] .onsite-intro .philosophy-inner{padding:24px}
 body[data-page="onsite"] .process-step{padding:20px}
}
@media(max-width:500px){body[data-page="onsite"] .featured-grid{grid-template-columns:1fr}body[data-page="onsite"] .onsite-orbit-stat{display:grid;text-align:center}body[data-page="onsite"] .onsite-orbit-hero-actions{flex-direction:column;align-items:center}body[data-page="onsite"] .onsite-orbit-hero-actions .btn{max-width:100%;width:auto}body[data-page="onsite"] .acc-header{padding:20px}}
@media(prefers-reduced-motion:reduce){body[data-page="onsite"] .onsite-photo-track{animation:none}body[data-page="onsite"] .onsite-orbit-media-row{overflow-x:auto;mask-image:none}body[data-page="onsite"] .onsite-photo-sequence[aria-hidden="true"]{display:none}}
body[data-page="onsite"] .project-modal-card{--surface-glass-bg:var(--brand-off-white);--surface-glass-bg-strong:var(--brand-light-gray);--surface-glass-border:var(--brand-border);background:var(--brand-white);border:1px solid var(--brand-border);border-radius:24px;box-shadow:0 24px 70px rgba(16,0,33,.22);backdrop-filter:none}
body[data-page="onsite"] .project-modal-card h2{color:var(--brand-deep-purple);font-weight:600;line-height:1.12;letter-spacing:-.03em}
body[data-page="onsite"] .project-modal :is(input,textarea,select){background:var(--brand-off-white);color:var(--brand-dark-text);border-color:var(--brand-border)}
body[data-page="onsite"] .project-modal :is(input,textarea,select):focus{outline:2px solid var(--brand-electric-blue);outline-offset:2px}
body[data-page="onsite"] .project-modal ::placeholder{color:var(--brand-muted)}
