/* Shared studio lighting. Existing semantic illustrations and interactions stay intact. */
.feature-card__plus{position:relative;padding:0;font-size:0;line-height:0;box-sizing:border-box}
.feature-card__plus svg{display:block;width:20px;height:20px;overflow:visible;flex:none}.feature-card__plus path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.feature-intro{grid-template-columns:1fr!important}.feature-intro h2{max-width:800px}
.feature-card{box-shadow:inset 0 1px #ffffffb0,0 1px 0 #0009;perspective:1400px}
.feature-card--phone{background:radial-gradient(ellipse at 72% 48%,#dce5f866,transparent 62%),#fafcff}.feature-card--email{background:radial-gradient(ellipse at 10% 48%,#ffffffdd,transparent 70%),#e1e7f1}.feature-card--agent{background:radial-gradient(ellipse at 75% 85%,#a4bdca55,transparent 65%),#eaf0f3}.feature-card--invoice{background:linear-gradient(135deg,#fcfdff,#e4e9f2)}.feature-card--visibility{background:radial-gradient(ellipse at 60% 80%,#bdc9e477,transparent 67%),#edf1f7}.feature-card--admin{background:radial-gradient(ellipse at 75% 5%,#ed6251,transparent 70%),linear-gradient(130deg,#ce2b20,#b5221a)}
.feature-art,.catalogue-art{perspective:1000px;isolation:isolate}.feature-art>svg{transform:rotateX(var(--cinema-rx,0deg)) rotateY(var(--cinema-ry,0deg));transition:transform .65s cubic-bezier(.16,1,.3,1);transform-style:preserve-3d}
.feature-art::after,.catalogue-art::after{content:"";position:absolute;inset:7% -35% 12%;pointer-events:none;background:linear-gradient(112deg,transparent 32%,#ffffff42 44%,#ffffff08 50%,transparent 61%);transform:translateX(-42%);opacity:0;mix-blend-mode:screen;animation:studio-reflection 7.2s ease-in-out infinite}
.feature-art .cv-float,.catalogue-art .cv-float{animation:studio-object 7.2s cubic-bezier(.4,0,.15,1) infinite;transform-box:fill-box;transform-origin:center}.feature-art .cv-float--later,.catalogue-art .cv-float--later{animation:studio-result 7.2s cubic-bezier(.16,1,.3,1) infinite}.feature-art .cv-floating-label,.catalogue-art .cv-floating-label{animation:studio-result 7.2s cubic-bezier(.16,1,.3,1) infinite}
.feature-art .cv-envelope--back,.catalogue-art .cv-envelope--back{animation:studio-envelope-back 7.2s cubic-bezier(.3,0,.2,1) infinite}.feature-art .cv-envelope--front,.catalogue-art .cv-envelope--front{animation:studio-envelope-front 7.2s cubic-bezier(.3,0,.2,1) infinite}.feature-art .cv-document-stack,.catalogue-art .cv-document-stack{animation:studio-documents 7.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.feature-art .cv-agent-answer,.catalogue-art .cv-agent-answer{animation:studio-result 7.2s cubic-bezier(.16,1,.3,1) infinite}
.feature-art .cv-scan,.feature-art .cv-scan-glow,.catalogue-art .cv-scan,.catalogue-art .cv-scan-glow{animation:studio-scan 7.2s ease-in-out infinite}.feature-art .cv-highlight,.catalogue-art .cv-highlight{animation:studio-highlight 7.2s ease-in-out infinite}.feature-art .cv-wave,.catalogue-art .cv-wave{filter:drop-shadow(0 0 3px #d7654560)}
@keyframes studio-object{0%,100%{translate:0 5px;rotate:1deg}18%,40%{translate:-3px -10px;rotate:-2deg}62%,82%{translate:2px -2px;rotate:.5deg}}@keyframes studio-result{0%,23%{translate:12px 15px;scale:.96;opacity:.45}45%,82%{translate:0 -7px;scale:1;opacity:1}100%{translate:12px 15px;scale:.96;opacity:.45}}
@keyframes studio-envelope-back{0%,100%{translate:-25px 15px;rotate:-6deg;opacity:.65}20%,45%{translate:-3px -15px;rotate:2deg;opacity:1}68%{translate:-14px -3px;rotate:-3deg;opacity:.8}}@keyframes studio-envelope-front{0%,100%{translate:0 8px;rotate:0deg}30%,45%{translate:0 -17px;rotate:-6deg}72%{translate:8px 3px;rotate:3deg}}
@keyframes studio-documents{0%,100%{translate:0 4px;rotate:-1deg}25%,48%{translate:-10px -8px;rotate:-3deg}70%{translate:1px -3px;rotate:1deg}}
@keyframes studio-scan{0%,20%{translate:0 -28px;opacity:0}28%{opacity:1}51%{translate:0 133px;opacity:1}60%,100%{translate:0 133px;opacity:0}}@keyframes studio-highlight{0%,35%{opacity:.2}55%,85%{opacity:1}100%{opacity:.2}}@keyframes studio-reflection{0%,10%{transform:translateX(-42%);opacity:0}30%{opacity:.6}65%{opacity:.4}85%,100%{transform:translateX(42%);opacity:0}}
[data-cinema=paused] *,[data-cinema=paused]::after,body.feature-dialog-open .feature-card .feature-art::after,[data-feature-motion=paused] .feature-art::after,[data-catalogue-motion=paused] .catalogue-art::after{animation-play-state:paused!important}
.service-case-stage,.service-case-viewport,.scene-stage{perspective:1200px}.service-page .scene-card,.service-page .case-card{border-color:#c8d2df;box-shadow:inset 0 1px #fff,0 3px 0 -1px #bbc6d7,0 5px 0 -2px #8390a5,0 21px 35px -22px #1c315a80;background-image:linear-gradient(125deg,#ffffff88,transparent 44%,#b5c9e118)}
.service-page .scene-stage::before{content:"";position:absolute;inset:12% 0 0;background:radial-gradient(ellipse at 50% 65%,#b3c5df24,transparent 65%);pointer-events:none;z-index:-1}
.home-dimension .workflow-floor{background:linear-gradient(125deg,#ffffffcc,#d5dfea44 55%,#ffffff77);border-color:#c7d1de;box-shadow:inset 0 1px #fff,0 3px 0 #b8c3d4,0 7px 0 -2px #9caac0,0 32px 65px -25px #20375738}.home-dimension .workflow-tool{box-shadow:inset 0 1px #fff,0 4px 0 -1px #c3cddc,0 8px 0 -3px #a7b4c8,0 28px 35px -21px #20385860}.home-dimension .workflow-theatre{background:radial-gradient(ellipse at 45% 20%,#fff 0,transparent 62%)}
/* A compact calculator in working time and CHF, from the visitor's own assumptions. */
.time-controls{margin-block:28px 20px}.time-control{margin-bottom:23px}.time-return{padding:35px 29px 27px;min-height:0;overflow:hidden}.time-dial{width:440px;height:440px;top:-210px;left:50%;translate:-50% 0;opacity:.23}.time-return__eyebrow{font-size:.77rem;margin-bottom:14px}.time-return__value{margin:0}.time-return__value strong{font-size:clamp(3.8rem,6vw,6.5rem);line-height:1.1}.time-return__value>span{font-size:.69rem;margin-top:8px}.time-return__equation{font-size:.7rem;margin:10px 0 24px}.time-money{position:relative;width:100%;text-align:left}.time-money>p{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid #ffffff28;font-size:.76rem;margin:0}.time-money>p>span{font-size:.65rem;color:#a8b8ca}.time-money dl{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0}.time-money dl>div{padding:20px 13px 17px 0;min-width:0;border-bottom:1px solid #ffffff1b}.time-money dl>div:nth-child(even){padding-left:19px;border-left:1px solid #ffffff1b}.time-money dt{font-size:.65rem;color:#bbc7d6}.time-money dd{font-size:clamp(1.6rem,2.6vw,2.8rem);font-variant-numeric:tabular-nums;letter-spacing:-.035em;margin:5px 0 4px;line-height:1.1;color:#f5f9ff}.time-money small{color:#91b69f;font-size:.67rem}.time-return__link{margin-top:24px;font-size:.72rem;min-height:44px}.time-section__copy .time-assumption{font-size:.7rem;line-height:1.6}.time-return[data-foil]::before{width:34px;height:42px;top:23px;right:22px;opacity:.65}
/* Trust: a calm material surface, with the content in a crisp panel. */
.home-dimension .governance-section{background:linear-gradient(110deg,#f9fafc,#eef1f6);padding-block:clamp(70px,7vw,104px)}
.governance-section::before{background-image:none;background:radial-gradient(ellipse at 9% 70%,#c6d5ee3d,transparent 65%);mask-image:none;opacity:1}.governance-section::after{content:"";position:absolute;pointer-events:none;width:54%;height:125%;left:-22%;top:-8%;border:1px solid #bac7dc66;border-radius:50%;box-shadow:0 0 0 30px #b8c4d00a,0 0 0 62px #b8c4d00a;transform:rotate(-24deg)}
.governance-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(35px,5vw,78px);align-items:center;z-index:1}.governance-copy h2{font-size:clamp(2.4rem,4vw,4.4rem)}.governance-copy>p:not(.section-label){font-size:1rem;max-width:480px}.trust-questions{border:1px solid #d6dde8;border-radius:18px;background:#ffffffed;padding:0 27px;box-shadow:inset 0 1px #fff,0 20px 55px -35px #18375950}.trust-questions details{border-top:0;border-bottom:1px solid #e1e6ed;padding:0}.trust-questions details:last-child{border-bottom:0}.trust-questions summary{padding:23px 0;font-size:.94rem;gap:17px}.trust-questions details>p{padding:0 35px 24px 0;font-size:.86rem;line-height:1.65;margin:0}.trust-questions summary>span{position:relative;font-size:0;width:25px;height:25px;flex:none;display:block;border-radius:50%;border:1px solid #d8e0eb}.trust-questions summary>span::before,.trust-questions summary>span::after{content:"";position:absolute;width:9px;height:1px;left:50%;top:50%;background:currentColor;transform:translate(-50%,-50%)}.trust-questions summary>span::after{transform:translate(-50%,-50%) rotate(90deg)}
/* The final red surface uses soft specular ribbons, rather than a visible grid. */
.home-dimension .final-cta,.service-page .final-cta{background:radial-gradient(ellipse at 15% 15%,#e4533e44,transparent 56%),linear-gradient(125deg,#b4261b,#d93423 52%,#ac241c);isolation:isolate}.home-dimension .final-cta__signal{opacity:1;inset:-35%;transform:rotate(-16deg);display:block;filter:none;z-index:0}.home-dimension .final-cta__signal span{position:absolute;width:110%;height:35%;border:1px solid #ffbc9852;border-radius:50%;background:linear-gradient(175deg,#ffc8a511,transparent 45%,#6712090a);box-shadow:inset 0 1px 2px #ffe4bf35,0 12px 35px -10px #690f0740;animation:finish-ribbon 18s ease-in-out infinite alternate}.home-dimension .final-cta__signal span:nth-child(1){top:0;left:-20%}.home-dimension .final-cta__signal span:nth-child(2){top:22%;left:35%;opacity:.52;animation-delay:-8s}.home-dimension .final-cta__signal span:nth-child(3){top:55%;left:-40%;opacity:.38;animation-delay:-12s}.home-dimension .final-cta__signal span:nth-child(n+4){display:none}.final-cta::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:repeating-linear-gradient(110deg,#ffffff06 0 .5px,transparent .5px 3px);opacity:.34}.final-cta__inner{z-index:1}.home-dimension .final-cta .button{box-shadow:0 1px 1px #fff8,inset 0 -1px #bdc4d2,0 12px 30px -15px #450c0780}
@keyframes finish-ribbon{from{translate:-1.5% 0;rotate:-1deg}to{translate:1.5% 3%;rotate:2deg}}
@media(max-width:900px){.governance-grid{grid-template-columns:1fr}.trust-questions{max-width:680px;width:100%;box-sizing:border-box}.time-return{max-width:580px;padding:36px 30px}.time-money dd{font-size:2.5rem}.time-section__inner{gap:32px}.time-controls{max-width:620px}}
@media(max-width:600px){.time-return{padding:29px 22px}.time-return__value strong{font-size:4.8rem}.time-money dd{font-size:2rem}.time-return__link{font-size:.64rem}.time-section__copy .time-assumption{font-size:.67rem}.time-control label{font-size:.75rem}.time-control{grid-template-columns:minmax(0,1fr) auto;column-gap:14px}.trust-questions{padding-inline:21px}.trust-questions summary{font-size:.88rem}.trust-questions details>p{font-size:.81rem;padding-right:12px}.governance-copy h2{font-size:2.6rem}.home-dimension .final-cta{padding-block:78px}.home-dimension .final-cta h2{font-size:clamp(2.5rem,10vw,3.5rem)}}
@media(max-width:360px){.time-return{padding-inline:16px}.time-money dd{font-size:1.6rem}.time-money dl>div:nth-child(even){padding-left:13px}.time-return__value strong{font-size:4rem}.time-return__link{font-size:.57rem}.governance-copy h2{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){.feature-art *,.catalogue-art *,.feature-art::after,.catalogue-art::after,.final-cta__signal span{animation:none!important;transition:none!important}.feature-art>svg{transform:none!important}.feature-art::after,.catalogue-art::after{display:none}}
.time-money dd{font-size:clamp(1rem,calc(2.5rem - (var(--money-digits,3) - 3)*.15rem),2.5rem)}
@media(max-width:600px){.time-money dd{font-size:clamp(1rem,calc(2rem - (var(--money-digits,3) - 3)*.14rem),2rem)}}
[data-time-money-announcement]{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.time-controls{gap:16px}.time-control{margin-bottom:0}
/* Precision tooling: a single edited field fans out to three authorised tools. */
.precision-tools{overflow:visible}.precision-tools .precision-assembly{transform-origin:50% 50%}.precision-flow path{stroke-dasharray:18 120;stroke-dashoffset:120;animation:precision-input-flow 8s cubic-bezier(.4,0,.2,1) infinite}.precision-flow path.precision-flow--out{animation-name:precision-output-flow}.precision-flow .precision-delay-1{animation-delay:.18s}.precision-flow .precision-delay-2{animation-delay:.36s}
.precision-ring{transform-origin:294px 150px;animation:precision-turn 8s cubic-bezier(.4,0,.2,1) infinite}.precision-heart{animation:precision-heartbeat 8s ease infinite}.precision-check{stroke-dasharray:1;animation:precision-check-in 8s ease infinite}.precision-output-1 .precision-check{animation-delay:.18s}.precision-output-2 .precision-check{animation-delay:.36s}.precision-output{animation:precision-receive 8s ease infinite;transform-box:fill-box;transform-origin:center}.precision-output-1{animation-delay:.18s}.precision-output-2{animation-delay:.36s}.precision-cursor{animation:precision-type 8s steps(1) infinite}.precision-delivered{animation:precision-done 8s ease infinite}.precision-field{animation:precision-edit 8s ease infinite}
@keyframes precision-input-flow{0%,15%{stroke-dashoffset:120;opacity:0}17%{opacity:1}31%{stroke-dashoffset:-18;opacity:1}34%,100%{stroke-dashoffset:-18;opacity:0}}
@keyframes precision-output-flow{0%,38%{stroke-dashoffset:120;opacity:0}40%{opacity:1}58%{stroke-dashoffset:-18;opacity:1}61%,100%{stroke-dashoffset:-18;opacity:0}}
@keyframes precision-turn{0%,20%{transform:rotate(0);opacity:.4}42%{opacity:1}60%,100%{transform:rotate(360deg);opacity:.4}}
@keyframes precision-heartbeat{0%,23%,63%,100%{fill:#c9362b}38%,47%{fill:#ff7561}}
@keyframes precision-check-in{0%,53%{stroke-dashoffset:1;opacity:0}64%,91%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:.25}}
@keyframes precision-receive{0%,50%,100%{translate:0 0}58%{translate:0 -3px}70%{translate:0 0}}
@keyframes precision-type{0%,4%,10%,16%{opacity:1}7%,13%,23%,100%{opacity:0}}
@keyframes precision-done{0%,58%{opacity:.3}70%,92%{opacity:1}100%{opacity:.3}}
@keyframes precision-edit{0%,6%{fill:#fff;stroke:#d9e1eb}14%,85%{fill:#fff0ec;stroke:#e29a8d}100%{fill:#fff;stroke:#d9e1eb}}
[data-cinema=paused] .precision-tools *{animation-play-state:paused!important}
/* Annual value is the visual priority; shorter periods stay comparable. */
.time-return__value strong{font-size:clamp(3rem,4.4vw,4.8rem)}.time-return__eyebrow{margin:0 0 10px}.time-return__equation{margin-bottom:21px}.time-return::before{display:none}
.time-annual{position:relative;isolation:isolate;box-sizing:border-box;container-type:inline-size;width:100%;padding:24px 25px 17px;text-align:left;border-radius:12px;background:#fff;color:#16191f;box-shadow:0 2px 0 #bac3ce,0 15px 30px -20px #000b;border:1px solid #e2e7ee;margin-bottom:24px;overflow:hidden}
.time-annual::after{content:"";position:absolute;right:0;top:0;width:8px;height:100%;background:#d52b1e}
.time-annual__label{font-size:.69rem;color:#647184}.time-annual__amount{display:flex;align-items:baseline;gap:10px;margin:11px 0 6px;white-space:nowrap;line-height:1}.time-annual__amount strong{font-size:clamp(2.4rem,calc(128cqw / var(--money-digits,6)),6.6rem);letter-spacing:-.06em;font-weight:600;font-variant-numeric:tabular-nums;color:#c72a20}.time-annual__amount>span{font-size:clamp(1rem,4cqw,1.4rem);font-weight:550;color:#c72a20}.time-annual__caption{margin:0;font-size:clamp(.88rem,3.5cqw,1.2rem);letter-spacing:-.02em}.time-annual__foot{display:flex;justify-content:space-between;gap:14px;align-items:baseline;border-top:1px solid #e4e8ee;padding-top:15px;margin-top:23px;font-size:.58rem;color:#68778a}.time-annual__foot b{font-weight:600;color:#32445b;font-size:.73rem}
.time-money dl{grid-template-columns:repeat(3,minmax(0,1fr))}.time-money dl>div{padding:15px 10px 12px 0}.time-money dl>div+div{border-left:1px solid #ffffff1b;padding-left:14px}.time-money dd{font-size:clamp(.9rem,calc(2rem - (var(--money-digits,3) - 3)*.17rem),2rem)}
@media(max-width:600px){.time-annual{padding:22px 17px 16px}.time-annual__amount{gap:7px}.time-annual__amount strong{font-size:clamp(1.6rem,calc(128cqw / var(--money-digits,6)),4.6rem)}.time-annual__foot{font-size:.5rem;gap:8px}.time-annual__foot b{font-size:.66rem}.time-money dl>div+div{padding-left:10px}.time-money dt{font-size:.55rem}.time-money dd{font-size:clamp(.78rem,calc(1.55rem - (var(--money-digits,3) - 3)*.14rem),1.55rem)}.time-money small{font-size:.57rem}.time-return__value strong{font-size:3.4rem}}
@media(prefers-reduced-motion:reduce){.precision-tools *{animation:none!important}.precision-check{stroke-dashoffset:0}.precision-flow{display:none}}
.feature-art:has(.precision-tools)::after,.catalogue-art:has(.precision-tools)::after{display:none}
