/*
Theme Name: DoFunApp
Author: DoFunApp
Version: 7.0.7
Text Domain: dofunapp
*/

@font-face{font-family:"Be Vietnam Pro";src:url("assets/fonts/be-vietnam-pro-400.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Be Vietnam Pro";src:url("assets/fonts/be-vietnam-pro-500.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Be Vietnam Pro";src:url("assets/fonts/be-vietnam-pro-600.ttf") format("truetype");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"Be Vietnam Pro";src:url("assets/fonts/be-vietnam-pro-700.ttf") format("truetype");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:"Be Vietnam Pro";src:url("assets/fonts/be-vietnam-pro-800.ttf") format("truetype");font-style:normal;font-weight:800;font-display:swap}

:root{
  --bg:#06111f;
  --bg-deep:#030a13;
  --surface:rgba(18,40,69,.62);
  --surface-strong:rgba(12,29,52,.84);
  --surface-soft:rgba(255,255,255,.065);
  --line:rgba(165,211,255,.22);
  --line-strong:rgba(107,215,255,.48);
  --text:#f7fbff;
  --muted:#b8c9dc;
  --faint:#7891aa;
  --cyan:#54ddff;
  --blue:#2788ff;
  --violet:#875cff;
  --green:#4fe09a;
  --orange:#ffae57;
  --danger:#ff6e78;
  --shadow:0 24px 70px rgba(0,0,0,.34);
  --radius:22px;
  --container:min(1420px,calc(100vw - 48px));
}

.system-requirements-inline{display:none}
.system-requirements-wide{grid-column:1/-1;margin-top:8px}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-width:320px;
  color:var(--text);
  background:
    radial-gradient(circle at 14% 14%,rgba(38,158,221,.28),transparent 30%),
    radial-gradient(circle at 88% 28%,rgba(82,76,209,.28),transparent 34%),
    radial-gradient(circle at 65% 92%,rgba(255,73,144,.16),transparent 32%),
    linear-gradient(135deg,#071523 0%,#0a2540 42%,#11163a 70%,#210f2f 100%);
  background-attachment:fixed;
  font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.35;
  background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,black,transparent 90%);
}
img{max-width:100%;height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit}
button{color:inherit}
[hidden]{display:none!important}
.container{width:var(--container);margin-inline:auto}
.section{padding:90px 0}
.section-index,.eyebrow,.kicker{
  display:inline-block;
  color:var(--cyan);
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.14;letter-spacing:-.035em}
h1{font-size:clamp(2.8rem,6vw,6.2rem)}
h2{font-size:clamp(2rem,4vw,4rem)}
h3{font-size:1.2rem}
p{color:var(--muted)}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  border-bottom:1px solid var(--line);
  background:rgba(4,15,28,.68);
  backdrop-filter:blur(22px) saturate(135%);
  transition:background .25s ease,box-shadow .25s ease;
}
.has-scrolled .site-header{background:rgba(3,12,23,.9);box-shadow:0 12px 45px rgba(0,0,0,.25)}
.header-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px;min-height:76px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:42px;height:42px;border-radius:12px;box-shadow:0 0 0 1px rgba(117,222,255,.32),0 8px 26px rgba(44,144,255,.35)}
.brand span{display:grid;line-height:1.1}
.brand strong{font-size:1.05rem;letter-spacing:-.02em}
.brand small{margin-top:5px;color:var(--cyan);font-size:.56rem;font-weight:800;letter-spacing:.17em}
.main-nav{display:flex;align-items:center;justify-content:center;gap:6px}
.main-nav a{padding:10px 14px;border-radius:10px;color:var(--muted);font-size:.86rem;font-weight:600;text-decoration:none}
.main-nav a:hover{color:var(--text);background:var(--surface-soft)}
.header-actions{display:flex;align-items:center;gap:8px}

