
/* SuniDMI secondary pages: service hubs, service detail, case studies, legal */
.detail-body{background:radial-gradient(circle at 10% 0,rgba(138,71,255,.10),transparent 25%),radial-gradient(circle at 90% 10%,rgba(85,214,255,.08),transparent 22%),var(--bg)}
.detail-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(18px)}
.detail-nav{min-height:72px;display:flex;align-items:center;justify-content:center;gap:18px;position:relative;flex-wrap:nowrap}.detail-nav .nav-brand{margin:0}.detail-nav .nav-brand img{width:160px;height:54px}.detail-links{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.detail-links a{font-size:.9rem;color:var(--muted);padding:8px 10px;border-radius:999px}.detail-links a:hover{color:var(--gold);background:var(--surface-2)}.detail-menu-btn{display:none}
.detail-hero{padding:132px 0 74px;position:relative;overflow:hidden}.detail-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 20%,rgba(246,183,60,.10),transparent 30%),radial-gradient(circle at 14% 70%,rgba(85,214,255,.08),transparent 28%);pointer-events:none}.detail-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;position:relative}.detail-title{font-size:clamp(2.7rem,6vw,5.8rem);line-height:.94;letter-spacing:-.055em;margin:.5rem 0 1rem}.detail-lead{font-size:1.08rem;color:var(--muted);max-width:780px}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.detail-visual{min-height:420px;border-radius:28px;overflow:hidden;background:linear-gradient(145deg,var(--surface-solid),var(--surface-2));border:1px solid var(--line);box-shadow:var(--shadow);position:relative}.detail-visual img{width:100%;height:100%;min-height:420px;object-fit:cover}.detail-visual.logo-visual{display:grid;place-items:center;padding:44px}.detail-visual.logo-visual img{width:min(520px,80%);height:auto;min-height:0;object-fit:contain;filter:drop-shadow(0 18px 45px rgba(0,0,0,.35))}
.detail-section{padding:76px 0;border-top:1px solid var(--line)}.detail-section.alt{background:linear-gradient(180deg,transparent,rgba(246,183,60,.025),transparent)}.detail-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:28px}.detail-head p{max-width:760px;margin:0;color:var(--muted)}.detail-h2{font-size:clamp(2rem,4.5vw,3.7rem);line-height:1;letter-spacing:-.04em;margin:.5rem 0}.detail-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.detail-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.detail-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.detail-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow)}.detail-card h3{margin:.2rem 0 .6rem}.detail-card p,.detail-card li{color:var(--muted)}.detail-card ul{padding-left:1.15rem;margin-bottom:0}.detail-kicker{display:inline-block;color:var(--gold);font-weight:850;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}.service-link{margin-top:18px;display:inline-flex;color:var(--gold);font-weight:800}.service-link:hover{text-decoration:underline}
.stage-row{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.stage-box{padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--surface-2)}.stage-box b{display:block;color:var(--gold);margin-bottom:6px}.stage-box span{color:var(--muted);font-size:.9rem}.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.case-card{overflow:hidden;padding:0}.case-thumb{height:250px;background:var(--surface-2);display:grid;place-items:center;overflow:hidden}.case-thumb img{width:100%;height:100%;object-fit:cover}.case-copy{padding:24px}.case-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.tag{font-size:.76rem;border:1px solid var(--line);border-radius:999px;padding:6px 9px;color:var(--muted)}
.case-study-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px}.case-main{display:grid;gap:16px}.case-block{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:24px}.case-block h2{margin:0 0 10px;font-size:1.45rem}.case-block p,.case-block li{color:var(--muted)}.case-aside{position:sticky;top:96px;height:max-content}.fact{padding:12px 0;border-bottom:1px solid var(--line)}.fact:last-child{border-bottom:0}.fact b{display:block;color:var(--gold);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.placeholder-note{padding:15px 17px;border-left:3px solid var(--gold);background:rgba(246,183,60,.07);border-radius:0 14px 14px 0;color:var(--muted)}
.service-area-map{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.area-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.area-chip{padding:13px 15px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);text-align:center}.legal-wrap{max-width:900px}.legal-wrap h2{margin-top:2rem}.legal-wrap h3{margin-top:1.4rem}.legal-wrap p,.legal-wrap li{color:var(--muted)}.legal-alert{border:1px solid rgba(246,183,60,.35);background:rgba(246,183,60,.07);border-radius:18px;padding:18px;margin:18px 0}.legal-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.site-footer-links{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.site-footer-links a{color:var(--muted);font-size:.85rem}.site-footer-links a:hover{color:var(--gold)}
@media(max-width:1050px){.detail-nav{justify-content:flex-start;gap:10px}.detail-nav .nav-brand{margin-right:auto}.detail-menu-btn{display:inline-grid;place-items:center}.detail-links{display:none;position:absolute;left:16px;right:16px;top:calc(100% + 8px);z-index:60;flex-direction:column;align-items:stretch;gap:0;padding:12px;border-radius:18px;background:var(--surface-solid);border:1px solid var(--line);box-shadow:var(--shadow)}.detail-links.open{display:flex}.detail-links a{padding:11px 12px;border-radius:10px}.detail-links a:hover{background:var(--surface-2)}}
@media(max-width:980px){.detail-hero-grid,.service-area-map,.case-study-layout{grid-template-columns:1fr}.detail-grid-4,.stage-row{grid-template-columns:repeat(2,1fr)}.detail-grid-3,.area-list{grid-template-columns:repeat(2,1fr)}.case-aside{position:static}}
@media(max-width:680px){.detail-nav .nav-brand img{width:132px}.detail-hero{padding-top:100px}.detail-grid-2,.detail-grid-3,.detail-grid-4,.stage-row,.case-grid,.area-list{grid-template-columns:1fr}.detail-head{display:block}.detail-visual,.detail-visual img{min-height:300px}}
