/* EL ATLAS DEL INICIADO — engraved cartography, solar light and meaningful symbols. */
:root{--atlas-brass:#cbb276;--atlas-muted:#a48b59;--atlas-line:#b59a5c55;--atlas-progress:0;--compass-bearing:0deg}
.atlas-icon{width:64px;height:64px;display:block;flex:none;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
#contenido{position:relative;isolation:isolate;background:#08130e}
.section-dark{isolation:isolate;background:#08130e}
.section-dark::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(180deg,#08130e 0%,#08130e18 18%,#08130e20 80%,#08130e 100%),var(--texture-atlas-nocturno) center/cover;opacity:.78}
.section-dark>.wrap{position:relative;z-index:3}
.invitation::before{background-position:center,30% 25%;opacity:.9}
.cycles::before{background:linear-gradient(#08130e 0%,#08130e6b 16%,#08130e3d 73%,#08130e),var(--texture-atlas-nocturno) center 80%/cover;opacity:.65}
.not-course::before{background-position:center,65% 70%;opacity:.8}
.guardian::before{background-position:center,15% 50%;opacity:.75}
.final-entry::before{opacity:.85;background-size:cover,1800px auto}
.faq::before{opacity:.6}
.invite-content,.guardian-copy,.not-course-grid>div{position:relative;background:radial-gradient(ellipse at center,#08130eb8 25%,#08130e80 65%,transparent 85%)}
.terrain-caption{position:absolute;top:35px;right:max(56px,calc((100% - 1180px)/2));color:#b8a16b;font:9px/1.5 var(--mid);letter-spacing:.22em;z-index:3}
.atlas-route{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none;overflow:visible;color:var(--atlas-brass)}
.route-base{fill:none;stroke:#b59a5c66;stroke-width:1;stroke-dasharray:2 7}
.route-light{fill:none;stroke:#ebd09a;stroke-width:1.3;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--atlas-progress));opacity:.65}
.route-traveler{fill:#f5dda8;stroke:#907444;stroke-width:3;filter:drop-shadow(0 0 5px #eac576)}
.hero{isolation:isolate}.hero-photo{left:29%}.hero-vignette{background:linear-gradient(90deg,#07110c 2%,#07110cf5 24%,#07110c72 49%,transparent 77%),linear-gradient(0deg,#08130e 0,transparent 30%)}
.hero-sun{position:absolute;z-index:2;right:18%;top:102px;color:#f3d590;width:220px;pointer-events:none;filter:drop-shadow(0 0 24px #ffc76c66)}
.hero-sun>.atlas-icon{width:100%;height:auto;opacity:.72;animation:solarBreath 10s ease-in-out infinite alternate}
.hero-sun>span{display:block;text-align:center;color:#ebd59d;font:8px/1.6 var(--mid);letter-spacing:.26em;margin-top:6px;opacity:.78}
@keyframes solarBreath{from{opacity:.44;filter:drop-shadow(0 0 4px #dcb35b33)}to{opacity:.9;filter:drop-shadow(0 0 17px #ffe0a977)}}
.hero-atlas{position:absolute;right:max(56px,calc((100% - 1180px)/2));bottom:115px;z-index:6;display:flex;gap:18px;align-items:center;border:1px solid #b89b5877;color:#e9d7aa;background:linear-gradient(120deg,#0a1912e8,#172218b8);box-shadow:0 12px 35px #0004;padding:18px 23px;text-align:left;backdrop-filter:blur(6px)}
.hero-atlas .atlas-icon{width:63px;height:63px}.hero-atlas>span{font:11px/1.5 var(--mid);letter-spacing:.14em}.hero-atlas small{display:block;color:#d1c6ac;font:italic 19px/1.5 var(--serif);letter-spacing:0;margin-top:4px}.hero-atlas:hover{border-color:#f0d594;background:#12261df0}.hero-atlas .atlas-open-arrow{font-size:20px}
.atlas-stages{position:relative;padding:30px 0;background:linear-gradient(90deg,#101d15,#17271b,#101d15);border-block:1px solid #bd9c593b;z-index:5}
.atlas-stages>.wrap{display:flex;justify-content:space-between;gap:30px;position:relative}.atlas-stages>.wrap::before{content:"";position:absolute;left:5%;right:6%;top:24px;border-top:1px dashed #c5a96966;z-index:-1}
.atlas-stages a{display:flex;align-items:center;gap:16px;color:#d1c7ab;font:11px/1.5 var(--mid);letter-spacing:.13em;text-transform:uppercase;background:#132119;padding-right:14px;min-height:48px}
.atlas-stages a>span{display:grid;place-items:center;width:48px;height:48px;border:1px solid #c5a96966;border-radius:50%;font:18px var(--serif);color:#d3b976;background:#101d15}.atlas-stages a .atlas-icon{width:34px;height:34px}.atlas-stages a:hover,.atlas-stages a[aria-current]{color:#f8e3ad}.atlas-stages a[aria-current]>span{border-color:#ebcd86;box-shadow:0 0 20px #d3a84922}
.invitation{padding-top:150px;padding-bottom:150px}.map-scene{transform:rotate(-2deg);border:1px solid #9d80483d;box-shadow:0 20px 45px #0008}.map-scene>img{animation:none}.map-scene::after{box-shadow:inset 0 0 40px #08140e77}.map-annotation{transform:rotate(2deg);right:-10px;bottom:-25px}.map-compass{position:absolute;left:-30px;bottom:-65px;z-index:5;width:158px;height:158px;padding:15px;border-radius:50%;border:4px solid #b09353;background:radial-gradient(circle,#1e3227 0,#111e16 55%,#b59a5b 57%,#2e3523 59%,#17251b 65%,#b59a5b 67%,#453e25 69%,#18251a 70%);color:#e8c981;box-shadow:0 12px 25px #000b,inset 0 0 20px #000a;transform:rotate(10deg);transition:transform .4s,border-color .4s}
.map-compass:hover{transform:rotate(3deg);border-color:#f5d993}.compass-face{width:100%;height:100%;opacity:.8}.compass-cardinals{position:absolute;inset:8px;font:9px var(--mid);color:#f0d49c}.compass-cardinals i{font-style:normal;position:absolute}.compass-cardinals i:nth-child(1){top:0;left:47%}.compass-cardinals i:nth-child(2){right:0;top:46%}.compass-cardinals i:nth-child(3){bottom:0;left:47%}.compass-cardinals i:nth-child(4){left:0;top:46%}
.compass-needle{position:absolute;top:28px;left:calc(50% - 8px);width:16px;height:96px;background:linear-gradient(#f4d89e 50%,#897244 50%);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);transform:rotate(var(--compass-bearing));transition:transform 1.5s ease;filter:drop-shadow(0 3px 3px #0009)}
.atlas-hint{display:flex;gap:13px;align-items:center;font-style:italic;color:#d2b97d!important;margin-top:30px!important}.atlas-hint .atlas-icon{width:38px;height:38px}
.atlas-orbit{position:absolute;top:55px;left:-180px;width:530px;height:530px;color:#bea05b;opacity:.12;pointer-events:none}.atlas-orbit .atlas-icon{width:100%;height:100%}
.cycles{padding-top:110px}.cycle-trail{display:flex;align-items:center;width:calc(100% - 70px);margin:0 auto 26px;gap:0;color:#dfc68b}.cycle-trail>span{position:relative;width:calc((100% - 60px)/3);display:flex;justify-content:center;align-items:center;gap:10px}.cycle-trail .atlas-icon{width:50px;height:50px}.cycle-trail b{font:15px var(--display)}.cycle-trail i{flex:1;min-width:60px;border-top:1px dashed #bda26488;position:relative}.cycle-trail i::after{content:"";width:5px;height:5px;background:#ddc584;transform:rotate(45deg);position:absolute;top:-3px;left:50%}
.cycle-image{border-color:#c7a35666;box-shadow:0 13px 30px #0005}.cycle-detail{border-bottom:1px solid #bda26444;padding-bottom:11px;display:inline-block}.cycles-foot{color:#dac89b}
.benefits{isolation:isolate;overflow:hidden;background-image:linear-gradient(#ecdbbcb3,#e7d4afad),url('assets/pergamino.webp');background-size:cover}.parchment-sun{position:absolute;right:-145px;top:-130px;width:580px;height:580px;color:#705220;opacity:.12;pointer-events:none}.parchment-sun>.atlas-icon{width:100%;height:100%}.benefits::after{content:"";position:absolute;inset:20px;border:1px solid #88652730;border-radius:50%;transform:scaleX(1.25);pointer-events:none}.benefit-symbol{background:#f5eacb80;color:#6e542e;width:80px;height:80px;box-shadow:inset 0 0 0 1px #88652722,0 7px 15px #64491e20}.benefit-symbol>.atlas-icon{width:58px;height:58px}.benefits h2{position:relative}
.symbol-orbit{position:absolute;right:7%;top:65px;display:flex;align-items:center;gap:25px;opacity:.12;color:#c8ab66;transform:rotate(-15deg);pointer-events:none}.symbol-orbit>.atlas-icon{width:110px;height:110px}.symbol-orbit>.atlas-icon:nth-child(2){width:210px;height:210px}
.guardian{padding-top:125px}.portrait::after{z-index:-1;inset:-80px;background:radial-gradient(circle,#dcb76c33,transparent 60%);border:1px solid #bd9c5929;border-radius:50%;transform:rotate(20deg)}
.wand-message{display:block;border-color:#baa06b55;position:relative;margin-top:30px;padding-top:0;background:linear-gradient(130deg,#0b1b13c9,#12271b5e);overflow:hidden}.wand-stage{height:180px;position:relative;border-bottom:1px solid #baa06b29;background:radial-gradient(ellipse at 40% 50%,#bb955224,transparent 65%)}
.wand-button{position:absolute;inset:10px auto 0 12px;width:220px;height:160px;border:0;border-radius:0;background:none;box-shadow:none;color:#edcf8d;display:flex;align-items:center;justify-content:center;gap:5px}.wand-button:hover{transform:none;box-shadow:none}.wand-button>.atlas-icon{width:130px;height:130px;stroke-width:1;filter:drop-shadow(0 0 10px #e6ba7c44);transform:rotate(-10deg);transition:transform .6s,filter .6s}.wand-button:hover>.atlas-icon{transform:rotate(-3deg) translateY(-4px);filter:drop-shadow(0 0 17px #e6ba7caa)}.wand-button>span{font:italic 18px/1.3 var(--serif);text-align:left;width:60px;color:#d6c398}.wand-button.magic-on{animation:none}.wand-constellation{position:absolute;inset:0;width:100%;height:100%;fill:#f5db9a;stroke:#dcc381;stroke-width:1;opacity:.15;pointer-events:none}.wand-constellation path{fill:none;stroke-dasharray:600;stroke-dashoffset:600}.wand-constellation g{opacity:0}
.wand-inscription{padding:22px 25px 26px}.wand-inscription .eyebrow{display:block;font-size:9px;margin-bottom:12px}.wand-message strong{font-size:15px}.guardian-copy .wand-reveal{min-height:44px;line-height:1.45!important;margin-top:10px!important}
.wand-message.is-awakened .wand-constellation{opacity:1}.wand-message.is-awakened .wand-constellation path{animation:constellationDraw 1.8s ease both}.wand-message.is-awakened .wand-constellation g{animation:constellationStars 1.2s .6s ease both}.wand-message.is-awakened .wand-stage{background:radial-gradient(ellipse at 55% 45%,#b99a4e44,transparent 75%)}.wand-message.is-awakened .wand-button>.atlas-icon{filter:drop-shadow(0 0 15px #ffe4a6)}
@keyframes constellationDraw{to{stroke-dashoffset:0}}@keyframes constellationStars{to{opacity:1}}
.final-entry{padding-top:100px}.final-parchment{background-image:linear-gradient(#ead7b17d,#ead7b14d),url('assets/pergamino.webp')}.final-parchment::after{border:1px solid #8f6d3b4d;outline:1px solid #8f6d3b20;outline-offset:6px}.final-ornament{width:125px;height:125px;margin:0 auto 18px;color:#82602b}.final-ornament>.atlas-icon{width:100%;height:100%}.final-divider{width:52px;height:52px;margin:18px auto;color:#82602b}.final-divider>.atlas-icon{width:100%;height:100%}.final-parchment h2{margin-top:20px}.price-block{border-color:#96733d66}
.atlas-dock{position:fixed;left:20px;bottom:20px;display:flex;align-items:center;gap:12px;z-index:28;padding:10px 18px 10px 10px;border:1px solid #bd9c5970;background:#0b1913ed;color:#e5cd96;box-shadow:0 8px 24px #0005;backdrop-filter:blur(12px);border-radius:2px}.atlas-dock>.atlas-icon{width:47px;height:47px;transform:rotate(var(--compass-bearing));transition:transform 1.5s ease}.atlas-dock>span{text-align:left;font:12px/1.5 var(--mid)}.atlas-dock small{display:block;color:#bfb49b;font:italic 16px/1.5 var(--serif)}.atlas-dock:hover{border-color:#f1d692}
#atlas-dialog{width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;border:1px solid #cbb27688;padding:38px 40px 26px;color:#ece2c9;background:linear-gradient(#0c1d16dc,#08150fe8),var(--texture-atlas-nocturno) center/cover;box-shadow:0 20px 100px #000b;scrollbar-color:#a68c55 #112118}#atlas-dialog::backdrop{background:#020b08c9;backdrop-filter:blur(7px)}.atlas-is-open{overflow:hidden}.atlas-close{position:absolute;right:13px;top:13px;width:44px;height:44px;border:1px solid #b59a5c66;background:#0a1710;color:#d7c498;font:30px var(--serif)}.atlas-dialog-heading{text-align:center}.atlas-dialog-heading>.atlas-icon{margin:0 auto 15px;width:68px;height:68px;color:#e4ca8d}.atlas-dialog-heading h2{font-size:29px;letter-spacing:.02em;line-height:1.25;margin-bottom:12px}.atlas-dialog-heading>p:last-child{font-size:20px;color:#cfc7b2;margin-bottom:25px}.atlas-dialog-heading .eyebrow{font-size:9px}.atlas-destinations a{display:flex;gap:18px;align-items:center;padding:16px 5px;border-top:1px solid #b59a5c44;transition:background .2s}.atlas-destinations a>span{font:13px var(--mid);color:#bba16a}.atlas-destinations a>div{flex:1;font:18px var(--mid);color:#eeddb9}.atlas-destinations a small{display:block;font:italic 18px/1.4 var(--serif);color:#bfb9a3;margin-top:5px}.atlas-destinations a>.atlas-icon{width:42px;height:42px;color:#d0b678}.atlas-destinations a:hover,.atlas-destinations a[aria-current]{background:#d0b67812}.atlas-destinations a[aria-current]>span{color:#f9df9b}.atlas-dialog-foot{text-align:center;margin:20px 0 0;font:italic 19px/1.5 var(--serif);color:#bba87b}
@media(max-width:1150px){.hero-atlas{padding:14px;right:32px;max-width:330px}.hero-atlas small{font-size:17px}.hero-sun{right:11%;width:190px}.atlas-dock{display:none}.atlas-stages a{font-size:10px;gap:10px}.map-compass{left:-12px;width:135px;height:135px}.compass-needle{height:80px;top:24px}}
@media(max-width:767px){
 .atlas-route{opacity:.75}.terrain-caption{top:23px;right:21px;font-size:8px;letter-spacing:.12em}.section-dark::before{background-size:auto,auto 100%;opacity:.65}.hero-grid{padding-bottom:36px}.hero-photo{left:0}.hero-sun{width:140px;right:-22px;top:100px;opacity:.57}.hero-sun>span{display:none}.hero-vignette{background:linear-gradient(90deg,#07110cce,#07110c55),linear-gradient(0deg,#08130e 0,#08130e9c 43%,transparent 100%)}.hero-atlas{position:relative;right:auto;bottom:auto;max-width:none;width:calc(100% - 40px);margin:0 auto 100px;justify-content:flex-start;gap:17px;padding:16px 18px;background:#102017d9}.hero-atlas .atlas-icon{width:52px;height:52px}.hero-atlas>span{font-size:10px;letter-spacing:.09em}.hero-atlas small{font-size:18px}.hero-atlas .atlas-open-arrow{margin-left:auto;font-size:20px}.hero-bottom{bottom:25px}.discover-link{bottom:15px}.hero-atlas::after{content:"";position:absolute;left:44px;bottom:-61px;height:60px;border-left:1px dashed #c6a86e66}
 .atlas-stages{padding:24px 0}.atlas-stages>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:20px 12px}.atlas-stages>.wrap::before{display:none}.atlas-stages a{font-size:9px;letter-spacing:.07em;padding:0;gap:9px;background:none}.atlas-stages a>span{width:35px;height:35px;flex:none;font-size:16px}.atlas-stages a .atlas-icon{width:26px;height:26px}
 .invitation{padding-top:80px;padding-bottom:85px}.invite-grid{gap:95px}.map-scene{width:calc(100% - 12px);align-self:center}.map-compass{width:116px;height:116px;left:-10px;bottom:-56px;padding:11px;border-width:3px}.compass-needle{top:20px;height:70px;width:12px;left:calc(50% - 6px)}.compass-cardinals{font-size:8px;inset:6px}.map-annotation{right:-2px;bottom:-29px;padding:10px 12px;max-width:165px}.atlas-hint{font-size:19px!important}.atlas-hint .atlas-icon{width:35px;height:35px}
 .cycles{padding-top:80px}.atlas-orbit{width:330px;height:330px;left:-200px;top:40px}.cycle-trail{display:none}.cycle-grid{gap:44px}.cycle{position:relative}.cycle::before{content:"";position:absolute;left:50%;top:-38px;height:30px;border-left:1px dashed #d0b67880}.cycle:first-child::before{display:none}.cycle-image{aspect-ratio:4/4.5}.parchment-sun{width:360px;height:360px;right:-150px;top:-80px}.benefits::after{inset:10px;border-radius:0;transform:none}.benefits .parchment-inner{padding-block:5px}.symbol-orbit{right:-40px;top:50px;gap:5px}.symbol-orbit>.atlas-icon{width:70px;height:70px}.symbol-orbit>.atlas-icon:nth-child(2){width:130px;height:130px}
 .guardian{padding-top:95px}.portrait::after{inset:-28px}.wand-stage{height:160px}.wand-button{width:200px;height:145px;left:5px}.wand-button>.atlas-icon{width:115px;height:115px}.wand-inscription{padding:19px 20px 24px}.wand-message strong{font-size:13px}.wand-inscription .eyebrow{font-size:8px;letter-spacing:.14em}.wand-reveal{font-size:19px!important}.final-entry{padding-top:50px}.final-ornament{width:100px;height:100px}.final-parchment{padding-top:45px}.final-parchment h2{font-size:clamp(35px,9.4vw,54px)}.final-divider{width:45px;height:45px}.faq{padding-top:80px}
 #atlas-dialog{padding:32px 22px 23px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.atlas-dialog-heading h2{font-size:24px}.atlas-dialog-heading>.atlas-icon{width:58px;height:58px}.atlas-dialog-heading>p:last-child{font-size:19px}.atlas-destinations a{gap:12px;padding:14px 0}.atlas-destinations a>div{font-size:16px}.atlas-destinations a small{font-size:17px}.atlas-destinations a>.atlas-icon{width:34px;height:34px}.atlas-dialog-foot{font-size:18px}.atlas-close{right:8px;top:8px}
}
@media(prefers-reduced-motion:reduce){.hero-sun>.atlas-icon{animation:none}.wand-message.is-awakened .wand-constellation path{stroke-dashoffset:0}.wand-message.is-awakened .wand-constellation g{opacity:1}.compass-needle,.atlas-dock>.atlas-icon{transition:none}}
.motion-paused .wand-message.is-awakened .wand-constellation path{animation:none;stroke-dashoffset:0}.motion-paused .wand-message.is-awakened .wand-constellation g{animation:none;opacity:1}
/* The floating compass stays inside the margin; its label appears on intent. */
.atlas-dock{width:72px;height:72px;padding:11px;border-radius:50%;justify-content:center}.atlas-dock>span{position:absolute;left:84px;bottom:6px;white-space:nowrap;background:#0b1913f5;padding:10px 16px;border:1px solid #bd9c5970;opacity:0;visibility:hidden;transition:opacity .2s}.atlas-dock:hover>span,.atlas-dock:focus-visible>span{opacity:1;visibility:visible}
@media(max-width:1399px){.atlas-dock{display:none}}
@media(min-width:768px) and (max-width:1050px){.atlas-stages>.wrap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.atlas-stages a{flex-direction:column;text-align:center;padding:0;background:none;letter-spacing:.05em;font-size:9px}.atlas-stages a>span{background:#132119}.hero-atlas{max-width:285px;gap:10px}.hero-atlas>span{font-size:9px}.hero-atlas small{font-size:16px}.hero-atlas .atlas-icon{width:48px;height:48px}}

@media(min-width:1151px){.hero-atlas{max-width:370px}}


/* Compass belongs to the threshold; the key image remains unobstructed. */
.hero-atlas .threshold-compass{position:relative;display:block;flex:0 0 86px;width:86px;height:86px;padding:9px;border:2px solid #b09353;border-radius:50%;background:radial-gradient(circle,#1e3227,#111e16 57%,#b59a5b 59%,#17251b 63%,#453e25 70%);color:#e8c981;box-shadow:0 6px 17px #0007,inset 0 0 12px #0009}
.hero-atlas .threshold-compass .compass-face{width:100%;height:100%}
.hero-atlas .threshold-compass .compass-cardinals{inset:4px;font-size:7px;letter-spacing:0}
.hero-atlas .threshold-compass .compass-needle{width:9px;height:54px;left:calc(50% - 4.5px);top:14px;animation:thresholdBearing 8s ease-in-out infinite}
.hero-atlas>span:nth-child(2){min-width:0}
@keyframes thresholdBearing{0%,100%{transform:rotate(-24deg)}40%{transform:rotate(42deg)}70%{transform:rotate(10deg)}}
@media(max-width:767px){.invite-grid{gap:65px}.hero-atlas .threshold-compass{flex-basis:70px;width:70px;height:70px;padding:7px}.hero-atlas .threshold-compass .compass-needle{height:44px;top:11px}.hero-atlas{gap:12px}}
@media(prefers-reduced-motion:reduce){.hero-atlas .threshold-compass .compass-needle{animation:none}}