.button{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:inline-flex;
  min-height:44px;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:10px 18px;
  border:1px solid var(--line-strong);
  border-radius:12px;
  color:var(--text);
  background:rgba(11,31,54,.65);
  box-shadow:none;
  cursor:pointer;
  font-weight:700;
  text-decoration:none;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.button::after{
  content:"";
  position:absolute;
  z-index:-1;
  top:-90%;
  left:-38%;
  width:28%;
  height:280%;
  opacity:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);
  transform:rotate(20deg) translateX(-240%);
  transition:transform .55s cubic-bezier(.2,.7,.2,1),opacity .2s ease;
  pointer-events:none;
}
.button:hover{transform:translateY(-2px);border-color:var(--cyan);background:rgba(31,74,113,.78)}
.button:hover::after{opacity:1;transform:rotate(20deg) translateX(640%)}
.button:active{transform:translateY(0) scale(.985)}
.button.primary{border-color:rgba(89,222,255,.78);background:linear-gradient(135deg,#087da5,#4050c9);box-shadow:0 10px 30px rgba(39,143,255,.23)}
.button.primary:hover{background:linear-gradient(135deg,#08a1c2,#5261dd);box-shadow:0 14px 34px rgba(53,169,255,.35)}
.button.dark{background:rgba(3,13,24,.82)}
.button.large{min-height:52px;padding:13px 24px;border-radius:14px}
.button:disabled{opacity:.6;cursor:wait;transform:none}
.text-link{color:var(--cyan);font-size:.9rem;text-decoration:none}
.text-link.strong{font-weight:700}

.hero{
  --hero-shift-x:0px;
  --hero-shift-y:0px;
  --hero-scroll-shift:0px;
  --hero-bg-x:0px;
  --hero-bg-y:0px;
  --hero-orbit-x:0px;
  --hero-orbit-y:0px;
  --hero-orbit-back-x:0px;
  --hero-orbit-back-y:0px;
  position:relative;
  display:flex;
  min-height:calc(100vh - 76px);
  align-items:center;
  overflow:hidden;
  padding:70px 0 56px;
}
.hero::before{
  content:"";
  position:absolute;
  width:620px;height:620px;
  right:-160px;top:-190px;
  border:1px solid rgba(126,214,255,.22);
  border-radius:50%;
  box-shadow:0 0 0 90px rgba(69,164,255,.025),0 0 0 180px rgba(114,91,255,.02);
  transform:translate3d(var(--hero-bg-x),var(--hero-bg-y),0);
  transition:transform .35s cubic-bezier(.2,.7,.2,1);
  will-change:transform;
}
.hero-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);align-items:center;gap:clamp(40px,7vw,105px)}
.hero-copy{position:relative;z-index:2}
.hero-copy h1{max-width:850px;margin:18px 0 24px;font-weight:700}
.hero-copy h1 em{color:transparent;background:linear-gradient(90deg,var(--cyan),#9fb0ff 45%,#f097ff);background-clip:text;font-style:normal}
.hero-copy>p{max-width:650px;font-size:1.08rem}
.hero-actions{display:flex;align-items:center;gap:24px;margin:34px 0}
.hero-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:48px 0 0;padding:1px;list-style:none;border:1px solid var(--line);border-radius:16px;background:var(--line);overflow:hidden}
.hero-facts li{display:grid;gap:3px;padding:16px;background:rgba(6,20,36,.84)}
.hero-facts strong{font-size:.92rem}.hero-facts span{color:var(--faint);font-size:.73rem}

.hero-stage{
  position:relative;
  padding:38px 0 32px;
  perspective:1200px;
  transform:translate3d(var(--hero-shift-x),calc(var(--hero-shift-y) + var(--hero-scroll-shift)),0);
  transition:transform .28s cubic-bezier(.2,.7,.2,1);
  will-change:transform;
  animation:hero-stage-enter .75s .12s both cubic-bezier(.16,1,.3,1);
}
.stage-label,.stage-note{color:var(--faint);font-size:.68rem;font-weight:800;letter-spacing:.16em}
.stage-label{margin:0 0 11px 24px}
.stage-note{text-align:right;margin:13px 30px 0 0}
.app-window{
  position:relative;
  overflow:hidden;
  min-height:430px;
  border:1px solid rgba(175,221,255,.35);
  border-radius:26px;
  background:linear-gradient(145deg,rgba(18,45,77,.78),rgba(12,20,47,.76));
  backdrop-filter:blur(28px);
  box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.14);
  transform:rotateY(-5deg) rotateX(1deg);
  transform-origin:50% 60%;
  animation:app-window-float 7s 1s infinite ease-in-out;
}
.app-window::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.09),transparent 32%);pointer-events:none}
.app-window-top{display:flex;align-items:center;gap:8px;height:58px;padding:0 20px;border-bottom:1px solid var(--line);font-size:.8rem;font-weight:700}
.app-window-top .app-symbol{display:grid;width:30px;height:30px;margin-right:2px;place-items:center;border-radius:9px;background:linear-gradient(135deg,var(--cyan),var(--violet));font-size:.65rem;animation:app-symbol-glow 3.4s infinite ease-in-out}
.app-window-top i{width:8px;height:8px;border-radius:50%;background:var(--line);margin-left:auto}
.app-window-top i+i{margin-left:0}
.app-window-body{display:grid;grid-template-columns:118px 1fr;min-height:372px}
.app-window-body aside{display:grid;align-content:start;gap:13px;padding:20px 14px;border-right:1px solid var(--line);background:rgba(1,9,20,.28)}
.app-window-body aside b,.app-window-body aside span{height:34px;border-radius:10px;background:rgba(255,255,255,.06)}
.app-window-body aside b{background:linear-gradient(90deg,rgba(68,213,255,.32),rgba(103,93,255,.28))}
.app-canvas{padding:24px}
.canvas-heading{display:flex;justify-content:space-between;margin-bottom:26px}.canvas-heading b{width:31%;height:20px;border-radius:5px;background:rgba(255,255,255,.18)}.canvas-heading span{width:80px;height:26px;border-radius:8px;background:rgba(83,209,255,.16)}
.canvas-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.canvas-grid article{display:grid;gap:10px;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.055)}
.canvas-grid i{height:130px;border-radius:10px;background:linear-gradient(135deg,rgba(39,155,208,.58),rgba(118,63,176,.58));background-size:180% 180%;animation:canvas-light 7s infinite alternate ease-in-out}
.canvas-grid article+article i{background:linear-gradient(135deg,rgba(229,98,80,.48),rgba(87,77,186,.6))}
.canvas-grid b{width:66%;height:11px;border-radius:4px;background:rgba(255,255,255,.22)}.canvas-grid span{width:88%;height:8px;border-radius:4px;background:rgba(255,255,255,.09)}
.canvas-progress{height:8px;margin-top:32px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.canvas-progress b{display:block;width:72%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--violet));background-size:180% 100%;animation:progress-glow 3.2s infinite ease-in-out}
.hero-orbit{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none;will-change:transform}.orbit-one{width:260px;height:260px;left:-110px;bottom:5%;background:rgba(55,207,255,.12);transform:translate3d(var(--hero-orbit-back-x),var(--hero-orbit-back-y),0)}.orbit-two{width:180px;height:180px;right:32%;top:4%;background:rgba(169,73,255,.14);transform:translate3d(var(--hero-orbit-x),var(--hero-orbit-y),0)}
.scroll-cue{position:absolute;bottom:20px;left:50%;display:flex;align-items:center;gap:9px;color:var(--faint);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;transform:translateX(-50%)}.scroll-cue span{width:30px;height:1px;background:var(--line-strong)}

