
.touch-originals{--bg:#08060f;--panel:#151020;--violet:#9d39ff;--lilac:#d7a6ff;--muted:#b0a9bd;--line:#30283d}
#touch-originals *{box-sizing:border-box}
html:has(body.touch-originals-page){scroll-behavior:smooth}
body.touch-originals-page{margin:0;background:var(--bg);color:#fff;font:16px 'DM Sans',sans-serif;overflow-x:hidden}
.touch-originals::before{content:'';position:fixed;inset:0;background:radial-gradient(ellipse at 85% 4%,#3b11602c,transparent 45%);pointer-events:none;z-index:-1}
#touch-originals a{color:inherit;text-decoration:none}
#touch-originals button,#touch-originals input{font:inherit}
#touch-originals button{cursor:pointer}
#touch-originals button:focus-visible,#touch-originals a:focus-visible,#touch-originals input:focus-visible{outline:2px solid #e2baff;outline-offset:4px}
#touch-originals .wrap{width:min(1330px,calc(100% - 88px));margin:auto}
#touch-originals .eyebrow{text-transform:uppercase;letter-spacing:.28em;color:#e6caff;font-size:11px;font-weight:700}
#touch-originals .gradient{background:linear-gradient(105deg,#fff 8%,#d49cff 60%,#8f2ef0);-webkit-background-clip:text;background-clip:text;color:transparent}
#touch-originals header{position:fixed;z-index:100;top:0;left:0;right:0;transition:.3s;border-bottom:1px solid transparent}
#touch-originals header.scrolled{background:#090712ed;backdrop-filter:blur(20px);border-color:#ffffff13}
#touch-originals .nav{height:80px;display:flex;align-items:center;gap:35px}
#touch-originals .logo{font-family:'Space Grotesk',sans-serif;font-size:27px;font-weight:700;letter-spacing:-.075em;white-space:nowrap}
#touch-originals .mark{display:inline-block;vertical-align:middle;width:20px;height:27px;background:linear-gradient(160deg,#b949ff,#7021dd);clip-path:polygon(20% 0,100% 0,65% 47%,90% 47%,36% 100%,0 100%,26% 51%,0 51%);margin-right:10px}
#touch-originals .navlinks{display:flex;align-items:center;gap:32px;margin:auto;font-size:13px;font-weight:600;color:#d6cfdf}
#touch-originals .navlinks a:hover{color:white}
#touch-originals .actions{display:flex;gap:10px;align-items:center}
#touch-originals .btn{border:1px solid #ffffff47;border-radius:14px;display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:15px 22px;font-size:13px;font-weight:700;background:#ffffff09;transition:transform .22s,box-shadow .22s,background .22s}
#touch-originals .btn:hover{transform:translateY(-3px)}
#touch-originals .btn.primary{background:linear-gradient(120deg,#b64dff,#7417e4);border-color:#c46aff;box-shadow:0 12px 36px #8711ff50}
#touch-originals .btn.primary:hover{box-shadow:0 17px 40px #9637ff80}
#touch-originals .menu{display:none;border:0;color:#fff;background:none;font-size:26px}
#touch-originals .hero{position:relative;min-height:770px;padding-top:166px;overflow:hidden;border-bottom:1px solid #ffffff10}
#touch-originals .hero::after{content:'';position:absolute;inset:auto -10% 0;height:250px;background:linear-gradient(0deg,var(--bg),transparent);pointer-events:none}
#touch-originals .aurora{position:absolute;width:850px;height:660px;right:-130px;top:0;background:radial-gradient(ellipse,#7822d152,#30134630 45%,transparent 70%);filter:blur(37px);pointer-events:none}
#touch-originals .hero-grid{display:grid;grid-template-columns:52% 48%;position:relative;z-index:2}
#touch-originals .hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(50px,5.25vw,85px);font-weight:700;line-height:1.015;letter-spacing:-.075em;margin:20px 0 22px;max-width:790px}
#touch-originals .hero p{font-size:17px;line-height:1.7;color:#d2c9dc;max-width:575px}
#touch-originals .hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:32px}
#touch-originals .hero-art{position:relative;height:610px;margin-top:-66px;margin-right:-8vw;pointer-events:none}
#touch-originals .hero-art img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;mask-image:linear-gradient(to right,transparent 0%,#000 22%,#000 90%,transparent 100%);filter:drop-shadow(0 12px 40px #8637f533)}
#touch-originals .orbit{position:absolute;z-index:2;border:1px solid #b756ff7a;box-shadow:0 0 25px #aa52ff45,inset 0 0 30px #b554ff16;border-radius:40px;transform:rotate(-18deg);width:95%;height:39%;top:48%;left:5%;animation:touch-orbit 9s ease-in-out infinite;opacity:.5}
#touch-originals .float{position:absolute;z-index:2;padding:16px 20px;border:1px solid #d3a9ff99;border-radius:19px;background:linear-gradient(140deg,#3b1d66ba,#130d27cf);box-shadow:0 0 30px #903efb55;backdrop-filter:blur(12px);font-weight:700;animation:touch-float 5s ease-in-out infinite}
#touch-originals .float.f1{top:11%;left:1%;font-size:27px;transform:rotate(-13deg)}
#touch-originals .float.f2{top:23%;right:8%;animation-delay:-2s;transform:rotate(12deg)}
#touch-originals .float.f3{bottom:20%;left:7%;animation-delay:-3s}
#touch-originals .chips{margin-top:56px;display:flex;gap:25px;flex-wrap:wrap}
#touch-originals .chip{display:flex;align-items:center;gap:10px;color:#c9bfd5;font-size:12px}
#touch-originals .chip b{font-size:21px;color:#c58cff}
#touch-originals .tools{border-bottom:1px solid #ffffff15;border-top:1px solid #ffffff12;padding:24px 0;position:relative;z-index:5}
#touch-originals .toolrow{display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;align-items:center}
#touch-originals .toolrow span{color:#bdb5c7;font-family:'Space Grotesk';font-size:18px;font-weight:700;opacity:.8}
#touch-originals .toolrow small{font-size:10px;line-height:1.4;text-transform:uppercase;letter-spacing:.1em;color:#9f96aa;max-width:180px}
#touch-originals .section{padding:115px 0}
#touch-originals .sec-title{font-family:'Space Grotesk';font-size:clamp(35px,4vw,60px);line-height:1.12;letter-spacing:-.065em;margin:16px 0 20px}
#touch-originals .lead{font-size:16px;line-height:1.8;color:#ada3ba;max-width:670px}
#touch-originals .feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}
#touch-originals .video-panel{min-height:410px;border:1px solid #a452fa78;border-radius:28px;background:radial-gradient(circle at 75% 40%,#9d39ff3b,transparent 55%),linear-gradient(140deg,#25143d,#0a0814 72%);display:flex;align-items:flex-end;padding:30px;position:relative;overflow:hidden}
#touch-originals .video-panel::before{content:'T';position:absolute;font:900 410px 'Space Grotesk';top:-145px;right:10px;transform:rotate(-12deg);color:#ffffff0b}
#touch-originals .play{border:1px solid #e7ccff91;border-radius:50%;width:80px;height:80px;display:grid;place-items:center;background:#9c43ec75;color:#fff;font-size:28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:.2s}
#touch-originals .play:hover{background:#b253ff;scale:1.07}
#touch-originals .feature-icons{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}
#touch-originals .feature-icons div{border-top:1px solid #4b365b;padding-top:17px;color:#c5bbcf;font-size:12px}
#touch-originals .feature-icons strong{display:block;color:#fff;font-size:15px;margin-top:9px}
#touch-originals .mini-icon{font-size:25px;color:#c78bff}
#touch-originals .catalog-head{display:flex;justify-content:space-between;align-items:end;gap:30px}
#touch-originals .filters{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 27px}
#touch-originals .filter{color:#cfc4da;border:1px solid #382b46;padding:11px 17px;border-radius:30px;background:#160f21;font-size:12px}
#touch-originals .filter.active,#touch-originals .filter:hover{background:#7a26dc;border-color:#b77aff;color:white}
#touch-originals .search{max-width:295px;width:100%;padding:14px 18px;background:#130f1c;color:white;border:1px solid #3b3047;border-radius:13px}
#touch-originals .cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
#touch-originals .course{background:#14101d;border:1px solid #342943;border-radius:20px;overflow:hidden;transition:transform .26s,border-color .26s,box-shadow .26s;display:flex;flex-direction:column}
#touch-originals .course:hover{transform:translateY(-9px);border-color:#a655f4;box-shadow:0 20px 45px #5e15942c}
#touch-originals .poster{height:205px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:22px;background:radial-gradient(circle at 70% 20%,var(--glow),transparent 58%),linear-gradient(140deg,#2c1a47,#0d0b17)}
#touch-originals .poster::after{content:'✦';position:absolute;font-size:175px;right:-11px;top:-48px;color:#ffffff1b;transform:rotate(-19deg)}
#touch-originals .poster strong{position:relative;z-index:2;font:700 32px/1 'Space Grotesk';letter-spacing:-.05em;max-width:195px}
#touch-originals .poster .tag{position:absolute;z-index:2;top:15px;left:15px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;background:#100c18aa;border:1px solid #ffffff2e;border-radius:30px;padding:8px 10px}
#touch-originals .coursebody{padding:22px;display:flex;flex-direction:column;flex:1}
#touch-originals .coursebody small{color:#c68eff;font-weight:700;font-size:11px}
#touch-originals .coursebody h3{font:700 18px/1.25 'Space Grotesk';letter-spacing:-.025em;margin:11px 0}
#touch-originals .coursebody p{color:#a99fb4;font-size:12px;line-height:1.6;margin:0 0 20px}
#touch-originals .coursebody a{margin-top:auto;font-size:12px;font-weight:700;display:flex;justify-content:space-between;color:#ead7fa}
#touch-originals .label-next{color:#d1a4ff}
#touch-originals .banner{margin-top:80px;border:1px solid #8547c48c;border-radius:28px;padding:55px 60px;background:radial-gradient(circle at 85% 15%,#a347fd4d,transparent 40%),linear-gradient(110deg,#24123e,#100b1c);display:flex;justify-content:space-between;align-items:center;gap:35px}
#touch-originals .banner h3{font:700 clamp(30px,3vw,46px)/1.14 'Space Grotesk';letter-spacing:-.055em;margin:12px 0}
#touch-originals .banner p{color:#bdb1cd;max-width:690px}
#touch-originals .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}
#touch-originals .step{padding:30px;background:#14101e;border:1px solid #372944;border-radius:20px}
#touch-originals .step .num{color:#af64fa;font:700 40px 'Space Grotesk'}
#touch-originals .step h3{font:700 21px 'Space Grotesk'}
#touch-originals .step p{color:#aca3b7;line-height:1.65;font-size:13px}
#touch-originals .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}
#touch-originals .plan{border:1px solid #403149;border-radius:22px;background:#110e19;padding:32px;display:flex;flex-direction:column}
#touch-originals .plan.featured{border-color:#ac5eff;background:radial-gradient(circle at 95% 0,#7026bd4d,transparent 55%),#170e26;box-shadow:0 0 50px #7b31d01c}
#touch-originals .plan h3{font:700 25px 'Space Grotesk';margin:5px 0 22px}
#touch-originals .plan .price{font:700 40px 'Space Grotesk';letter-spacing:-.07em}
#touch-originals .plan .price small{font:400 13px 'DM Sans';color:#a99eb5;letter-spacing:0}
#touch-originals .plan ul{list-style:none;padding:18px 0 25px;margin:15px 0 0;border-top:1px solid #382c44;flex:1}
#touch-originals .plan li{font-size:13px;color:#bdb5c8;margin:0 0 16px}
#touch-originals .plan li::before{content:'✓';color:#ca8aff;margin-right:12px}
#touch-originals .faq{max-width:850px;margin:40px auto 0}
#touch-originals .faq details{border-bottom:1px solid #392d45;padding:22px 8px}
#touch-originals .faq summary{cursor:pointer;font:600 17px 'Space Grotesk'}
#touch-originals .faq details p{color:#b6aabe;line-height:1.8}
#touch-originals .footer{padding:80px 0 30px;border-top:1px solid #ffffff20}
#touch-originals .footer-grid{display:flex;justify-content:space-between;gap:50px}
#touch-originals .footer p{color:#958ba3;font-size:13px;max-width:440px;line-height:1.8}
#touch-originals .footlinks{display:flex;gap:40px;flex-wrap:wrap}
#touch-originals .footlinks div{display:flex;flex-direction:column;gap:14px}
#touch-originals .footlinks a{font-size:13px;color:#c9bfda}
#touch-originals .copyright{border-top:1px solid #30273a;margin-top:60px;padding-top:24px;display:flex;justify-content:space-between;color:#8c8298;font-size:12px}
#touch-originals.motion-ready .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}
#touch-originals.motion-ready .reveal.visible{opacity:1;transform:none}
#touch-originals .mobile-menu{display:none}
#touch-originals #toast{position:fixed;bottom:24px;right:25px;background:#261238;border:1px solid #a555f8;padding:16px 20px;border-radius:14px;z-index:300;display:none;max-width:360px;font-size:13px;box-shadow:0 20px 50px #0008}
@keyframes touch-float{0%,100%{translate:0 0}
50%{translate:0 -14px}
}
@keyframes touch-orbit{0%,100%{rotate:0deg}
50%{rotate:4deg}
}
@media(max-width:1050px){#touch-originals .navlinks{gap:18px}
#touch-originals .actions .btn:first-child{display:none}
#touch-originals .hero{min-height:710px}
#touch-originals .hero-art{margin-right:-15vw}
#touch-originals .hero h1{font-size:60px}
#touch-originals .cards{grid-template-columns:repeat(3,1fr)}
#touch-originals .feature{gap:35px}
}
@media(max-width:760px){#touch-originals .wrap{width:min(100% - 34px,600px)}
#touch-originals .nav{height:68px}
#touch-originals .navlinks,#touch-originals .actions{display:none}
#touch-originals .menu{display:block;margin-left:auto}
#touch-originals .mobile-menu.open{display:flex;position:fixed;left:0;right:0;top:68px;padding:25px;background:#110a1b;flex-direction:column;gap:20px;border-bottom:1px solid #6c3ba1}
#touch-originals .mobile-menu a{font-size:16px;font-weight:700}
#touch-originals .hero{padding-top:110px;min-height:auto}
#touch-originals .hero-grid{display:flex;flex-direction:column}
#touch-originals .hero h1{font-size:clamp(47px,12vw,69px)}
#touch-originals .hero p{font-size:14px}
#touch-originals .hero-art{height:390px;margin:0 -60px -25px 0}
#touch-originals .hero-art img{object-position:55%}
#touch-originals .float{scale:.7}
#touch-originals .chips{margin:30px 0 0;gap:12px}
#touch-originals .chip{width:45%;font-size:11px}
#touch-originals .tools{padding:30px 0}
#touch-originals .toolrow{justify-content:center}
#touch-originals .toolrow small{width:100%;text-align:center;max-width:none}
#touch-originals .toolrow span{font-size:14px}
#touch-originals .section{padding:75px 0}
#touch-originals .feature{grid-template-columns:1fr}
#touch-originals .video-panel{min-height:260px}
#touch-originals .feature-icons{gap:9px}
#touch-originals .catalog-head{display:block}
#touch-originals .search{max-width:100%}
#touch-originals .cards{grid-template-columns:repeat(2,1fr);gap:12px}
#touch-originals .poster{height:155px;padding:14px}
#touch-originals .poster strong{font-size:22px}
#touch-originals .coursebody{padding:14px}
#touch-originals .coursebody h3{font-size:15px}
#touch-originals .coursebody p{font-size:11px}
#touch-originals .banner{padding:30px;display:block}
#touch-originals .steps,#touch-originals .plans{grid-template-columns:1fr}
#touch-originals .footer-grid{display:block}
#touch-originals .footlinks{margin-top:35px}
#touch-originals .copyright{display:block}
#touch-originals .eyebrow{font-size:10px}
#touch-originals .sec-title{font-size:39px}
}
@media(max-width:430px){#touch-originals .cards{grid-template-columns:1fr}
#touch-originals .poster{height:180px}
#touch-originals .hero h1{font-size:47px}
#touch-originals .hero-art{height:325px}
#touch-originals .hero-actions .btn{padding:13px 15px}
}

@media(prefers-reduced-motion:reduce){html:has(body.touch-originals-page){scroll-behavior:auto}
#touch-originals *,#touch-originals *:before,#touch-originals *:after{animation:none!important;transition:none!important}
#touch-originals .reveal{opacity:1;transform:none}
}


body.touch-originals-page { background: #08060f; }
#touch-originals { background: var(--bg); color: #fff; font: 16px/1.5 'DM Sans', sans-serif; }
#touch-originals [hidden] { display: none !important; }
#touch-originals :is(h1, h2, h3) { color: inherit; text-transform: none; }
#touch-originals .btn { color: #fff; white-space: normal; }
#touch-originals :is(a:hover, a:focus) { color: #fff; }
#touch-originals .search { color: #fff; }
#touch-originals .filter { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
#touch-originals .poster { --glow: #793df4; }
#touch-originals .poster img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#touch-originals .poster:has(img)::after { display: none; }
#touch-originals .coursebody h3 a { color: #fff; font: inherit; display: inline; }
#touch-originals .coursebody h3 a:hover { text-decoration: underline; }
#touch-originals .coursebody { overflow-wrap: anywhere; }
#touch-originals .touch-catalog { padding-top: 15px; }
#touch-originals .touch-memberships { background: radial-gradient(ellipse at center, #2c1545, transparent 76%); text-align: center; }
#touch-originals .touch-memberships .lead { margin: 0 auto 22px; }
#touch-originals .touch-memberships .sec-title { margin-inline: auto; }
#touch-originals :is(section, main)[id] { scroll-margin-top: 90px; }
#touch-originals .touch-skip { position: fixed; top: 50px; left: 16px; z-index: 101; padding: 12px; background: #211032; transform: translateY(-180px); }
#touch-originals .touch-skip:focus { transform: none; }
.admin-bar #touch-header { top: 32px; }
@media (max-width: 782px) {
  .admin-bar #touch-header { top: 46px; }
  .admin-bar #touch-originals .mobile-menu.open { top: 114px; }
}
@media (max-width: 760px) {
  #touch-originals:not(.menu-ready) .navlinks { display: flex; flex-wrap: wrap; gap: 6px 12px; }
  #touch-originals:not(.menu-ready) .menu { display: none; }
  #touch-originals:not(.menu-ready) .actions { display: flex; }
  #touch-originals:not(.menu-ready) .actions .primary { display: none; }
  #touch-originals:not(.menu-ready) .nav { gap: 10px; height: auto; min-height: 68px; }
  #touch-originals:not(.menu-ready) .actions .btn { padding: 7px; }
}

#touch-originals .hero-art img {
  mask-image: linear-gradient(to right, transparent, #000 22%, #000 90%, transparent),
    linear-gradient(to bottom, transparent, #000 9%, #000 85%, transparent);
  mask-composite: intersect;
}
