/* Noddus Executive — editorial quality, restrained motion and touch-first responsiveness */
:root{--green:#0b9870;--green-2:#27d6ab;--green-soft:#9fe7c9;--ink:#09100e;--ink-2:#111915;--paper:#f7f7f4}
html{scroll-padding-top:82px}
body{background:#f7f7f4}
.nav{background:rgba(5,10,9,.60);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.nav.scrolled{background:rgba(7,13,11,.94)}
.brand{width:190px}.brand img{max-height:47px;width:100%;height:auto;filter:none}
.nav-links a{position:relative;transition:color .18s ease}
.nav-links a:after{content:'';height:1px;position:absolute;bottom:-9px;left:0;right:100%;background:#b3e7cf;transition:right .26s cubic-bezier(.2,.7,.2,1)}
.nav-links a:hover:after,.nav-links a:focus-visible:after{right:0}
.nav-cta{background:transparent;border-color:rgba(172,223,200,.45);color:#f0fbf6;transition:background .24s,box-shadow .24s,border-color .24s}
.nav-cta:hover{background:rgba(41,155,112,.16);border-color:#88dabb;box-shadow:0 7px 24px rgba(0,0,0,.12)}
.hero{min-height:720px}
.hero-video{filter:brightness(.88) saturate(1.05) contrast(1.02)}
.hero-gradient{background:linear-gradient(100deg,rgba(5,8,7,.82),rgba(5,8,7,.59) 37%,rgba(5,8,7,.14) 73%,rgba(5,8,7,.06)),linear-gradient(0deg,rgba(5,8,7,.75),transparent 43%)}
.hero .caps{color:#d4eee1}
.hero h1 em{color:#b6ebd7}
.hero .hero-bottom p{color:#e1e9e3}
.btn{transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
.btn-mint{background:#b1ead3;color:#102119}.btn-mint:hover{background:#dcf8e8}
.btn-dark{background:#15251c}.btn-dark:hover{background:#315f49}
.hero .hero-actions .btn:hover{box-shadow:0 14px 24px rgba(0,0,0,.16)}
.pain{transition:background .28s ease, transform .38s cubic-bezier(.2,.7,.2,1)}
.pain:hover{transform:translateY(-4px);background:#fafcf9}
.thesis{background:#17231e}
.solutions-intro,.panel-contable .product-copy,.faq{background:#f7f7f4}
.panel-legal .product-copy,.platform{background:#0b1410}
/* Editorial portraits: black & white until pointer hover. Touch always displays real colors. */
.product-photo{isolation:isolate}
.product-photo img{filter:grayscale(100%) contrast(1.12) brightness(.90);transform:scale(1.001);transition:filter .85s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1)}
.product-photo:hover img,.product-panel:hover .product-photo img{filter:grayscale(0%) saturate(.98) contrast(1.02) brightness(1);transform:scale(1.025)}
.product-photo:after{content:'';position:absolute;pointer-events:none;inset:auto 0 0;height:38%;background:linear-gradient(0deg,rgba(9,20,14,.17),transparent);opacity:.85;transition:opacity .6s}
.product-panel:hover .product-photo:after{opacity:0}
.vertical-hero>img{filter:grayscale(1) contrast(1.1) brightness(.91);transition:filter .8s ease, transform 1.15s ease}
.vertical-hero:hover>img{filter:grayscale(0) saturate(.98) brightness(1);transform:scale(1.012)}
/* Fine editorial motion instead of generic flying cards */
.js .reveal{transform:translateY(14px);transition:transform .62s cubic-bezier(.2,.75,.2,1), opacity .62s ease}
.js .reveal.visible{transform:translateY(0)}
.article-tile{transition:transform .33s cubic-bezier(.2,.8,.2,1),box-shadow .33s,border-color .3s}
.article-tile:hover{transform:translateY(-5px);box-shadow:0 26px 65px rgba(13,30,20,.085)}
.tile-art{transition:filter .5s ease}.article-tile:hover .tile-art{filter:brightness(1.08)}
.article-tile .tile-link span{display:inline-block;transition:transform .24s}
.article-tile:hover .tile-link span{transform:translate(3px,-2px)}
.journey-step{transition:background .3s ease}.journey-step:hover{background:#204331}
/* Brand reveal: crisp and brief. Intro never blocks video loading or repeat navigation. */
.site-splash{background:#070d0a;transition:opacity .54s ease,visibility .54s ease}
.splash-core{width:min(460px,80vw);height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}
.site-splash .splash-mark{width:min(340px,75vw);max-width:100%;height:auto;animation:splashExecutive .72s cubic-bezier(.2,.76,.2,1) both;filter:none}
.splash-line{height:1px;width:0;background:#b2d9c6;animation:splashRule .72s ease .18s both}
.splash-under{font-family:var(--sans);color:#96b9a6;letter-spacing:.24em;font-size:9px;text-align:center}
@keyframes splashExecutive{from{opacity:0;transform:translateY(7px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes splashRule{to{width:100px}}
/* Preserve credible software UI, improve the iPhone frame without a large glowy visual */
.product-showcase{padding-right:126px}
.showcase-badges{gap:8px}
.showcase-badges span{letter-spacing:.13em;border-color:#314038;background:transparent;color:#a9c1b4}
.dash-shell{border-radius:13px;border-color:#304a3d;box-shadow:0 25px 65px rgba(0,0,0,.25)}
.phone-shell{width:220px;border:5px solid #4b5350;outline:2px solid #121c16;border-radius:45px;padding:5px;bottom:-28px;right:0;background:#111a16;box-shadow:0 28px 60px rgba(0,0,0,.42),inset 0 0 0 1px #979f9a}
.phone-shell:before{content:'';position:absolute;left:-8px;top:82px;width:3px;height:42px;background:linear-gradient(#66716b,#111b16);border-radius:2px}
.phone-shell:after{content:'';position:absolute;right:-8px;top:116px;width:3px;height:62px;background:linear-gradient(#66716b,#111b16);border-radius:2px}
.phone-island{position:absolute;z-index:3;top:13px;left:50%;transform:translateX(-50%);height:17px;width:67px;border-radius:30px;background:#101812}
.phone-screen{border-radius:36px;padding:29px 12px 12px;background:#f7faf7;overflow:hidden}
.phone-status{display:flex;align-items:center;justify-content:space-between;padding:0 5px 11px;font-size:9px;font-weight:700;letter-spacing:.015em;color:#1c3023}
.phone-head{gap:8px}.phone-head img{border-radius:3px;object-fit:contain}
.phone-card{border-radius:13px;background:linear-gradient(128deg,#123127,#0b4937);box-shadow:none}
.phone-item{border-radius:11px;box-shadow:none}
.phone-mini div{border-radius:11px}
.phone-tabs{font-size:7px}
.dash-note{color:#6e8076}
/* Form: direct HTTPS lead delivery; accessible focus, no fake client-side success message */
.form-honey{position:absolute!important;left:-10000px!important;opacity:0!important;pointer-events:none!important}
.contact-form .form-actions button{box-shadow:none}
.contact-form input:focus-visible,.contact-form textarea:focus-visible,.contact-form select:focus-visible{outline:none;border-color:#16825c}
/* Mobile rendering rules: calm layouts, no hover simulation, readable tap targets */
@media(max-width:1250px){.brand{width:164px}.product-showcase{padding-right:114px}}
@media(max-width:920px){.brand{width:152px}.nav-cta{font-size:9px}.product-showcase{padding-right:0}.phone-shell{position:relative;margin:24px auto 0;bottom:auto;width:220px}.hero{min-height:760px}.hero h1{max-width:760px}.product-photo img{object-position:center}}
@media(max-width:650px){
 html{scroll-padding-top:70px}
 .brand{width:136px}.brand img{max-height:38px}
 .nav{height:72px}.nav.scrolled{height:68px}.nav-links{top:70px}
 .hero{height:auto;min-height:100svh;max-height:none}
 .hero-content{padding-top:118px;padding-bottom:54px}
 .hero h1{font-size:clamp(50px,13vw,72px);line-height:.96;letter-spacing:-.035em}
 .hero .hero-bottom p{font-size:12px;line-height:1.78}
 .hero-gradient{background:linear-gradient(90deg,rgba(5,8,7,.75),rgba(5,8,7,.29)),linear-gradient(0deg,rgba(5,8,7,.78),transparent 60%)}
 .product-copy{padding:54px 23px 56px}.product-copy h2{font-size:clamp(52px,14vw,73px)}
 .product-photo{min-height:340px}
 .phone-shell{width:218px}
 .product-showcase{padding-right:0}
 .showcase-badges span{font-size:8px}
 .contact-form .form-actions button{width:100%}
}
@media(hover:none),(pointer:coarse){
 .product-photo img,.vertical-hero>img{filter:none!important;transform:none!important}
 .product-panel:hover .product-photo img,.vertical-hero:hover>img{filter:none!important;transform:none!important}
 .pain:hover,.article-tile:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .site-splash{display:none!important}
 .js .reveal{opacity:1!important;transform:none!important}
}
@media(max-width:360px){
 .nav-cta{display:none}
 .nav-menu{margin-left:auto}
 .section-head{gap:12px}
 .section-head .caps{min-width:0;max-width:100%;overflow-wrap:anywhere;flex:1 1 auto}
 .section-head .section-rule{min-width:0;flex:0 0 14px}
}
