/* v3.4 – A meglévő narancs–grafit arculatra épülő vizuális réteg. */
.site-header{transition:box-shadow .25s,background-color .25s}
.site-header.is-scrolled{background:#f5f3eef5;box-shadow:0 6px 30px #20232112}
#navigation a[aria-current=location]:not(.button){color:#ae440b;text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}
.site-home .hero{position:relative;padding-block:80px 68px}
.site-home .hero-copy{position:relative;z-index:1;min-width:0}
.site-home .hero h1 span{background:linear-gradient(110deg,#b74612,#ef742b);background-clip:text;color:transparent}
.site-home .hero-art{isolation:isolate}
.network-art{position:absolute;width:112%;height:112%;inset:-6%;z-index:-1;stroke:#c8c8b9;stroke-width:1;pointer-events:none}
.network-art .network-orbit{stroke:#e1773b;stroke-opacity:.5}
.network-nodes{fill:#f36b21;stroke:var(--paper);stroke-width:3}
.network-path{stroke-dasharray:1800;animation:network-draw 2.6s ease-out both}
.site-home .ribbon{filter:drop-shadow(0 24px 22px #9d47141c);animation:ribbon-arrive 1.1s cubic-bezier(.2,.7,.2,1) both}
.site-home .art-label{box-shadow:0 8px 30px #2023210b;border:1px solid #d5d6c8}
.site-home .label-one{animation:label-arrive .7s .15s backwards}
.site-home .label-two{animation:label-arrive .7s .3s backwards}
.site-home .label-three{animation:label-arrive .7s .45s backwards}
.system-flow{display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:center;padding-block:40px;border-bottom:1px solid var(--line)}
.flow-intro{margin:0}.flow-intro .eyebrow{display:block;font-size:10px;margin-bottom:12px}.flow-intro>strong{font-size:24px;line-height:1.25;letter-spacing:-.035em}
.system-flow ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0}
.system-flow li{position:relative;display:flex;flex-direction:column;gap:14px;min-width:0}
.flow-icon{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;border:1px solid #d5a17c;background:var(--paper);border-radius:50%;font-size:11px;letter-spacing:.1em;color:#ae440b}
.system-flow li:not(:last-child):after{content:'';position:absolute;top:21px;left:54px;width:calc(100% - 42px);height:1px;background:linear-gradient(90deg,#e77d40,#d0d1c5)}
.system-flow li strong{display:block;font-size:14px;line-height:1.4}.system-flow li div>span{font-size:12px;color:var(--muted)}
.site-home .case-study{position:relative;border-top:3px solid #d4d5c9;box-shadow:0 8px 28px #20232104;transition:border-color .25s,box-shadow .25s,transform .25s}
.site-home .case-study:hover{border-top-color:var(--orange);box-shadow:0 16px 40px #2023210d;transform:translateY(-4px)}
.site-home .example-grid article{position:relative;padding-top:22px;border-top:1px solid #bfc3b5}
.site-home .example-grid article:before{content:'';position:absolute;top:-2px;left:0;width:38px;height:3px;background:var(--orange)}
.site-home .hobby{position:relative;isolation:isolate;background:#202a26;color:#f5f3ee;overflow:hidden}
.site-home .hobby:before{content:'';position:absolute;inset:0;z-index:-1;opacity:.25;background-image:radial-gradient(#bfcbb8 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(100deg,transparent,#000)}
.site-home .hobby .eyebrow{color:#ffab79}.site-home .hobby .section-intro>p{color:#c4cdc4}
.site-home .hobby-card{color:var(--ink);box-shadow:0 15px 35px #0002}
.site-home .hobby-card img{transition:transform .65s cubic-bezier(.2,.7,.2,1);overflow:clip}
.site-home .hobby-card:hover img{transform:scale(1.025)}
.site-home .hobby-body{position:relative;background:var(--paper)}
.site-home .services article{transition:background-color .25s}.site-home .services article:hover{background:#fff6}
.site-home .services svg{color:#b74a12;transition:transform .25s}.site-home .services article:hover svg{transform:translateY(-3px)}
.site-home .steps li>span{color:#ae440b}.site-home .about-portrait>img{outline:1px solid #daba9f;outline-offset:9px}
.site-home .button{transition:background-color .2s,box-shadow .2s,transform .2s}
.site-home .button:hover{box-shadow:0 8px 20px #9c4e1820;transform:translateY(-2px)}
.site-home .button span{transition:transform .2s}.site-home .button:hover span{transform:translate(2px,-2px)}
.site-home .contact{position:relative;background-image:radial-gradient(ellipse at 8% 100%,#ffd7a7aa,transparent 60%)}
.site-home .contact-form{box-shadow:0 20px 60px #74360d24;border:1px solid #fff8}
.site-home :is(input,select,textarea):focus-visible{outline:2px solid #ae440b;outline-offset:3px}
@keyframes network-draw{from{stroke-dashoffset:1800;opacity:0}to{stroke-dashoffset:0;opacity:1}}
@keyframes ribbon-arrive{from{opacity:0;transform:translateY(20px) rotate(-5deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes label-arrive{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@media(max-width:1000px){.system-flow{grid-template-columns:1fr;gap:26px}.flow-intro>strong br{display:none}}
@media(max-width:800px){.site-home .hero{padding-block:42px 35px}.network-art{width:100%;height:100%;inset:0}.system-flow{padding-block:30px}.system-flow ol{gap:16px}.site-home .case-study:hover{transform:none}}
@media(max-width:480px){.system-flow ol{grid-template-columns:1fr;gap:22px}.system-flow li{flex-direction:row;align-items:center;gap:16px}.flow-icon{flex-shrink:0}.system-flow li:not(:last-child):after{left:20px;top:46px;width:1px;height:16px;background:#d0d1c5}.site-home .network-art{display:none}.site-home .hobby{padding-block:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.site-home *,.site-home *:before,.site-home *:after,.site-header{animation:none!important;transition:none!important}.site-home .button:hover,.site-home .case-study:hover,.site-home .hobby-card:hover,.site-home .hobby-card:hover img,.site-home .services article:hover svg{transform:none}}
