:root{--purple:#9982c8;--purple-dark:#6e54a6;--purple-deep:#4a3782;--purple-light:#c5b5e0;--purple-mist:#efeaf7;--purple-veil:#f7f4fb;--black:#0a0a0a;--black-90:#1a1a1a;--black-70:#3a3a3a;--black-50:#6a6a6a;--black-30:#9a9a9a;--white:#ffffff;--paper:#fafafa;--line:rgba(10,10,10,0.10);--line-soft:rgba(10,10,10,0.05);--display:'Fraunces',Georgia,serif;--body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--script:'Caveat',cursive;--maxw:1340px;--gutter:clamp(1.4rem,5vw,4rem);--ease:cubic-bezier(.22,.61,.36,1);--ease-out:cubic-bezier(.16,1,.3,1);--bounce:cubic-bezier(.34,1.56,.64,1)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--body);background:var(--paper);color:var(--black);font-size:16px;line-height:1.6;font-weight:400;overflow-x:hidden}body.is-loading{overflow:hidden;height:100vh}img{max-width:100%;display:block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none;user-drag:none;-webkit-touch-callout:none}a{color:inherit;text-decoration:none;transition:color .3s var(--ease)}button{font-family:inherit;cursor:pointer;border:0;background:none}::selection{background:var(--purple);color:var(--white)}.container{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}.eyebrow{font-family:var(--body);font-size:11px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:var(--purple-dark);display:inline-flex;align-items:center;gap:14px}.eyebrow::before{content:'';width:30px;height:2px;background:var(--purple)}.script-accent{font-family:var(--script);font-weight:600;font-size:1.05em;color:var(--purple-dark);letter-spacing:0}#preloader{position:fixed;inset:0;z-index:10000;background:var(--black);display:flex;align-items:center;justify-content:center;flex-direction:column;transition:transform 1.0s cubic-bezier(.86,0,.07,1),opacity .8s ease .15s}#preloader.done{transform:translateY(-100%);opacity:0;pointer-events:none}.preloader-glow{position:absolute;width:600px;height:600px;background:radial-gradient(circle,var(--purple) 0%,transparent 65%);border-radius:50%;filter:blur(80px);opacity:0.45;animation:glowPulse 3s ease-in-out infinite}@keyframes glowPulse{0%,100%{transform:scale(1);opacity:0.4}50%{transform:scale(1.15);opacity:0.6}}.preloader-logo{width:clamp(220px,28vw,360px);height:auto;opacity:0;transform:scale(0.85);animation:logoEntrance 1.2s var(--ease-out) .2s forwards;filter:brightness(0) invert(1);position:relative;z-index:1}@keyframes logoEntrance{0%{opacity:0;transform:scale(0.85) translateY(20px)}60%{opacity:1;transform:scale(1.04) translateY(0)}100%{opacity:1;transform:scale(1)}}.preloader-tagline{margin-top:32px;font-family:var(--body);font-weight:800;font-size:11px;letter-spacing:.35em;text-transform:uppercase;color:var(--purple-light);opacity:0;animation:taglineFade 1s ease 1.2s forwards;position:relative;z-index:1}@keyframes taglineFade{from{opacity:0;transform:translateY(8px)}to{opacity:0.9;transform:translateY(0)}}.preloader-bar{width:200px;height:2px;background:rgba(255,255,255,0.15);margin-top:32px;position:relative;overflow:hidden;z-index:1}.preloader-bar::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--purple) 0%,var(--purple-light) 100%);transform-origin:left;animation:barFill 1.6s ease-out 0.5s forwards;transform:scaleX(0)}@keyframes barFill{to{transform:scaleX(1)}}.social-rail{position:fixed;left:24px;top:50%;z-index:70;display:flex;flex-direction:column;gap:14px;align-items:center;opacity:0;transform:translateY(-50%) translateX(-20px);animation:railIn 1s var(--ease-out) 1.6s forwards}@keyframes railIn{to{opacity:1;transform:translateY(-50%) translateX(0)}}.social-rail::before{content:'';width:2px;height:50px;background:var(--black);opacity:0.25}.social-rail a{width:44px;height:44px;border-radius:50%;background:var(--white);border:2px solid var(--black);display:flex;align-items:center;justify-content:center;color:var(--black);transition:all .35s var(--ease)}.social-rail a:hover{background:var(--purple);border-color:var(--purple);color:var(--white);transform:translateX(4px) scale(1.08)}.social-rail a svg{width:16px;height:16px;fill:currentColor}.float-cta{position:fixed;right:0;top:50%;z-index:70;background:var(--purple);color:var(--white);padding:24px 14px;font-family:var(--body);font-size:11px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;writing-mode:vertical-rl;text-orientation:mixed;transform:translateY(-50%) rotate(180deg);transition:all .4s var(--ease);opacity:0;animation:ctaIn 1s var(--ease-out) 1.8s forwards;box-shadow:-10px 14px 30px -10px rgba(122,95,184,0.5);display:inline-flex;align-items:center;gap:14px}@keyframes ctaIn{to{opacity:1}}.float-cta:hover{background:var(--black);padding-right:22px}.float-cta::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--white)}.nav{position:fixed;top:0;left:0;right:0;z-index:60;padding:22px 0;transition:all .45s var(--ease)}.nav.scrolled{background:rgba(255,255,255,0.96);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-bottom:1px solid var(--line-soft);padding:12px 0}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:inline-flex;align-items:center;height:90px;transition:height .35s var(--ease)}.nav.scrolled .brand{height:64px}.brand img{height:100%;width:auto;object-fit:contain;filter:brightness(0) saturate(100%);transition:transform .5s var(--ease),filter .35s var(--ease)}.brand:hover img{transform:rotate(-3deg) scale(1.05)}.nav-links{display:flex;gap:42px;list-style:none}.nav-links a{font-family:var(--body);font-size:13px;font-weight:700;color:var(--black-70);position:relative;padding:6px 0;letter-spacing:0.02em}.nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--purple);transition:width .4s var(--ease)}.nav-links a:hover::after,.nav-links a.active::after{width:100%}.nav-links a.active{color:var(--black)}.nav-cta{background:var(--black);color:var(--white);padding:13px 26px;font-family:var(--body);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;transition:all .35s var(--ease);position:relative;overflow:hidden}.nav-cta::before{content:'';position:absolute;inset:0;background:var(--purple);transform:translateY(101%);transition:transform .4s var(--ease)}.nav-cta span{position:relative;z-index:1}.nav-cta:hover::before{transform:translateY(0)}.nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:2px solid var(--black);background:var(--white)}.nav-toggle span{width:18px;height:2px;background:var(--black);position:relative;transition:background .3s var(--ease)}.nav-toggle span::before,.nav-toggle span::after{content:'';position:absolute;left:0;width:100%;height:2px;background:var(--black);transition:transform .35s var(--ease)}.nav-toggle span::before{top:-6px}.nav-toggle span::after{top:6px}.nav-toggle.open{background:transparent;border-color:var(--white)}.nav-toggle.open span{background:transparent}.nav-toggle.open span::before{transform:translateY(6px) rotate(45deg);background:var(--white)}.nav-toggle.open span::after{transform:translateY(-6px) rotate(-45deg);background:var(--white)}.mobile-menu{position:fixed;inset:0;background:var(--purple);z-index:59;padding:90px var(--gutter) 40px;transform:translateY(-100%);transition:transform .65s var(--ease);overflow-y:auto;display:flex;flex-direction:column;color:var(--white)}.mobile-menu.open{transform:translateY(0)}.mobile-menu::before{content:'JG';position:absolute;bottom:-40px;right:-20px;font-family:var(--display);font-weight:900;font-style:italic;font-size:18rem;line-height:1;color:var(--white);opacity:0.07;pointer-events:none;transform:translateY(20px);transition:transform 1s var(--ease-out) .6s,opacity 1s var(--ease-out) .6s}.mobile-menu.open::before{transform:translateY(0);opacity:0.08}.mobile-menu ul{list-style:none;display:flex;flex-direction:column;gap:0;position:relative;z-index:1;margin-top:12px}.mobile-menu li{overflow:hidden;position:relative}.mobile-menu li .num{font-family:var(--body);font-size:10px;font-weight:800;letter-spacing:.2em;color:rgba(255,255,255,0.55);display:inline-block;margin-right:14px;vertical-align:middle}.mobile-menu a{font-family:var(--display);font-size:clamp(1.4rem,5.5vw,1.85rem);font-weight:700;color:var(--white);display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid rgba(255,255,255,0.18);letter-spacing:-0.015em;transform:translateY(60px);opacity:0;transition:transform .7s var(--ease-out),opacity .7s var(--ease-out),padding-left .35s var(--ease)}.mobile-menu.open a{transform:translateY(0);opacity:1}.mobile-menu.open li:nth-child(1) a{transition-delay:.15s}.mobile-menu.open li:nth-child(2) a{transition-delay:.22s}.mobile-menu.open li:nth-child(3) a{transition-delay:.29s}.mobile-menu.open li:nth-child(4) a{transition-delay:.36s}.mobile-menu a em{font-style:italic}.mobile-menu a .arrow{font-family:var(--body);font-weight:400;font-size:1.1rem;opacity:0;transform:translateX(-10px);transition:all .35s var(--ease)}.mobile-menu a:hover{padding-left:12px}.mobile-menu a:hover .arrow{opacity:1;transform:translateX(0)}.mobile-menu .mm-foot{margin-top:auto;padding-top:28px;font-size:13px;color:rgba(255,255,255,0.9);display:flex;flex-direction:column;gap:8px;font-weight:600;position:relative;z-index:1;transform:translateY(30px);opacity:0;transition:transform .7s var(--ease-out) .5s,opacity .7s var(--ease-out) .5s}.mobile-menu.open .mm-foot{transform:translateY(0);opacity:1}.mobile-menu .mm-foot .mm-label{font-family:var(--body);font-size:9.5px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:rgba(255,255,255,0.6);margin-bottom:4px}.mobile-menu .mm-socials{display:flex;gap:12px;margin-top:16px}.mobile-menu .mm-socials a{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,0.18);border:0;padding:0;display:flex;align-items:center;justify-content:center;transform:none;opacity:1;transition:background .3s var(--ease),transform .3s var(--ease)}.mobile-menu .mm-socials a .arrow{display:none}.mobile-menu .mm-socials a:hover{background:rgba(255,255,255,0.3);transform:scale(1.08);padding-left:0}.mobile-menu .mm-socials a svg{width:16px;height:16px;fill:var(--white)}.hero{min-height:auto;position:relative;display:flex;align-items:center;padding:110px 0 80px;background:var(--paper);overflow:hidden}.hero::before{content:'';position:absolute;top:-10%;right:-10%;width:580px;height:580px;background:radial-gradient(circle,var(--purple-mist) 0%,transparent 70%);border-radius:50%;filter:blur(40px);opacity:0.7;pointer-events:none}.hero::after{content:'';position:absolute;bottom:-20%;left:-15%;width:480px;height:480px;background:radial-gradient(circle,var(--purple-mist) 0%,transparent 70%);border-radius:50%;filter:blur(40px);opacity:0.5;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1fr;gap:clamp(40px,5vw,70px);align-items:start;width:100%;position:relative;z-index:1}.hero-text{order:2;position:relative}.hero-eyebrow{margin-bottom:18px;opacity:0;transform:translateY(10px);transition:all .8s var(--ease-out) .3s}.is-ready .hero-eyebrow{opacity:1;transform:translateY(0)}.hero-title{font-family:var(--display);font-size:clamp(2.6rem,8vw,8.4rem);line-height:0.96;font-weight:700;letter-spacing:-0.03em;color:var(--black);margin-bottom:22px}.hero-title .line{display:block;overflow:hidden;padding-bottom:0.05em}.hero-title .line span{display:inline-block;transform:translateY(105%);transition:transform 1.1s var(--ease-out)}.is-ready .hero-title .line:nth-child(1) span{transition-delay:.35s;transform:translateY(0)}.is-ready .hero-title .line:nth-child(2) span{transition-delay:.47s;transform:translateY(0)}.is-ready .hero-title .line:nth-child(3) span{transition-delay:.59s;transform:translateY(0)}.hero-title em{font-style:italic;font-weight:700;color:var(--purple-dark)}.hero-script{display:inline-block;margin-top:4px;margin-bottom:28px;font-family:var(--script);font-size:clamp(1.3rem,2.4vw,2rem);font-weight:600;color:var(--purple);letter-spacing:0;opacity:0;transform:translateY(12px);transition:all 1s var(--ease-out) .75s}.is-ready .hero-script{opacity:1;transform:translateY(0)}.hero-meta{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:540px;margin-top:24px;padding-top:24px;border-top:2px solid var(--black);opacity:0;transform:translateY(20px);transition:opacity 1s var(--ease-out) .9s,transform 1s var(--ease-out) .9s}.is-ready .hero-meta{opacity:1;transform:translateY(0)}.hero-meta p{font-size:14px;line-height:1.55;color:var(--black-70);font-weight:500}.hero-meta .lbl{font-family:var(--body);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--purple-dark);display:block;margin-bottom:8px;font-weight:800}.hero-cta{margin-top:40px;display:flex;gap:14px;flex-wrap:wrap;opacity:0;transform:translateY(20px);transition:opacity 1s var(--ease-out) 1.05s,transform 1s var(--ease-out) 1.05s}.is-ready .hero-cta{opacity:1;transform:translateY(0)}.hero-image-wrap{position:relative;order:1;width:100%;height:clamp(280px,38vh,440px);overflow:hidden;background:var(--purple-mist);box-shadow:0 30px 60px -25px rgba(74,55,130,0.35)}.hero-image-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.12);opacity:0;transition:transform 1.8s var(--ease-out) .4s,opacity 1.2s var(--ease-out) .4s}.is-ready .hero-image-wrap img{transform:scale(1);opacity:1}.hero-image-wrap::after{content:'';display:none}.hero-tag{position:absolute;bottom:24px;left:24px;background:var(--white);padding:14px 20px;font-family:var(--body);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:800;color:var(--black);display:flex;align-items:center;gap:10px;opacity:0;transform:translateY(10px);transition:opacity .9s var(--ease-out) 1.4s,transform .9s var(--ease-out) 1.4s;box-shadow:0 14px 30px -8px rgba(0,0,0,0.15)}.is-ready .hero-tag{opacity:1;transform:translateY(0)}.hero-tag::before{content:'';width:8px;height:8px;background:var(--purple);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:0.6}}.statement{background:var(--paper);padding:clamp(80px,12vh,140px) 0;text-align:center;position:relative;overflow:hidden}.statement::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,var(--purple-mist) 0%,transparent 65%);opacity:0.7;pointer-events:none}.statement-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px}.statement-line{font-family:var(--display);font-size:clamp(2.2rem,7vw,7rem);font-weight:700;line-height:0.98;letter-spacing:-0.025em;color:var(--black)}.statement-line em{font-style:italic;font-weight:700}.statement-line.highlight{color:var(--purple-dark);font-style:italic}.statement-tagline{margin-top:36px;font-family:var(--body);font-size:1.1rem;font-weight:600;letter-spacing:.03em;color:var(--black-70)}.partners{background:var(--black);color:var(--white);padding:70px 0 60px;overflow:hidden}.partners-head{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:end;margin-bottom:38px;padding:0 var(--gutter);max-width:var(--maxw);margin-left:auto;margin-right:auto}.partners-head h3{font-family:var(--display);font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:700;letter-spacing:-0.02em;line-height:1.1;color:var(--white)}.partners-head h3 em{font-style:italic;color:var(--purple-light);font-weight:700}.partners-head .partners-meta{font-size:13.5px;color:rgba(255,255,255,0.6);text-align:right;max-width:360px;justify-self:end;line-height:1.5;font-weight:500}.partners-track-wrap{position:relative;overflow:hidden;mask-image:linear-gradient(90deg,transparent 0%,black 18%,black 82%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,black 18%,black 82%,transparent 100%)}.partners-track{display:flex;width:max-content;will-change:transform;animation:partnerScroll 25s linear infinite}.partners-track>.row{display:flex;flex-shrink:0;align-items:center}.partner-item{flex-shrink:0;display:flex;align-items:center;gap:16px;padding:0 50px;font-family:var(--body);font-style:normal;white-space:nowrap;text-decoration:none;transition:opacity .3s var(--ease);border-right:1px solid rgba(255,255,255,0.12);cursor:pointer}.partner-item:hover{opacity:1}.partner-item img{width:56px;height:56px;object-fit:contain;flex-shrink:0;filter:brightness(1.05);transition:transform .4s var(--ease-out),filter .3s var(--ease)}.partner-item:hover img{transform:scale(1.08);filter:brightness(1.15)}.partner-name{font-family:var(--body);font-size:16px;font-weight:900;letter-spacing:-0.005em;color:var(--white);white-space:nowrap;text-transform:uppercase;font-style:normal}.partner-item .partner-mark{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,0.4);border-radius:50%;flex-shrink:0;font-family:var(--body);font-size:13px;font-weight:800;color:var(--white);font-style:normal}@keyframes partnerScroll{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}.partners:hover .partners-track{animation-play-state:paused}.hashtag-block{background:var(--paper);padding:clamp(90px,14vh,160px) 0;position:relative;overflow:hidden}.hashtag-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center;position:relative;z-index:1}.hashtag-mark{font-family:var(--body);font-weight:900;font-size:clamp(2.6rem,8vw,7.5rem);text-transform:uppercase;letter-spacing:-0.025em;color:var(--black);line-height:0.92}.hashtag-mark .accent{color:var(--purple)}.hashtag-content .greeting{font-family:var(--script);font-size:1.7rem;color:var(--purple-dark);font-weight:600;margin-bottom:8px;display:block}.hashtag-content h3{font-family:var(--display);font-size:clamp(2.2rem,4.4vw,3.8rem);font-weight:700;line-height:1.05;letter-spacing:-0.02em;margin-bottom:26px;color:var(--black)}.hashtag-content h3 em{font-style:italic;font-weight:700;color:var(--purple-dark)}.hashtag-content p{font-size:16px;line-height:1.75;color:var(--black-70);margin-bottom:18px;font-weight:500}.hashtag-content .read-more{display:inline-flex;align-items:center;gap:12px;margin-top:26px;padding-bottom:6px;font-family:var(--body);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--black);border-bottom:2px solid var(--black);transition:gap .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease)}.hashtag-content .read-more:hover{gap:18px;color:var(--purple-dark);border-color:var(--purple-dark)}.btn{display:inline-flex;align-items:center;gap:14px;padding:18px 30px;font-family:var(--body);font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;border:2px solid var(--black);background:var(--black);color:var(--white);position:relative;overflow:hidden;transition:color .4s var(--ease),border-color .4s var(--ease),transform .35s var(--ease);cursor:pointer;will-change:transform}.btn::before{content:'';position:absolute;inset:0;background:var(--purple);transform:translateY(101%);transition:transform .45s var(--ease);z-index:0}.btn:hover::before{transform:translateY(0)}.btn:hover{border-color:var(--purple);color:var(--white)}.btn>*{position:relative;z-index:1}.btn svg{width:18px;height:8px}.btn.outline{background:transparent;color:var(--black)}.btn.outline::before{background:var(--black)}.btn.outline:hover{color:var(--white);border-color:var(--black)}.btn.purple{background:var(--purple);border-color:var(--purple);color:var(--white)}.btn.purple::before{background:var(--black)}.btn.purple:hover{border-color:var(--black);color:var(--white)}section{padding:clamp(90px,12vh,160px) 0}.section-head{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:end;margin-bottom:80px}.section-head h2{font-family:var(--display);font-size:clamp(2.2rem,6vw,5rem);line-height:0.98;letter-spacing:-0.025em;font-weight:700}.section-head h2 em{font-style:italic;font-weight:700;color:var(--purple-dark)}.section-head .right{font-size:16px;line-height:1.7;color:var(--black-70);max-width:380px;justify-self:end;font-weight:500}.section-head .right p+p{margin-top:14px}.pillars{background:var(--paper)}.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--black);border-bottom:2px solid var(--black)}.pillar{padding:60px 36px;border-right:1px solid var(--line);position:relative;transition:background .4s var(--ease);overflow:hidden}.pillar:last-child{border-right:0}.pillar::before{content:'';position:absolute;inset:0;background:var(--purple-veil);transform:translateY(101%);transition:transform .5s var(--ease);z-index:0}.pillar:hover::before{transform:translateY(0)}.pillar>*{position:relative;z-index:1}.pillar-icon{width:60px;height:60px;color:var(--purple);margin-bottom:30px;display:flex;align-items:center;justify-content:center;border:2px solid var(--purple);border-radius:50%;transition:all .45s var(--ease);background:var(--white)}.pillar:hover .pillar-icon{background:var(--purple);color:var(--white);transform:rotate(-12deg) scale(1.05)}.pillar-icon svg{width:24px;height:24px}.pillar-num{font-family:var(--body);font-size:12px;color:var(--purple-dark);letter-spacing:.15em;text-transform:uppercase;display:block;margin-bottom:14px;font-weight:800}.pillar h4{font-family:var(--display);font-size:2.2rem;font-weight:700;line-height:1.05;letter-spacing:-0.015em;margin-bottom:18px}.pillar h4 em{font-style:italic;font-weight:700;color:var(--purple-dark)}.pillar p{font-size:14.5px;line-height:1.7;color:var(--black-70);font-weight:500}.selections{background:var(--paper)}.tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:60px;border-bottom:2px solid var(--black)}.tab-btn{padding:16px 28px;font-family:var(--body);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--black-50);background:transparent;border:0;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .35s var(--ease)}.tab-btn:hover{color:var(--black)}.tab-btn.active{color:var(--black);border-bottom-color:var(--purple)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px 28px}.product-card{position:relative;display:block;transition:transform .4s var(--ease)}.product-card:hover{transform:translateY(-8px)}.product-image{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--purple-mist);margin-bottom:22px}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform 1.3s var(--ease-out)}.product-card:hover .product-image img{transform:scale(1.08)}.product-price-tag{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;background:var(--black);color:var(--white);padding:10px 16px;border-radius:4px;font-family:var(--body);font-weight:800;font-size:17px;letter-spacing:-0.01em;line-height:1;box-shadow:0 8px 20px -6px rgba(0,0,0,0.3);transition:all .35s var(--bounce)}.product-price-tag .currency{font-size:11px;font-weight:700;margin-right:4px;opacity:0.7;letter-spacing:0}.product-card:hover .product-price-tag{background:var(--purple);transform:translateY(-3px) scale(1.05);box-shadow:0 12px 24px -6px rgba(122,95,184,0.45)}.product-info{padding:0 4px}.product-info h5{font-family:var(--display);font-size:1.25rem;font-weight:600;line-height:1.25;letter-spacing:-0.012em;margin-bottom:10px;color:var(--black)}.product-info p{font-size:13px;line-height:1.55;color:var(--black-50);margin-bottom:14px;font-weight:500}.product-min{display:inline-flex;align-items:center;gap:6px;font-family:var(--body);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--purple-dark);font-weight:800}.product-min::before{content:'';width:6px;height:6px;background:var(--purple);border-radius:50%}.tab-pane{display:none;animation:fadeIn .55s var(--ease) both}.tab-pane.active{display:block}@keyframes fadeIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.menu-link-row{margin-top:70px;padding-top:40px;border-top:2px solid var(--black);display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap}.quote-block{background:var(--black);color:var(--white);padding:clamp(110px,16vh,180px) 0;position:relative;overflow:hidden}.quote-block::before{content:'"';position:absolute;top:-120px;left:5%;font-family:var(--display);font-weight:700;font-size:540px;line-height:1;color:rgba(153,130,200,0.1);pointer-events:none}.quote-inner{max-width:1000px;margin:0 auto;text-align:center;position:relative}.quote-inner blockquote{font-family:var(--display);font-style:italic;font-size:clamp(2.2rem,5.6vw,4.8rem);line-height:1.12;font-weight:700;letter-spacing:-0.02em;margin-bottom:50px}.quote-inner blockquote .accent{color:var(--purple)}.quote-inner cite{font-style:normal;font-family:var(--body);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,0.85);display:inline-flex;align-items:center;gap:14px;font-weight:800}.quote-inner cite::before,.quote-inner cite::after{content:'';width:30px;height:1px;background:currentColor;opacity:0.5}.cta{background:var(--purple);color:var(--white)}.cta-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.cta-content h2{font-family:var(--display);font-size:clamp(2.4rem,5vw,4.6rem);line-height:1;font-weight:700;letter-spacing:-0.025em;margin-bottom:28px;color:var(--white);margin-top:24px}.cta-content h2 em{font-style:italic;font-weight:700}.cta-content p{font-size:16px;line-height:1.7;color:rgba(255,255,255,0.88);margin-bottom:36px;max-width:480px;font-weight:500}.cta-content .eyebrow{color:var(--white)}.cta-content .eyebrow::before{background:var(--white)}.cta-actions{display:flex;gap:14px;flex-wrap:wrap}.cta .btn{background:var(--white);border-color:var(--white);color:var(--black)}.cta .btn::before{background:var(--black)}.cta .btn:hover{color:var(--white);border-color:var(--black)}.cta .btn.outline{background:transparent;color:var(--white);border-color:var(--white)}.cta .btn.outline::before{background:var(--white)}.cta .btn.outline:hover{color:var(--purple)}.cta-info{display:flex;flex-direction:column;gap:32px}.cta-info-block{border-top:2px solid rgba(255,255,255,0.3);padding-top:22px}.cta-info-block .label{font-family:var(--body);font-size:10.5px;text-transform:uppercase;letter-spacing:.25em;color:var(--white);font-weight:800;margin-bottom:10px;opacity:0.8}.cta-info-block .value{font-family:var(--display);font-size:1.7rem;font-weight:700;letter-spacing:-0.005em;color:var(--white);display:block}.cta-info-block a.value{transition:color .3s var(--ease)}.cta-info-block a.value:hover{color:var(--black)}.footer{background:var(--black);color:var(--white);padding:90px 0 30px}.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:60px;padding-bottom:70px;border-bottom:1px solid rgba(255,255,255,0.12)}.footer-brand .brand{height:80px;margin-bottom:22px}.footer-brand .brand img{filter:brightness(0) invert(1)}.footer-brand p{font-size:13px;line-height:1.7;color:rgba(255,255,255,0.6);max-width:320px;font-weight:500}.footer-col h6{font-family:var(--body);font-size:11px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:var(--purple-light);margin-bottom:22px}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:12px}.footer-col a,.footer-col li{font-size:13.5px;color:rgba(255,255,255,0.7);font-weight:500}.footer-col a:hover{color:var(--purple-light)}.footer-tagline{font-family:var(--display);font-weight:800;font-style:italic;font-size:clamp(1.6rem,8vw,7.4rem);line-height:1;letter-spacing:-0.025em;padding:60px 0 20px;color:var(--white);opacity:0.06;text-align:center;user-select:none;pointer-events:none;white-space:nowrap}.footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:rgba(255,255,255,0.5);letter-spacing:.04em;font-weight:600}.footer-socials{display:flex;gap:12px}.footer-socials a{width:42px;height:42px;border:2px solid rgba(255,255,255,0.2);display:flex;align-items:center;justify-content:center;transition:all .35s var(--ease);color:var(--white)}.footer-socials a:hover{background:var(--purple);border-color:var(--purple);transform:translateY(-3px)}.footer-socials svg{width:16px;height:16px;fill:currentColor}.page-hero{padding:200px 0 80px;background:var(--paper);position:relative;overflow:hidden}.page-hero::before{content:'';position:absolute;top:0;right:-10%;width:500px;height:500px;background:radial-gradient(circle,var(--purple-mist) 0%,transparent 70%);border-radius:50%;filter:blur(40px);opacity:0.6;pointer-events:none}.page-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;position:relative;z-index:1}.page-hero h1{font-family:var(--display);font-size:clamp(2.4rem,8vw,7rem);line-height:0.98;letter-spacing:-0.025em;font-weight:700}.page-hero h1 em{font-style:italic;font-weight:700;color:var(--purple-dark)}.page-hero .meta{font-size:16px;line-height:1.7;color:var(--black-70);max-width:460px;font-weight:500}.about-story{background:var(--paper);padding:clamp(80px,11vh,140px) 0}.about-story-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,6vw,90px);align-items:start}.about-story h2{font-family:var(--display);font-size:clamp(2.4rem,4.8vw,3.6rem);line-height:1.05;font-weight:700;letter-spacing:-0.02em;margin-bottom:36px;position:sticky;top:110px}.about-story h2 em{font-style:italic;font-weight:700;color:var(--purple-dark)}.about-story p{font-size:17px;line-height:1.8;color:var(--black-70);margin-bottom:24px;font-weight:500}.about-story p:first-of-type::first-letter{font-family:var(--display);font-weight:700;font-size:4.5em;line-height:0.85;float:left;padding:6px 14px 0 0;color:var(--purple)}.about-story-quote{font-family:var(--display);font-style:italic;font-size:1.6rem;color:var(--black);padding:30px 0;border-top:2px solid var(--black);border-bottom:2px solid var(--black);margin:30px 0 !important;line-height:1.4 !important;font-weight:700}.about-story-quote em{color:var(--purple-dark);font-style:italic}.about-stats{background:var(--purple);color:var(--white);padding:80px 0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.stat{text-align:center;padding:20px;border-right:1px solid rgba(255,255,255,0.18)}.stat:last-child{border-right:0}.stat .num{font-family:var(--display);font-weight:800;font-size:clamp(2.8rem,5.5vw,4.4rem);line-height:1;color:var(--white);margin-bottom:12px;display:block;font-style:italic}.stat .lbl{font-family:var(--body);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:rgba(255,255,255,0.85);font-weight:800}.about-gallery{background:var(--paper);padding:clamp(80px,11vh,140px) 0}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:80px;gap:18px}.gallery-grid figure{overflow:hidden}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform 1.3s var(--ease-out)}.gallery-grid figure:hover img{transform:scale(1.06)}.g1{grid-column:span 5;grid-row:span 5}.g2{grid-column:span 4;grid-row:span 4}.g3{grid-column:span 3;grid-row:span 4}.g4{grid-column:span 4;grid-row:span 4}.g5{grid-column:span 4;grid-row:span 5}.g6{grid-column:span 4;grid-row:span 5}.menu-page{padding:60px 0 100px;background:var(--paper)}.menu-tabs-bar{position:sticky;top:96px;z-index:50;display:flex;justify-content:center;margin-bottom:50px;pointer-events:none}.menu-tabs-inner{pointer-events:auto;background:rgba(10,10,10,0.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:100px;padding:6px;display:inline-flex;gap:2px;box-shadow:0 14px 32px -10px rgba(0,0,0,0.4);overflow-x:auto;max-width:calc(100vw - 32px);scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}.menu-tabs-inner::-webkit-scrollbar{display:none}.menu-tab{position:relative;flex-shrink:0;padding:10px 18px;font-family:var(--body);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,0.7);background:transparent;border:0;border-radius:100px;cursor:pointer;transition:background-color .35s var(--ease),color .35s var(--ease);white-space:nowrap;display:inline-flex;align-items:center;gap:8px}.menu-tab .count{display:none}.menu-tab:hover{color:var(--white)}.menu-tab.active{background:var(--white);color:var(--black)}.menu-tabs-indicator{display:none}@media (max-width:768px){.menu-tabs-bar{top:110px;margin-bottom:32px}.menu-tab{padding:9px 14px;font-size:10px;letter-spacing:.1em}.menu-tabs-inner{padding:5px;gap:1px}@keyframes tabBreath{0%,100%{transform:translateX(0)}50%{transform:translateX(-14px)}}.menu-tabs-inner.tab-breathing>.menu-tab{animation:tabBreath 3.6s ease-in-out infinite;will-change:transform}.menu-tabs-inner.tab-breathing:active>.menu-tab,.menu-tabs-inner.tab-breathing:focus-within>.menu-tab{animation-play-state:paused}}.contact-page{padding:160px 0 100px;background:var(--paper);position:relative;overflow:hidden}.contact-page::before{content:'';position:absolute;top:100px;right:-10%;width:460px;height:460px;background:radial-gradient(circle,var(--purple-mist) 0%,transparent 70%);border-radius:50%;filter:blur(40px);opacity:0.6;pointer-events:none}.contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(40px,7vw,100px);align-items:start;position:relative;z-index:1}.contact-intro h1{font-family:var(--display);font-size:clamp(2.2rem,6vw,5rem);line-height:0.98;font-weight:700;letter-spacing:-0.022em;margin-bottom:30px}.contact-intro h1 em{font-style:italic;font-weight:700;color:var(--purple-dark)}.contact-intro p{font-size:16px;line-height:1.7;color:var(--black-70);margin-bottom:40px;max-width:440px;font-weight:500}.contact-info-list{list-style:none;display:flex;flex-direction:column;gap:24px;margin-top:40px}.contact-info-list li{border-top:1px solid var(--line);padding-top:18px}.contact-info-list .lbl{font-family:var(--body);font-size:10.5px;letter-spacing:.25em;text-transform:uppercase;color:var(--purple-dark);font-weight:800;margin-bottom:8px}.contact-info-list .val{font-family:var(--display);font-size:1.6rem;color:var(--black);font-weight:700;letter-spacing:-0.005em}.contact-info-list a.val:hover{color:var(--purple-dark)}.contact-page-socials{display:flex;gap:12px;margin-top:12px}.contact-page-socials a{width:44px;height:44px;border:2px solid var(--black);display:flex;align-items:center;justify-content:center;transition:all .35s var(--ease);color:var(--black)}.contact-page-socials a:hover{background:var(--purple);border-color:var(--purple);color:var(--white);transform:translateY(-2px)}.contact-page-socials svg{width:16px;height:16px;fill:currentColor}.contact-form-wrap{background:var(--white);padding:clamp(36px,5vw,60px);position:relative;border:2px solid var(--black);box-shadow:14px 14px 0 var(--purple)}.contact-form-wrap h3{font-family:var(--display);font-size:1.9rem;font-weight:700;margin-bottom:8px;letter-spacing:-0.015em}.contact-form-wrap>p{font-size:14px;color:var(--black-70);margin-bottom:32px;font-weight:500}.contact-form{display:flex;flex-direction:column;gap:22px}.contact-form label{font-family:var(--body);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--black);font-weight:800;margin-bottom:8px;display:block}.contact-form input,.contact-form textarea{width:100%;font-family:var(--body);font-size:15px;font-weight:500;color:var(--black);padding:14px 0;border:0;border-bottom:2px solid var(--black);background:transparent;outline:none;transition:border-color .3s var(--ease);border-radius:0;-webkit-appearance:none;appearance:none}.contact-form input:focus,.contact-form textarea:focus{border-bottom-color:var(--purple)}.contact-form textarea{resize:vertical;min-height:110px;line-height:1.5;font-family:var(--body)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--black-30)}.contact-form input[type="submit"]{margin-top:18px;background:var(--purple);color:var(--white);border:2px solid var(--purple);padding:18px 30px;font-family:var(--body);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .35s var(--ease);width:auto;align-self:flex-start}.contact-form input[type="submit"]:hover{background:var(--black);border-color:var(--black)}.form-msg{padding:16px 20px;margin-top:18px;border:1px solid var(--line);font-size:14px;font-weight:500}.form-msg.success{background:var(--purple-mist);color:var(--black);border-color:var(--purple)}.form-msg.error{background:rgba(180,60,60,0.06);border-color:rgba(180,60,60,0.4);color:#8a2828}.form-msg[hidden]{display:none}.reveal-up{opacity:0;transform:translateY(36px);transition:opacity 1s var(--ease-out),transform 1s var(--ease-out)}.reveal-up.in-view{opacity:1;transform:translateY(0)}.reveal-up:nth-child(2){transition-delay:.08s}.reveal-up:nth-child(3){transition-delay:.16s}.reveal-up:nth-child(4){transition-delay:.24s}.back-top{position:fixed;right:24px;bottom:24px;width:50px;height:50px;border-radius:50%;background:var(--black);color:var(--white);display:flex;align-items:center;justify-content:center;z-index:75;cursor:pointer;opacity:0;transform:translateY(20px) scale(0.9);pointer-events:none;transition:all .35s var(--ease);border:0;box-shadow:0 12px 28px -8px rgba(0,0,0,0.35)}.back-top.visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.back-top:hover{background:var(--purple);transform:translateY(-4px) scale(1);box-shadow:0 16px 32px -8px rgba(122,95,184,0.5)}.back-top svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}@media (max-width:768px){.back-top{right:16px;bottom:16px;width:46px;height:46px}body:has(#consent-banner.show) .back-top{bottom:110px}}#consent-banner{visibility:hidden;opacity:0;transition:opacity .35s var(--ease),transform .35s var(--ease);transform:translateY(12px);position:fixed;bottom:22px;left:22px;right:22px;background:var(--black);color:var(--white);font-family:var(--body);font-size:13.5px;padding:18px 22px;z-index:9998;max-width:640px;margin:auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;box-shadow:0 12px 40px -10px rgba(0,0,0,0.3)}#consent-banner.show{visibility:visible;opacity:1;transform:translateY(0)}#consent-banner p{margin:0;flex:1 1 60%;line-height:1.5;font-size:13px;font-weight:500}#consent-banner .consent-actions{display:flex;gap:8px;flex:0 0 auto}#consent-banner button{background:var(--purple);color:var(--white);border:0;padding:12px 22px;font-family:var(--body);font-weight:800;font-size:11px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease)}#consent-banner button:hover{background:var(--white);color:var(--black)}#consent-banner button.consent-decline{background:transparent;color:rgba(255,255,255,0.6);border:1px solid rgba(255,255,255,0.2)}#consent-banner button.consent-decline:hover{background:transparent;color:var(--white);border-color:rgba(255,255,255,0.5)}@media (max-width:1100px){.social-rail,.float-cta{display:none}}@media (max-width:1024px){.product-grid{grid-template-columns:repeat(3,1fr)}.footer-top{grid-template-columns:1fr 1fr;gap:40px}.pillars-grid{grid-template-columns:1fr}.pillar{border-right:0;border-bottom:1px solid var(--line)}.pillar:last-child{border-bottom:0}.cta-inner{grid-template-columns:1fr;gap:50px}.hero-grid{grid-template-columns:1fr;max-width:100%}.hero-image-wrap{position:relative;order:2;width:100%;height:auto;min-height:0;aspect-ratio:16/10;max-height:480px;margin-top:32px}.hero-text{order:1}.page-hero-grid{grid-template-columns:1fr;gap:40px}.about-story-grid{grid-template-columns:1fr}.about-story h2{position:static}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat{border-right:0;border-bottom:1px solid rgba(255,255,255,0.18);padding:30px 20px}.stat:last-child{border-bottom:0}.contact-grid{grid-template-columns:1fr;gap:50px}.gallery-grid{grid-template-columns:repeat(6,1fr);grid-auto-rows:100px}.g1{grid-column:span 6;grid-row:span 4}.g2,.g3,.g4,.g5,.g6{grid-column:span 3;grid-row:span 3}.hashtag-grid{grid-template-columns:1fr;gap:40px}.partners-head{grid-template-columns:1fr;gap:16px}.partners-head .partners-meta{text-align:left;justify-self:start}.contact-form-wrap{box-shadow:8px 8px 0 var(--purple)}}@media (max-width:768px){body{font-size:15px}.nav-links,.nav-cta{display:none}.nav-toggle{display:flex}.hero{padding:110px 0 60px;min-height:auto}.hero-title,.section-head h2,.statement-line,.hashtag-mark,.page-hero h1,.contact-intro h1{overflow-wrap:break-word;hyphens:auto}.hero-meta{grid-template-columns:1fr;gap:22px}.section-head{grid-template-columns:1fr;gap:24px}.section-head .right{justify-self:start}.product-grid{grid-template-columns:repeat(2,1fr);gap:28px 16px}.footer-top{grid-template-columns:1fr;gap:36px}.menu-link-row{flex-direction:column}.footer-bottom{flex-direction:column;gap:16px;text-align:center}.menu-page .tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.menu-page .tabs::-webkit-scrollbar{display:none}.tab-btn{white-space:nowrap;padding:14px 18px;font-size:11.5px}#consent-banner{left:12px;right:12px;bottom:12px;padding:16px 18px}#consent-banner p{font-size:12.5px;flex:1 1 100%}#consent-banner .consent-actions{width:100%}#consent-banner button{flex:1 1 0;padding:11px 14px}.partner-item{padding:8px 28px !important;gap:12px}.partner-item img{width:44px;height:44px}.partner-name{font-size:13px}.partners-track{animation-duration:22s}.product-price-tag{top:12px;left:12px;padding:9px 14px;font-size:16px}}@media (max-width:480px){.product-grid{grid-template-columns:1fr}.product-image{aspect-ratio:4/3}.stats-grid{grid-template-columns:1fr}.stat{border-bottom:1px solid rgba(255,255,255,0.18)}.stat:last-child{border-bottom:0}.gallery-grid{grid-template-columns:repeat(2,1fr)}.g1,.g2,.g3,.g4,.g5,.g6{grid-column:span 2;grid-row:span 2}}.cursor-dot{position:fixed;top:0;left:0;width:22px;height:22px;background:var(--purple);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%) scale(0);transition:transform .25s var(--ease-out),background-color .3s var(--ease),width .3s var(--ease),height .3s var(--ease);mix-blend-mode:difference;opacity:0.7}.cursor-dot.active{transform:translate(-50%,-50%) scale(1)}.cursor-dot.hover{width:60px;height:60px;background:var(--purple);opacity:0.5}@media (max-width:1024px),(pointer:coarse){.cursor-dot{display:none}}.img-reveal{position:relative;overflow:hidden}.img-reveal::after{content:'';position:absolute;inset:0;background:var(--purple);transform-origin:bottom;transform:scaleY(1);transition:transform 1.1s var(--ease-out);z-index:2;pointer-events:none}.img-reveal.in-view::after{transform:scaleY(0)}.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--purple) 0%,var(--purple-dark) 100%);z-index:9999;transition:width .1s linear;pointer-events:none;box-shadow:0 0 10px rgba(122,95,184,0.5)}.text-marquee{display:inline-block;position:relative;overflow:hidden;vertical-align:middle}.text-marquee .original,.text-marquee .clone{display:inline-block;transition:transform .5s var(--ease)}.text-marquee .clone{position:absolute;top:100%;left:0;color:var(--purple)}.text-marquee:hover .original{transform:translateY(-100%)}.text-marquee:hover .clone{transform:translateY(-100%)}.product-card .product-image{position:relative}.product-card .product-image::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(74,55,130,0) 0%,rgba(74,55,130,0) 40%,rgba(122,95,184,0.55) 75%,rgba(74,55,130,0.85) 100%);opacity:0;transition:opacity .45s var(--ease);z-index:3;pointer-events:none}.product-card .product-image::after{content:'';position:absolute;left:50%;bottom:12px;width:38%;height:18%;transform:translateX(-50%) translateY(8px);background-image:url('../images/app-icon.png');background-size:contain;background-position:center bottom;background-repeat:no-repeat;filter:brightness(0) invert(1);opacity:0;transition:opacity .45s var(--ease) .05s,transform .55s var(--ease-out) .05s;z-index:4;pointer-events:none}.product-card:hover .product-image::before{opacity:1}.product-card:hover .product-image::after{opacity:0.85;transform:translateX(-50%) translateY(0)}.magnetic-link{display:inline-block;will-change:transform}@media (max-width:1024px),(pointer:coarse){.magnetic-link{transform:none !important}}.tilt-card{perspective:1000px;will-change:transform}@media (pointer:coarse){.tilt-card{transform:none !important}}.preloader-glow{animation:glowPulse 3s ease-in-out infinite,glowSpin 18s linear infinite}@keyframes glowSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.scroll-hint{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:2;opacity:0;animation:scrollHintAppear 1s var(--ease-out) 1.8s forwards;pointer-events:none}@keyframes scrollHintAppear{to{opacity:1}}.scroll-hint .label{font-family:var(--body);font-size:10px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;color:var(--purple-dark)}.scroll-hint .chevron{width:20px;height:20px;color:var(--purple);animation:chevronBounce 1.8s ease-in-out infinite}.scroll-hint .chevron svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}@keyframes chevronBounce{0%,100%{transform:translateY(0);opacity:1}50%{transform:translateY(8px);opacity:0.5}}@media (max-width:1024px){.scroll-hint{display:none}}.float-dots{position:absolute;display:flex;gap:10px;pointer-events:none;z-index:0}.float-dots span{width:8px;height:8px;background:var(--purple);border-radius:50%;opacity:0.4;animation:floatBob 3s ease-in-out infinite}.float-dots span:nth-child(2){animation-delay:.3s;opacity:0.55}.float-dots span:nth-child(3){animation-delay:.6s;opacity:0.7}.float-dots span:nth-child(4){animation-delay:.9s;opacity:0.85}@keyframes floatBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}.partner-item{position:relative;padding:12px 50px !important;border-radius:0;transition:color .3s var(--ease),background-color .3s var(--ease),transform .35s var(--ease) !important}.partner-item:hover{color:var(--white) !important;background:rgba(122,95,184,0.18);transform:scale(1.03)}.partner-item .partner-mark{transition:all .3s var(--ease)}.quote-inner blockquote .accent{display:inline-block;position:relative;transition:transform .4s var(--ease),text-shadow .6s var(--ease)}.quote-inner blockquote:hover .accent{transform:scale(1.08);text-shadow:0 0 30px rgba(153,130,200,0.7),0 0 60px rgba(153,130,200,0.4)}.pillar{position:relative}.pillar::after{content:'';position:absolute;top:0;left:0;width:0;height:4px;background:var(--purple);transition:width .6s var(--ease);z-index:2}.pillar:hover::after{width:100%}.underline-grow{position:relative;display:inline-block}.underline-grow::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:3px;background:var(--purple);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}.underline-grow:hover::after,.underline-grow.in-view::after{transform:scaleX(1)}.cta{position:relative;overflow:hidden}.cta::before{content:'';position:absolute;top:30px;left:30px;right:30px;bottom:30px;border:2px dashed rgba(255,255,255,0.18);pointer-events:none;animation:dashSpin 60s linear infinite;z-index:0}@media (max-width:768px){.cta::before{display:none}}@keyframes dashSpin{from{stroke-dashoffset:0}to{stroke-dashoffset:200}}.cta .container{position:relative;z-index:1}.statement-line{transition:transform .4s var(--ease),color .3s var(--ease);display:inline-block}.statement-line:hover{transform:translateY(-4px)}.statement-line.highlight:hover{color:var(--purple)}.page-transition{position:fixed;inset:0;z-index:99999;background:var(--paper);display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .3s var(--ease),visibility 0s linear .3s}.page-transition.visible{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .22s var(--ease),visibility 0s}.page-transition.no-anim{transition:none !important}.page-transition.fade-out{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s var(--ease),visibility 0s linear .5s}.page-transition .splash-text{font-family:var(--display);font-weight:800;font-size:clamp(2.6rem,10vw,8rem);letter-spacing:-0.04em;color:var(--black);line-height:1;display:inline-flex;align-items:center;white-space:nowrap;min-height:1em}.page-transition .splash-text .typed{white-space:pre}.scroll-tilt{display:inline-block;transition:transform .55s var(--bounce);will-change:transform}.hashtag-mark .accent{display:inline-block;transition:transform .55s var(--bounce)}@media (hover:none){.scroll-tilt,.hashtag-mark .accent{transition:transform .15s linear}.scroll-tilt{margin-right:6px}.section-head h2,.partners-head h3{padding-right:14px}}@media (hover:hover) and (pointer:fine){.hero-script.scroll-tilt:hover,.greeting.scroll-tilt:hover{transform:rotate(-3deg) scale(1.06) translateY(-3px)}h2:hover>em.scroll-tilt,h3:hover>em.scroll-tilt,h4:hover>em.scroll-tilt,h2 em.scroll-tilt:hover,h3 em.scroll-tilt:hover,h4 em.scroll-tilt:hover,.hashtag-mark:hover .accent,.partners-head h3:hover em.scroll-tilt{transform:rotate(-5deg) scale(1.08) translateY(-2px)}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important}#preloader{display:none}}
/* =========================================================
   CAREERS PAGE
   ========================================================= */
.page-hero.careers-hero{padding:200px 0 70px;background:var(--paper);position:relative;overflow:hidden;text-align:left}
.page-hero.careers-hero::before{content:'';position:absolute;top:80px;right:-10%;width:520px;height:520px;background:radial-gradient(circle,var(--purple-mist) 0%,transparent 70%);border-radius:50%;filter:blur(40px);opacity:0.6;pointer-events:none}
.page-hero.careers-hero .container{position:relative;z-index:1;max-width:900px}
.page-hero.careers-hero .hero-script{margin-bottom:10px}
.page-hero.careers-hero h1{font-family:var(--display);font-size:clamp(2.4rem,7vw,5.6rem);line-height:0.98;letter-spacing:-0.025em;font-weight:700;margin-bottom:24px}
.page-hero.careers-hero h1 em{font-style:italic;color:var(--purple-dark)}
.page-hero-sub{font-size:17px;line-height:1.7;color:var(--black-70);max-width:620px;font-weight:500}
.page-hero-sub em{font-style:italic;color:var(--purple-dark);font-weight:600}

.careers-pillars{background:var(--paper);padding:clamp(60px,8vh,100px) 0 clamp(80px,11vh,130px)}
.careers-pillars .pillars-grid{grid-template-columns:repeat(4,1fr)}
.careers-pillars .pillar{padding:48px 28px}
.careers-pillars .pillar h3{font-family:var(--display);font-size:1.5rem;font-weight:700;line-height:1.15;letter-spacing:-0.012em;margin-bottom:14px;color:var(--black)}
.careers-pillars .pillar h3 em{font-style:italic;color:var(--purple-dark);font-weight:700}
.careers-pillars .pillar p{font-size:13.5px;line-height:1.65;color:var(--black-70);font-weight:500}

.careers-positions{background:var(--white);padding:clamp(80px,11vh,140px) 0}
.career-group{margin-bottom:80px;padding-bottom:60px;border-bottom:1px solid var(--line)}
.career-group:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.career-group-head{margin-bottom:40px;max-width:820px}
.career-group-head h3{font-family:var(--body);font-size:clamp(1.6rem,3.4vw,2.4rem);font-weight:900;line-height:1.05;letter-spacing:-0.02em;margin-bottom:18px;text-transform:uppercase;color:var(--black);display:inline-flex;align-items:center;flex-wrap:wrap;gap:0;column-gap:18px;row-gap:6px}
.career-group-head h3 .title-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--purple);flex-shrink:0;align-self:center}
.career-group-head p{font-size:15.5px;line-height:1.7;color:var(--black-70);font-weight:500}

