/* wfold3 tasteful polish */

/* Smooth fade-in for .is-inview (already triggered by locomotive-lite) */
.webfactor_project,.wf_post_block,.testimonial,.text-img-block,.webfactor-big-small-shell,.webfactor-image-map{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.webfactor_project.is-inview,.wf_post_block.is-inview,.testimonial.is-inview,.text-img-block.is-inview,.webfactor-big-small-shell.is-inview,.webfactor-image-map.is-inview{opacity:1;transform:translateY(0)}

/* Portfolio card hover lift */
.webfactor_project figure,.wf_post_block figure,.webfactor-projects-list figure{transition:transform .4s cubic-bezier(.2,.7,.3,1),box-shadow .4s ease}
.webfactor_project:hover figure,.wf_post_block:hover figure{transform:translateY(-6px);box-shadow:0 24px 48px rgba(29,37,46,.14)}

/* Images inside portfolio get soft rounded corners */
.webfactor_project figure img,.wf_post_block figure img{border-radius:1rem;transition:filter .3s ease}
.webfactor_project:hover figure img,.wf_post_block:hover figure img{filter:saturate(1.08)}

/* Buttons: subtle lift */
.btn-3,.btn-4,.cta-link a{transition:transform .15s ease,box-shadow .2s ease,background .2s ease}
.btn-3:hover,.btn-4:hover,.cta-link a:hover{transform:translateY(-1px)}

/* Input focus ring — unified */
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(22,212,184,.35);outline-offset:2px}

/* Headings: cleaner margin bottom, subtle letter-spacing */
h1,h2,h3{letter-spacing:-.01em}

/* Section titles with brand accent divider (site-wide) */
.title,.wf_title,h2.title,h3.title,.webfactor_intro h1{position:relative}

/* Links inside content: better underline */
.main p a,.wf_post_single .content a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(22,212,184,.5);text-decoration-thickness:2px;transition:text-decoration-color .2s}
.main p a:hover,.wf_post_single .content a:hover{text-decoration-color:#16d4b8}

/* Smooth scroll anchor offset (for fixed header) */
html{scroll-padding-top:6rem}

/* Selection color */
::selection{background:#16d4b8;color:#fff}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  .webfactor_project,.wf_post_block,.testimonial,.text-img-block,.webfactor-big-small-shell,.webfactor-image-map{opacity:1;transform:none;transition:none}
}

/* Scroll-to-top button (injected by JS) */
.wf_top{position:fixed;bottom:3rem;right:3rem;width:4.4rem;height:4.4rem;border-radius:50%;background:#1D252E;color:#fff;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.22);opacity:0;pointer-events:none;transform:translateY(10px);transition:all .25s ease;z-index:100}
.wf_top.visible{opacity:.92;pointer-events:auto;transform:translateY(0)}
.wf_top:hover{opacity:1;background:#16d4b8}
.wf_top svg{width:2rem;height:2rem}
@media(max-width:600px){.wf_top{bottom:2rem;right:2rem;width:4rem;height:4rem}}

/* Strip inline margins/br-stacks site-wide, cleaner rhythm */
.main br+br+br+br{display:none}

/* Section titles underneath main sections get a breath */
section.wf_project__intro h1,section.webfactor_intro h1{line-height:1.08}

/* Small trust badge style */
.wf_trust{display:inline-flex;align-items:center;gap:.6rem;font-size:1.2rem;color:#2a2f34;font-weight:600;letter-spacing:.01em;margin:.3rem .6rem}
.wf_trust svg{width:1.4rem;height:1.4rem;color:#16d4b8}
