
body{margin:0;background:#07070F}
*{box-sizing:border-box}
a{color:inherit}
a:hover{opacity:.82}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #4DA3FF;outline-offset:2px}
h1,h2,h3,p,ul,ol{margin:0;padding:0}
ul,ol{list-style:none}
.wrap{position:relative;width:100%;max-width:1280px;margin:0 auto;padding-inline:clamp(16px,4vw,48px)}
.dark{position:relative;color:#FFFFFF;background:#07070F;overflow:hidden}
.light{position:relative;color:#07070F;background:#F4F6FA}
.band{padding-block:clamp(72px,10vw,136px)}
.display{font-weight:800;letter-spacing:-.04em;line-height:1.05}
.neon{color:#4DA3FF;text-shadow:0 0 20px rgba(77,163,255,.6),0 0 52px rgba(77,163,255,.3)}
.blue{color:#1362B7}
.k-js .rise:not(.in) .drawn svg{animation-play-state:paused}
.hero-h1{font-size:clamp(2.4rem,4.4vw,3.9rem);line-height:1.05}
.h2{font-size:clamp(1.9rem,3.6vw,3.25rem);text-wrap:balance}
.kicker{display:inline-flex;align-self:flex-start;align-items:center;gap:9px;padding:7px 14px 7px 10px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#CFE3FF;background:rgba(30,119,216,.2);border:1px solid rgba(77,163,255,.45);border-radius:10px}
.kicker svg{flex:none;width:18px;height:18px;fill:none;stroke:#4DA3FF;stroke-width:3.2;stroke-linecap:round;stroke-dasharray:.1 5.87}
.lede{max-width:680px;font-size:15px;line-height:1.65;text-wrap:pretty}
.soft{color:#D5D7EA}
.muted{color:#45485F}
.head-block{display:flex;flex-direction:column;gap:18px;margin-bottom:clamp(36px,5vw,64px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:40px;align-items:center}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes tagin{from{opacity:0}}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;font-size:14px;font-weight:700;border-radius:999px;text-decoration:none}
.btn-main{color:#FFFFFF;background:#1362B7;box-shadow:0 0 12px rgba(77,163,255,.2)}
.btn-line{color:#FFFFFF;border:1px solid rgba(255,255,255,.6)}
@keyframes slide{to{transform:translateX(-50%)}}
.hero-dots{-webkit-mask-image:linear-gradient(180deg,#000 45%,transparent 92%)!important;mask-image:linear-gradient(180deg,#000 45%,transparent 92%)!important;animation:none!important;opacity:.17!important;background-image:radial-gradient(#F4F6FA 1.3px,transparent 1.8px)!important}
.dotsbg{position:absolute;inset:0;opacity:.2;background-image:radial-gradient(#4DA3FF 1.3px,transparent 1.8px);background-size:30px 30px;-webkit-mask-image:linear-gradient(115deg,transparent 40%,#000 100%);mask-image:linear-gradient(115deg,transparent 40%,#000 100%);animation:dots 22s linear infinite;pointer-events:none}
@keyframes dots{to{background-position:30px 60px}}
.kicker.kicker-light{gap:7px;margin-bottom:-11px;padding:0;font-size:11px;color:#1362B7;background:none;border:0;border-radius:0}
.kicker.kicker-light svg{width:14px;height:14px;stroke:#1362B7}
.quote{position:relative;margin:6px 0 0;padding-left:20px;border-left:3px solid #1362B7}
.quote blockquote{margin:0;font-size:16px;font-weight:600;line-height:1.55;color:#07070F}
.quote figcaption{display:flex;flex-direction:column;margin-top:10px;font-size:13px;line-height:1.4;color:#45485F}
.quote b{color:#07070F}
.split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center}
.svc-track{display:flex;width:max-content;animation:slide 42s linear infinite}
.svc-band:hover .svc::before{transform:scale(1.5)}
.svc-band{position:relative;z-index:1;overflow:hidden;padding-block:clamp(9px,1vw,13px);background:#1362B7}
.svc{--pop:#4DA3FF;flex:none;display:flex;align-items:center;gap:10px;margin-right:30px;padding-block:6px;font-size:14px;font-weight:700;white-space:nowrap;color:#FFFFFF}
.svc::before{content:'';flex:none;width:9px;height:9px;background:var(--pop);border-radius:50%;box-shadow:0 0 10px var(--pop);transition:transform .45s ease}
.svc:nth-child(4n+2){--pop:#FCCB09}
.svc:nth-child(4n+3){--pop:#FF8C00}
.svc:nth-child(4n+1),.svc:nth-child(4n+4){--pop:#FFFFFF}
.big-track{display:flex;width:max-content;animation:slide 24s linear infinite}
.big-track .big-ring{display:flex;align-items:center}
.big-ring svg{display:block;width:.62em;height:.62em;overflow:visible;fill:none;stroke:var(--ring,#4DA3FF);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:.1 4.1;filter:drop-shadow(0 0 7px var(--ring,#4DA3FF))}
.big-ring:nth-child(8n+2) svg{--ring:#FFD35C}
.big-ring:nth-child(8n+4) svg{--ring:#FF7A59}
.big-ring:nth-child(8n+6) svg{--ring:#2DD4BF}
.big-ring:nth-child(8n+8) svg{--ring:#B98AFF}
.big-track a{display:block;padding-inline:26px;font-size:clamp(2.6rem,7.4vw,6.6rem);white-space:nowrap;text-decoration:none}
.ghost{color:transparent;-webkit-text-stroke:1.5px #FFFFFF}
.cta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(36px,6vw,88px);align-items:center}
.contact{display:flex;flex-direction:column;gap:14px;padding-top:10px;font-style:normal}
.contact a{display:flex;align-items:center;gap:12px;min-height:44px;font-size:clamp(1.7rem,2.8vw,2.3rem);font-weight:800;letter-spacing:-.03em;text-decoration:none}
.ico{flex:none;width:38px;height:38px;padding:6px;fill:#FFFFFF;background:#1362B7;border-radius:50%;box-shadow:0 0 0 5px rgba(77,163,255,.16)}
.note{display:flex;align-items:flex-start;gap:8px;max-width:300px;margin:-2px 0 0 52px;font-family:'Caveat','Comic Sans MS',cursive;font-size:23px;font-weight:600;line-height:1.1;color:#CFE3FF;transform:rotate(-2deg)}
.note svg{flex:none;width:52px;height:46px;fill:none;stroke:#4DA3FF;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.note p{padding-top:14px}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form-card{display:flex;flex-direction:column;gap:18px;justify-self:end;width:100%;max-width:470px;color:#FFFFFF}
.form-card .blue{color:#4DA3FF}
.form-card h3{padding-bottom:10px;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700;letter-spacing:-.02em;line-height:1.3}
.when{grid-column:1 / -1;min-width:0;margin:0;padding:0;border:0}
.when legend{padding:0 0 2px;font-size:13px;font-weight:600;color:#C9CDE2}
.when-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.when input{position:absolute;opacity:0;width:0;height:0}
.when span{display:flex;align-items:center;justify-content:flex-start;height:38px;font-size:14px;font-weight:500;color:#FFFFFF;background:transparent;border-bottom:1px solid #5A5F8A;cursor:pointer;transition:color .2s ease,border-color .2s ease,box-shadow .2s ease}
.when span:hover{border-bottom-color:#4DA3FF}
.when input:checked + span{font-weight:700;color:#4DA3FF;border-bottom-color:#4DA3FF;box-shadow:0 1px 0 #4DA3FF}
.when input:focus-visible + span{box-shadow:0 0 0 4px rgba(30,119,216,.25)}
.form-note{font-size:12.5px;color:#C9CDE2}
.submit{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px;font:inherit;font-weight:700;color:#FFFFFF;background:#1362B7;border:0;border-radius:12px;cursor:pointer;transition:background .2s ease}
.submit:hover{background:#0E4F96}
.submit svg{transition:transform .25s ease}
.submit:hover svg{transform:translateX(5px)}
.field{display:flex;flex-direction:column;gap:0;font-size:13px;font-weight:600;color:#C9CDE2}
.field input{height:38px;width:100%;padding:0;font:inherit;font-size:14px;font-weight:500;color:#FFFFFF;color-scheme:dark;background:transparent;border:0;border-bottom:1px solid #5A5F8A;border-radius:0;transition:border-color .2s ease,box-shadow .2s ease}
.field input:focus{outline:0;border-bottom-color:#4DA3FF;box-shadow:0 1px 0 #4DA3FF}
.k-js .rise{opacity:0;transform:translateY(44px)}
.k-js .rise.in{opacity:1;transform:none;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.band{padding-block:clamp(56px,7vw,100px)}
.crumbs{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:#D5D7EA}
.crumbs a{text-decoration:none}
.crumbs [aria-current]{color:#FFFFFF}
.hero-alt{font-size:13px;color:#D5D7EA}
.hero-alt a{font-weight:700;color:#FFFFFF;text-underline-offset:3px}
.hero-wrap{position:relative;z-index:1}
.mos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.mo{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-width:0;min-height:clamp(150px,14vw,196px);padding:clamp(16px,1.8vw,22px);overflow:hidden;border-radius:16px}
.mo b{font-size:clamp(2.6rem,5.2vw,4.4rem);font-weight:800;letter-spacing:-.05em;line-height:1}
.mo span{margin-top:6px;font-size:13px;font-weight:600;line-height:1.35}
.mo-a{grid-column:span 4;color:#FFFFFF;background:linear-gradient(140deg,#0B2F73,#1362B7 60%,#1E77D8);box-shadow:0 0 34px rgba(77,163,255,.3)}
.mo-a b{font-size:clamp(2.6rem,5vw,4.5rem)}
.mo-b{grid-column:span 2;padding:10px}
.mo-b{align-items:center;justify-content:center;background:#FF7A59}
.mo-b svg{width:86%;fill:#FFFFFF;animation:mospin 24s linear infinite}
@keyframes mospin{to{transform:rotate(360deg)}}
.mo-c{grid-column:span 3;color:#FFFFFF;background:#0A0D22;border:2px solid #4DA3FF;box-shadow:0 0 22px rgba(77,163,255,.3)}
.mo-c b{color:#4DA3FF;text-shadow:0 0 20px rgba(77,163,255,.5)}
.mo-d{grid-column:span 3;color:#07070F;background:#FFFFFF}
.mo-d b{color:#1362B7}
.kit{position:relative;container-type:inline-size;aspect-ratio:1/.8}
.k-logo{flex:none;width:1.2em;height:1.2em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.shop-sign .k-logo{font-size:3.6em}
.ph-top .k-logo{color:#12A19A}
.cd-l .k-logo{font-size:1.5em;color:#FFD35C}
.shop{position:absolute;top:0;left:0;width:76%;font-size:2.2cqw;line-height:1.2;color:#FFFFFF;background:#FFF8EE;border-radius:1em 1em 0 0;box-shadow:0 22px 54px -18px rgba(7,7,15,.4)}
.shop-fascia{display:flex;align-items:center;gap:.6em;padding:1em 1.3em;font-size:1.5em;background:linear-gradient(120deg,#0A5C63,#12A19A);border-radius:.66em .66em 0 0}
.shop-fascia b{font-weight:800;letter-spacing:-.03em}
.shop-awn{height:1.7em;background:linear-gradient(90deg,#FFD35C 50%,#FFFFFF 50%) 0 0/4em 100%}
.shop-body{display:grid;grid-template-columns:1fr .62fr 1fr;gap:1em;height:21em;padding:1.2em 1.3em 0}
.shop-win{position:relative;overflow:hidden;background:linear-gradient(160deg,#D7EEF0,#A9DAD8);border:.25em solid #0A5C63;border-bottom-width:.7em}
.shop-win p{margin:1em 0 0 .9em;font-weight:800;letter-spacing:-.02em;color:#0A5C63;font-size:1.25em}
.shop-win i{position:absolute;right:-1.6em;bottom:-1.6em;width:9em;height:9em;background:#FF7A59;border-radius:50%}
.shop-win u{position:absolute;right:0;bottom:0;left:0;height:5em;background:linear-gradient(170deg,transparent 40%,#0A5C63 41%)}
.shop-door{position:relative;background:#0A5C63;border-radius:.4em .4em 0 0}
.shop-door i{position:absolute;inset:1em .9em 7em;background:#D7EEF0;border-radius:.2em}
.shop-sign{position:absolute;top:-1.4em;right:-2.6em;display:flex;align-items:center;justify-content:center;width:7.4em;height:7.4em;font-size:1em;color:#FFFFFF;background:#2DD4BF;border-radius:1em;box-shadow:0 0 26px rgba(45,212,191,.7)}
.ph{position:absolute;right:0;bottom:0;width:32%;padding:1cqw;background:#07070F;border-radius:3.4cqw;box-shadow:0 26px 54px -14px rgba(7,7,15,.6);animation:kfl 7s ease-in-out infinite alternate}
.ph-scr{display:flex;flex-direction:column;gap:1.1em;height:52cqw;padding:1.5em 1.2em;font-size:1.65cqw;line-height:1.2;color:#0A3A3D;background:#FFFFFF;border-radius:2.6cqw}
.ph-top{display:flex;align-items:center;gap:.5em;font-size:1.25em;color:#0A5C63}
.ph-h{margin:.3em 0 0;font-size:2.1em;font-weight:800;letter-spacing:-.04em;line-height:1.05}
.ph-days{display:grid;grid-template-columns:repeat(3,1fr);gap:.5em}
.ph-days i{padding:.7em 0;font-style:normal;font-weight:700;text-align:center;background:#EDF6F5;border-radius:.6em}
.ph-days .on{color:#FFFFFF;background:#12A19A}
.ph-slot{display:flex;align-items:center;justify-content:space-between;padding:.8em;font-weight:700;background:#FFF8EE;border-radius:.6em}
.ph-slot i{width:1em;height:1em;border:.2em solid #12A19A;border-radius:50%}
.ph-btn{margin-top:auto;padding:.9em;font-weight:800;text-align:center;color:#FFFFFF;background:#FF7A59;border-radius:999px}
.cd{position:absolute;bottom:7cqw;left:4%;display:grid;grid-template-columns:1fr 1.2fr;width:50%;overflow:hidden;font-size:1.55cqw;line-height:1.25;background:#FFFFFF;border-radius:1.2cqw;box-shadow:0 18px 40px -12px rgba(7,7,15,.5);transform:rotate(-3deg);animation:kfl2 8s ease-in-out infinite alternate}
.cd-l{display:flex;flex-direction:column;gap:.5em;padding:1.3em;color:#FFFFFF;background:linear-gradient(140deg,#0A5C63,#12A19A)}
.cd-l .cd-l b{font-size:1.25em;letter-spacing:-.02em}
.cd-r{display:flex;flex-direction:column;justify-content:space-between;gap:.8em;padding:1.3em;color:#0A3A3D}
.cd-r p{margin:0;font-weight:600}
.cd-sw{display:flex;gap:.4em}
.cd-sw i{width:1.5em;height:1.5em;border-radius:50%;background:#0A5C63}
.cd-sw i:nth-child(2){background:#12A19A}
.cd-sw i:nth-child(3){background:#FFD35C}
.cd-sw i:nth-child(4){background:#FF7A59}
.shop-sign,.shop-win,.shop-door i,.shop-door em,.shop-awn,.ph,.cd,.ph-btn,.ph-slot{transition:all .55s cubic-bezier(.2,.8,.2,1)}
.shop-door{perspective:30em}
.shop-door i{transform-origin:left center}
.shop-door em{position:absolute;top:44%;left:50%;padding:.2em .6em;font-size:.95em;font-style:normal;font-weight:800;color:#0A5C63;background:#FFD35C;border-radius:.3em;opacity:0;transform:translate(-50%,.6em)}
.kit:hover .shop-sign{box-shadow:0 0 44px rgba(45,212,191,1);transform:scale(1.14) rotate(6deg)}
.kit:hover .shop-win{background:linear-gradient(160deg,#FFF3C4,#FFD35C)}
.kit:hover .shop-door i{background:#FFF3C4;transform:rotateY(-48deg)}
.kit:hover .shop-door em{opacity:1;transform:translate(-50%,0)}
.kit:hover .shop-awn{background-position:4em 0}
.kit:hover .ph{translate:0 -3cqw;rotate:3deg}
.kit:hover .cd{translate:-1cqw 2.4cqw;rotate:-3deg}
.kit:hover .ph-days+.ph-slot{color:#FFFFFF;background:#12A19A}
.kit:hover .ph-days+.ph-slot i{background:#FFFFFF;border-color:#FFFFFF}
.kit:hover .ph-btn{transform:scale(1.05);box-shadow:0 0 16px rgba(255,122,89,.7)}
@keyframes kfl{to{transform:translateY(-1.4cqw)}}
@keyframes kfl2{from{transform:rotate(-3deg)}to{transform:rotate(-3deg) translateY(1.2cqw)}}
.story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,88px);align-items:center}
.story-copy{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.story-copy p:not(.kicker){margin:0;font-size:15px;line-height:1.65;color:#45485F;text-wrap:pretty}
.love{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,24px)}
.love-band{isolation:isolate}
.lv{position:relative;display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.6vw,32px);background:rgba(18,18,42,.72);border:1px solid #2A3160;border-radius:18px;animation:lvon 24s ease-in-out var(--d) infinite}
.lv-edge{position:absolute;top:-1px;left:-1px;width:calc(100% + 2px);height:calc(100% + 2px);overflow:visible;fill:none;pointer-events:none}
.lv-edge rect{opacity:0;stroke:#4DA3FF;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:66 34;filter:drop-shadow(0 0 5px #4DA3FF) drop-shadow(0 0 14px rgba(77,163,255,.8));animation:lvlap 24s linear var(--d) infinite}
.lv-i{width:clamp(52px,5vw,68px);height:clamp(52px,5vw,68px);fill:none;stroke:#4DA3FF;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(77,163,255,.75)) drop-shadow(0 0 22px rgba(77,163,255,.4))}
@keyframes lvon{0%,28%{background-color:rgba(30,119,216,.22);border-color:rgba(77,163,255,.7)}34%,100%{background-color:rgba(18,18,42,.72);border-color:#2A3160}}
@keyframes lvlap{0%{stroke-dashoffset:66;opacity:0}2%{opacity:1}28%{opacity:1}32%,100%{stroke-dashoffset:-34;opacity:0}}
.lv h3{margin:4px 0 0;font-size:clamp(1.1rem,1.5vw,1.3rem);font-weight:800;letter-spacing:-.03em;line-height:1.2}
.lv p{margin:0;color:#D5D7EA;text-wrap:balance}
.vs-h{text-wrap:wrap}
@media (min-width:641px){.vs-h .blue{display:block}}
.vs-l{max-width:900px;text-wrap:balance}
.vs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:0;overflow:hidden;background:#FFFFFF;border-radius:clamp(20px,2.6vw,30px);box-shadow:0 24px 54px -30px rgba(7,7,15,.4)}
.vs>div{display:flex;flex-direction:column;gap:14px;padding:clamp(24px,3.2vw,44px)}
.vs h3{margin:0;font-size:clamp(1.2rem,1.8vw,1.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.2}
.vs ul{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
.vs li{display:flex;align-items:flex-start;gap:10px;line-height:1.5;text-wrap:pretty}
.vs li span{min-width:0;text-wrap:balance}
.vs li svg{flex:none;width:18px;height:18px;margin-top:2px;fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.vs-no{color:#45485F}
.vs-no li svg{stroke:#9EA2BC}
.vs-yes{color:#FFFFFF;background:linear-gradient(145deg,#0B2F73,#1362B7 62%,#1E77D8)}
.vs-yes li svg{stroke:#FFFFFF}
.reg-band{padding-bottom:0}
.reg{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center;overflow:hidden;padding:clamp(28px,5vw,64px);color:#FFFFFF;background:#0A0D22;border:2px solid rgba(77,163,255,.45);border-radius:clamp(22px,3vw,40px)}
.ent-orb{position:absolute;z-index:-1;border-radius:50%;pointer-events:none;filter:blur(40px)}
.ent-a{top:-30%;left:-10%;width:46%;aspect-ratio:1;background:radial-gradient(circle,rgba(70,70,200,.34),transparent 68%);animation:entdrift 14s ease-in-out infinite alternate}
.ent-b{right:-12%;bottom:-40%;width:58%;aspect-ratio:1;background:radial-gradient(circle,rgba(30,119,216,.7),transparent 68%);animation:entdrift2 18s ease-in-out infinite alternate}
@keyframes entdrift{from{transform:translate(-6%,-4%) scale(1)}to{transform:translate(38%,26%) scale(1.25)}}
@keyframes entdrift2{from{transform:translate(8%,6%) scale(1.1)}to{transform:translate(-44%,-22%) scale(.9)}}
.ent-dots{position:absolute;inset:0;z-index:-1;opacity:.16;background-image:radial-gradient(#F4F6FA 1.3px,transparent 1.8px);background-size:30px 30px;animation:dots 26s linear infinite;pointer-events:none}
.reg-copy{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.reg-copy p:not(.kicker){margin:0;font-size:15px;line-height:1.65;color:#D5D7EA;text-wrap:pretty}
.reg-list{padding:clamp(20px,2.4vw,28px);background:rgba(7,7,15,.5);border:1px solid rgba(77,163,255,.35);border-radius:18px}
.reg-list>p{margin:0 0 12px;font-size:13px;font-weight:700}
.reg-list ul{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}
.reg-list li{display:flex;align-items:flex-start;gap:10px;font-weight:600;line-height:1.4}
.reg-list i{flex:none;display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:rgba(77,163,255,.2);border-radius:50%}
.reg-list .tk{width:13px;height:13px;fill:none;stroke:#FFFFFF;stroke-width:2.6}
.fy{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(16px,2vw,24px);align-items:stretch}
.fy-l{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#FFFFFF;border:1px solid rgba(7,7,15,.08);border-radius:clamp(22px,3vw,34px);box-shadow:0 22px 50px -32px rgba(7,7,15,.4)}
.fy-ban{position:relative;flex:none;height:clamp(80px,7vw,96px);overflow:hidden;background:linear-gradient(120deg,#0B2F73,#1362B7 60%,#1E77D8)}
.fy-ban i{position:absolute;inset:0;opacity:.18;background-image:radial-gradient(#F4F6FA 1.3px,transparent 1.8px);background-size:30px 30px;animation:dots 26s linear infinite}
.fy-spin,.fy-ban svg{--c:clamp(180px,24vw,340px);position:absolute;top:calc(var(--c) * -.32);right:clamp(16px,2.4vw,34px);width:var(--c)}
.fy-spin{height:var(--c)}
.fy-spin svg{display:block;width:100%;fill:#1E77D8;opacity:.16;animation:mospin 24s linear infinite}
.fy-ban svg{fill:#FFFFFF;opacity:.3;animation:mospin 24s linear infinite}
.fy-in{position:relative;display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0;padding:0 clamp(24px,3vw,38px) clamp(20px,2.4vw,30px)}
.fy-photo{flex:none;width:clamp(88px,8vw,108px);aspect-ratio:1;margin:calc(clamp(88px,8vw,108px) / -2) 0 12px;overflow:hidden;border-radius:50%;box-shadow:0 0 0 3px #FFFFFF,0 0 0 6px #1E77D8}
.fy-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 6%}
.fy-in h2{margin:0;font-size:clamp(1.8rem,2.9vw,2.5rem);line-height:1.1}
.fy-role{margin:4px 0 0;font-size:14px;font-weight:500;color:#1362B7}
.fy-bio{margin:8px 0 0;font-size:14px;line-height:1.6;color:#45485F;text-wrap:pretty}
.fy-links{display:flex;flex-wrap:wrap;gap:2px 26px;margin-top:12px}
.fy-wa{display:inline-flex;align-items:center;gap:8px;min-height:40px;font-size:14px;font-weight:700;color:#07070F;text-decoration:none}
.fy-wa:hover{text-decoration:underline;text-underline-offset:3px}
.fy-wa svg{width:22px;height:22px;fill:#25D366;animation:waglow 2.8s ease-in-out infinite alternate}
.fy-em svg{fill:none;stroke:#1362B7;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;animation:none}
@keyframes waglow{from{filter:drop-shadow(0 0 3px rgba(37,211,102,.5))}to{filter:drop-shadow(0 0 10px rgba(37,211,102,1))}}
.ex{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;padding:clamp(24px,3vw,38px);overflow:hidden;color:#FFFFFF;background:#0B0A1E;border:1px solid rgba(185,138,255,.5);border-radius:clamp(22px,3vw,34px);box-shadow:0 0 0 1px rgba(185,138,255,.12),0 0 60px rgba(122,47,208,.28)}
.ex-orb{position:absolute;z-index:-1;border-radius:50%;pointer-events:none;filter:blur(40px)}
.ex-a{top:-45%;left:-14%;width:70%;aspect-ratio:1;background:radial-gradient(circle,rgba(122,47,208,.85),transparent 68%);animation:entdrift 14s ease-in-out infinite alternate}
.ex-b{right:-16%;bottom:-50%;width:76%;aspect-ratio:1;background:radial-gradient(circle,rgba(30,119,216,.8),transparent 68%);animation:entdrift2 18s ease-in-out infinite alternate}
.fy-dots{position:absolute;inset:0;z-index:-1;opacity:.16;background-image:radial-gradient(#F4F6FA 1.3px,transparent 1.8px);background-size:30px 30px;animation:dots 26s linear infinite;pointer-events:none}
.ent-pill{padding:5px 12px;font-size:10.5px;font-weight:800;letter-spacing:.12em;line-height:1.2;text-transform:uppercase;color:#FFFFFF;background:rgba(185,138,255,.16);border:1px solid rgba(185,138,255,.6);border-radius:999px;box-shadow:0 0 14px rgba(185,138,255,.35)}
.ex h3{margin:2px 0 0;font-size:clamp(1.6rem,2.7vw,2.3rem);line-height:1.08;text-wrap:balance}
.ent-sub{margin:0;font-size:clamp(1rem,1.3vw,1.1rem);font-weight:700;letter-spacing:-.02em;line-height:1.3;color:#D9C2FF}
.ex ul{display:flex;flex-direction:column;gap:7px;margin:4px 0 6px;padding:0;font-weight:600;list-style:none}
.ex li{display:flex;align-items:center;gap:10px;white-space:nowrap}
.ex li i{flex:none;display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:rgba(185,138,255,.2);border-radius:50%;animation:entick 12s ease-in-out var(--d) infinite}
.ex .tk{width:13px;height:13px;fill:none;stroke:#FFFFFF;stroke-width:2.6}
@keyframes entick{0%,6%{background:rgba(185,138,255,.2);box-shadow:none}12%,26%{background:#B98AFF;box-shadow:0 0 12px #B98AFF}34%,100%{background:rgba(185,138,255,.2);box-shadow:none}}
.ent-btn{color:#07070F;background:#FFFFFF}
.ex small{font-size:11px;color:#D5D7EA}
.ex small a{color:inherit}
@media (prefers-reduced-motion:reduce){.ent-orb,.ent-dots,.ph,.cd,.lv,.lv-edge rect,.fy-dots,.fy-ban i,.fy-ban svg,.fy-spin svg,.ex-orb,.ex li i,.fy-wa svg,.mo-b svg{animation:none}
.shop-sign,.shop-win,.shop-door i,.shop-door em,.shop-awn,.ph,.cd,.ph-btn,.ph-slot{transition:none}}
@media (max-width:960px){
.hero-grid,.cta,.story,.reg,.love,.fy{grid-template-columns:minmax(0,1fr)}
.hero-grid{gap:36px}
}
@media (max-width:760px){
.vs{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
.wrap{padding-inline:24px}
.fy-in{padding:0 20px 18px}
.ex{padding:24px 20px}
.fy-photo{width:84px;margin-top:-42px}
.mo{min-height:128px}
.vs>div{padding:22px 20px}
.reg{padding:24px 20px}
.reg-list{padding:18px}
.lv{padding:22px 20px}
}


.pm{grid-column:1 / -1;min-width:0;margin:0;padding:0;border:0}.pm legend{padding:0 0 8px;font-size:13px;font-weight:600;color:#C9CDE2}.pm-r{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pm-any{margin-top:12px}.pm-any span{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#C9CDE2;cursor:pointer}.pm-any span::before{content:"";flex:none;width:20px;height:20px;border:1.5px solid #5A5F8A;border-radius:6px;background:transparent center/14px no-repeat;transition:background-color .2s ease,border-color .2s ease}.pm-any span:hover::before{border-color:#4DA3FF}.pm-any input:checked+span{color:#FFFFFF}.pm-any input:checked+span::before{background-color:#1E77D8;border-color:#4DA3FF;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E")}.pm-any input:focus-visible+span::before{outline:2px solid #4DA3FF;outline-offset:2px}
.best{grid-column:1 / -1;min-width:0;margin:14px 0 0;padding:0;border:0}
.best .pm-r{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:760px){.cta .note{display:none}}.pm label{position:relative;min-width:0}.pm input{position:absolute;opacity:0;width:0;height:0}
.pm-r span{display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 6px;font-size:13.500px;font-weight:700;color:#FFFFFF;cursor:pointer;background:rgba(7,7,15,.5);border:1px solid #5A5F8A;border-radius:12px;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.pm-r span:hover{border-color:#4DA3FF}.pm svg{flex:none;width:17px;height:17px;fill:#25D366}.pm svg .ln{fill:none;stroke:#4DA3FF;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pm-r input:checked+span{background:rgba(30,119,216,.3);border-color:#4DA3FF;box-shadow:0 0 16px rgba(77,163,255,.35)}.pm-r input:focus-visible+span{outline:2px solid #4DA3FF;outline-offset:2px}
.pm-a{display:inline-flex;margin-top:8px}.pm-a span{display:inline-flex;align-items:center;gap:7px;font-size:12.500px;font-weight:600;color:#C9CDE2;cursor:pointer}.pm-a span::before{content:'';width:12px;height:12px;border:1.500px solid #5A5F8A;border-radius:50%}.pm-a input:checked+span{color:#FFFFFF}.pm-a input:checked+span::before{background:#4DA3FF;border-color:#4DA3FF;box-shadow:inset 0 0 0 2px #0B0D22}.pm-a input:focus-visible+span{outline:2px solid #4DA3FF;outline-offset:2px}
.fields .when.w-half{grid-column:auto}
@media (max-width:420px){.pm-r span{font-size:12.500px;gap:4px;padding:0 3px}.pm svg{width:15px;height:15px}}
.field-w{grid-column:1 / -1}

/* page wrapper */
#pd.k-root,.editor-styles-wrapper .k-root{--accent: #1E77D8; font-family: 'Plus Jakarta Sans', Arial, sans-serif; font-size: 14px; line-height: 1.7; background: #07070F}
:is(#pd,.editor-styles-wrapper .k-root) .pds-ef73a8{padding-block: clamp(40px, 6vw, 80px) clamp(64px, 8vw, 112px)}
:is(#pd,.editor-styles-wrapper .k-root) .pds-df713f{display: flex; flex-direction: column; gap: 18px; align-items: flex-start}
:is(#pd,.editor-styles-wrapper .k-root) .pds-1c244e{margin: 0}
:is(#pd,.editor-styles-wrapper .k-root) .pds-019b32{position: relative}
:is(#pd,.editor-styles-wrapper .k-root) .pds-112192{--d: 0s}
:is(#pd,.editor-styles-wrapper .k-root) .pds-999de0{--d: 8s}
:is(#pd,.editor-styles-wrapper .k-root) .pds-576d26{--d: 16s}
:is(#pd,.editor-styles-wrapper .k-root) .pds-2c9a9b{color: #45485F}
:is(#pd,.editor-styles-wrapper .k-root) .pds-b847b5{padding-top: 0}
:is(#pd,.editor-styles-wrapper .k-root) .pds-679be5{padding-block: clamp(48px, 6vw, 80px) clamp(72px, 10vw, 136px)}
:is(#pd,.editor-styles-wrapper .k-root) .pds-c0ef05{display: flex; flex-direction: column; gap: 14px; align-items: flex-start}
:is(#pd,.editor-styles-wrapper .k-root) .pds-e97470{max-width: 480px}

/* desktop body text, 15% bigger */
@media (min-width:1024px){.kicker{font-size:13.80px}}
@media (min-width:1024px){.lede{font-size:17.25px}}
@media (min-width:1024px){.btn{font-size:16.10px}}
@media (min-width:1024px){.kicker.kicker-light{font-size:12.65px}}
@media (min-width:1024px){.quote blockquote{font-size:18.40px}}
@media (min-width:1024px){.quote figcaption{font-size:14.95px}}
@media (min-width:1024px){.svc{font-size:16.10px}}
@media (min-width:1024px){.contact a{font-size:calc(clamp(1.7rem,2.8vw,2.3rem) * 1.15)}}
@media (min-width:1024px){.note{font-size:26.45px}}
@media (min-width:1024px){.when legend{font-size:14.95px}}
@media (min-width:1024px){.when span{font-size:16.10px}}
@media (min-width:1024px){.form-note{font-size:14.37px}}
@media (min-width:1024px){.field{font-size:14.95px}}
@media (min-width:1024px){.field input{font-size:16.10px}}
@media (min-width:1024px){.crumbs{font-size:14.37px}}
@media (min-width:1024px){.hero-alt{font-size:14.95px}}
@media (min-width:1024px){.mo b{font-size:calc(clamp(2.6rem,5.2vw,4.4rem) * 1.15)}}
@media (min-width:1024px){.mo span{font-size:14.95px}}
@media (min-width:1024px){.mo-a b{font-size:calc(clamp(2.6rem,5vw,4.5rem) * 1.15)}}
@media (min-width:1024px){.shop{font-size:calc(2.2cqw * 1.15)}}
@media (min-width:1024px){.ph-scr{font-size:calc(1.65cqw * 1.15)}}
@media (min-width:1024px){.cd{font-size:calc(1.55cqw * 1.15)}}
@media (min-width:1024px){.story-copy p:not(.kicker){font-size:17.25px}}
@media (min-width:1024px){.reg-copy p:not(.kicker){font-size:17.25px}}
@media (min-width:1024px){.reg-list>p{font-size:14.95px}}
@media (min-width:1024px){.fy-role{font-size:16.10px}}
@media (min-width:1024px){.fy-bio{font-size:16.10px}}
@media (min-width:1024px){.fy-wa{font-size:16.10px}}
@media (min-width:1024px){.ent-pill{font-size:12.07px}}
@media (min-width:1024px){.ent-sub{font-size:calc(clamp(1rem,1.3vw,1.1rem) * 1.15)}}
@media (min-width:1024px){.ex small{font-size:12.65px}}
@media (min-width:1024px){.pm legend{font-size:14.95px}}
@media (min-width:1024px){.pm-any span{font-size:16.10px}}
@media (min-width:1024px){.pm-r span{font-size:15.52px}}
@media (min-width:1024px){.pm-a span{font-size:14.37px}}
@media (min-width:1024px){#pd.k-root,.editor-styles-wrapper .k-root{font-size:16.10px}}

/* board spacing, kept over WordPress layout margins */
:is(#pd,.editor-styles-wrapper .k-root) .wrap{margin:0 auto}
:is(#pd,.editor-styles-wrapper .k-root) .head-block{margin-bottom:clamp(36px,5vw,64px)}
:is(#pd,.editor-styles-wrapper .k-root) .kicker.kicker-light{margin-bottom:-11px}
:is(#pd,.editor-styles-wrapper .k-root) .quote{margin:6px 0 0}
:is(#pd,.editor-styles-wrapper .k-root) .quote blockquote{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .quote figcaption{margin-top:10px}
:is(#pd,.editor-styles-wrapper .k-root) .note{margin:-2px 0 0 52px}
:is(#pd,.editor-styles-wrapper .k-root) .when{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .mo span{margin-top:6px}
:is(#pd,.editor-styles-wrapper .k-root) .shop-win p{margin:1em 0 0 .9em}
:is(#pd,.editor-styles-wrapper .k-root) .ph-h{margin:.3em 0 0}
:is(#pd,.editor-styles-wrapper .k-root) .ph-btn{margin-top:auto}
:is(#pd,.editor-styles-wrapper .k-root) .cd-r p{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .story-copy p:not(.kicker){margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .lv h3{margin:4px 0 0}
:is(#pd,.editor-styles-wrapper .k-root) .lv p{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .vs h3{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .vs ul{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .vs li svg{margin-top:2px}
:is(#pd,.editor-styles-wrapper .k-root) .reg-copy p:not(.kicker){margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .reg-list>p{margin:0 0 12px}
:is(#pd,.editor-styles-wrapper .k-root) .reg-list ul{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .fy-photo{margin:calc(clamp(88px,8vw,108px) / -2) 0 12px}
:is(#pd,.editor-styles-wrapper .k-root) .fy-in h2{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .fy-role{margin:4px 0 0}
:is(#pd,.editor-styles-wrapper .k-root) .fy-bio{margin:8px 0 0}
:is(#pd,.editor-styles-wrapper .k-root) .fy-links{margin-top:12px}
:is(#pd,.editor-styles-wrapper .k-root) .ex h3{margin:2px 0 0}
:is(#pd,.editor-styles-wrapper .k-root) .ent-sub{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .ex ul{margin:4px 0 6px}
@media (max-width:640px){:is(#pd,.editor-styles-wrapper .k-root) .fy-photo{margin-top:-42px}}
:is(#pd,.editor-styles-wrapper .k-root) .pm{margin:0}
:is(#pd,.editor-styles-wrapper .k-root) .pm-any{margin-top:12px}
:is(#pd,.editor-styles-wrapper .k-root) .best{margin:14px 0 0}
:is(#pd,.editor-styles-wrapper .k-root) .pm-a{margin-top:8px}
:is(#pd,.editor-styles-wrapper .k-root) :is(#pd,.editor-styles-wrapper .k-root) .pds-1c244e{margin: 0}
@media (min-width:1024px){#pd.k-root,.editor-styles-wrapper .k-root{font-size:16.10px}}
