/* Comparison only: each normal-flow slot owns its card and its black backdrop. */
.lim-card-stage{position:relative;isolation:isolate;background:#080808}
.lim-card-slot{position:relative;padding:24svh clamp(12px,3vw,48px);display:flow-root;perspective:1800px}
.lim-card-backdrop{position:absolute;inset:0;z-index:-1;pointer-events:none}
.lim-card-backdrop::before{content:'';display:block;position:sticky;top:0;height:100svh;background:url('assets/symbol.svg') right 4vw bottom 5svh / min(48vw,640px) auto no-repeat;filter:invert(1);opacity:.22}
#service .lim-card-slot>.service-scene{position:relative;inset:auto;isolation:isolate;overflow:hidden;background:#fff;color:#202522;border:1px solid #dce2de;max-width:1500px;margin:0 auto;padding-left:clamp(18px,3.5vw,56px);padding-right:clamp(18px,3.5vw,56px);border-radius:var(--lim-radius,36px);box-shadow:0 var(--lim-shadow-y,24px) var(--lim-shadow-blur,60px) #0009;transform-origin:50% var(--lim-origin,0px);transform:translate3d(0,var(--lim-y,0px),0) rotateX(var(--lim-tilt,0deg)) scale(var(--lim-scale,1));backface-visibility:hidden}
#service .lim-card-slot>.service-scene::after{content:none}
#service .lim-card-slot .scene-top,#service .lim-card-slot .demo-note{color:#5b655e}
#service .lim-card-slot .orbital-intro p,#service .lim-card-slot .orbital-offerings p{color:#4c5952}
#service .lim-card-slot .workflow-list>span,#service .lim-card-slot .orbital-stages{color:#526158}
#service .lim-card-slot .workflow-list li{background:#f3f6f3;color:#273c32;border-color:#ccd8ce;box-shadow:inset 0 1px 0 #fff}
#service .lim-card-slot .workflow-list li:before{background:#52715e;box-shadow:none}
#service .lim-card-slot .orbital-streams path{stroke:#5e786740}
#service .lim-card-slot .orbital-streams .flow-particles{stroke:#4d6c5b99}
#service .lim-card-slot .human-review{color:#526158!important}
#service .lim-card-slot .orbital-offerings{border-color:#ccd8ce}
@media(max-width:700px){.lim-card-slot{padding-top:20svh;padding-bottom:20svh;perspective:1200px}.lim-card-backdrop::before{background-size:68vw auto}}
@media(prefers-reduced-motion:reduce){.lim-card-slot{padding-top:45px;padding-bottom:45px}#service .lim-card-slot>.service-scene{transform:none;border-radius:18px;box-shadow:0 15px 40px #0005}}
body.motion-stopped .lim-card-slot,body.light-mode .lim-card-slot{padding-top:45px;padding-bottom:45px}
body.motion-stopped #service .lim-card-slot>.service-scene,body.light-mode #service .lim-card-slot>.service-scene{transform:none;border-radius:18px}
/* Preview-only pearl and chrome. Animation is unchanged. */
#service .lim-card-slot .orbital-sphere{border:1px solid #8f979f;background:radial-gradient(ellipse at 30% 22%,#fff 0%,#fff9 12%,transparent 43%),radial-gradient(ellipse at 73% 78%,#424b58 0%,#8f99a6 21%,#d9dce1 45%,#faf9f6 66%,#a0a7af 85%,#f3f5f7 100%);box-shadow:inset 5px 7px 15px #fff,inset -12px -15px 25px #28313c66,inset 0 0 3px 2px #ffffffc0,16px 25px 35px #24314230,0 3px 7px #26334026}
#service .lim-card-slot .orbital-sphere strong{background:linear-gradient(135deg,#4a535e 12%,#b2bac4 42%,#fff 49%,#596371 56%,#29323d 90%);background-clip:text;color:transparent}
#service .lim-card-slot .orbital-sphere small{color:#333e4b;text-shadow:0 1px 1px #ffffffa0}
#service .lim-card-slot .orbital-ring{border:3px solid #a4adb7;border-top-color:#f8fafc;border-right-color:#626e7b;border-bottom-color:#8b959f;box-shadow:inset 0 1px 1px #fff,0 1px 2px #26344377}
#service .lim-card-slot .orbital-ring i{background:#fff;border:1px solid #74818f;box-shadow:0 1px 5px #34445780}
@media(min-width:1101px){
.lim-card-slot{padding-left:4vw;padding-right:4vw}
#service .lim-card-slot>.service-scene{max-width:none;min-height:80svh;padding-top:38px;padding-bottom:34px;box-sizing:border-box}
#service .lim-card-slot>.orbital-ai{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);column-gap:4%;align-content:center;align-items:center}
#service .lim-card-slot .orbital-intro{grid-column:1;grid-row:1/3}
#service .lim-card-slot .orbital-intro h3{font-size:clamp(42px,4.3vw,70px);margin-bottom:28px}
#service .lim-card-slot .orbital-intro h4{font-size:clamp(27px,2.6vw,40px);line-height:1.5}
#service .lim-card-slot .orbital-intro p{font-size:14px}
#service .lim-card-slot .orbital-workflow{grid-column:2;min-height:330px;padding-bottom:35px;margin:0;grid-template-columns:1fr 1.5fr 1fr;gap:3%}
#service .lim-card-slot .workflow-list>span{font-size:9px;letter-spacing:.02em;margin-bottom:17px}
#service .lim-card-slot .workflow-list ul{gap:12px}
#service .lim-card-slot .workflow-list li{font-size:12px;padding:16px 8px;gap:6px}
#service .lim-card-slot .orbital-sphere strong{font-size:80px}
#service .lim-card-slot .orbital-sphere small{font-size:6px;letter-spacing:.04em}
#service .lim-card-slot .orbital-stages{gap:22px;font-size:8px}
#service .lim-card-slot .human-review{grid-column:2;margin:12px 0 28px!important;font-size:11px!important}
#service .lim-card-slot .orbital-offerings{grid-column:1/-1;padding-top:24px;gap:6%;margin-top:14px}
#service .lim-card-slot .orbital-offerings h5{font-size:23px;margin-bottom:8px}
#service .lim-card-slot .orbital-offerings p{font-size:14px}
#service .lim-card-slot .system-heading{gap:4%;margin-bottom:22px}
#service .lim-card-slot .system-heading h3{font-size:clamp(42px,4.3vw,70px)}
#service .lim-card-slot .system-heading h4{font-size:23px;margin:0 0 10px}
#service .lim-card-slot .system-heading p{font-size:14px;margin:0}
#service .lim-card-slot .system-switch{margin:18px auto}
#service .lim-card-slot .operations-demo,#service .lim-card-slot .salon-demo{margin-bottom:16px}
#service .lim-card-slot .ops-body{padding:18px 24px;gap:12px 24px}
#service .lim-card-slot .ops-heading h4{margin:4px 0;font-size:24px}
#service .lim-card-slot .ops-detail{padding:16px}
#service .lim-card-slot .lab-link{margin:14px 0 10px}
#service .lim-card-slot .system-foot{gap:8px 24px}
#service .lim-card-slot .system-foot>span:first-child{font-size:20px}
}
@media(min-width:1101px){
#service .lim-card-slot .system-heading h3{margin:0;line-height:1}
#service .lim-card-slot .ops-bar{padding:12px 24px}
#service .lim-card-slot .ops-tabs{padding:8px 24px}
#service .lim-card-slot .ops-tabs button{padding:9px 18px;font-size:14px}
#service .lim-card-slot .ops-columns,#service .lim-card-slot .ops-table button{padding:11px 14px}
#service .lim-card-slot .ops-detail h4{margin:6px 0 10px;font-size:18px}
#service .lim-card-slot .ops-detail dl{gap:6px 10px;margin:8px 0;font-size:12px}
#service .lim-card-slot .ops-note{padding:0 24px 12px;margin:0;font-size:11px}
#service .lim-card-slot .salon-bar{padding:12px 24px}
#service .lim-card-slot .salon-toolbar{padding:12px 24px}
#service .lim-card-slot .salon-summary{padding-bottom:12px}
#service .lim-card-slot .salon-reservations button{padding:10px 15px}
#service .lim-card-slot .salon-selected{padding:12px 18px;margin:12px 24px}
#service .lim-card-slot .salon-selected p{margin:6px 0;line-height:1.6}
}
@media(min-width:1101px){
#service .lim-card-slot>.system-scene{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.7fr);column-gap:4%;align-content:center;align-items:start}
#service .lim-card-slot .system-heading{grid-column:1;grid-row:1/4;display:block;margin:0}
#service .lim-card-slot .system-heading h3{font-size:clamp(34px,3.1vw,50px);margin-bottom:30px}
#service .lim-card-slot .system-heading h4{font-size:23px}
#service .lim-card-slot .system-switch{grid-column:2;margin:0 0 16px;gap:10px}
#service .lim-card-slot .system-switch button{font-size:13px;padding:12px 16px}
#service .lim-card-slot [data-system-panel]{grid-column:2;min-width:0}
#service .lim-card-slot .lab-link{grid-column:2;font-size:8px}
#service .lim-card-slot .system-foot{grid-column:1/-1;margin-top:20px;border-top:1px solid #ccd8ce;padding-top:16px}
#service .lim-card-slot .system-foot .demo-note{margin-top:0}
#service .lim-card-slot .ops-body{grid-template-columns:1.2fr 1fr;padding:14px;gap:12px}
#service .lim-card-slot .ops-columns,#service .lim-card-slot .ops-table button{padding:10px 8px;font-size:11px;gap:5px}
#service .lim-card-slot .ops-detail{padding:12px}
#service .lim-card-slot .ops-detail dl{grid-template-columns:60px 1fr;font-size:11px;gap:6px}
}

/* WEB and SNS share the approved shell; their content keeps its own motion layer. */
#service .lim-card-slot>.web-scene,#service .lim-card-slot>.sns-scene{overflow:clip}
#service .lim-card-slot .web-kicker{margin:0 0 24px}
#service .lim-card-slot .web-marquee{margin:24px 0 28px}
#service .lim-card-slot .marquee-heading{padding:0 0 16px}
#service .lim-card-slot .scene-copy{margin-top:24px}
#service .lim-card-slot .scene-copy h3{display:none}
#service .lim-card-slot .scene-copy p,#service .lim-card-slot .sns-copy p{color:#4c5952}
#service .lim-card-slot .service-capabilities{color:#526158;border-color:#ccd8ce}
#service .lim-card-slot .studio-label{color:#526158}
#service .lim-card-slot .studio-timeline{color:#526158;border-color:#ccd8ce}
#service .lim-card-slot .studio-timeline i{background:#ccd8ce}
#service .lim-card-slot .sns-layout{padding-top:0}
#service .lim-card-slot .sns-copy h3{font-size:clamp(34px,4.3vw,62px)}
#service .lim-card-slot .sns-copy h3 br{display:none}
#service .lim-card-slot .sns-copy{max-width:900px}
#service .lim-card-slot .content-studio{margin-top:28px}
@media(min-width:1101px){
#service .lim-card-slot .web-kicker h3{font-size:clamp(42px,4.3vw,70px)}
#service .lim-card-slot .web-kicker{display:flex;align-items:center;justify-content:space-between}
#service .lim-card-slot .marquee-card{width:clamp(340px,32vw,500px)}
#service .lim-card-slot .scene-copy{display:block}
#service .lim-card-slot .scene-copy>div{display:grid;grid-template-columns:1fr 1.2fr;gap:0 6%}
#service .lim-card-slot .scene-copy h4{grid-row:1/3;margin:0;font-size:30px}
#service .lim-card-slot .scene-copy p{margin:0;font-size:14px;max-width:none}
#service .lim-card-slot .service-capabilities{margin-top:16px}
#service .lim-card-slot .sns-copy h4{font-size:30px;margin:24px 0 12px}
#service .lim-card-slot .sns-copy p{font-size:14px}
}
@media(max-width:700px){
#service .lim-card-slot .sns-copy h3{font-size:clamp(26px,7.7vw,43px)}
#service .lim-card-slot .web-kicker h3{font-size:clamp(30px,9vw,50px)}
#service .lim-card-slot .marquee-heading{font-size:9px;gap:8px;flex-wrap:wrap}
#service .lim-card-slot .marquee-heading button{font-size:11px}
#service .lim-card-slot .sns-sample{width:70vw;flex-basis:70vw}
}
#service .lim-card-slot>.service-scene{scroll-margin-top:120px}

/* Requested typography and spacing refinements; preview only. */
#service .lim-card-slot .ai-copy-line{display:block;word-break:normal;overflow-wrap:normal;line-break:strict;text-wrap:pretty}
#service .lim-card-slot .system-heading>div{padding-top:24px}
#service .lim-card-slot .system-heading h4{word-break:normal;line-break:strict;text-wrap:pretty}
#service .lim-card-slot .scene-copy h4{word-break:normal;line-break:strict;text-wrap:balance;line-height:1.65}
#service .lim-card-slot .scene-copy p{line-height:2;text-wrap:pretty;word-break:auto-phrase;line-break:strict}
#service .lim-card-slot .service-capabilities{line-height:1.9}
#service .lim-card-slot .sns-copy{max-width:none}
#service .lim-card-slot .sns-copy h3{word-spacing:.18em}
#service .lim-card-slot .content-studio{margin-top:12px}
#service .lim-card-slot .sns-motion{margin-top:0}
#service .lim-card-slot .sns-pin{align-items:flex-start;padding-top:16px;box-sizing:border-box}
#service .lim-card-slot .sns-rail{padding-top:16px}
@media(min-width:1101px){
#service .lim-card-slot .orbital-intro h3{position:relative;left:-12px;top:-20px}
#service .lim-card-slot .scene-copy>div{grid-template-columns:1fr 1.25fr;gap:0 5%}
#service .lim-card-slot .scene-copy h4{font-size:28px}
#service .lim-card-slot .scene-copy h4 .copy-phrase:first-child{display:inline}
#service .lim-card-slot .scene-copy h4 .copy-phrase:nth-child(2){display:inline}
#service .lim-card-slot .scene-copy h4 .copy-phrase:last-child{display:block}
#service .lim-card-slot .sns-copy p{white-space:nowrap;max-width:none;letter-spacing:0}
}
@media(max-width:700px){
#service .lim-card-slot .orbital-intro h3{position:relative;left:-4px;top:-8px}
#service .lim-card-slot .sns-copy h3{font-size:clamp(23px,7vw,40px);letter-spacing:-.02em}
#service .lim-card-slot .sns-pin{padding-top:0}
#service .lim-card-slot .sns-rail{padding-top:12px}
#service .lim-card-slot .scene-copy h4{margin-bottom:20px}
#service .lim-card-slot .scene-copy p{margin-bottom:18px}
}
#service .lim-card-slot .scene-copy{max-width:none;margin-left:0}
#service .lim-card-slot .sns-copy .service-capabilities{border:0;padding-top:0;margin-top:10px;margin-bottom:0}
@media(min-width:1101px){#service .lim-card-slot .scene-copy h4{white-space:normal}#service .lim-card-slot .scene-copy h4 .copy-phrase:first-child,#service .lim-card-slot .scene-copy h4 .copy-phrase:nth-child(2){white-space:nowrap}}

/* Revision 4: use section-specific selectors to beat the original SNS rules. */
#service #service-ai .orbital-intro h3{left:-24px;top:-64px}
#service #service-system .system-heading>div{padding-top:88px}
#service #service-ai .ai-copy-line{white-space:nowrap}
#service #service-web .scene-copy h4{white-space:normal;text-wrap:balance}
#service #service-sns .content-studio{margin-top:12px}
#service #service-sns .sns-motion{height:auto;margin-top:0}
#service #service-sns .sns-pin{position:relative;top:auto;height:auto;min-height:0;padding:0}
#service #service-sns .sns-rail{padding:16px 0 12px}
@media(min-width:701px){
.lim-card-slot:has(>#service-sns){padding-bottom:24svh;height:calc(var(--sns-card-height,712px) + 124svh)}
#service .lim-card-slot>#service-sns{position:sticky;top:100px;min-height:0;padding-top:28px;padding-bottom:24px}
#service #service-sns .sns-sample-grid{max-width:1040px;margin:auto;gap:20px}
#service #service-sns .sns-sample{width:100%}
#service #service-sns .sns-copy h4{margin-top:16px}
}
@media(max-width:700px){
#service #service-ai .orbital-intro{padding-top:22px}
#service #service-ai .orbital-intro h3{left:-10px;top:-28px}
#service #service-ai .ai-copy-line{white-space:normal}
#service #service-system .system-heading>div{padding-top:56px}
#service #service-sns .content-studio{margin-top:6px}
#service #service-sns .sns-rail{padding:8px 0 10px}
}
@media(prefers-reduced-motion:reduce){
.lim-card-slot:has(>#service-sns){padding-bottom:45px;height:auto}
#service .lim-card-slot>#service-sns{position:relative;top:auto}
}
body.motion-stopped .lim-card-slot:has(>#service-sns),body.light-mode .lim-card-slot:has(>#service-sns){padding-bottom:45px;height:auto}
body.motion-stopped #service .lim-card-slot>#service-sns,body.light-mode #service .lim-card-slot>#service-sns{position:relative;top:auto}

#service #service-system .system-phrase,#service #service-web .web-phrase{display:inline-block;white-space:nowrap}
@media(max-width:350px){#service #service-web .scene-copy h4{font-size:19px}}
