:root{
  --black:#000;
  --white:#f2f2ef;
  --muted:rgba(255,255,255,.58);
  --line:rgba(255,255,255,.16);
  --ease:cubic-bezier(.22,1,.36,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#000}
body{margin:0;background:#000;color:var(--white);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}
a{color:inherit}
button,a{-webkit-tap-highlight-color:transparent}

.hero{position:relative;min-height:100svh;overflow:hidden;isolation:isolate;background:#000}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 73% 48%,rgba(255,255,255,.075),transparent 23%),linear-gradient(90deg,#000 0%,#020202 48%,#000 100%);z-index:-3}
.hero__grain{position:absolute;inset:-60%;z-index:-1;opacity:.038;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");animation:grain .28s steps(2) infinite}
.hero__glow{position:absolute;right:4vw;top:20%;width:38vw;height:58vh;background:radial-gradient(ellipse at center,rgba(255,255,255,.08),transparent 68%);filter:blur(60px);z-index:-2;opacity:.8}

.site-header{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:max(28px,env(safe-area-inset-top)) clamp(24px,4vw,70px) 0}
.brand{text-decoration:none;text-transform:uppercase;display:flex;align-items:baseline;gap:15px}
.brand__word{font-family:Georgia,'Times New Roman',serif;font-size:18px;letter-spacing:.45em;margin-right:-.45em}
.brand__tag{font-size:8px;letter-spacing:.3em;color:rgba(255,255,255,.5)}
.menu-button{width:42px;height:42px;border:0;background:none;padding:11px 4px;display:grid;align-content:center;gap:7px;cursor:pointer}
.menu-button span{display:block;height:1px;background:rgba(255,255,255,.76);transition:transform .4s var(--ease);transform-origin:right}
.menu-button span:first-child{width:30px}.menu-button span:last-child{width:20px;justify-self:end}
.menu-button:hover span:last-child{transform:scaleX(1.5)}

.hero__layout{min-height:100svh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);align-items:center;gap:2vw;padding:130px clamp(24px,7vw,128px) 100px}
.hero__copy{position:relative;z-index:3;max-width:820px}
.eyebrow{margin:0 0 26px;font-size:10px;letter-spacing:.36em;text-transform:uppercase;color:rgba(255,255,255,.46);opacity:0;animation:fadeUp .9s .2s var(--ease) forwards}
h1{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(53px,6.6vw,112px);line-height:.92;letter-spacing:-.045em}
.reveal-line{display:block;opacity:0;transform:translateY(42px);filter:blur(8px);animation:lineIn 1.15s .3s var(--ease) forwards}
.reveal-line--accent{font-style:italic;color:rgba(255,255,255,.82);animation-delay:.53s}
.hero__statement{max-width:610px;margin:36px 0 0;font-size:clamp(15px,1.25vw,19px);line-height:1.7;color:var(--muted);opacity:0;transform:translateY(18px);animation:fadeUp .9s .85s var(--ease) forwards}
.hero__actions{display:flex;align-items:center;gap:30px;margin-top:38px;opacity:0;transform:translateY(16px);animation:fadeUp .9s 1.05s var(--ease) forwards}
.button{display:inline-flex;align-items:center;gap:16px;text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:.26em;white-space:nowrap}
.button--primary{padding:15px 18px 15px 20px;border:1px solid rgba(255,255,255,.32);transition:background .4s,color .4s,border-color .4s}
.button--primary svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.25;transition:transform .4s var(--ease)}
.button--primary:hover{background:#fff;color:#000;border-color:#fff}.button--primary:hover svg{transform:translateX(4px)}
.button--ghost{position:relative;padding:15px 0;color:rgba(255,255,255,.68)}
.button--ghost::after{content:"";position:absolute;left:0;right:0;bottom:9px;height:1px;background:rgba(255,255,255,.3);transform-origin:left;transition:transform .4s var(--ease)}
.button--ghost:hover::after{transform:scaleX(.5)}
.disciplines{margin:44px 0 0;display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:8px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.34);opacity:0;animation:fadeUp .9s 1.22s var(--ease) forwards}
.disciplines i{width:18px;height:1px;background:rgba(255,255,255,.18)}

.hero__visual{position:relative;height:min(72vh,720px);min-height:520px;display:grid;place-items:center;perspective:1200px;opacity:0;animation:visualIn 1.4s .45s var(--ease) forwards}
.symbol-stage{position:relative;width:min(32vw,430px);aspect-ratio:.62;display:grid;place-items:center;transform-style:preserve-3d;will-change:transform;transition:transform .22s ease-out}
.symbol{position:absolute;width:69%;height:auto;object-fit:contain;user-select:none;pointer-events:none;filter:drop-shadow(0 28px 50px rgba(0,0,0,.85))}
.symbol--back{opacity:.12;transform:translate3d(-22px,15px,-70px) scale(1.06);filter:blur(1px)}
.symbol--mid{opacity:.22;transform:translate3d(17px,-8px,-35px) scale(1.025)}
.symbol--front{opacity:.95;transform:translateZ(20px);filter:contrast(1.08) drop-shadow(0 35px 60px rgba(0,0,0,.9))}
.symbol-aura{position:absolute;width:74%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12),rgba(255,255,255,.025) 37%,transparent 70%);filter:blur(18px);transform:translateY(-3%) translateZ(-80px);animation:breathe 4s ease-in-out infinite}
.symbol-reflection{position:absolute;width:46%;height:78%;top:10%;left:18%;background:linear-gradient(105deg,transparent 18%,rgba(255,255,255,.15) 44%,transparent 57%);filter:blur(8px);transform:translateX(-120%) skewX(-12deg) translateZ(50px);mix-blend-mode:screen;animation:sweep 5.5s 1.5s ease-in-out infinite}
.orbital{position:absolute;border:1px solid rgba(255,255,255,.09);border-radius:50%;pointer-events:none}
.orbital--one{width:74%;aspect-ratio:1;transform:rotateX(72deg) rotateZ(-8deg);animation:orbit 13s linear infinite}
.orbital--two{width:55%;aspect-ratio:1;border-style:dashed;opacity:.45;transform:rotateX(66deg) rotateZ(22deg);animation:orbitReverse 17s linear infinite}
.concept{position:absolute;font-size:8px;letter-spacing:.34em;color:rgba(255,255,255,.22);opacity:0;transition:opacity .5s ease,transform .6s var(--ease)}
.hero__visual.is-active .concept{opacity:1}
.concept--attention{left:8%;top:20%;transform:translateX(12px)}.hero__visual.is-active .concept--attention{transform:none}
.concept--memory{right:5%;top:31%;transform:translateX(-12px)}.hero__visual.is-active .concept--memory{transform:none}
.concept--trust{left:5%;bottom:27%;transform:translateX(12px)}.hero__visual.is-active .concept--trust{transform:none}
.concept--decision{right:9%;bottom:16%;transform:translateX(-12px)}.hero__visual.is-active .concept--decision{transform:none}

.scroll-cue{position:absolute;left:clamp(24px,7vw,128px);bottom:max(25px,env(safe-area-inset-bottom));z-index:4;display:flex;align-items:center;gap:18px;text-decoration:none;text-transform:uppercase;font-size:8px;letter-spacing:.28em;color:rgba(255,255,255,.38);opacity:0;animation:fadeUp .9s 1.35s var(--ease) forwards}
.scroll-cue i{position:relative;width:48px;height:1px;background:rgba(255,255,255,.16);overflow:hidden}
.scroll-cue i::after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.7);transform:translateX(-100%);animation:scan 2.2s 1.7s ease-in-out infinite}