@keyframes hero-stage-enter{from{opacity:0}to{opacity:1}}
@keyframes app-window-float{0%,100%{transform:rotateY(-5deg) rotateX(1deg) translateY(0)}50%{transform:rotateY(-4deg) rotateX(.5deg) translateY(-8px)}}
@keyframes app-symbol-glow{0%,100%{box-shadow:0 0 0 rgba(84,221,255,0)}50%{box-shadow:0 0 22px rgba(84,221,255,.38)}}
@keyframes canvas-light{0%{background-position:0% 35%}100%{background-position:100% 65%}}
@keyframes progress-glow{0%,100%{background-position:0 50%;filter:saturate(1)}50%{background-position:100% 50%;filter:saturate(1.35)}}

.motion-ready .motion-reveal{
  opacity:0;
  transform:translate3d(0,24px,0);
  transition:opacity .68s cubic-bezier(.16,1,.3,1),transform .68s cubic-bezier(.16,1,.3,1);
  transition-delay:var(--reveal-delay,0ms);
}
.motion-ready .motion-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
.product-card-media>img,.card-video-thumb img,.product-media-main img,.demo-gallery img{transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .55s ease}
.product-card:hover .product-card-media>img,.product-card:hover .card-video-thumb img{transform:scale(1.045);filter:saturate(1.08)}
.demo-gallery a:hover img{transform:scale(1.07);filter:saturate(1.1)}
.download-card,.support-row{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.download-card:hover,.support-row:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:0 18px 44px rgba(0,0,0,.2)}

.manifesto{padding:0}
.manifesto-grid{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:40px;
  padding:44px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(125deg,rgba(22,60,94,.65),rgba(26,29,72,.55));
  backdrop-filter:blur(18px);
  box-shadow:var(--shadow);
}
.manifesto-grid p{max-width:1050px;margin:0;color:var(--text);font-size:clamp(1.25rem,2.3vw,2.15rem);line-height:1.45;letter-spacing:-.025em}

