/* Motion layer shared by every OXO page. */
body{isolation:isolate;background:#090c0a}
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse 42vw 40vw at 80% 5%,#395d3140,transparent 70%),radial-gradient(ellipse 50vw 40vw at 8% 70%,#17372533,transparent 75%)}
.oxo-pointer{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(ellipse 360px 360px at var(--pointer-x,50%) var(--pointer-y,50%),#b7ed2420,transparent 72%)}
body.pointer-active .oxo-pointer{opacity:1}
.oxo-progress{position:fixed;top:0;left:0;z-index:101;width:100%;height:3px;transform-origin:left;transform:scaleX(0);background:var(--lime);pointer-events:none;box-shadow:0 0 15px #c4e92e99}
.hero{position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;z-index:0;pointer-events:none;width:min(67vw,850px);aspect-ratio:1;right:-16%;top:-45%;border-radius:50%;background:radial-gradient(circle,#9ae22b36 0%,#477b2c20 38%,transparent 68%);filter:blur(30px);animation:oxo-breathe 11s ease-in-out infinite alternate}
.hero .wrap{position:relative;z-index:1}
.home-hero{min-height:min(88svh,850px);display:flex;align-items:center}
.home-hero h1{max-width:850px;font-size:clamp(3.3rem,7.8vw,7.8rem);line-height:.97;letter-spacing:-.075em}
.home-hero .lead{max-width:690px}
.home-hero-panel,.home-service,.home-proof,.step,.blog-card{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
@media(hover:hover){.home-hero-panel:hover,.home-service:hover,.home-proof:hover,.blog-card:hover{transform:translateY(-7px);border-color:#8fb84b;box-shadow:0 22px 55px #0007,0 0 35px #94e32a16}}
.oxo-reveal{opacity:0;transform:translateY(42px);filter:blur(5px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.75,.25,1),filter .8s ease;transition-delay:var(--reveal-delay,0ms)}
.oxo-reveal.oxo-visible{opacity:1;transform:none;filter:none}
.section{position:relative}
.section:nth-of-type(2n)::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 45% 75% at 93% 55%,#245c2a22,transparent 75%)}
@keyframes oxo-breathe{from{transform:translate3d(0,0,0) scale(.95);opacity:.68}to{transform:translate3d(-6%,12%,0) scale(1.2);opacity:1}}
@media(max-width:600px){.home-hero{min-height:auto}.home-hero h1{font-size:clamp(3rem,12vw,4.6rem)}.hero::before{width:110vw;right:-48%;top:-23%}}
@media(prefers-reduced-motion:reduce){.hero::before{animation:none}.oxo-reveal{opacity:1;transform:none;filter:none;transition:none}.oxo-pointer{display:none}.home-hero-panel,.home-service,.home-proof,.step,.blog-card{transition:none}}

/* Bebas Neue supplied by Anas: display type for headlines and key labels. */
@font-face{font-family:"Bebas Neue";src:url("fonts/BebasNeue-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
h1,h2,h3,h4,h5,h6,.price{font-family:"Bebas Neue",Impact,sans-serif;font-weight:400;letter-spacing:.015em}
.hero h1{line-height:.96;letter-spacing:.005em}
.section-head h2,.cta h2,.home-contact h2{line-height:1.04}
.home-hero h1{letter-spacing:.005em;font-size:clamp(4.3rem,10vw,10rem)}
.home-service h3,.blog-card h3,.home-proof strong{font-family:"Bebas Neue",Impact,sans-serif;font-weight:400;letter-spacing:.02em}
@media(max-width:600px){.home-hero h1{font-size:clamp(3.8rem,15vw,6.2rem)}}