.career-roles{display:flex;flex-direction:column;gap:14px;margin-bottom:38px}
.career-role{background:var(--paper);border:1px solid var(--line);transition:border-color .3s var(--ease),box-shadow .3s var(--ease)}
.career-role[open]{border-color:var(--purple);box-shadow:0 18px 40px -16px rgba(122,95,184,0.25)}
.career-role summary{list-style:none;cursor:pointer;padding:22px 26px;display:flex;align-items:center;gap:16px;transition:background-color .25s var(--ease)}
.career-role summary::-webkit-details-marker{display:none}
.career-role summary:hover{background:rgba(122,95,184,0.04)}
.career-role .role-summary-left{display:flex;align-items:center;gap:14px;flex:1;flex-wrap:wrap;min-width:0}
.career-role .role-title{font-family:var(--display);font-size:1.25rem;font-weight:700;letter-spacing:-0.01em;color:var(--black);line-height:1.3}
.career-role .role-active{display:inline-flex;align-items:center;gap:8px;font-family:var(--body);font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--purple-dark);white-space:nowrap;flex-shrink:0}
.career-role .role-active::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--purple);box-shadow:0 0 0 0 rgba(153,130,200,0.55);animation:roleActivePing 1.8s ease-in-out infinite}
@keyframes roleActivePing{0%{box-shadow:0 0 0 0 rgba(153,130,200,0.55)}70%{box-shadow:0 0 0 8px rgba(153,130,200,0)}100%{box-shadow:0 0 0 0 rgba(153,130,200,0)}}
.role-meta-bar{display:flex;gap:28px;padding:16px 0 18px;margin-bottom:20px;border-top:1px solid rgba(122,95,184,0.18);border-bottom:1px solid rgba(122,95,184,0.18);flex-wrap:wrap}
.role-meta-item{display:flex;flex-direction:column;gap:4px}
.role-meta-label{font-family:var(--body);font-size:9.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--purple-dark)}
.role-meta-value{font-family:var(--body);font-size:14px;font-weight:700;color:var(--black);letter-spacing:-0.005em}
.career-role .role-toggle{width:32px;height:32px;border-radius:50%;border:2px solid var(--black);display:inline-flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;transition:all .35s var(--ease)}
.career-role .role-toggle::before,.career-role .role-toggle::after{content:'';position:absolute;background:var(--black);transition:transform .35s var(--ease),background .25s var(--ease)}
.career-role .role-toggle::before{width:12px;height:2px}
.career-role .role-toggle::after{width:2px;height:12px}
.career-role[open] .role-toggle{background:var(--purple);border-color:var(--purple)}
.career-role[open] .role-toggle::before,.career-role[open] .role-toggle::after{background:var(--white)}
.career-role[open] .role-toggle::after{transform:scaleY(0)}
.career-role .role-body{padding:8px 26px 30px;display:grid;grid-template-columns:1fr 1fr;gap:36px}
.career-role .role-col h4{font-family:var(--body);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--purple-dark);margin-bottom:14px}
.career-role .role-col p{font-size:14.5px;line-height:1.65;color:var(--black-70);font-weight:500}
.career-role .role-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.career-role .role-col li{font-size:14.5px;line-height:1.55;color:var(--black-70);font-weight:500;padding-left:18px;position:relative}
.career-role .role-col li::before{content:'';position:absolute;left:0;top:10px;width:6px;height:6px;background:var(--purple);border-radius:50%}