.workflow-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px}
.workflow-sticky{position:sticky;top:120px;align-self:start}
.workflow-sticky h2{margin:18px 0 20px}.workflow-sticky>p{max-width:510px}
.workflow-visual{display:flex;align-items:center;margin-top:52px}.workflow-file{display:grid;width:82px;height:98px;place-items:center;border:1px solid var(--line-strong);border-radius:15px;background:var(--surface);font-size:.78rem;font-weight:800;box-shadow:var(--shadow)}.file-b{background:linear-gradient(145deg,rgba(67,91,189,.65),rgba(33,47,94,.7))}.workflow-line{flex:1;height:1px;background:linear-gradient(90deg,var(--cyan),var(--violet));position:relative}.workflow-line::after{content:"";position:absolute;right:-1px;top:-4px;border-width:4px 0 4px 7px;border-style:solid;border-color:transparent transparent transparent var(--violet)}
.workflow-steps{display:grid;gap:16px}
.workflow-steps article{
  display:grid;
  grid-template-columns:70px 1fr;
  gap:24px;
  padding:30px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface);
  backdrop-filter:blur(17px);
  box-shadow:0 12px 38px rgba(0,0,0,.14);
  transition:transform .2s ease,border-color .2s ease;
}
.workflow-steps article:hover{transform:translateX(5px);border-color:var(--line-strong)}
.workflow-steps article>span{display:grid;width:54px;height:54px;place-items:center;border:1px solid var(--line-strong);border-radius:50%;color:var(--cyan);font-size:.82rem;font-weight:800}.workflow-steps h3{margin:3px 0 8px}.workflow-steps p{margin:0}

