@font-face{font-family:Cormorant;src:url(fonts/cormorant.woff) format('woff');font-weight:300 700;font-display:swap}
@font-face{font-family:Sora;src:url(fonts/sora.woff) format('woff');font-weight:300 800;font-display:swap}
:root{--bone:#f4efe6;--paper:#faf7ef;--stone:#e6ddcd;--sand:#d6c9b2;--moss:#3e5a3a;--moss-deep:#1e392e;--sage:#dce7d5;--copper:#a55d34;--ink:#23271f;--muted:#5d6155;--line:#bcb6a8;--display:Cormorant,Georgia,serif;--text:Sora,Arial,sans-serif;--gutter:clamp(20px,5vw,88px);--section:clamp(86px,10vw,152px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:82px}
body{margin:0;background:var(--bone);color:var(--ink);font:400 15px/1.65 var(--text);overflow-x:clip;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}
h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--display);font-weight:500;line-height:.98;letter-spacing:-.035em}
em{font-weight:500;font-style:italic;color:var(--moss)}
:focus-visible{outline:3px solid var(--copper);outline-offset:5px}
::selection{background:var(--moss);color:white}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:fixed;top:-100px;left:20px;z-index:200;background:var(--ink);color:white;padding:12px 18px}.skip:focus{top:15px}
.site-header{height:82px;position:fixed;inset:0 0 auto;z-index:50;padding:0 var(--gutter);display:flex;align-items:center;gap:38px;background:rgba(244,239,230,.94);border-bottom:1px solid #d0c7b8;backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:10px;flex:none;font:600 25px/.87 var(--display);letter-spacing:-.04em}.brand-leaf{color:var(--moss);font-style:italic}.brand small{display:block;font:500 8px/1.8 var(--text);letter-spacing:.21em;text-transform:uppercase;margin-left:2px;color:var(--copper)}.brand-mark{width:37px;height:37px;border-radius:50%;background:#eee4d5;display:grid;place-items:center;overflow:hidden}.brand-mark img{width:38px;height:38px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:clamp(15px,2vw,32px);margin-left:auto;color:#51584f;font-size:12px}.main-nav a{white-space:nowrap;transition:color .2s}.main-nav a:hover{color:var(--copper)}
.header-aula{display:flex;align-items:center;gap:16px;background:var(--moss-deep);color:var(--paper);padding:11px 17px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;transition:background .25s}.header-aula:hover{background:var(--copper)}
.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--copper);font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.eyebrow.dark{color:var(--moss)}.rule{display:inline-block;width:32px;height:1px;background:currentColor}
.hero{min-height:min(850px,100svh);padding:122px var(--gutter) 70px;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.96fr);align-items:center;gap:2vw;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 44%,#e7decf 0%,transparent 47%),var(--bone)}
.hero::after{content:"";position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);height:1px;background:var(--line)}
.hero-copy{position:relative;z-index:2;padding-bottom:22px}.hero h1{font-size:clamp(74px,9vw,158px);margin:20px 0 22px;line-height:.82;letter-spacing:-.065em;max-width:740px}.hero h1 em{white-space:nowrap}.hero p{font-size:clamp(15px,1.2vw,19px);line-height:1.85;color:#41483e;max-width:540px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-width:265px;background:var(--moss-deep);color:#f4efe6;padding:18px 22px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;transition:transform .25s,background .25s}.button:hover{background:var(--moss);transform:translateY(-3px)}.button span{font-size:18px;font-weight:300}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid var(--copper);padding:8px 0;font-weight:600}.text-link:hover{color:var(--copper)}.hero-scroll{display:inline-flex;gap:18px;align-items:center;margin-top:58px;color:#7a8072;font-size:9px;text-transform:uppercase;letter-spacing:.22em}.hero-scroll span{font-size:19px;color:var(--copper)}
.hero-object{width:min(100%,620px);aspect-ratio:1;justify-self:end;position:relative;display:grid;place-items:center;isolation:isolate}.hero-object::before{content:"";position:absolute;inset:1%;border-radius:50%;background:conic-gradient(from 40deg,transparent 0 25%,#b8a58644 35%,transparent 48%,#fff8e777 62%,transparent 80%);filter:blur(30px);z-index:-2}.hero-orbit{position:absolute;border:1px solid #9f9b8d70;border-radius:50%;pointer-events:none}.orbit-one{inset:0}.orbit-two{inset:7%;border-style:dashed;border-color:#9f9b8d75}.orbit-three{inset:18%;border-color:#a3a4946c}.mineral{position:relative;width:71%;aspect-ratio:1;border-radius:49% 51% 46% 54%/53% 46% 54% 47%;background:radial-gradient(circle at 28% 24%,#f4eee4 0%,#dfd4c1 37%,#c8baa3 72%,#b4a487 100%);box-shadow:inset 17px 18px 28px #fff9e877,inset -18px -22px 35px #736c5e45,0 44px 60px -25px #5d503b7a;display:grid;place-items:center;transform:rotate(-6deg);animation:mineral-breathe 12s ease-in-out infinite alternate;overflow:hidden}.mineral::after{content:"";position:absolute;inset:0;opacity:.24;background-image:radial-gradient(#6d654e 1px,transparent 1px);background-size:13px 17px;mix-blend-mode:multiply}.hero-seal{width:79%;height:79%;object-fit:contain;filter:drop-shadow(1px 2px 1px #fff9e266);opacity:.93;transform:rotate(6deg);animation:seal-in 2.2s cubic-bezier(.2,.7,.2,1) both}.orbit-dot{position:absolute;top:6%;right:22%;width:10px;height:10px;border-radius:50%;background:var(--copper);box-shadow:0 0 0 5px var(--bone)}.hero-art-label{position:absolute;bottom:7%;right:5%;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#72766b;transform:rotate(-8deg)}
@keyframes mineral-breathe{to{border-radius:52% 48% 53% 47%/47% 54% 46% 53%;transform:rotate(-3deg) scale(1.015)}}@keyframes seal-in{from{opacity:0;transform:rotate(-4deg) scale(.88);filter:blur(8px)}to{opacity:.93;transform:rotate(6deg) scale(1);filter:blur(0)}}
.vision{padding:clamp(80px,10vw,156px) var(--gutter);background:var(--sage);border-top:1px solid #ccd9c5;border-bottom:1px solid #ccd9c5}.vision-inner{max-width:1600px;margin:auto;display:grid;grid-template-columns:minmax(0,1.85fr) minmax(250px,.65fr);gap:5vw;align-items:start}.vision h2{font-size:clamp(58px,6.4vw,106px);line-height:.93;margin:32px 0 0;letter-spacing:-.055em;max-width:1040px;color:var(--moss-deep)}.vision h2 em{color:var(--moss-deep);font-weight:400}.vision-aside{padding-top:18px;border-top:1px solid #8ea58a}.vision-aside p{font-size:clamp(16px,1.25vw,19px);line-height:1.8;color:#213b30}.vision-aside .vision-note{margin-top:46px;color:var(--moss);font:italic 500 clamp(25px,2.3vw,34px)/1.18 var(--display)}
.story{height:320vh;position:relative;background:linear-gradient(180deg,var(--bone) 0%,#e9e0d1 35%,#e9e0d1 68%,var(--bone) 100%)}.story-sticky{position:sticky;top:0;height:100svh;min-height:600px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.94fr);gap:6vw;align-items:center;padding:85px var(--gutter) 28px;overflow:hidden}.wheel-area{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.wheel-caption,.wheel-foot{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#6a6d62;align-self:flex-start}.wheel-foot{align-self:flex-end}.wheel{position:relative;width:min(68vh,590px,100%);aspect-ratio:1;margin:auto}.wheel-ring{position:absolute;border:1px solid #89897c70;border-radius:50%;pointer-events:none}.ring-outer{inset:0}.ring-mid{inset:12%;border-color:#878f7d50}.wheel-dial{position:absolute;inset:0;transform:rotate(var(--wheel-rotation,0deg));will-change:transform}.wheel-glyph{position:absolute;left:50%;top:50%;width:34px;height:45px;margin:-22px -17px;display:grid;place-items:center;color:#837e6b;transform:translate(var(--x),var(--y)) rotate(var(--counter-rotation,0deg));transition:color .25s,filter .25s}.wheel-glyph .rune{width:100%;height:100%;fill:currentColor}.wheel-glyph.on{color:var(--copper);filter:drop-shadow(0 0 9px #a55d3480)}.wheel-needle{position:absolute;left:50%;top:-1%;height:10%;width:1px;background:var(--copper);transform:translateX(-50%)}.wheel-needle::before{content:"";position:absolute;top:-3px;left:-4px;width:9px;height:9px;border-radius:50%;background:var(--copper)}.wheel-core{position:absolute;inset:23%;border-radius:50%;background:radial-gradient(circle at 36% 32%,#faf6eb 0%,#e1d6c3 73%,#c6b79e 100%);box-shadow:inset 0 10px 16px #fff8e299,inset 0 -12px 25px #7b70513a,0 14px 40px #746b5b38;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px}.wheel-core::before{content:"";position:absolute;inset:-12%;border:1px solid #90928460;border-radius:50%}.wheel-stone .rune{width:clamp(72px,11vh,110px);height:clamp(90px,14vh,135px);fill:var(--moss);filter:drop-shadow(2px 2px 0 #fff9e8)}.wheel-core span{font-size:10px;text-transform:uppercase;letter-spacing:.22em;color:var(--muted)}
.story-copy{position:relative;min-height:390px}.story-progress{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #a7a596;padding-bottom:20px;font-size:9px;font-weight:600;letter-spacing:.2em;color:var(--moss)}.story-stage{position:absolute;top:53px;left:0;right:0;opacity:0;visibility:hidden;transform:translateY(22px);transition:opacity .4s,transform .4s,visibility .4s;pointer-events:none}.story-stage.is-active{opacity:1;visibility:visible;transform:none;pointer-events:auto}.story-stage h3{font-size:clamp(80px,8vw,140px);line-height:.78;margin:21px 0 34px}.story-stage p{font-size:clamp(16px,1.3vw,19px);line-height:1.75;color:#565c51;max-width:500px}.story-meter{position:absolute;bottom:0;left:0;right:0;height:3px;background:#c7bead}.story-meter span{display:block;width:var(--progress,0%);height:100%;background:var(--copper);transition:width .08s linear}
.section{padding:var(--section) var(--gutter)}.section-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(270px,.75fr);gap:8vw;align-items:end;border-bottom:1px solid var(--line);padding-bottom:35px;margin-bottom:42px}.section-head h2{font-size:clamp(60px,6vw,104px);line-height:.86;margin:26px 0 0}.section-head p{max-width:490px;color:var(--muted);font-size:16px;line-height:1.85;margin-bottom:2px}
.explore{background:var(--paper)}.tools{display:grid;grid-template-columns:1.23fr .77fr;gap:1px;background:#c7c0b4;border:1px solid #c7c0b4}.tool{background:var(--paper);padding:clamp(28px,4vw,58px);position:relative;min-height:590px}.tool-no{color:var(--copper);letter-spacing:.2em;font-weight:600;font-size:10px;margin-bottom:30px}.tool h3{font-size:clamp(40px,4.2vw,65px);margin:0 0 12px}.tool p{max-width:450px;color:var(--muted)}.name-form{margin-top:50px}.name-form label{display:block;color:var(--moss);text-transform:uppercase;font-size:10px;letter-spacing:.2em;font-weight:600}.name-field{display:flex;border-bottom:1px solid var(--ink);margin-top:10px}.name-field input{flex:1;min-width:0;background:transparent;border:0;padding:8px 4px;font:500 36px var(--display);color:var(--ink);outline:none}.name-field button{width:52px;border:0;background:transparent;font-size:27px;color:var(--moss)}.name-field:focus-within{border-bottom:2px solid var(--copper)}.rune-output{min-height:90px;display:flex;align-items:center;flex-wrap:wrap;gap:15px;margin:27px 0 12px;color:var(--moss);font-size:14px}.rune-word{display:inline-flex;align-items:center}.rune-output .rune{width:clamp(27px,3vw,43px);height:63px;fill:var(--moss)}.rune-result{font-size:12px;min-height:20px}.small-note{font-size:11px!important;line-height:1.7!important;color:#727468!important;margin:24px 0 0}.tool-day{background:linear-gradient(135deg,#f1eadb,#e8deca);display:flex;flex-direction:column}.day-stone{width:170px;height:170px;align-self:center;margin:16px 0 12px;border-radius:48% 52% 46% 54%/54% 43% 57% 46%;background:radial-gradient(circle at 28% 24%,#faf6eb,#d0c1a7 73%,#aa9a7e);box-shadow:inset 9px 10px 18px #fff9e799,inset -11px -12px 21px #6f614933,0 18px 28px #675c4b33;display:grid;place-items:center}.day-stone .rune{width:76px;height:100px;fill:var(--moss)}.tool-day h4{text-align:center;font-size:36px;margin:0}.tool-day>p:not(.small-note){text-align:center;margin:0 auto 24px;max-width:250px}.outline-button{border:1px solid var(--moss);background:transparent;color:var(--moss-deep);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 19px;font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:600;align-self:center}.outline-button:hover{background:var(--moss);color:white}.tool-day .small-note{margin-top:auto;text-align:center;align-self:center}
.formation{background:var(--bone)}.formation-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:24px}.formation-card{background:#f9f5ed;border:1px solid #d3cab9;transition:transform .35s,box-shadow .35s;overflow:hidden}.formation-card:hover{transform:translateY(-5px);box-shadow:0 24px 40px -32px #4e4434}.formation-card:focus-within{outline:2px solid var(--copper)}.card-book{grid-row:span 2}.card-image{position:relative;overflow:hidden;background:var(--stone);height:clamp(260px,30vw,430px)}.card-book .card-image{height:clamp(410px,53vw,720px)}.card-image>img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.formation-card:hover .card-image>img{transform:scale(1.045)}.card-level .card-image>img{object-position:50% 47%;filter:saturate(.5) sepia(.24)}.card-deep .card-image>img{object-position:50% 55%;filter:saturate(.58) sepia(.22)}.card-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0003,transparent 35%);pointer-events:none}.card-image-index{position:absolute;z-index:1;top:25px;left:26px;color:white;font-size:10px;font-weight:600;letter-spacing:.2em}.book-image{background:radial-gradient(circle at 50% 42%,#f3eee3 0,#e3d4bc 55%,#bbab91 100%);display:grid;place-items:center;isolation:isolate}.book-image::before{content:"";position:absolute;inset:0;background:url(atlas.webp) center/cover;opacity:.22;filter:grayscale(.5)}.book-image::after{background:linear-gradient(180deg,#0002,transparent 30%)}.book-shadow{position:absolute;width:48%;height:70%;background:#473d30;transform:translate(15px,14px) rotate(-8deg);filter:blur(17px);opacity:.35}.book-object{width:clamp(215px,45%,330px);aspect-ratio:.68;background:linear-gradient(90deg,#a25e3b 0 2.4%,#152b24 2.4% 7%,#20382d 7% 100%);box-shadow:8px 12px 0 #c5a77d,14px 26px 36px #4c4234a8;transform:rotate(-8deg);position:relative;z-index:1;padding:10% 8%;color:#ece0cb;display:flex;flex-direction:column;transition:transform .5s}.formation-card:hover .book-object{transform:rotate(-5deg) translateY(-5px)}.book-top{font:600 9px var(--text);letter-spacing:.12em;color:#bd8055}.book-title{font:600 clamp(47px,5vw,82px)/.86 var(--display);letter-spacing:-.05em;margin-top:18%}.book-rune{width:46px;height:62px;fill:#b97650;align-self:flex-end;margin-top:auto}.card-body{display:flex;justify-content:space-between;gap:25px;padding:28px 32px 34px;min-height:195px}.card-book .card-body{min-height:231px}.card-kicker{display:block;color:var(--copper);font-size:9px;text-transform:uppercase;letter-spacing:.18em;font-weight:600;margin-bottom:11px}.card-body h3{font-size:clamp(34px,3.5vw,56px);margin:0 0 10px}.card-body p{font-size:12px;line-height:1.75;color:var(--muted);max-width:440px;margin:0}.card-arrow{font-size:24px;color:var(--moss);align-self:start}.section-tail{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:35px;color:#747466;font-size:10px;letter-spacing:.15em;text-transform:uppercase}.section-tail span{color:var(--copper);font-size:18px}
.classroom{background:#dcd9ca;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7vw;align-items:center}.classroom-text h2{font-size:clamp(62px,5.6vw,100px);margin:28px 0}.classroom-text p{max-width:450px;line-height:1.9;color:#4c534a}.concept-tag{display:inline-block;margin-top:28px;padding-top:13px;border-top:1px solid #a8aa9c;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#687261}.classroom-ui{background:#fbf9f3;border:1px solid #b9b5a8;padding:clamp(23px,3vw,42px);box-shadow:0 25px 50px -35px #514f43a3}.ui-header{display:flex;justify-content:space-between;gap:15px;color:var(--moss);font-size:9px;letter-spacing:.18em;font-weight:600}.ui-track{height:3px;background:#e4e5da;margin:16px 0 34px}.ui-track span{display:block;width:31.25%;height:100%;background:var(--moss)}.ui-title{font:500 clamp(25px,3vw,43px)/1.05 var(--display);max-width:460px;margin-bottom:30px}.ui-message{padding:18px 20px;font-size:12px;line-height:1.7;max-width:82%;margin-bottom:14px}.ui-message.user{margin-left:auto;background:#eee7d9}.ui-message.agent{background:#e9f0e5;border-left:2px solid var(--moss)}.ui-message.agent span{display:block;color:var(--moss);font-weight:600;font-size:9px;letter-spacing:.14em;margin-bottom:5px}.ui-foot{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;border-top:1px solid #ccc8bc;padding-top:16px;margin-top:22px;color:#687064;font-size:10px}
.shop{background:var(--paper)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.product-image{aspect-ratio:4/4.8;overflow:hidden;background:#dfd3bf;position:relative;margin-bottom:17px}.product-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.73);transition:transform .65s,filter .65s}.product:hover img{transform:scale(1.05);filter:saturate(.95)}.product-image .rune{position:absolute;top:46%;left:48%;width:28%;height:35%;fill:#385a3c;opacity:.72;transform:translate(-50%,-50%);filter:drop-shadow(2px 2px 0 #f7e8d4)}.product>span{font-size:9px;letter-spacing:.2em;color:var(--copper);font-weight:600}.product h3{font-size:clamp(26px,2.2vw,38px);margin:8px 0 6px}.product p{font-size:12px;color:var(--muted)}.shop-foot{margin:45px 0 0;border-top:1px solid var(--line);padding-top:17px;color:#747566;font-size:11px;letter-spacing:.02em}
.footer{min-height:310px;background:var(--moss-deep);color:#eee7d9;padding:65px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-brand{font:500 clamp(38px,4vw,64px)/1 var(--display)}.footer-brand em{color:#bdd3b2}.footer p{font-size:11px;letter-spacing:.1em;color:#b9c7b5;margin-top:14px}.footer>img{width:125px;filter:brightness(2.1) sepia(.25);opacity:.74}.footer-end{text-align:right;display:flex;flex-direction:column;gap:60px;color:#b7c6b1;font-size:11px}.footer-end a{text-decoration:underline;text-underline-offset:5px;color:#eee7d9}
@media(max-width:1080px){.main-nav{gap:14px}.main-nav a{font-size:10px}.hero{grid-template-columns:1.07fr .93fr}.hero h1{font-size:clamp(70px,9vw,120px)}.hero-object{width:min(100%,500px)}.story-sticky{gap:3vw}.wheel{width:min(55vh,500px,100%)}}
@media(max-width:850px){.site-header{height:72px}.main-nav{display:none}.header-aula{margin-left:auto}.hero{padding-top:105px;grid-template-columns:1fr;gap:0;min-height:0}.hero-copy{max-width:680px}.hero h1{font-size:clamp(78px,11vw,130px)}.hero-object{width:min(80%,560px);justify-self:center;margin:15px 0 25px}.hero-scroll{margin-top:33px}.vision-inner{grid-template-columns:1fr}.vision h2{max-width:700px}.vision-aside{max-width:650px;padding-top:24px}.story-sticky{grid-template-columns:1fr;grid-template-rows:58% 42%;gap:0;padding:72px var(--gutter) 18px;min-height:0}.wheel{width:min(44vh,380px,75vw)}.wheel-caption,.wheel-foot{display:none}.story-copy{min-height:0;height:100%}.story-progress{padding-bottom:9px}.story-stage{top:35px}.story-stage h3{font-size:clamp(55px,9vw,80px);margin:10px 0}.story-stage p{font-size:13px;line-height:1.6;max-width:580px}.story-meter{bottom:3px}.formation-grid{gap:15px}.card-body{padding:23px;min-height:210px}.card-book .card-body{min-height:210px}.classroom{grid-template-columns:1fr}.classroom-text{max-width:650px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){:root{--gutter:20px;--section:82px}.site-header{gap:8px}.brand{font-size:19px;gap:7px}.brand-mark,.brand-mark img{width:29px;height:29px}.brand small{font-size:7px}.header-aula{font-size:9px;letter-spacing:0;padding:10px 11px;gap:4px}.hero{padding-top:110px;padding-bottom:45px}.hero h1{font-size:clamp(70px,15vw,92px);margin:20px 0}.hero p{font-size:14px;line-height:1.75}.hero-actions{gap:14px;margin-top:27px}.button{width:100%;min-width:0;padding:15px 17px}.hero-object{width:min(95%,410px);margin:12px 0 14px}.hero-art-label{bottom:4%;right:0;font-size:7px}.hero-scroll{margin-top:25px}.vision h2{font-size:clamp(56px,13vw,76px);margin-top:25px}.vision-aside p{font-size:15px}.vision-aside .vision-note{margin-top:26px;font-size:28px}.story{height:300vh}.story-sticky{grid-template-rows:51% 49%;padding-top:68px}.wheel{width:min(40vh,82vw)}.wheel-glyph{width:22px;height:32px;margin:-16px -11px}.wheel-stone .rune{width:70px;height:95px}.wheel-core span{font-size:8px}.story-stage h3{font-size:clamp(60px,16vw,81px)}.story-stage p{font-size:13px}.story-progress{font-size:8px}.story-copy{min-height:245px}.section-head{grid-template-columns:1fr;gap:18px;padding-bottom:23px;margin-bottom:24px}.section-head h2{font-size:clamp(58px,13vw,82px);margin-top:22px}.section-head p{font-size:14px}.tools{grid-template-columns:1fr}.tool{min-height:0;padding:28px 24px 35px}.tool h3{font-size:47px}.name-form{margin-top:25px}.rune-output{min-height:60px}.rune-output .rune{width:28px;height:50px}.tool-day .small-note{margin-top:20px}.formation-grid{grid-template-columns:1fr;grid-template-rows:none;gap:20px}.card-book{grid-row:auto}.card-book .card-image{height:440px}.card-image{height:290px}.book-object{width:235px}.book-title{font-size:61px}.card-body,.card-book .card-body{min-height:0;padding:20px 23px 25px}.card-body h3{font-size:40px}.card-body p{font-size:11px}.section-tail{text-align:center;font-size:8px}.classroom-text h2{font-size:65px}.classroom-ui{padding:21px}.ui-message{max-width:94%}.product-grid{gap:14px}.product h3{font-size:27px}.product-image{margin-bottom:12px}.footer{min-height:0;flex-direction:column;align-items:flex-start;padding:55px var(--gutter)}.footer>img{width:90px;align-self:center}.footer-end{text-align:left;gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mineral,.hero-seal{animation:none}.wheel-dial,.story-stage,.formation-card,.card-image>img,.book-object,.product img,.button{transition:none!important}.story{height:auto;padding:60px var(--gutter)}.story-sticky{height:auto;position:relative;display:block;padding:0;min-height:0;overflow:visible}.wheel-area{height:auto}.wheel{width:min(330px,75vw);margin:20px auto}.story-copy{height:auto;min-height:0}.story-stage{position:relative;top:auto;opacity:1;visibility:visible;transform:none;padding:32px 0;border-top:1px solid var(--line)}.story-stage h3{font-size:65px}.story-meter{display:none}}
/* Final responsive fixes and the quiet movement of the seal's outer ring. */
.orbit-two{animation:orbit-turn 100s linear infinite}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@media(max-width:580px){.tools{grid-template-columns:minmax(0,1fr)}.tool{min-width:0}.rune-output{min-width:0}.rune-word{max-width:100%;flex-wrap:wrap}.rune-result{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.orbit-two{animation:none}}
/* The outgoing story panel is removed immediately so texts never overlap. */
.story-copy{min-height:515px}
.story-stage{display:none;opacity:1;visibility:visible;transform:none;transition:none}
.story-stage.is-active{display:block;animation:stage-arrive .35s ease-out both}
@keyframes stage-arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:850px){.story-copy{min-height:0}}
@media(max-width:580px){.story-copy{min-height:245px}}
@media(prefers-reduced-motion:reduce){.story-stage,.story-stage.is-active{display:block;animation:none}}
/* Navigation stays usable at small widths, including with JavaScript disabled. */
.mobile-menu{display:none}
@media(max-width:850px){.mobile-menu{display:block;margin-left:auto;position:relative}.mobile-menu summary{list-style:none;cursor:pointer;color:var(--moss-deep);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:9px 4px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;top:calc(100% + 23px);right:-8px;width:190px;z-index:80;background:var(--paper);border:1px solid var(--line);box-shadow:0 18px 30px #342a1d29;padding:11px 18px}.mobile-menu nav a{display:block;padding:11px 2px;border-bottom:1px solid #e1d9cb;font-size:12px}.mobile-menu nav a:last-child{border:0}.mobile-menu nav a:hover{color:var(--copper)}.header-aula{margin-left:0}}
@media(max-width:580px){.mobile-menu summary{font-size:9px}.mobile-menu nav{top:calc(100% + 20px)}}

/* Contrast refinements from automated AA review. */
.small-note{color:#50564b!important}
.formation .eyebrow{color:#874824}
.section-tail{color:#4f554a}
.classroom .eyebrow{color:#814621}
.concept-tag{color:#4e5a4e}
.shop-foot{color:#4f554a}
/* A single verified sign reads first; the supplied seal becomes a quiet orbiting brand accent. */
.hero-rune{position:relative;z-index:1;width:48%;height:61%;fill:var(--moss);filter:drop-shadow(3px 3px 2px #fff5df);transform:rotate(6deg)}
.brand-satellite{position:absolute;z-index:3;right:4%;bottom:8%;width:clamp(82px,9vw,126px);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:#eae0cf;border:1px solid #c6b99f;box-shadow:0 9px 25px #554c3840,inset 0 2px 8px #fff8e680;animation:satellite-breathe 8s ease-in-out infinite alternate}
.brand-satellite img{width:87%;height:87%;object-fit:contain}
.hero-art-label{left:5%;right:auto;bottom:4%}
@keyframes satellite-breathe{to{transform:translateY(-10px) rotate(7deg)}}
@media(max-width:580px){.brand-satellite{width:83px;right:0;bottom:9%}.hero-art-label{left:2%;bottom:3%;right:auto}}
@media(prefers-reduced-motion:reduce){.brand-satellite{animation:none}}
.hero-rune{width:80%;height:92%;filter:drop-shadow(3px 3px 1px #fff8e9) drop-shadow(0 0 16px #8cac7866)}

/* Recorrido móvil: la escena comienza bajo la cabecera y el progreso queda al lado. */
@media(max-width:580px){
  .story-sticky{top:60px;height:calc(100svh - 60px);grid-template-rows:auto minmax(0,1fr);align-items:start;gap:24px;padding:18px var(--gutter) 76px}
  .wheel-area{height:auto;min-height:0;padding-top:8px}
  .wheel{width:min(28svh,56vw,220px);margin:0 auto}
  .wheel-stone .rune{width:52px;height:70px}
  .story-copy{height:100%;min-height:0}
  .story-stage{top:44px}
  .story-stage h3{font-size:clamp(44px,12vw,58px);margin:10px 0 18px}
  .story-meter{top:0;bottom:0;left:auto;right:-10px;width:2px;height:auto}
  .story-meter span{width:100%;height:var(--progress,0%);transition:height .08s linear}
}
@media(max-width:580px) and (prefers-reduced-motion:reduce){
  .story-sticky{position:relative;top:auto;height:auto;display:block;padding:0}
  .wheel{width:min(62vw,250px);margin:16px auto 28px}
  .story-copy{height:auto}.story-stage{top:auto}
}

/* ---- Bloque del libro: tipografia cuidada (oct 2026) ---- */
.card-book .card-body p{margin:0 0 16px}
.card-book .card-body p:first-of-type{color:var(--ink);font-size:13.5px}
.card-book .book-title{font-family:"Cormorant",Georgia,serif;font-size:clamp(24px,2.2vw,30px);font-weight:600;color:var(--moss-deep);line-height:1.25;max-width:440px;margin:2px 0 4px}
.card-book .book-title + p{margin-bottom:22px}
.card-book .book-title + p em{font-size:13px;color:var(--moss);letter-spacing:.02em}
.card-book .card-body p:last-child{margin:22px 0 0}
.card-book .card-body p:last-child strong{display:inline-flex;align-items:center;background:var(--copper);color:#fff;padding:13px 28px;border-radius:999px;font-family:"Sora",Arial,sans-serif;font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;transition:background .3s}
.card-book .card-body p:last-child strong:hover{background:#8f4e2c}
.card-book .card-body p:last-child strong a{color:#fff;text-decoration:none}
.card-book .card-body p:last-child > a{display:none}
@media(max-width:700px){.card-book .book-title{font-size:23px}.card-book .card-body p{margin-bottom:14px}}