.career-group-offer{background:var(--purple-veil);padding:28px 32px;border-left:3px solid var(--purple)}
.career-group-offer h4{font-family:var(--display);font-size:1.2rem;font-weight:700;margin-bottom:14px;letter-spacing:-0.01em;color:var(--black)}
.offer-list{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:8px 24px}
.offer-list li{font-size:14px;line-height:1.55;color:var(--black-70);font-weight:500;padding-left:20px;position:relative}
.offer-list li::before{content:'✓';position:absolute;left:0;top:0;color:var(--purple-dark);font-weight:900;font-size:13px}

.apply-section{background:var(--paper);padding:clamp(80px,11vh,140px) 0;position:relative;overflow:hidden}
.apply-section::before{content:'';position:absolute;top:-100px;left:-10%;width:500px;height:500px;background:radial-gradient(circle,var(--purple-mist) 0%,transparent 70%);border-radius:50%;filter:blur(50px);opacity:0.5;pointer-events:none}
.apply-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(40px,6vw,80px);align-items:start;position:relative;z-index:1}
.apply-intro .hero-script{margin-bottom:8px;font-size:1.7rem}
.apply-intro h2{font-family:var(--display);font-size:clamp(2.2rem,5vw,4rem);line-height:0.98;font-weight:700;letter-spacing:-0.022em;margin-bottom:24px}
.apply-intro h2 em{font-style:italic;color:var(--purple-dark);font-weight:700}
.apply-intro>p{font-size:16px;line-height:1.7;color:var(--black-70);margin-bottom:34px;font-weight:500;max-width:440px}
.apply-meta{display:flex;flex-direction:column;gap:18px;margin-top:36px}
.apply-meta-row{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:4px}
.apply-meta-label{font-family:var(--body);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--purple-dark);font-weight:800}
.apply-meta-row a,.apply-meta-row span:not(.apply-meta-label){font-family:var(--display);font-size:1.2rem;font-weight:700;letter-spacing:-0.005em;color:var(--black);transition:color .3s var(--ease)}
.apply-meta-row a:hover{color:var(--purple-dark)}