.products-section{position:relative}
.section-head{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:70px;margin-bottom:38px}.section-head h2{margin:14px 0 0}.section-head p{max-width:540px}
.products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.product-card{
  position:relative;
  overflow:hidden;
  display:flex;
  min-height:100%;
  flex-direction:column;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(145deg,rgba(19,47,79,.72),rgba(12,25,50,.72));
  backdrop-filter:blur(18px);
  box-shadow:0 16px 45px rgba(0,0,0,.18);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.product-card:hover{transform:translateY(-7px);border-color:var(--line-strong);box-shadow:0 26px 65px rgba(0,0,0,.27)}
.product-card-media{display:block;aspect-ratio:16/10;overflow:hidden;text-decoration:none}
.product-card-media>img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.product-card:hover .product-card-media>img{transform:scale(1.035)}
.card-video-thumb{position:relative;display:block;width:100%;height:100%;overflow:hidden;background:#030914}
.card-video-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.product-card:hover .card-video-thumb img{transform:scale(1.035)}
.card-video-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(2,8,18,.58),transparent 55%)}
.card-video-thumb i{position:absolute;z-index:2;left:50%;top:50%;display:grid;width:58px;height:58px;place-items:center;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(4,14,31,.78);transform:translate(-50%,-50%)}
.card-video-thumb i::after{content:"";margin-left:4px;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid #fff}
.card-video-thumb small{position:absolute;z-index:2;left:14px;bottom:12px;color:#fff;font-size:.62rem;font-weight:800;letter-spacing:.13em}
.product-card-body{display:flex;flex:1;flex-direction:column;padding:22px}
.product-card h3{margin:14px 0 9px}.product-card h3 a{text-decoration:none}.product-card p{margin-bottom:22px;font-size:.87rem}
.product-art{display:grid;width:100%;height:100%;place-items:center;text-align:center}
.product-art small{display:block;color:rgba(255,255,255,.7);font-size:.62rem;letter-spacing:.16em}.product-art strong{display:block;margin-top:10px;color:#fff;font-size:2.4rem;line-height:1.04;text-shadow:0 8px 22px rgba(0,0,0,.36)}
.product-art-video-short{background:radial-gradient(circle at 74% 22%,#ffc458,#d9511c 42%,#551919)}
.product-art-affiliate{background:radial-gradient(circle at 28% 23%,#55e8ef,#0f759d 42%,#17224d)}
.product-art-long-form{background:radial-gradient(circle at 75% 25%,#ef76d9,#7040c5 44%,#291a5c)}
.product-art-custom{background:radial-gradient(circle at 50% 10%,#65d8ff,#2e4a9f 45%,#111936)}
.badges{display:flex;flex-wrap:wrap;gap:7px}.badge,.product-chip{display:inline-flex;align-items:center;min-height:27px;padding:4px 9px;border:1px solid rgba(111,210,255,.36);border-radius:999px;color:#bdefff;background:rgba(15,108,142,.2);font-size:.65rem;font-weight:700}.badge.premium{color:#ffd798;border-color:rgba(255,185,70,.42);background:rgba(132,82,8,.22)}.badge.new{color:#a9ffd0;border-color:rgba(74,229,146,.4);background:rgba(24,124,79,.22)}
.price-row{display:flex;align-items:baseline;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.price-row del{color:var(--faint);font-size:.78rem}.price-row strong{color:var(--cyan);font-size:1.3rem}
.product-card-actions{display:grid;grid-template-columns:1fr auto;align-items:center;gap:15px;margin-top:16px}

.download-panel{
  display:grid;
  grid-template-columns:minmax(260px,.68fr) minmax(540px,1.32fr);
  align-items:start;
  gap:54px;
  padding:52px;
  border:1px solid var(--line-strong);
  border-radius:28px;
  background:linear-gradient(120deg,rgba(23,85,118,.68),rgba(42,32,105,.64),rgba(93,27,89,.5));
  backdrop-filter:blur(20px);
  box-shadow:var(--shadow);
}
.download-panel h2{margin:14px 0 18px}.download-intro p{max-width:510px;margin:0;color:var(--muted);line-height:1.7}.download-options{display:grid;gap:12px}.download-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:16px;border:1px solid var(--line);border-radius:17px;background:rgba(4,17,34,.46)}.download-card h3{margin:3px 0 4px;font-size:1rem}.download-card p{margin:0;color:var(--muted);font-size:.76rem}.download-card small{color:var(--cyan);font-size:.62rem;font-weight:800;letter-spacing:.1em}.download-icon{display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--line-strong);border-radius:14px;background:linear-gradient(145deg,rgba(19,125,161,.75),rgba(72,63,181,.7));color:#fff;font-size:.7rem;font-weight:900;letter-spacing:.04em}.download-card .button{min-height:42px;margin:0;padding:9px 14px;font-size:.75rem}.download-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.coming-soon{padding:8px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.7rem;font-weight:700;white-space:nowrap}.download-card-muted{opacity:.82}
.system-requirements{border:1px solid var(--line);border-radius:17px;background:rgba(7,24,45,.58);overflow:hidden}.system-requirements summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;cursor:pointer;list-style:none}.system-requirements summary::-webkit-details-marker{display:none}.system-requirements summary span:first-child{display:grid;gap:4px}.system-requirements summary strong{font-size:.88rem}.system-requirements summary small{color:var(--muted);font-size:.72rem}.requirements-toggle{color:var(--cyan);font-size:.7rem;font-weight:800;white-space:nowrap}.system-requirements[open] .requirements-toggle{font-size:0}.system-requirements[open] .requirements-toggle::after{content:"Thu gọn";font-size:.7rem}.requirements-content{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 18px 14px}.requirements-content>div{padding:16px;border:1px solid var(--line);border-radius:14px;background:rgba(3,14,29,.45)}.requirements-content small{color:var(--cyan);font-size:.61rem;font-weight:900;letter-spacing:.1em}.requirements-content h3{margin:6px 0 10px;font-size:.86rem}.requirements-content ul{display:grid;gap:7px;margin:0;padding-left:18px;color:var(--muted);font-size:.72rem;line-height:1.45}.requirements-note{margin:0;padding:0 18px 17px;color:var(--muted);font-size:.68rem;line-height:1.55}
.support-section{padding-top:0}.support-row{display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:30px;padding:26px 30px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.support-row h2{margin:0;font-size:clamp(1.35rem,2.4vw,2rem)}

.shop-hero{padding:76px 0 36px}.shop-hero-grid{display:grid;grid-template-columns:1fr .8fr;align-items:end;gap:70px}.shop-hero h1{margin:10px 0 0;font-size:clamp(3rem,6vw,5.6rem)}.shop-hero p{margin:0 0 10px}.shop-listing{padding:24px 0 100px}
.empty-state,.content-card{padding:36px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);backdrop-filter:blur(18px)}

.product-detail{width:min(1180px,calc(100vw - 48px));padding:44px 0 72px}.product-detail-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);align-items:start;gap:40px}
.product-media-main{position:relative;display:grid;aspect-ratio:16/12;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}
.product-media-main>img,.product-media-main>video,.product-media-main>iframe{display:block;width:100%;height:100%;object-fit:cover;border:0}
.product-media-main .product-art{min-height:100%}
.video-frame{aspect-ratio:16/9;background:#02050b}
.product-media-main.is-portrait,.video-frame.is-portrait{aspect-ratio:4/5;max-height:590px}
.product-media-main.is-portrait>img,.product-media-main.is-portrait>video{object-position:center top}
.play-mark{position:absolute;inset:50% auto auto 50%;display:grid;width:78px;height:78px;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(4,15,31,.76);box-shadow:0 18px 40px rgba(0,0,0,.35);transform:translate(-50%,-50%);cursor:pointer}.play-mark span{width:0;height:0;margin-left:6px;border-top:11px solid transparent;border-bottom:11px solid transparent;border-left:17px solid #fff}
.demo-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.demo-gallery a{display:block;aspect-ratio:1;overflow:hidden;border:1px solid var(--line);border-radius:12px}.demo-gallery img{width:100%;height:100%;object-fit:cover}
.product-summary{min-width:0;padding:6px 0}.product-summary h1{max-width:680px;margin:14px 0 16px;font-size:clamp(1.9rem,2.65vw,3rem);line-height:1.08;letter-spacing:-.035em;text-wrap:balance}.product-chips{display:flex;flex-wrap:wrap;gap:8px}
.detail-price{display:flex;align-items:baseline;gap:16px;margin:18px 0;padding:16px 0;border-block:1px solid var(--line)}.detail-price del{color:var(--faint)}.detail-price strong{color:var(--cyan);font-size:1.75rem}
.feature-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px;margin:0 0 20px;padding:0;list-style:none}.feature-lines li{position:relative;padding-left:21px;color:var(--muted);font-size:.9rem;line-height:1.5}.feature-lines li::before{content:"";position:absolute;left:0;top:.58em;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(84,221,255,.11)}
.purchase-row .button{width:100%}.info-list{margin-top:20px;border:1px solid var(--line);border-radius:16px;overflow:hidden}.info-row{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:14px 17px;background:rgba(8,23,42,.5)}.info-row+.info-row{border-top:1px solid var(--line)}.info-row span{color:var(--faint);font-size:.8rem}.info-row strong{text-align:right;font-size:.83rem}
.product-description-section{padding:36px 0 0}.product-description-content{padding:30px 34px}.product-description-content h1{margin:26px 0 14px;font-size:clamp(1.65rem,3vw,2.4rem)}.product-description-content h2{margin:26px 0 14px;font-size:clamp(1.4rem,2.4vw,2rem)}.product-description-content h3{margin:22px 0 12px;font-size:1.15rem}.product-description-content p,.product-description-content li{font-size:.94rem;line-height:1.7}.product-description-content ol,.product-description-content ul{margin:14px 0 20px;padding-left:24px}.product-description-content>:last-child{margin-bottom:0}

.site-footer{border-top:1px solid var(--line);background:rgba(3,12,23,.64);backdrop-filter:blur(18px)}
.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:34px 0}.footer-copy{margin:16px 0 0;font-size:.78rem}.footer-links{display:flex;gap:20px}.footer-links a{color:var(--muted);font-size:.82rem;text-decoration:none}.footer-links a:hover{color:var(--cyan)}

.purchase-dialog{
  width:min(820px,calc(100vw - 28px));
  max-height:calc(100vh - 28px);
  padding:0;
  overflow:auto;
  border:1px solid rgba(140,220,255,.42);
  border-radius:24px;
  color:var(--text);
  background:linear-gradient(145deg,rgba(13,37,65,.97),rgba(15,19,48,.98));
  box-shadow:0 35px 100px rgba(0,0,0,.62);
  backdrop-filter:blur(26px);
}
.purchase-dialog::backdrop{background:rgba(1,6,14,.78);backdrop-filter:blur(8px)}
.dialog-close{position:absolute;right:16px;top:15px;z-index:2;display:grid;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.06);font-size:1.4rem;cursor:pointer}
.purchase-step{display:none;padding:38px}.purchase-step.is-active{display:block}
.purchase-step h2{margin:9px 50px 9px 0;font-size:clamp(1.75rem,4vw,2.7rem)}.dialog-intro{max-width:650px}
.purchase-product{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:18px;margin:24px 0;padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.05)}.purchase-product span{color:var(--faint);font-size:.78rem}.purchase-product b{color:var(--cyan)}
.purchase-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.purchase-fields label{display:grid;gap:7px;color:var(--muted);font-size:.78rem;font-weight:700}.purchase-fields .wide{grid-column:1/-1}
.purchase-fields input{width:100%;height:47px;padding:0 13px;border:1px solid var(--line);border-radius:11px;color:var(--text);outline:0;background:rgba(2,14,28,.62)}.purchase-fields input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(84,221,255,.1)}
.purchase-consent{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;margin-top:16px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(2,14,28,.42);color:var(--muted);font-size:.76rem;line-height:1.55}.purchase-consent input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--cyan)}.purchase-consent a{color:var(--cyan);font-weight:700}
.form-trap{position:absolute!important;left:-10000px!important}.wide-button{width:100%;margin-top:18px}.form-message{min-height:23px;margin:12px 0 0;color:#ffd0d3;font-size:.82rem}
.inline-payment-grid{display:grid;grid-template-columns:260px 1fr;gap:20px;margin-top:22px}.dialog-qr{display:grid;place-items:center;padding:12px;border-radius:16px;background:#fff}.dialog-qr img{display:block;width:100%;height:auto}.dialog-bank{overflow:hidden;border:1px solid var(--line);border-radius:15px}.dialog-bank>div{display:grid;grid-template-columns:125px 1fr auto;align-items:center;gap:12px;padding:12px 14px;background:rgba(255,255,255,.045)}.dialog-bank>div+div{border-top:1px solid var(--line)}.dialog-bank span{color:var(--faint);font-size:.74rem}.dialog-bank strong{font-size:.86rem}.dialog-bank .important strong{color:var(--cyan);font-size:1rem}.dialog-bank button{padding:4px 7px;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--muted);font-size:.66rem;cursor:pointer}.payment-warning{margin:17px 0 0;padding:12px 14px;border-left:3px solid var(--orange);background:rgba(255,174,87,.08);font-size:.8rem}
.paid-button.is-confirmed,.button.is-confirmed{border-color:rgba(79,224,154,.55);background:rgba(35,130,86,.35)}
.button.is-confirmed:disabled{opacity:1;cursor:default;border-color:#4fe09a;background:linear-gradient(135deg,#08754c,#229164);color:#fff}
.button.is-confirmed:disabled::before{content:"✓";font-weight:800}
.form-message.success{color:#8bf0ba}
.payment-hours{margin:10px 0 0;padding:10px 13px;border:1px solid rgba(84,221,255,.25);border-radius:10px;color:#c7eff9;background:rgba(34,155,190,.09);font-size:.78rem;text-align:center}

.woocommerce-notices-wrapper,.woocommerce-message,.woocommerce-error,.woocommerce-info{margin:0 0 18px;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);list-style:none}.woocommerce-error{border-color:rgba(255,110,120,.5)}
.woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}.woocommerce-MyAccount-navigation a{display:block;padding:9px 13px;border:1px solid var(--line);border-radius:10px;text-decoration:none}.woocommerce-MyAccount-content,input.input-text,textarea,select{color:var(--text);background:rgba(7,22,40,.78)}
.dofun-purchases{display:grid;gap:12px}.dofun-purchase{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.dofun-legal{max-width:980px}.legal-effective{display:inline-flex;flex-wrap:wrap;gap:5px;margin:0 0 20px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:rgba(84,221,255,.07);color:var(--muted);font-size:.76rem}.legal-intro{max-width:880px;font-size:1rem;line-height:1.75}.legal-toc{margin:28px 0;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:rgba(3,17,33,.42)}.legal-toc>strong{display:block;margin-bottom:12px;color:var(--text)}.legal-toc ol{columns:2;gap:40px;margin:0;padding-left:22px}.legal-toc li{break-inside:avoid;margin:0 0 8px;color:var(--faint);font-size:.8rem}.legal-toc a{color:var(--muted);text-decoration:none}.legal-toc a:hover{color:var(--cyan)}.legal-section{scroll-margin-top:100px;padding:25px 0;border-top:1px solid var(--line)}.legal-section h2{margin:0 0 13px;font-size:clamp(1.25rem,2.5vw,1.65rem)}.legal-section p,.legal-section li{color:var(--muted);font-size:.88rem;line-height:1.75}.legal-section ul{display:grid;gap:8px;padding-left:22px}.legal-note{margin-top:24px;padding:16px 18px;border-left:3px solid var(--cyan);border-radius:0 12px 12px 0;background:rgba(84,221,255,.07);color:var(--muted);font-size:.8rem;line-height:1.6}

@media(max-width:1100px){
  :root{--container:min(100% - 34px,940px)}
  .main-nav{display:none}
  .header-inner{grid-template-columns:1fr auto}
  .hero{min-height:auto;padding-top:56px}
  .hero-grid{grid-template-columns:1fr}
  .hero-copy{max-width:780px}
  .hero-stage{max-width:850px}
  .workflow-grid{gap:50px}
  .products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-detail-grid{grid-template-columns:1fr}
  .product-detail{width:min(760px,calc(100vw - 34px))}
  .product-media-main{max-height:560px}
  .product-media-main.is-portrait,.video-frame.is-portrait{aspect-ratio:4/3;max-height:560px}
}

@media(max-width:760px){
  :root{--container:calc(100% - 24px);--radius:17px}
  body{font-size:15px}
  .section{padding:62px 0}
  .site-header{position:relative}
  .header-inner{min-height:68px;gap:12px}
  .brand img{width:38px;height:38px}.brand small{display:none}
  .header-actions .button{min-height:40px;padding:8px 11px;font-size:.72rem}
  .hero{padding:52px 0 50px}
  .hero-grid{gap:28px}
  .hero-copy h1{font-size:clamp(2.55rem,14vw,4.4rem)}
  .hero-actions{align-items:stretch;flex-direction:column;gap:14px}.hero-actions .button{width:100%}
  .hero-facts{grid-template-columns:1fr}.hero-facts li{grid-template-columns:100px 1fr;align-items:center}
  .hero-stage{transform:none}.app-window{min-height:330px;border-radius:18px;transform:none;animation:none}.app-window-body{grid-template-columns:70px 1fr;min-height:280px}.app-window-body aside{padding:13px 8px}.app-canvas{padding:15px}.canvas-grid i{height:84px}
  .scroll-cue{display:none}
  .manifesto-grid{grid-template-columns:1fr;gap:18px;padding:27px}
  .workflow-grid,.section-head,.download-panel,.shop-hero-grid{grid-template-columns:1fr;gap:30px}
  .workflow-sticky{position:static}.workflow-visual{margin-top:30px}
  .workflow-steps article{grid-template-columns:52px 1fr;gap:15px;padding:21px}.workflow-steps article>span{width:44px;height:44px}
  .products-grid{grid-template-columns:1fr}
  .section-head{align-items:start}
  .download-panel{padding:30px}
  .download-card{grid-template-columns:auto 1fr}.download-card>.button,.download-card>.download-actions,.download-card>.coming-soon{grid-column:1/-1;width:100%}.download-actions{justify-content:stretch}.download-actions .button{flex:1}.coming-soon{text-align:center}
  .requirements-content{grid-template-columns:1fr}.system-requirements summary{align-items:flex-start}.requirements-toggle{padding-top:2px}
  .support-row{grid-template-columns:1fr;gap:13px}.support-row .button{width:100%}
  .product-detail{width:calc(100% - 24px);padding-top:28px}.product-summary h1{font-size:clamp(1.85rem,9vw,2.25rem);line-height:1.12}.feature-lines{grid-template-columns:1fr}.demo-gallery{grid-template-columns:repeat(3,1fr)}.product-description-section{padding-top:24px}.product-description-content{padding:24px 20px}
  .product-media-main.is-portrait,.video-frame.is-portrait{aspect-ratio:3/4;max-height:none}
  .footer-grid,.footer-links{align-items:flex-start;flex-direction:column}.footer-grid{padding:30px 0}.footer-links{gap:10px}
  .purchase-step{padding:30px 20px 22px}.purchase-fields,.inline-payment-grid{grid-template-columns:1fr}.purchase-product{grid-template-columns:1fr auto}.purchase-product>span{grid-column:1/-1}.dialog-qr{max-width:300px;margin:auto}.dialog-bank>div{grid-template-columns:1fr auto}.dialog-bank span{grid-column:1/-1}.dialog-bank strong{word-break:break-word}
  .legal-toc ol{columns:1}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.hero-stage,.hero::before,.hero-orbit,.motion-ready .motion-reveal{opacity:1!important;transform:none!important}.button::after{display:none!important}}
