/* Integrate the restored service layouts with Assembly's shared shell. */
.published-layout{--page-width:1180px;--font-display:'Outfit',sans-serif;--font-body:'DM Sans',sans-serif;isolation:isolate;overflow-x:clip}
.published-layout h1,.published-layout h2,.published-layout h3,.published-layout h4{font-family:var(--font-display);letter-spacing:-.035em;color:var(--text)}
.published-layout p{color:var(--muted)}
.published-layout .container{width:100%;max-width:1180px;padding-inline:24px;margin-inline:auto}
.published-layout .btn{font-family:var(--font-body);gap:.6rem}
.published-layout .btn-primary{background:var(--btn-grad);color:var(--on-accent)}
.published-layout .route-anchor{display:block;position:relative;scroll-margin-top:110px}
.published-layout [data-reveal],.published-layout .revealed{opacity:1;transform:none}
.published-layout .contact-items{margin-top:32px}
.published-layout .contact-item-val{overflow-wrap:anywhere}
.published-layout .contact-map iframe{width:100%;height:100%;min-height:480px;border:0}
.published-layout .wa-qr img{width:96px;height:96px}
.published-layout .faq-item summary{cursor:pointer;min-height:48px}
.published-layout .faq-item summary svg{width:20px;height:20px;flex-shrink:0}
.published-layout .faq-item[open] summary svg{transform:rotate(45deg)}
.published-layout .table-wrap,.published-layout .compare-wrap{overflow-x:auto}
.published-layout .table-wrap table,.published-layout .compare-wrap table{width:100%}
@media(max-width:599px){.published-layout .container{padding-inline:18px}.published-layout .contact-map iframe{min-height:340px}}
@media(prefers-reduced-motion:reduce){.published-layout *,.published-layout *::before,.published-layout *::after{animation:none!important;transition:none!important}}

.published-layout .contact-map{position:relative;padding-top:48px}
.published-layout .map-directions{position:absolute;inset:0 0 auto;display:flex;align-items:center;min-height:48px;padding:12px 18px;background:var(--elevated);color:var(--text);font-weight:600;font-size:14px;z-index:1}
.published-layout .contact-map iframe{height:calc(100% - 48px)}

html[data-theme=dark] .published-layout{--bg:#0c0c0e;--surface:#171719;--elevated:#222225;--text:#f2f2f2;--muted:#bcbcc2;--header-bg:rgba(12,12,14,.95)}

/* One dark palette across services, Insights and contact. */
html[data-theme=dark] .published-layout{
 --accent:#75d6dc;--accent-2:#75d6dc;--accent-3:#75d6dc;--accent-text:#75d6dc;
 --accent-grad:linear-gradient(120deg,#d5f4f5,#75d6dc);--btn-grad:#75d6dc;--on-accent:#0c0c0e;
 --accent-soft:rgba(117,214,220,.08);--border:#303034;--border-strong:#49494f;
 --card-bg:#171719;--card-blur:none;--chip-bg:#222225;--mockup-bg:#171719;
 --glow:0 8px 28px rgba(0,0,0,.25);--hero-spot:radial-gradient(ellipse at center,rgba(255,255,255,.045),transparent 70%);
 --img-tint:linear-gradient(180deg,rgba(12,12,14,.25),rgba(12,12,14,.62));
 --media-overlay:linear-gradient(180deg,rgba(12,12,14,.1),rgba(12,12,14,.55));
 --band-overlay:linear-gradient(110deg,rgba(12,12,14,.92) 30%,rgba(12,12,14,.55) 70%,rgba(12,12,14,.85));
}
html[data-theme=dark] .published-layout .orb{background:radial-gradient(circle,#45454c,transparent 70%)}
html[data-theme=dark] .published-layout .cta-banner-bg{background:radial-gradient(rgba(255,255,255,.04),transparent 65%)}
html[data-theme=dark] .published-layout .badge--violet,html[data-theme=dark] .published-layout .badge--blue,html[data-theme=dark] .published-layout .badge--cyan{color:#75d6dc;background:rgba(117,214,220,.08)}
html[data-theme=dark] .published-layout .stage-thumb{--c1:#242428;--c2:#3c3c42}
html[data-theme=dark] .published-layout .process-node{color:var(--on-accent)}

/* Assembly typography and restrained surfaces, shared by every restored page. */
html[data-theme] .published-layout{--font-display:Cabinet,sans-serif;--font-body:Cabinet,sans-serif;--radius:4px;--radius-lg:4px;--btn-radius:3px;--shadow:none;--glow:none;font-family:Cabinet,sans-serif}
html[data-theme] .published-layout h1{font-family:'NexLink Display',Cabinet,sans-serif;font-weight:900;letter-spacing:-.035em;line-height:1.04;max-width:17ch}
html[data-theme] .published-layout .grad-text{background:none;-webkit-text-fill-color:currentColor;color:var(--accent-text)}
html[data-theme] .published-layout .eyebrow{color:var(--accent-text)}
html[data-theme] .published-layout .btn--primary{background:var(--btn-grad);border-color:var(--btn-grad);color:var(--on-accent);box-shadow:none}
html[data-theme] .published-layout .btn--primary:hover{background:var(--accent);border-color:var(--accent);transform:none}
html[data-theme] .published-layout .page-hero .hero-figure{border-radius:4px;box-shadow:none;border-color:var(--border)}
html[data-theme=light] .published-layout{
 --bg:#f4f3ef;--surface:#e9eae5;--elevated:#faf9f5;--card-bg:#faf9f5;--card-blur:none;
 --text:#171d1e;--muted:#525858;--border:#c5c8c5;--border-strong:#a7afac;
 --accent:#087787;--accent-2:#087787;--accent-3:#087787;--accent-text:#087787;
 --accent-grad:#087787;--btn-grad:#171d1e;--on-accent:#f4f3ef;--accent-soft:rgba(8,119,135,.07);
 --chip-bg:#e9eae5;--header-bg:#f4f3ef;--mockup-bg:#e9eae5;
 --hero-spot:radial-gradient(ellipse at center,rgba(23,29,30,.035),transparent 72%);
 --img-tint:linear-gradient(180deg,transparent,rgba(244,243,239,.2));
 --media-overlay:linear-gradient(180deg,transparent,rgba(23,29,30,.16));
 --band-overlay:linear-gradient(110deg,rgba(244,243,239,.96) 30%,rgba(233,234,229,.72) 70%,rgba(23,29,30,.12));
}
html[data-theme=light] .published-layout .blob{background:radial-gradient(circle,#c5c8c5,transparent 70%)}
html[data-theme=light] .published-layout .cta-banner-bg{background:radial-gradient(rgba(23,29,30,.045),transparent 66%)}
html[data-theme=light] .published-layout .badge--violet,html[data-theme=light] .published-layout .badge--blue,html[data-theme=light] .published-layout .badge--cyan{color:#087787;background:rgba(8,119,135,.07)}
html[data-theme=light] .published-layout .stage-thumb{--c1:#171d1e;--c2:#087787}
html[data-theme=light] .published-layout.ai-polish .page-hero,html[data-theme=light] .published-layout.public-polish .page-hero{background:var(--bg)}

html[data-theme] .published-layout:is(.ai-polish,.public-polish) .page-hero h1{max-width:none}
html[data-theme] .published-layout:is(.ai-polish,.public-polish) .page-hero .hero-figure{border-radius:4px;box-shadow:none;border-color:var(--border)}