.apply-form-wrap{background:var(--white);padding:clamp(34px,4vw,52px);border:2px solid var(--black);box-shadow:14px 14px 0 var(--purple);position:relative}
.apply-form{display:flex;flex-direction:column;gap:22px}
.apply-form .form-row{display:flex;flex-direction:column}
.apply-form .form-row-split{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.apply-form .form-row-split>div{display:flex;flex-direction:column}
.apply-form label{font-family:var(--body);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--black);font-weight:800;margin-bottom:8px;display:block}
.apply-form input[type="text"],.apply-form input[type="email"],.apply-form input[type="tel"],.apply-form textarea,.apply-form select{width:100%;font-family:var(--body);font-size:15px;font-weight:500;color:var(--black);padding:14px 0;border:0;border-bottom:2px solid var(--black);background:transparent;outline:none;transition:border-color .3s var(--ease);border-radius:0;-webkit-appearance:none;appearance:none}
.apply-form input:focus,.apply-form textarea:focus,.apply-form select:focus{border-bottom-color:var(--purple)}
.apply-form textarea{resize:vertical;min-height:96px;line-height:1.5}
.apply-form select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'><path d='M1 1l5 5 5-5' stroke='%230a0a0a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 0 center;background-size:12px;padding-right:24px;cursor:pointer}

