:root { --nc-ink:oklch(28% .055 215); --nc-deep:oklch(40% .088 209); --nc-aqua:oklch(82% .105 185); --nc-sea:oklch(67% .13 190); --nc-sun:oklch(86% .135 86); --nc-sun-soft:oklch(93% .075 86); --nc-sand:oklch(96% .032 82); --nc-orange:oklch(68% .19 54); --nc-paper:oklch(99% .008 92); }
.nc-page { width:100vw; margin:0 calc(50% - 50vw) -1.5rem; overflow:hidden; color:var(--nc-ink); background:var(--nc-paper); font-family:Rubik,Arial,sans-serif; }
.nc-hero { position:relative; padding:clamp(4rem,8vw,8rem) max(1.25rem,calc((100vw - 1160px)/2)); background:radial-gradient(circle at 8% 15%,var(--nc-sun-soft) 0 11%,transparent 11.3%),radial-gradient(circle at 90% 83%,color-mix(in oklch,var(--nc-aqua) 58%,transparent) 0 16%,transparent 16.4%),var(--nc-sand); }
.nc-hero__inner { display:grid; grid-template-columns:minmax(0,.94fr) minmax(330px,1.06fr); align-items:center; gap:clamp(2.5rem,7vw,8rem); max-width:1280px; margin:auto; }
.nc-kicker { margin:0 0 1.1rem; color:color-mix(in oklch,var(--nc-deep) 75%,var(--nc-sea)); font-size:.69rem; font-weight:700; line-height:1.2; letter-spacing:.16em; }
.nc-hero h1,.nc-intro h2,.nc-section-head h2,.nc-cta h2 { margin:0; font-size:clamp(2.8rem,5.2vw,5.55rem); font-weight:500; line-height:.98; letter-spacing:-.065em; }
.nc-hero h1 span,.nc-intro h2 em,.nc-cta h2 em { color:var(--nc-deep); font-family:Georgia,serif; font-weight:400; letter-spacing:-.075em; }
.nc-hero__lead { max-width:31rem; margin:2rem 0 2.1rem; color:color-mix(in oklch,var(--nc-ink) 78%,var(--nc-deep)); font-size:1.05rem; line-height:1.62; }
.nc-hero__actions { display:flex; align-items:center; gap:1.25rem; flex-wrap:wrap; }.nc-button { display:inline-flex; align-items:center; justify-content:center; gap:.7rem; min-height:3.45rem; padding:.85rem 1.25rem; border-radius:999px; color:var(--nc-paper)!important; background:var(--nc-orange); box-shadow:0 10px 24px color-mix(in oklch,var(--nc-orange) 34%,transparent); font-size:.92rem; font-weight:600; text-decoration:none; transition:transform .2s cubic-bezier(.23,1,.32,1),box-shadow .2s ease; }.nc-button:hover { color:var(--nc-paper); transform:translateY(-2px); box-shadow:0 14px 30px color-mix(in oklch,var(--nc-orange) 48%,transparent); }.nc-button:active { transform:scale(.97); }.nc-hero__note { margin:0; max-width:12rem; color:color-mix(in oklch,var(--nc-deep) 64%,var(--nc-paper)); font-size:.77rem; line-height:1.45; }
.nc-hero__visual { position:relative; min-height:clamp(350px,42vw,600px); margin:0; overflow:hidden; border:3px solid color-mix(in oklch,var(--nc-sun) 55%,var(--nc-paper)); border-radius:14rem 14rem 2rem 2rem; background:var(--nc-sea); box-shadow:0 28px 60px color-mix(in oklch,var(--nc-deep) 23%,transparent); }.nc-hero__visual:after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,color-mix(in oklch,var(--nc-deep) 74%,transparent)); content:""; }.nc-hero__visual img { width:100%; height:100%; min-height:inherit; object-fit:cover; filter:saturate(1.14) contrast(1.04); }.nc-hero__visual figcaption { position:absolute; z-index:1; right:1.35rem; bottom:1.2rem; color:var(--nc-paper); font-size:.76rem; }.nc-hero__visual figcaption span { display:inline-block; width:1.8rem; height:1px; margin:0 .5rem .23rem 0; background:var(--nc-sun); }.nc-hero__line { position:absolute; right:max(1.25rem,calc((100vw - 1160px)/2)); bottom:0; width:16%; height:5px; background:var(--nc-sun); }
.nc-shell { width:min(1160px,calc(100% - 2.5rem)); margin:auto; }.nc-intro { padding:clamp(5.5rem,12vw,11rem) 0; }.nc-intro__grid { display:grid; grid-template-columns:1fr .75fr; align-items:end; gap:3rem; }.nc-intro__grid > div p { margin:0 0 1.35rem; color:#516b73; font-size:1.02rem; line-height:1.7; }.nc-text-link { color:var(--nc-deep); font-size:.9rem; font-weight:600; text-underline-offset:.35rem; }.nc-text-link span { margin-left:.3rem; }
.nc-scenarios { padding:0 0 clamp(6rem,11vw,10rem); }.nc-section-head { margin-bottom:3rem; }.nc-scenario-list { border-top:1px solid color-mix(in oklch,var(--nc-sea) 42%,var(--nc-paper)); }.nc-scenario { display:grid; grid-template-columns:4.5rem minmax(0,1fr) 2rem; gap:1rem; align-items:start; padding:2.05rem 0; border-bottom:1px solid color-mix(in oklch,var(--nc-sea) 42%,var(--nc-paper)); transition:background-color .18s ease,transform .18s cubic-bezier(.23,1,.32,1); }.nc-scenario__num { color:var(--nc-sea); font-size:.75rem; font-weight:700; }.nc-scenario:nth-child(2) .nc-scenario__num,.nc-scenario:nth-child(2) .nc-scenario__arrow { color:oklch(68% .16 86); }.nc-scenario:nth-child(3) .nc-scenario__num,.nc-scenario:nth-child(3) .nc-scenario__arrow { color:var(--nc-orange); }.nc-scenario h3 { margin:0 0 .4rem; font-size:clamp(1.6rem,2.8vw,2.45rem); font-weight:500; letter-spacing:-.045em; }.nc-scenario p { max-width:32rem; margin:0; color:#627980; font-size:.95rem; line-height:1.55; }.nc-scenario__arrow { color:var(--nc-sea); font-size:1.5rem; }
.nc-mosaic { display:grid; grid-template-columns:1.1fr .9fr; gap:1.25rem; margin-bottom:clamp(6rem,12vw,11rem); }.nc-mosaic figure { position:relative; margin:0; overflow:hidden; background:var(--nc-aqua); }.nc-mosaic img { display:block; width:100%; height:100%; object-fit:cover; filter:saturate(1.08); transition:transform .5s cubic-bezier(.23,1,.32,1),filter .5s ease; }.nc-project-label { position:absolute; z-index:1; top:.9rem; right:.9rem; display:flex; flex-direction:column; gap:.08rem; padding:.46rem .62rem; color:var(--nc-paper); background:color-mix(in oklch,var(--nc-deep) 88%,transparent); font-size:.62rem; line-height:1.2; letter-spacing:.02em; }.nc-project-label strong { font-size:.75rem; font-weight:600; }.nc-project-label span { color:color-mix(in oklch,var(--nc-paper) 72%,var(--nc-aqua)); }.nc-mosaic__main,.nc-mosaic__note { height:clamp(20rem,31vw,29rem); }.nc-mosaic__main { border-radius:1.5rem 1.5rem 1.5rem 8rem; }.nc-mosaic__note { border:3px solid color-mix(in oklch,var(--nc-aqua) 62%,var(--nc-paper)); border-radius:8rem 1.5rem 1.5rem; background:var(--nc-deep); }.nc-mosaic__note img { object-position:62% center; filter:saturate(1.16) contrast(1.04); }.nc-mosaic__small { height:18rem; border-radius:1.5rem 1.5rem 1.5rem 6rem; }.nc-mosaic__copy { position:relative; align-self:stretch; display:flex; flex-direction:column; align-items:flex-start; gap:.62rem; padding:3.15rem 2rem 1.4rem; border-top:1px solid color-mix(in oklch,var(--nc-sea) 36%,var(--nc-paper)); border-bottom:1px solid color-mix(in oklch,var(--nc-sea) 36%,var(--nc-paper)); }.nc-mosaic__copy:before { position:absolute; top:1.45rem; left:2rem; width:2.5rem; height:3px; background:var(--nc-orange); content:""; }.nc-mosaic__eyebrow { margin:0; color:color-mix(in oklch,var(--nc-deep) 78%,var(--nc-sea)); font-size:.57rem; font-weight:700; letter-spacing:.13em; }.nc-mosaic__title { margin:0; color:var(--nc-deep); font-family:Georgia,serif; font-size:clamp(1.22rem,2vw,1.7rem); line-height:1.06; }.nc-mosaic__body { display:grid; gap:.35rem; }.nc-mosaic__body p { margin:0; color:color-mix(in oklch,var(--nc-ink) 75%,var(--nc-paper)); font-size:.72rem; line-height:1.38; }.nc-mosaic__rental { margin:.05rem 0 0; color:var(--nc-deep); font-size:.72rem; font-weight:600; line-height:1.35; }.nc-mosaic__fineprint { margin:auto 0 0; color:color-mix(in oklch,var(--nc-ink) 56%,var(--nc-paper)); font-size:.62rem; line-height:1.28; }.nc-mosaic__wide { grid-column:1 / -1; height:18rem; border:3px solid var(--nc-sun); border-radius:1.5rem 1.5rem 7rem; }
.nc-process { display:grid; grid-template-columns:.82fr 1.18fr; gap:4rem; padding:clamp(4rem,8vw,7rem); margin-bottom:clamp(5.5rem,10vw,9rem); background:oklch(96% .022 92); border:2px solid color-mix(in oklch,var(--nc-sun) 36%,var(--nc-paper)); border-radius:2rem; }.nc-process__intro { display:flex; flex-direction:column; justify-content:space-between; gap:3rem; }.nc-process__route { max-width:17rem; }.nc-process__route-caption { margin:0 0 1rem!important; color:var(--nc-deep)!important; font-size:.63rem!important; font-weight:700; letter-spacing:.14em; }.nc-process__route-list { position:relative; display:grid; gap:.78rem; }.nc-process__route-list:before { position:absolute; top:.65rem; bottom:.65rem; left:.39rem; width:1px; background:color-mix(in oklch,var(--nc-sea) 52%,var(--nc-paper)); content:""; }.nc-process__route-item { position:relative; display:grid; grid-template-columns:1.65rem 1fr; gap:.7rem; align-items:center; color:var(--nc-ink); font-size:.84rem; font-weight:600; }.nc-process__route-item i { position:relative; z-index:1; display:grid; width:.8rem; height:.8rem; place-items:center; border:2px solid var(--nc-deep); border-radius:50%; color:transparent; background:var(--nc-sun-soft); font-size:0; font-style:normal; }.nc-process__route-item:nth-child(2) i { border-color:var(--nc-sea); background:var(--nc-aqua); }.nc-process__route-item:nth-child(3) i { border-color:var(--nc-orange); background:var(--nc-orange); }.nc-process__route-note { max-width:13rem; margin:1.15rem 0 0!important; color:color-mix(in oklch,var(--nc-ink) 66%,var(--nc-paper))!important; font-size:.77rem!important; line-height:1.45!important; }.nc-process__steps { display:grid; gap:1.5rem; margin:0; padding:0; list-style:none; }.nc-process__steps li { display:grid; grid-template-columns:3rem 1fr; gap:1rem; padding-bottom:1.45rem; border-bottom:1px solid color-mix(in oklch,var(--nc-deep) 24%,var(--nc-paper)); }.nc-process__steps li:last-child { border:0; padding-bottom:0; }.nc-process__steps li > span { color:var(--nc-deep); font-size:.72rem; font-weight:700; }.nc-process h3 { margin:0 0 .4rem; font-size:1.13rem; font-weight:600; }.nc-process p { margin:0; color:#61777c; font-size:.91rem; line-height:1.55; }.nc-process__tags { display:inline-block; width:max-content; max-width:100%; margin-top:.8rem!important; padding:.3rem .56rem; border:1px solid color-mix(in oklch,var(--nc-sea) 58%,var(--nc-paper)); border-radius:999px; color:var(--nc-deep)!important; background:var(--nc-aqua); font-size:.69rem!important; font-weight:600; line-height:1.3!important; }
.nc-cta { position:relative; padding:clamp(4rem,9vw,8rem); margin-bottom:clamp(4rem,9vw,8rem); overflow:hidden; color:var(--nc-paper); background:var(--nc-deep); border-radius:2rem 2rem 9rem 2rem; }.nc-cta:before { position:absolute; top:-5rem; right:-6rem; width:17rem; height:17rem; border-radius:50%; background:var(--nc-sun); content:""; }.nc-cta:after { position:absolute; right:-3.5rem; bottom:-3.5rem; width:15rem; height:15rem; border:1px solid color-mix(in oklch,var(--nc-paper) 38%,transparent); border-radius:50%; content:""; }.nc-cta .nc-kicker,.nc-cta h2,.nc-cta > p,.nc-cta .nc-button { position:relative; z-index:1; }.nc-cta .nc-kicker { color:var(--nc-aqua); }.nc-cta h2 em { color:var(--nc-sun); }.nc-cta > p:not(.nc-kicker) { max-width:30rem; margin:1.5rem 0 2rem; color:color-mix(in oklch,var(--nc-paper) 84%,var(--nc-aqua)); font-size:1rem; line-height:1.62; }.nc-button--light { color:var(--nc-deep)!important; background:var(--nc-paper); box-shadow:none; }.nc-button--light:hover { color:var(--nc-deep); box-shadow:0 12px 30px rgba(0,0,0,.14); }
.nc-mobile-cta { display:none; }
.nc-reveal { animation:nc-rise .7s cubic-bezier(.2,.8,.2,1) both; }.nc-reveal--late { animation-delay:.12s; }.nc-reveal--later { animation-delay:.22s; } @keyframes nc-rise { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
@media (hover:hover) and (pointer:fine) { .nc-scenario:hover { background:color-mix(in oklch,var(--nc-sun-soft) 58%,transparent); transform:translateX(.35rem); }.nc-mosaic figure:hover img { filter:saturate(1.16); transform:scale(1.035); } }
@media (max-width:767px) { .nc-mosaic__main,.nc-mosaic__note { height:21rem; }.nc-mosaic__small { height:13rem; border-radius:1.25rem 1.25rem 1.25rem 4rem; }.nc-mosaic__copy { min-height:15rem; padding:2.7rem 1.6rem 1.35rem; border-color:color-mix(in oklch,var(--nc-sea) 28%,var(--nc-paper)); }.nc-mosaic__copy:before { top:1.3rem; left:1.6rem; }.nc-mosaic__title { max-width:17rem; font-size:1.52rem; }.nc-mosaic__body p,.nc-mosaic__rental { font-size:.76rem; }.nc-project-label { top:.7rem; right:.7rem; } }
@media (max-width:767px) { .nc-page { margin-bottom:4.4rem; }.nc-hero { padding:3.6rem 1.25rem 4.2rem; }.nc-hero__inner,.nc-intro__grid,.nc-process { grid-template-columns:1fr; }.nc-hero__inner { gap:2.8rem; }.nc-hero h1,.nc-intro h2,.nc-section-head h2,.nc-cta h2 { font-size:clamp(2.65rem,13vw,4rem); }.nc-hero__lead { margin:1.5rem 0 1.75rem; font-size:.97rem; }.nc-hero__visual { min-height:22rem; border-radius:8rem 8rem 1.25rem 1.25rem; }.nc-hero__note { max-width:11rem; }.nc-shell { width:min(100% - 2.5rem,1160px); }.nc-intro { padding:5rem 0; }.nc-intro__grid { gap:1.7rem; }.nc-scenarios { padding-bottom:5.5rem; }.nc-section-head { margin-bottom:2.1rem; }.nc-scenario { grid-template-columns:2.6rem 1fr 1.2rem; padding:1.5rem 0; }.nc-scenario p { font-size:.88rem; }.nc-mosaic { grid-template-columns:1fr; gap:.85rem; margin-bottom:5.5rem; }.nc-mosaic__main { height:22rem; border-radius:1.25rem 1.25rem 1.25rem 5rem; }.nc-mosaic__note { min-height:13rem; border-radius:5rem 1.25rem 1.25rem; }.nc-mosaic__small,.nc-mosaic__wide { height:13rem; border-radius:1.25rem; }.nc-mosaic__wide { grid-column:auto; border-radius:1.25rem 1.25rem 4rem; }.nc-process { gap:2.6rem; padding:2.2rem 1.5rem; margin-bottom:5.5rem; border-radius:1.4rem; }.nc-process__intro { gap:1.8rem; }.nc-process__route { max-width:none; }.nc-process__route-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; }.nc-process__route-list:before { top:.39rem; right:.39rem; bottom:auto; left:.39rem; width:auto; height:1px; }.nc-process__route-item { grid-template-columns:1fr; gap:.35rem; font-size:.71rem; }.nc-process__route-item i { width:.8rem; height:.8rem; }.nc-process__route-note { max-width:18rem; margin-top:.9rem!important; }.nc-process__steps { gap:1.2rem; }.nc-process__tags { font-size:.64rem!important; }.nc-cta { padding:3.4rem 1.6rem; margin-bottom:0; border-radius:1.4rem 1.4rem 5rem 1.4rem; }.nc-cta:before { top:-7rem; right:-9rem; width:14rem; height:14rem; }.nc-mobile-cta { position:fixed; z-index:1030; right:1rem; bottom:1rem; display:flex; align-items:center; gap:.5rem; padding:.82rem 1rem; border-radius:999px; color:var(--nc-paper)!important; background:var(--nc-orange); box-shadow:0 9px 24px color-mix(in oklch,var(--nc-orange) 38%,transparent); font-size:.83rem; font-weight:600; text-decoration:none; }.nc-mobile-cta:active { transform:scale(.97); } }
@media (min-width:768px) and (max-width:1023px) { .nc-hero { padding:clamp(4rem,8vw,6rem) max(2rem,calc((100vw - 920px)/2)); }.nc-hero__inner { grid-template-columns:minmax(0,.9fr) minmax(19rem,1.1fr); gap:clamp(2rem,4vw,3.25rem); }.nc-hero__visual { min-height:clamp(25rem,52vw,33rem); border-radius:10rem 10rem 1.75rem 1.75rem; }.nc-shell { width:min(920px,calc(100% - 4rem)); }.nc-intro { padding:clamp(6rem,10vw,8rem) 0; }.nc-intro__grid { gap:2.25rem; }.nc-scenarios { padding-bottom:clamp(5rem,8vw,7rem); }.nc-mosaic { gap:1rem; margin-bottom:clamp(5rem,9vw,7rem); }.nc-mosaic__main,.nc-mosaic__note { height:clamp(19rem,40vw,24rem); }.nc-mosaic__small,.nc-mosaic__wide { height:16rem; }.nc-mosaic__copy { padding:2.75rem 1.5rem 1.25rem; }.nc-mosaic__copy:before { left:1.5rem; }.nc-process { gap:2.5rem; padding:clamp(2.75rem,6vw,4rem); margin-bottom:clamp(5rem,8vw,7rem); }.nc-cta { padding:clamp(4rem,7vw,5.5rem); } }
@media (max-width:767px) { .nc-page { margin-bottom:calc(5.5rem + env(safe-area-inset-bottom)); }.nc-hero { padding:3.25rem 1.25rem 3.5rem; }.nc-hero__inner { gap:2.2rem; }.nc-hero__lead { max-width:34rem; margin:1.35rem 0 1.5rem; font-size:1rem; }.nc-hero__actions { align-items:flex-start; gap:.8rem; }.nc-button { min-height:3.125rem; }.nc-hero__visual { min-height:19rem; border-radius:7rem 7rem 1.25rem 1.25rem; }.nc-intro { padding:4.25rem 0; }.nc-scenarios { padding-bottom:4.75rem; }.nc-section-head { margin-bottom:1.8rem; }.nc-scenario { grid-template-columns:2.25rem minmax(0,1fr) 1.15rem; gap:.7rem; padding:1.35rem 0; }.nc-scenario h3 { font-size:clamp(1.42rem,7vw,1.9rem); }.nc-scenario p { font-size:.93rem; }.nc-mosaic { gap:1rem; margin-bottom:4.75rem; }.nc-mosaic__main { height:clamp(19rem,85vw,22rem); }.nc-mosaic__note { height:clamp(15rem,65vw,18rem); min-height:0; }.nc-mosaic__small,.nc-mosaic__wide { height:clamp(12.5rem,55vw,15rem); }.nc-mosaic__copy { min-height:0; padding:2.5rem 1.25rem 1.4rem; }.nc-mosaic__copy:before { left:1.25rem; }.nc-mosaic__title { font-size:clamp(1.45rem,7vw,1.7rem); }.nc-mosaic__body p,.nc-mosaic__rental { font-size:.8rem; }.nc-mosaic__fineprint { font-size:.68rem; }.nc-process { gap:2rem; padding:2.25rem 1.25rem; margin-bottom:4.75rem; }.nc-process__intro { gap:1.5rem; }.nc-process__steps { gap:1rem; }.nc-process__steps li { grid-template-columns:2.25rem minmax(0,1fr); gap:.75rem; padding-bottom:1.15rem; }.nc-process h3 { font-size:1.05rem; }.nc-process p { font-size:.88rem; }.nc-cta { padding:3rem 1.25rem; }.nc-mobile-cta { right:.75rem; bottom:calc(.75rem + env(safe-area-inset-bottom)); min-height:2.875rem; padding:.65rem .9rem; } }
@media (max-width:374px) { .nc-hero h1,.nc-intro h2,.nc-section-head h2,.nc-cta h2 { font-size:clamp(2.35rem,12.5vw,2.8rem); }.nc-hero__actions { flex-direction:column; }.nc-hero__note { max-width:18rem; }.nc-scenario { grid-template-columns:1.8rem minmax(0,1fr); }.nc-scenario__arrow { display:none; }.nc-process__route-item { font-size:.66rem; }.nc-mobile-cta { right:.5rem; bottom:calc(.5rem + env(safe-area-inset-bottom)); } }
@media (prefers-reduced-motion:reduce) { .nc-reveal { animation:none; }.nc-button,.nc-mosaic img { transition:none; } }