.next-module{min-height:70vh;padding:130px clamp(24px,7vw,128px);background:#050505;border-top:1px solid rgba(255,255,255,.09)}
.next-module p{font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.38)}
.next-module h2{max-width:900px;margin:30px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(50px,8vw,125px);line-height:.95;font-weight:400}

@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(2%,-1%)}50%{transform:translate(-1%,2%)}75%{transform:translate(1%,1%)}100%{transform:translate(-2%,-1%)}}
@keyframes lineIn{to{opacity:1;transform:none;filter:blur(0)}}
@keyframes fadeUp{to{opacity:1;transform:none}}
@keyframes visualIn{from{opacity:0;transform:scale(.93);filter:blur(12px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes breathe{0%,100%{opacity:.55;transform:translateY(-3%) translateZ(-80px) scale(.94)}50%{opacity:1;transform:translateY(-3%) translateZ(-80px) scale(1.06)}}
@keyframes sweep{0%,15%{transform:translateX(-170%) skewX(-12deg) translateZ(50px);opacity:0}28%{opacity:.9}52%{transform:translateX(220%) skewX(-12deg) translateZ(50px);opacity:0}100%{transform:translateX(220%) skewX(-12deg) translateZ(50px);opacity:0}}
@keyframes orbit{to{transform:rotateX(72deg) rotateZ(352deg)}}
@keyframes orbitReverse{to{transform:rotateX(66deg) rotateZ(-338deg)}}
@keyframes scan{0%{transform:translateX(-100%)}60%,100%{transform:translateX(100%)}}

@media (max-width:980px){
  .hero__layout{grid-template-columns:1fr;align-content:center;padding-top:120px;padding-bottom:120px}
  .hero__copy{max-width:760px}
  .hero__visual{position:absolute;right:-10vw;bottom:-8vh;width:54vw;height:62vh;min-height:0;opacity:.42!important;z-index:0}
  .symbol-stage{width:min(48vw,410px)}
  .hero__copy{z-index:2}
  .concept,.orbital{display:none}
}

@media (max-width:650px){
  .site-header{padding-left:20px;padding-right:20px}
  .brand__tag{display:none}
  .hero__layout{padding:120px 20px 105px;align-items:center}
  h1{font-size:clamp(49px,15vw,78px);line-height:.93}
  .hero__statement{max-width:92%;font-size:15px;line-height:1.65;margin-top:28px}
  .hero__actions{gap:20px;flex-wrap:wrap;margin-top:30px}
  .disciplines{display:none}
  .hero__visual{right:-28vw;bottom:-2vh;width:82vw;height:54vh;opacity:.28!important}
  .symbol-stage{width:76vw}
  .scroll-cue{left:20px;bottom:20px}
  .scroll-cue span{display:none}
  .scroll-cue i{width:64px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .hero__grain{display:none}
}

/* ——— 01 · Economía de la atención ——— */
.section-shell{width:min(100%,1540px);margin-inline:auto;padding-inline:clamp(24px,6.5vw,110px)}
.attention{position:relative;overflow:hidden;background:#030303;isolation:isolate;border-top:1px solid rgba(255,255,255,.09)}
.attention::before{content:"";position:absolute;inset:0;z-index:-4;background:radial-gradient(circle at 72% 27%,rgba(255,255,255,.055),transparent 24%),linear-gradient(180deg,#030303 0%,#050505 48%,#000 100%)}
.attention__canvas{position:fixed;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;opacity:0;transition:opacity .8s ease}
.attention.is-inview .attention__canvas{opacity:.62}
.attention__grid{position:absolute;inset:0;z-index:-3;opacity:.19;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:76px 76px;mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 92%,transparent)}
.attention__watermark{position:absolute;right:-8vw;top:9vh;z-index:-1;opacity:.035;pointer-events:none}
.attention__watermark img{width:min(48vw,680px);filter:grayscale(1) contrast(1.2)}
.attention__frame{display:grid;grid-template-columns:150px minmax(0,1fr);gap:clamp(32px,5vw,90px);padding-top:clamp(120px,15vh,190px);padding-bottom:clamp(100px,12vh,160px)}
.attention__rail{position:sticky;top:110px;align-self:start;height:max-content;border-top:1px solid rgba(255,255,255,.25);padding-top:18px}
.attention__rail span{display:block;font-family:Georgia,'Times New Roman',serif;font-size:42px;line-height:1;color:rgba(255,255,255,.82)}
.attention__rail p{margin:18px 0 0;font-size:8px;line-height:1.7;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.34)}
.attention__content{min-width:0}
.attention__intro{padding-bottom:clamp(110px,15vh,190px)}
.section-kicker{margin:0 0 30px;font-size:9px;letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.42)}
.attention h2{max-width:1120px;margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(58px,7.8vw,126px);line-height:.92;letter-spacing:-.05em}
.attention__lead{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,6vw,100px);max-width:900px;margin:clamp(55px,7vw,95px) 0 0 auto}
.attention__lead p{margin:0;font-size:clamp(16px,1.25vw,20px);line-height:1.75;color:rgba(255,255,255,.56)}
.attention__statement{display:grid;grid-template-columns:150px 1fr;gap:40px;align-items:start;padding:55px 0 70px;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.attention__statement>span{font-size:8px;letter-spacing:.3em;color:rgba(255,255,255,.32)}
.attention__statement p{max-width:900px;margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,4vw,64px);line-height:1.05;letter-spacing:-.035em}
.attention__statement em{font-weight:400;color:rgba(255,255,255,.53)}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:150px 0 180px}
.stat{position:relative;min-height:410px;padding:0 clamp(26px,3.5vw,54px) 0;border-right:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column}
.stat:first-child{padding-left:0}.stat:last-child{border-right:0;padding-right:0}
.stat__top{display:flex;align-items:center;gap:14px}
.stat__index{font-size:8px;letter-spacing:.26em;color:rgba(255,255,255,.36)}
.stat__line{height:1px;flex:1;background:rgba(255,255,255,.15)}
.stat__value{display:block;margin:auto 0 50px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(72px,6.5vw,108px);font-weight:400;line-height:.8;letter-spacing:-.065em;color:#f1f1ee;white-space:nowrap}
.stat p{max-width:285px;margin:0;font-size:12px;line-height:1.72;color:rgba(255,255,255,.43)}
.attention__focus{min-height:90vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.75fr);gap:70px;align-items:center;padding:120px 0;border-top:1px solid rgba(255,255,255,.12)}
.focus-copy h3{max-width:760px;margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,6vw,92px);font-weight:400;line-height:.96;letter-spacing:-.045em}
.focus-copy h3 em{font-weight:400;color:rgba(255,255,255,.52)}
.focus-visual{position:relative;width:min(36vw,470px);aspect-ratio:1;display:grid;place-items:center;margin-left:auto}
.focus-ring,.focus-core{position:absolute;border-radius:50%}
.focus-ring{border:1px solid rgba(255,255,255,.16);animation:focusPulse 4.3s ease-in-out infinite}
.focus-ring--outer{inset:0}.focus-ring--middle{inset:19%;animation-delay:-1.1s}.focus-ring--inner{inset:38%;animation-delay:-2.1s}
.focus-core{width:12px;height:12px;background:#fff;box-shadow:0 0 35px rgba(255,255,255,.85),0 0 110px rgba(255,255,255,.3)}
.attention__closing{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:150px 0 80px;border-top:1px solid rgba(255,255,255,.12)}
.closing-label{margin:0 0 34px;font-size:9px;letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.38)}
.attention__closing h3{max-width:1180px;margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(54px,7vw,112px);font-weight:400;line-height:.94;letter-spacing:-.05em}
.attention__closing h3 em{font-weight:400;color:rgba(255,255,255,.52)}
.next-cue{align-self:flex-end;display:flex;align-items:center;gap:18px;margin-top:90px;text-decoration:none;text-transform:uppercase;font-size:8px;letter-spacing:.3em;color:rgba(255,255,255,.44)}
.next-cue i{position:relative;width:78px;height:1px;background:rgba(255,255,255,.16);overflow:hidden}.next-cue i::after{content:"";position:absolute;inset:0;background:#fff;transform:translateX(-100%);animation:scan 2.3s ease-in-out infinite}
.module-placeholder{min-height:45vh;display:flex;align-items:flex-end;padding:70px clamp(24px,7vw,128px);background:#020202;border-top:1px solid rgba(255,255,255,.08)}
.module-placeholder p{margin:0;font-size:9px;letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.34)}
.reveal-on-scroll{opacity:0;transform:translateY(48px);filter:blur(7px);transition:opacity 1.05s var(--ease),transform 1.05s var(--ease),filter 1.05s var(--ease)}
.reveal-on-scroll.is-visible{opacity:1;transform:none;filter:blur(0)}
@keyframes focusPulse{0%,100%{transform:scale(.95);opacity:.32}50%{transform:scale(1.035);opacity:.85}}

@media (max-width:980px){
  .attention__frame{grid-template-columns:95px 1fr;gap:35px}
  .attention__lead{grid-template-columns:1fr;max-width:650px;margin-left:0}
  .attention__statement{grid-template-columns:1fr;gap:24px}
  .stats{grid-template-columns:1fr;padding:110px 0}
  .stat{min-height:285px;border-right:0;border-top:1px solid rgba(255,255,255,.13);padding:28px 0 42px}
  .stat__value{margin:55px 0 42px}
  .attention__focus{grid-template-columns:1fr;gap:70px}
  .focus-visual{width:min(70vw,460px);margin:0 auto}
}
@media (max-width:700px){
  .section-shell{padding-inline:20px}
  .attention__frame{display:block;padding-top:105px}
  .attention__rail{position:relative;top:auto;display:flex;gap:18px;align-items:baseline;margin-bottom:65px;border-top:0;padding-top:0}
  .attention__rail span{font-size:30px}.attention__rail p{margin:0}
  .attention h2{font-size:clamp(49px,14vw,76px)}
  .attention__intro{padding-bottom:95px}
  .attention__lead{margin-top:48px;gap:22px}.attention__lead p{font-size:15px}
  .attention__statement{padding:38px 0 50px}.attention__statement p{font-size:clamp(30px,9vw,46px)}
  .stats{padding:90px 0}.stat__value{font-size:68px}
  .attention__focus{min-height:auto;padding:100px 0}.focus-copy h3{font-size:clamp(44px,12vw,67px)}
  .attention__closing{min-height:90vh;padding-top:110px}.attention__closing h3{font-size:clamp(46px,12.5vw,70px)}
  .next-cue{align-self:flex-start;margin-top:65px}
  .attention__watermark{right:-40vw;top:12vh}.attention__watermark img{width:110vw}
}

/* =========================================================
   SECCIÓN 01 — LA BATALLA POR PERMANECER
   ========================================================= */
.memory{position:relative;isolation:isolate;overflow:hidden;background:#030303;color:var(--white)}
.memory::before{content:"";position:absolute;inset:0;z-index:-4;background:radial-gradient(circle at 72% 18%,rgba(255,255,255,.055),transparent 27%),linear-gradient(180deg,#000 0%,#050505 42%,#010101 100%)}
.memory__canvas{position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.55}
.memory__noise{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.memory__mark{position:absolute;right:-22vw;top:13vh;z-index:-3;opacity:.025;transform:rotate(-7deg);pointer-events:none}
.memory__mark img{width:min(78vw,1050px);filter:grayscale(1)}
.memory__shell{width:min(1440px,100%);margin:auto;padding:150px clamp(24px,7vw,110px) 80px;display:grid;grid-template-columns:145px minmax(0,1fr);gap:clamp(36px,6vw,100px)}
.memory__index{position:sticky;top:110px;align-self:start;padding-top:18px;border-top:1px solid rgba(255,255,255,.2)}
.memory__index span{display:block;font-family:Georgia,'Times New Roman',serif;font-size:44px;line-height:1;color:rgba(255,255,255,.82)}
.memory__index p{margin:16px 0 0;font-size:8px;line-height:1.65;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.34)}
.memory__story{min-width:0}
.memory__kicker{margin:0 0 28px;font-size:9px;letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.4)}
.memory__opening{min-height:86vh;display:flex;flex-direction:column;justify-content:center;padding:5vh 0 13vh}
.memory__opening h2{margin:0;max-width:1100px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(64px,8.5vw,136px);font-weight:400;line-height:.84;letter-spacing:-.055em}
.memory__opening h2 em{font-weight:400;color:rgba(255,255,255,.33)}
.memory__subhead{margin:45px 0 0;max-width:690px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(27px,3vw,45px);line-height:1.16;color:rgba(255,255,255,.75)}
.memory__chapter{position:relative;border-top:1px solid rgba(255,255,255,.13);padding:115px 0 145px}
.memory__chapter-number{position:absolute;top:24px;right:0;font-size:8px;letter-spacing:.28em;color:rgba(255,255,255,.28)}
.memory__chapter-copy{max-width:760px}
.memory__chapter-copy p{margin:0 0 27px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,3.1vw,47px);line-height:1.18;letter-spacing:-.025em;color:rgba(255,255,255,.8)}
.memory__chapter-copy .memory__muted{color:rgba(255,255,255,.38)}
.memory__field{position:absolute;right:3%;top:50%;width:min(30vw,430px);aspect-ratio:1;transform:translateY(-50%);display:grid;place-items:center}
.memory__field::before{content:"";position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.06),transparent 62%);filter:blur(25px)}
.memory__dot--hero{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 32px rgba(255,255,255,.95),0 0 100px rgba(255,255,255,.3)}
.memory__orbit{position:absolute;border:1px solid rgba(255,255,255,.11);border-radius:50%;animation:memoryOrbit 12s linear infinite}
.memory__orbit::after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;top:10%;left:18%;background:rgba(255,255,255,.48)}
.memory__orbit--a{inset:18%;transform:rotate(16deg)}
.memory__orbit--b{inset:1%;animation-duration:19s;animation-direction:reverse;transform:rotate(-23deg)}
.memory__declaration{min-height:95vh;display:flex;flex-direction:column;justify-content:center;border-top:1px solid rgba(255,255,255,.13)}
.memory__declaration>p{margin:0 0 30px;font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.38)}
.memory__declaration h3,.memory__question h3{max-width:1130px;margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(58px,7.5vw,118px);font-weight:400;line-height:.9;letter-spacing:-.05em}
.memory__declaration h3 em,.memory__question h3 em{font-weight:400;color:rgba(255,255,255,.35)}
.memory__chapter--emotion{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.65fr);gap:70px;align-items:start}
.memory__chapter-copy .memory__large{font-size:clamp(42px,5vw,75px);line-height:1.02;color:#f2f2ef}
.memory__words{display:grid;border-top:1px solid rgba(255,255,255,.15)}
.memory__words span{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:10px;letter-spacing:.31em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.memory__aside{grid-column:1/-1;margin:60px 0 0 auto;max-width:640px;text-align:right;font-family:Georgia,'Times New Roman',serif;font-size:clamp(25px,2.8vw,42px);line-height:1.18;color:rgba(255,255,255,.4)}
.memory__aside strong{font-weight:400;color:rgba(255,255,255,.88)}
.memory__question{min-height:100vh;display:flex;flex-direction:column;justify-content:center;border-top:1px solid rgba(255,255,255,.13)}
.memory__question>p{margin:0 0 36px;font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.35)}
.memory__chapter--answer{min-height:85vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:80px;align-items:center}
.memory__not-list p{margin:0;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.1);font-family:Georgia,'Times New Roman',serif;font-size:clamp(25px,2.7vw,42px);line-height:1.15;color:rgba(255,255,255,.42)}
.memory__not-list p:first-child{border-top:1px solid rgba(255,255,255,.1)}
.memory__not-list span{display:block;margin-bottom:8px;font-family:Arial,Helvetica,sans-serif;font-size:8px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.26)}
.memory__answer-line{display:flex;align-items:flex-start;gap:25px}
.memory__answer-line i{width:52px;height:1px;background:rgba(255,255,255,.38);margin-top:17px;flex:0 0 auto}
.memory__answer-line p{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3.6vw,57px);line-height:1.08;color:rgba(255,255,255,.56)}
.memory__answer-line strong{font-weight:400;color:#f1f1ed}
.memory__reveal{min-height:110vh;display:grid;grid-template-columns:minmax(340px,.8fr) minmax(0,1fr);gap:clamp(70px,10vw,150px);align-items:center;border-top:1px solid rgba(255,255,255,.13);padding:120px 0}
.memory__reveal-visual{position:relative;width:min(36vw,490px);aspect-ratio:1;display:grid;place-items:center}
.memory__reveal-visual img{position:relative;z-index:2;width:45%;filter:grayscale(1) contrast(1.05);opacity:.9}
.memory__ring{position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%}
.memory__ring--one{inset:0;animation:memoryPulse 4.8s ease-in-out infinite}
.memory__ring--two{inset:19%;animation:memoryPulse 4.8s -1.4s ease-in-out infinite}
.memory__core{position:absolute;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 50px rgba(255,255,255,.75)}
.memory__reveal-copy h3{margin:0 0 42px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(54px,6vw,94px);font-weight:400;line-height:.94;letter-spacing:-.045em}
.memory__reveal-copy>p:not(.memory__kicker):not(.memory__final){max-width:650px;margin:0;font-size:clamp(17px,1.65vw,25px);line-height:1.6;color:rgba(255,255,255,.48)}
.memory__final{margin:70px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.1vw,66px);line-height:1.03;color:rgba(255,255,255,.68)}
.memory__final em{font-weight:400;color:#fff}
.memory__next{min-height:55vh;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;border-top:1px solid rgba(255,255,255,.13);padding:80px 0 30px}
.memory__next p{margin:0;max-width:560px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3.6vw,55px);line-height:1.05;color:rgba(255,255,255,.55)}
.memory__next a{text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:.27em;color:rgba(255,255,255,.62);padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.25);transition:color .3s,border-color .3s}
.memory__next a span{margin-left:20px}.memory__next a:hover{color:#fff;border-color:#fff}
@keyframes memoryOrbit{to{transform:rotate(376deg)}}
@keyframes memoryPulse{0%,100%{transform:scale(.94);opacity:.3}50%{transform:scale(1.035);opacity:.8}}
@media(max-width:980px){
  .memory__shell{grid-template-columns:95px minmax(0,1fr);gap:36px}
  .memory__field{opacity:.55;right:-12%}
  .memory__chapter--answer,.memory__reveal{grid-template-columns:1fr}
  .memory__reveal-visual{width:min(68vw,470px);margin:auto}
}
@media(max-width:700px){
  .memory__shell{display:block;padding:100px 20px 50px}
  .memory__index{position:relative;top:auto;display:flex;align-items:baseline;gap:18px;margin-bottom:70px;border-top:0;padding:0}
  .memory__index span{font-size:31px}.memory__index p{margin:0}
  .memory__opening{min-height:74vh;padding:4vh 0 10vh}
  .memory__opening h2{font-size:clamp(58px,17vw,88px)}
  .memory__subhead{font-size:28px;margin-top:34px}
  .memory__chapter{padding:90px 0 110px}
  .memory__chapter-copy p{font-size:30px}
  .memory__field{position:relative;right:auto;top:auto;transform:none;width:72vw;margin:70px auto 0}
  .memory__declaration,.memory__question{min-height:82vh}
  .memory__declaration h3,.memory__question h3{font-size:clamp(52px,14vw,75px)}
  .memory__chapter--emotion{grid-template-columns:1fr;gap:45px}
  .memory__aside{margin-top:45px;text-align:left}
  .memory__chapter--answer{gap:70px}
  .memory__answer-line p{font-size:35px}
  .memory__reveal{min-height:auto;padding:110px 0;gap:80px}
  .memory__reveal-visual{width:82vw}
  .memory__reveal-copy h3{font-size:56px}
  .memory__next{min-height:60vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
  .memory__mark{right:-60vw}.memory__mark img{width:155vw}
}