/* File upload */
.file-upload-wrap{position:relative}
.file-upload-wrap input[type="file"]{position:absolute;left:-9999px;opacity:0}
.file-upload-label{display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 20px;border:2px dashed var(--black);background:var(--paper);cursor:pointer;text-align:center;transition:all .3s var(--ease);letter-spacing:normal !important;text-transform:none !important;font-size:14px !important;font-weight:500 !important;color:var(--black) !important;margin:0 !important}
.file-upload-label:hover,.file-upload-label.drag-over{border-color:var(--purple);background:var(--purple-veil)}
.file-upload-label.has-file{border-color:var(--purple);background:var(--purple-mist);border-style:solid}
.file-upload-icon{width:40px;height:40px;color:var(--purple-dark);display:flex;align-items:center;justify-content:center;border:2px solid var(--purple);border-radius:50%;background:var(--white);transition:all .3s var(--ease)}
.file-upload-icon svg{width:20px;height:20px;color:currentColor}
.file-upload-label.has-file .file-upload-icon{background:var(--purple);color:var(--white);border-color:var(--purple)}
.file-upload-label.has-file .file-upload-icon svg{color:var(--white)}
.file-upload-text{font-family:var(--body);font-size:13px;font-weight:700;color:var(--black);letter-spacing:.04em}
.file-upload-label.has-file .file-upload-text{display:none}
.file-upload-name{font-family:var(--body);font-size:12px;color:var(--black-50);font-weight:500;word-break:break-word;letter-spacing:0}
.file-upload-name::before{content:attr(data-default)}
.file-upload-name:not(:empty)::before{content:''}
.file-upload-name.error{color:#8a2828}
.file-upload-label.has-file .file-upload-name{color:var(--purple-dark);font-weight:700;font-size:13px}

.form-consent{margin-top:8px}
.form-consent label{display:flex !important;flex-direction:row !important;align-items:flex-start;gap:12px;text-transform:none !important;letter-spacing:normal !important;font-size:13px !important;font-weight:500 !important;color:var(--black-70) !important;line-height:1.55;cursor:pointer;margin-bottom:0 !important}
.form-consent input[type="checkbox"]{width:18px;height:18px;flex-shrink:0;margin-top:2px;accent-color:var(--purple);cursor:pointer}
.form-consent span{display:inline-block;flex:1}

.apply-form .submit-btn{margin-top:14px;background:var(--purple);color:var(--white);border:2px solid var(--purple);padding:18px 30px;font-family:var(--body);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .35s var(--ease);width:auto;align-self:flex-start;display:inline-block}
.apply-form .submit-btn:hover:not(:disabled){background:var(--black);border-color:var(--black)}
.apply-form .submit-btn:disabled{opacity:0.6;cursor:not-allowed}

.cta-strip.careers-cta-strip{background:var(--black);color:var(--white);padding:clamp(60px,8vh,90px) 0}
.cta-strip-inner{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.cta-strip-inner .hero-script{color:var(--purple-light);margin-bottom:6px;font-size:1.4rem}
.cta-strip-inner h2{font-family:var(--display);font-size:clamp(1.8rem,3.4vw,2.8rem);font-weight:700;letter-spacing:-0.02em;line-height:1.05;margin-bottom:10px}
.cta-strip-inner h2 em{font-style:italic;color:var(--purple-light);font-weight:700}
.cta-strip-inner p{font-size:15px;color:rgba(255,255,255,0.7);font-weight:500}
.cta-strip-actions{display:flex;flex-direction:column;gap:8px;text-align:right}
.cta-line{font-family:var(--display);font-size:1.3rem;font-weight:700;color:var(--white);letter-spacing:-0.005em;transition:color .3s var(--ease)}
.cta-line:hover{color:var(--purple-light)}

@media (max-width:1024px){
  .careers-pillars .pillars-grid{grid-template-columns:repeat(2,1fr);border-left:0;border-right:0}
  .careers-pillars .pillar{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  .careers-pillars .pillar:nth-child(2n){border-right:0}
  .careers-pillars .pillar:nth-last-child(-n+2){border-bottom:0}
  .apply-grid{grid-template-columns:1fr;gap:50px}
  .apply-form-wrap{box-shadow:8px 8px 0 var(--purple)}
  .career-role .role-body{grid-template-columns:1fr;gap:22px}
  .offer-list{grid-template-columns:1fr}
  .cta-strip-inner{grid-template-columns:1fr;gap:24px}
  .cta-strip-actions{text-align:left}
}
@media (max-width:768px){
  .careers-pillars .pillars-grid{grid-template-columns:1fr}
  .careers-pillars .pillar{border-right:0}
  .careers-pillars .pillar:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
  .careers-pillars .pillar:last-child{border-bottom:0}
  .career-role summary{padding:18px 18px}
  .career-role .role-title{font-size:1.05rem}
  .career-role .role-active{font-size:9.5px;letter-spacing:.14em}
  .career-role .role-active::before{width:7px;height:7px}
  .career-role .role-body{padding:8px 18px 24px}
  .role-meta-bar{gap:18px;padding:14px 0 16px;margin-bottom:18px}
  .role-meta-label{font-size:9px}
  .role-meta-value{font-size:13px}
  .career-group-offer{padding:22px 22px}
  .apply-form .form-row-split{grid-template-columns:1fr}
  .apply-form-wrap{padding:28px 22px;box-shadow:6px 6px 0 var(--purple)}
}

/* Label suffix for "optional" inputs */
.label-optional{font-family:var(--body);font-size:9.5px;font-weight:600;letter-spacing:.04em;text-transform:none;color:var(--black-50);margin-left:6px}

/* Bao Bun variants list — matches regular product description style */
.product-info .bao-variants{list-style:none;padding:0;margin:0 0 14px;font-size:13px;color:var(--black-50);line-height:1.55;font-weight:500}
.product-info .bao-variants li{padding-left:14px;position:relative;margin-bottom:2px}
.product-info .bao-variants li::before{content:'';position:absolute;left:0;top:7px;width:5px;height:5px;background:var(--purple);border-radius:50%}
.product-info .bao-variants li:last-child{margin-bottom:0}
