/* Editorial proposal: preserve the original type, palette and shared controls. */
.new1 { --n1-space:clamp(48px,6vw,88px); }
.new1 ::selection{background:var(--accent);color:#fff}
.new1 h1,.new1 h2,.new1 h3{text-wrap:balance;letter-spacing:-.025em}
.new1 p{ text-wrap:pretty; }
.new1 main :target{scroll-margin-top:32px}
.new1 .hero-copy,.new1 .brand-composition,.new1 .hero-actions{min-width:0}
.new1 .hero-actions{flex-wrap:wrap;gap:18px 24px}
.new1 .button,.new1 .text-link{font-size:15px}
.new1 .text-link{display:inline-flex;align-items:center;gap:12px;line-height:1.5}
.new1 .text-link .ui-icon{flex:none;width:20px;height:20px}
.new1 .hero-band{background:var(--bg)}
.new1 .n1-hero{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);min-height:0;padding-block:64px}
.concept-a.new1 main>.hero-band>.hero{min-height:calc(100svh - 88px);min-height:calc(100dvh - 88px);grid-template-rows:minmax(min-content,1fr) auto;padding-block:32px 0;row-gap:32px}
.new1 .n1-hero h1{font-size:clamp(38px,4.05vw,60px);line-height:1.1}
.new1 .hero-desc{max-width:55ch;margin:26px 0 30px;font-size:19px}
.new1 .brand-composition{min-height:0;padding:28px;background:var(--surface);gap:22px;border:0;box-shadow:none}
.new1 .brand-signature{align-items:center;gap:16px}
.new1 .brand-signature p{font-size:16px;margin:0}
.new1 .home-module-banner{margin:0;min-height:0}
.new1 .n1-visual-caption strong{font-size:26px;line-height:1.2}
.new1 .n1-visual-caption p{font-size:16px;color:var(--muted);margin:14px 0 0;max-width:38ch}
.new1 .n1-partner-entry{font-size:14px;color:var(--muted);margin:26px 0 0}
.new1 .n1-partner-entry a{text-decoration:underline;text-underline-offset:4px}
.new1 .n1-proof{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px;border-block:1px solid var(--line);font-size:15px}
.new1 .n1-hero>.n1-proof{grid-column:1/-1;grid-row:2;align-self:end;width:100%;border-bottom:0;position:relative;z-index:0}
/* Soften only the particle backdrop; the proof copy and links stay sharp. */
.new1 .n1-hero>.n1-proof::before{content:"";position:absolute;z-index:-1;pointer-events:none;top:-36px;bottom:0;left:50%;width:var(--home-network-width,100vw);transform:translateX(-50%);background:color-mix(in srgb,var(--bg) 35%,transparent);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);mask-image:linear-gradient(to bottom,transparent,#000 36px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 36px)}
.new1 .n1-proof p{color:var(--muted);margin:0;max-width:18ch}
.new1 .n1-proof a{max-width:23ch;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px}
.new1 .section{padding-block:var(--n1-space)}
.new1 .n1-situations,.new1 .n1-team{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(32px,7vw,104px);border:0}
.new1 .n1-situations .intro,.new1 .n1-team .intro{max-width:40ch;margin-bottom:24px}
.new1 .n1-problem-list>a{display:block;border-bottom:1px solid var(--line);padding:24px 0}
.new1 .n1-problem-list>a:first-child{padding-top:0}
.new1 .n1-problem-list h3{font-size:24px;line-height:1.25}
.new1 .n1-problem-list p{margin:12px 0;font-size:16px;color:var(--muted);max-width:55ch}
.new1 .n1-problem-list>a>span{font-size:14px;color:var(--accent-text)}
.new1 .n1-icon-heading{display:flex;align-items:flex-start;gap:14px}
.new1 .n1-heading-copy{display:block;min-width:0;flex:1}
.new1 .n1-heading-icon{width:32px;height:32px;flex:none;color:var(--accent-text);stroke-width:1.6}
.new1 .n1-icon-heading>.n1-heading-icon{margin-top:1px}
.new1 #start .n1-offers article>.n1-heading-icon,.new1 .n1-partner>div>.n1-heading-icon{margin-bottom:18px;width:36px;height:36px}
.new1 .n1-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.new1 .n1-offers article{display:flex;flex-direction:column;padding-top:24px;border-top:1px solid var(--line);min-width:0}
.new1 .n1-offers h3{font-size:25px;line-height:1.2;margin:0 0 20px}
.new1 .n1-offers p{font-size:16px;line-height:1.6;color:var(--muted)}
.new1 .n1-offers .n1-fit{color:var(--text);font-size:16px;font-weight:500;margin-bottom:12px}
.new1 .n1-offers .text-link{margin-top:auto;padding-top:10px}
.new1 .n1-projects{border:0}
.new1 .n1-feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:center}
.new1 .n1-feature h3{font-size:30px;line-height:1.2;margin:0 0 22px}
.new1 .n1-feature p{color:var(--muted);max-width:55ch}
.new1 .n1-system{background:#162c46;color:#f0f5fc;border-radius:12px;padding:32px}
.new1 .n1-system h3{font-size:24px;color:#f0f5fc;margin:0 0 28px}
.new1 .n1-flow{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;margin:0 0 28px;counter-reset:flow}
.new1 .n1-flow li{font-size:15px;line-height:1.4;color:#e1eaff;border-top:1px solid #6984a6;padding-top:14px}
.new1 .n1-flow li::before{counter-increment:flow;content:counter(flow) ".";display:block;color:#9cbfff;margin-bottom:8px}
.new1 .n1-system-core{background:#2457d6;color:#fff;padding:20px;font-size:26px;text-align:center;border-radius:6px}
.new1 .n1-system-core span{display:block;font-size:15px;margin-top:8px}
.new1 .n1-system-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:24px;color:#c7d8ee;font-size:14px}
.new1 .n1-secondary-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;margin-top:44px}
.new1 .n1-secondary-projects article{border-top:1px solid var(--line);padding-top:28px}
.new1 .n1-secondary-projects h3{font-size:25px;line-height:1.25;margin-bottom:18px}
.new1 .n1-secondary-projects p{color:var(--muted);max-width:60ch}
.new1 .n1-tech{font-size:14px}
.new1 .n1-outcome{padding-block:32px;border-block:1px solid var(--line);margin-bottom:32px}
.new1 .inner-hero+.n1-outcome{border-top:0}
.new1 .n1-outcome h2{font-size:28px;margin-bottom:18px}
.new1 .n1-outcome p{max-width:70ch;color:var(--muted);margin:0}
.new1 .n1-case-choices{display:flex;flex-wrap:wrap;gap:20px 36px}
.new1 .n1-more{margin-top:32px}
.new1 .case-caption{display:flex;flex-direction:column}
.new1 .n1-project-action{margin-top:auto;padding-top:24px}
.new1 .n1-project-action .button{min-height:48px;max-width:100%;width:fit-content;padding:13px 18px;gap:14px;white-space:normal}
.new1 .n1-delivery article{border-top:1px solid var(--line);padding-top:22px;margin-bottom:24px}
.new1 .n1-delivery h3{font-size:24px;margin-bottom:12px}
.new1 .n1-delivery p{font-size:16px;color:var(--muted);margin:0}
.new1 .n1-partner{display:flex;align-items:center;justify-content:space-between;gap:48px;border:0}
.new1 .n1-partner .intro{margin-bottom:0}
.new1 .n1-partner>.text-link{flex-shrink:0}
.new1 .contact .button{margin-bottom:24px}
.new1 .contact .email{font-size:clamp(26px,3vw,40px);margin:0 0 18px;display:block}
.new1 .n1-contact-options{display:flex;flex-wrap:wrap;gap:16px 28px;font-size:16px}
/* Foundations palette: expose its reading-paper token on the home shell too.
   Capture the root --bg before legacy section-specific overrides apply. */
.new1{--paper:#fff;--n1-section-bg:var(--bg)}
.new1[data-theme=dark]{--paper:#111e32}
.new1 .n1-band-situations,.new1 .n1-band-projects,.new1 .n1-band-partner{background:var(--paper)}
.new1 .band-services,.new1 .band-company,
.new1[data-theme=dark] .band-services,.new1[data-theme=dark] .band-company{--bg:var(--n1-section-bg);--surface:inherit;background:var(--bg)}
.new1 .n1-partner-visual .hv-hero-copy{padding:28px 28px 0}
.new1 .n1-partner-visual .hv-hero-copy h2{font-size:28px;font-weight:500;line-height:1.15;max-width:18ch;margin:0}
.new1 .n1-partner-visual .hv-hero-copy p{margin-bottom:0}
.new1.inner-page .article-body{min-width:0}
.new1.inner-page .article-body>.section:first-child{padding-top:12px;border-top:0}
/* One divider per section boundary; the reading surface needs no outer frame. */
.new1.inner-page .article-main{border:0}
.new1.inner-page .article-main>.section:first-child{border-top:0}
.new1.inner-page .article-main>.proof-section+.section:not(.closing){border-top:0}
.new1.inner-page main:has(>.article-layout,>.legal-layout)+.footer{border-top:0}
/* The UI-kit example or the page footer already supplies these boundaries. */
.new1.page-kit .kit-exhibit:has(>.kit-example>.inner-hero:last-child),
.new1.page-kit .kit-exhibit:has(>.kit-example>.closing:last-child),
.new1.page-kit .kit-content>.kit-exhibit:last-child{border-bottom:0}
.new1.inner-page .prose{max-width:75ch;font-size:17px;line-height:1.7}
.new1.inner-page .prose p{max-width:70ch}
.new1.inner-page .prose .text-link{font-size:16px}
.new1.inner-page .prose .n1-offers{grid-template-columns:1fr;gap:24px}
.new1.inner-page .prose .n1-offers h3{margin-top:0}
.new1 .n1-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.new1 .n1-directory article{border-top:1px solid var(--line);padding-top:20px}
.new1 .n1-directory h3{margin:0 0 12px}
.new1 .n1-directory h3 .text-link{font-size:22px;line-height:1.25}
.new1 .n1-directory p{font-size:16px;margin-bottom:0}
.new1 .n1-sla{margin:0}
.new1 .n1-sla>div{display:grid;grid-template-columns:1fr 1.6fr;gap:24px;border-top:1px solid var(--line);padding:20px 0}
.new1 .n1-sla dt{font-weight:500;color:var(--text)}
.new1 .n1-sla dd{margin:0;color:var(--muted)}
.new1 .n1-contact-guide{border-top:1px solid var(--line);padding:28px 0 0;margin-top:28px}
.new1 .n1-contact-guide h2{font-size:26px;margin-bottom:16px}
.new1 .n1-contact-guide p{font-size:16px;max-width:65ch;color:var(--muted)}
.new1 .n1-contact-guide p:last-child{margin-bottom:0}
.new1 .new1-request{color:var(--text);font-size:16px;margin-bottom:20px}
.new1 input,.new1 textarea{caret-color:var(--accent-text)}
@media(max-width:1000px){
 .new1 .n1-hero{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px}
 .new1 .n1-hero h1{font-size:42px}
 .new1 .brand-composition{padding:24px}
 .new1 .n1-feature{gap:28px}
 .new1 .n1-offers{gap:24px}
 .new1 .n1-partner{align-items:flex-start;flex-direction:column;gap:24px}
 .new1 .n1-proof{display:grid;grid-template-columns:1fr 1fr;gap:16px 32px}
 .new1 .n1-proof p,.new1 .n1-proof a{max-width:none}
}
@media(max-width:767px){
 .new1 .n1-hero{grid-template-columns:1fr;padding-block:36px;gap:32px}
 .concept-a.new1 main>.hero-band>.hero{min-height:calc(100svh - 80px);min-height:calc(100dvh - 80px);padding-block:32px 0;row-gap:28px}
 .new1 .n1-hero h1{font-size:clamp(32px,7.6vw,48px)}
 .new1 .hero-desc{font-size:17px;margin:22px 0 26px}
 .new1 .hero-actions .button{padding:14px 18px}
 .new1 .brand-composition{display:none}
 .new1 .n1-proof{grid-template-columns:1fr;padding-block:22px;gap:12px;font-size:14px}
 .new1 .n1-situations,.new1 .n1-team,.new1 .n1-feature{grid-template-columns:1fr;gap:28px}
 .new1 .n1-offers,.new1 .n1-secondary-projects,.new1 .n1-directory{grid-template-columns:1fr;gap:28px}
 .new1 .n1-secondary-projects{margin-top:28px}
 .new1 .n1-feature h3{font-size:27px}
 .new1 .n1-system{padding:22px}
 .new1 .n1-flow{gap:12px}
 .new1 .n1-flow li{font-size:14px}
 .new1 .n1-system-bottom{gap:12px;font-size:14px}
 .new1 .n1-system h3{font-size:23px}
 .new1 .n1-sla>div{grid-template-columns:1fr;gap:8px}
 .new1 .n1-partner>.text-link{flex-shrink:1}
 .new1.inner-page .inner-hero h1{font-size:clamp(32px,7.6vw,48px)}
 .new1.inner-page .button{white-space:normal}
 .new1 .n1-contact-guide{padding:22px 0 0}
 .new1 .case-body,.new1 .case-caption{min-height:0}
 .new1 .n1-contact-guide h2{font-size:24px}
 .new1 .n1-partner-entry{line-height:1.8}
}
@media(prefers-reduced-motion:reduce){.new1{scroll-behavior:auto}.new1 *, .new1 *::before, .new1 *::after{animation:none!important;transition:none!important}}
