
:root{
  --ink:#07090d;
  --ink2:#0d1118;
  --paper:#f2eee3;
  --lime:#7cff16;
  --cyan:#00c8ff;
  --pink:#f2a2f0;
  --violet:#c998ff;
  --red:#ff4438;
  --yellow:#ffd23f;
  --white:#fff;
  --muted:#c8ced7;
  --max:1400px;
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{
  margin:0;color:#fff;background:var(--ink);
  font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif;
  line-height:1.5;overflow-x:hidden;
}
body::before{
  content:"";position:fixed;z-index:1000;top:0;left:0;right:0;height:6px;
  background:linear-gradient(90deg,var(--pink) 0 20%,var(--violet) 20% 40%,var(--red) 40% 60%,var(--cyan) 60% 80%,var(--lime) 80%);
}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button,summary{font:inherit}
::selection{background:var(--yellow);color:#000}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:14px;z-index:2000;background:#fff;color:#000;padding:.75rem 1rem;border-radius:999px}

.site-header{
  position:sticky;top:6px;z-index:80;background:rgba(7,9,13,.96);
  border-bottom:1px solid rgba(255,255,255,.1);
}
.header-inner{
  width:min(calc(100% - 40px),var(--max));margin:auto;min-height:72px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.brand{
  text-decoration:none;font-family:"Arial Black","Trebuchet MS",sans-serif;
  font-size:clamp(1rem,1.8vw,1.35rem);font-weight:900;letter-spacing:-.045em;
}
.desktop-nav{display:flex;gap:24px;align-items:center}
.desktop-nav a{
  text-decoration:none;text-transform:uppercase;font:700 .72rem/1 "Courier New",monospace;
  letter-spacing:.11em;color:#f5f7fa;
}
.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--lime)}
.mobile-menu{display:none;position:relative}
.mobile-menu summary{cursor:pointer;list-style:none;text-transform:uppercase;font:700 .72rem/1 "Courier New",monospace;letter-spacing:.1em}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu nav{
  position:absolute;right:0;top:36px;min-width:210px;background:#0b0e14;border:1px solid rgba(255,255,255,.15);
  border-top:5px solid var(--cyan);border-radius:14px;padding:10px;box-shadow:0 16px 35px rgba(0,0,0,.35)
}
.mobile-menu a{display:block;padding:12px;text-decoration:none;border-radius:8px;font-weight:700}
.mobile-menu a:hover{background:#151a22;color:var(--lime)}

.hero{
  position:relative;isolation:isolate;overflow:hidden;min-height:calc(100svh - 78px);
  padding:clamp(72px,9vw,130px) 20px clamp(56px,7vw,90px);
  display:grid;align-items:end;
  background:
   radial-gradient(circle at 84% 30%,rgba(124,255,22,.10),transparent 26%),
   radial-gradient(circle at 78% 74%,rgba(0,200,255,.08),transparent 23%),
   #07090d;
}
.hero-grid{
  position:absolute;inset:0;z-index:-3;opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(#000 0%,rgba(0,0,0,.6) 65%,transparent 100%);
}
.hero-content{width:min(100%,var(--max));margin:auto;position:relative;z-index:5}
.hero-mark{width:clamp(84px,10vw,132px);margin-bottom:24px;transform:rotate(-4deg);filter:drop-shadow(0 10px 16px rgba(0,0,0,.3))}
.hero h1{
  max-width:1040px;margin:0;font-family:"Arial Black","Trebuchet MS",sans-serif;
  font-size:clamp(3.4rem,8.5vw,8.9rem);line-height:.86;letter-spacing:-.06em;text-transform:uppercase;
}
.hero h1 span{display:block;color:var(--lime)}
.hero-bottom{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);gap:48px;align-items:end;margin-top:36px}
.hero-lead{max-width:760px;margin:0;font-size:clamp(1.35rem,2.4vw,2.15rem);line-height:1.08;letter-spacing:-.035em;color:#fff}
.hero-note{justify-self:end;text-align:right;color:#eef2f7;font-size:.9rem}
.hero-badge{
  display:inline-block;margin-top:14px;padding:9px 13px;border:3px solid #090b0f;border-radius:999px;background:var(--yellow);color:#090b0f;
  font:800 .72rem/1 "Courier New",monospace;letter-spacing:.06em;box-shadow:7px 7px 0 var(--cyan);transform:rotate(-2deg)
}
.scroll-cue{display:flex;gap:12px;align-items:center;margin-top:30px;color:#edf1f7;font:700 .72rem/1 "Courier New",monospace;text-transform:uppercase;letter-spacing:.11em}
.scroll-cue::before{content:"";width:42px;height:2px;background:var(--pink)}

.hero-orbits{
  position:absolute;z-index:4;right:-9vw;top:8vh;width:min(60vw,850px);aspect-ratio:1;
  pointer-events:auto;
}
.hero-orbits::before{
  content:"";position:absolute;inset:-18px;border-radius:50%;
}
.orbit{
  position:absolute;border-radius:50%;animation-iteration-count:infinite;animation-timing-function:linear;
  animation-play-state:paused;will-change:transform;
}
.orbit.outer{inset:0;border:1px solid rgba(255,255,255,.19);animation-name:orbit-cw;animation-duration:14s}
.orbit.middle{inset:16%;border:1px solid rgba(242,162,240,.42);animation-name:orbit-ccw;animation-duration:11s}
.orbit.inner{inset:33%;border:1px solid rgba(124,255,22,.48);animation-name:orbit-cw;animation-duration:9s}
@keyframes orbit-cw{to{transform:rotate(360deg)}}
@keyframes orbit-ccw{to{transform:rotate(-360deg)}}
.always-orbit{
  position:absolute;inset:0;border-radius:50%;pointer-events:none;
  animation:orbit-cw 16s linear infinite;will-change:transform;
}
.always-dot{
  position:absolute;left:50%;top:-8px;width:15px;height:15px;border-radius:50%;
  background:var(--lime);color:var(--lime);box-shadow:0 0 18px currentColor;
}
body.initial-orbit .orbit.outer,
body.scrolling-orbits .orbit,
body.hover-orbits .orbit,
.hero-orbits:hover .orbit{animation-play-state:running}
body.hover-orbits .hero-orbits .ring-dot,
body.hover-orbits .hero-orbits .dot,
.hero-orbits:hover .dot{animation:dot-pop .7s ease-in-out infinite alternate}

body.initial-orbit .orbit.outer,
body.scrolling-orbits .orbit,
body.hover-orbits .orbit,
.hero-orbits:hover .orbit{animation-play-state:running}
body.hover-orbits .dot,
.hero-orbits:hover .dot{animation:dot-pop .7s ease-in-out infinite alternate}
@keyframes dot-pop{to{transform:scale(1.35);filter:brightness(1.2)}}
.dot{position:absolute;border-radius:50%;box-shadow:0 0 18px currentColor}
.outer .d1{width:15px;height:15px;background:var(--lime);color:var(--lime);left:50%;top:-8px}
.outer .d2{width:11px;height:11px;background:var(--pink);color:var(--pink);right:7%;top:27%}
.middle .d3{width:14px;height:14px;background:var(--cyan);color:var(--cyan);left:-7px;top:52%}
.middle .d4{width:10px;height:10px;background:var(--red);color:var(--red);right:15%;bottom:6%}
.inner .d5{width:13px;height:13px;background:var(--violet);color:var(--violet);left:10%;top:16%}
.inner .d6{width:10px;height:10px;background:var(--yellow);color:var(--yellow);left:50%;bottom:-5px}

.section{padding:clamp(78px,9vw,130px) 20px;position:relative}
.wrap{width:min(100%,var(--max));margin:auto}
.section-title{
  margin:0;font-family:"Arial Black","Trebuchet MS",sans-serif;font-size:clamp(2.8rem,7vw,7rem);line-height:.88;letter-spacing:-.06em
}
.section-dotset{position:absolute;right:28px;top:26px;width:13px;height:13px;border-radius:50%;background:var(--red);box-shadow:-24px 30px 0 var(--cyan),-48px -4px 0 var(--pink),20px 54px 0 var(--lime);opacity:.9}

.manifesto{background:var(--paper);color:#08090c;border-top:10px solid var(--pink)}
.manifesto .statement{max-width:1280px;margin:0;font-family:"Arial Black","Trebuchet MS",sans-serif;font-size:clamp(2.55rem,6.7vw,6.7rem);line-height:.95;letter-spacing:-.055em}
.manifesto .statement em{font-style:normal;color:#555149}
.manifesto .support{max-width:760px;margin:44px 0 0;padding-left:20px;border-left:8px solid var(--cyan);font-size:clamp(1.1rem,2vw,1.55rem);line-height:1.35;color:#25272c}

.origin{background:#090c11;border-top:10px solid var(--violet)}
.origin-head{display:grid;grid-template-columns:.72fr 1.28fr;gap:62px;align-items:end;margin-bottom:60px}
.origin-intro{max-width:760px;color:#e7ebf1;font-size:clamp(1.05rem,1.8vw,1.35rem)}
.frontpage-window{
  max-width:980px;margin:auto;background:#d8d8d8;color:#000;border:3px outset #eee;box-shadow:18px 18px 0 rgba(124,255,22,.13),-10px -10px 0 rgba(242,162,240,.09);
}
.frontpage-title{display:flex;justify-content:space-between;align-items:center;padding:6px 9px;background:#000080;color:#fff;font:700 .78rem Arial,sans-serif}
.win-buttons{display:flex;gap:4px}.win-buttons i{width:15px;height:15px;background:#d6d6d6;border:2px outset #eee}
.frontpage-body{padding:34px;background:#fff;min-height:330px}
.fp-generator{font:.75rem "Courier New",monospace;color:#454545}
.frontpage-body h3{margin:30px 0 22px;text-align:center;font:700 clamp(1.55rem,3vw,2.1rem) "Times New Roman",serif}
.old-buttons{display:grid;gap:9px;justify-content:center}
.old-buttons span{width:155px;padding:6px;text-align:center;background:#ddd;border:2px outset #eee;font:13px Arial,sans-serif}
.old-credit{text-align:center;margin-top:38px;color:#0000a8;font:12px Arial,sans-serif}
.source-proof{max-width:980px;margin:30px auto 0;padding:18px 20px;border:1px solid rgba(0,200,255,.45);border-left:8px solid var(--cyan);background:#0c1117;color:#dbe0e8;font:13px/1.65 "Courier New",monospace;overflow:auto}
.source-proof strong{color:var(--lime);font-weight:400}
.origin-close{max-width:980px;margin:30px auto 0;color:#edf2f8;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.45}
.origin-close strong{color:#fff}

.evolution{background:#11151c;border-top:10px solid var(--red)}
.timeline{margin-top:60px}
.timeline-row{display:grid;grid-template-columns:180px 1fr 1fr;gap:34px;padding:32px 0;border-top:1px solid rgba(255,255,255,.14)}
.timeline-row:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.timeline-year{font:900 clamp(2rem,4vw,3.6rem)/1 "Arial Black","Trebuchet MS",sans-serif;letter-spacing:-.05em}
.timeline-row:nth-child(1) .timeline-year{color:var(--pink)}
.timeline-row:nth-child(2) .timeline-year{color:var(--cyan)}
.timeline-row:nth-child(3) .timeline-year{color:var(--lime)}
.timeline-row:nth-child(4) .timeline-year{color:var(--violet)}
.timeline-row:nth-child(5) .timeline-year{color:var(--yellow)}
.timeline-title{font:900 clamp(1.4rem,2.8vw,2.4rem)/1 "Arial Black","Trebuchet MS",sans-serif;letter-spacing:-.04em}
.timeline-copy{color:#d9dee6;font-size:1.02rem}

.walnut{background:var(--lime);color:#090b0e;border-top:10px solid var(--cyan)}
.walnut-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.walnut h2{text-shadow:5px 5px 0 rgba(255,255,255,.44)}
.walnut-copy{font-size:clamp(1.15rem,2.1vw,1.75rem);line-height:1.25;max-width:680px}
.jackhammer-card{background:#eef2f7;border:4px solid #0a0b0d;border-radius:32px;overflow:hidden;box-shadow:16px 16px 0 rgba(8,10,13,.14)}
.jackhammer-card img{width:100%}
.jackhammer-caption{padding:12px 16px;text-align:center;background:var(--yellow);border-top:4px solid #0a0b0d;font:800 .72rem/1.2 "Courier New",monospace;text-transform:uppercase;letter-spacing:.1em}

.middle-way{background:#090c11;border-top:10px solid var(--pink)}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px}
.card{min-height:380px;padding:30px;border:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.card::before{content:"";position:absolute;left:0;top:0;width:100%;height:10px;background:var(--pink)}
.card:nth-child(2){background:var(--paper);color:#090b0e}.card:nth-child(2)::before{background:var(--red)}
.card:nth-child(3){background:#0d4565}.card:nth-child(3)::before{background:var(--cyan)}
.card-num{font:700 .72rem/1 "Courier New",monospace;text-transform:uppercase;letter-spacing:.1em;color:inherit;opacity:.85}
.card h3{margin:0;font:900 clamp(1.8rem,3.5vw,3.5rem)/.95 "Arial Black","Trebuchet MS",sans-serif;letter-spacing:-.05em}
.card p{margin:18px 0 0;line-height:1.45;color:#dfe4ec}
.card:nth-child(2) p{color:#25282d}

.plain{background:var(--paper);color:#08090c;border-top:10px solid var(--violet)}
.plain-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.plain-copy{font-size:clamp(1.45rem,2.8vw,2.55rem);line-height:1.16;letter-spacing:-.035em}
.plain-copy p{margin:0 0 34px}
.photo-line{display:flex;flex-wrap:wrap;gap:14px 16px;align-items:center}
.photo-word{display:inline-block;white-space:nowrap;padding:3px 10px;background:#080a0d;color:var(--lime);border:3px solid var(--pink);box-shadow:7px 7px 0 var(--cyan);transform:rotate(-6deg);animation:photo-wiggle 2.8s ease-in-out infinite}
@keyframes photo-wiggle{50%{transform:rotate(-4deg) translateY(-4px)}}
.confused{width:72px;animation:face-bob 2.8s ease-in-out infinite}
@keyframes face-bob{50%{transform:translateY(-5px) rotate(-2deg)}}

.compare{background:#090c11;border-top:10px solid var(--yellow)}
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:58px}
.compare-pane{min-height:480px;padding:30px;border:1px solid rgba(255,255,255,.16);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.compare-pane.then{background:#d8d8d8;color:#090b0e;border:4px ridge #eee;border-top:10px solid var(--pink)}
.compare-pane.now{background:var(--lime);color:#090b0e;border-top:10px solid var(--cyan)}
.compare-label{align-self:flex-start;padding:7px 9px;border-radius:999px;background:rgba(0,0,0,.08);font:700 .72rem/1 "Courier New",monospace;text-transform:uppercase;letter-spacing:.1em}
.mini-old{background:#fff;border:2px inset #aaa;padding:24px;margin:24px 0}
.mini-old h3{text-align:center;font:700 1.65rem "Times New Roman",serif}
.mini-buttons{display:grid;gap:7px;justify-content:center}.mini-buttons span{width:140px;background:#ddd;border:2px outset #eee;text-align:center;padding:5px;font:12px Arial,sans-serif}
.mini-credit{text-align:center;margin-top:24px;color:#0000a8;font:11px Arial,sans-serif}
.compare-now-type{display:flex;flex-direction:column;gap:.02em;margin:26px 0 20px;font:900 clamp(2.8rem,5.4vw,5.2rem)/.88 "Arial Black","Trebuchet MS",sans-serif;letter-spacing:-.055em}
.compare-now-type span{display:block}
.compare-copy{font-size:1.04rem;line-height:1.45}
.compare-pane.now .compare-copy{color:#11212b}

.services{background:#0b0f15;border-top:10px solid var(--red)}
.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:60px}
.service{min-height:300px;padding:34px;border:1px solid rgba(255,255,255,.15);position:relative;display:flex;flex-direction:column;justify-content:space-between;background:#151a23}
.service::before{content:"";position:absolute;top:0;left:0;width:100%;height:10px;background:var(--pink)}
.service:nth-child(2){background:#0e4565}.service:nth-child(2)::before{background:var(--cyan)}
.service:nth-child(3){grid-column:1/-1;background:#1a202b}.service:nth-child(3)::before{background:var(--lime)}
.service small{align-self:flex-start;padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.08);font:700 .72rem/1 "Courier New",monospace;text-transform:uppercase;letter-spacing:.1em}
.service h3{margin:0;font:900 clamp(1.8rem,3.5vw,3.4rem)/.95 "Arial Black","Trebuchet MS",sans-serif;letter-spacing:-.05em}
.service p{margin:16px 0 0;max-width:760px;color:#e1e6ed}

.standards{background:var(--cyan);color:#081018;border-top:10px solid var(--violet)}
.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:62px}
.score{padding-top:14px;border-top:4px solid #081018}
.score:nth-child(1){border-color:#b11170}.score:nth-child(2){border-color:#c52b21}.score:nth-child(3){border-color:#5e329d}
.score b{display:block;font:900 clamp(2.8rem,5.7vw,5rem)/1 "Arial Black","Trebuchet MS",sans-serif;letter-spacing:-.05em}
.score span{font:700 .7rem/1.35 "Courier New",monospace;text-transform:uppercase;letter-spacing:.08em}
.standard-copy{max-width:840px;margin:34px 0 0;color:#11212e;font-size:1rem}
.security-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px;padding:0;list-style:none}
.security-list li{padding:8px 10px;border:2px solid #081018;border-radius:999px;font:700 .72rem/1 "Courier New",monospace;text-transform:uppercase;letter-spacing:.06em;background:rgba(255,255,255,.24)}

.contact{background:#07090d;border-top:10px solid var(--lime);text-align:center}
.contact .wrap{max-width:1000px}
.contact p{max-width:720px;margin:28px auto;color:#dde3eb;font-size:clamp(1.1rem,2vw,1.4rem)}
.cta{
  display:inline-block;margin-top:8px;padding:16px 24px;border:2px solid #fff;border-radius:999px;text-decoration:none;
  font:800 .75rem/1 "Courier New",monospace;text-transform:uppercase;letter-spacing:.1em;transition:.18s ease;
}
.cta:hover,.cta:focus-visible{background:#fff;color:#000;transform:translateY(-2px)}
.contact-email{margin-top:18px;font:700 .85rem/1.4 "Courier New",monospace;color:var(--yellow)}

.site-footer{padding:28px 20px;border-top:1px solid rgba(255,255,255,.13);background:#06080b;color:#dfe4ec}
.footer-inner{width:min(100%,var(--max));margin:auto;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:.84rem}
.footer-links{display:flex;gap:18px}.footer-links a:hover{color:var(--lime)}

.custom-cursor{
  position:fixed;left:0;top:0;z-index:2147483646;width:42px;height:auto;pointer-events:none;opacity:0;
  transform:translate(-50%,-50%);transition:width .15s ease,opacity .15s ease;
  filter:drop-shadow(0 7px 9px rgba(0,0,0,.25))
}
.custom-cursor.visible{opacity:1}
.custom-cursor.heartbeat{animation:heart 1.15s ease-in-out infinite}
@keyframes heart{
  0%,100%{transform:translate(-50%,-50%) scale(1)}
  20%{transform:translate(-50%,-50%) scale(1.08)}
  38%{transform:translate(-50%,-50%) scale(1)}
  56%{transform:translate(-50%,-50%) scale(1.12)}
  74%{transform:translate(-50%,-50%) scale(1)}
}

.legal-main{background:var(--paper);color:#090b0e;min-height:70svh;padding:90px 20px}
.legal-wrap{width:min(100%,900px);margin:auto}
.legal-wrap h1{font:900 clamp(2.7rem,7vw,5.5rem)/.9 "Arial Black","Trebuchet MS",sans-serif;letter-spacing:-.05em}
.legal-wrap h2{margin-top:2.2rem;font:900 1.4rem/1.1 "Arial Black","Trebuchet MS",sans-serif}
.legal-wrap p,.legal-wrap li{font-size:1rem;line-height:1.65;color:#25282d}
.back-link{display:inline-block;margin-bottom:28px;font-weight:800}

@media (hover:hover) and (pointer:fine){
  html.custom-cursor-on,html.custom-cursor-on *{cursor:none!important}
}
@media(max-width:1100px){
  .hero-bottom{grid-template-columns:1fr;gap:26px}
  .hero-note{justify-self:start;text-align:left}
  .hero-orbits{right:-18vw;width:min(74vw,730px)}
}
@media(max-width:900px){
  .desktop-nav{display:none}.mobile-menu{display:block}
  .origin-head,.walnut-grid,.plain-grid{grid-template-columns:1fr;gap:36px}
  .timeline-row{grid-template-columns:1fr;gap:10px}
  .cards3{grid-template-columns:1fr}.card{min-height:300px}
  .compare-grid,.service-grid{grid-template-columns:1fr}
  .service:nth-child(3){grid-column:auto}
  .score-grid{grid-template-columns:1fr 1fr;gap:28px 14px}
}
@media(max-width:700px){
  .header-inner{width:min(calc(100% - 28px),var(--max));min-height:64px}
  .hero{padding:72px 14px 52px;min-height:auto}
  .hero-mark{width:90px}
  .hero h1{font-size:clamp(3rem,14vw,5.3rem);line-height:.89}
  .hero-lead{font-size:clamp(1.2rem,6vw,1.7rem)}
  .hero-orbits{width:92vw;right:-38vw;top:20vh;opacity:.7}
  .section{padding:78px 14px}
  .section-dotset{right:18px;top:20px;transform:scale(.8)}
  .frontpage-body{padding:22px}
  .compare-pane{min-height:390px;padding:24px}
  .compare-now-type{font-size:clamp(2.6rem,13vw,4.3rem)}
  .photo-line{align-items:center}
  .photo-word{white-space:normal}
  .confused{width:56px}
  .footer-inner{display:block}.footer-links{margin-top:12px;flex-wrap:wrap}
}
@media(max-width:480px){
  .brand{font-size:.98rem}
  .hero h1{font-size:clamp(2.75rem,13.2vw,4.25rem)}
  .manifesto .statement{font-size:clamp(2.25rem,12.5vw,3.6rem)}
  .section-title{font-size:clamp(2.45rem,12vw,3.7rem)}
  .score-grid{grid-template-columns:1fr 1fr}
  .frontpage-window{box-shadow:10px 10px 0 rgba(124,255,22,.13)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .custom-cursor{display:none!important}
}

@media(max-width:1100px){
  .hero-orbits{z-index:4}
}


/* final principles */
.principles{background:#f2eee3;color:#08090c;border-top:10px solid var(--cyan)}
.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px}
.principle{min-height:330px;padding:30px;border:3px solid #08090c;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.principle::after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-48px;bottom:-48px;opacity:.22}
.principle.easy{background:linear-gradient(145deg,#f7f3e8,#e9f9ff)}
.principle.easy::after{background:var(--cyan)}
.principle.appealing{background:linear-gradient(145deg,#fff0fb,#f4e8ff)}
.principle.appealing::after{background:var(--pink)}
.principle.fast{background:linear-gradient(145deg,#edffd9,#fff6bd)}
.principle.fast::after{background:var(--lime)}
.principle-number{font:800 .72rem/1 "Courier New",monospace;letter-spacing:.1em;text-transform:uppercase}
.principle h3{margin:0;font:900 clamp(1.75rem,3vw,3rem)/.95 "Arial Black","Trebuchet MS",sans-serif;letter-spacing:-.045em}
.principle p{margin:18px 0 0;max-width:520px;color:#23272c;font-size:1.02rem;line-height:1.48}
@media(max-width:900px){.principles-grid{grid-template-columns:1fr}.principle{min-height:250px}}


/* analytics consent */
.analytics-consent{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(3,5,8,.74);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease,visibility .24s ease;
}
.analytics-consent.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.analytics-card{
  position:relative;
  width:min(590px,100%);
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 86% 16%,rgba(124,255,22,.20),transparent 22%),
    radial-gradient(circle at 82% 82%,rgba(0,200,255,.14),transparent 28%),
    linear-gradient(145deg,#090c11,#111722);
  color:#fff;
  border:3px solid #fff;
  border-radius:28px;
  padding:24px;
  box-shadow:
    8px 8px 0 var(--cyan),
    15px 15px 0 rgba(242,162,240,.62);
  transform:translateY(18px) scale(.98) rotate(-.35deg);
  transition:transform .30s cubic-bezier(.2,.8,.2,1);
}
.analytics-consent.is-open .analytics-card{
  transform:translateY(0) scale(1) rotate(-.35deg);
}
.analytics-card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:9px;
  background:linear-gradient(90deg,var(--pink) 0 20%,var(--violet) 20% 40%,var(--red) 40% 60%,var(--cyan) 60% 80%,var(--lime) 80%);
}
.analytics-card::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:158px;height:158px;
  right:-72px;top:-72px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  box-shadow:
    0 0 0 27px rgba(242,162,240,.08),
    0 0 0 56px rgba(0,200,255,.05);
  animation:consent-orbit 7s linear infinite;
}
@keyframes consent-orbit{to{transform:rotate(360deg)}}
.analytics-head{
  display:flex;
  align-items:center;
  gap:14px;
  margin:4px 0 9px;
}
.analytics-logo{
  width:62px;
  height:auto;
  flex:0 0 62px;
  transform:rotate(-6deg);
  filter:drop-shadow(0 7px 9px rgba(0,0,0,.38));
}
.analytics-dots{
  display:flex;
  gap:7px;
  margin:0 0 8px;
}
.analytics-dots i{
  display:block;
  width:10px;height:10px;border-radius:50%;
}
.analytics-dots i:nth-child(1){background:var(--pink);animation:consent-dot 1.2s ease-in-out infinite}
.analytics-dots i:nth-child(2){background:var(--cyan);animation:consent-dot 1.2s .14s ease-in-out infinite}
.analytics-dots i:nth-child(3){background:var(--lime);animation:consent-dot 1.2s .28s ease-in-out infinite}
@keyframes consent-dot{50%{transform:translateY(-5px) scale(1.15)}}
.analytics-card h2{
  margin:0;
  font:900 clamp(1.7rem,4.5vw,2.35rem)/.96 "Arial Black","Trebuchet MS",sans-serif;
  letter-spacing:-.045em;
}
.analytics-card p{
  margin:11px 0 18px;
  max-width:515px;
  color:#eef2f7;
  line-height:1.45;
  font-size:.98rem;
}
.analytics-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.analytics-btn{
  appearance:none;
  width:100%;
  min-height:48px;
  border:2px solid #fff;
  border-radius:999px;
  padding:12px 14px;
  cursor:pointer;
  font:800 .72rem/1.15 "Courier New",monospace;
  text-transform:uppercase;
  letter-spacing:.065em;
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.analytics-btn.yes{
  background:var(--lime);
  color:#071015;
  border-color:var(--lime);
  box-shadow:4px 4px 0 var(--cyan);
}
.analytics-btn.no{
  background:var(--pink);
  color:#071015;
  border-color:var(--pink);
  box-shadow:4px 4px 0 var(--violet);
}
.analytics-btn:hover,.analytics-btn:focus-visible{
  transform:translateY(-3px);
  filter:brightness(1.05);
  outline:3px solid #fff;
  outline-offset:3px;
}
.analytics-mini{
  display:inline-block;
  margin-top:14px;
  color:#dfe5ed;
  font-size:.78rem;
}
.analytics-mini:hover,.analytics-mini:focus-visible{color:var(--lime)}
.analytics-settings{
  appearance:none;
  border:0;
  background:none;
  padding:0;
  color:inherit;
  text-decoration:underline;
  cursor:pointer;
  font:inherit;
}
.analytics-settings:hover,.analytics-settings:focus-visible{color:var(--lime)}
body.analytics-dialog-open{overflow:hidden}
@media(max-width:520px){
  .analytics-consent{padding:12px}
  .analytics-card{
    border-radius:21px;
    padding:19px 16px 17px;
    box-shadow:6px 6px 0 var(--cyan),10px 10px 0 rgba(242,162,240,.55);
  }
  .analytics-head{gap:10px}
  .analytics-logo{width:48px;flex-basis:48px}
  .analytics-actions{grid-template-columns:1fr}
  .analytics-btn{min-height:46px}
}
@media(prefers-reduced-motion:reduce){
  .analytics-consent,.analytics-card{transition:none}
  .analytics-card::after,.analytics-dots i{animation:none!important}
}

.cta-dark{background:#07090d;color:#fff}

.analytics-consent .analytics-mini,
.analytics-consent .analytics-btn{
  position:relative;
  z-index:2;
  pointer-events:auto;
}


/* real then/now photo story */
.photo-story{
  position:relative;
  overflow:hidden;
  background:#090c11;
  border-top:10px solid var(--cyan);
}
.photo-story-row{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);
  gap:clamp(38px,6vw,76px);
  align-items:center;
}
.photo-story-row + .photo-story-row{margin-top:72px}
.story-photo-wrap{position:relative;min-width:0}
.story-photo-frame{
  position:relative;
  overflow:hidden;
  border:3px solid #fff;
  border-radius:28px;
  background:#0d1218;
  isolation:isolate;
}
.story-photo-frame::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);
}
.then-frame{
  box-shadow:7px 7px 0 var(--cyan),13px 13px 0 var(--pink),19px 19px 0 var(--lime);
}
.now-frame{
  box-shadow:7px 7px 0 var(--cyan),13px 13px 0 var(--violet),19px 19px 0 var(--pink);
}
.story-photo-frame img{
  display:block;
  width:100%;
  height:auto;
}
.story-tag{
  position:absolute;
  z-index:4;
  top:-17px;
  left:-16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:112px;
  min-height:50px;
  padding:10px 18px;
  border:2px solid currentColor;
  border-radius:999px;
  background:#090c11;
  font:900 .92rem/1 "Courier New",monospace;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.then-tag{color:var(--lime)}
.now-tag{
  position:static;
  width:max-content;
  min-width:98px;
  color:var(--pink);
  margin-bottom:18px;
}
.story-copy{position:relative;z-index:2}
.story-kicker{
  display:block;
  margin-bottom:17px;
  color:var(--lime);
  font:800 .78rem/1 "Courier New",monospace;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.story-big{
  margin:0;
  max-width:760px;
  color:#fff;
  font:900 clamp(2.65rem,5.5vw,5.6rem)/.91 "Arial Black","Trebuchet MS",sans-serif;
  letter-spacing:-.055em;
}
.story-lede{
  max-width:640px;
  margin:24px 0 0;
  color:#e7ebf1;
  font-size:clamp(1.06rem,1.65vw,1.32rem);
  line-height:1.5;
}
.story-date{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:25px 0 0;
  padding:11px 17px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:999px;
  color:#fff;
  font:700 .83rem/1 "Courier New",monospace;
  letter-spacing:.05em;
}
.story-date span{color:var(--lime)}
.story-bridge{
  max-width:1120px;
  margin:70px auto;
  padding:0 4px;
  color:#edf1f6;
  font-size:clamp(1.05rem,1.8vw,1.38rem);
  line-height:1.55;
}
.story-bridge strong{color:var(--lime)}
.now-row{
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
}
.now-copy{padding-left:4px}
.story-cta{
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin-top:27px;
  padding:14px 21px;
  border:2px solid var(--lime);
  border-radius:999px;
  color:var(--lime);
  text-decoration:none;
  font:800 .8rem/1 "Courier New",monospace;
  text-transform:uppercase;
  letter-spacing:.08em;
  transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.story-cta:hover,.story-cta:focus-visible{
  transform:translateY(-3px);
  background:var(--lime);
  color:#071015;
  box-shadow:5px 5px 0 var(--cyan);
}
.story-orbit{
  position:absolute;
  z-index:1;
  width:230px;
  height:150px;
  border:1px dashed rgba(255,255,255,.27);
  border-left-color:transparent;
  border-bottom-color:transparent;
  border-radius:50%;
  pointer-events:none;
  transform:rotate(18deg);
}
.story-orbit i{
  position:absolute;
  width:15px;
  height:15px;
  border-radius:50%;
}
.story-orbit i:nth-child(1){background:var(--red);right:12px;top:12px}
.story-orbit i:nth-child(2){background:var(--cyan);right:-3px;top:72px}
.story-orbit i:nth-child(3){background:var(--lime);right:40px;bottom:5px}
.story-orbit-a{right:-94px;bottom:-40px}
.story-orbit-b{right:-92px;bottom:10px}
.story-orbit-b i:nth-child(1){background:var(--pink)}
.story-orbit-b i:nth-child(2){background:var(--cyan)}
.story-orbit-b i:nth-child(3){background:var(--lime)}
@media(max-width:900px){
  .photo-story-row,.now-row{grid-template-columns:1fr}
  .story-copy{max-width:760px}
  .then-copy{padding-top:10px}
  .now-photo-wrap{margin-top:8px}
  .story-bridge{margin:58px 0}
  .story-orbit-a{right:-72px;bottom:-24px}
  .story-orbit-b{right:-72px;bottom:-20px}
}
@media(max-width:620px){
  .photo-story{overflow:hidden}
  .photo-story-row{gap:34px}
  .story-photo-frame{border-radius:20px}
  .then-frame{box-shadow:5px 5px 0 var(--cyan),9px 9px 0 var(--pink),13px 13px 0 var(--lime)}
  .now-frame{box-shadow:5px 5px 0 var(--cyan),9px 9px 0 var(--violet),13px 13px 0 var(--pink)}
  .story-tag{left:-7px;top:-14px;min-width:92px;min-height:43px;padding:9px 14px;font-size:.76rem}
  .now-tag{position:static}
  .story-big{font-size:clamp(2.45rem,13vw,4.1rem)}
  .story-lede{margin-top:18px}
  .story-bridge{margin:50px 0;font-size:1.06rem}
  .story-orbit{opacity:.62;transform:scale(.78) rotate(18deg)}
}
@media(prefers-reduced-motion:reduce){
  .story-cta{transition:none}
}
