
/* ==========================================================================
   ONEDEV STUDIO — V15 VISUAL / MOTION / MOBILE FINAL
   No new content. This layer redesigns and stabilizes the existing V14 page.
   ========================================================================== */
:root{
 --v15-gold:#ffc700;--v15-orange:#ff8c00;--v15-ink:#030404;
 --v15-card:rgba(10,12,12,.78);--v15-line:rgba(255,255,255,.10);
 --v15-ease:cubic-bezier(.16,1,.3,1);
}
html{scroll-behavior:smooth;overflow-x:hidden}
body{overflow-x:hidden;background:
 radial-gradient(circle at 15% 12%,rgba(255,199,0,.035),transparent 20%),
 radial-gradient(circle at 86% 38%,rgba(255,140,0,.025),transparent 23%),
 #030404}
body:before{content:"";position:fixed;inset:0;z-index:99999;pointer-events:none;opacity:.022;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
::selection{background:#ffc700;color:#080808}

/* HEADER — glass / compact / mobile-ready */
.header{top:12px!important;width:min(1460px,calc(100% - 28px))!important;left:50%!important;right:auto!important;transform:translateX(-50%);border:1px solid rgba(255,255,255,.11)!important;border-radius:14px!important;background:rgba(6,8,8,.70)!important;backdrop-filter:blur(22px) saturate(140%);box-shadow:0 12px 50px rgba(0,0,0,.28);padding-inline:16px!important;transition:background .3s,border-color .3s,box-shadow .3s}
.header.scrolled{background:rgba(5,7,7,.91)!important;border-color:rgba(255,199,0,.16)!important;box-shadow:0 18px 60px rgba(0,0,0,.48)}
#nav{gap:4px!important}#nav a{padding:8px 10px!important;border-radius:8px!important;position:relative}#nav a:hover{background:rgba(255,255,255,.045)}#nav a.active{color:#fff!important;background:rgba(255,199,0,.07)}#nav a.active:after{content:"";position:absolute;left:10px;right:10px;bottom:3px;height:1px;background:linear-gradient(90deg,transparent,#ffc700,transparent);box-shadow:0 0 8px #ffc700}
#menu{display:none;width:39px;height:39px;border:1px solid #353a3a;border-radius:9px;background:#0a0d0d;color:#ffc700;font-size:18px;cursor:pointer;z-index:1003}
body.menu-open{overflow:hidden}

/* GLOBAL SECTION RHYTHM + separators */
.v13-section,.v14-section{position:relative}
.v13-section:before,.v14-section:before{content:"";position:absolute;top:0;left:50%;width:min(1220px,82%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.075),transparent)}
.v13-section-head h2,.v14-included-copy h2,.v14-estimator-copy h2,.v13-why-copy h2,.v13-faq-copy h2{filter:drop-shadow(0 12px 32px rgba(0,0,0,.3))}
.v13-kicker{display:flex!important;align-items:center;gap:9px}.v13-kicker:before{content:"";width:22px;height:1px;background:linear-gradient(90deg,#ffc700,transparent)}

/* HERO — stronger depth */
.v13-hero{min-height:100svh}
.v13-hero-bg{filter:saturate(1.05) contrast(1.05)}
.v13-hero:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-2;background:linear-gradient(90deg,rgba(255,199,0,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:90px 90px;mask-image:radial-gradient(circle at 60% 45%,black,transparent 68%)}
.v13-hero-copy{position:relative}.v13-hero-copy:before{content:"";position:absolute;width:220px;height:220px;left:-120px;top:20%;border-radius:50%;background:#ffc7000c;filter:blur(70px);pointer-events:none}
.v13-hero h1{max-width:950px;text-wrap:balance}
.v13-btn{position:relative;overflow:hidden}.v13-btn.primary:before{content:"";position:absolute;top:-80%;left:-40%;width:30%;height:260%;transform:rotate(25deg);background:linear-gradient(90deg,transparent,#fff8,transparent);transition:left .7s var(--v15-ease)}.v13-btn.primary:hover:before{left:120%}
.v13-hero-panel{transform:perspective(1000px) rotateY(-2deg);transition:transform .5s var(--v15-ease),border-color .3s}.v13-hero-panel:hover{transform:perspective(1000px) rotateY(0) translateY(-6px);border-color:#6e5514}
.v13-panel-main:after{content:"";position:absolute;width:150px;height:150px;right:30px;top:80px;border:1px solid rgba(255,199,0,.13);border-radius:50%;box-shadow:0 0 40px rgba(255,166,0,.06) inset;animation:v15Orb 8s ease-in-out infinite}

/* CARD system — unified premium visual */
.v13-universe,.v13-project,.v13-price,.v13-why-grid article,.v13-blog-grid article,.v14-solution,.v14-included-grid article{
 background:linear-gradient(145deg,rgba(14,17,17,.88),rgba(6,8,8,.92))!important;
 border-color:rgba(255,255,255,.10)!important;
 box-shadow:0 14px 45px rgba(0,0,0,.18);
}
.v13-universe:hover,.v13-project:hover,.v13-price:hover:not(.locked),.v13-why-grid article:hover,.v13-blog-grid article:hover,.v14-solution:hover,.v14-included-grid article:hover{
 border-color:rgba(255,190,0,.42)!important;
 box-shadow:0 28px 70px rgba(0,0,0,.48),0 0 35px rgba(255,170,0,.045);
}
.v13-universe,.v14-solution,.v13-price,.v13-project{isolation:isolate}
.v13-universe:before,.v14-solution:before,.v13-price:before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,199,0,.10),transparent 34%);transition:opacity .25s}.v13-universe:hover:before,.v14-solution:hover:before,.v13-price:hover:before{opacity:1}

/* Projects: more cinematic */
.v13-project-visual{transition:transform .7s var(--v15-ease),filter .4s}.v13-project:hover .v13-project-visual{transform:scale(1.018);filter:brightness(1.08)}
.v13-project-visual:after{transition:transform .8s var(--v15-ease),opacity .4s}
.v13-project:hover .v13-project-visual:after{transform:scale(1.08)}
.v13-project-filters{position:sticky;top:92px;z-index:20;width:max-content;max-width:100%;padding:5px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(5,7,7,.75);backdrop-filter:blur(16px)}
.v13-project-filters button{border:0!important}

/* Expertise screen */
.v13-expertise-screen{background:linear-gradient(145deg,rgba(14,17,17,.92),rgba(5,7,7,.95));box-shadow:0 35px 100px rgba(0,0,0,.48),0 0 60px rgba(255,190,0,.035)}
.v13-screen-grid{animation:v15GridDrift 18s linear infinite}
.v13-expertise-list article b{transition:transform .3s}.v13-expertise-list article:hover b,.v13-expertise-list article.active b{transform:rotate(45deg)}

/* Pricing */
.v13-price.featured{box-shadow:0 30px 80px rgba(0,0,0,.52),0 0 50px rgba(255,176,0,.07)}
.v13-popular{box-shadow:0 5px 20px rgba(255,174,0,.2)}
.v13-price>a,.v14-estimator-result a{transition:.25s}.v13-price>a:hover,.v14-estimator-result a:hover{background:#ffc700;color:#080808;box-shadow:0 8px 25px rgba(255,174,0,.14)}

/* Timeline */
.v13-timeline article>span{transition:.35s var(--v15-ease)}.v13-timeline article:hover>span{transform:scale(1.1);background:#ffc700;color:#080808;box-shadow:0 0 35px rgba(255,190,0,.22)}

/* Estimator */
.v14-estimator{box-shadow:0 40px 110px rgba(0,0,0,.55),0 0 50px rgba(255,190,0,.025)}
.v14-estimator-options button{position:relative;overflow:hidden}.v14-estimator-options button.active:after{content:"✓";position:absolute;right:9px;top:8px;color:#ffc700;font-weight:900}
.v14-estimator-result strong{transition:opacity .2s,transform .2s}

/* Reviews */
.v13-review-track article{box-shadow:0 25px 70px rgba(0,0,0,.28)}
.v13-review-arrow{transition:.25s}.v13-review-arrow:hover{background:#ffc700;color:#080808;transform:scale(1.08)}
.v13-review-dots button{cursor:pointer;transition:.3s}

/* FAQ */
.v13-faq details{transition:background .25s,padding .25s}.v13-faq details[open]{background:linear-gradient(90deg,rgba(255,199,0,.035),transparent);padding-inline:14px}.v13-faq summary span{transition:transform .3s}.v13-faq details[open] summary span{transform:rotate(180deg)}

/* Contact + CTA */
.v14-contact-strip{box-shadow:0 25px 70px rgba(0,0,0,.28)}
.v13-final-cta{box-shadow:0 45px 130px rgba(0,0,0,.7),0 0 80px rgba(255,166,0,.07)}
.v13-final-content{animation:v15ContentFloat 6s ease-in-out infinite}
.v13-final-overlay:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.025) 47%,transparent 64%);transform:translateX(-100%);animation:v15Shimmer 8s ease-in-out infinite}

/* Footer */
.footer-v10{position:relative;background:linear-gradient(180deg,#050707,#020303)!important}.footer-v10:before{content:"";position:absolute;left:50%;top:0;width:min(1300px,90%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#ffc70055,transparent)}
.footer-main a,.footer-bottom a{transition:color .2s,transform .2s}.footer-main a:hover,.footer-bottom a:hover{color:#ffc700!important;transform:translateX(2px)}

/* Floating project: desktop polish */
.floating-project{backdrop-filter:blur(15px);box-shadow:0 15px 45px rgba(0,0,0,.45)!important;transition:.3s var(--v15-ease)}.floating-project:hover{transform:translateY(-5px)}

/* Mobile menu overlay */
@media(max-width:1120px){
 #menu{display:grid;place-items:center}
 #nav{position:fixed!important;inset:70px 14px auto 14px!important;z-index:1002;display:flex!important;flex-direction:column;align-items:stretch!important;gap:4px!important;padding:10px!important;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(5,7,7,.97);backdrop-filter:blur(25px);box-shadow:0 30px 90px #000;opacity:0;visibility:hidden;transform:translateY(-12px) scale(.98);transition:.28s var(--v15-ease)}
 body.menu-open #nav{opacity:1;visibility:visible;transform:none}
 #nav a{padding:13px 14px!important;font-size:10px!important}
 #nav a.active:after{left:14px;right:auto;width:24px}
 .head-actions{margin-left:auto}
}

/* TABLET */
@media(max-width:900px){
 .header{top:8px!important;width:calc(100% - 16px)!important;padding-inline:10px!important}
 .v13-wrap{width:min(100% - 32px,var(--v13-max))}
 .v13-section,.v14-section{padding:78px 0}
 .v13-hero-content{padding:110px 0 75px!important}
 .v13-hero-panel{transform:none;min-height:370px}
 .v13-section-head{gap:18px!important;margin-bottom:28px!important}
 .v13-project-filters{top:74px;overflow-x:auto;width:100%;border-radius:12px;scrollbar-width:none}
 .v13-project-filters::-webkit-scrollbar{display:none}
 .v13-price-grid{grid-template-columns:1fr 1fr!important}
 .v13-price.featured{transform:none!important}
 .v13-timeline{grid-template-columns:1fr 1fr!important}
 .v13-timeline article{padding:8px 12px 22px!important;border-left:1px solid rgba(255,199,0,.22)}
 .v13-timeline article>span{width:45px;height:45px;margin-bottom:15px}
 .v14-contact-strip{margin-top:55px!important}
}

/* PHONE — full visual rebuild */
@media(max-width:620px){
 html{scroll-padding-top:82px}
 body{background:#030404}
 .header{height:58px!important;border-radius:11px!important}
 .brand-header img{max-height:31px!important;width:auto!important}
 .head-actions .btn,.head-actions>a:not(.brand){display:none!important}
 #menu{width:36px;height:36px}
 #nav{inset:74px 8px auto 8px!important}
 .v13-wrap{width:calc(100% - 24px)}
 .v13-section,.v14-section{padding:62px 0}
 .v13-section:before,.v14-section:before{width:88%}
 .v13-section-head h2,.v14-included-copy h2,.v14-estimator-copy h2,.v13-why-copy h2,.v13-faq-copy h2{font-size:34px!important;letter-spacing:-1.7px!important}
 .v13-section-head p{font-size:10px!important;line-height:1.7!important}
 .v13-kicker{font-size:7px!important}

 /* Hero mobile */
 .v13-hero{min-height:auto;padding-bottom:0}
 .v13-hero-bg{background-position:61% center;opacity:.72}
 .v13-hero:before{background:linear-gradient(180deg,rgba(0,0,0,.34),rgba(0,0,0,.42) 45%,#030404 93%),radial-gradient(circle at 65% 28%,rgba(255,173,0,.11),transparent 25%)}
 .v13-hero-grid{background-size:48px 48px;opacity:.08}
 .v13-hero-content{display:block!important;padding:105px 0 55px!important}
 .v13-eyebrow{font-size:6.5px;padding:6px 8px}
 .v13-hero h1{font-size:45px!important;line-height:.96!important;letter-spacing:-2.7px!important;margin:18px 0!important}
 .v13-hero-copy>p{font-size:10.5px!important;line-height:1.7!important;max-width:95%}
 .v13-hero-actions{display:grid!important;grid-template-columns:1fr!important;width:100%;gap:8px!important}
 .v13-btn{justify-content:space-between;width:100%;padding:13px 14px!important}
 .v13-hero-meta{gap:10px!important;margin-top:18px!important;font-size:6.5px!important}
 .v13-hero-panel{margin-top:35px;min-height:315px!important;border-radius:13px!important}
 .v13-panel-top{height:42px!important;padding-inline:12px!important;font-size:6.5px!important}
 .v13-panel-main{padding:36px 20px!important}
 .v13-panel-main strong{font-size:37px!important}
 .v13-panel-main:after{width:100px;height:100px;right:20px;top:70px}
 .v13-panel-stats div{padding:11px!important}.v13-panel-stats small{font-size:6px!important}.v13-panel-stats b{font-size:8px!important}
 .v13-scroll-cue{display:none}
 .v13-trust-inner{min-height:46px!important;gap:15px!important;font-size:6.5px!important;animation:v15Ticker 18s linear infinite;width:max-content}

 /* cards */
 .v13-universe-grid,.v14-solutions-grid,.v13-project-grid,.v13-blog-grid,.v14-included-grid,.v13-why-grid{grid-template-columns:1fr!important}
 .v13-universe{min-height:330px!important;padding:21px!important}.v13-universe a{left:21px!important}
 .v14-solution{min-height:270px!important;padding:20px!important}
 .v13-project,.v13-universe,.v14-solution,.v13-price,.v13-blog-grid article,.v13-why-grid article{border-radius:12px!important}
 .v13-project-visual,.v13-project.wide .v13-project-visual{height:210px!important}
 .v13-project-visual strong{font-size:31px!important;letter-spacing:-1.5px!important}
 .v13-project-info{padding:15px!important}
 .v13-project-filters{gap:2px;padding:4px!important}
 .v13-project-filters button{flex:0 0 auto;padding:7px 10px!important;font-size:7px!important}

 /* expertise */
 .v13-expertise{gap:18px!important}
 .v13-expertise-list article{grid-template-columns:28px 1fr 20px!important;padding:14px 8px!important}
 .v13-expertise-list article.active{padding-left:12px!important}
 .v13-expertise-list h3{font-size:10px!important}.v13-expertise-list p{font-size:7.5px!important}
 .v13-expertise-screen{min-height:350px!important;border-radius:12px!important}
 .v13-screen-body{padding:48px 20px!important}.v13-screen-body h3{font-size:28px!important}.v13-screen-body p{font-size:9px!important}

 /* pricing */
 .v13-price-grid{grid-template-columns:1fr!important}
 .v13-price{min-height:auto!important;padding:21px!important;padding-bottom:70px!important}
 .v13-price.locked{padding-bottom:65px!important}
 .v13-price h3{font-size:27px!important}.v13-price p{min-height:0!important}
 .v13-price>a{left:21px!important;right:21px!important}
 .v13-price.featured{order:-1;border-color:#7e5e10!important}

 /* included / method */
 .v14-included-layout,.v14-estimator-layout,.v13-why-layout,.v13-faq-layout{gap:28px!important}
 .v14-code-card pre{font-size:8px!important;overflow-x:auto}
 .v13-timeline{grid-template-columns:1fr!important;gap:0!important}
 .v13-timeline article{display:grid;grid-template-columns:48px 1fr;gap:14px;border-left:0!important;border-bottom:1px solid #242828;padding:15px 0!important}
 .v13-timeline article>span{grid-row:1/3;margin:0!important}
 .v13-timeline article div{grid-column:2}
 .v13-why-grid article{min-height:140px!important}

 /* estimator */
 .v14-estimator{border-radius:12px!important}
 .v14-estimator-options{grid-template-columns:1fr 1fr!important;padding:10px!important;gap:6px!important}
 .v14-estimator-options button{min-height:60px!important;font-size:7px!important}
 .v14-estimator-result{grid-template-columns:1fr 1fr!important;padding:13px!important}
 .v14-estimator-result a{grid-column:1/-1!important;text-align:center;padding:10px!important}

 /* reviews */
 .v13-review-stage{margin-top:8px!important}
 .v13-review-track{min-height:340px!important}
 .v13-review-track article{padding:25px 20px!important;border-radius:12px!important}
 .v13-review-track blockquote{font-size:21px!important;line-height:1.35!important;margin:22px 0!important}

 /* FAQ */
 .v13-faq-card{margin-top:20px!important}.v13-faq summary{font-size:9px!important;gap:15px;padding:17px 0!important}.v13-faq details p{font-size:8px!important;padding-right:0!important}

 /* contact / final CTA */
 .v14-contact-strip{width:calc(100% - 24px)!important;margin-top:48px!important;border-radius:11px!important}
 .v14-contact-strip>div{padding:14px!important}.v14-contact-strip>a{padding:15px!important}
 .v13-final-cta{width:calc(100% - 16px)!important;min-height:520px!important;margin-top:14px!important;border-radius:13px!important}
 .v13-final-bg{background-position:62% center}
 .v13-final-content{width:90%!important;padding:55px 8px!important;animation:none}
 .v13-final-content>span{font-size:6.5px!important}
 .v13-final-content h2{font-size:42px!important;letter-spacing:-2px!important}
 .v13-final-content p{font-size:9.5px!important;line-height:1.7!important}
 .v13-final-actions>a{width:100%;justify-content:space-between}
 .v13-final-orbit.orbit-a{width:600px}.v13-final-orbit.orbit-b{width:800px}
 .v13-final-horizon{width:450px}

 /* footer */
 .footer-main{grid-template-columns:1fr!important;gap:26px!important;padding-inline:18px!important}
 .footer-main>div:not(.footer-brand){display:grid!important;grid-template-columns:1fr 1fr;gap:8px 15px}
 .footer-main>div>b{grid-column:1/-1}
 .footer-bottom{flex-direction:column!important;align-items:flex-start!important;gap:13px!important;padding-inline:18px!important}
 .footer-bottom>div{display:flex;flex-wrap:wrap;gap:12px}
 .floating-project{left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;justify-content:center!important;border-radius:10px!important}
 .floating-project span{display:none!important}
 .privacy-note{left:10px!important;right:10px!important;bottom:70px!important;width:auto!important}
}

/* Tiny phones */
@media(max-width:380px){
 .v13-hero h1{font-size:39px!important}
 .v13-section-head h2,.v14-included-copy h2,.v14-estimator-copy h2,.v13-why-copy h2,.v13-faq-copy h2{font-size:30px!important}
 .v14-estimator-options{grid-template-columns:1fr!important}
 .v13-panel-main strong{font-size:32px!important}
 .v13-final-content h2{font-size:37px!important}
}

/* Motion */
@keyframes v15Orb{50%{transform:translateY(-12px) scale(1.06);opacity:.45}}
@keyframes v15GridDrift{to{background-position:40px 40px}}
@keyframes v15ContentFloat{50%{transform:translateY(-5px)}}
@keyframes v15Shimmer{0%,55%{transform:translateX(-110%)}85%,100%{transform:translateX(110%)}}
@keyframes v15Ticker{to{transform:translateX(-25%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.v13-panel-main:after,.v13-screen-grid,.v13-final-content,.v13-final-overlay:after,.v13-trust-inner{animation:none!important}}
