/* SmartMod EMS page — page-specific styles */
.nav-highlight { color: var(--c-inner) !important; font-weight: 600 !important; }
.service-container-wide { max-width: 1220px; padding: 0 3rem; }
.breadcrumb { position: relative; z-index: 50; padding-top: 5rem; border-bottom: 1px solid rgba(255,255,255,.04); }
.breadcrumb-list { display:flex; align-items:center; flex-wrap:wrap; gap:.4rem; list-style:none; padding:.7rem 0; font-size:.74rem; color:rgba(255,255,255,.28); }
.breadcrumb-list a { color:rgba(255,255,255,.4); } .breadcrumb-list a:hover { color:rgba(255,255,255,.75); } .breadcrumb-list [aria-current=page] { color:var(--c-inner); }
.ems-hero { position:relative; overflow:hidden; padding:5.5rem 0 6rem; border-bottom:1px solid var(--border); }
.ems-hero-glow { position:absolute; width:900px; height:560px; top:-160px; right:5%; background:radial-gradient(ellipse,rgba(74,158,255,.11),transparent 68%); pointer-events:none; }
.ems-hero-inner { display:grid; grid-template-columns:1.12fr .88fr; gap:4rem; align-items:center; }
.ems-hero-copy { display:flex; flex-direction:column; gap:1.15rem; position:relative; z-index:1; }
.ems-hero-copy .hero-heading { max-width:24ch; font-size:clamp(2.35rem,3.5vw,3.7rem); line-height:1.06; }
.ems-hero-copy .page-hero-lead { max-width:56ch; } .ems-hero-copy .page-hero-body { max-width:58ch; }
.ems-hero-visual { min-height:390px; position:relative; border:1px solid rgba(74,158,255,.18); border-radius:24px; background:radial-gradient(circle at 50% 50%,rgba(74,158,255,.12),transparent 36%),rgba(255,255,255,.018); box-shadow:0 24px 80px rgba(0,0,0,.45), inset 0 0 80px rgba(45,212,191,.03); }
.ems-orb { position:absolute; z-index:2; width:118px; height:118px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-direction:column; text-align:center; font-size:.74rem; font-weight:700; letter-spacing:.08em; color:#fff; border:1px solid currentColor; box-shadow:0 0 28px currentColor; background:#080a10; }
.ems-orb small { margin-top:.35rem; font-size:.58rem; font-weight:500; letter-spacing:0; color:rgba(255,255,255,.48); }.ems-orb-sun{top:12%;left:12%;color:#fbbf24}.ems-orb-data{bottom:12%;left:9%;color:#a78bfa}.ems-orb-ems{top:34%;right:28%;width:145px;height:145px;color:#4a9eff;box-shadow:0 0 45px rgba(74,158,255,.65)}.ems-orb-effect{bottom:12%;right:8%;color:#2dd4bf}.ems-visual-line{position:absolute;height:1px;transform-origin:left center;border-top:1px dashed rgba(255,255,255,.32);z-index:1}.line-one{width:39%;top:34%;left:26%;transform:rotate(18deg)}.line-two{width:37%;bottom:31%;left:27%;transform:rotate(-17deg)}.line-three{width:31%;bottom:27%;right:18%;transform:rotate(-33deg)}
.ems-problem-grid { grid-template-columns:repeat(3,1fr); }.ems-card-index{font-size:.7rem;color:var(--c-inner);letter-spacing:.12em;font-weight:700}.ems-problem-grid .dk-card{gap:.7rem}
.ems-compare-section,.ems-case,.ems-benefits { background:rgba(255,255,255,.012); }.compare-card{min-height:255px;gap:1.15rem}.compare-card-head{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin-bottom:.15rem}.compare-card-head h3{margin:0;min-width:0}.compare-badge{flex-shrink:0}.compare-card>p{line-height:1.72}.compare-badge.muted{color:rgba(255,255,255,.4);background:rgba(255,255,255,.06)}.ems-list{list-style:none;display:flex;flex-direction:column;gap:.72rem;margin-top:auto;padding-top:.15rem}.ems-list li{font-size:.79rem;line-height:1.55;color:rgba(255,255,255,.43);padding-left:1.1rem;position:relative}.ems-list li:before{content:'•';position:absolute;left:0;color:var(--c-outer)}
.ems-flow{display:grid;grid-template-columns:1fr auto 1.15fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:.65rem}.ems-flow-step{padding:1.25rem 1rem;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.025)}.ems-flow-step.active{border-color:rgba(74,158,255,.45);background:rgba(74,158,255,.07)}.ems-flow-step b{color:var(--c-inner);font-size:.68rem;letter-spacing:.1em}.ems-flow-step h3{font-size:.9rem;margin:.7rem 0 .35rem}.ems-flow-step p{font-size:.76rem;line-height:1.55;color:rgba(255,255,255,.4)}.ems-flow-arrow{align-self:center;color:rgba(255,255,255,.25);font-size:1.4rem}
.ems-spec-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.ems-spec-card,.ems-case-note{padding:1.7rem;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.025)}.ems-spec-card h3,.ems-case-note h3{font-size:1rem;margin-bottom:1rem}.ems-spec-card dl{display:flex;flex-direction:column}.ems-spec-card dl div{display:flex;justify-content:space-between;gap:1.2rem;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.06)}.ems-spec-card dt{font-size:.77rem;color:rgba(255,255,255,.36)}.ems-spec-card dd{text-align:right;font-size:.78rem;color:rgba(255,255,255,.78)}.ems-case-note{background:linear-gradient(135deg,rgba(74,158,255,.07),rgba(45,212,191,.03))}.ems-note-mark{display:block;color:var(--c-outer);font-size:1.6rem;margin-bottom:1rem}.ems-case-note p{font-size:.82rem;line-height:1.75;color:rgba(255,255,255,.47)}.ems-case-note p+p{margin-top:.85rem}
.ems-screenshot-section{border-top:1px solid var(--border)}.ems-figure{margin:0 auto;max-width:1120px}.ems-image-button{display:block;width:100%;padding:0;border:0;border-radius:16px;background:#0d0d0d;overflow:hidden;cursor:zoom-in;position:relative;box-shadow:0 24px 64px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.08)}.ems-image-button img{display:block;width:100%;height:auto}.ems-zoom{position:absolute;right:1rem;bottom:1rem;padding:.45rem .75rem;border-radius:100px;background:rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.18);font-size:.68rem;color:rgba(255,255,255,.7);opacity:0;transition:opacity .2s}.ems-image-button:hover .ems-zoom,.ems-image-button:focus-visible .ems-zoom{opacity:1}.ems-figure figcaption{padding:1rem .25rem 0;font-size:.8rem;line-height:1.65;color:rgba(255,255,255,.43)}.ems-figure figcaption strong{color:rgba(255,255,255,.8)}.ems-callouts{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1120px;margin:1.5rem auto 0}.ems-callouts article{padding:1.25rem;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid var(--border)}.ems-callouts span{font-size:.7rem;color:var(--c-inner);font-weight:700;letter-spacing:.1em}.ems-callouts h3{font-size:.88rem;margin:.55rem 0 .35rem}.ems-callouts p{font-size:.77rem;line-height:1.6;color:rgba(255,255,255,.4)}
.ems-day-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}.ems-day-grid article{padding:1.25rem 1rem;border-top:2px solid var(--c-inner);background:rgba(255,255,255,.025);border-radius:0 0 13px 13px}.ems-day-grid span{font-size:.67rem;color:var(--c-inner);font-weight:700;letter-spacing:.04em}.ems-day-grid h3{font-size:.86rem;margin:.7rem 0 .4rem}.ems-day-grid p{font-size:.76rem;line-height:1.65;color:rgba(255,255,255,.4)}
.integration-band{display:flex;justify-content:center;align-items:center;gap:.8rem;flex-wrap:wrap;padding:1.4rem;border-radius:16px;border:1px solid rgba(74,158,255,.18);background:rgba(74,158,255,.04);color:rgba(255,255,255,.25)}.integration-chip{padding:.65rem .9rem;border-radius:100px;border:1px solid rgba(74,158,255,.25);color:var(--c-inner);font-size:.78rem;background:rgba(74,158,255,.06)}.integration-chip:hover{border-color:var(--c-inner)}.ems-inline-note{max-width:72ch;margin:1rem auto 0;text-align:center;font-size:.78rem;line-height:1.65;color:rgba(255,255,255,.35)}.ems-disclosure{max-width:900px;margin:1.1rem auto 0;font-size:.72rem;line-height:1.65;color:rgba(255,255,255,.25);text-align:center}
.ems-benefit-grid,.ems-fit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.ems-fit-grid{grid-template-columns:repeat(3,1fr)}.ems-benefit-grid article,.ems-fit-grid article{padding:1.35rem;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.025)}.ems-benefit-grid h3,.ems-fit-grid h3{font-size:.88rem;margin-bottom:.55rem}.ems-benefit-grid p,.ems-fit-grid p{font-size:.77rem;line-height:1.65;color:rgba(255,255,255,.4)}.ems-caveat{max-width:75ch;margin:1.5rem auto 0;text-align:center;font-size:.76rem;line-height:1.65;color:rgba(255,255,255,.28)}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;list-style:none}.process-grid li{padding:1.35rem;border-left:1px solid rgba(74,158,255,.4);background:rgba(255,255,255,.025)}.process-grid b{font-size:.7rem;color:var(--c-inner)}.process-grid h3{font-size:.88rem;margin:.7rem 0 .45rem}.process-grid p{font-size:.77rem;color:rgba(255,255,255,.4);line-height:1.6}
.faq-section{border-top:1px solid var(--border)}.faq-list{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:.65rem}.faq-item{border-radius:12px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);overflow:hidden}.faq-item[open]{border-color:rgba(74,158,255,.3)}.faq-question{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.4rem;cursor:pointer;list-style:none;font-size:.85rem;color:rgba(255,255,255,.78)}.faq-question::-webkit-details-marker{display:none}.faq-question span{color:var(--c-inner);font-size:1.1rem}.faq-answer{padding:0 1.4rem 1.3rem;font-size:.8rem;line-height:1.75;color:rgba(255,255,255,.43)}.faq-answer a{color:var(--c-inner)}
.ems-lightbox{display:flex;position:fixed;inset:0;z-index:200;align-items:center;justify-content:center;padding:2rem;background:rgba(0,0,0,.92);opacity:0;pointer-events:none;transition:opacity .2s}.ems-lightbox.open{opacity:1;pointer-events:auto}.ems-lightbox img{max-width:96vw;max-height:90vh;width:auto;height:auto;object-fit:contain;box-shadow:0 20px 80px rgba(0,0,0,.8)}.ems-lightbox-close{position:absolute;top:1rem;right:1.25rem;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:1.6rem;cursor:pointer}
@media (max-width:980px){.ems-hero-inner{grid-template-columns:1fr;gap:3rem}.ems-hero-copy .hero-heading{max-width:20ch}.ems-hero-visual{min-height:340px;max-width:650px}.ems-flow{grid-template-columns:1fr 1fr;gap:1rem}.ems-flow-arrow{display:none}.ems-day-grid{grid-template-columns:repeat(3,1fr)}.ems-benefit-grid,.ems-fit-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:860px){.service-container-wide{padding:0 1.25rem}.ems-problem-grid,.ems-callouts{grid-template-columns:1fr}.ems-spec-layout{grid-template-columns:1fr}.ems-day-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.breadcrumb{padding-top:4.5rem}.ems-hero{padding:3.2rem 0 4rem}.ems-hero-copy .hero-heading{font-size:clamp(2rem,10vw,3rem)}.ems-hero-visual{min-height:300px}.ems-orb{width:88px;height:88px;font-size:.62rem}.ems-orb small{font-size:.48rem}.ems-orb-ems{width:112px;height:112px;right:24%}.ems-flow,.ems-day-grid,.ems-benefit-grid,.ems-fit-grid,.process-grid{grid-template-columns:1fr}.ems-spec-card dd{max-width:58%;font-size:.72rem}.ems-lightbox{padding:.5rem}.ems-lightbox img{max-width:100vw;max-height:82vh}.ems-zoom{opacity:1;font-size:.6rem}}
